Revert Worker-related APIs from DOMWindowWorker.idl back to DOMWindow.idl
[WebKit-https.git] / Source / WebCore / ChangeLog
1 2012-03-02  Kentaro Hara  <haraken@chromium.org>
2
3         Revert Worker-related APIs from DOMWindowWorker.idl back to DOMWindow.idl
4         https://bugs.webkit.org/show_bug.cgi?id=80151
5
6         Reviewed by Adam Barth.
7
8         Based on the discussion on webkit-dev@
9         (http://markmail.org/message/kagvswmah67zmrry#query:+page:1+mid:h34vzbiu5suub3ld+state:results),
10         this patch reverts Worker-related APIs from DOMWindowWorker.idl back to DOMWindow.idl.
11
12         No tests. No change in behavior.
13
14         * CMakeLists.txt:
15         * DerivedSources.make:
16         * DerivedSources.pri:
17         * GNUmakefile.list.am:
18         * WebCore.gypi:
19         * page/DOMWindow.idl:
20         * workers/DOMWindowWorker.idl: Removed.
21
22 2012-03-02  Kentaro Hara  <haraken@chromium.org>
23
24         Revert HTML-related APIs from DOMWindowHTML.idl back to DOMWindow.idl
25         https://bugs.webkit.org/show_bug.cgi?id=80140
26
27         Reviewed by Adam Barth.
28
29         Based on the discussion on webkit-dev@
30         (http://markmail.org/message/kagvswmah67zmrry#query:+page:1+mid:h34vzbiu5suub3ld+state:results),
31         we should revert HTML-related APIs from DOMWindowHTML.idl back to DOMWindow.idl.
32
33         No tests. No change in behavior.
34
35         * CMakeLists.txt:
36         * DerivedSources.make:
37         * DerivedSources.pri:
38         * GNUmakefile.list.am:
39         * WebCore.gypi:
40         * WebCore.xcodeproj/project.pbxproj:
41         * html/DOMWindowHTML.idl: Removed.
42         * page/DOMWindow.idl:
43
44 2012-03-02  Kentaro Hara  <haraken@chromium.org>
45
46         Revert XML-related APIs from DOMWindowXML.idl back to DOMWindow.idl
47         https://bugs.webkit.org/show_bug.cgi?id=80148
48
49         Reviewed by Adam Barth.
50
51         Based on the discussion on webkit-dev@
52         (http://markmail.org/message/kagvswmah67zmrry#query:+page:1+mid:h34vzbiu5suub3ld+state:results),
53         this patch reverts XML-related APIs from DOMWindowXML.idl back to DOMWindow.idl.
54
55         No tests. No change in behavior.
56
57         * CMakeLists.txt:
58         * DerivedSources.make:
59         * DerivedSources.pri:
60         * GNUmakefile.list.am:
61         * WebCore.gypi:
62         * WebCore.xcodeproj/project.pbxproj:
63         * page/DOMWindow.idl:
64         * xml/DOMWindowXML.idl: Removed.
65
66 2012-03-02  Caio Marcelo de Oliveira Filho  <caio.oliveira@openbossa.org>
67
68         Implement NamedNodeMap::setNamedItem() in terms of Element::setAttributeNode() instead of the other way round
69         https://bugs.webkit.org/show_bug.cgi?id=80188
70
71         Reviewed by Ryosuke Niwa.
72
73         Using setNamedItem() in setAttributeNode() implementation made us do unnecessary
74         checks like whether the element existed or whether the given node was an
75         attribute. So now setAttributeNode() do less work.
76
77         No new tests were added, functionality should be unchanged.
78
79         * dom/Element.cpp:
80         (WebCore::Element::setAttributeNode):
81         (WebCore::Element::setAttributeNodeNS):
82         * dom/Element.h:
83         (Element):
84         (WebCore::Element::attributes): We got rid of ensureUpdatedAttributes(), next in
85         line will be updatedAttributes().
86         * dom/NamedNodeMap.cpp:
87         (WebCore::NamedNodeMap::setNamedItem):
88
89 2012-03-02  SravanKumar Sandela  <ssandela@innominds.com>
90
91         Layout issue with fieldset legend element
92         https://bugs.webkit.org/show_bug.cgi?id=78684
93
94         Reviewed by Dirk Pranke.
95
96         The clipping logic for legend element was incorrect and now it has been corrected by taking correct offset in to consideration. 
97
98         Test: fast/forms/fieldset-legend-padding-unclipped-fieldset-border.html
99
100         * rendering/RenderFieldset.cpp:
101         (WebCore::RenderFieldset::paintBoxDecorations):
102
103 2012-03-02  Erik Arvidsson  <arv@chromium.org>
104
105         [V8] Bindings for node always check if they are a Document.
106         https://bugs.webkit.org/show_bug.cgi?id=79947
107
108         Reviewed by Adam Barth.
109
110         This changes the generated bindings code to only generate the Document code for the Document wrappers.
111
112         No new tests. Covered by existing tests.
113
114         * bindings/scripts/CodeGeneratorV8.pm:
115         (GenerateToV8Converters):
116         * bindings/scripts/test/V8/V8Float64Array.cpp:
117         (WebCore::V8Float64Array::wrapSlow):
118         * bindings/scripts/test/V8/V8TestActiveDOMObject.cpp:
119         (WebCore::V8TestActiveDOMObject::wrapSlow):
120         * bindings/scripts/test/V8/V8TestCustomNamedGetter.cpp:
121         (WebCore::V8TestCustomNamedGetter::wrapSlow):
122         * bindings/scripts/test/V8/V8TestEventConstructor.cpp:
123         (WebCore::V8TestEventConstructor::wrapSlow):
124         * bindings/scripts/test/V8/V8TestEventTarget.cpp:
125         (WebCore::V8TestEventTarget::wrapSlow):
126         * bindings/scripts/test/V8/V8TestInterface.cpp:
127         (WebCore::V8TestInterface::wrapSlow):
128         * bindings/scripts/test/V8/V8TestMediaQueryListListener.cpp:
129         (WebCore::V8TestMediaQueryListListener::wrapSlow):
130         * bindings/scripts/test/V8/V8TestNamedConstructor.cpp:
131         (WebCore::V8TestNamedConstructor::wrapSlow):
132         * bindings/scripts/test/V8/V8TestObj.cpp:
133         (WebCore::V8TestObj::wrapSlow):
134         * bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.cpp:
135         (WebCore::V8TestSerializedScriptValueInterface::wrapSlow):
136
137 2012-03-02  Igor Oliveira  <igor.o@sisa.samsung.com>
138
139         animation-timing-function falls back to ease when overriding animation-name
140         https://bugs.webkit.org/show_bug.cgi?id=71623
141
142         In this patch the animation name needs to be the first value declared, if
143         a different value is found, we do not check for the animation name again.  
144
145         Reviewed by Dean Jackson.
146
147         Test: animations/animation-shorthand-overriding.html
148
149         * css/CSSParser.cpp:
150         (WebCore::CSSParser::parseAnimationShorthand):
151
152 2012-03-02  Martin Robinson  <mrobinson@igalia.com>
153
154         [GTK] [AC] Connect WebGL to the TextureMapperGL code
155         https://bugs.webkit.org/show_bug.cgi?id=78968
156
157         Reviewed by Gustavo Noronha Silva.
158
159         No new tests. This is covered by existing accelerated compositing and
160         WebGL tests.
161
162         Rely on the shared version of GL acquisition from GLContext. This reduces
163         a lot of code and now allows us to connect WebGL into the accelerated compositing
164         rendering path.
165
166         * GNUmakefile.list.am: GLContext should be included for all X11 builds now.
167         There are no longer GTK+ specific versions of GraphicsContext3D.
168         * platform/graphics/GraphicsContext3D.h: Add a default argument for
169         resolveMultisamplingIfNecessary. This will resolve the entire texture.
170         * platform/graphics/cairo/GraphicsContext3DCairo.cpp: GraphicsContext3D is
171         now responsible for creating GraphicsContext3DPrivate in the constructor.
172         (WebCore::GraphicsContext3D::platformLayer): Now return m_private.
173         * platform/graphics/cairo/GraphicsContext3DPrivate.cpp: Added.
174         * platform/graphics/cairo/GraphicsContext3DPrivate.h: Renamed from Source/WebCore/platform/graphics/glx/GraphicsContext3DPrivate.h.
175         * platform/graphics/glx/GraphicsContext3DPrivate.cpp: Removed.
176         * platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:
177         (WebCore::GraphicsContext3D::resolveMultisamplingIfNecessary): Properly
178         handle the default argument.
179         * platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp:
180         (WebCore::GraphicsContext3D::prepareTexture): Use the new default argument now.
181         (WebCore::GraphicsContext3D::readRenderingResults): Ditto.
182
183 2012-02-18  Martin Robinson  <mrobinson@igalia.com>
184
185         [GTK] [AC] Generalize WindowContextGL
186         https://bugs.webkit.org/show_bug.cgi?id=78969
187
188         Reviewed by Gustavo Noronha Silva.
189
190         No new tests. This should not change functionality.
191
192         * GNUmakefile.list.am: Added new files to source list.
193         * platform/graphics/cairo/GLContext.h: Added. An abstraction for all GL contexts.
194         * platform/graphics/glx/GLContextGLX.cpp: Added. This file is composed of very little
195         new code, as the logic for instantiating offscreen GL contexts is copied from
196         GraphicsContext3DPrivate. The code duplication will be removed in a followup patch.
197         (WebCore::GLContext::platformContext):
198         * platform/graphics/gtk/GLContextGtk.cpp: Added. This includes some helper factories
199         for creating and caching GL contexts for GTK+ widgets.
200
201 2012-03-02  W. James MacLean  <wjmaclean@chromium.org>
202
203         [chromium] Remove TRACE_EVENT from CCQuadCuller::cullOccludedQuads.
204         https://bugs.webkit.org/show_bug.cgi?id=80174
205
206         Reviewed by James Robinson.
207
208         Covered by existing chromium unit tests.
209
210         Firing TRACE_EVENT once per draw quad is overwhelming.
211
212         * platform/graphics/chromium/cc/CCQuadCuller.cpp:
213         (WebCore::CCQuadCuller::cullOccludedQuads):
214
215 2012-03-02  Erik Arvidsson  <arv@chromium.org>
216
217         [V8] Make inline event attributes use evt for SVG and event otherwise
218         https://bugs.webkit.org/show_bug.cgi?id=80167
219
220         Reviewed by Ojan Vafai.
221
222         Test: fast/dom/inline-event-attributes-event-param-name.html
223
224         * bindings/v8/V8LazyEventListener.cpp:
225         (WebCore::V8LazyEventListener::prepareListenerObject):
226
227 2012-03-02  Gavin Peters  <gavinp@chromium.org>
228
229         Sync PageCache debugging with PageCache behaviour
230         https://bugs.webkit.org/show_bug.cgi?id=79943
231
232         Sync up the debug printing code in PageCache with the actual logic,
233         and clean up the debug printing at the same time.
234
235         Reviewed by Brady Eidson.
236
237         No new tests, as this is a refactor of debug only code.
238
239         * history/PageCache.cpp:
240         (WebCore):
241         (WebCore::logCanCacheFrameDecision):
242         (WebCore::logCanCachePageDecision):
243
244 2012-03-02  Maciej Stachowiak  <mjs@apple.com>
245
246         REGRESSION(r97353): Crash when accessing location or history properties inside a navigated window
247         https://bugs.webkit.org/show_bug.cgi?id=80133
248         <rdar://problem/10432233>
249         
250         Reviewed by Antti Koivisto.
251
252         Test: fast/dom/Window/navigated-window-properties.html
253
254         * bindings/js/JSDOMWindowCustom.cpp:
255         (WebCore): Remove custom getters for window.location and window.history; they
256         were unnecessary and did the wrong thing when DOMWindow returned null values 
257         for these.
258         * page/DOMWindow.idl: ditto
259         * bindings/js/JSDOMBinding.cpp:
260         (WebCore::reportException): Remove assert about null values and update comment,
261         since this is now an expected state for navigated inner windows.
262
263 2012-03-02  Ryosuke Niwa  <rniwa@webkit.org>
264
265         REGRESSION(r74971): Can't select a line of RTL text on Facebook
266         https://bugs.webkit.org/show_bug.cgi?id=59435
267
268         Reviewed by Eric Seidel.
269
270         The bug was caused by inline text boxes created by BRs being placed at the end of the line
271         according to the block's direction regardless of its unicode bidi-level. e.g. if we have
272         <div dir="rtl"><span dir="ltr">hello<br>world</span></div>
273         the inline box generated by the br has the bidi-level of 2 like the rest of text in the span.
274         This inline text box gives an illusion of having text on the left of "hello" to hit testing
275         and editing code and causes all sorts of problems.
276
277         Fixed the bug by replacing calls to nextLeafChild and prevLeafChild by newly introduced
278         nextLeafChildIgnoringLineBreak and prevLeafChildIgnoringLineBreak. These two functions will
279         return 0 when they hit the end of a line or inline text box that's a line break. In effect,
280         hit testing and editing code can ignore inline boxes generated by br's.
281
282         In the long term, we should move these two functions into RenderedPosition along with the rest
283         of code that converts a Position and an inline box, offset pair.
284
285         Test: editing/selection/select-line-break-with-opposite-directionality.html
286
287         * dom/Position.cpp:
288         (WebCore::Position::getInlineBoxAndOffset):
289         * editing/RenderedPosition.cpp:
290         (WebCore::RenderedPosition::prevLeafChild):
291         (WebCore::RenderedPosition::nextLeafChild):
292         * rendering/InlineBox.cpp:
293         (WebCore::InlineBox::nextLeafChildIgnoringLineBreak):
294         (WebCore::InlineBox::prevLeafChildIgnoringLineBreak):
295         * rendering/InlineBox.h:
296         * rendering/RenderBlock.cpp:
297         (WebCore::RenderBlock::positionForPointWithInlineChildren):
298         * rendering/RenderText.cpp:
299         (WebCore::lineDirectionPointFitsInBox): If we're on the left of a RTL line, we should stay at
300         upstream position since we're at the end of a line.
301         (WebCore::createVisiblePositionAfterAdjustingOffsetForBiDi): Merge the two special cases into
302         the general loop as the comment suggests. Skip an inline text box for a line break at the left
303         edge when there are more line boxes on the line.
304         (WebCore::RenderText::positionForPoint):
305         * rendering/RootInlineBox.cpp:
306         (WebCore::RootInlineBox::closestLeafChildForLogicalLeftPosition): Ignore line boxes created for
307         line boxes when there are other boxes on the line.
308
309 2012-03-02  Adam Treat  <atreat@rim.com>
310
311         https://bugs.webkit.org/show_bug.cgi?id=80161
312         PR: 141157
313
314         BlackBerryPlatformScreen.h API has been updated.  Reflect those
315         changes in our usage.
316
317         Reviewed by Antonio Gomes.
318         Internally reviewed by Jakob Petsovits
319
320         * platform/blackberry/PlatformScreenBlackBerry.cpp:
321         (WebCore::screenAvailableRect):
322         (WebCore::screenRect):
323
324 2012-03-02  Julien Chaffraix  <jchaffraix@webkit.org>
325
326         Move the 'overflow' event dispatching logic out of RenderLayer
327         https://bugs.webkit.org/show_bug.cgi?id=80090
328
329         Unreviewed build fix.
330
331         * rendering/RenderBlock.cpp:
332         (OverflowEventDispatcher): Removed the unused function.
333
334 2012-03-02  Julien Chaffraix  <jchaffraix@webkit.org>
335
336         Move the 'overflow' event dispatching logic out of RenderLayer
337         https://bugs.webkit.org/show_bug.cgi?id=80090
338
339         Reviewed by Simon Fraser.
340
341         Test: fast/events/overflow-events-writing-mode.html
342
343         This moves the 'overflow' event dispatch from RenderLayer to an helper class
344         OverflowEventDispatcher. For now, the class lives in RenderBlock as it matches
345         the existing code but it may be moved later to its own class as FrameView could
346         benefit from it too or if we need to support 'overflow' events on RenderBoxes.
347
348         * rendering/RenderBlock.cpp:
349         (WebCore):
350         (OverflowEventDispatcher):
351         (WebCore::OverflowEventDispatcher::OverflowEventDispatcher):
352         (WebCore::OverflowEventDispatcher::~OverflowEventDispatcher):
353         (WebCore::OverflowEventDispatcher::computeOverflowStatus):
354         RAII dispatcher class that stores the information before layout and compare
355         them after to dispatch the right information.
356
357         (WebCore::RenderBlock::layout): Added an instance of OverflowEventDispatcher.
358
359         * rendering/RenderBox.h:
360         (WebCore::RenderBox::hasHorizontalLayoutOverflow):
361         (WebCore::RenderBox::hasVerticalLayoutOverflow):
362         Helper method to know if we have an horizontal / vertical layout overflow.
363
364         * rendering/RenderLayer.cpp:
365         (WebCore::RenderLayer::RenderLayer):
366         (WebCore::RenderLayer::updateScrollInfoAfterLayout):
367         * rendering/RenderLayer.h:
368         Removed the scroll tracking logic as we don't need it anymore. This removes
369         3 booleans from RenderLayer.
370
371 2012-03-02  Caio Marcelo de Oliveira Filho  <caio.oliveira@openbossa.org>
372
373         Create a method in Element to compare attributes with other Element
374         https://bugs.webkit.org/show_bug.cgi?id=80169
375
376         Reviewed by Ryosuke Niwa.
377
378         Avoid manually peeking at attribute storage to get this information. This
379         simplify the callsites. The actual implementation of comparison was moved to
380         ElementAttributeData. The mapsEquivalent() function still exists for the sake
381         of DocumentType nodes.
382
383         * dom/Element.cpp:
384         (WebCore::Element::hasEquivalentAttributes):
385         (WebCore):
386         * dom/Element.h:
387         (Element):
388         * dom/ElementAttributeData.cpp:
389         (WebCore::ElementAttributeData::isEquivalent):
390         (WebCore):
391         * dom/ElementAttributeData.h:
392         (ElementAttributeData):
393         * dom/NamedNodeMap.cpp:
394         (WebCore::NamedNodeMap::mapsEquivalent):
395         * dom/Node.cpp:
396         (WebCore::Node::isEqualNode):
397         * editing/htmlediting.cpp:
398         (WebCore::areIdenticalElements): Use Element::hasTagName() instead of matching
399         directly to make code a bit clearer.
400
401 2012-03-02  Zan Dobersek  <zandobersek@gmail.com>
402
403         [GTK] Smooth scrolling support
404         https://bugs.webkit.org/show_bug.cgi?id=16123
405
406         Reviewed by Martin Robinson.
407
408         No new tests - no new functionality.
409
410         Add the ScrollAnimatorNone class to compilation and enable
411         the smooth scrolling feature by default at compilation time.
412
413         * GNUmakefile.am:
414         * GNUmakefile.list.am:
415
416 2012-03-02  Philippe Normand  <pnormand@igalia.com>
417
418         [GStreamer] media/media-can-play-flac-audio.html fails
419         https://bugs.webkit.org/show_bug.cgi?id=80124
420
421         Reviewed by Martin Robinson.
422
423         Handle audio/x-flac in the mimeTypeCache() function so that we
424         advertize both audio/flac and audio/x-flac.
425
426         No new tests, this is covered already by media/media-can-play-flac-audio.html.
427
428         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
429
430 2012-03-02  Pavel Podivilov  <podivilov@chromium.org>
431
432         Web Inspector: fix fronted compilation.
433         https://bugs.webkit.org/show_bug.cgi?id=80154
434
435         Reviewed by Yury Semikhatsky.
436
437         * inspector/front-end/DebuggerModel.js:
438         (WebInspector.DebuggerModel.prototype.scriptForSourceID):
439         * inspector/front-end/DebuggerPresentationModel.js:
440         (WebInspector.DebuggerPresentationModel.Linkifier.prototype.linkifyLocation):
441         * inspector/front-end/ScriptsSearchScope.js:
442         (WebInspector.ScriptsSearchResultsPane.prototype.createAnchor):
443
444 2012-03-02  Kaustubh Atrawalkar  <kaustubh@motorola.com>
445
446         Rename DOMURL to URL in the bindings
447         https://bugs.webkit.org/show_bug.cgi?id=78214
448
449         Reviewed by Kentaro Hara.
450
451         No new tests. Interface name change.
452
453         * html/DOMURL.idl: Added InterfaceName attribute to DOMURL.
454
455 2012-03-02  Roland Steiner  <rolandsteiner@chromium.org>
456
457         Add :scope pseudo-class
458         https://bugs.webkit.org/show_bug.cgi?id=79077
459
460         Add :scope pseudo class name & pseudoId
461         Add selector check for the new pseudo-class
462
463         Reviewed by Antti Koivisto.
464
465         Test: fast/css/style-scoped/scope-pseudo.html
466
467         * css/CSSSelector.cpp:
468         (WebCore::CSSSelector::pseudoId):
469         (WebCore::nameToPseudoTypeMap):
470         (WebCore::CSSSelector::extractPseudoType):
471         * css/CSSSelector.h:
472         * css/SelectorChecker.cpp:
473         (WebCore::SelectorChecker::checkOneSelector):
474
475 2012-03-01  Caio Marcelo de Oliveira Filho  <caio.oliveira@openbossa.org>
476
477         Make parser code not depend on NamedNodeMap
478         https://bugs.webkit.org/show_bug.cgi?id=79963
479
480         Reviewed by Adam Barth.
481
482         Instead of creating Element-less NamedNodeMaps, the parsing code now creates
483         AttributeVectors, that are used to fill Element via the parserSetAttributes()
484         method. This allows us to remove even more methods from the NamedNodeMap.
485
486         The AttributeVector class contains convenience methods that take the attribute's
487         QualifiedName as parameter. This class is also used inside ElementAttributeData.
488
489         * dom/Attr.h:
490         (Attr):
491         * dom/Element.cpp:
492         (WebCore::Element::getAttribute):
493         (WebCore::Element::parserSetAttributes): Now we have to create the attribute
494         storage, and fill it (by Vector::swap()) with the passed attributes. Also use an
495         early return to reduce indentation.
496         (WebCore::Element::insertedIntoDocument):
497         (WebCore::Element::removedFromDocument):
498         (WebCore::Element::getURLAttribute):
499         (WebCore::Element::getNonEmptyURLAttribute):
500         * dom/Element.h:
501         (Element):
502         (WebCore::Element::fastHasAttribute):
503         (WebCore::Element::fastGetAttribute):
504         (WebCore::Element::hasAttributesWithoutUpdate):
505         (WebCore::Element::attributeItem):
506         (WebCore::Element::getAttributeItem):
507         * dom/ElementAttributeData.cpp:
508         (WebCore::AttributeVector::removeAttribute):
509         (WebCore):
510         * dom/ElementAttributeData.h:
511         (AttributeVector):
512         (WebCore::AttributeVector::create):
513         (WebCore::AttributeVector::attributeItem):
514         (WebCore::AttributeVector::AttributeVector):
515         (WebCore):
516         (WebCore::AttributeVector::getAttributeItem):
517         (WebCore::AttributeVector::getAttributeItemIndex):
518         (WebCore::AttributeVector::insertAttribute): Boolean parameter isn't necessary
519         since all the callers used 'false', indicating that duplicates were not allowed.
520         (WebCore::ElementAttributeData::attributeItem):
521         (WebCore::ElementAttributeData::getAttributeItem):
522         (WebCore::ElementAttributeData::getAttributeItemIndex):
523         (ElementAttributeData):
524         * dom/NamedNodeMap.cpp:
525         (WebCore::NamedNodeMap::getNamedItem):
526         (WebCore::NamedNodeMap::setNamedItem):
527         (WebCore::NamedNodeMap::removeNamedItem):
528         (WebCore::NamedNodeMap::mapsEquivalent):
529         * dom/NamedNodeMap.h:
530         * html/parser/HTMLConstructionSite.cpp:
531         (WebCore::HTMLConstructionSite::insertHTMLHtmlStartTagBeforeHTML):
532         (WebCore::HTMLConstructionSite::mergeAttributesFromTokenIntoElement):
533         (WebCore::HTMLConstructionSite::insertScriptElement):
534         (WebCore::HTMLConstructionSite::createElement):
535         (WebCore::HTMLConstructionSite::createHTMLElement):
536         (WebCore):
537         * html/parser/HTMLToken.h:
538         (WebCore::AtomicHTMLToken::AtomicHTMLToken):
539         * html/parser/HTMLTreeBuilder.cpp:
540         (WebCore::HTMLTreeBuilder::processFakeStartTag):
541         (WebCore::HTMLTreeBuilder::attributesForIsindexInput):
542         (WebCore):
543         * html/parser/HTMLTreeBuilder.h:
544         * html/parser/TextDocumentParser.cpp:
545         (WebCore::TextDocumentParser::insertFakePreElement):
546         * xml/parser/MarkupTokenBase.h:
547         (WebCore::AtomicMarkupTokenBase::AtomicMarkupTokenBase):
548         (WebCore::AtomicMarkupTokenBase::attributes):
549         (WebCore::AtomicMarkupTokenBase::takeAttributes):
550         (AtomicMarkupTokenBase):
551         (WebCore::::initializeAttributes):
552         * xml/parser/XMLToken.h:
553         (WebCore::AtomicXMLToken::AtomicXMLToken):
554         * xml/parser/XMLTreeBuilder.cpp:
555         (WebCore::XMLTreeBuilder::processNamespaces):
556         (WebCore::XMLTreeBuilder::processAttributes):
557
558 2012-03-02  Yury Semikhatsky  <yurys@chromium.org>
559
560         Web Inspector: assertion failure in JSMainThreadExecState::instrumentedCall
561         https://bugs.webkit.org/show_bug.cgi?id=80152
562
563         Extracted common code of JS call instrumentation into instrumentFunctionCall method
564         and call it directly where the instrumentation is needed instead of calling
565         JSMainThreadExecState::instrumentedCall which works on the main thread only.
566
567         Reviewed by Pavel Feldman.
568
569         * bindings/js/JSCallbackData.cpp:
570         (WebCore::JSCallbackData::invokeCallback):
571         * bindings/js/JSEventListener.cpp:
572         (WebCore::JSEventListener::handleEvent):
573         * bindings/js/JSMainThreadExecState.h:
574         (WebCore::JSMainThreadExecState::instrumentFunctionCall):
575
576 2012-03-02  Yoshifumi Inoue  <yosin@chromium.org>
577
578         [Forms] Make order of attribute/method in HTMLTextAreaElement.idl as same as specification
579         https://bugs.webkit.org/show_bug.cgi?id=80101
580
581         Reviewed by Kent Tamura.
582
583         No new tests. No behavior changes.
584
585         * html/HTMLTextAreaElement.idl: Reorder attribute/method position.
586
587 2012-03-02  Patrick Gansterer  <paroga@webkit.org>
588
589         Build fix after r109538.
590
591         * CMakeLists.txt:
592         * Modules/websockets/WebSocketDeflater.cpp:
593
594 2012-03-02  Roland Steiner  <rolandsteiner@chromium.org>
595
596         Scoped stylesheets don't appear to work in Shadow DOM
597         https://bugs.webkit.org/show_bug.cgi?id=79549
598
599         Make the scope stack in CSSStyleSelector use ContainerNode* instead of Element*.
600         Adapt using sites accordingly.
601         Push the ShadowRoot to the scope stack in the same way that elements are pushed.
602         Fix an issue with removedFromDocument() on destruction.
603
604         Reviewed by Antti Koivisto.
605
606         Test: fast/css/style-scoped/style-scoped-in-shadow.html
607
608         * css/CSSStyleSelector.cpp:
609         (RuleSet):
610         (WebCore::CSSStyleSelector::CSSStyleSelector):
611         (WebCore::CSSStyleSelector::determineScope):
612         (WebCore::CSSStyleSelector::ruleSetForScope):
613         (WebCore::CSSStyleSelector::appendAuthorStylesheets):
614         (WebCore::CSSStyleSelector::setupScopeStack):
615         (WebCore::CSSStyleSelector::pushScope):
616         (WebCore):
617         (WebCore::CSSStyleSelector::popScope):
618         (WebCore::CSSStyleSelector::pushParentElement):
619         (WebCore::CSSStyleSelector::popParentElement):
620         (WebCore::CSSStyleSelector::pushParentShadowRoot):
621         (WebCore::CSSStyleSelector::popParentShadowRoot):
622         (WebCore::CSSStyleSelector::matchScopedAuthorRules):
623         (WebCore::CSSStyleSelector::collectMatchingRulesForList):
624         * css/CSSStyleSelector.h:
625         (CSSStyleSelector):
626         (WebCore::CSSStyleSelector::pushScope):
627         (WebCore::CSSStyleSelector::popScope):
628         (WebCore::CSSStyleSelector::MatchOptions::MatchOptions):
629         (MatchOptions):
630         (WebCore::CSSStyleSelector::scopeStackIsConsistent):
631         (WebCore::CSSStyleSelector::ScopeStackFrame::ScopeStackFrame):
632         (ScopeStackFrame):
633         * css/SelectorChecker.h:
634         (SelectorCheckingContext):
635         * dom/Element.cpp:
636         (WebCore::StyleSelectorParentPusher::push):
637         (WebCore::StyleSelectorParentPusher::~StyleSelectorParentPusher):
638         (WebCore::Element::beginParsingChildren):
639         (WebCore::Element::finishParsingChildren):
640         * dom/ShadowRoot.cpp:
641         (WebCore::ShadowRoot::attach):
642         (WebCore):
643         * dom/ShadowRoot.h:
644         (ShadowRoot):
645         * dom/ShadowTree.cpp:
646         (WebCore::ShadowTree::recalcShadowTreeStyle):
647         * html/HTMLStyleElement.cpp:
648         (WebCore::HTMLStyleElement::removedFromDocument):
649
650 2012-03-02  Yoshifumi Inoue  <yosin@chromium.org>
651
652         [Forms] Make order of attribute/method in HTMLSelectElement.idl as same as specification
653         https://bugs.webkit.org/show_bug.cgi?id=80097
654
655         Reviewed by Kent Tamura.
656
657         No new tests. No behavior changes.
658
659         * html/HTMLSelectElement.idl: Reorder attribute/method position.
660
661 2012-03-02  Pavel Podivilov  <podivilov@chromium.org>
662
663         Web Inspector: limit RawSourceCode usages to DebuggerPresentationModel.
664         https://bugs.webkit.org/show_bug.cgi?id=80146
665
666         Reviewed by Vsevolod Vlasov.
667
668         * inspector/front-end/DebuggerPresentationModel.js:
669         (WebInspector.DebuggerPresentationModel.prototype.uiLocationToRawLocation):
670         (WebInspector.DebuggerPresentationModel.Linkifier.prototype.linkifyLocation):
671         (WebInspector.DebuggerPresentationModel.Linkifier.prototype.linkifyRawLocation):
672         * inspector/front-end/ObjectPopoverHelper.js:
673         (WebInspector.ObjectPopoverHelper.prototype._showObjectPopover.showObjectPopover.):
674         (WebInspector.ObjectPopoverHelper.prototype._showObjectPopover):
675         * inspector/front-end/ScriptsSearchScope.js:
676         (WebInspector.ScriptsSearchResultsPane.prototype.createAnchor):
677
678 2012-03-02  Pavel Podivilov  <podivilov@chromium.org>
679
680         Web Inspector: update execution line using LiveLocation.
681         https://bugs.webkit.org/show_bug.cgi?id=80143
682
683         Reviewed by Vsevolod Vlasov.
684
685         * inspector/front-end/DebuggerPresentationModel.js:
686         (WebInspector.DebuggerPresentationModel.prototype._uiSourceCodeListChanged):
687         (WebInspector.DebuggerPresentationModel.prototype._debuggerResumed):
688         (WebInspector.DebuggerPresentationModel.prototype.set selectedCallFrame.updateExecutionLine):
689         (WebInspector.DebuggerPresentationModel.prototype.set selectedCallFrame):
690
691 2012-03-02  Leo Yang  <leo.yang@torchmobile.com.cn>
692
693         [BlackBerry] Build fix for LocalizedStringsBlackBerry.cpp
694         https://bugs.webkit.org/show_bug.cgi?id=80099
695
696         Unreviewed build fix.
697
698         * platform/blackberry/LocalizedStringsBlackBerry.cpp:
699
700 2012-03-02  Allan Sandfeld Jensen  <allan.jensen@nokia.com>
701
702         Fix build on AppleWebKit after 109548.
703
704         * WebCore.exp.in:
705
706 2012-03-02  Yoshifumi Inoue  <yosin@chromium.org>
707
708         [Forms] Make order of attribute/method in HTMLOptionElement.idl as same as specification
709         https://bugs.webkit.org/show_bug.cgi?id=80095
710
711         Reviewed by Kentaro Hara.
712
713         No new tests. No behavior changes.
714
715         * html/HTMLOptionElement.idl: Reorder attribute/method position.
716
717 2012-03-02  Adam Barth  <abarth@webkit.org>
718
719         WorkerContext shouldn't know about IndexedDB
720         https://bugs.webkit.org/show_bug.cgi?id=80094
721
722         Reviewed by Kentaro Hara.
723
724         There are still a couple IndexedDB stragglers we should clean up in
725         WebCore proper.  This patch moves some IndexedDB logic from
726         WorkerContext into the indexeddb module.
727
728         In the process of writing this patch, I noticed that some IndexedDB
729         files were missing from various build systems, so I added them.  I
730         suspect that means IndexedDB is only enabled by default on Chromium.
731
732         * CMakeLists.txt:
733         * DerivedSources.make:
734         * DerivedSources.pri:
735         * GNUmakefile.list.am:
736         * Modules/indexeddb/WorkerContextIndexedDatabase.cpp: Added.
737         (WebCore):
738         (WebCore::WorkerContextIndexedDatabase::WorkerContextIndexedDatabase):
739         (WebCore::WorkerContextIndexedDatabase::~WorkerContextIndexedDatabase):
740         (WebCore::WorkerContextIndexedDatabase::from):
741         (WebCore::WorkerContextIndexedDatabase::webkitIndexedDB):
742         * Modules/indexeddb/WorkerContextIndexedDatabase.h: Added.
743         (WebCore):
744         (WorkerContextIndexedDatabase):
745         * Modules/indexeddb/WorkerContextIndexedDatabase.idl: Added.
746         * Target.pri:
747         * WebCore.gypi:
748         * WebCore.vcproj/WebCore.vcproj:
749         * WebCore.xcodeproj/project.pbxproj:
750         * workers/WorkerContext.cpp:
751         (WebCore):
752         * workers/WorkerContext.h:
753         (WebCore):
754         (WorkerContext):
755         * workers/WorkerContext.idl:
756
757 2012-03-02  Simon Hausmann  <simon.hausmann@nokia.com>
758
759         [Qt] Compile WebCore without QtWidgets
760         https://bugs.webkit.org/show_bug.cgi?id=80141
761
762         Reviewed by Tor Arne Vestbø.
763
764         * Target.pri: Don't add widgets to QT.
765         * WebCore.pri: Use QT += opengl only with Qt 4, because it has an implicit QtWidgets
766         dependency. With Qt 5 all necessary OpenGL API is part of QtGui (with a QOpenGL* prefix).
767
768 2012-03-02  Yoshifumi Inoue  <yosin@chromium.org>
769
770         [Forms] Make order of attribute/method in HTMLFormElement.idl as same as specification
771         https://bugs.webkit.org/show_bug.cgi?id=80093
772
773         Reviewed by Kentaro Hara.
774
775         No new tests. No behavior changes
776
777         * html/HTMLFormElement.idl: Reorder attribute/method position.
778
779 2012-03-02  Yoshifumi Inoue  <yosin@chromium.org>
780
781         [Forms] Make order of attribute/method in HTMLButtonElement.idl as same as specification
782         https://bugs.webkit.org/show_bug.cgi?id=80091
783
784         Reviewed by Kentaro Hara.
785
786         No new tests. No behavior changes.
787
788         * html/HTMLButtonElement.idl: Reorder attribute/method position.
789
790 2012-03-02  Allan Sandfeld Jensen  <allan.jensen@nokia.com>
791
792         Suspend/Resume API for pausing timers and animations.
793         https://bugs.webkit.org/show_bug.cgi?id=76063
794
795         Reviewed by Kenneth Rohde Christiansen.
796
797         * dom/ActiveDOMObject.h:
798             New ReasonForSuspension: PageWillBePaused.
799         * html/HTMLMediaElement.cpp:
800         (WebCore::HTMLMediaElement::suspend): Handle new ReasonForSuspension.
801         * page/Frame.cpp:
802         (WebCore::Frame::Frame):
803         (WebCore::Frame::setDocument):
804         (WebCore::Frame::suspendActiveDOMObjectsAndAnimations):
805         (WebCore::Frame::resumeActiveDOMObjectsAndAnimations):
806         * page/Frame.h:
807         (WebCore::Frame::activeDOMObjectsAndAnimationsSuspended):
808             Frame now maintains a state of suspending animation and ActiveDOMObjects,
809             which is inherited to all child-frames.
810         * page/Page.cpp:
811         (WebCore::Page::suspendActiveDOMObjectsAndAnimations):
812         (WebCore::Page::resumeActiveDOMObjectsAndAnimations):
813         * page/Page.h:
814             Functions for suspending and resuming active DOM objects and animations in all frames.
815         * rendering/RenderObject.cpp:
816         (WebCore::RenderObject::willRenderImage):
817             WillRenderImage now checks for suspension. This causes animated images to pause
818             together with all other types of animations.
819
820 2012-03-02  Yoshifumi Inoue  <yosin@chromium.org>
821
822         [Forms] Make order of attribute/method in HTMLFieldSetElement.idl as same as specification
823         https://bugs.webkit.org/show_bug.cgi?id=80092
824
825         Reviewed by Kentaro Hara.
826
827         No new tests. No behavior changes.
828
829         * html/HTMLFieldSetElement.idl: Reorder attribute/method position.
830
831 2012-03-02  Antti Koivisto  <antti@apple.com>
832
833         possible regression: r104060 maybe causing crashes
834         https://bugs.webkit.org/show_bug.cgi?id=75676
835
836         Rubber-stamped by Simon Hausmann.
837
838         Remove the speculative fix (the problem was elsewhere, http://trac.webkit.org/changeset/104845).
839
840         Also remove the debugging code added for this bug.
841     
842         * dom/Document.cpp:
843         (WebCore::Document::Document):
844         (WebCore::Document::clearStyleSelector):
845         (WebCore::Document::updateActiveStylesheets):
846         * dom/Document.h:
847         (Document):
848
849 2012-03-01  Alexander Pavlov  <apavlov@chromium.org>
850
851         Web Inspector: Implement suggestions in Watch Expressions
852         https://bugs.webkit.org/show_bug.cgi?id=79912
853
854         Drive-by: make subproperties in ObjectPropertySections editable
855
856         Reviewed by Pavel Feldman.
857
858         * inspector/front-end/ConsoleView.js:
859         (WebInspector.ConsoleView):
860         (WebInspector.ConsoleView.prototype.completionsForTextPrompt):
861         * inspector/front-end/DatabaseQueryView.js:
862         * inspector/front-end/ObjectPropertiesSection.js:
863         (WebInspector.ObjectPropertyTreeElement.prototype.onpopulate.callback):
864         (WebInspector.ObjectPropertyTreeElement.prototype.onpopulate):
865         (WebInspector.ObjectPropertyTreeElement.prototype.ondblclick):
866         (WebInspector.ObjectPropertyTreeElement.prototype.renderPromptAsBlock):
867         (WebInspector.ObjectPropertyTreeElement.prototype.elementAndValueToEdit):
868         (WebInspector.ObjectPropertyTreeElement.prototype.startEditing.blurListener):
869         (WebInspector.ObjectPropertyTreeElement.prototype.startEditing):
870         (WebInspector.ObjectPropertyTreeElement.prototype.editingEnded):
871         (WebInspector.ObjectPropertyTreeElement.prototype.editingCancelled):
872         (WebInspector.ObjectPropertyTreeElement.prototype.editingCommitted):
873         (WebInspector.ObjectPropertyTreeElement.prototype._promptKeyDown):
874         (WebInspector.ObjectPropertyPrompt):
875         * inspector/front-end/StylesSidebarPane.js:
876         * inspector/front-end/TextPrompt.js:
877         (WebInspector.TextPrompt.prototype.complete):
878         * inspector/front-end/WatchExpressionsSidebarPane.js:
879         (WebInspector.WatchExpressionTreeElement.prototype.renderPromptAsBlock):
880         (WebInspector.WatchExpressionTreeElement.prototype.elementAndValueToEdit):
881         (WebInspector.WatchExpressionTreeElement.prototype.editingCancelled):
882         * inspector/front-end/inspector.css:
883         (.watch-expressions > li.editing-sub-part .text-prompt):
884
885 2012-03-02  Antti Koivisto  <antti@apple.com>
886
887         REGRESSION (r104060): Page contents not painted if inserting a new stylesheet and temporary body node
888         https://bugs.webkit.org/show_bug.cgi?id=76590
889
890         Reviewed by Maciej Stachowiak.
891
892         Test: fast/css/pending-stylesheet-repaint.html
893         
894         If there has been a style recalc with a pending stylesheet, the forced repaint will need to be triggered even
895         if the stylesheet doesn't affect the rendering. Otherwise we may end up never painting at all.
896
897         * dom/Document.cpp:
898         (WebCore::Document::styleSelectorChanged):
899
900 2012-03-02  Simon Hausmann  <simon.hausmann@nokia.com>
901
902         [Qt] Move QStyle theming code out of WebCore into WebKit1
903         https://bugs.webkit.org/show_bug.cgi?id=80128
904
905         Reviewed by Kenneth Rohde Christiansen.
906
907         Moved QStyle dependant code into WebKit1, where it's okay to depend on
908         QtWidgets/QStyle. Added factory hooks into RenderThemeQt to allow changing
909         the default "mobile" style to QStyle on start-up.
910
911         * Target.pri:
912         * platform/qt/RenderThemeQt.cpp:
913         (WebCore):
914         (WebCore::RenderThemeQt::setCustomTheme):
915         (WebCore::RenderThemeQt::customScrollbarTheme):
916         (WebCore::createTheme):
917         (WebCore::RenderTheme::themeForPage):
918         (WebCore::RenderThemeQt::extraDefaultStyleSheet):
919         * platform/qt/RenderThemeQt.h:
920         (WebCore):
921         (RenderThemeQt):
922         * platform/qt/RenderThemeQtMobile.cpp:
923         * platform/qt/ScrollbarThemeQt.cpp:
924         (WebCore::ScrollbarTheme::nativeTheme):
925
926 2012-03-02  Luke Macpherson   <macpherson@chromium.org>
927
928         Handle CSSPropertyWebkitColumnRuleStyle in CSSStyleApplyProperty.
929         https://bugs.webkit.org/show_bug.cgi?id=80085
930
931         Reviewed by Eric Seidel.
932
933         No new tests / refactoring only.
934
935         * css/CSSStyleApplyProperty.cpp:
936         (WebCore::CSSStyleApplyProperty::CSSStyleApplyProperty):
937         * css/CSSStyleSelector.cpp:
938         (WebCore::CSSStyleSelector::collectMatchingRulesForList):
939
940 2012-03-02  Yury Semikhatsky  <yurys@chromium.org>
941
942         Web Inspector: enable Timeline panel for workers
943         https://bugs.webkit.org/show_bug.cgi?id=80130
944
945         Enabled Timeline panel for worker inspector. Refactored
946         JS function calls instrumentation to work for both
947         worker contexts and documents.
948
949         Reviewed by Pavel Feldman.
950
951         * bindings/js/JSCallbackData.cpp:
952         (WebCore::JSCallbackData::invokeCallback):
953         * bindings/js/JSEventListener.cpp:
954         (WebCore::JSEventListener::handleEvent):
955         * bindings/js/JSMainThreadExecState.h:
956         (WebCore):
957         (WebCore::JSMainThreadExecState::instrumentedCall):
958         * bindings/js/ScriptState.cpp:
959         (WebCore::scriptExecutionContextFromScriptState):
960         (WebCore):
961         * bindings/js/ScriptState.h:
962         (WebCore):
963         * bindings/v8/ScriptState.cpp:
964         (WebCore::ScriptState::scriptExecutionContext):
965         (WebCore):
966         (WebCore::scriptExecutionContextFromScriptState):
967         * bindings/v8/ScriptState.h:
968         (WebCore):
969         (ScriptState):
970         * bindings/v8/V8Proxy.cpp:
971         (WebCore::V8Proxy::instrumentedCallFunction):
972         * bindings/v8/V8WorkerContextEventListener.cpp:
973         (WebCore::V8WorkerContextEventListener::callListenerFunction):
974         * inspector/InjectedScript.cpp:
975         (WebCore::InjectedScript::callFunctionWithEvalEnabled):
976         * inspector/InspectorInstrumentation.cpp:
977         (WebCore):
978         (WebCore::InspectorInstrumentation::instrumentingAgentsForNonDocumentContext):
979         * inspector/InspectorInstrumentation.h:
980         (InspectorInstrumentation):
981         (WebCore::InspectorInstrumentation::willCallFunction):
982         (WebCore):
983         (WebCore::InspectorInstrumentation::instrumentingAgentsForContext):
984         * inspector/WorkerInspectorController.cpp:
985         (WebCore::WorkerInspectorController::WorkerInspectorController):
986         (WebCore::WorkerInspectorController::connectFrontend):
987         (WebCore::WorkerInspectorController::disconnectFrontend):
988         (WebCore::WorkerInspectorController::restoreInspectorStateFromCookie):
989         * inspector/WorkerInspectorController.h:
990         (WebCore):
991         (WorkerInspectorController):
992         * inspector/front-end/inspector.js:
993         (WebInspector._createPanels):
994
995 2012-03-02  Kenichi Ishibashi  <bashi@chromium.org>
996
997         Adding WebSocket per-frame DEFLATE extension
998         https://bugs.webkit.org/show_bug.cgi?id=77522
999
1000         Add WebSocketDeflateFramer class which handles deflate-frame extension.
1001         This class encapsulates WebSocketDeflater and WebSocketInflater classes,
1002         which depend on zlib, so that WebSocketChannel is not necessary to aware
1003         zlib dependency.
1004
1005         Reviewed by Kent Tamura.
1006
1007         Tests: http/tests/websocket/tests/hybi/compressed-control-frame.html
1008                http/tests/websocket/tests/hybi/deflate-frame-comp-bit-onoff.html
1009                http/tests/websocket/tests/hybi/deflate-frame-invalid-parameter.html
1010                http/tests/websocket/tests/hybi/deflate-frame-parameter.html
1011
1012         * CMakeLists.txt: Added WebSocketDeflateFramer.(cpp|h)
1013         * GNUmakefile.list.am: Ditto.
1014         * Target.pri: Ditto.
1015         * WebCore.gypi: Ditto.
1016         * WebCore.gyp/WebCore.gyp: Added zlib dependency.
1017         * WebCore.vcproj/WebCore.vcproj: Added WebSocketDeflateFramer.(cpp|h)
1018         * WebCore.xcodeproj/project.pbxproj: Ditto.
1019         * websockets/WebSocket.cpp:
1020         (WebCore::WebSocket::didConnect): Set m_extensions.
1021         * websockets/WebSocketChannel.cpp:
1022         (WebCore::WebSocketChannel::connect): Add deflate-frame extension processor to WebSocketHanshake if deflate can use.
1023         (WebCore::WebSocketChannel::fail): Call m_deflateFramer.didFail().
1024         (WebCore::WebSocketChannel::processFrame): Decompress frames if needed.
1025         (WebCore::WebSocketChannel::sendFrame): Compress frames if possible.
1026         * websockets/WebSocketChannel.h:
1027         * websockets/WebSocketDeflateFramer.cpp: Added.
1028         (WebCore):
1029         (WebSocketExtensionDeflateFrame):
1030         (WebCore::WebSocketExtensionDeflateFrame::create):
1031         (WebCore::WebSocketExtensionDeflateFrame::~WebSocketExtensionDeflateFrame):
1032         (WebCore::WebSocketExtensionDeflateFrame::WebSocketExtensionDeflateFrame):
1033         (WebCore::WebSocketExtensionDeflateFrame::handshakeString):
1034         (WebCore::WebSocketExtensionDeflateFrame::processResponse):
1035         (WebCore::DeflateResultHolder::DeflateResultHolder):
1036         (WebCore::DeflateResultHolder::~DeflateResultHolder):
1037         (WebCore::DeflateResultHolder::fail):
1038         (WebCore::InflateResultHolder::InflateResultHolder):
1039         (WebCore::InflateResultHolder::~InflateResultHolder):
1040         (WebCore::InflateResultHolder::fail):
1041         (WebCore::WebSocketDeflateFramer::WebSocketDeflateFramer):
1042         (WebCore::WebSocketDeflateFramer::createExtensionProcessor):
1043         (WebCore::WebSocketDeflateFramer::canDeflate):
1044         (WebCore::WebSocketDeflateFramer::enableDeflate):
1045         (WebCore::WebSocketDeflateFramer::deflate):
1046         (WebCore::WebSocketDeflateFramer::resetDeflateContext):
1047         (WebCore::WebSocketDeflateFramer::inflate):
1048         (WebCore::WebSocketDeflateFramer::resetInflateContext):
1049         (WebCore::WebSocketDeflateFramer::didFail):
1050         * websockets/WebSocketDeflateFramer.h: Added.
1051         (WebCore):
1052         (DeflateResultHolder):
1053         (WebCore::DeflateResultHolder::succeeded):
1054         (WebCore::DeflateResultHolder::failureReason):
1055         (InflateResultHolder):
1056         (WebCore::InflateResultHolder::succeeded):
1057         (WebCore::InflateResultHolder::failureReason):
1058         (WebSocketDeflateFramer):
1059         (WebCore::WebSocketDeflateFramer::enabled):
1060
1061 2012-03-01  Vsevolod Vlasov  <vsevik@chromium.org>
1062
1063         Web Inspector: [InspectorIndexedDB] Show meaningful description for object store items values.
1064         https://bugs.webkit.org/show_bug.cgi?id=79691
1065
1066         Reviewed by Pavel Feldman.
1067
1068         * inspector/front-end/IndexedDBModel.js:
1069         (WebInspector.IndexedDBModel.idbKeyFromKey):
1070         * inspector/front-end/IndexedDBViews.js:
1071         (WebInspector.IDBDataView.prototype._updateData.callback):
1072         (WebInspector.IDBDataView.prototype._updateData):
1073         (WebInspector.IDBDataGridNode.prototype.createCell):
1074         (WebInspector.IDBDataGridNode.prototype._formatValue):
1075         * inspector/front-end/ObjectPropertiesSection.js:
1076         (WebInspector.ObjectPropertyTreeElement.prototype.onpopulate.callback):
1077         (WebInspector.ObjectPropertyTreeElement.prototype.onpopulate):
1078         * inspector/front-end/RemoteObject.js:
1079         (WebInspector.LocalJSONObject.prototype.get subtype):
1080         * inspector/front-end/indexedDBViews.css:
1081         (.indexed-db-data-view .data-grid .data-container td):
1082         (.indexed-db-data-view .data-grid .data-container td.primaryKey-column):
1083         (.indexed-db-data-view .data-grid .data-container td.primaryKey-column div.primitive-value):
1084         (.indexed-db-data-view .data-grid .data-container td .section .header .title):
1085
1086 2012-03-02  Wei James  <james.wei@intel.com>
1087
1088         [Chromium] Layout Test webaudio/audiobuffersource-channels.html is failing
1089         https://bugs.webkit.org/show_bug.cgi?id=79765
1090
1091         Reviewed by Chris Rogers.
1092
1093         * webaudio/AudioBuffer.cpp:
1094         (WebCore::AudioBuffer::create):
1095         * webaudio/AudioBufferSourceNode.cpp:
1096         (WebCore::AudioBufferSourceNode::setBuffer):
1097         * webaudio/AudioContext.h:
1098         (WebCore):
1099         (AudioContext):
1100         (WebCore::AudioContext::maxNumberOfChannels):
1101         * webaudio/AudioNodeOutput.cpp:
1102         (WebCore::AudioNodeOutput::AudioNodeOutput):
1103         (WebCore::AudioNodeOutput::setNumberOfChannels):
1104
1105 2012-03-02  Luke Macpherson   <macpherson@chromium.org>
1106
1107         Handle CSSPropertyWebkitRegionBreakAfter, CSSPropertyWebkitRegionBreakBefore and CSSPropertyWebkitRegionBreakInside in CSSStyleApplyProperty.
1108         https://bugs.webkit.org/show_bug.cgi?id=80066
1109
1110         Reviewed by Eric Seidel.
1111
1112         No new tests / refactoring only.
1113
1114         * css/CSSStyleApplyProperty.cpp:
1115         (WebCore::CSSStyleApplyProperty::CSSStyleApplyProperty):
1116         * css/CSSStyleSelector.cpp:
1117         (WebCore::CSSStyleSelector::collectMatchingRulesForList):
1118
1119 2012-03-02  Pablo Flouret  <pablof@motorola.com>
1120
1121         Implement DefaultParagraphSeparator execCommand, to let authors choose the default block element
1122         https://bugs.webkit.org/show_bug.cgi?id=59961
1123
1124         Reviewed by Ryosuke Niwa.
1125
1126         http://dvcs.w3.org/hg/editing/raw-file/tip/editing.html#the-defaultparagraphseparator-command
1127
1128         Test: editing/execCommand/default-paragraph-separator.html
1129
1130         * editing/Editor.cpp:
1131         (WebCore::Editor::Editor):
1132         * editing/Editor.h:
1133         (WebCore::Editor::defaultParagraphSeparator):
1134         (WebCore::Editor::setDefaultParagraphSeparator):
1135         (Editor):
1136         * editing/EditorCommand.cpp:
1137         (WebCore::executeDefaultParagraphSeparator):
1138         (WebCore):
1139         (WebCore::valueDefaultParagraphSeparator):
1140         (WebCore::createCommandMap):
1141         * editing/htmlediting.cpp:
1142         (WebCore::createDefaultParagraphElement):
1143
1144         * html/HTMLParagraphElement.cpp:
1145         (WebCore::HTMLParagraphElement::create):
1146         (WebCore):
1147         * html/HTMLParagraphElement.h:
1148         (HTMLParagraphElement):
1149             Added create(Document*) method that defaults to pTag as the QualifiedName.
1150
1151 2012-03-02  Kenneth Russell  <kbr@google.com>
1152
1153         [chromium] Fix errors in LayerRendererChromium cleanup
1154         https://bugs.webkit.org/show_bug.cgi?id=80064
1155
1156         Reviewed by James Robinson.
1157
1158         Tested manually by forcing lost context while rendering Flash on
1159         Mac OS in a Debug build.
1160
1161         * platform/graphics/chromium/LayerRendererChromium.cpp:
1162         (WebCore::LayerRendererChromium::cleanupSharedObjects):
1163
1164 2012-03-02  Andy Estes  <aestes@apple.com>
1165
1166         Fix errors found when building the Mac port with ICONDATABASE disabled.
1167         https://bugs.webkit.org/show_bug.cgi?id=80059
1168
1169         Reviewed by Brady Eidson.
1170
1171         * WebCore.exp.in: Only export IconDatabase symbols when the feature is
1172         enabled.
1173         * loader/icon/IconDatabase.h:
1174         (WebCore::IconDatabase::create): WebKit calls this static method, so it
1175         should be defined on the stub class.
1176         (WebCore::IconDatabase::allowDatabaseCleanup): Ditto.
1177         (WebCore::IconDatabase::checkIntegrityBeforeOpening): Ditto.
1178
1179 2012-03-02  Luke Macpherson   <macpherson@chromium.org>
1180
1181         Handle CSSPropertyWebkitColorCorrection in CSSStyleApplyProperty.
1182         https://bugs.webkit.org/show_bug.cgi?id=80056
1183
1184         Reviewed by Eric Seidel.
1185
1186         No new tests / refactoring only.
1187
1188         * css/CSSStyleApplyProperty.cpp:
1189         (WebCore::CSSStyleApplyProperty::CSSStyleApplyProperty):
1190         * css/CSSStyleSelector.cpp:
1191         (WebCore::CSSStyleSelector::collectMatchingRulesForList):
1192
1193 2012-03-02  John Bauman  <jbauman@chromium.org>
1194
1195         [chromium] Send didCommitAndDrawFrame after swap
1196         https://bugs.webkit.org/show_bug.cgi?id=80052
1197
1198         Reviewed by James Robinson.
1199
1200         Sending didCommitAndDrawFrame before the swap was causing plugins to
1201         redraw themselves between compositing and the swap, which reduces
1202         opportunities for optimization.
1203
1204         * platform/graphics/chromium/cc/CCSingleThreadProxy.cpp:
1205         (WebCore::CCSingleThreadProxy::compositeAndReadback):
1206         (WebCore::CCSingleThreadProxy::compositeImmediately):
1207         (WebCore::CCSingleThreadProxy::doComposite):
1208         (WebCore):
1209         (WebCore::CCSingleThreadProxy::didSwapFrame):
1210         * platform/graphics/chromium/cc/CCSingleThreadProxy.h:
1211         (CCSingleThreadProxy):
1212
1213 2012-03-02  Raymond Toy  <rtoy@google.com>
1214
1215         AudioParam needs tests for the parameter automation routines.
1216         https://bugs.webkit.org/show_bug.cgi?id=77666
1217
1218         Reviewed by Chris Rogers.
1219
1220         Tests: webaudio/audioparam-linearRampToValueAtTime.html
1221                webaudio/audioparam-setTargetValueAtTime.html
1222                webaudio/audioparam-setValueAtTime.html
1223                webaudio/audioparam-setValueCurveAtTime.html
1224
1225         * webaudio/AudioParamTimeline.cpp:
1226         (WebCore::AudioParamTimeline::valuesForTimeRangeImpl): Round the
1227         curveIndex to fix timing issue in setValueCurveAtTime.
1228
1229 2012-03-01  Pablo Flouret  <pablof@motorola.com>
1230
1231         Fix code generators to correctly guard header declarations that have a [Conditional] attribute.
1232         https://bugs.webkit.org/show_bug.cgi?id=79375
1233
1234         Reviewed by Kentaro Hara.
1235
1236         In most cases code generators weren't checking the Conditional attribute
1237         when generating code in headers for function/attribute/constants, they
1238         were just guarding against the Conditional for the whole interface.
1239
1240         * bindings/scripts/CodeGeneratorCPP.pm:
1241         (GenerateHeader):
1242         * bindings/scripts/CodeGeneratorJS.pm:
1243         (GenerateHeader):
1244         * bindings/scripts/CodeGeneratorObjC.pm:
1245         (GenerateHeader):
1246         * bindings/scripts/CodeGeneratorV8.pm:
1247         (GenerateHeader):
1248         * bindings/scripts/test/CPP/WebDOMTestInterface.h:
1249         * bindings/scripts/test/CPP/WebDOMTestObj.h:
1250         * bindings/scripts/test/JS/JSTestInterface.h:
1251         (JSTestInterface):
1252         (WebCore):
1253         * bindings/scripts/test/JS/JSTestObj.h:
1254         (WebCore):
1255         * bindings/scripts/test/ObjC/DOMTestInterface.h:
1256         * bindings/scripts/test/ObjC/DOMTestObj.h:
1257
1258
1259 2012-03-01  Dana Jansens  <danakj@chromium.org>
1260
1261         [chromium] Make opaque paint tracker aware of SkCanvas layers
1262         https://bugs.webkit.org/show_bug.cgi?id=79145
1263
1264         Reviewed by Stephen White.
1265
1266         The current opaque paint tracker ignored SkCanvas layers entirely. But
1267         SkCanvas layers can be used to apply things like alpha. So we make it
1268         know about layers, and apply any clipping and SkPaint objects for layers
1269         when tracking a paint.
1270
1271         Image clipping is done via a layer, so we can now also remove the
1272         special-case code around image clipping in PlatformContextSkia and
1273         OpaqueRegionSkia.
1274
1275         Unit test: PlatformContextSkiaTest.contextTransparencyLayerTest
1276
1277         Test: compositing/culling/clear-fixed-iframe.html
1278
1279         * platform/graphics/skia/OpaqueRegionSkia.cpp:
1280         (WebCore::OpaqueRegionSkia::didDrawRect):
1281         (WebCore::OpaqueRegionSkia::didDrawPath):
1282         (WebCore::OpaqueRegionSkia::didDrawPoints):
1283         (WebCore::OpaqueRegionSkia::didDrawBounded):
1284         (WebCore::OpaqueRegionSkia::didDraw):
1285         (WebCore):
1286         * platform/graphics/skia/OpaqueRegionSkia.h:
1287         (OpaqueRegionSkia):
1288         * platform/graphics/skia/PlatformContextSkia.cpp:
1289         * platform/graphics/skia/PlatformContextSkia.h:
1290         (PlatformContextSkia):
1291
1292 2012-03-02  Kent Tamura  <tkent@chromium.org>
1293
1294         Add HTML-capable popup API to ChromeClient
1295         https://bugs.webkit.org/show_bug.cgi?id=79078
1296
1297         Reviewed by Dimitri Glazkov.
1298
1299         This API will be used to implement a calendar picker of <input type=date>.
1300         The code is enclosed with ENABLE_PAGE_POPUP, and doesn't change any
1301         behavior for now.
1302
1303         * page/ChromeClient.h: Added declarations of openPagePopup() and closePagePopup().
1304         * loader/EmptyClients.h:
1305         (EmptyChromeClient): Add empty implementations of new ChromeClient functions.
1306         * page/PagePopup.h: Added.
1307         (PagePopup): Define an empty interface
1308         * page/PagePopupClient.h: Added.
1309         (PagePopupClient): Define an interface to provide various information to HTMLPopup.
1310
1311 2012-03-01  Hironori Bono  <hbono@chromium.org>
1312
1313         Render overflow controls of an RTL element to its left-side.
1314         https://bugs.webkit.org/show_bug.cgi?id=54623
1315
1316         This change adds a new flag WTF_USE_RTL_SCROLLBAR and render the
1317         vertical scrollbars and resizers of RTL elements to their left side if
1318         this new flag is enabled.
1319
1320         Reviewed by Ryosuke Niwa.
1321
1322         Test: platform/chromium/fast/events/rtl-scrollbar.html
1323
1324         * rendering/RenderBlock.cpp:
1325         (WebCore::RenderBlock::addOverflowFromPositionedObjects): Move child elements right.
1326         (WebCore::RenderBlock::determineLogicalLeftPositionForChild): ditto.
1327         * rendering/RenderBox.cpp:
1328         (WebCore::RenderBox::overflowClipRect): Move the content rectangle right.
1329         * rendering/RenderLayer.cpp:
1330         (WebCore::cornerStart): Added a function that calculates the X position of a resizer.
1331         (WebCore):
1332         (WebCore::cornerRect): Use cornerStart to move a resizer.
1333         (WebCore::RenderLayer::verticalScrollbarStart): Added a function that calculates
1334         the X position of a vertical scrollbar.
1335         (WebCore::RenderLayer::horizontalScrollbarStart): Added a function that calculates
1336         the X position of a horizontal scrollbar.
1337         (WebCore::RenderLayer::scrollbarOffset): Render a vertical scrollbar to the left side
1338         and move a horizontal scrollbar right by the width of the vertical scrollbar.
1339         (WebCore::RenderLayer::invalidateScrollbarRect): ditto.
1340         (WebCore::RenderLayer::positionOverflowControls): ditto.
1341         (WebCore::RenderLayer::hitTestOverflowControls): ditto.
1342         * rendering/RenderLayer.h:
1343         (RenderLayer):
1344         * rendering/style/RenderStyle.h: Added shouldPlaceBlockDirectionScrollbarOnLogicalLeft,
1345         which returns if we need to move a left scrollbar to its right side.
1346
1347 2012-03-01  Kent Tamura  <tkent@chromium.org>
1348
1349         REGRESSION(90089): Input type='search' text shakes up and down when the style is changed.
1350         https://bugs.webkit.org/show_bug.cgi?id=79445
1351
1352         Reviewed by Dimitri Glazkov.
1353
1354         If the inner text height of a search field is smaller than the
1355         content box height of the <input>, the height of the container
1356         element should be same as the content box height.
1357
1358         When the element style is changed, the RenderStyle height of the
1359         container element is cleared, but the renderer height of the
1360         container element remains. We had a bug that layout() didn't set
1361         the RenderStyle height in a case that the renderer height was the
1362         desired height. It shrunk the renderer height as the result of
1363         layout for children.
1364
1365         Tests: fast/forms/search/search-shaking-text.html
1366
1367         * rendering/RenderTextControlSingleLine.cpp:
1368         (WebCore::RenderTextControlSingleLine::layout):
1369         Always set the RenderStyle height explicitly.
1370
1371 2012-03-01  Kentaro Hara  <haraken@chromium.org>
1372
1373         Unreviewed, rebaselined run-bindings-tests results.
1374
1375         * bindings/scripts/test/CPP/WebDOMTestObj.cpp:
1376         * bindings/scripts/test/CPP/WebDOMTestObj.h:
1377
1378 2012-03-01  Dan Bernstein  <mitz@apple.com>
1379
1380         <rdar://problem/10942540> REGRESSION (r108956): Safari Webpage Preview Fetcher crashes in WebCore::localizedString() when using a WebKit nightly build
1381         https://bugs.webkit.org/show_bug.cgi?id=80034
1382
1383         Reviewed by Benjamin Poulain.
1384
1385         Safari Webpage Preview Fetcher can’t access the WebCore framework when launched from a WebKit
1386         nightly build. After r108956, this causes it to crash.
1387
1388         * platform/mac/LocalizedStringsMac.cpp:
1389         (WebCore::localizedString): Added a null-check for the value returned from
1390         CFBundleGetBundleWithIdentifier(CFSTR("com.apple.WebCore")).
1391
1392 2012-03-01  Jason Liu  <jason.liu@torchmobile.com.cn>
1393
1394         [BlackBerry]Array of Cookies in HTTP request header are not in order.
1395         https://bugs.webkit.org/show_bug.cgi?id=79870
1396
1397         Std::sort and HashMap are not stable. So cookies with the same creating
1398         time sometimes are sent disorder.
1399         Change std::sort with std::stable-sort.
1400         We don't need using HashMap to save so few cookies for one domain.
1401         It is a wast of time to create HashMap, too.
1402         So change it with vector.
1403
1404         Reviewed by George Staikos.
1405
1406         Test: http/tests/cookies/resources/setArraycookies.php
1407
1408         * platform/blackberry/CookieManager.cpp:
1409         (WebCore::cookieSorter):
1410         (WebCore::CookieManager::getRawCookies):
1411         (WebCore::CookieManager::checkAndTreatCookie):
1412         (WebCore::CookieManager::addCookieToMap):
1413         * platform/blackberry/CookieManager.h:
1414         * platform/blackberry/CookieMap.cpp:
1415         (WebCore::CookieMap::addOrReplaceCookie):
1416         (WebCore::CookieMap::removeCookieAtIndex):
1417         (WebCore::CookieMap::removeCookie):
1418         (WebCore):
1419         (WebCore::CookieMap::getAllCookies):
1420         (WebCore::CookieMap::updateOldestCookie):
1421         (WebCore::CookieMap::deleteAllCookiesAndDomains):
1422         * platform/blackberry/CookieMap.h:
1423         (WebCore::CookieMap::count):
1424         (CookieMap):
1425
1426 2012-03-01  Adam Barth  <abarth@webkit.org>
1427
1428         Move WebCore/storage/IDB* files into WebCore/Modules/indexeddb
1429         https://bugs.webkit.org/show_bug.cgi?id=80071
1430
1431         Reviewed by Kentaro Hara.
1432
1433         Now that we've removed all the ENABLE(INDEXED_DATABASE) ifdefs from
1434         WebCore proper, we can move IndexedDB into its own module.
1435
1436         * CMakeLists.txt:
1437         * DerivedSources.make:
1438         * DerivedSources.pri:
1439         * GNUmakefile.list.am:
1440         * Modules/indexeddb/IDBAny.cpp: Copied from Source/WebCore/storage/IDBAny.cpp.
1441         * Modules/indexeddb/IDBAny.h: Copied from Source/WebCore/storage/IDBAny.h.
1442         * Modules/indexeddb/IDBAny.idl: Copied from Source/WebCore/storage/IDBAny.idl.
1443         * Modules/indexeddb/IDBBackingStore.h: Copied from Source/WebCore/storage/IDBBackingStore.h.
1444         * Modules/indexeddb/IDBCallbacks.h: Copied from Source/WebCore/storage/IDBCallbacks.h.
1445         * Modules/indexeddb/IDBCursor.cpp: Copied from Source/WebCore/storage/IDBCursor.cpp.
1446         * Modules/indexeddb/IDBCursor.h: Copied from Source/WebCore/storage/IDBCursor.h.
1447         * Modules/indexeddb/IDBCursor.idl: Copied from Source/WebCore/storage/IDBCursor.idl.
1448         * Modules/indexeddb/IDBCursorBackendImpl.cpp: Copied from Source/WebCore/storage/IDBCursorBackendImpl.cpp.
1449         * Modules/indexeddb/IDBCursorBackendImpl.h: Copied from Source/WebCore/storage/IDBCursorBackendImpl.h.
1450         * Modules/indexeddb/IDBCursorBackendInterface.h: Copied from Source/WebCore/storage/IDBCursorBackendInterface.h.
1451         * Modules/indexeddb/IDBCursorWithValue.cpp: Copied from Source/WebCore/storage/IDBCursorWithValue.cpp.
1452         * Modules/indexeddb/IDBCursorWithValue.h: Copied from Source/WebCore/storage/IDBCursorWithValue.h.
1453         * Modules/indexeddb/IDBCursorWithValue.idl: Copied from Source/WebCore/storage/IDBCursorWithValue.idl.
1454         * Modules/indexeddb/IDBDatabase.cpp: Copied from Source/WebCore/storage/IDBDatabase.cpp.
1455         * Modules/indexeddb/IDBDatabase.h: Copied from Source/WebCore/storage/IDBDatabase.h.
1456         * Modules/indexeddb/IDBDatabase.idl: Copied from Source/WebCore/storage/IDBDatabase.idl.
1457         * Modules/indexeddb/IDBDatabaseBackendImpl.cpp: Copied from Source/WebCore/storage/IDBDatabaseBackendImpl.cpp.
1458         * Modules/indexeddb/IDBDatabaseBackendImpl.h: Copied from Source/WebCore/storage/IDBDatabaseBackendImpl.h.
1459         * Modules/indexeddb/IDBDatabaseBackendInterface.h: Copied from Source/WebCore/storage/IDBDatabaseBackendInterface.h.
1460         * Modules/indexeddb/IDBDatabaseCallbacks.h: Copied from Source/WebCore/storage/IDBDatabaseCallbacks.h.
1461         * Modules/indexeddb/IDBDatabaseCallbacksImpl.cpp: Copied from Source/WebCore/storage/IDBDatabaseCallbacksImpl.cpp.
1462         * Modules/indexeddb/IDBDatabaseCallbacksImpl.h: Copied from Source/WebCore/storage/IDBDatabaseCallbacksImpl.h.
1463         * Modules/indexeddb/IDBDatabaseError.h: Copied from Source/WebCore/storage/IDBDatabaseError.h.
1464         * Modules/indexeddb/IDBDatabaseError.idl: Copied from Source/WebCore/storage/IDBDatabaseError.idl.
1465         * Modules/indexeddb/IDBDatabaseException.cpp: Copied from Source/WebCore/storage/IDBDatabaseException.cpp.
1466         * Modules/indexeddb/IDBDatabaseException.h: Copied from Source/WebCore/storage/IDBDatabaseException.h.
1467         * Modules/indexeddb/IDBDatabaseException.idl: Copied from Source/WebCore/storage/IDBDatabaseException.idl.
1468         * Modules/indexeddb/IDBEventDispatcher.cpp: Copied from Source/WebCore/storage/IDBEventDispatcher.cpp.
1469         * Modules/indexeddb/IDBEventDispatcher.h: Copied from Source/WebCore/storage/IDBEventDispatcher.h.
1470         * Modules/indexeddb/IDBFactory.cpp: Copied from Source/WebCore/storage/IDBFactory.cpp.
1471         * Modules/indexeddb/IDBFactory.h: Copied from Source/WebCore/storage/IDBFactory.h.
1472         * Modules/indexeddb/IDBFactory.idl: Copied from Source/WebCore/storage/IDBFactory.idl.
1473         * Modules/indexeddb/IDBFactoryBackendImpl.cpp: Copied from Source/WebCore/storage/IDBFactoryBackendImpl.cpp.
1474         * Modules/indexeddb/IDBFactoryBackendImpl.h: Copied from Source/WebCore/storage/IDBFactoryBackendImpl.h.
1475         * Modules/indexeddb/IDBFactoryBackendInterface.cpp: Copied from Source/WebCore/storage/IDBFactoryBackendInterface.cpp.
1476         * Modules/indexeddb/IDBFactoryBackendInterface.h: Copied from Source/WebCore/storage/IDBFactoryBackendInterface.h.
1477         * Modules/indexeddb/IDBIndex.cpp: Copied from Source/WebCore/storage/IDBIndex.cpp.
1478         * Modules/indexeddb/IDBIndex.h: Copied from Source/WebCore/storage/IDBIndex.h.
1479         * Modules/indexeddb/IDBIndex.idl: Copied from Source/WebCore/storage/IDBIndex.idl.
1480         * Modules/indexeddb/IDBIndexBackendImpl.cpp: Copied from Source/WebCore/storage/IDBIndexBackendImpl.cpp.
1481         * Modules/indexeddb/IDBIndexBackendImpl.h: Copied from Source/WebCore/storage/IDBIndexBackendImpl.h.
1482         * Modules/indexeddb/IDBIndexBackendInterface.h: Copied from Source/WebCore/storage/IDBIndexBackendInterface.h.
1483         * Modules/indexeddb/IDBKey.cpp: Copied from Source/WebCore/storage/IDBKey.cpp.
1484         * Modules/indexeddb/IDBKey.h: Copied from Source/WebCore/storage/IDBKey.h.
1485         * Modules/indexeddb/IDBKey.idl: Copied from Source/WebCore/storage/IDBKey.idl.
1486         * Modules/indexeddb/IDBKeyPath.cpp: Copied from Source/WebCore/storage/IDBKeyPath.cpp.
1487         * Modules/indexeddb/IDBKeyPath.h: Copied from Source/WebCore/storage/IDBKeyPath.h.
1488         * Modules/indexeddb/IDBKeyPathBackendImpl.cpp: Copied from Source/WebCore/storage/IDBKeyPathBackendImpl.cpp.
1489         * Modules/indexeddb/IDBKeyPathBackendImpl.h: Copied from Source/WebCore/storage/IDBKeyPathBackendImpl.h.
1490         * Modules/indexeddb/IDBKeyRange.cpp: Copied from Source/WebCore/storage/IDBKeyRange.cpp.
1491         * Modules/indexeddb/IDBKeyRange.h: Copied from Source/WebCore/storage/IDBKeyRange.h.
1492         * Modules/indexeddb/IDBKeyRange.idl: Copied from Source/WebCore/storage/IDBKeyRange.idl.
1493         * Modules/indexeddb/IDBLevelDBBackingStore.cpp: Copied from Source/WebCore/storage/IDBLevelDBBackingStore.cpp.
1494         * Modules/indexeddb/IDBLevelDBBackingStore.h: Copied from Source/WebCore/storage/IDBLevelDBBackingStore.h.
1495         * Modules/indexeddb/IDBLevelDBCoding.cpp: Copied from Source/WebCore/storage/IDBLevelDBCoding.cpp.
1496         * Modules/indexeddb/IDBLevelDBCoding.h: Copied from Source/WebCore/storage/IDBLevelDBCoding.h.
1497         * Modules/indexeddb/IDBObjectStore.cpp: Copied from Source/WebCore/storage/IDBObjectStore.cpp.
1498         * Modules/indexeddb/IDBObjectStore.h: Copied from Source/WebCore/storage/IDBObjectStore.h.
1499         * Modules/indexeddb/IDBObjectStore.idl: Copied from Source/WebCore/storage/IDBObjectStore.idl.
1500         * Modules/indexeddb/IDBObjectStoreBackendImpl.cpp: Copied from Source/WebCore/storage/IDBObjectStoreBackendImpl.cpp.
1501         * Modules/indexeddb/IDBObjectStoreBackendImpl.h: Copied from Source/WebCore/storage/IDBObjectStoreBackendImpl.h.
1502         * Modules/indexeddb/IDBObjectStoreBackendInterface.h: Copied from Source/WebCore/storage/IDBObjectStoreBackendInterface.h.
1503         * Modules/indexeddb/IDBPendingTransactionMonitor.cpp: Copied from Source/WebCore/storage/IDBPendingTransactionMonitor.cpp.
1504         * Modules/indexeddb/IDBPendingTransactionMonitor.h: Copied from Source/WebCore/storage/IDBPendingTransactionMonitor.h.
1505         * Modules/indexeddb/IDBRequest.cpp: Copied from Source/WebCore/storage/IDBRequest.cpp.
1506         * Modules/indexeddb/IDBRequest.h: Copied from Source/WebCore/storage/IDBRequest.h.
1507         * Modules/indexeddb/IDBRequest.idl: Copied from Source/WebCore/storage/IDBRequest.idl.
1508         * Modules/indexeddb/IDBTracing.h: Copied from Source/WebCore/storage/IDBTracing.h.
1509         * Modules/indexeddb/IDBTransaction.cpp: Copied from Source/WebCore/storage/IDBTransaction.cpp.
1510         * Modules/indexeddb/IDBTransaction.h: Copied from Source/WebCore/storage/IDBTransaction.h.
1511         * Modules/indexeddb/IDBTransaction.idl: Copied from Source/WebCore/storage/IDBTransaction.idl.
1512         * Modules/indexeddb/IDBTransactionBackendImpl.cpp: Copied from Source/WebCore/storage/IDBTransactionBackendImpl.cpp.
1513         * Modules/indexeddb/IDBTransactionBackendImpl.h: Copied from Source/WebCore/storage/IDBTransactionBackendImpl.h.
1514         * Modules/indexeddb/IDBTransactionBackendInterface.h: Copied from Source/WebCore/storage/IDBTransactionBackendInterface.h.
1515         * Modules/indexeddb/IDBTransactionCallbacks.h: Copied from Source/WebCore/storage/IDBTransactionCallbacks.h.
1516         * Modules/indexeddb/IDBTransactionCoordinator.cpp: Copied from Source/WebCore/storage/IDBTransactionCoordinator.cpp.
1517         * Modules/indexeddb/IDBTransactionCoordinator.h: Copied from Source/WebCore/storage/IDBTransactionCoordinator.h.
1518         * Modules/indexeddb/IDBVersionChangeEvent.cpp: Copied from Source/WebCore/storage/IDBVersionChangeEvent.cpp.
1519         * Modules/indexeddb/IDBVersionChangeEvent.h: Copied from Source/WebCore/storage/IDBVersionChangeEvent.h.
1520         * Modules/indexeddb/IDBVersionChangeEvent.idl: Copied from Source/WebCore/storage/IDBVersionChangeEvent.idl.
1521         * Modules/indexeddb/IDBVersionChangeRequest.cpp: Copied from Source/WebCore/storage/IDBVersionChangeRequest.cpp.
1522         * Modules/indexeddb/IDBVersionChangeRequest.h: Copied from Source/WebCore/storage/IDBVersionChangeRequest.h.
1523         * Modules/indexeddb/IDBVersionChangeRequest.idl: Copied from Source/WebCore/storage/IDBVersionChangeRequest.idl.
1524         * Target.pri:
1525         * WebCore.gypi:
1526         * WebCore.vcproj/WebCore.vcproj:
1527         * WebCore.xcodeproj/project.pbxproj:
1528         * storage/IDBAny.cpp: Removed.
1529         * storage/IDBAny.h: Removed.
1530         * storage/IDBAny.idl: Removed.
1531         * storage/IDBBackingStore.h: Removed.
1532         * storage/IDBCallbacks.h: Removed.
1533         * storage/IDBCursor.cpp: Removed.
1534         * storage/IDBCursor.h: Removed.
1535         * storage/IDBCursor.idl: Removed.
1536         * storage/IDBCursorBackendImpl.cpp: Removed.
1537         * storage/IDBCursorBackendImpl.h: Removed.
1538         * storage/IDBCursorBackendInterface.h: Removed.
1539         * storage/IDBCursorWithValue.cpp: Removed.
1540         * storage/IDBCursorWithValue.h: Removed.
1541         * storage/IDBCursorWithValue.idl: Removed.
1542         * storage/IDBDatabase.cpp: Removed.
1543         * storage/IDBDatabase.h: Removed.
1544         * storage/IDBDatabase.idl: Removed.
1545         * storage/IDBDatabaseBackendImpl.cpp: Removed.
1546         * storage/IDBDatabaseBackendImpl.h: Removed.
1547         * storage/IDBDatabaseBackendInterface.h: Removed.
1548         * storage/IDBDatabaseCallbacks.h: Removed.
1549         * storage/IDBDatabaseCallbacksImpl.cpp: Removed.
1550         * storage/IDBDatabaseCallbacksImpl.h: Removed.
1551         * storage/IDBDatabaseError.h: Removed.
1552         * storage/IDBDatabaseError.idl: Removed.
1553         * storage/IDBDatabaseException.cpp: Removed.
1554         * storage/IDBDatabaseException.h: Removed.
1555         * storage/IDBDatabaseException.idl: Removed.
1556         * storage/IDBEventDispatcher.cpp: Removed.
1557         * storage/IDBEventDispatcher.h: Removed.
1558         * storage/IDBFactory.cpp: Removed.
1559         * storage/IDBFactory.h: Removed.
1560         * storage/IDBFactory.idl: Removed.
1561         * storage/IDBFactoryBackendImpl.cpp: Removed.
1562         * storage/IDBFactoryBackendImpl.h: Removed.
1563         * storage/IDBFactoryBackendInterface.cpp: Removed.
1564         * storage/IDBFactoryBackendInterface.h: Removed.
1565         * storage/IDBIndex.cpp: Removed.
1566         * storage/IDBIndex.h: Removed.
1567         * storage/IDBIndex.idl: Removed.
1568         * storage/IDBIndexBackendImpl.cpp: Removed.
1569         * storage/IDBIndexBackendImpl.h: Removed.
1570         * storage/IDBIndexBackendInterface.h: Removed.
1571         * storage/IDBKey.cpp: Removed.
1572         * storage/IDBKey.h: Removed.
1573         * storage/IDBKey.idl: Removed.
1574         * storage/IDBKeyPath.cpp: Removed.
1575         * storage/IDBKeyPath.h: Removed.
1576         * storage/IDBKeyPathBackendImpl.cpp: Removed.
1577         * storage/IDBKeyPathBackendImpl.h: Removed.
1578         * storage/IDBKeyRange.cpp: Removed.
1579         * storage/IDBKeyRange.h: Removed.
1580         * storage/IDBKeyRange.idl: Removed.
1581         * storage/IDBLevelDBBackingStore.cpp: Removed.
1582         * storage/IDBLevelDBBackingStore.h: Removed.
1583         * storage/IDBLevelDBCoding.cpp: Removed.
1584         * storage/IDBLevelDBCoding.h: Removed.
1585         * storage/IDBObjectStore.cpp: Removed.
1586         * storage/IDBObjectStore.h: Removed.
1587         * storage/IDBObjectStore.idl: Removed.
1588         * storage/IDBObjectStoreBackendImpl.cpp: Removed.
1589         * storage/IDBObjectStoreBackendImpl.h: Removed.
1590         * storage/IDBObjectStoreBackendInterface.h: Removed.
1591         * storage/IDBPendingTransactionMonitor.cpp: Removed.
1592         * storage/IDBPendingTransactionMonitor.h: Removed.
1593         * storage/IDBRequest.cpp: Removed.
1594         * storage/IDBRequest.h: Removed.
1595         * storage/IDBRequest.idl: Removed.
1596         * storage/IDBTracing.h: Removed.
1597         * storage/IDBTransaction.cpp: Removed.
1598         * storage/IDBTransaction.h: Removed.
1599         * storage/IDBTransaction.idl: Removed.
1600         * storage/IDBTransactionBackendImpl.cpp: Removed.
1601         * storage/IDBTransactionBackendImpl.h: Removed.
1602         * storage/IDBTransactionBackendInterface.h: Removed.
1603         * storage/IDBTransactionCallbacks.h: Removed.
1604         * storage/IDBTransactionCoordinator.cpp: Removed.
1605         * storage/IDBTransactionCoordinator.h: Removed.
1606         * storage/IDBVersionChangeEvent.cpp: Removed.
1607         * storage/IDBVersionChangeEvent.h: Removed.
1608         * storage/IDBVersionChangeEvent.idl: Removed.
1609         * storage/IDBVersionChangeRequest.cpp: Removed.
1610         * storage/IDBVersionChangeRequest.h: Removed.
1611         * storage/IDBVersionChangeRequest.idl: Removed.
1612
1613 2012-03-01  Luke Macpherson   <macpherson@chromium.org>
1614
1615         Handle CSSPropertyWebkitBorderFit in CSSStyleApplyProperty.
1616         https://bugs.webkit.org/show_bug.cgi?id=79998
1617
1618         Reviewed by Andreas Kling.
1619
1620         No new tests / refactoring only.
1621
1622         * css/CSSStyleApplyProperty.cpp:
1623         (WebCore::CSSStyleApplyProperty::CSSStyleApplyProperty):
1624         * css/CSSStyleSelector.cpp:
1625         (WebCore::CSSStyleSelector::collectMatchingRulesForList):
1626
1627 2012-03-01  Anders Carlsson  <andersca@apple.com>
1628
1629         Crash when doing repeated double-tap-to-zoom gesture on apple startpage
1630         https://bugs.webkit.org/show_bug.cgi?id=80081
1631         <rdar://problem/10966391>
1632
1633         Reviewed by Sam Weinig.
1634
1635         Setting the contents scale on the tile cache layer was creating a WebTileCacheLayer presentation layer copy with a null _tileCache.
1636
1637         Implement -[WebTileCacheLayer actionForKey:] and have it always return nil so we'll avoid implicit animations, and thus creating presentation layers.
1638
1639         * platform/graphics/ca/mac/WebTileCacheLayer.mm:
1640         (-[WebTileCacheLayer initWithLayer:]):
1641         Implement this and assert that it's never reached. We should never create presentation layers since we don't animate this layer.
1642
1643         (-[WebTileCacheLayer actionForKey:]):
1644         Implement this and always return nil.
1645
1646 2012-03-01  Hajime Morrita  <morrita@chromium.org>
1647
1648         Custom scrollbars do not support transparency
1649         https://bugs.webkit.org/show_bug.cgi?id=50547
1650
1651         Reviewed by James Robinson.
1652
1653         RenderScrollbar, which is used even for outermost frame when
1654         -webkit-scrollbar is specified, assumes that its background is
1655         painted by the enclosing container. But there is no such container
1656         for outermost frame. This causes visual glitches when the
1657         scrollbar has transparency.
1658
1659         This change clears background region for custom
1660         outermostscrollbars to erase such glitches.
1661
1662         Test: fast/frames/transparent-scrollbar.html
1663
1664         * page/FrameView.cpp:
1665         (WebCore::FrameView::paintScrollbar): The background is cleared here.
1666         (WebCore):
1667         * page/FrameView.h:
1668         (FrameView):
1669         * platform/ScrollView.cpp:
1670         (WebCore::ScrollView::paintScrollbar): Added to hook in FrameView
1671         (WebCore):
1672         (WebCore::ScrollView::paintScrollbars):
1673         * platform/ScrollView.h:
1674         (ScrollView):
1675
1676 2012-03-01  Kent Tamura  <tkent@chromium.org>
1677
1678         REGRESSION(r106388): Form state is restored to a wrong document.
1679         https://bugs.webkit.org/show_bug.cgi?id=79206
1680
1681         Reviewed by Brady Eidson.
1682
1683         In some cases, the URL of the current HistoryItem and the document
1684         URL are mismatched.
1685         A form state should be restored only if the document was loaded
1686         with a HistoryItem and the document is not loaded as a
1687         redirection.
1688
1689         Test: fast/loader/form-state-restore-with-locked-back-forward-list.html
1690
1691         * loader/FrameLoader.cpp:
1692         (WebCore::FrameLoader::checkCompleted): Clear m_requestedHistoryItem.
1693         (WebCore::FrameLoader::loadItem):
1694         Save the requested HistoryItem for didLoadWithLodItem().
1695         * loader/FrameLoader.h:
1696         (WebCore::FrameLoader::requestedHistoryItem):
1697         Added. Accessor for m_requestedHistoryItem.
1698         * loader/HistoryController.cpp:
1699         (WebCore::HistoryController::restoreDocumentState):
1700         Restore a form state only if the current document was loaded with
1701         FrameLoader::loadItem() and not redirection.
1702
1703 2012-03-01  Xingnan Wang  <xingnan.wang@intel.com>
1704
1705         SSE optimization for vsvesq and vmaxmgv
1706         https://bugs.webkit.org/show_bug.cgi?id=77950
1707
1708         Reviewed by Chris Rogers.
1709
1710         Achieved the performance of 3.7x on vsvesq and 4.1x on vmaxmgv.
1711
1712         * platform/audio/VectorMath.cpp:
1713         (WebCore::VectorMath::vsvesq):
1714         (WebCore::VectorMath::vmaxmgv):
1715
1716 2012-03-01  Luke Macpherson   <macpherson@chromium.org>
1717
1718         Handle CSSPropertyBoxSizing in CSSStyleApplyProperty.
1719         https://bugs.webkit.org/show_bug.cgi?id=80001
1720
1721         Reviewed by Andreas Kling.
1722
1723         No new tests / refactoring only.
1724
1725         * css/CSSStyleApplyProperty.cpp:
1726         (WebCore::CSSStyleApplyProperty::CSSStyleApplyProperty):
1727         * css/CSSStyleSelector.cpp:
1728         (WebCore::CSSStyleSelector::collectMatchingRulesForList):
1729
1730 2012-03-01  James Robinson  <jamesr@chromium.org>
1731
1732         [chromium] LayerChromium::contentChanged is redundant with setNeedsDisplay
1733         https://bugs.webkit.org/show_bug.cgi?id=79708
1734
1735         Reviewed by Adrienne Walker.
1736
1737         Some layer types need special handling when they receive damage. WebGL layers need to know if their texture is
1738         updated for clear-on-swap behavior and both WebGL and canvas 2d layers have rate limiting mechanisms tied to
1739         receiving invalidations. This mechanism was implemented by LayerChromium::contentChanged(), but this is
1740         redundant with setNeedsDisplay().
1741
1742         Covered by existing tests.
1743
1744         * platform/graphics/chromium/Canvas2DLayerChromium.cpp:
1745         (WebCore::Canvas2DLayerChromium::setNeedsDisplay):
1746         * platform/graphics/chromium/Canvas2DLayerChromium.h:
1747         (Canvas2DLayerChromium):
1748         * platform/graphics/chromium/GraphicsLayerChromium.cpp:
1749         (WebCore::GraphicsLayerChromium::setContentsNeedsDisplay):
1750         * platform/graphics/chromium/LayerChromium.cpp:
1751         (WebCore::LayerChromium::setNeedsDisplay):
1752         * platform/graphics/chromium/LayerChromium.h:
1753         (LayerChromium):
1754         * platform/graphics/chromium/VideoLayerChromium.cpp:
1755         (WebCore::VideoLayerChromium::setNeedsDisplay):
1756         * platform/graphics/chromium/VideoLayerChromium.h:
1757         (VideoLayerChromium):
1758         * platform/graphics/chromium/WebGLLayerChromium.cpp:
1759         (WebCore::WebGLLayerChromium::setNeedsDisplay):
1760         * platform/graphics/chromium/WebGLLayerChromium.h:
1761         (WebGLLayerChromium):
1762
1763 2012-03-01  James Robinson  <jamesr@chromium.org>
1764
1765         [chromium] Rename LayerChromium::name to debugName to be more consistent with other debug properties, make threadsafe
1766         https://bugs.webkit.org/show_bug.cgi?id=79723
1767
1768         Reviewed by Adrienne Walker.
1769
1770         * platform/graphics/chromium/GraphicsLayerChromium.cpp:
1771         (WebCore::GraphicsLayerChromium::updateNames):
1772         * platform/graphics/chromium/LayerChromium.cpp:
1773         (WebCore::LayerChromium::pushPropertiesTo):
1774         (WebCore::LayerChromium::setDebugName):
1775         (WebCore):
1776         * platform/graphics/chromium/LayerChromium.h:
1777         (LayerChromium):
1778         * platform/graphics/chromium/cc/CCLayerImpl.cpp:
1779         (WebCore::CCLayerImpl::dumpLayer):
1780         * platform/graphics/chromium/cc/CCLayerImpl.h:
1781         (CCLayerImpl):
1782         (WebCore::CCLayerImpl::setDebugName):
1783         (WebCore::CCLayerImpl::debugName):
1784         * platform/graphics/chromium/cc/CCRenderSurface.cpp:
1785         (WebCore::CCRenderSurface::name):
1786
1787 2012-03-01  Adam Barth  <abarth@webkit.org>
1788
1789         Remove last ENABLED(INDEXED_DATABASE) ifdef from WebCore proper
1790         https://bugs.webkit.org/show_bug.cgi?id=80061
1791
1792         Reviewed by Dimitri Glazkov.
1793
1794         This patch removes the last ENABLED(INDEXED_DATABASE) ifdef from
1795         WebCore proper by moving the backend factory out of PageGroup and into
1796         a supplement for PageGroup.  After this patch, we're ready to move the
1797         IDB code into Modules.
1798
1799         * Modules/indexeddb/DOMWindowIndexedDatabase.cpp:
1800         (WebCore::DOMWindowIndexedDatabase::webkitIndexedDB):
1801         * WebCore.gypi:
1802         * inspector/InspectorIndexedDBAgent.cpp:
1803         (WebCore::assertIDBFactory):
1804         * page/PageGroup.cpp:
1805         (WebCore):
1806         * page/PageGroup.h:
1807         (PageGroup):
1808
1809 2012-03-01  Dale Curtis  <dalecurtis@chromium.org>
1810
1811         Remove deprecated FFmpeg build directories.
1812         https://bugs.webkit.org/show_bug.cgi?id=79282
1813
1814         We've switched the layout of the FFmpeg repo in Chrome and these paths
1815         are no longer needed or valid.
1816
1817         Reviewed by Dirk Pranke.
1818
1819         No new tests. It either compiles or not.
1820
1821         * WebCore.gyp/WebCore.gyp:
1822
1823 2012-03-01  Xingnan Wang  <xingnan.wang@intel.com>
1824
1825         Enable IPP for Biquad filter
1826         https://bugs.webkit.org/show_bug.cgi?id=77509
1827
1828         Reviewed by Chris Rogers.
1829
1830         Use IIR filter in IPP and improve ~27% performance in linux.
1831         Changes are covered by current tests.
1832
1833         * platform/audio/Biquad.cpp:
1834         (WebCore::Biquad::Biquad):
1835         (WebCore::Biquad::~Biquad):
1836         (WebCore):
1837         (WebCore::Biquad::process):
1838         (WebCore::Biquad::reset):
1839         (WebCore::Biquad::setLowpassParams):
1840         (WebCore::Biquad::setHighpassParams):
1841         (WebCore::Biquad::setNormalizedCoefficients):
1842         (WebCore::Biquad::setZeroPolePairs):
1843         * platform/audio/Biquad.h:
1844         (Biquad):
1845
1846 2012-03-01  Peter Kotwicz  <pkotwicz@google.com>
1847
1848         Decouple scrollbar painting from Scrollbar object
1849         https://bugs.webkit.org/show_bug.cgi?id=78028
1850
1851         Reviewed by James Robinson.
1852
1853         Added interface ScrollbarThemeClient which Scrollbar inherits from.
1854         This allows painting via ScrollbarTheme with a proxy to a Scrollbar
1855         object.
1856
1857         * GNUmakefile.list.am:
1858         * Target.pri:
1859         * WebCore.gypi:
1860         * WebCore.vcproj/WebCore.vcproj:
1861         * WebCore.xcodeproj/project.pbxproj:
1862         * platform/Scrollbar.cpp:
1863         (WebCore::Scrollbar::scrollbarOverlayStyle):
1864         (WebCore):
1865         (WebCore::Scrollbar::getTickmarks):
1866         (WebCore::Scrollbar::isScrollableAreaActive):
1867         (WebCore::Scrollbar::isScrollViewScrollbar):
1868         (WebCore::Scrollbar::setFrameRect):
1869         * platform/Scrollbar.h:
1870         (Scrollbar):
1871         (WebCore::Scrollbar::x):
1872         (WebCore::Scrollbar::y):
1873         (WebCore::Scrollbar::width):
1874         (WebCore::Scrollbar::height):
1875         (WebCore::Scrollbar::size):
1876         (WebCore::Scrollbar::location):
1877         (WebCore::Scrollbar::parent):
1878         (WebCore::Scrollbar::root):
1879         (WebCore::Scrollbar::frameRect):
1880         (WebCore::Scrollbar::invalidate):
1881         (WebCore::Scrollbar::convertFromContainingWindow):
1882         (WebCore::Scrollbar::isCustomScrollbar):
1883         (WebCore::Scrollbar::orientation):
1884         (WebCore::Scrollbar::value):
1885         (WebCore::Scrollbar::currentPos):
1886         (WebCore::Scrollbar::visibleSize):
1887         (WebCore::Scrollbar::totalSize):
1888         (WebCore::Scrollbar::maximum):
1889         (WebCore::Scrollbar::controlSize):
1890         (WebCore::Scrollbar::lineStep):
1891         (WebCore::Scrollbar::pageStep):
1892         (WebCore::Scrollbar::pressedPart):
1893         (WebCore::Scrollbar::hoveredPart):
1894         (WebCore::Scrollbar::styleChanged):
1895         (WebCore::Scrollbar::enabled):
1896         * platform/ScrollbarTheme.h:
1897         (WebCore):
1898         (WebCore::ScrollbarTheme::updateEnabledState):
1899         (WebCore::ScrollbarTheme::paint):
1900         (WebCore::ScrollbarTheme::hitTest):
1901         (WebCore::ScrollbarTheme::updateScrollbarOverlayStyle):
1902         (WebCore::ScrollbarTheme::invalidateParts):
1903         (WebCore::ScrollbarTheme::invalidatePart):
1904         (WebCore::ScrollbarTheme::shouldCenterOnThumb):
1905         (WebCore::ScrollbarTheme::shouldSnapBackToDragOrigin):
1906         (WebCore::ScrollbarTheme::shouldDragDocumentInsteadOfThumb):
1907         (WebCore::ScrollbarTheme::thumbPosition):
1908         (WebCore::ScrollbarTheme::thumbLength):
1909         (WebCore::ScrollbarTheme::trackPosition):
1910         (WebCore::ScrollbarTheme::trackLength):
1911         (WebCore::ScrollbarTheme::registerScrollbar):
1912         (WebCore::ScrollbarTheme::unregisterScrollbar):
1913         * platform/ScrollbarThemeClient.h: Added.
1914         (WebCore):
1915         (ScrollbarThemeClient):
1916         (WebCore::ScrollbarThemeClient::~ScrollbarThemeClient):
1917         * platform/ScrollbarThemeComposite.cpp:
1918         (WebCore::ScrollbarThemeComposite::paint):
1919         (WebCore::ScrollbarThemeComposite::hitTest):
1920         (WebCore::ScrollbarThemeComposite::invalidatePart):
1921         (WebCore::ScrollbarThemeComposite::splitTrack):
1922         (WebCore::usedTotalSize):
1923         (WebCore::ScrollbarThemeComposite::thumbPosition):
1924         (WebCore::ScrollbarThemeComposite::thumbLength):
1925         (WebCore::ScrollbarThemeComposite::minimumThumbLength):
1926         (WebCore::ScrollbarThemeComposite::trackPosition):
1927         (WebCore::ScrollbarThemeComposite::trackLength):
1928         * platform/ScrollbarThemeComposite.h:
1929         (ScrollbarThemeComposite):
1930         (WebCore::ScrollbarThemeComposite::paintScrollbarBackground):
1931         (WebCore::ScrollbarThemeComposite::paintTrackBackground):
1932         (WebCore::ScrollbarThemeComposite::paintTrackPiece):
1933         (WebCore::ScrollbarThemeComposite::paintButton):
1934         (WebCore::ScrollbarThemeComposite::paintThumb):
1935         (WebCore::ScrollbarThemeComposite::paintTickmarks):
1936         (WebCore::ScrollbarThemeComposite::constrainTrackRectToTrackPieces):
1937         * platform/chromium/ScrollbarThemeChromium.cpp:
1938         (WebCore::ScrollbarThemeChromium::hasThumb):
1939         (WebCore::ScrollbarThemeChromium::backButtonRect):
1940         (WebCore::ScrollbarThemeChromium::forwardButtonRect):
1941         (WebCore::ScrollbarThemeChromium::trackRect):
1942         (WebCore::ScrollbarThemeChromium::paintTrackBackground):
1943         (WebCore::ScrollbarThemeChromium::paintTickmarks):
1944         * platform/chromium/ScrollbarThemeChromium.h:
1945         (WebCore::ScrollbarThemeChromium::hasButtons):
1946         (ScrollbarThemeChromium):
1947         * platform/chromium/ScrollbarThemeChromiumAndroid.cpp:
1948         (WebCore::ScrollbarThemeChromiumAndroid::paintScrollbarBackground):
1949         (WebCore::ScrollbarThemeChromiumAndroid::shouldCenterOnThumb):
1950         (WebCore::ScrollbarThemeChromiumAndroid::buttonSize):
1951         (WebCore::ScrollbarThemeChromiumAndroid::minimumThumbLength):
1952         * platform/chromium/ScrollbarThemeChromiumAndroid.h:
1953         (ScrollbarThemeChromiumAndroid):
1954         * platform/chromium/ScrollbarThemeChromiumLinux.cpp:
1955         (WebCore::ScrollbarThemeChromiumLinux::paintTrackPiece):
1956         (WebCore::ScrollbarThemeChromiumLinux::paintButton):
1957         (WebCore::ScrollbarThemeChromiumLinux::paintThumb):
1958         (WebCore::ScrollbarThemeChromiumLinux::shouldCenterOnThumb):
1959         (WebCore::ScrollbarThemeChromiumLinux::buttonSize):
1960         (WebCore::ScrollbarThemeChromiumLinux::minimumThumbLength):
1961         * platform/chromium/ScrollbarThemeChromiumLinux.h:
1962         (ScrollbarThemeChromiumLinux):
1963         * platform/chromium/ScrollbarThemeChromiumMac.h:
1964         (ScrollbarThemeChromiumMac):
1965         * platform/chromium/ScrollbarThemeChromiumMac.mm:
1966         (WebCore::scrollbarStateToThemeState):
1967         (WebCore::ScrollbarThemeChromiumMac::paint):
1968         (WebCore::ScrollbarThemeChromiumMac::paintGivenTickmarks):
1969         * platform/chromium/ScrollbarThemeChromiumWin.cpp:
1970         (WebCore::ScrollbarThemeChromiumWin::shouldSnapBackToDragOrigin):
1971         (WebCore::ScrollbarThemeChromiumWin::paintTrackPiece):
1972         (WebCore::ScrollbarThemeChromiumWin::paintButton):
1973         (WebCore::ScrollbarThemeChromiumWin::paintThumb):
1974         (WebCore::ScrollbarThemeChromiumWin::getThemeState):
1975         (WebCore::ScrollbarThemeChromiumWin::getThemeArrowState):
1976         (WebCore::ScrollbarThemeChromiumWin::getClassicThemeState):
1977         (WebCore::ScrollbarThemeChromiumWin::shouldCenterOnThumb):
1978         (WebCore::ScrollbarThemeChromiumWin::buttonSize):
1979         * platform/chromium/ScrollbarThemeChromiumWin.h:
1980         (ScrollbarThemeChromiumWin):
1981         * platform/efl/ScrollbarThemeEfl.cpp:
1982         (WebCore::ScrollbarThemeEfl::registerScrollbar):
1983         (WebCore::ScrollbarThemeEfl::unregisterScrollbar):
1984         * platform/efl/ScrollbarThemeEfl.h:
1985         (ScrollbarThemeEfl):
1986         * platform/gtk/ScrollbarThemeGtk.cpp:
1987         (WebCore):
1988         (WebCore::ScrollbarThemeGtk::registerScrollbar):
1989         (WebCore::ScrollbarThemeGtk::unregisterScrollbar):
1990         (WebCore::ScrollbarThemeGtk::updateScrollbarsFrameThickness):
1991         (WebCore::ScrollbarThemeGtk::hasThumb):
1992         (WebCore::ScrollbarThemeGtk::backButtonRect):
1993         (WebCore::ScrollbarThemeGtk::forwardButtonRect):
1994         (WebCore::ScrollbarThemeGtk::trackRect):
1995         (WebCore::ScrollbarThemeGtk::thumbRect):
1996         (WebCore::ScrollbarThemeGtk::paint):
1997         (WebCore::ScrollbarThemeGtk::shouldCenterOnThumb):
1998         (WebCore::ScrollbarThemeGtk::buttonSize):
1999         (WebCore::ScrollbarThemeGtk::minimumThumbLength):
2000         * platform/gtk/ScrollbarThemeGtk.h:
2001         (WebCore::ScrollbarThemeGtk::hasButtons):
2002         (ScrollbarThemeGtk):
2003         * platform/gtk/ScrollbarThemeGtk2.cpp:
2004         (WebCore::getWidgetForScrollbar):
2005         (WebCore::ScrollbarThemeGtk::paintTrackBackground):
2006         (WebCore::ScrollbarThemeGtk::paintScrollbarBackground):
2007         (WebCore::ScrollbarThemeGtk::paintThumb):
2008         (WebCore::ScrollbarThemeGtk::paintButton):
2009         * platform/gtk/ScrollbarThemeGtk3.cpp:
2010         (WebCore::ScrollbarThemeGtk::paintTrackBackground):
2011         (WebCore::ScrollbarThemeGtk::paintScrollbarBackground):
2012         (WebCore::ScrollbarThemeGtk::paintThumb):
2013         (WebCore::ScrollbarThemeGtk::paintButton):
2014         * platform/mac/ScrollbarThemeMac.h:
2015         (ScrollbarThemeMac):
2016         * platform/mac/ScrollbarThemeMac.mm:
2017         (WebCore):
2018         (WebCore::ScrollbarThemeMac::registerScrollbar):
2019         (WebCore::ScrollbarThemeMac::unregisterScrollbar):
2020         (WebCore::ScrollbarThemeMac::setNewPainterForScrollbar):
2021         (WebCore::ScrollbarThemeMac::painterForScrollbar):
2022         (WebCore::ScrollbarThemeMac::updateScrollbarOverlayStyle):
2023         (WebCore::ScrollbarThemeMac::hasButtons):
2024         (WebCore::ScrollbarThemeMac::hasThumb):
2025         (WebCore::ScrollbarThemeMac::backButtonRect):
2026         (WebCore::ScrollbarThemeMac::forwardButtonRect):
2027         (WebCore::ScrollbarThemeMac::trackRect):
2028         (WebCore::ScrollbarThemeMac::minimumThumbLength):
2029         (WebCore::ScrollbarThemeMac::shouldCenterOnThumb):
2030         (WebCore::ScrollbarThemeMac::shouldDragDocumentInsteadOfThumb):
2031         (WebCore::ScrollbarThemeMac::updateEnabledState):
2032         (WebCore::ScrollbarThemeMac::paint):
2033         * platform/mock/ScrollbarThemeMock.cpp:
2034         (WebCore::ScrollbarThemeMock::trackRect):
2035         (WebCore::ScrollbarThemeMock::paintTrackBackground):
2036         (WebCore::ScrollbarThemeMock::paintThumb):
2037         * platform/mock/ScrollbarThemeMock.h:
2038         (WebCore::ScrollbarThemeMock::hasButtons):
2039         (WebCore::ScrollbarThemeMock::hasThumb):
2040         (WebCore::ScrollbarThemeMock::backButtonRect):
2041         (WebCore::ScrollbarThemeMock::forwardButtonRect):
2042         (ScrollbarThemeMock):
2043         * platform/qt/ScrollbarThemeQt.cpp:
2044         (WebCore::styleOptionSlider):
2045         (WebCore::ScrollbarThemeQt::paint):
2046         (WebCore::ScrollbarThemeQt::hitTest):
2047         (WebCore::ScrollbarThemeQt::shouldCenterOnThumb):
2048         (WebCore::ScrollbarThemeQt::invalidatePart):
2049         (WebCore::ScrollbarThemeQt::thumbPosition):
2050         (WebCore::ScrollbarThemeQt::thumbLength):
2051         (WebCore::ScrollbarThemeQt::trackPosition):
2052         (WebCore::ScrollbarThemeQt::trackLength):
2053         * platform/qt/ScrollbarThemeQt.h:
2054         (ScrollbarThemeQt):
2055         * platform/win/ScrollbarThemeSafari.cpp:
2056         (WebCore::ScrollbarThemeSafari::hasButtons):
2057         (WebCore::ScrollbarThemeSafari::hasThumb):
2058         (WebCore::ScrollbarThemeSafari::backButtonRect):
2059         (WebCore::ScrollbarThemeSafari::forwardButtonRect):
2060         (WebCore::ScrollbarThemeSafari::trackRect):
2061         (WebCore::ScrollbarThemeSafari::minimumThumbLength):
2062         (WebCore::ScrollbarThemeSafari::shouldCenterOnThumb):
2063         (WebCore::ScrollbarThemeSafari::paintTrackBackground):
2064         (WebCore::ScrollbarThemeSafari::paintButton):
2065         (WebCore::ScrollbarThemeSafari::paintThumb):
2066         * platform/win/ScrollbarThemeSafari.h:
2067         (ScrollbarThemeSafari):
2068         * platform/win/ScrollbarThemeWin.cpp:
2069         (WebCore::ScrollbarThemeWin::hasThumb):
2070         (WebCore::ScrollbarThemeWin::backButtonRect):
2071         (WebCore::ScrollbarThemeWin::forwardButtonRect):
2072         (WebCore::ScrollbarThemeWin::trackRect):
2073         (WebCore::ScrollbarThemeWin::shouldCenterOnThumb):
2074         (WebCore::ScrollbarThemeWin::shouldSnapBackToDragOrigin):
2075         (WebCore::ScrollbarThemeWin::paintTrackBackground):
2076         (WebCore::ScrollbarThemeWin::paintTrackPiece):
2077         (WebCore::ScrollbarThemeWin::paintButton):
2078         (WebCore::paintGripper):
2079         (WebCore::ScrollbarThemeWin::paintThumb):
2080         * platform/win/ScrollbarThemeWin.h:
2081         (WebCore::ScrollbarThemeWin::hasButtons):
2082         (ScrollbarThemeWin):
2083         * platform/wx/ScrollbarThemeWx.cpp:
2084         (WebCore::ScrollbarThemeWx::hasThumb):
2085         (WebCore::ScrollbarThemeWx::minimumThumbLength):
2086         (WebCore::ScrollbarThemeWx::buttonSize):
2087         (WebCore::ScrollbarThemeWx::splitTrack):
2088         (WebCore::ScrollbarThemeWx::backButtonRect):
2089         (WebCore::ScrollbarThemeWx::forwardButtonRect):
2090         (WebCore::ScrollbarThemeWx::trackRect):
2091         (WebCore::ScrollbarThemeWx::paint):
2092         * platform/wx/ScrollbarThemeWx.h:
2093         (ScrollbarThemeWx):
2094         (WebCore::ScrollbarThemeWx::hasButtons):
2095         * rendering/RenderScrollbar.h:
2096         (WebCore::toRenderScrollbar):
2097         * rendering/RenderScrollbarTheme.cpp:
2098         (WebCore::RenderScrollbarTheme::buttonSizesAlongTrackAxis):
2099         (WebCore::RenderScrollbarTheme::hasButtons):
2100         (WebCore::RenderScrollbarTheme::hasThumb):
2101         (WebCore::RenderScrollbarTheme::minimumThumbLength):
2102         (WebCore::RenderScrollbarTheme::backButtonRect):
2103         (WebCore::RenderScrollbarTheme::forwardButtonRect):
2104         (WebCore::RenderScrollbarTheme::trackRect):
2105         (WebCore::RenderScrollbarTheme::constrainTrackRectToTrackPieces):
2106         (WebCore::RenderScrollbarTheme::paintScrollbarBackground):
2107         (WebCore::RenderScrollbarTheme::paintTrackBackground):
2108         (WebCore::RenderScrollbarTheme::paintTrackPiece):
2109         (WebCore::RenderScrollbarTheme::paintButton):
2110         (WebCore::RenderScrollbarTheme::paintThumb):
2111         * rendering/RenderScrollbarTheme.h:
2112         (WebCore::RenderScrollbarTheme::shouldCenterOnThumb):
2113         (WebCore::RenderScrollbarTheme::registerScrollbar):
2114         (WebCore::RenderScrollbarTheme::unregisterScrollbar):
2115         (RenderScrollbarTheme):
2116
2117 2012-03-01  Luke Macpherson   <macpherson@chromium.org>
2118
2119         Implement CSSPropertyImageRendering in CSSStyleApplyProperty.
2120         https://bugs.webkit.org/show_bug.cgi?id=79855
2121
2122         Reviewed by Eric Seidel.
2123
2124         No new tests / refactoring only.
2125
2126         * css/CSSStyleApplyProperty.cpp:
2127         (WebCore::CSSStyleApplyProperty::CSSStyleApplyProperty):
2128         * css/CSSStyleSelector.cpp:
2129         (WebCore::CSSStyleSelector::collectMatchingRulesForList):
2130
2131 2012-03-01  Alok Priyadarshi  <alokp@chromium.org>
2132
2133         [chromium] Partial texture updates not happening with accelerated painting path
2134         https://bugs.webkit.org/show_bug.cgi?id=80040
2135
2136         Reviewed by James Robinson.
2137
2138         The order of y-flip and clip-rect was opposite of what it should be.
2139         The clip rect was not properly transformed to account for y-flip and hence clipping everything.  
2140
2141         * platform/graphics/chromium/FrameBufferSkPictureCanvasLayerTextureUpdater.cpp:
2142         (WebCore::FrameBufferSkPictureCanvasLayerTextureUpdater::updateTextureRect):
2143
2144 2012-03-01  Alexey Proskuryakov  <ap@apple.com>
2145
2146         FileReader read speed is way too low
2147         https://bugs.webkit.org/show_bug.cgi?id=77272
2148
2149         Reviewed by Oliver Hunt.
2150
2151         This brings performance to reasonable range, but certainly doesn't exhaust improvement opportunities.
2152
2153         * platform/network/BlobResourceHandle.cpp: Use a more appropriate block size. Performing
2154         cross-thread messaging for every 1024 bytes is slow.
2155
2156 2012-03-01  Dan Bernstein  <mitz@apple.com>
2157
2158         ScrollView::setFrameRect() calls contentsResized() even when the frame size is unchanged
2159         https://bugs.webkit.org/show_bug.cgi?id=80047
2160
2161         Reviewed by Anders Carlsson.
2162
2163         * platform/ScrollView.cpp:
2164         (WebCore::ScrollView::setFrameRect): Added a check that the new frame size differs from the
2165         old one before calling contentsResized().
2166
2167 2012-03-01  James Robinson  <jamesr@chromium.org>
2168
2169         [chromium] Move pageScaleDirty logic from LayerChromium to GraphicsLayerChromium
2170         https://bugs.webkit.org/show_bug.cgi?id=79714
2171
2172         Reviewed by Adrienne Walker.
2173
2174         When the page scale changes on a composited layer we need to invalidate all of the contents on the layer in
2175         order to repaint them at the new scale. The sequence of calls we get make this a bit tricky, since we first
2176         receive a page scale changed notification and then receive the new layer bounds. The solution is to defer the
2177         invalidation until we have the new layer bounds, which landed in r99774.
2178
2179         This moves that logic from LayerChromium into GraphicsLayerChromium since IMO this is pretty particular to the
2180         way WebCore is passing us invalidations and not something fundamental to the compositor.
2181
2182         * platform/graphics/chromium/GraphicsLayerChromium.cpp:
2183         (WebCore::GraphicsLayerChromium::GraphicsLayerChromium):
2184         (WebCore::GraphicsLayerChromium::setSize):
2185         (WebCore::GraphicsLayerChromium::deviceOrPageScaleFactorChanged):
2186         * platform/graphics/chromium/GraphicsLayerChromium.h:
2187         * platform/graphics/chromium/LayerChromium.cpp:
2188         (WebCore::LayerChromium::LayerChromium):
2189         (WebCore::LayerChromium::setBounds):
2190         * platform/graphics/chromium/LayerChromium.h:
2191         (LayerChromium):
2192
2193 2012-03-01  Joe Thomas  <joethomas@motorola.com>
2194
2195         :empty still applies to elements made non-empty via page dynamics.
2196         https://bugs.webkit.org/show_bug.cgi?id=79734
2197
2198         Check for :empty style change should be made even if the RenderStyle for the element is NULL
2199         as changes to the element's children can trigger a change in :empty state of the parent element.
2200
2201         Reviewed by Antti Koivisto.
2202
2203         Test: fast/selectors/empty-element-made-non-empty.html
2204
2205         * dom/Element.cpp:
2206         (WebCore::checkForSiblingStyleChanges):
2207
2208 2012-02-29  Nat Duca  <nduca@chromium.org>
2209
2210         [chromium] Move context lost control code from CCSingleThreadProxy to CCLayerTreeHost
2211         https://bugs.webkit.org/show_bug.cgi?id=79964
2212
2213         Reviewed by James Robinson.
2214
2215         * platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
2216         (WebCore::CCLayerTreeHost::CCLayerTreeHost):
2217         (WebCore::CCLayerTreeHost::initializeLayerRenderer):
2218         (WebCore::CCLayerTreeHost::recreateContext):
2219         (WebCore::CCLayerTreeHost::createContext):
2220         (WebCore::CCLayerTreeHost::didLoseContext):
2221         (WebCore::CCLayerTreeHost::compositeAndReadback):
2222         (WebCore::CCLayerTreeHost::loseContext):
2223         (WebCore::CCLayerTreeHost::updateLayers):
2224         * platform/graphics/chromium/cc/CCLayerTreeHost.h:
2225         (CCLayerTreeHostClient):
2226         (CCLayerTreeHost):
2227         * platform/graphics/chromium/cc/CCProxy.h:
2228         (CCProxy):
2229         * platform/graphics/chromium/cc/CCSingleThreadProxy.cpp:
2230         (WebCore::CCSingleThreadProxy::CCSingleThreadProxy):
2231         (WebCore::CCSingleThreadProxy::compositeAndReadback):
2232         (WebCore::CCSingleThreadProxy::initializeContext):
2233         (WebCore::CCSingleThreadProxy::recreateContext):
2234         (WebCore):
2235         (WebCore::CCSingleThreadProxy::loseContext):
2236         (WebCore::CCSingleThreadProxy::compositeImmediately):
2237         (WebCore::CCSingleThreadProxy::doComposite):
2238         * platform/graphics/chromium/cc/CCSingleThreadProxy.h:
2239         (CCSingleThreadProxy):
2240         * platform/graphics/chromium/cc/CCThreadProxy.cpp:
2241         (WebCore::CCThreadProxy::initializeContext):
2242         (WebCore::CCThreadProxy::recreateContext):
2243         (WebCore):
2244         (WebCore::CCThreadProxy::loseContext):
2245         * platform/graphics/chromium/cc/CCThreadProxy.h:
2246         (CCThreadProxy):
2247
2248 2012-03-01  Abhishek Arya  <inferno@chromium.org>
2249
2250         Prevent layout root to remain set on renderers getting destroyed.
2251         https://bugs.webkit.org/show_bug.cgi?id=79953
2252
2253         Reviewed by Eric Seidel.
2254
2255         Implement Julien Chaffraix's idea.
2256
2257         * page/FrameView.h:
2258         (WebCore::FrameView::clearLayoutRoot): helper to clear layout root.
2259         * rendering/RenderObject.cpp:
2260         (WebCore::clearLayoutRootIfNeeded): if we know we are going
2261         away and we are the view's layout root, then we need to reset the layout
2262         root to prevent being used.
2263         (WebCore):
2264         (WebCore::RenderObject::willBeDestroyed): call clearLayoutRootIfNeeded at end.
2265
2266 2012-03-01  Kangil Han  <kangil.han@samsung.com>
2267
2268         [DRT] Remove all PlainTextController usages in existing tests by adding internal API
2269         https://bugs.webkit.org/show_bug.cgi?id=78570
2270
2271         Reviewed by Hajime Morita.
2272
2273         This patch will remove all PlainTextController usages
2274         in existing DRT tests by adding internal API to WebCore/testing/Internals
2275
2276         Changed editing/text-iterator/script-tests/basic-iteration.js to use internals.rangeAsText
2277
2278         * testing/Internals.cpp:
2279         (WebCore::Internals::rangeAsText):
2280         (WebCore):
2281         * testing/Internals.h:
2282         (Internals):
2283         * testing/Internals.idl:
2284
2285 2012-03-01  Adam Barth  <abarth@webkit.org>
2286
2287         DOMWindow shouldn't have any INDEXED_DATABASE ifdefs
2288         https://bugs.webkit.org/show_bug.cgi?id=80013
2289
2290         Reviewed by Kentaro Hara.
2291
2292         Before this patch, DOMWindow still knew about IDB because of the
2293         database factory.  This patch moves the factory to
2294         DOMWindowIndexedDatabase.
2295
2296         * Modules/indexeddb/DOMWindowIndexedDatabase.cpp:
2297         (WebCore::DOMWindowIndexedDatabase::DOMWindowIndexedDatabase):
2298         (WebCore::DOMWindowIndexedDatabase::from):
2299         (WebCore):
2300         (WebCore::DOMWindowIndexedDatabase::disconnectFrame):
2301         (WebCore::DOMWindowIndexedDatabase::webkitIndexedDB):
2302         * Modules/indexeddb/DOMWindowIndexedDatabase.h:
2303         (DOMWindowIndexedDatabase):
2304         * page/DOMWindow.cpp:
2305         (WebCore::DOMWindow::~DOMWindow):
2306         (WebCore::DOMWindow::clear):
2307         (WebCore):
2308         * page/DOMWindow.h:
2309         (DOMWindow):
2310
2311 2012-03-01  Anders Carlsson  <andersca@apple.com>
2312
2313         Glitchy scrolling on pages where the scroll layer needs to be updated on the main thread
2314         https://bugs.webkit.org/show_bug.cgi?id=80038
2315         <rdar://problem/10933831>
2316
2317         Reviewed by Simon Fraser.
2318
2319         When we need to update the scroll layer position on the main thread, we need to cache the
2320         scroll position we sent to the main thread and assume that that's the correct scroll position.
2321
2322         * page/scrolling/mac/ScrollingTreeNodeMac.h:
2323         (ScrollingTreeNodeMac):
2324         * page/scrolling/mac/ScrollingTreeNodeMac.mm:
2325         (WebCore::ScrollingTreeNodeMac::update):
2326         (WebCore::ScrollingTreeNodeMac::setScrollPosition):
2327         (WebCore::ScrollingTreeNodeMac::scrollPosition):
2328
2329 2012-03-01  Julien Chaffraix  <jchaffraix@webkit.org>
2330
2331         Unreviewed, rolling out r109367.
2332         http://trac.webkit.org/changeset/109367
2333         https://bugs.webkit.org/show_bug.cgi?id=75568
2334
2335         Some tests started to fail in a non obvious way.
2336
2337         * rendering/RenderBlock.cpp:
2338         (WebCore::RenderBlock::updateScrollInfoAfterLayout):
2339         (WebCore::RenderBlock::layoutBlock):
2340         (WebCore::RenderBlock::paint):
2341         (WebCore::RenderBlock::isPointInOverflowControl):
2342         * rendering/RenderBlock.h:
2343         (RenderBlock):
2344         * rendering/RenderBox.cpp:
2345         (WebCore::RenderBox::willBeDestroyed):
2346         (WebCore::RenderBox::styleDidChange):
2347         (WebCore::RenderBox::scrollWidth):
2348         (WebCore::RenderBox::scrollHeight):
2349         (WebCore::RenderBox::scrollLeft):
2350         (WebCore::RenderBox::scrollTop):
2351         (WebCore::RenderBox::setScrollLeft):
2352         (WebCore::RenderBox::setScrollTop):
2353         (WebCore::RenderBox::includeVerticalScrollbarSize):
2354         (WebCore::RenderBox::includeHorizontalScrollbarSize):
2355         (WebCore::RenderBox::scrolledContentOffset):
2356         (WebCore::RenderBox::cachedSizeForOverflowClip):
2357         (WebCore::RenderBox::pushContentsClip):
2358         (WebCore::RenderBox::popContentsClip):
2359         (WebCore::RenderBox::addLayoutOverflow):
2360         * rendering/RenderBox.h:
2361         (RenderBox):
2362         (WebCore):
2363         * rendering/RenderBoxModelObject.cpp:
2364         (WebCore):
2365         (WebCore::RenderBoxModelObject::styleDidChange):
2366         * rendering/RenderBoxModelObject.h:
2367         (WebCore::RenderBoxModelObject::requiresLayer):
2368         (RenderBoxModelObject):
2369         * rendering/RenderDeprecatedFlexibleBox.cpp:
2370         (WebCore::RenderDeprecatedFlexibleBox::layoutBlock):
2371         * rendering/RenderTableRow.h:
2372         (WebCore::RenderTableRow::requiresLayer):
2373
2374 2012-03-01  Kenichi Ishibashi  <bashi@chromium.org>
2375
2376         REGRESSION: Outlook 2007 doesn't display fonts correctly on emails composed by WebKit
2377         https://bugs.webkit.org/show_bug.cgi?id=79448
2378
2379         Reviewed by Ryosuke Niwa.
2380
2381         Don't produce single quotes around face attribute of font elements.
2382
2383         Test: editing/style/font-face-unquote.html
2384
2385         * editing/EditingStyle.cpp:
2386         (WebCore::StyleChange::extractTextStyles): Remove single quotes from m_applyFontFace.
2387
2388 2012-03-01  Beth Dakin  <bdakin@apple.com>
2389
2390         Reviewed by Kevin Decker.
2391
2392         Part of https://bugs.webkit.org/show_bug.cgi?id=79705
2393
2394         Here's some of that tweaking promised in the comment. Adjusting 
2395         gMaximumUnpaintedAreaRatio down a bit.
2396         * page/Page.cpp:
2397         (WebCore):
2398
2399 2012-03-01  Levi Weintraub  <leviw@chromium.org>
2400
2401         Add roundToInt method for LayoutUnits
2402         https://bugs.webkit.org/show_bug.cgi?id=79283
2403
2404         Reviewed by Eric Seidel.
2405
2406         Adding a roundToInt method that rounds a LayoutUnit to the nearest integer. This
2407         only has an effect once we switch to sub-pixel positioning. Points and offsets
2408         are rounded for painting and hit testing.
2409
2410         No new tests. No change in behavior.
2411
2412         * dom/MouseRelatedEvent.cpp:
2413         (WebCore::MouseRelatedEvent::offsetX):
2414         (WebCore::MouseRelatedEvent::offsetY):
2415         * html/shadow/MediaControlElements.cpp:
2416         (WebCore::MediaControlTextTrackContainerElement::updateSizes):
2417         * rendering/LayoutState.cpp:
2418         (WebCore::LayoutState::computeLineGridPaginationOrigin):
2419         * rendering/LayoutTypes.h:
2420         (WebCore::roundToInt): Stub until we switch to sub-pixel LayoutUnits.
2421         (WebCore):
2422         * rendering/RenderBlock.cpp:
2423         (WebCore::RenderBlock::pageLogicalTopForOffset):
2424         * rendering/RenderBlock.h:
2425         (WebCore::RenderBlock::pixelSnappedLogicalLeftOffsetForLine): Correcting to use the
2426         pixel snapped methods on FloatingObjects and removing the fixme.
2427         (WebCore::RenderBlock::pixelSnappedLogicalTopForFloat): Ditto.
2428         (WebCore::RenderBlock::pixelSnappedLogicalBottomForFloat): Ditto.
2429         (WebCore::RenderBlock::pixelSnappedLogicalLeftForFloat): Ditto.
2430         (WebCore::RenderBlock::pixelSnappedLogicalRightForFloat): Ditto.
2431         (WebCore::RenderBlock::pixelSnappedLogicalWidthForFloat): Ditto.
2432         * rendering/RenderBlockLineLayout.cpp:
2433         (WebCore::LineWidth::updateAvailableWidth):
2434         (WebCore::RenderBlock::computeInlineDirectionPositionsForLine): Using
2435         pixelSnappedLogicalLeft/RightOffsetForLine convenience methods for line layout. When
2436         we switch to sub-pixel positioning, we still pixel snap blocks before painting them,
2437         but text is rendered using floats. We need to ensure the text is laid out using the
2438         actual pixel width of the containing block to avoid bleeding out of the block.
2439         * rendering/RenderBoxModelObject.h: Moving the fixme to pixelSnappedWidth/Height and
2440         adding the necessary rounding for Left/Top.
2441         (WebCore::RenderBoxModelObject::pixelSnappedOffsetLeft):
2442         (WebCore::RenderBoxModelObject::pixelSnappedOffsetTop):
2443         * rendering/RenderLayer.cpp:
2444         (WebCore::RenderLayer::scrollRectToVisible):
2445         * rendering/RenderListBox.cpp:
2446         (WebCore::RenderListBox::scrollHeight): Rounding the height for scrollHeight. Scrolling
2447         always uses rounded values.
2448         * rendering/svg/RenderSVGRoot.cpp:
2449         (WebCore::RenderSVGRoot::localToParentTransform): Similar to the line box tree, since
2450         SVG renders using floats, we need to start with pixel snapped values from the render
2451         tree or we'll end up with the contents not properly aligned to the rest of the page.
2452         * rendering/svg/SVGRenderSupport.cpp:
2453         (WebCore::SVGRenderSupport::prepareToRenderSVGContent):
2454
2455 2012-03-01  Pavel Feldman  <pfeldman@chromium.org>
2456
2457         Web Inspector: arrays in object properties sections do not scale.
2458         https://bugs.webkit.org/show_bug.cgi?id=64596
2459
2460         Reviewed by Vsevolod Vlasov.
2461
2462         Test: inspector/console/console-big-array.html
2463
2464         * inspector/front-end/ConsoleMessage.js:
2465         (WebInspector.ConsoleMessageImpl.prototype._formatParameterAsArray):
2466         (WebInspector.ConsoleMessageImpl.prototype._printArray):
2467         * inspector/front-end/ObjectPropertiesSection.js:
2468         (WebInspector.ObjectPropertiesSection.prototype.updateProperties):
2469         (WebInspector.ObjectPropertyTreeElement.prototype.onpopulate.callback):
2470         (WebInspector.ObjectPropertyTreeElement.prototype.onpopulate):
2471         (WebInspector.ObjectPropertyTreeElement.prototype.startEditing):
2472         (WebInspector.ArrayGroupingTreeElement):
2473         (WebInspector.ArrayGroupingTreeElement.populateAsArray):
2474         (WebInspector.ArrayGroupingTreeElement._populate.appendElement):
2475         (WebInspector.ArrayGroupingTreeElement._populate):
2476         (WebInspector.ArrayGroupingTreeElement.prototype.onpopulate):
2477         * inspector/front-end/RemoteObject.js:
2478         (WebInspector.RemoteObject.prototype.release):
2479         (WebInspector.RemoteObject.prototype.arrayLength):
2480         (WebInspector.LocalJSONObject.prototype.isError):
2481         (WebInspector.LocalJSONObject.prototype.arrayLength):
2482         * inspector/front-end/ScopeChainSidebarPane.js:
2483         (WebInspector.ScopeVariableTreeElement.prototype.get propertyPath):
2484         * inspector/front-end/StylesSidebarPane.js:
2485         (WebInspector.StylePropertyTreeElement.prototype._mouseDown):
2486         * inspector/front-end/inspector.css:
2487         (.console-formatted-object, .console-formatted-node, .console-formatted-array):
2488         (.console-formatted-object .section, .console-formatted-node .section, .console-formatted-array .section):
2489
2490 2012-03-01  Adam Barth  <abarth@webkit.org>
2491
2492         Unreviewed, rolling out r109336.
2493         http://trac.webkit.org/changeset/109336
2494         https://bugs.webkit.org/show_bug.cgi?id=80013
2495
2496         It's causing some crashes
2497
2498         * Modules/indexeddb/DOMWindowIndexedDatabase.cpp:
2499         (WebCore::DOMWindowIndexedDatabase::DOMWindowIndexedDatabase):
2500         (WebCore::DOMWindowIndexedDatabase::webkitIndexedDB):
2501         * Modules/indexeddb/DOMWindowIndexedDatabase.h:
2502         (DOMWindowIndexedDatabase):
2503         * page/DOMWindow.cpp:
2504         (WebCore::DOMWindow::~DOMWindow):
2505         (WebCore::DOMWindow::clear):
2506         (WebCore):
2507         (WebCore::DOMWindow::setIDBFactory):
2508         * page/DOMWindow.h:
2509         (DOMWindow):
2510         (WebCore::DOMWindow::idbFactory):
2511
2512 2012-03-01  Tom Sepez  <tsepez@chromium.org>
2513
2514         Move m_frame protector from FrameLoader::changeLocation to FrameLoader::urlSelected
2515         https://bugs.webkit.org/show_bug.cgi?id=79882
2516
2517         Reviewed by Adam Barth.
2518
2519         Test: fast/frames/url-selected-crash.html
2520
2521         * loader/FrameLoader.cpp:
2522         (WebCore::FrameLoader::changeLocation):
2523         (WebCore::FrameLoader::urlSelected):
2524
2525 2012-03-01  Julien Chaffraix  <jchaffraix@webkit.org>
2526
2527         Lazily allocate overflow: hidden layers if we have overflowing content
2528         https://bugs.webkit.org/show_bug.cgi?id=75568
2529
2530         Reviewed by David Hyatt.
2531
2532         Change covered by the existing tests and the tons of rebaselines.
2533
2534         This change makes us lazily allocate our RenderLayer for overflow: hidden layers only.
2535
2536         Apart from saving some memory, it will also speed up the rendering as we don't need to
2537         go through the layer's machinery when painting and hit testing.
2538
2539         On http://dglazkov.github.com/performance-tests/biggrid.html benchmark, this puts the
2540         overflow: hidden case in par with the overflow: visible case when scrolling that is a
2541         very-smooth scrolling vs a jerky one currently (mostly due to the painting speedup).
2542
2543         * rendering/RenderBlock.cpp:
2544         (WebCore::RenderBlock::updateScrollInfoAfterLayout):
2545         Changed this method to update our size cache if needed.
2546
2547         * rendering/RenderBlock.cpp:
2548         (WebCore::RenderBlock::layoutBlock):
2549         (WebCore::RenderBlock::paint):
2550         (WebCore::RenderBlock::isPointInOverflowControl):
2551         * rendering/RenderBlock.h:
2552         (RenderBlock):
2553         * rendering/RenderBox.cpp:
2554         (WebCore::RenderBox::styleDidChange):
2555         (WebCore::RenderBox::scrollWidth):
2556         (WebCore::RenderBox::scrollHeight):
2557         (WebCore::RenderBox::scrollLeft):
2558         (WebCore::RenderBox::scrollTop):
2559         (WebCore::RenderBox::setScrollLeft):
2560         (WebCore::RenderBox::setScrollTop):
2561         (WebCore::RenderBox::includeVerticalScrollbarSize):
2562         (WebCore::RenderBox::includeHorizontalScrollbarSize):
2563         (WebCore::RenderBox::pushContentsClip):
2564         (WebCore::RenderBox::popContentsClip):
2565         (WebCore::RenderBox::addLayoutOverflow):
2566         Added layer() check to the previous call sites.
2567
2568         * rendering/RenderBoxModelObject.cpp:
2569         (WebCore::RenderBoxModelObject::ensureLayer):
2570         Added this function to create and add a new layer.
2571
2572         (WebCore::RenderBoxModelObject::willBeDestroyed):
2573         (WebCore):
2574         (WebCore::RenderBoxModelObject::styleDidChange):
2575         Patched those method to handle updating / removing
2576         cached size entries.
2577
2578         (WebCore::cachedSizeForOverflowClipMap):
2579         (WebCore::RenderBoxModelObject::cachedSizeForOverflowClip):
2580         (WebCore::RenderBoxModelObject::updateCachedSizeForOverflowClip):
2581         (WebCore::RenderBoxModelObject::clearCachedSizeForOverflowClip):
2582         This logic stores the size information for later repainting.
2583         It is in practice replicating what RenderLayer is doing.
2584
2585         * rendering/RenderBoxModelObject.h:
2586         (WebCore::RenderBoxModelObject::requiresLayer):
2587         Updated to call requiresLayerForOverflowClip.
2588
2589         (WebCore::RenderBoxModelObject::requiresLayerForOverflowClip):
2590         Added this method to check if we can lazily allocate the layer.
2591
2592         * rendering/RenderDeprecatedFlexibleBox.cpp:
2593         (WebCore::RenderDeprecatedFlexibleBox::layoutBlock):
2594         Removed some checks as they are part of updateScrollInfoAfterLayout.
2595
2596         * rendering/RenderObject.cpp:
2597         (WebCore::RenderObject::scrolledContentOffset):
2598         Added a layer() check.
2599
2600         * rendering/RenderTableRow.h:
2601         (RenderTableRow):
2602         Added a comment about why we need a layout for table rows.
2603
2604 2012-03-01  Abhishek Arya  <inferno@chromium.org>
2605
2606         Protect functions using two container node function, each of which can fire mutation events.
2607         https://bugs.webkit.org/show_bug.cgi?id=78397
2608
2609         Reviewed by Ryosuke Niwa.
2610
2611         Tests: fast/dom/document-set-title-mutation-crash.html
2612                fast/dom/option-text-mutation-crash.html
2613
2614         * dom/Node.cpp:
2615         (WebCore::Node::setTextContent):
2616         * dom/Text.cpp:
2617         (WebCore::Text::replaceWholeText):
2618         * editing/markup.cpp:
2619         (WebCore::trimFragment):
2620         (WebCore::replaceChildrenWithFragment):
2621         (WebCore::replaceChildrenWithText):
2622         * html/HTMLOptionElement.cpp:
2623         (WebCore::HTMLOptionElement::setText):
2624         * html/HTMLScriptElement.cpp:
2625         (WebCore::HTMLScriptElement::setText):
2626         * html/HTMLTableElement.cpp:
2627         (WebCore::HTMLTableElement::insertRow):
2628         * html/HTMLTextAreaElement.cpp:
2629         (WebCore::HTMLTextAreaElement::setDefaultValue):
2630         * html/HTMLTitleElement.cpp:
2631         (WebCore::HTMLTitleElement::setText):
2632
2633 2012-03-01  Alexey Proskuryakov  <ap@apple.com>
2634
2635         Some trivial file stream cleanup
2636         https://bugs.webkit.org/show_bug.cgi?id=79955
2637
2638         Reviewed by Sam Weinig.
2639
2640         No change in functionality.
2641
2642         * fileapi/FileStreamProxy.cpp: Tweaked comment, and added copyright for earlier changes.
2643
2644         * fileapi/FileStreamProxy.h: Added a FIXME telling that this should be in platform.
2645
2646         * platform/AsyncFileStream.h: Tweaked includes and added a FIXME about this to stop being
2647         a subclass.
2648
2649         * platform/FileStreamClient.h: Removed obvious comments, and added ones explaing in-band
2650         error signals.
2651
2652         * platform/network/BlobResourceHandle.cpp: Removed an include outside of platform, and an
2653         unused constant.
2654
2655 2012-03-01  Shinya Kawanaka  <shinyak@chromium.org>
2656
2657         Appending ShadowRoot into an element should not cause crash.
2658         https://bugs.webkit.org/show_bug.cgi?id=79620
2659
2660         Reviewed by Dimitri Glazkov.
2661
2662         We should treat ShadowRoot as a document fragment.
2663
2664         Test: fast/dom/shadow/shadow-root-append.html
2665
2666         * dom/ContainerNode.cpp:
2667         (WebCore::collectTargetNodes):
2668
2669 2012-03-01  Pavel Podivilov  <podivilov@chromium.org>
2670
2671         Web Inspector: use live location to update console message bubbles.
2672         https://bugs.webkit.org/show_bug.cgi?id=80023
2673
2674         Reviewed by Vsevolod Vlasov.
2675
2676         * inspector/front-end/DebuggerPresentationModel.js:
2677         (WebInspector.DebuggerPresentationModel):
2678         (WebInspector.DebuggerPresentationModel.prototype._uiSourceCodeListChanged):
2679         (WebInspector.DebuggerPresentationModel.prototype._consoleMessageAdded):
2680         (WebInspector.DebuggerPresentationModel.prototype._addConsoleMessageToScript.updateLocation):
2681         (WebInspector.DebuggerPresentationModel.prototype._addConsoleMessageToScript):
2682         (WebInspector.DebuggerPresentationModel.prototype._addPendingConsoleMessage):
2683         (WebInspector.DebuggerPresentationModel.prototype._addPendingConsoleMessagesToScript):
2684         (WebInspector.DebuggerPresentationModel.prototype._consoleCleared):
2685         (WebInspector.DebuggerPresentationModel.prototype.messagesForUISourceCode):
2686         (WebInspector.DebuggerPresentationModel.prototype._scriptForURLAndLocation):
2687         (WebInspector.DebuggerPresentationModel.prototype._debuggerReset):
2688         * inspector/front-end/RawSourceCode.js:
2689         (WebInspector.RawSourceCode):
2690
2691 2012-03-01  Vsevolod Vlasov  <vsevik@chromium.org>
2692
2693         Web Inspector: [InspectorIndexedDB] Show tooltips with IndexedDB objects meta information
2694         https://bugs.webkit.org/show_bug.cgi?id=80022
2695
2696         Reviewed by Pavel Feldman.
2697
2698         Added tooltips with meta information for IndexedDB databases, object stores and indexes.
2699         Added keyPath: prefix to key columns in IndexedDB data grid.
2700
2701         * English.lproj/localizedStrings.js:
2702         * inspector/front-end/IndexedDBViews.js:
2703         (WebInspector.IDBDataView.prototype._createDataGrid):
2704         (WebInspector.IDBDataView.prototype._keyPathHeader):
2705         * inspector/front-end/ResourcesPanel.js:
2706         (WebInspector.IDBDatabaseTreeElement.prototype.update):
2707         (WebInspector.IDBDatabaseTreeElement.prototype._updateTooltip):
2708         (WebInspector.IDBObjectStoreTreeElement.prototype.update):
2709         (WebInspector.IDBObjectStoreTreeElement.prototype._updateTooltip):
2710         (WebInspector.IDBIndexTreeElement.prototype.update):
2711         (WebInspector.IDBIndexTreeElement.prototype._updateTooltip):
2712
2713 2012-03-01  Pavel Feldman  <pfeldman@google.com>
2714
2715         Web Inspector: hide color picker on Esc and Enter.
2716         https://bugs.webkit.org/show_bug.cgi?id=79915
2717
2718         Reviewed by Vsevolod Vlasov.
2719
2720         * inspector/front-end/Spectrum.js:
2721         (WebInspector.Spectrum.prototype.reposition):
2722         (WebInspector.Spectrum.prototype.hide):
2723         (WebInspector.Spectrum.prototype._onKeyDown):
2724
2725 2012-03-01  Huang Dongsung  <luxtella@company100.net>
2726
2727         [Qt] Fixed incorrect size pixmap creation for a new transparency layer.
2728         https://bugs.webkit.org/show_bug.cgi?id=79658
2729
2730         If QPainter does not have clipping, beginPlatformTransparencyLayer can create
2731         wrong size pixmap, so it causes incorrect rendering.
2732
2733         Reviewed by Simon Hausmann.
2734
2735         * platform/graphics/qt/GraphicsContextQt.cpp:
2736         (WebCore::GraphicsContext::beginPlatformTransparencyLayer):
2737
2738 2012-03-01  Simon Hausmann  <simon.hausmann@nokia.com>
2739
2740         [Qt] Remove dead style option code.
2741         https://bugs.webkit.org/show_bug.cgi?id=80017
2742
2743         Reviewed by Kenneth Rohde Christiansen.
2744
2745         QtStyleOptionWebComboBox provides functionality (bool multiple()) that
2746         is not called from anywhere (and the base class does not have it as a
2747         virtual function).
2748
2749         * Target.pri:
2750         * platform/qt/QtStyleOptionWebComboBox.h: Removed.
2751         * platform/qt/RenderThemeQStyle.cpp:
2752         (WebCore::RenderThemeQStyle::paintMenuList):
2753         (WebCore::RenderThemeQStyle::paintMenuListButton):
2754
2755 2012-03-01  Stephen Chenney  <schenney@chromium.org>
2756
2757         Crash in WebCore::SVGDocumentExtensions::removeAnimationElementFromTarget
2758         https://bugs.webkit.org/show_bug.cgi?id=79831
2759
2760         Reviewed by Eric Seidel.
2761
2762         Out-of-order operations in the SVGSMILElement::removedFromDocument
2763         method caused its target to be removed and then re-added due to a
2764         later call. This led to the target being set on the animation while
2765         the target element itself was unaware. At deletion time, this caused a
2766         crash (or assert in debug builds). Thanks to Abhishek Arya for help
2767         with the layout test.
2768
2769         Test: svg/animations/smil-element-target-crash-main.html
2770
2771         * svg/animation/SVGSMILElement.cpp:
2772         (WebCore::SVGSMILElement::removedFromDocument):
2773
2774 2012-03-01  Ilya Tikhonovsky  <loislo@chromium.org>
2775
2776         Web Inspector: move heap snapshot nodes data to external array.
2777         https://bugs.webkit.org/show_bug.cgi?id=79911
2778
2779         Reviewed by Vsevolod Vlasov.
2780
2781         Tests:
2782         heap-shapshot.html
2783         heap-shapshot-loader.html
2784
2785         * inspector/front-end/HeapSnapshot.js:
2786         (WebInspector.Int32Array):
2787         (WebInspector.Int32Array.prototype.get array):
2788         (WebInspector.HeapSnapshotLoader.prototype._parseNodes):
2789         (WebInspector.HeapSnapshotLoader.prototype.pushJSONChunk):
2790         (WebInspector.HeapSnapshot):
2791         (WebInspector.HeapSnapshot.prototype._init):
2792
2793 2012-03-01  Nikolas Zimmermann  <nzimmermann@rim.com>
2794
2795         Introduce SMIL overrideStyle, to make SVG stop mutating CSS styles directly
2796         https://bugs.webkit.org/show_bug.cgi?id=79790
2797
2798         Reviewed by Zoltan Herczeg.
2799
2800         Next step towards enabling animVal support for XML attribute animations.
2801         When SVG CSS properties are animated using SMIL, we currently mutate
2802         the target elements style, and have to keep a baseValue around as String
2803         to be able to recover from the DOM mutations at the end, if fill!="freeze".
2804
2805         The approach required by SMIL is to keep around an override style declaration
2806         set and apply it right after the inline style declarations. Implement that
2807         finally, to avoid mutating styles directly.
2808
2809         Test: svg/animations/attributeTypes.html
2810
2811         * css/CSSStyleSelector.cpp: Model "SMIL animation style" applying just like "inline style" declarations.
2812         (WebCore::CSSStyleSelector::addElementStyleProperties): Refactored common code from matchAllRules().
2813         (WebCore::CSSStyleSelector::matchAllRules): Apply "SMIL animation style" after "inline style" declarations, as specified in SMIL2.
2814         * css/CSSStyleSelector.h: Add new addElementStyleProperties() helper.
2815         * svg/SVGAnimateElement.cpp: Keep track of animation state, if it's about to end, clear "SMIL animation style" upon next applyResultToTarget() call.
2816         (WebCore::SVGAnimateElement::SVGAnimateElement):
2817         (WebCore::SVGAnimateElement::applyResultsToTarget): Reset the CSS property we're animating int the "SMIL animation style", after animation ends.
2818                                                             (Instead of resetting target->style() properties to the old baseValue, as we used to do).
2819         (WebCore::SVGAnimateElement::endedActiveInterval): Set m_aboutToStopAnimation to true, so next call to applyResultsToTarget() knows the animation ends.
2820         * svg/SVGAnimateElement.h: Store bool m_aboutToSTopAnimation;
2821         * svg/SVGAnimationElement.cpp:
2822         (WebCore::setTargetAttributeAnimatedCSSValue):
2823         (WebCore::setTargetAttributeAnimatedXMLValue):
2824             Refactored both of these methods from setTargetAttributeAnimatedValue().
2825             Changed the CSS part, to apply property changes to the "SMIL animation style" instead of the regular StylePropertySet.
2826         (WebCore::SVGAnimationElement::setTargetAttributeAnimatedValue): Refactored code, use shouldApplyAnimation() to determine whether this animation should run.
2827         (WebCore::SVGAnimationElement::resetAnimationState): New helper calling setTargetAttributeAnimatedValue with a null-string for CSS attributes, when the animation ends.
2828                                                              This is used to detect that the CSS property should be removed from the "SMIL animation style".
2829         (WebCore::SVGAnimationElement::shouldApplyAnimation): Refactored from existing code, and make it more obvious how attributeType influences the animation, all according to SVG 1.1/SMIL2.
2830         * svg/SVGAnimationElement.h:
2831         * svg/SVGElement.cpp: Manage the "SMIL animation style", in SVGElementRareData, if needed. Only gets created if SMIL animations on CSS properties run.
2832         (WebCore::SVGElement::~SVGElement): Destroy SMIL animation style, upon destruction.
2833         (WebCore::SVGElement::animatedSMILStyleProperties): Returns the StylePropertySet for the "SMIL animation style", if it's available.
2834         (WebCore::SVGElement::ensureAnimatedSMILStyleProperties): Enforces creating the StylePropertySet for the "SMIL animation style".
2835         * svg/SVGElement.h: Expose new methods.
2836         * svg/SVGElementRareData.h: Stores the "SMIL animation style", actual managment is done by SVGElement, if needed.
2837         (WebCore::SVGElementRareData::animatedSMILStyleProperties): Retrieve it.
2838         (WebCore::SVGElementRareData::ensureAnimatedSMILStyleProperties): Create it.
2839         (WebCore::SVGElementRareData::destroyAnimatedSMILStyleProperties): Destroy it.
2840         * svg/animation/SVGSMILElement.h: Make endedActiveInterval() virtual again, its needed by SVGAnimateElement now.
2841
2842 2012-03-01  Nikolas Zimmermann  <nzimmermann@rim.com>
2843
2844         Unreviewed, rolling out r109255.
2845         http://trac.webkit.org/changeset/109255
2846         https://bugs.webkit.org/show_bug.cgi?id=79932
2847
2848         Breaks rounded rects with dashed strokes in SVG
2849
2850         * WebCore.exp.in:
2851         * platform/graphics/Path.cpp:
2852         (WebCore::Path::addRoundedRect):
2853         * platform/graphics/Path.h:
2854         (Path):
2855         * platform/graphics/cg/PathCG.cpp:
2856         * platform/mac/WebCoreSystemInterface.h:
2857         * platform/mac/WebCoreSystemInterface.mm:
2858
2859 2012-03-01  Adam Barth  <abarth@webkit.org>
2860
2861         DOMWindow shouldn't have any INDEXED_DATABASE ifdefs
2862         https://bugs.webkit.org/show_bug.cgi?id=80013
2863
2864         Reviewed by Kentaro Hara.
2865
2866         Before this patch, DOMWindow still knew about IDB because of the
2867         database factory.  This patch moves the factory to
2868         DOMWindowIndexedDatabase.
2869
2870         * Modules/indexeddb/DOMWindowIndexedDatabase.cpp:
2871         (WebCore::DOMWindowIndexedDatabase::DOMWindowIndexedDatabase):
2872         (WebCore::DOMWindowIndexedDatabase::from):
2873         (WebCore):
2874         (WebCore::DOMWindowIndexedDatabase::disconnectFrame):
2875         (WebCore::DOMWindowIndexedDatabase::webkitIndexedDB):
2876         * Modules/indexeddb/DOMWindowIndexedDatabase.h:
2877         (DOMWindowIndexedDatabase):
2878         * page/DOMWindow.cpp:
2879         (WebCore::DOMWindow::~DOMWindow):
2880         (WebCore::DOMWindow::clear):
2881         (WebCore):
2882         * page/DOMWindow.h:
2883         (DOMWindow):
2884
2885 2012-03-01  Nikolas Zimmermann  <nzimmermann@rim.com>
2886
2887         SVG <use> element allows invalid contents
2888         https://bugs.webkit.org/show_bug.cgi?id=77764
2889
2890         Reviewed by Zoltan Herczeg.
2891
2892         Unbreak the world after r109299 - dozens of SVGUseElement tests fail in trunk because:
2893         - text nodes weren't allowed in SVG shadow subtrees
2894         - tagName matching ignores any prefixes, thus svg:circle fails to identify as SVGCircleElement
2895
2896         * svg/SVGUseElement.cpp:
2897         (WebCore::isDisallowedElement):
2898
2899 2012-03-01  Luke Macpherson   <macpherson@chromium.org>
2900
2901         Handle CSSPropertyWebkitHyphens in CSSStyleApplyProperty.
2902         https://bugs.webkit.org/show_bug.cgi?id=80004
2903
2904         Reviewed by Eric Seidel.
2905
2906         No new tests / refactoring only.
2907
2908         * css/CSSStyleApplyProperty.cpp:
2909         (WebCore::CSSStyleApplyProperty::CSSStyleApplyProperty):
2910         * css/CSSStyleSelector.cpp:
2911         (WebCore::CSSStyleSelector::collectMatchingRulesForList):
2912
2913 2012-02-29  Pavel Podivilov  <podivilov@chromium.org>
2914
2915         Web Inspector: abstract out the common pattern of creating auto-updated locations.
2916         https://bugs.webkit.org/show_bug.cgi?id=79906
2917
2918         Reviewed by Vsevolod Vlasov.
2919
2920         * inspector/front-end/DebuggerPresentationModel.js:
2921         (WebInspector.PresentationCallFrame.prototype.uiLocation):
2922         (WebInspector.DebuggerPresentationModel.CallFramePlacard):
2923         (WebInspector.DebuggerPresentationModel.CallFramePlacard.prototype.discard):
2924         (WebInspector.DebuggerPresentationModel.CallFramePlacard.prototype._update):
2925         (WebInspector.DebuggerPresentationModel.LinkifierFormatter.prototype.formatRawSourceCodeAnchor):
2926         (WebInspector.DebuggerPresentationModel.DefaultLinkifierFormatter.prototype.formatRawSourceCodeAnchor):
2927         (WebInspector.DebuggerPresentationModel.Linkifier):
2928         (WebInspector.DebuggerPresentationModel.Linkifier.prototype.linkifyRawSourceCode):
2929         (WebInspector.DebuggerPresentationModel.Linkifier.prototype.reset):
2930         (WebInspector.DebuggerPresentationModel.Linkifier.prototype._updateAnchor):
2931         * inspector/front-end/RawSourceCode.js:
2932         (WebInspector.RawSourceCode.prototype.createLiveLocation):
2933         (WebInspector.RawSourceCode.LiveLocation):
2934         (WebInspector.RawSourceCode.LiveLocation.prototype.init):
2935         (WebInspector.RawSourceCode.LiveLocation.prototype.dispose):
2936         (WebInspector.RawSourceCode.LiveLocation.prototype._update):
2937
2938 2012-03-01  Kenneth Rohde Christiansen  <kenneth@webkit.org>
2939
2940         Make the tiling code slightly smarter
2941         https://bugs.webkit.org/show_bug.cgi?id=80015
2942
2943         Reviewed by Simon Hausmann.
2944
2945         Avoid doing the same tranformations all over in each call to
2946         tileRectForCoordinate.
2947
2948         Do not resize tiles and then drop them because they are not out of
2949         the keep rect; instead drop before resizing.
2950
2951         Rename dropTilesOutsideRect to setKeepRect as it now stored the keep
2952         rect. This is used to avoid unneeded iteration of all tiles for
2953         invalidates outside the keep rect.
2954
2955         * platform/graphics/TiledBackingStore.cpp:
2956         (WebCore::TiledBackingStore::invalidate):
2957         (WebCore):
2958         (WebCore::TiledBackingStore::commitScaleChange):
2959         (WebCore::TiledBackingStore::coverageRatio):
2960         (WebCore::TiledBackingStore::createTiles):
2961         (WebCore::TiledBackingStore::adjustForContentsRect):
2962         (WebCore::TiledBackingStore::resizeEdgeTiles):
2963         (WebCore::TiledBackingStore::setKeepRect):
2964         (WebCore::TiledBackingStore::removeAllNonVisibleTiles):
2965         (WebCore::TiledBackingStore::tileRectForCoordinate):
2966         (WebCore::TiledBackingStore::setSupportsAlpha):
2967         * platform/graphics/TiledBackingStore.h:
2968         (TiledBackingStore):
2969
2970 2012-02-29  Kinuko Yasuda  <kinuko@chromium.org>
2971
2972         Use the new createSnapshotFileAndReadMetadata API for FileEntry.file()
2973         https://bugs.webkit.org/show_bug.cgi?id=79928
2974
2975         Reviewed by David Levin.
2976
2977         No new tests: no functionality changes.
2978         fast/filesystem/ tests should use the new code (they should pass once
2979         the corresponding chromium change is rolled in).
2980
2981         * fileapi/DOMFileSystem.cpp:
2982         (WebCore::DOMFileSystem::createFile): Updated to use the new API.
2983         * fileapi/DOMFileSystemSync.cpp:
2984         (WebCore::DOMFileSystemSync::createFile): Updated to use the new API.
2985         * fileapi/FileSystemCallbacks.cpp:
2986         * fileapi/FileSystemCallbacks.h:
2987         (FileSystemCallbacksBase):
2988         * platform/AsyncFileSystem.h:
2989         (AsyncFileSystem):
2990         * platform/AsyncFileSystemCallbacks.h: Added default implementation (which just calls ASSERT_NOTREACHED()) so that subclasses can focus only on the callback methods that they're interested in.
2991
2992 2012-02-29  Pavel Podivilov  <podivilov@chromium.org>
2993
2994         Web Inspector: add UISourceCode.isEditable property.
2995         https://bugs.webkit.org/show_bug.cgi?id=79909
2996
2997         Reviewed by Vsevolod Vlasov.
2998
2999         * inspector/front-end/DebuggerPresentationModel.js:
3000         (WebInspector.DebuggerPresentationModel.prototype.canEditScriptSource):
3001         * inspector/front-end/RawSourceCode.js:
3002         (WebInspector.RawSourceCode.prototype._createUISourceCode):
3003         * inspector/front-end/UISourceCode.js:
3004         (WebInspector.UISourceCode):
3005
3006 2012-02-29  Shinya Kawanaka  <shinyak@chromium.org> 
3007
3008         Fallback elements in non-youngest shadow tree should not be rendered.
3009         https://bugs.webkit.org/show_bug.cgi?id=80002
3010
3011         Reviewed by Hajime Morita.
3012
3013         Fallback elements in non-youngest shadow tree should not be rendered, so its phase should be
3014         AttachingNotDistributed instead of AttachingFallbacked.
3015
3016         Tests: multiple-shadowroot-rendering.html covers this patch.
3017
3018         * dom/NodeRenderingContext.cpp:
3019         (WebCore::NodeRenderingContext::NodeRenderingContext):
3020
3021 2012-02-29  Adam Barth  <abarth@webkit.org>
3022
3023         ScriptExecutionContext has too many ifdef ENABLE(SQL_DATABASE)
3024         https://bugs.webkit.org/show_bug.cgi?id=79633
3025
3026         Reviewed by Eric Seidel.
3027
3028         This class creates a DatabaseContext object to supplement the
3029         ScriptExecutionContext with database-specific information.  This new
3030         object lets us remove a bunch of database-specific (and ifdefed) logic
3031         from ScriptExecutionContext.(cpp|h).
3032
3033         * CMakeLists.txt:
3034         * GNUmakefile.list.am:
3035         * Target.pri:
3036         * WebCore.exp.in:
3037         * WebCore.gypi:
3038         * WebCore.vcproj/WebCore.vcproj:
3039         * WebCore.xcodeproj/project.pbxproj:
3040         * dom/ScriptExecutionContext.cpp:
3041         (WebCore::ScriptExecutionContext::ScriptExecutionContext):
3042         (WebCore::ScriptExecutionContext::~ScriptExecutionContext):
3043         (WebCore):
3044         * dom/ScriptExecutionContext.h:
3045         (WebCore):
3046         (ScriptExecutionContext):
3047         * history/PageCache.cpp:
3048         (WebCore::logCanCacheFrameDecision):
3049         (WebCore::PageCache::canCachePageContainingThisFrame):
3050         * loader/FrameLoader.cpp:
3051         (WebCore::FrameLoader::stopLoading):
3052         * platform/Supplementable.h:
3053         (WebCore::Supplementable::provideSupplement):
3054         (WebCore::Supplementable::requireSupplement):
3055         (Supplementable):
3056         * storage/AbstractDatabase.cpp:
3057         (WebCore::AbstractDatabase::AbstractDatabase):
3058         * storage/AbstractDatabase.h:
3059         (WebCore):
3060         (WebCore::AbstractDatabase::databaseContext):
3061         (AbstractDatabase):
3062         * storage/Database.cpp:
3063         (WebCore::Database::openDatabase):
3064         (WebCore::Database::Database):
3065         (WebCore::Database::openAndVerifyVersion):
3066         (WebCore::Database::markAsDeletedAndClose):
3067         (WebCore::Database::close):
3068         (WebCore::Database::closeImmediately):
3069         (WebCore::Database::performOpenAndVerify):
3070         (WebCore::Database::scheduleTransaction):
3071         (WebCore::Database::scheduleTransactionStep):
3072         (WebCore::Database::transactionClient):
3073         (WebCore::Database::transactionCoordinator):
3074         (WebCore::Database::tableNames):
3075         (WebCore::Database::securityOrigin):
3076         * storage/DatabaseContext.cpp: Added.
3077         (WebCore):
3078         (WebCore::existingDatabaseContextFrom):
3079         (WebCore::DatabaseContext::DatabaseContext):
3080         (WebCore::DatabaseContext::~DatabaseContext):
3081         (WebCore::DatabaseContext::from):
3082         (WebCore::DatabaseContext::databaseThread):
3083         (WebCore::DatabaseContext::hasOpenDatabases):
3084         (WebCore::DatabaseContext::stopDatabases):
3085         * storage/DatabaseContext.h: Added.
3086         (WebCore):
3087         (DatabaseContext):
3088         (WebCore::DatabaseContext::setHasOpenDatabases):
3089         * storage/SQLTransaction.cpp:
3090         (WebCore::SQLTransaction::checkAndHandleClosedOrInterruptedDatabase):
3091         (WebCore::SQLTransaction::notifyDatabaseThreadIsShuttingDown):
3092         * workers/WorkerThread.cpp:
3093         (WebCore::WorkerThreadShutdownStartTask::performTask):
3094
3095 2012-02-29  Shinya Kawanaka  <shinyak@chromium.org>
3096
3097         Refactoring: HTMLContentSelector should be InsertionPoint-aware.
3098         https://bugs.webkit.org/show_bug.cgi?id=79901
3099
3100         Reviewed by Hajime Morita.
3101
3102         ContentSelectorQuery took HTMLContentElement as argument, but patch changes it to take InsertionPoint instead.
3103         If InsertionPoint is not HTMLContentElement, ContentSelectorQuery will selects the rest of light children.
3104
3105         Now InsertionPoint has pure virtual method 'select'. <shadow> will implement this as a method returning empty string.
3106
3107         * dom/ShadowRoot.cpp:
3108         (WebCore::ShadowRoot::hasInsertionPoint):
3109         * dom/ShadowRoot.h:
3110         (ShadowRoot):
3111         * dom/ShadowTree.cpp:
3112         (WebCore::ShadowTree::needsReattachHostChildrenAndShadow):
3113         (WebCore::ShadowTree::hostChildrenChanged):
3114         * html/shadow/ContentSelectorQuery.cpp:
3115         (WebCore::ContentSelectorQuery::ContentSelectorQuery):
3116         (WebCore::ContentSelectorQuery::matches):
3117         * html/shadow/ContentSelectorQuery.h:
3118         (WebCore):
3119         (ContentSelectorQuery):
3120         * html/shadow/HTMLContentElement.cpp:
3121         (WebCore::HTMLContentElement::detach):
3122         * html/shadow/HTMLContentElement.h:
3123         (WebCore::toHTMLContentElement):
3124         (WebCore):
3125         * html/shadow/HTMLContentSelector.cpp:
3126         (WebCore::HTMLContentSelector::select):
3127         * html/shadow/HTMLContentSelector.h:
3128         (HTMLContentSelector):
3129         * html/shadow/InsertionPoint.h:
3130         (InsertionPoint):
3131
3132 2012-02-29  Luke Macpherson   <macpherson@chromium.org>
3133
3134         Handle CSSPropertySpeak in CSSStyleApplyProperty.
3135         https://bugs.webkit.org/show_bug.cgi?id=79879
3136
3137         Reviewed by Eric Seidel.
3138
3139         No new tests / refactoring only.
3140
3141         * css/CSSStyleApplyProperty.cpp:
3142         (WebCore::CSSStyleApplyProperty::CSSStyleApplyProperty):
3143         * css/CSSStyleSelector.cpp:
3144         (WebCore::CSSStyleSelector::collectMatchingRulesForList):
3145         * rendering/style/RenderStyle.h:
3146
3147 2012-02-29  Luke Macpherson   <macpherson@chromium.org>
3148
3149         Handle CSSPropertyWebkitColumnAxis in CSSStyleApplyProperty.
3150         https://bugs.webkit.org/show_bug.cgi?id=79869
3151
3152         Reviewed by Eric Seidel.
3153
3154         No new tests / refactoring only.
3155
3156         * css/CSSStyleApplyProperty.cpp:
3157         (WebCore::CSSStyleApplyProperty::CSSStyleApplyProperty):
3158         * css/CSSStyleSelector.cpp:
3159         (WebCore::CSSStyleSelector::collectMatchingRulesForList):
3160
3161 2012-02-29  Erik Arvidsson  <arv@chromium.org>
3162
3163         Rename DOMSelection to Selection
3164         https://bugs.webkit.org/show_bug.cgi?id=79688
3165
3166         Reviewed by Adam Barth.
3167
3168         No new tests. Existing tests have been updated to cover this.
3169
3170         * page/DOMSelection.idl:
3171         * page/DOMWindow.idl:
3172
3173 2012-02-29  Joshua Bell  <jsbell@chromium.org>
3174
3175         IndexedDB: IDBDatabase.objectStoreNames and IDObjectStore.indexNames results should be sorted
3176         https://bugs.webkit.org/show_bug.cgi?id=79950
3177
3178         Reviewed by Tony Chang.
3179
3180         Test: storage/indexeddb/list-ordering.html
3181
3182         * dom/DOMStringList.cpp: Added sort method, not exposed via IDL.
3183         (WebCore::DOMStringList::sort):
3184         (WebCore):
3185         * dom/DOMStringList.h:
3186         (DOMStringList):
3187         * storage/IDBDatabaseBackendImpl.cpp:
3188         (WebCore::IDBDatabaseBackendImpl::objectStoreNames):
3189         * storage/IDBObjectStoreBackendImpl.cpp:
3190         (WebCore::IDBObjectStoreBackendImpl::indexNames):
3191
3192 2012-02-29  W. James MacLean  <wjmaclean@chromium.org>
3193
3194         [chromium] Estimate pixel count for frame rate control
3195         https://bugs.webkit.org/show_bug.cgi?id=74982
3196
3197         Reviewed by James Robinson.
3198
3199         Value checks added to unit tests.
3200
3201         Adds mechanism to compute and collect statistics on pixel overdraw for selected frames.
3202
3203         * platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
3204         (WebCore::CCLayerTreeHostImpl::optimizeRenderPasses):
3205         * platform/graphics/chromium/cc/CCQuadCuller.cpp:
3206         (WebCore::wedgeProduct):
3207         (WebCore):
3208         (WebCore::quadArea):
3209         (WebCore::CCQuadCuller::cullOccludedQuads):
3210         * platform/graphics/chromium/cc/CCQuadCuller.h:
3211         (CCQuadCuller):
3212         * platform/graphics/chromium/cc/CCRenderPass.cpp:
3213         (WebCore::CCRenderPass::optimizeQuads):
3214         * platform/graphics/chromium/cc/CCRenderPass.h:
3215         (CCOverdrawCounts):
3216         (WebCore):
3217         (CCRenderPass):
3218
3219 2012-02-29  Jason Liu  <jason.liu@torchmobile.com.cn>
3220
3221         [BlackBerry]Make about:cache feature available in release version.
3222         https://bugs.webkit.org/show_bug.cgi?id=79866
3223
3224         Reviewed by Antonio Gomes.
3225
3226         No tests.
3227         * platform/network/blackberry/NetworkJob.cpp:
3228         (WebCore::NetworkJob::handleAbout):
3229
3230 2012-02-29  James Simonsen  <simonjam@chromium.org>
3231
3232         [chromium] Fix navigation start time on cross-renderer navigation
3233         https://bugs.webkit.org/show_bug.cgi?id=75922
3234
3235         Reviewed by Darin Fisher.
3236
3237         * loader/DocumentLoadTiming.cpp:
3238         (WebCore::DocumentLoadTiming::setNavigationStart): Added.
3239         * loader/DocumentLoadTiming.h:
3240
3241 2012-02-29  Stephen Chenney  <schenney@chromium.org>
3242
3243         SVG <use> element allows invalid contents
3244         https://bugs.webkit.org/show_bug.cgi?id=77764
3245
3246         Reviewed by Nikolas Zimmermann.
3247
3248         Modify the isDisallowedElement method to disallow all of the
3249         disallowed elements, instead of just a few. It is now a whitelist
3250         implementation.
3251
3252         This also fixes bugs 78807, 78838 and 79798 related to memory
3253         corruption issues.
3254
3255         Tests: svg/custom/bug78807.svg
3256                svg/custom/bug78838.html
3257                svg/custom/bug79798.html
3258
3259         * svg/SVGUseElement.cpp:
3260         (WebCore::isDisallowedElement):
3261
3262 2012-02-29  Ami Fischman  <fischman@chromium.org>
3263
3264         Continue the search for playable mime types among <source> children of <video> even when using data: URLs
3265         https://bugs.webkit.org/show_bug.cgi?id=79934
3266
3267         Reviewed by Eric Carlson.
3268
3269         Test: media/sources-fallback-codecs.html
3270
3271         * html/HTMLMediaElement.cpp:
3272         (WebCore::HTMLMediaElement::selectNextSourceChild):
3273
3274 2012-02-29  Ian Vollick  <vollick@chromium.org>
3275
3276         [chromium] Add impl-thread support for animation-timing-function
3277         https://bugs.webkit.org/show_bug.cgi?id=79819
3278
3279         Reviewed by James Robinson.
3280
3281         * WebCore.gypi:
3282         * platform/graphics/chromium/cc/CCKeyframedAnimationCurve.cpp:
3283         (WebCore::CCKeyframe::CCKeyframe):
3284         (WebCore):
3285         (WebCore::CCKeyframe::~CCKeyframe):
3286         (WebCore::CCKeyframe::time):
3287         (WebCore::CCKeyframe::timingFunction):
3288         (WebCore::CCFloatKeyframe::create):
3289         (WebCore::CCFloatKeyframe::CCFloatKeyframe):
3290         (WebCore::CCFloatKeyframe::~CCFloatKeyframe):
3291         (WebCore::CCFloatKeyframe::value):
3292         (WebCore::CCFloatKeyframe::clone):
3293         (WebCore::CCTransformKeyframe::create):
3294         (WebCore::CCTransformKeyframe::CCTransformKeyframe):
3295         (WebCore::CCTransformKeyframe::~CCTransformKeyframe):
3296         (WebCore::CCTransformKeyframe::value):
3297         (WebCore::CCTransformKeyframe::clone):
3298         (WebCore::CCKeyframedFloatAnimationCurve::create):
3299         (WebCore::CCKeyframedFloatAnimationCurve::CCKeyframedFloatAnimationCurve):
3300         (WebCore::CCKeyframedFloatAnimationCurve::addKeyframe):
3301         (WebCore::CCKeyframedFloatAnimationCurve::duration):
3302         (WebCore::CCKeyframedFloatAnimationCurve::clone):
3303         (WebCore::CCKeyframedFloatAnimationCurve::getValue):
3304         (WebCore::CCKeyframedTransformAnimationCurve::create):
3305         (WebCore::CCKeyframedTransformAnimationCurve::CCKeyframedTransformAnimationCurve):
3306         (WebCore::CCKeyframedTransformAnimationCurve::~CCKeyframedTransformAnimationCurve):
3307         (WebCore::CCKeyframedTransformAnimationCurve::addKeyframe):
3308         (WebCore::CCKeyframedTransformAnimationCurve::duration):
3309         (WebCore::CCKeyframedTransformAnimationCurve::clone):
3310         (WebCore::CCKeyframedTransformAnimationCurve::getValue):
3311         * platform/graphics/chromium/cc/CCKeyframedAnimationCurve.h:
3312         (CCKeyframe):
3313         (CCFloatKeyframe):
3314         (WebCore):
3315         (CCTransformKeyframe):
3316         (CCKeyframedFloatAnimationCurve):
3317         (CCKeyframedTransformAnimationCurve):
3318         * platform/graphics/chromium/cc/CCLayerAnimationController.cpp:
3319         * platform/graphics/chromium/cc/CCTimingFunction.cpp: Added.
3320         (WebCore):
3321         (WebCore::CCTimingFunction::CCTimingFunction):
3322         (WebCore::CCTimingFunction::~CCTimingFunction):
3323         (WebCore::CCTimingFunction::duration):
3324         (WebCore::CCCubicBezierTimingFunction::create):
3325         (WebCore::CCCubicBezierTimingFunction::CCCubicBezierTimingFunction):
3326         (WebCore::CCCubicBezierTimingFunction::~CCCubicBezierTimingFunction):
3327         (WebCore::CCCubicBezierTimingFunction::getValue):
3328         (WebCore::CCCubicBezierTimingFunction::clone):
3329         (WebCore::CCEaseTimingFunction::create):
3330         (WebCore::CCEaseInTimingFunction::create):
3331         (WebCore::CCEaseOutTimingFunction::create):
3332         (WebCore::CCEaseInOutTimingFunction::create):
3333         * platform/graphics/chromium/cc/CCTimingFunction.h: Added.
3334         (WebCore):
3335         (CCTimingFunction):
3336         (CCCubicBezierTimingFunction):
3337         (CCEaseTimingFunction):
3338         (CCEaseInTimingFunction):
3339         (CCEaseOutTimingFunction):
3340         (CCEaseInOutTimingFunction):
3341
3342 2012-02-29  Shinya Kawanaka  <shinyak@chromium.org>
3343
3344         Methods in ShadowTree and TreeScopeAdopter should be multiple shadow roots aware.
3345         https://bugs.webkit.org/show_bug.cgi?id=79768
3346
3347         Reviewed by Hajime Morita.
3348
3349         Some methods in ShadowTree and TreeScopeAdopter were not multiple shadow roots aware.
3350         They should consider multiple shadow roots.
3351
3352         Test: fast/dom/shadow/multiple-shadowroot-adopt.html
3353
3354         * dom/ShadowTree.cpp:
3355         (WebCore::ShadowTree::setParentTreeScope):
3356         (WebCore):
3357         (WebCore::ShadowTree::childNeedsStyleRecalc):
3358         (WebCore::ShadowTree::needsStyleRecalc):
3359         * dom/ShadowTree.h:
3360         (WebCore):
3361         (ShadowTree):
3362         * dom/TreeScopeAdopter.cpp:
3363         (WebCore::shadowTreeFor):
3364         (WebCore::TreeScopeAdopter::moveTreeToNewScope):
3365         (WebCore::TreeScopeAdopter::moveTreeToNewDocument):
3366         (WebCore::TreeScopeAdopter::moveShadowTreeToNewDocument):
3367         (WebCore):
3368         * dom/TreeScopeAdopter.h:
3369         (TreeScopeAdopter):
3370
3371 2012-02-29  David Levin  <levin@chromium.org>
3372
3373         [chromium] Add the ability to turn off autoresize.
3374         https://bugs.webkit.org/show_bug.cgi?id=77452
3375
3376         Reviewed by Darin Fisher.
3377
3378         Test: fast/autoresize/turn-off-autoresize.html
3379
3380         * page/FrameView.cpp:
3381         (WebCore::FrameView::enableAutoSizeMode): Fix the code
3382         path for turning off autoresize to set the scrollbars to auto.
3383
3384 2012-02-29  David Barton  <dbarton@mathscribe.com>
3385
3386         <msubsup> setNeedsLayout() correction
3387         https://bugs.webkit.org/show_bug.cgi?id=79856
3388
3389         Reviewed by Julien Chaffraix.
3390
3391         m_scripts->setNeedsLayout(true, false); needs to be added to the fix for bug 79274.
3392
3393         No new tests. It's actually difficult to test the need for this with the current code,
3394         because there are a lot of extra setNeedsLayout() calls right now. I caught this after
3395         removing some of those calls that should be redundant, for a future patch. Actually
3396         removing those calls now changes other behavior, due to other bugs, so I'll save all
3397         that for future patches. We should land this fix now though I think, as it could
3398         possibly matter in some cases.
3399
3400         * rendering/mathml/RenderMathMLSubSup.cpp:
3401         (WebCore::RenderMathMLSubSup::layout):
3402
3403 2012-02-29  Andreas Kling  <awesomekling@apple.com>
3404
3405         IsSynchronizingStyleAttributeFlag could be purged.
3406         <http://webkit.org/b/79313>
3407
3408         Reviewed by Anders Carlsson.
3409
3410         We were using IsSynchronizingStyleAttributeFlag to prevent various things from
3411         happening below setAttribute() when serializing the "style" attribute based on
3412         an element's inline style.
3413
3414         Simplify the whole thing by adding a way to set an attribute without triggering
3415         any callbacks (a 'notifyChanged' argument to Element::setAttribute().)
3416         This removes the need for IsSynchronizingStyleAttributeFlag in the first place
3417         and makes StyledElement::updateStyleAttribute() a bit cheaper to boot.
3418
3419         * dom/Element.cpp:
3420         (WebCore::Element::setAttribute):
3421         (WebCore::Element::setAttributeInternal):
3422         (WebCore::Element::willModifyAttribute):
3423         (WebCore::Element::didModifyAttribute):
3424         (WebCore::Element::didRemoveAttribute):
3425         * dom/Element.h:
3426         * dom/Node.h:
3427         * dom/StyledElement.cpp:
3428         (WebCore::StyledElement::updateStyleAttribute):
3429         (WebCore::StyledElement::attributeChanged):
3430         * html/HTMLElement.cpp:
3431         (WebCore::StyledElement::copyNonAttributeProperties):
3432
3433 2012-02-29  Daniel Cheng  <dcheng@chromium.org>
3434
3435         [chromium] REGRESSION: Cannot drag a file out
3436         https://bugs.webkit.org/show_bug.cgi?id=79817
3437
3438         Reviewed by Ryosuke Niwa.
3439
3440         Temporary fix for file drag out. This change won't be needed once DataTransferItemList
3441         support is better implemented.
3442
3443         Test: platform/chromium/fast/events/drag-downloadURL.html
3444
3445         * platform/chromium/ChromiumDataObject.cpp:
3446         (WebCore::ChromiumDataObject::types):
3447
3448 2012-02-29  Luke Macpherson   <macpherson@chromium.org>
3449
3450         Clean up CSSPrimitiveValue::computeLengthDouble().
3451         https://bugs.webkit.org/show_bug.cgi?id=77065
3452
3453         Reviewed by Eric Seidel.
3454
3455         Refactoring only / no behavioral change.
3456
3457         * css/CSSPrimitiveValue.cpp:
3458         (WebCore::CSSPrimitiveValue::computeLengthDouble):
3459
3460 2012-02-29  Beth Dakin  <bdakin@apple.com>
3461
3462         Speculative build-fix.
3463
3464         * rendering/RenderImage.cpp:
3465         (WebCore::RenderImage::paintReplaced):
3466
3467 2012-02-29  Beth Dakin  <bdakin@apple.com>
3468
3469         https://bugs.webkit.org/show_bug.cgi?id=79705
3470         didNewFirstVisuallyNonEmptyLayout should be enhanced to look at size instead 
3471         of a raw tally
3472         -and corresponding-
3473         <rdar://problem/10821314>
3474
3475         Reviewed by Dave Hyatt.