[CSS Exclusions] Update wrap-margin/padding to shape-margin/padding
[WebKit-https.git] / Source / WebCore / ChangeLog
1 2012-11-13  Bem Jones-Bey  <bjonesbe@adobe.com>
2
3         [CSS Exclusions] Update wrap-margin/padding to shape-margin/padding
4         https://bugs.webkit.org/show_bug.cgi?id=97736
5
6         Reviewed by Andreas Kling.
7
8         Rename properties to match updated spec.
9
10         Tests: fast/exclusions/shape-margin-parsing.html
11                fast/exclusions/shape-padding-parsing.html
12
13         * css/CSSComputedStyleDeclaration.cpp:
14         (WebCore):
15         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
16         * css/CSSParser.cpp:
17         (WebCore::isSimpleLengthPropertyID):
18         (WebCore::CSSParser::parseValue):
19         * css/CSSProperty.cpp:
20         (WebCore::CSSProperty::isInheritedProperty):
21         * css/CSSPropertyNames.in:
22         * css/StyleBuilder.cpp:
23         (WebCore::StyleBuilder::StyleBuilder):
24         * css/StylePropertySet.cpp:
25         (WebCore::StylePropertySet::asText):
26         * css/StylePropertyShorthand.cpp:
27         (WebCore::webkitWrapShorthand):
28         * css/StyleResolver.cpp:
29         (WebCore::StyleResolver::applyProperty):
30         * rendering/style/RenderStyle.cpp:
31         (WebCore::RenderStyle::diff):
32         * rendering/style/RenderStyle.h:
33         * rendering/style/StyleRareNonInheritedData.cpp:
34         (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
35         (WebCore::StyleRareNonInheritedData::operator==):
36         * rendering/style/StyleRareNonInheritedData.h:
37         (StyleRareNonInheritedData):
38
39 2012-11-13  Dimitri Glazkov  <dglazkov@chromium.org>
40
41         Unreviewed, rolling out r134418.
42         http://trac.webkit.org/changeset/134418
43         https://bugs.webkit.org/show_bug.cgi?id=101903
44
45         The newly added test is crashing on cr-win.
46
47         * dom/ElementShadow.cpp:
48         * dom/ElementShadow.h:
49         * html/HTMLInputElement.cpp:
50         (WebCore::HTMLInputElement::updateType):
51         (WebCore::HTMLInputElement::setIndeterminate):
52         * html/HTMLProgressElement.cpp:
53         (WebCore::HTMLProgressElement::didElementStateChange):
54         * html/shadow/SelectRuleFeatureSet.cpp:
55         (WebCore::SelectRuleFeatureSet::add):
56         (WebCore::SelectRuleFeatureSet::clear):
57         (WebCore::SelectRuleFeatureSet::collectFeaturesFromSelector):
58         * html/shadow/SelectRuleFeatureSet.h:
59         (SelectRuleFeatureSet):
60
61 2012-11-13  Dimitri Glazkov  <dglazkov@chromium.org>
62
63         Unreviewed, rolling out r134391.
64         http://trac.webkit.org/changeset/134391
65         https://bugs.webkit.org/show_bug.cgi?id=99660
66
67         Speculative rollout, trying to fix browser_tests failure.
68
69         * English.lproj/localizedStrings.js:
70         * inspector/Inspector.json:
71         * inspector/InspectorClient.h:
72         * inspector/InspectorPageAgent.cpp:
73         (PageAgentState):
74         (WebCore::InspectorPageAgent::enable):
75         (WebCore::InspectorPageAgent::disable):
76         * inspector/InspectorPageAgent.h:
77         * inspector/front-end/Settings.js:
78         * inspector/front-end/SettingsScreen.js:
79         (WebInspector.GenericSettingsTab):
80         * inspector/front-end/inspector.js:
81         (WebInspector.doLoadedDone):
82
83 2012-11-13  Sheriff Bot  <webkit.review.bot@gmail.com>
84
85         Unreviewed, rolling out r134205.
86         http://trac.webkit.org/changeset/134205
87         https://bugs.webkit.org/show_bug.cgi?id=102093
88
89         Broke webkit-flow-inlines-dynamic.html on several ports
90         (Requested by mihnea on #webkit).
91
92         * css/StyleResolver.cpp:
93         (WebCore::StyleResolver::isValidRegionStyleProperty):
94         * rendering/InlineBox.cpp:
95         * rendering/InlineBox.h:
96         (WebCore):
97         (InlineBox):
98         * rendering/InlineFlowBox.cpp:
99         (WebCore::InlineFlowBox::addToLine):
100         (WebCore::InlineFlowBox::addTextBoxVisualOverflow):
101         * rendering/RenderRegion.cpp:
102         (WebCore::RenderRegion::setRegionObjectsRegionStyle):
103         (WebCore::RenderRegion::restoreRegionObjectsOriginalStyle):
104         (WebCore::RenderRegion::computeStyleInRegion):
105         (WebCore::RenderRegion::computeChildrenStyleInRegion):
106         (WebCore::RenderRegion::setObjectStyleInRegion):
107         (WebCore::RenderRegion::clearObjectStyleInRegion):
108         * rendering/RenderRegion.h:
109         (RenderRegion):
110         (ObjectRegionStyleInfo):
111
112 2012-11-13  Andreas Kling  <kling@webkit.org>
113
114         Remove the non-const overload of ElementAttributeData::inlineStyle().
115
116         Rubber-stamped by Anders Koivisto.
117
118         No call sites actually needed a mutable StylePropertySet* from inlineStyle() anyway.
119
120         * dom/ElementAttributeData.h:
121
122 2012-11-13  Keishi Hattori  <keishi@webkit.org>
123
124         [Chromium] Enable input type month/week
125         https://bugs.webkit.org/show_bug.cgi?id=102042
126
127         Reviewed by Kent Tamura.
128
129         Enable input type month/week for Chromium.
130
131         No new tests. Tests will be added later in Bug 102045 and Bug 102046.
132
133         * bindings/generic/RuntimeEnabledFeatures.cpp:
134         (WebCore):
135
136 2012-11-13  Shinya Kawanaka  <shinyak@chromium.org>
137
138         [Refactoring] Remove shadowPseudoId() and use setPseudo() in <meter> ElementShadow.
139         https://bugs.webkit.org/show_bug.cgi?id=101906
140
141         Reviewed by Dimitri Glazkov.
142
143         We're migrating shadowPseudoId() to pseudo(). We remove shadowPseudoId() from HTMLKeygenElement and use
144         setPseudo()/pseudo() instead.
145
146         No new tests, covered by existing tests.
147
148         * html/HTMLMeterElement.cpp:
149         (WebCore::HTMLMeterElement::didElementStateChange): Since shadowPseudoId() was returning pseudo id without setting
150         it anywhere, we have to set it into pseudo attribute here.
151         (WebCore::HTMLMeterElement::createShadowSubtree): ditto.
152         * html/shadow/MeterShadowElement.cpp:
153         (WebCore::MeterInnerElement::MeterInnerElement):
154         (WebCore::MeterValueElement::valuePseudoId):
155         * html/shadow/MeterShadowElement.h:
156         (MeterInnerElement):
157         (WebCore::MeterBarElement::MeterBarElement):
158         (MeterBarElement):
159         (WebCore::MeterValueElement::MeterValueElement):
160         (WebCore::MeterValueElement::updatePseudo):
161         (MeterValueElement):
162
163 2012-11-13  Shinya Kawanaka  <shinyak@chromium.org>
164
165         Changing pseudoClass (:indeterminate) should cause distribution
166         https://bugs.webkit.org/show_bug.cgi?id=101903
167
168         Reviewed by Dimitri Glazkov.
169
170         <progress> and <input type="checkbox"> have 'indeterminate' state. When their state is changed, we have to
171         invalidate distribution if necessary. To check it, we collect a feature that :invalidate is used in select attributes.
172
173         For <input>, we also have to see 'type' is changed. According to the spec, :indeterminate should match only
174         progress element or <input type="checkbox">. So changing 'type' might also change :indeterminate state.
175
176         Tests: fast/dom/shadow/pseudoclass-update-indeterminate-input.html
177                fast/dom/shadow/pseudoclass-update-indeterminate-progress.html
178
179         * dom/ElementShadow.cpp:
180         (WebCore::invalidateParentDistributionIfNecessary): Since we will add a lot of pseudoClass check later, we would like to
181         have this kind of helper method. We will add various pseudoClass check (see Bug 101697), we reuse CSSSelector::PseudoType
182         here.
183         (WebCore):
184         * dom/ElementShadow.h:
185         (WebCore):
186         * html/HTMLInputElement.cpp:
187         (WebCore::HTMLInputElement::updateType): Invalidate parent distribution anyway, since it changes various internal states.
188         (WebCore::HTMLInputElement::setIndeterminate): Invalidate parent distribution if necessary.
189         * html/HTMLProgressElement.cpp:
190         (WebCore::HTMLProgressElement::didElementStateChange):
191         * html/shadow/SelectRuleFeatureSet.cpp:
192         (WebCore::SelectRuleFeatureSet::SelectRuleFeatureSet): Adds m_usesIndeterminate feature.
193         (WebCore::SelectRuleFeatureSet::add):
194         (WebCore::SelectRuleFeatureSet::clear):
195         (WebCore::SelectRuleFeatureSet::collectFeaturesFromSelector):
196         * html/shadow/SelectRuleFeatureSet.h:
197         (WebCore::SelectRuleFeatureSet::hasSelectorForIndeterminate):
198         (SelectRuleFeatureSet):
199
200 2012-11-13  Andreas Kling  <kling@webkit.org>
201
202         Exploit ElementAttributeData sharing in Node.cloneNode.
203         <http://webkit.org/b/101374>
204
205         Reviewed by Anders Carlsson.
206
207         Instead of blindly creating a new ElementAttributeData for Node.cloneNode, let's be clever!
208         If the source data is immutable, simply ref it from the new node at virtually no cost.
209
210         If the source data is mutable, convert it to immutable data so it can be shared between both nodes.
211         Since the typical use-case for Node.cloneNode is to create-once/clone-many, this saves both time
212         and memory in the long run.
213
214         ~8% speed-up on PerformanceTests/DOM/CloneNodes on my MBP.
215
216         * dom/Element.cpp:
217         (WebCore::Element::cloneAttributesFromElement):
218
219             Move attribute data cloning logic from ElementAttributeData to Element.
220
221         * dom/ElementAttributeData.cpp:
222         (WebCore::ImmutableElementAttributeData::~ImmutableElementAttributeData):
223         (WebCore::ImmutableElementAttributeData::ImmutableElementAttributeData):
224         (WebCore::ElementAttributeData::ElementAttributeData):
225         (WebCore::MutableElementAttributeData::MutableElementAttributeData):
226         (WebCore::ElementAttributeData::makeMutableCopy):
227         (WebCore::ElementAttributeData::makeImmutableCopy):
228         * dom/ElementAttributeData.h:
229         (ElementAttributeData):
230         (ImmutableElementAttributeData):
231         (MutableElementAttributeData):
232
233             Add facilities for converting a mutable ElementAttributeData to an immutable one.
234             Share some code in the common base class constructor.
235
236 2012-11-13  Kentaro Hara  <haraken@chromium.org>
237
238         Unreviewed. Build fix of V8 bindings.
239
240         * bindings/v8/V8DOMWrapper.cpp:
241         (WebCore::V8DOMWrapper::maybeDOMWrapper):
242
243 2012-11-13  Andrey Adaikin  <aandrey@chromium.org>
244
245         Web Inspector: [Canvas] UI: make the Grid save scrolling position, show wait spinner icon
246         https://bugs.webkit.org/show_bug.cgi?id=102071
247
248         Reviewed by Pavel Feldman.
249
250         * inspector/front-end/CanvasProfileView.js:
251         (WebInspector.CanvasProfileView):
252         (WebInspector.CanvasProfileView.prototype.dispose):
253         (WebInspector.CanvasProfileView.prototype.elementsToRestoreScrollPositionsFor):
254         (WebInspector.CanvasProfileView.prototype._enableWaitIcon):
255         (WebInspector.CanvasProfileView.prototype._replayTraceLog.didReplayTraceLog):
256         (WebInspector.CanvasProfileView.prototype._replayTraceLog):
257         (WebInspector.CanvasProfileView.prototype._didReceiveTraceLog):
258         (WebInspector.CanvasProfileView.prototype._createCallNode):
259         * inspector/front-end/canvasProfiler.css:
260         (#canvas-replay-image.wait):
261
262 2012-11-13  Eugene Klyuchnikov  <eustas.bug@gmail.com>
263
264         Web Inspector: Settings screen: some panel shortcuts are missing
265         https://bugs.webkit.org/show_bug.cgi?id=101026
266
267         Reviewed by Pavel Feldman.
268
269         Panels, that have not been loaded by the time shortcuts view was
270         initialized, had no chance to register shortcuts.
271
272         Solution: move shortcut registration (for shortcuts screen) to panel
273         descriptors.
274
275         More changes: add JsDoc annotations to ShortcutScreen and change "key"
276         parameter type for raw string to key descriptor object.
277
278         * WebCore.gypi: Added TimelinePanelDescriptor.js file.
279         * WebCore.vcproj/WebCore.vcproj: Ditto.
280         * inspector/compile-front-end.py: Ditto.
281         * inspector/front-end/WebKit.qrc: Ditto.
282         * inspector/front-end/inspector.html: Ditto.
283         * inspector/front-end/AdvancedSearchController.js: Add JsDoc annotation.
284         * inspector/front-end/GoToLineDialog.js: Ditto.
285         * inspector/front-end/CallStackSidebarPane.js: Removed shortcut-screen
286         shortcuts registration.
287         * inspector/front-end/ElementsPanel.js: Ditto.
288         * inspector/front-end/ScriptsPanel.js: Ditto.
289         * inspector/front-end/StylesSidebarPane.js: Ditto.
290         * inspector/front-end/TimelinePanel.js: Ditto.
291         * inspector/front-end/ConsoleView.js: Changes order of lines to increase
292         readability.
293         * inspector/front-end/ElementsPanelDescriptor.js: Add shortcut-screen
294         shortcuts registration and key descriptor constants.
295         * inspector/front-end/ScriptsPanelDescriptor.js: Ditto.
296         * inspector/front-end/TimelinePanelDescriptor.js: Ditto.
297         * inspector/front-end/Panel.js: Removed unused "uregisterShortcut"; made
298         "registerShortcuts" method accept array of key descriptors.
299         (WebInspector.PanelDescriptor.prototype.registerShortcuts): Added.
300         * inspector/front-end/ShortcutsScreen.js: Added JsDoc; changed parameter
301         type from string to key descriptor.
302         * inspector/front-end/inspector.js: Register shortcuts using
303         panel descriptors.
304         (WebInspector._panelDescriptors): Removed duplicate line.
305
306 2012-11-13  Gabor Rapcsanyi  <rgabor@webkit.org>
307
308         Optimize RGB565 and RGBA5551 packing/unpacking functions with NEON intrinsics
309         https://bugs.webkit.org/show_bug.cgi?id=102060
310
311         Reviewed by Zoltan Herczeg.
312
313         Adding more NEONized packing functions to GraphicsContext3DNEON.h.
314         These functions are three times faster with this intrinsics optimizations.
315
316         * platform/graphics/GraphicsContext3D.cpp:
317         (WebCore):
318         * platform/graphics/cpu/arm/GraphicsContext3DNEON.h:
319         (WebCore::ARM::unpackOneRowOfRGBA5551ToRGBA8NEON):
320         (ARM):
321         (WebCore::ARM::packOneRowOfRGBA8ToUnsignedShort5551NEON):
322         (WebCore::ARM::unpackOneRowOfRGB565ToRGBA8NEON):
323         (WebCore::ARM::packOneRowOfRGBA8ToUnsignedShort565NEON):
324
325 2012-11-13  Csaba Osztrogonác  <ossy@webkit.org>
326
327         [Qt] Enable Mutation observer
328         https://bugs.webkit.org/show_bug.cgi?id=102066
329
330         Reviewed by Pavel Feldman.
331
332         * DerivedSources.pri: Add missing IDL files.
333
334 2012-11-13  Kentaro Hara  <haraken@chromium.org>
335
336         [V8] Make isValidDOMObject() static
337         https://bugs.webkit.org/show_bug.cgi?id=101914
338
339         Reviewed by Adam Barth.
340
341         isValidDOMObject() is used by DOMWrapper.cpp only.
342
343         No tests. No change in behavior.
344
345         * bindings/v8/V8DOMWrapper.cpp:
346         (WebCore::isValidDOMObject):
347         (WebCore):
348         (WebCore::V8DOMWrapper::maybeDOMWrapper):
349         * bindings/v8/V8DOMWrapper.h:
350         (V8DOMWrapper):
351
352 2012-11-13  Mihnea Ovidenie  <mihnea@adobe.com>
353
354         [CSSRegions] Incorrect computed height for content with region-break-before
355         https://bugs.webkit.org/show_bug.cgi?id=101862
356
357         Reviewed by Julien Chaffraix.
358
359         When processing the region breaks for auto-height regions, we skipped the case
360         when the region-break-before occurred in the first region in the chain which was
361         an auto-height region. Because of that, the region computed height was not 0
362         as it was supposed to be, but rather LayoutUnit::max() / 2.
363
364         Test: fast/regions/autoheight-breakbefore-wrongheight.html
365
366         * rendering/RenderFlowThread.cpp:
367         (WebCore::RenderFlowThread::addForcedRegionBreak):
368         Make sure we process also the case when the region-break occurs at offset 0 in the flow thread
369         and the first region in chain is an auto-height region.
370         * rendering/RenderRegion.cpp:
371         (WebCore::RenderRegion::updateLogicalHeight):
372         Add an assert to make sure that the computed height for auto-height regions is always less than LayoutUnit::max() / 2.
373
374 2012-11-13  Yury Semikhatsky  <yurys@chromium.org>
375
376         Memory instrumentation: remove reportMemoryUsage method from ImageObserver
377         https://bugs.webkit.org/show_bug.cgi?id=102058
378
379         Reviewed by Pavel Feldman.
380
381         * bindings/v8/V8PerIsolateData.cpp:
382         (WebCore::V8PerIsolateData::reportMemoryUsage): drive-by fix, no need to report
383         each element of the vector as generic vector instrumentation will take care of it.
384         * platform/graphics/Image.cpp: the client is reported as weak pointer to make sure
385         we don't count its by the pointer to the base class which may differ from the actual
386         object address.
387         (WebCore::Image::reportMemoryUsage):
388         * platform/graphics/ImageObserver.h: removed reportMemoryUsage method from the interface.
389         (ImageObserver):
390
391 2012-11-13  Eberhard Graether  <egraether@google.com>
392
393         checkbox to toggle FPS counter in the inspector's settings
394         https://bugs.webkit.org/show_bug.cgi?id=99660
395
396         Reviewed by Pavel Feldman.
397
398         Added a checkbox to the inspector's settings to toggle a FPS counter. The checkbox appears when InspectorClient::canShowFPSCounter() returns true.
399
400         No new tests.
401
402         * English.lproj/localizedStrings.js:
403         * inspector/Inspector.json:
404         * inspector/InspectorClient.h:
405         (WebCore::InspectorClient::canShowFPSCounter):
406         (WebCore::InspectorClient::setShowFPSCounter):
407         (InspectorClient):
408         * inspector/InspectorPageAgent.cpp:
409         (PageAgentState):
410         (WebCore::InspectorPageAgent::enable):
411         (WebCore::InspectorPageAgent::disable):
412         (WebCore::InspectorPageAgent::canShowFPSCounter):
413         (WebCore):
414         (WebCore::InspectorPageAgent::setShowFPSCounter):
415         * inspector/InspectorPageAgent.h:
416         * inspector/front-end/Settings.js:
417         * inspector/front-end/SettingsScreen.js:
418         (WebInspector.GenericSettingsTab):
419         (WebInspector.GenericSettingsTab.prototype.get _showFPSCounterChanged):
420         * inspector/front-end/inspector.js:
421         (WebInspector.doLoadedDone):
422
423 2012-11-12  Kent Tamura  <tkent@chromium.org>
424
425         Unable to set valid time value to input[type=time] with user interaction in some cases
426         https://bugs.webkit.org/show_bug.cgi?id=102048
427
428         Reviewed by Kentaro Hara.
429
430         The implementations of shouldMillisecondFieldReadOnly,
431         shouldMinuteFieldReadOnly, and shouldSecondFieldReadOnly were
432         incorrect. We need to check if a part of the minimum value matches to
433         the corresponding part of the current value.
434
435         Also, we had better check hour field editability.
436
437         Test: fast/forms/time-multiple-fields/time-multiple-fields-readonly-subfield.html
438
439         * html/BaseMultipleFieldsDateAndTimeInputType.cpp:
440         (WebCore::BaseMultipleFieldsDateAndTimeInputType::shouldHaveSecondField):
441         Fix a problem that hh:mm:00.sss didn't create a seconds field.
442         * html/shadow/DateTimeEditElement.cpp:
443         (DateTimeEditBuilder): Add shouldHourFieldReadOnly declaration.
444         (WebCore::DateTimeEditBuilder::visitField):
445         Add shouldHourFieldReadOnly check to Hour11/Hour12/Hour23/Hour24/Period fields.
446         (WebCore::DateTimeEditBuilder::shouldHourFieldReadOnly):
447         Added. An hour field should be read-only if the step value is a multiple
448         of a day and the hour part of the minimum value matches to the hour part
449         of the value.
450         (WebCore::DateTimeEditBuilder::shouldMillisecondFieldReadOnly):
451         A millisecond field should be read-only if the step value is a multiple
452         of one second and the millisecond part of the minimum value matches to
453         the millisecond part of the value.
454         (WebCore::DateTimeEditBuilder::shouldMinuteFieldReadOnly):
455         A minute field should be read-only if the step value is a multiple of
456         one hour and the minute part of the minimum value matches to the minute
457         part of the value.
458         (WebCore::DateTimeEditBuilder::shouldSecondFieldReadOnly):
459         A second field should be read-only if the step value is a multiple of
460         one minute and the second part of the minimum value matches to the second
461         part of the value.
462         * platform/Decimal.cpp:
463         (WebCore::Decimal::remainder):
464         Fix a bug in case that the fractional part of quotient is >= 0.5. Also
465         make this matches to C99, C++11, ECMAScript behavior.
466
467 2012-11-13  Yury Semikhatsky  <yurys@chromium.org>
468
469         Memory instrumentation: MemoryBlock name should not include full path to the block
470         https://bugs.webkit.org/show_bug.cgi?id=102055
471
472         Reviewed by Pavel Feldman.
473
474         * inspector/InspectorMemoryAgent.cpp: pass only last path component as MemoryBlock name
475         intead of fully qualified name.
476
477 2012-11-13  Pavel Feldman  <pfeldman@chromium.org>
478
479         Web Inspector: get rid of enter/exitTextChangeMode in the editor
480         https://bugs.webkit.org/show_bug.cgi?id=101845
481
482         Reviewed by Vsevolod Vlasov.
483
484         They seem to do nothing.
485
486         * inspector/front-end/DefaultTextEditor.js:
487         (WebInspector.DefaultTextEditor.prototype._textChanged):
488         (WebInspector.DefaultTextEditor.prototype.editRange):
489         (WebInspector.TextEditorMainPanel):
490         (WebInspector.TextEditorMainPanel.prototype.handleUndoRedo):
491         (WebInspector.TextEditorMainPanel.prototype.handleEnterKey.get var):
492         (WebInspector.TextEditorMainPanel.prototype.handleEnterKey):
493         (WebInspector.TextEditorMainPanel.prototype._applyDomUpdates):
494         * inspector/front-end/TextEditorModel.js:
495         (WebInspector.TextEditorModel.endsWithBracketRegex.):
496
497 2012-11-13  Tommy Widenflycht  <tommyw@google.com>
498
499         Remove the custom WebSocket::send for both V8 and JSC
500         https://bugs.webkit.org/show_bug.cgi?id=101936
501
502         Reviewed by Kentaro Hara.
503
504         This patch removes the custom WebSocket::send since it isn't needed anymore.
505
506         Patch covered by existing tests.
507
508         * Modules/websockets/WebSocket.idl:
509         * UseV8.cmake:
510         * WebCore.gypi:
511         * bindings/js/JSWebSocketCustom.cpp:
512         * bindings/v8/custom/V8WebSocketCustom.cpp: Removed.
513
514 2012-11-13  Pavel Feldman  <pfeldman@chromium.org>
515
516         Web Inspector: move indentation logic into TextEditorModel
517         https://bugs.webkit.org/show_bug.cgi?id=101842
518
519         Reviewed by Vsevolod Vlasov.
520
521         I'd like to move as much headless logic into the TextEditorModel as possible.
522         Drive by: removed some dead code, converted getter into function and moved undo
523         mark state into the model as well.
524
525         * inspector/front-end/DefaultTextEditor.js:
526         (WebInspector.DefaultTextEditor.prototype.editRange):
527         (WebInspector.DefaultTextEditor.prototype._syncDecorationsForLine):
528         (WebInspector.TextEditorChunkedPanel.prototype._splitChunkOnALine):
529         (WebInspector.TextEditorMainPanel.prototype.handleEnterKey.get var):
530         (WebInspector.TextEditorMainPanel.prototype.handleEnterKey):
531         (WebInspector.TextEditorMainPanel.prototype._applyDomUpdates):
532         (WebInspector.TextEditorMainPanel.prototype._updateChunksForRanges):
533         (WebInspector.TextEditorMainChunk):
534         (WebInspector.TextEditorMainChunk.prototype.isDecorated):
535         (WebInspector.TextEditorMainChunk.prototype.set expanded):
536         * inspector/front-end/TextEditorModel.js:
537         (WebInspector.TextEditorModel.endsWithBracketRegex.):
538
539 2012-11-13  Hayato Ito  <hayato@chromium.org>
540
541         Unreviewed attempt to fix the chromium mac-build after r134348.
542
543         * platform/graphics/mac/FontMac.mm:
544         (WebCore::Font::drawGlyphs):
545         * platform/mac/WebCoreSystemInterface.h:
546         * platform/mac/WebCoreSystemInterface.mm:
547
548 2012-11-13  Pavel Feldman  <pfeldman@chromium.org>
549
550         Web Inspector: migrate text editor to mutation observers
551         https://bugs.webkit.org/show_bug.cgi?id=101841
552
553         Reviewed by Vsevolod Vlasov.
554
555         Otherwise, we miss notifications on the removed lines.
556
557         * inspector/front-end/DefaultTextEditor.js:
558         (WebInspector.DefaultTextEditor.prototype.wasShown):
559         (WebInspector.DefaultTextEditor.prototype.willHide):
560         (WebInspector.TextEditorChunkedPanel.prototype._repaintAll):
561         (WebInspector.TextEditorMainPanel):
562         (WebInspector.TextEditorMainPanel.prototype._wasShown):
563         (WebInspector.TextEditorMainPanel.prototype._willHide):
564         (WebInspector.TextEditorMainPanel.prototype.markAndRevealRange):
565         (WebInspector.TextEditorMainPanel.prototype.beginDomUpdates):
566         (WebInspector.TextEditorMainPanel.prototype.endDomUpdates):
567         (WebInspector.TextEditorMainPanel.prototype._paintScheduledLines):
568         (WebInspector.TextEditorMainPanel.prototype._paintLineChunks):
569         (WebInspector.TextEditorMainPanel.prototype._paintLine):
570         (WebInspector.TextEditorMainPanel.prototype._insertSpanBefore):
571         (WebInspector.TextEditorMainPanel.prototype._handleMutations.else.get if):
572         (WebInspector.TextEditorMainPanel.prototype._handleMutations):
573         (WebInspector.TextEditorMainPanel.prototype._collectDirtyLines):
574         (WebInspector.TextEditorMainPanel.prototype._applyDomUpdates):
575         * inspector/front-end/externs.js:
576         (WebKitMutation):
577         (WebKitMutationObserver.prototype.observe):
578         (WebKitMutationObserver.prototype.disconnect):
579         * inspector/front-end/textEditor.css:
580         (.debug-fadeout):
581         (@-webkit-keyframes debug-fadeout):
582         (to):
583
584 2012-11-13  Gabor Rapcsanyi  <rgabor@webkit.org>
585
586         Optimize RGBA4444ToRGBA8 packing/unpacking functions with NEON intrinsics in GraphicsContext3D
587         https://bugs.webkit.org/show_bug.cgi?id=101473
588
589         Reviewed by Zoltan Herczeg.
590
591         With NEON intrinsics the packing/unpacking functions can be optimized well.
592         This particular function is about 3 times faster with ARM NEON. On top level tests
593         the speed up was 1.18x.
594
595         * CMakeLists.txt:
596         * GNUmakefile.am:
597         * GNUmakefile.list.am:
598         * Target.pri:
599         * WebCore.gyp/WebCore.gyp:
600         * WebCore.gypi:
601         * WebCore.pri:
602         * WebCore.xcodeproj/project.pbxproj:
603         * platform/graphics/GraphicsContext3D.cpp:
604         (WebCore):
605         * platform/graphics/cpu/arm/GraphicsContext3DNEON.h: Added.
606         (WebCore):
607         (ARM):
608         (WebCore::ARM::unpackOneRowOfRGBA4444ToRGBA8NEON):
609         (WebCore::ARM::packOneRowOfRGBA8ToUnsignedShort4444NEON):
610
611 2012-11-13  Takashi Sakamoto  <tasak@google.com>
612
613         Crash when replacing parts of text inputs with content: url(...)
614         https://bugs.webkit.org/show_bug.cgi?id=101133
615
616         Reviewed by Kent Tamura.
617
618         Disable directly setting content of elements in an input element's
619         shadow dom tree, because the setting breaks input element's behavior.
620
621         Tests: fast/forms/number/number-content-url-crash.html
622                fast/forms/search/search-content-url-crash.html
623
624         * css/html.css:
625         (input::-webkit-textfield-decoration-container):
626         Use important to disable overriding an input element's content
627         property.
628         * html/TextFieldInputType.cpp:
629         (WebCore::TextFieldInputType::attach):
630         Added ASSERTION. No content should be applied to
631         input::-webkit-textfield-decoration-container.
632
633 2012-11-12  Huang Dongsung  <luxtella@company100.net>
634
635         [Qt] REGRESSION(134142): overscaled tiles in pixel test results and MiniBrowser
636         https://bugs.webkit.org/show_bug.cgi?id=101918
637
638         Reviewed by Noam Rosenthal.
639
640         Remove TiledBackingStore::rect(), because it is not used anymore.
641
642         * platform/graphics/TiledBackingStore.h:
643         (TiledBackingStore):
644
645 2012-11-12  Adam Barth  <abarth@webkit.org>
646
647         [V8] We should be able to recover the V8DOMWindowShell more quickly
648         https://bugs.webkit.org/show_bug.cgi?id=102020
649
650         Reviewed by Kentaro Hara.
651
652         For isolated worlds, we used to store the V8DOMWindowShell as an
653         internal field of the inner DOM window. This patch moves the pointer to
654         an internal field of the v8::Context, which saves us the work of
655         looking up the inner DOM window.
656
657         Unfortunately, we cannot store the V8DOMWindowShell in V8PerContextData
658         because the V8DOMWindowShell outlives the V8PerContextData. (We destroy
659         the V8PerContextData when we detach the V8DOMWindowShell from the
660         frame.)
661
662         * bindings/scripts/CodeGeneratorV8.pm:
663         (GetInternalFields):
664         * bindings/v8/V8DOMWindowShell.cpp:
665         (WebCore::V8DOMWindowShell::initializeIfNeeded):
666         * bindings/v8/V8DOMWindowShell.h:
667         (WebCore::V8DOMWindowShell::getEntered):
668         * bindings/v8/V8PerContextData.h:
669
670 2012-11-12  Kentaro Hara  <haraken@chromium.org>
671
672         [V8] Add ASSERT() to guarantee that we don't store NULL pointers to V8 internal fields
673         https://bugs.webkit.org/show_bug.cgi?id=101054
674
675         Reviewed by Adam Barth.
676
677         I'm investigating a Chromium crash bug:
678         http://code.google.com/p/chromium/issues/detail?id=155942
679
680         I've not yet identified the root cause (because I can't reproduce
681         the crash), but it looks like we are storing NULL pointers to
682         V8 internal fields. Just in case, we can add an ASSERT() to
683         guarantee that NULL pointers are never stored. (Also I'm hoping
684         that this ASSERT() will give me more debug information.)
685
686         No tests. No change in behavior.
687
688         * bindings/v8/V8DOMWrapper.h:
689         (WebCore::V8DOMWrapper::setDOMWrapper):
690
691 2012-11-12  Shinya Kawanaka  <shinyak@chromium.org>
692
693         Changing id, className, or attribute should invalidate distribution
694         https://bugs.webkit.org/show_bug.cgi?id=100738
695
696         Reviewed by Dimitri Glazkov.
697
698         When id, className, or attribute is changed, we might have to invalidate distribution.
699         However, we don't want to do useless invalidation. So we consult with the RuleFeatureSet of ElementShadow,
700         and invalidate distribution only if necessary.
701
702         When className is changed, we can share a lot of code between invalidating distribution and invalidating style.
703         So we made checkNeedsStyleInvalidationForClassChange a template method, and share it.
704
705         Also we've measured how this patch makes changing attribute slow. By converting checkNeedsStyleInvalidationForClassChange
706         to template, actually this improves the performance of changing attribute code. I've measured each code 3 times.
707
708         DOM/ModifyAttribute.html
709         Before this patch:
710                 median  stdev  min      max    [ms]
711           1st   115.62   0.67  114.75   117.00
712           2nd   115.08   1.13  113.25   117.58
713           3rd   114.75   1.16  113.42   117.83
714
715         After this patch:
716                 median  stdev  min      max    [ms]
717           1st   102.55   0.95  101.25   104.50
718           2nd   103.10   0.86  102.20   100.95
719           3rd   103.30   1.05  102.10   106.65
720
721         Tests: fast/dom/shadow/distribution-attribute-modified.html
722                fast/dom/shadow/distribution-className-modified.html
723                fast/dom/shadow/distribution-id-modified.html
724                fast/dom/shadow/reprojection-attribute-modified.html
725                fast/dom/shadow/reprojection-className-modified.html
726                fast/dom/shadow/reprojection-id-modified.html
727
728         * dom/Element.cpp:
729         (WebCore::Element::attributeChanged):
730         (WebCore::HasSelectorForClassStyleFunctor::HasSelectorForClassStyleFunctor):
731         (HasSelectorForClassStyleFunctor):
732         (WebCore::HasSelectorForClassStyleFunctor::operator()): Returns true if StyleResolver::hasSelectorForClass returns true.
733         (WebCore):
734         (WebCore::HasSelectorForClassDistributionFunctor::HasSelectorForClassDistributionFunctor):
735         (HasSelectorForClassDistributionFunctor):
736         (WebCore::HasSelectorForClassDistributionFunctor::operator()): Returns true if ElementShadow::hasSelectorForClass returns true.
737         (WebCore::checkFunctorForClassChange):
738         (WebCore::checkNeedsStyleInvalidationForClassChange): Extacted the implementation to checkFunctorForClassChange.
739         (WebCore::checkNeedsDistributionInvalidationForClassChange):
740         (WebCore::Element::classAttributeChanged):
741
742 2012-11-12  Joe Mason  <jmason@rim.com>
743
744         [BlackBerry] NetworkJob should not check if data is received with HEAD
745         https://bugs.webkit.org/show_bug.cgi?id=102034
746
747         Reviewed by George Staikos.
748
749         Internal PR: 241391
750
751         Make HEAD requests call didFinish instead of didFail on a 404 response, even though they
752         have no data.
753
754         Tests: ManualTests/blackberry/head-xhr-nonexistant-file.html
755
756         * platform/network/blackberry/NetworkJob.cpp:
757         (WebCore::NetworkJob::NetworkJob):
758         (WebCore::NetworkJob::initialize):
759         (WebCore::NetworkJob::shouldNotifyClientFailed):
760         * platform/network/blackberry/NetworkJob.h:
761         (NetworkJob):
762
763 2012-11-12  Adam Barth  <abarth@webkit.org>
764
765         [V8] V8DOMWrapper::instantiateV8Object shouldn't use deprecatedDocument
766         https://bugs.webkit.org/show_bug.cgi?id=102015
767
768         Reviewed by Kentaro Hara.
769
770         Previously, Nodes had a special path through
771         V8DOMWrapper::instantiateV8Object using deprecatedDocument so that we
772         could find the V8PerContextData quickly. Now that we can get the
773         V8PerContextData from the v8::Context quickly, we can move Nodes to the
774         general case. The net consequence is that creation of all DOM objects
775         should be as fast as Nodes are.
776
777         * bindings/scripts/CodeGeneratorV8.pm:
778         (GenerateToV8Converters):
779         * bindings/scripts/test/V8/V8Float64Array.cpp:
780         (WebCore::V8Float64Array::wrapSlow):
781         * bindings/scripts/test/V8/V8TestActiveDOMObject.cpp:
782         (WebCore::V8TestActiveDOMObject::wrapSlow):
783         * bindings/scripts/test/V8/V8TestCustomNamedGetter.cpp:
784         (WebCore::V8TestCustomNamedGetter::wrapSlow):
785         * bindings/scripts/test/V8/V8TestEventConstructor.cpp:
786         (WebCore::V8TestEventConstructor::wrapSlow):
787         * bindings/scripts/test/V8/V8TestEventTarget.cpp:
788         (WebCore::V8TestEventTarget::wrapSlow):
789         * bindings/scripts/test/V8/V8TestException.cpp:
790         (WebCore::V8TestException::wrapSlow):
791         * bindings/scripts/test/V8/V8TestInterface.cpp:
792         (WebCore::V8TestInterface::wrapSlow):
793         * bindings/scripts/test/V8/V8TestMediaQueryListListener.cpp:
794         (WebCore::V8TestMediaQueryListListener::wrapSlow):
795         * bindings/scripts/test/V8/V8TestNamedConstructor.cpp:
796         (WebCore::V8TestNamedConstructor::wrapSlow):
797         * bindings/scripts/test/V8/V8TestNode.cpp:
798         (WebCore::V8TestNode::wrapSlow):
799         * bindings/scripts/test/V8/V8TestObj.cpp:
800         (WebCore::V8TestObj::wrapSlow):
801         * bindings/scripts/test/V8/V8TestOverloadedConstructors.cpp:
802         (WebCore::V8TestOverloadedConstructors::wrapSlow):
803         * bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.cpp:
804         (WebCore::V8TestSerializedScriptValueInterface::wrapSlow):
805         * bindings/v8/V8Binding.cpp:
806         * bindings/v8/V8Binding.h:
807         (WebCore):
808         * bindings/v8/V8DOMWrapper.cpp:
809         (WebCore::V8DOMWrapper::instantiateV8Object):
810         * bindings/v8/V8DOMWrapper.h:
811         (V8DOMWrapper):
812
813 2012-11-12  KyungTae Kim  <ktf.kim@samsung.com>
814
815         Some CSS properties are not handled on StyleResolver::applyProperty
816         https://bugs.webkit.org/show_bug.cgi?id=102027
817
818         Reviewed by Gyuyoung Kim.
819
820         The CSSPropertyMaxZoom, CSSPropertyMinZoom, CSSPropertyOrientation and CSSPropertyUserZoom
821         need to be handled on StyleResolver::applyProperty.
822
823         * css/StyleResolver.cpp:
824         (WebCore::StyleResolver::applyProperty):
825
826 2012-11-12  Simon Fraser  <simon.fraser@apple.com>
827
828         Avoid calling calculateLayerBounds() and convertToLayerCoords() more than once per layer paint
829         https://bugs.webkit.org/show_bug.cgi?id=102031
830
831         Reviewed by Beth Dakin.
832
833         RenderLayer::paintLayerContents() and callees could end up calling convertToLayerCoords()
834         and calculateLayerBounds() multiple times for painting a single layer.
835         
836         Keep track of whether we've computed the root-relative bounds and do it on demand.
837         Compute the offset relative to rootLayer once, and pass it around as an optional parameter
838         to functions that need it.
839
840         * rendering/RenderLayer.cpp:
841         (WebCore::RenderLayer::paintLayerContents):
842         (WebCore::RenderLayer::hitTestLayer):
843         (WebCore::RenderLayer::calculateRects):
844         (WebCore::RenderLayer::intersectsDamageRect):
845         (WebCore::RenderLayer::boundingBox):
846         (WebCore::RenderLayer::calculateLayerBounds):
847         * rendering/RenderLayer.h:
848         * rendering/RenderLayerCompositor.cpp:
849         (WebCore::RenderLayerCompositor::calculateCompositedBounds):
850
851 2012-11-12  Simon Fraser  <simon.fraser@apple.com>
852
853         Change calculateLayerBounds() from a static function to a member function
854         https://bugs.webkit.org/show_bug.cgi?id=102022
855
856         Reviewed by Beth Dakin.
857
858         calculateLayerBounds() has grown into a substantial function after
859         starting live as a little utility function, so make it a member function
860         of RenderLayer, and adjust callers accordingly.
861
862         * rendering/RenderLayer.cpp:
863         (WebCore::RenderLayer::setFilterBackendNeedsRepaintingInRect):
864         (WebCore::RenderLayer::paintLayerContents):
865         (WebCore::RenderLayer::calculateLayerBounds):
866         * rendering/RenderLayer.h:
867         * rendering/RenderLayerCompositor.cpp:
868         (WebCore::RenderLayerCompositor::calculateCompositedBounds):
869
870 2012-11-12  Alexei Filippov  <alph@chromium.org>
871
872         Web Inspector: Add an option to switch display of "Other" memory on/off in NMI
873         https://bugs.webkit.org/show_bug.cgi?id=101601
874
875         Reviewed by Yury Semikhatsky.
876
877         * English.lproj/localizedStrings.js:
878         * inspector/front-end/NativeMemorySnapshotView.js:
879         * inspector/front-end/Settings.js:
880         * inspector/front-end/SettingsScreen.js:
881         (WebInspector.GenericSettingsTab):
882
883 2012-11-10  Dirk Schulze  <krit@webkit.org>
884
885         BasicShapes 'circle', 'rectangle', 'ellipse' should be animatable with themselves
886         https://bugs.webkit.org/show_bug.cgi?id=101854
887
888         Reviewed by Andreas Kling.
889
890         The basic shapes BasicShapeCircle, BasicShapeEllipse and BasicShapeRectangle should
891         blend with themselves. This patch introduces simple interpolation of BasicShapes for
892         the -webkit-clip-path property.
893
894         Test: css3/masking/clip-path-animation.html
895
896         * page/animation/CSSPropertyAnimation.cpp:
897         (WebCore::blendFunc): Added a new function that blends between two BasicShape objects.
898             It skips blending on <clipPath> references, polygons and if the shapes are not of
899             the same type.
900         (WebCore):
901         (PropertyWrapperClipPath): Added new wrapper for ClipPathShapes.
902         (WebCore::PropertyWrapperClipPath::PropertyWrapperClipPath): Ditto.
903         (WebCore::CSSPropertyAnimation::ensurePropertyMap): Add -webkit-clip-path to animatable
904             properties.
905         * rendering/style/BasicShapes.cpp:
906             The blending is done by each shape itself. This is similar to FilterOperations or
907             TransformOperations.
908         (WebCore::BasicShapeRectangle::blend):
909         (WebCore):
910         (WebCore::BasicShapeCircle::blend):
911         (WebCore::BasicShapeEllipse::blend):
912         (WebCore::BasicShapePolygon::blend):
913         * rendering/style/BasicShapes.h:
914             Added new blending functions to header.
915         (BasicShape):
916         (BasicShapeRectangle):
917         (BasicShapeCircle):
918         (BasicShapeEllipse):
919         (BasicShapePolygon):
920
921 2012-11-12  Adam Barth  <abarth@webkit.org>
922
923         [V8] We should be able to get V8PerContextData from a v8::Context more quickly
924         https://bugs.webkit.org/show_bug.cgi?id=102008
925
926         Reviewed by Ojan Vafai.
927
928         This patch uses the new v8::Context::GetAlignedPointerFromEmbedderData
929         API to get the V8PerContextData associated with a v8::Context much more
930         quickly. We no longer need to use a hidden property on the inner global
931         object. This patch will enable future optimizations.
932
933         * bindings/v8/V8HiddenPropertyName.h:
934         (WebCore):
935         * bindings/v8/V8PerContextData.cpp:
936         (WebCore::V8PerContextData::dispose):
937         (WebCore::V8PerContextData::init):
938         * bindings/v8/V8PerContextData.h:
939         (WebCore::V8PerContextData::from):
940
941 2012-11-12  Elliott Sprehn  <esprehn@chromium.org>
942
943         Make Frames and HTMLFrameOwnerElement less friendly
944         https://bugs.webkit.org/show_bug.cgi?id=102003
945
946         Reviewed by Ojan Vafai.
947
948         Frame used to assign HTMLFrameOwnerElement's m_contentFrame directly
949         this patch makes it go through a method to allow future hooks when frames
950         are associated with owners.
951
952         No new tests, this is just a refactor.
953
954         * html/HTMLFrameOwnerElement.cpp:
955         (WebCore::HTMLFrameOwnerElement::setContentFrame):
956         * html/HTMLFrameOwnerElement.h:
957         (HTMLFrameOwnerElement):
958         (WebCore::HTMLFrameOwnerElement::clearContentFrame):
959         * page/Frame.cpp:
960         (WebCore::Frame::Frame): Use new methods.
961
962 2012-11-12  Beth Dakin  <bdakin@apple.com>
963
964         Zoomed-in scrolling is very slow when deviceScaleFactor > 1
965         https://bugs.webkit.org/show_bug.cgi?id=101787
966
967         Reviewed by Simon Fraser.
968
969         This patch adds a new member to the GraphicsContextState that tracks 
970         whether or not fonts should be subpixel-quantized. We want to default 
971         to sibpixel-quantizing, but we'll turn it off if we're scrolling 
972         content that cannot be scrolled on the scrolling thread.
973
974         State has a new bool shouldSubpixelQuantizeFonts. It defaults to true 
975         since normally we do want to quantize.
976         * platform/graphics/GraphicsContext.cpp:
977         (WebCore::GraphicsContext::setShouldSubpixelQuantizeFonts):
978         (WebCore::GraphicsContext::shouldSubpixelQuantizeFonts):
979         * platform/graphics/GraphicsContext.h:
980         (WebCore::GraphicsContextState::GraphicsContextState):
981         (GraphicsContextState):
982         (GraphicsContext):
983
984         wkSetCGFontRenderingMode now takes a BOOL parameter which indicates 
985         whether or not it should try to subpixel-quantize the fonts.
986         * platform/graphics/mac/FontMac.mm:
987         (WebCore::Font::drawGlyphs):
988         * platform/mac/WebCoreSystemInterface.h:
989         * platform/mac/WebCoreSystemInterface.mm:
990
991         Disable subpixel-quantization for overflow areas, subframes, and 
992         content that is scrolling on the main thread.
993         * rendering/RenderLayer.cpp:
994         (WebCore::RenderLayer::paintLayerContents):
995
996 2012-11-12  Timothy Hatcher  <timothy@apple.com>
997
998         Expose InspectorFrontendClientLocal::setAttachedWindow as public.
999
1000         This allows external actions to update the docked state in the frontend.
1001
1002         https://bugs.webkit.org/show_bug.cgi?id=102023
1003
1004         Reviewed by Anders Carlsson.
1005
1006         * inspector/InspectorFrontendClientLocal.h:
1007         Moved InspectorFrontendClientLocal::setAttachedWindow to public section.
1008
1009 2012-11-12  Erik Arvidsson  <arv@chromium.org>
1010
1011         Replace DOMException TYPE_MISMATCH_ERR with TypeError
1012         https://bugs.webkit.org/show_bug.cgi?id=101604
1013
1014         Reviewed by Adam Barth.
1015
1016         DOMException.TYPE_MISMATCH_ERR is deprecated in favor of using TypeError.
1017
1018         We have historically used TYPE_MISMATCH_ERR as a blanket DOMException code when
1019         the spec mandates TypeError being thrown.
1020
1021         Updated existing tests.
1022
1023         * Modules/mediastream/MediaConstraintsImpl.cpp:
1024         * Modules/mediastream/MediaStreamTrackList.cpp:
1025         * Modules/mediastream/PeerConnection00.cpp:
1026         * Modules/mediastream/RTCDataChannel.cpp:
1027         * Modules/mediastream/RTCIceCandidate.cpp:
1028         * Modules/mediastream/RTCPeerConnection.cpp:
1029         * Modules/mediastream/RTCSessionDescription.cpp:
1030         * Modules/mediastream/SessionDescription.cpp:
1031         * bindings/js/CallbackFunction.cpp:
1032         * bindings/js/JSCustomXPathNSResolver.cpp:
1033         * bindings/js/JSHTMLOptionsCollectionCustom.cpp:
1034         * bindings/js/JSHTMLSelectElementCustom.cpp:
1035         * bindings/js/JSMutationObserverCustom.cpp:
1036         * bindings/js/JSSQLResultSetRowListCustom.cpp:
1037         * bindings/js/JSSQLTransactionCustom.cpp:
1038         * bindings/js/JSSQLTransactionSyncCustom.cpp:
1039         * bindings/scripts/CodeGeneratorJS.pm:
1040         * bindings/scripts/CodeGeneratorObjC.pm:
1041         * bindings/scripts/CodeGeneratorV8.pm:
1042         * bindings/v8/V8Callback.h:
1043         * bindings/v8/V8Collection.cpp:
1044         * bindings/v8/custom/V8DocumentCustom.cpp:
1045         * bindings/v8/custom/V8HTMLOptionsCollectionCustom.cpp:
1046         * bindings/v8/custom/V8MutationObserverCustom.cpp:
1047         * bindings/v8/custom/V8SQLTransactionCustom.cpp:
1048         * bindings/v8/custom/V8SQLTransactionSyncCustom.cpp:
1049         * dom/DOMCoreException.idl:
1050         * html/HTMLElement.cpp:
1051         * html/HTMLMediaElement.cpp:
1052         * html/HTMLOptionsCollection.cpp:
1053         * html/canvas/CanvasRenderingContext2D.cpp:
1054         * page/Crypto.cpp:
1055         * page/DOMSelection.cpp:
1056         * svg/properties/SVGTransformListPropertyTearOff.h:
1057
1058 2012-11-12  Joshua Bell  <jsbell@chromium.org>
1059
1060         IndexedDB: Use sequence<> instead of DOMString[] in IDL
1061         https://bugs.webkit.org/show_bug.cgi?id=100539
1062
1063         Reviewed by Adam Barth.
1064
1065         In the binding layer, DOMString[] is implemented as an alias for DOMStringList.
1066         WebIDL usage is tending towards sequence<DOMString> anyway for inputs, so switch
1067         to that. Note webkit.org/b/100537 which requires sequence<String> instead.
1068
1069         Covered by storage/indexeddb/transaction-basics.html and objectstore-basics.html
1070
1071         * Modules/indexeddb/IDBDatabase.cpp:
1072         (WebCore::IDBDatabase::transaction): DOMStringList -> Vector<String>
1073         * Modules/indexeddb/IDBDatabase.h:
1074         (WebCore::IDBDatabase::transaction):
1075         (IDBDatabase):
1076         * Modules/indexeddb/IDBDatabase.idl: DOMString[] -> sequence<String>
1077         * Modules/indexeddb/IDBObjectStore.cpp: Move trivial impls to header.
1078         * Modules/indexeddb/IDBObjectStore.h:
1079         (WebCore::IDBObjectStore::createIndex):
1080         * Modules/indexeddb/IDBObjectStore.idl: DOMString[] -> sequence<String>
1081
1082 2012-11-12  Anders Carlsson  <andersca@apple.com>
1083
1084         Remove Leopard only gradient code
1085         https://bugs.webkit.org/show_bug.cgi?id=102033
1086
1087         Reviewed by Dan Bernstein.
1088
1089         USE_CG_SHADING was only ever true on Leopard, so we can remove it now.
1090
1091         * platform/graphics/Gradient.h:
1092         * platform/graphics/cg/GradientCG.cpp:
1093         (WebCore::Gradient::platformDestroy):
1094         (WebCore::Gradient::platformGradient):
1095         (WebCore::Gradient::paint):
1096
1097 2012-11-12  Tiancheng Jiang  <tijiang@rim.com>
1098
1099         [BlackBerry] Update BB10 form theme.
1100         https://bugs.webkit.org/show_bug.cgi?id=100760
1101
1102         Reviewed by Rob Buis.
1103
1104         RIM PR 237003
1105         Internally Reviewed by Eli Fidler.
1106         Since we nolonger use small font for form controls, adjust paddingDivisor
1107         ratio to decrease the padding value.
1108
1109         * platform/blackberry/RenderThemeBlackBerry.cpp:
1110         (WebCore):
1111
1112 2012-11-12  Simon Fraser  <simon.fraser@apple.com>
1113
1114         Fix filter dirty rect regression from r134311
1115         https://bugs.webkit.org/show_bug.cgi?id=102002
1116
1117         Reviewed by Beth Dakin.
1118
1119         When rendering with filters, the code can inflate the root-relative
1120         paintDirtyRect in RenderLayer::paintLayerContents(), and my cleanup
1121         broke this behavior.
1122     
1123         Fix by making a local copy of LayerPaintingInfo, updating its paintDirtyRect,
1124         and using it for the rest of the function.
1125
1126         * rendering/RenderLayer.cpp:
1127         (WebCore::RenderLayer::paintLayerContents):
1128
1129 2012-11-12  Kentaro Hara  <haraken@chromium.org>
1130
1131         [V8] V8Event::valueAccessorGetter() in custom binding is not used
1132         https://bugs.webkit.org/show_bug.cgi?id=101893
1133
1134         Reviewed by Adam Barth.
1135
1136         No tests. No change in behavior.
1137
1138         * bindings/v8/custom/V8EventCustom.cpp:
1139
1140 2012-11-12  Roger Fong  <roger_fong@apple.com>
1141
1142         Web Inspector: Fix docking behaviour on Windows.
1143         https://bugs.webkit.org/show_bug.cgi?id=101978
1144
1145         Reviewed by Brian Weinstein.
1146
1147         There are a number of problems with docking behaviour on Windows.
1148         For starters, it does not ever constrain the inspector's size properly while docked.
1149         It also does not properly set the whether or not the inspector can be docked/undocked.
1150         This patch fixes both issues.
1151
1152         * inspector/InspectorFrontendClientLocal.cpp:
1153         (WebCore::InspectorFrontendClientLocal::frontendLoaded):
1154         Switch order of calling bringToFront and setDockingUnavailable.
1155
1156 2012-11-12  Adam Barth  <abarth@webkit.org>
1157
1158         [V8] Update callers to use the aligned pointer API rather than the deprecated unaligned pointer API
1159         https://bugs.webkit.org/show_bug.cgi?id=101519
1160
1161         Reviewed by Ojan Vafai.
1162
1163         There should be no change in behavior.  The new API is slightly faster
1164         than the old API (and apparently works correctly internally in V8).
1165
1166         * bindings/scripts/CodeGeneratorV8.pm:
1167         (GenerateHeader):
1168         * bindings/scripts/test/V8/V8Float64Array.h:
1169         (WebCore::V8Float64Array::toNative):
1170         * bindings/scripts/test/V8/V8TestActiveDOMObject.h:
1171         (WebCore::V8TestActiveDOMObject::toNative):
1172         * bindings/scripts/test/V8/V8TestCustomNamedGetter.h:
1173         (WebCore::V8TestCustomNamedGetter::toNative):
1174         * bindings/scripts/test/V8/V8TestEventConstructor.h:
1175         (WebCore::V8TestEventConstructor::toNative):
1176         * bindings/scripts/test/V8/V8TestEventTarget.h:
1177         (WebCore::V8TestEventTarget::toNative):
1178         * bindings/scripts/test/V8/V8TestException.h:
1179         (WebCore::V8TestException::toNative):
1180         * bindings/scripts/test/V8/V8TestInterface.h:
1181         (WebCore::V8TestInterface::toNative):
1182         * bindings/scripts/test/V8/V8TestMediaQueryListListener.h:
1183         (WebCore::V8TestMediaQueryListListener::toNative):
1184         * bindings/scripts/test/V8/V8TestNamedConstructor.h:
1185         (WebCore::V8TestNamedConstructor::toNative):
1186         * bindings/scripts/test/V8/V8TestNode.h:
1187         (WebCore::V8TestNode::toNative):
1188         * bindings/scripts/test/V8/V8TestObj.h:
1189         (WebCore::V8TestObj::toNative):
1190         * bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.h:
1191         (WebCore::V8TestSerializedScriptValueInterface::toNative):
1192         * bindings/v8/NPV8Object.cpp:
1193         (WebCore::v8ObjectToNPObject):
1194         (WebCore::npCreateV8ScriptObject):
1195         * bindings/v8/V8Collection.h:
1196         (WebCore::toNativeCollection):
1197         * bindings/v8/V8DOMWindowShell.cpp:
1198         (WebCore::setIsolatedWorldField):
1199         (WebCore::V8DOMWindowShell::enteredIsolatedWorldContext):
1200         * bindings/v8/V8DOMWrapper.cpp:
1201         (WebCore::V8DOMWrapper::isWrapperOfType):
1202         * bindings/v8/V8DOMWrapper.h:
1203         (WebCore::V8DOMWrapper::setDOMWrapper):
1204         (WebCore::V8DOMWrapper::clearDOMWrapper):
1205         * bindings/v8/WrapperTypeInfo.h:
1206         (WebCore::toNative):
1207         (WebCore::toWrapperTypeInfo):
1208
1209 2012-11-12  Andreas Kling  <kling@webkit.org>
1210
1211         Rename AttributeStyle => PresentationAttributeStyle across WebCore.
1212         <http://webkit.org/b/101975>
1213
1214         Rubber-stamped by Antti Koivisto.
1215
1216         The completely separate concepts of "attribute style" and "style attribute" were a bit too
1217         easy to confuse in variable and method names. Reconfigure our terminology to call it
1218         "presentation attribute style" instead of "attribute style".
1219
1220         * css/StyleResolver.cpp:
1221         (WebCore::StyleResolver::sweepMatchedPropertiesCache):
1222         (WebCore::StyleResolver::matchAllRules):
1223         (WebCore::StyleResolver::canShareStyleWithElement):
1224         * dom/Attr.cpp:
1225         (WebCore::Attr::style):
1226         * dom/ElementAttributeData.cpp:
1227         (WebCore::MutableElementAttributeData::MutableElementAttributeData):
1228         (WebCore::ElementAttributeData::reportMemoryUsage):
1229         * dom/ElementAttributeData.h:
1230         (WebCore::ElementAttributeData::presentationAttributeStyle):
1231         (WebCore::ElementAttributeData::setPresentationAttributeStyle):
1232         (ElementAttributeData):
1233         * dom/Node.h:
1234         (WebCore::Node::attributeStyleDirty):
1235         (WebCore::Node::setPresentationAttributeStyleDirty):
1236         (WebCore::Node::clearPresentationAttributeStyleDirty):
1237         * dom/StyledElement.cpp:
1238         (WebCore::StyledElement::attributeChanged):
1239         (WebCore::StyledElement::rebuildPresentationAttributeStyle):
1240         (WebCore::StyledElement::addPropertyToPresentationAttributeStyle):
1241         * dom/StyledElement.h:
1242         (WebCore::StyledElement::additionalPresentationAttributeStyle):
1243         (StyledElement):
1244         (WebCore::StyledElement::collectStyleForPresentationAttribute):
1245         (WebCore::StyledElement::presentationAttributeStyle):
1246         * html/HTMLBRElement.cpp:
1247         (WebCore::HTMLBRElement::collectStyleForPresentationAttribute):
1248         * html/HTMLBRElement.h:
1249         (HTMLBRElement):
1250         * html/HTMLBodyElement.cpp:
1251         (WebCore::HTMLBodyElement::collectStyleForPresentationAttribute):
1252         * html/HTMLBodyElement.h:
1253         (HTMLBodyElement):
1254         * html/HTMLDivElement.cpp:
1255         (WebCore::HTMLDivElement::collectStyleForPresentationAttribute):
1256         * html/HTMLDivElement.h:
1257         (HTMLDivElement):
1258         * html/HTMLElement.cpp:
1259         (WebCore::HTMLElement::applyBorderAttributeToStyle):
1260         (WebCore::HTMLElement::mapLanguageAttributeToLocale):
1261         (WebCore::HTMLElement::collectStyleForPresentationAttribute):
1262         (WebCore::HTMLElement::applyAlignmentAttributeToStyle):
1263         (WebCore::HTMLElement::addHTMLLengthToStyle):
1264         * html/HTMLElement.h:
1265         (HTMLElement):
1266         * html/HTMLEmbedElement.cpp:
1267         (WebCore::HTMLEmbedElement::collectStyleForPresentationAttribute):
1268         * html/HTMLEmbedElement.h:
1269         (HTMLEmbedElement):
1270         * html/HTMLFontElement.cpp:
1271         (WebCore::HTMLFontElement::collectStyleForPresentationAttribute):
1272         * html/HTMLFontElement.h:
1273         (HTMLFontElement):
1274         * html/HTMLFrameSetElement.cpp:
1275         (WebCore::HTMLFrameSetElement::collectStyleForPresentationAttribute):
1276         * html/HTMLFrameSetElement.h:
1277         (HTMLFrameSetElement):
1278         * html/HTMLHRElement.cpp:
1279         (WebCore::HTMLHRElement::collectStyleForPresentationAttribute):
1280         * html/HTMLHRElement.h:
1281         (HTMLHRElement):
1282         * html/HTMLIFrameElement.cpp:
1283         (WebCore::HTMLIFrameElement::collectStyleForPresentationAttribute):
1284         * html/HTMLIFrameElement.h:
1285         (HTMLIFrameElement):
1286         * html/HTMLImageElement.cpp:
1287         (WebCore::HTMLImageElement::collectStyleForPresentationAttribute):
1288         * html/HTMLImageElement.h:
1289         (HTMLImageElement):
1290         * html/HTMLInputElement.cpp:
1291         (WebCore::HTMLInputElement::collectStyleForPresentationAttribute):
1292         * html/HTMLInputElement.h:
1293         (HTMLInputElement):
1294         * html/HTMLLIElement.cpp:
1295         (WebCore::HTMLLIElement::collectStyleForPresentationAttribute):
1296         * html/HTMLLIElement.h:
1297         (HTMLLIElement):
1298         * html/HTMLMarqueeElement.cpp:
1299         (WebCore::HTMLMarqueeElement::collectStyleForPresentationAttribute):
1300         * html/HTMLMarqueeElement.h:
1301         (HTMLMarqueeElement):
1302         * html/HTMLOListElement.cpp:
1303         (WebCore::HTMLOListElement::collectStyleForPresentationAttribute):
1304         * html/HTMLOListElement.h:
1305         (HTMLOListElement):
1306         * html/HTMLObjectElement.cpp:
1307         (WebCore::HTMLObjectElement::collectStyleForPresentationAttribute):
1308         * html/HTMLObjectElement.h:
1309         (HTMLObjectElement):
1310         * html/HTMLParagraphElement.cpp:
1311         (WebCore::HTMLParagraphElement::collectStyleForPresentationAttribute):
1312         * html/HTMLParagraphElement.h:
1313         (HTMLParagraphElement):
1314         * html/HTMLPlugInElement.cpp:
1315         (WebCore::HTMLPlugInElement::collectStyleForPresentationAttribute):
1316         * html/HTMLPlugInElement.h:
1317         (HTMLPlugInElement):
1318         * html/HTMLPreElement.cpp:
1319         (WebCore::HTMLPreElement::collectStyleForPresentationAttribute):
1320         * html/HTMLPreElement.h:
1321         (HTMLPreElement):
1322         * html/HTMLTableCaptionElement.cpp:
1323         (WebCore::HTMLTableCaptionElement::collectStyleForPresentationAttribute):
1324         * html/HTMLTableCaptionElement.h:
1325         (HTMLTableCaptionElement):
1326         * html/HTMLTableCellElement.cpp:
1327         (WebCore::HTMLTableCellElement::collectStyleForPresentationAttribute):
1328         (WebCore::HTMLTableCellElement::additionalPresentationAttributeStyle):
1329         * html/HTMLTableCellElement.h:
1330         (HTMLTableCellElement):
1331         * html/HTMLTableColElement.cpp:
1332         (WebCore::HTMLTableColElement::collectStyleForPresentationAttribute):
1333         (WebCore::HTMLTableColElement::additionalPresentationAttributeStyle):
1334         * html/HTMLTableColElement.h:
1335         (HTMLTableColElement):
1336         * html/HTMLTableElement.cpp:
1337         (WebCore::HTMLTableElement::collectStyleForPresentationAttribute):
1338         (WebCore::HTMLTableElement::additionalPresentationAttributeStyle):
1339         * html/HTMLTableElement.h:
1340         (HTMLTableElement):
1341         * html/HTMLTablePartElement.cpp:
1342         (WebCore::HTMLTablePartElement::collectStyleForPresentationAttribute):
1343         * html/HTMLTablePartElement.h:
1344         (HTMLTablePartElement):
1345         * html/HTMLTableSectionElement.cpp:
1346         (WebCore::HTMLTableSectionElement::additionalPresentationAttributeStyle):
1347         * html/HTMLTableSectionElement.h:
1348         (HTMLTableSectionElement):
1349         * html/HTMLTextAreaElement.cpp:
1350         (WebCore::HTMLTextAreaElement::collectStyleForPresentationAttribute):
1351         * html/HTMLTextAreaElement.h:
1352         (HTMLTextAreaElement):
1353         * html/HTMLUListElement.cpp:
1354         (WebCore::HTMLUListElement::collectStyleForPresentationAttribute):
1355         * html/HTMLUListElement.h:
1356         (HTMLUListElement):
1357         * html/HTMLVideoElement.cpp:
1358         (WebCore::HTMLVideoElement::collectStyleForPresentationAttribute):
1359         * html/HTMLVideoElement.h:
1360         (HTMLVideoElement):
1361         * inspector/InspectorCSSAgent.cpp:
1362         (WebCore::InspectorCSSAgent::buildObjectForAttributesStyle):
1363         * mathml/MathMLElement.cpp:
1364         (WebCore::MathMLElement::collectStyleForPresentationAttribute):
1365         * mathml/MathMLElement.h:
1366         (MathMLElement):
1367         * svg/SVGImageElement.cpp:
1368         (WebCore::SVGImageElement::collectStyleForPresentationAttribute):
1369         * svg/SVGImageElement.h:
1370         (SVGImageElement):
1371         * svg/SVGStyledElement.cpp:
1372         (WebCore::SVGStyledElement::collectStyleForPresentationAttribute):
1373         * svg/SVGStyledElement.h:
1374         (SVGStyledElement):
1375         * svg/SVGTextContentElement.cpp:
1376         (WebCore::SVGTextContentElement::collectStyleForPresentationAttribute):
1377         * svg/SVGTextContentElement.h:
1378         (SVGTextContentElement):
1379
1380 2012-11-12  Adam Barth  <abarth@webkit.org>
1381
1382         [V8] Many things crash when switching to V8's new aligned pointer API
1383         https://bugs.webkit.org/show_bug.cgi?id=101994
1384
1385         Reviewed by Eric Seidel.
1386
1387         When using the aligned pointer API, we need to make sure to initialize
1388         every internal field that we later read because the new API has better
1389         error checks than the old API. This patch explicitly initializes the
1390         enteredIsolatedWorldIndex internal field to zero for main worlds,
1391         fixing the LayoutTest crashes from our previous attempt to move the
1392         aligned pointer API.
1393
1394         * bindings/v8/V8DOMWindowShell.cpp:
1395         (WebCore::V8DOMWindowShell::initializeIfNeeded):
1396
1397 2012-11-12  Simon Fraser  <simon.fraser@apple.com>
1398
1399         Reduce the crazy number of parameters to RenderLayer painting member functions
1400         https://bugs.webkit.org/show_bug.cgi?id=101895
1401
1402         Reviewed by Beth Dakin.
1403
1404         The various RenderLayer::paintLayer* functions took a lot of arguments, most
1405         of which were passed down directly to descendants.
1406         
1407         Gather these arguments into a LayerPaintingInfo struct.
1408
1409         * rendering/RenderLayer.cpp:
1410         (WebCore::RenderLayer::paint): Create a LayerPaintingInfo struct to pass
1411         to descendant paint calls.
1412         (WebCore::RenderLayer::paintOverlayScrollbars): Ditto.
1413         (WebCore::RenderLayer::paintLayer): When painting transformed layers, we
1414         make a new LayerPaintingInfo because the root layer is shifted.
1415         (WebCore::RenderLayer::paintLayerContentsAndReflection):
1416         (WebCore::RenderLayer::paintLayerContents):
1417         (WebCore::RenderLayer::paintList):
1418         (WebCore::RenderLayer::paintPaginatedChildLayer):
1419         (WebCore::RenderLayer::paintChildLayerIntoColumns): Create a new LayerPaintingInfo
1420         struct for column painting.
1421         * rendering/RenderLayer.h:
1422         (WebCore::RenderLayer::LayerPaintingInfo::LayerPaintingInfo):
1423         (LayerPaintingInfo):
1424         * rendering/RenderLayerBacking.cpp:
1425         (WebCore::RenderLayerBacking::paintIntoLayer): Build a LayerPaintingInfo
1426         to enter layer painting.
1427         * rendering/RenderReplica.cpp:
1428         (WebCore::RenderReplica::paint): Ditto.
1429
1430 2012-11-12  Brady Eidson  <beidson@apple.com>
1431
1432         NetworkProcess: Use an accurate shouldContentSniff value when creating ResourceHandles
1433         https://bugs.webkit.org/show_bug.cgi?id=101872
1434
1435         Reviewed by Alexey Proskuryakov.
1436
1437         Expose shouldSniffContent to pass it along to the NetworkProcess.
1438
1439         * loader/ResourceLoader.h:
1440         (WebCore::ResourceLoader::shouldSniffContent):
1441
1442 2012-11-12  Christophe Dumez  <christophe.dumez@intel.com>
1443
1444         Fix memory leak in createSurfaceForBackingStore()
1445         https://bugs.webkit.org/show_bug.cgi?id=101941
1446
1447         Reviewed by Kenneth Rohde Christiansen.
1448
1449         Fix memory leak in createSurfaceForBackingStore(),
1450         the RefPtr<cairo_surface_t> should be released
1451         when returned since we pass ownership to the
1452         caller.
1453
1454         No new tests, no behavior change for layout tests.
1455
1456         * platform/graphics/efl/CairoUtilitiesEfl.cpp:
1457         (WebCore::createSurfaceForBackingStore):
1458
1459 2012-11-12  Joe Mason  <jmason@rim.com>
1460
1461         [BlackBerry] Update to new proxyInfo API
1462         https://bugs.webkit.org/show_bug.cgi?id=101945
1463
1464         Reviewed by George Staikos.
1465
1466         Internal PR: 234680
1467         Reviewed internally by: Leo Yang
1468
1469         The proxyAddress, proxyUsername and proxyPassword methods in BlackBerry::Platform::Settings
1470         have been replaced with a single, more efficient proxyInfo method.
1471
1472         No new tests because this is an API update with no behaviour change.
1473
1474         * platform/network/blackberry/NetworkJob.cpp:
1475         (WebCore::NetworkJob::sendRequestWithCredentials):
1476         (WebCore::NetworkJob::storeCredentials):
1477
1478 2012-11-12  Sheriff Bot  <webkit.review.bot@gmail.com>
1479
1480         Unreviewed, rolling out r126157.
1481         http://trac.webkit.org/changeset/126157
1482         https://bugs.webkit.org/show_bug.cgi?id=101954
1483
1484         This patch caused (untestable) regression of the volume
1485         property on Mac, Win, and Blackberry ports. (Requested by
1486         jernoble on #webkit).
1487
1488         * platform/graphics/MediaPlayer.cpp:
1489         (WebCore::MediaPlayer::loadWithNextMediaEngine):
1490         (WebCore::MediaPlayer::setVolume):
1491         (WebCore::MediaPlayer::setMuted):
1492         (WebCore::MediaPlayer::setPreservesPitch):
1493         (WebCore::MediaPlayer::setSize):
1494         (WebCore::MediaPlayer::setVisible):
1495         (WebCore::MediaPlayer::setPreload):
1496
1497 2012-11-12  Arpita Bahuguna  <arpitabahuguna@gmail.com>
1498
1499         Specified width CSS tables should not include border and padding as part of that width.
1500         https://bugs.webkit.org/show_bug.cgi?id=77028
1501
1502         Reviewed by Julien Chaffraix.
1503
1504         CSS table width should not include border and padding even though HTML
1505         tables size as though their width includes border/padding.
1506
1507         This is applicable for all CSS tables with specified widths.
1508
1509         The change would also make our rendering of CSS tables with specified
1510         width similar to that of Opera, IE and FF.
1511
1512         Test: fast/table/css-table-width-with-border-padding.html
1513
1514         * rendering/RenderTable.cpp:
1515         (WebCore::RenderTable::convertStyleLogicalWidthToComputedWidth):
1516         Added check for all (positive) specified widths for CSS tables to
1517         consider border and padding outside of the specified width.
1518
1519 2012-11-12  Allan Sandfeld Jensen  <allan.jensen@digia.com>
1520
1521         Move resolving blob references to FormData.
1522         https://bugs.webkit.org/show_bug.cgi?id=101754
1523
1524         Reviewed by Simon Hausmann.
1525
1526         Resolving Blob-references to a set of just File and Data is done similar by several platforms.
1527         This patch adds a generic implementation in FormData and uses that from CFNetwork, Qt and
1528         BlackBerry network implementation.
1529
1530         * platform/network/FormData.cpp:
1531         (WebCore::appendBlobResolved):
1532         (WebCore::FormData::resolveBlobReferences):
1533         * platform/network/FormData.h:
1534         * platform/network/blackberry/ResourceRequestBlackBerry.cpp:
1535         (WebCore::ResourceRequest::initializePlatformRequest):
1536         * platform/network/cf/FormDataStreamCFNet.cpp:
1537         (WebCore::setHTTPBody):
1538         * platform/network/qt/QNetworkReplyHandler.cpp:
1539         (WebCore::FormDataIODevice::prepareFormElements):
1540
1541 2012-11-12  Zeno Albisser  <zeno@webkit.org>
1542
1543         GraphicsSurfaceGLX does not handle transparency correctly.
1544         https://bugs.webkit.org/show_bug.cgi?id=101943
1545
1546         GraphicsSurfacGLX must consistently use RGBA texture format.
1547         glXCreateWindow must be called after creating the XWindow
1548         that serves as a temporary offscreen texture storage, in order
1549         to allow for transparency.
1550         When creating the offscreen XWindow we must make sure,
1551         that we use a framebuffer configuration that supports
1552         an alpha mask.
1553
1554         Reviewed by Noam Rosenthal.
1555
1556         * platform/graphics/surfaces/qt/GraphicsSurfaceGLX.cpp:
1557         (WebCore):
1558         (WebCore::GraphicsSurfacePrivate::GraphicsSurfacePrivate):
1559         (WebCore::GraphicsSurfacePrivate::~GraphicsSurfacePrivate):
1560         (WebCore::GraphicsSurfacePrivate::createSurface):
1561         (GraphicsSurfacePrivate):
1562         (WebCore::GraphicsSurface::platformPaintToTextureMapper):
1563
1564 2012-11-12  Sheriff Bot  <webkit.review.bot@gmail.com>
1565
1566         Unreviewed, rolling out r134225.
1567         http://trac.webkit.org/changeset/134225
1568         https://bugs.webkit.org/show_bug.cgi?id=101948
1569
1570         Appears to have broken the EFL and GTK builds (Requested by
1571         abarth on #webkit).
1572
1573         * bindings/js/JSHTMLElementCustom.cpp:
1574         (WebCore):
1575         (WebCore::JSHTMLElement::itemValue):
1576         (WebCore::JSHTMLElement::setItemValue):
1577         * bindings/v8/custom/V8HTMLElementCustom.cpp:
1578         (WebCore):
1579         (WebCore::V8HTMLElement::itemValueAccessorGetter):
1580         (WebCore::V8HTMLElement::itemValueAccessorSetter):
1581         * html/HTMLElement.idl:
1582
1583 2012-11-12  Allan Sandfeld Jensen  <allan.jensen@digia.com>
1584
1585         hitTestResultAtPoint does two hit-tests if called on non main frame
1586         https://bugs.webkit.org/show_bug.cgi?id=101915
1587
1588         Reviewed by Antonio Gomes.
1589
1590         Always redirect hitTestResultAtPoint to the main-frame. This used to being
1591         done on every result that hit anything, which caused running the expensive 
1592         hit-tests multiple times in almost all cases.
1593
1594         * page/EventHandler.cpp:
1595         (WebCore::EventHandler::hitTestResultAtPoint):
1596
1597 2012-11-12  Kentaro Hara  <haraken@chromium.org>
1598
1599         [V8][JSC] ScriptProfileNode::callUID needs not to be [Custom]
1600         https://bugs.webkit.org/show_bug.cgi?id=101892
1601
1602         Reviewed by Adam Barth.
1603
1604         We can remove [Custom] from callUID in ScriptProfileNode.idl.
1605
1606         No tests. No change in behavior.
1607
1608         * GNUmakefile.list.am:
1609         * Target.pri:
1610         * UseJSC.cmake:
1611         * WebCore.gypi:
1612         * WebCore.vcproj/WebCore.vcproj:
1613         * WebCore.xcodeproj/project.pbxproj:
1614         * bindings/js/JSBindingsAllInOne.cpp:
1615         * bindings/js/JSScriptProfileNodeCustom.cpp: Removed.
1616         * bindings/v8/custom/V8ScriptProfileNodeCustom.cpp:
1617         * inspector/ScriptProfileNode.idl:
1618
1619 2012-11-12  Kentaro Hara  <haraken@chromium.org>
1620
1621         [V8] Performance::memory getter needs not to be [Custom]
1622         https://bugs.webkit.org/show_bug.cgi?id=101890
1623
1624         Reviewed by Adam Barth.
1625
1626         No tests. No change in behavior.
1627
1628         * UseV8.cmake:
1629         * WebCore.gypi:
1630         * bindings/v8/custom/V8PerformanceCustom.cpp: Removed.
1631         * page/Performance.idl:
1632
1633 2012-11-12  Kentaro Hara  <haraken@chromium.org>
1634
1635         [V8][JSC] HTMLOptionsCollection::length needs not to be [Custom]
1636         https://bugs.webkit.org/show_bug.cgi?id=101888
1637
1638         Reviewed by Adam Barth.
1639
1640         We can remove [Custom] from getter. It is possible to remove [Custom]
1641         from setter, but it changes the current behavior.
1642         (I think the current implementation of the setter is wrong.
1643         I'll fix it in another patch.)
1644
1645         No tests. No change in behavior.
1646
1647         * bindings/js/JSHTMLOptionsCollectionCustom.cpp:
1648         * bindings/v8/custom/V8HTMLOptionsCollectionCustom.cpp:
1649         * html/HTMLOptionsCollection.idl:
1650
1651 2012-11-12  Yael Aharon  <yael.aharon@intel.com>
1652
1653         [EFL][WK2][AC] Black screen when applications use software backend.
1654         https://bugs.webkit.org/show_bug.cgi?id=101659
1655
1656         Reviewed by Kenneth Rohde Christiansen.
1657
1658         Add a utility method to create a cairo_surface_t from a given Evas_Object_Image.
1659
1660         No new tests. Will be covered when running existing tests without enabling openGL.
1661
1662         * platform/graphics/efl/CairoUtilitiesEfl.cpp:
1663         (WebCore::createSurfaceForImage):
1664         (WebCore):
1665         * platform/graphics/efl/CairoUtilitiesEfl.h:
1666         (WebCore):
1667
1668 2012-11-12  Carlos Garcia Campos  <cgarcia@igalia.com>
1669
1670         Unreviewed. Fix make distcheck.
1671
1672         * GNUmakefile.am: Remove editing from IDL_PATH since it doesn't
1673         contain idl files anymore.
1674         * GNUmakefile.list.am: Add missing header files.
1675
1676 2012-11-12  Tommy Widenflycht  <tommyw@google.com>
1677
1678         MediaStream API: Make sure that MediaConstraints only has optional and mandatory at the top level
1679         https://bugs.webkit.org/show_bug.cgi?id=101733
1680
1681         Reviewed by Jochen Eisinger.
1682
1683         This patch adds better verification to MediaConstraintsImpl.
1684
1685         Existing tests expanded to cover this change.
1686
1687         * Modules/mediastream/MediaConstraintsImpl.cpp:
1688         (WebCore::MediaConstraintsImpl::initialize):
1689
1690 2012-11-12  Sheriff Bot  <webkit.review.bot@gmail.com>
1691
1692         Unreviewed, rolling out r134223.
1693         http://trac.webkit.org/changeset/134223
1694         https://bugs.webkit.org/show_bug.cgi?id=101939
1695
1696         Breaks inspector tests (Requested by pfeldman on #webkit).
1697
1698         * inspector/front-end/DefaultTextEditor.js:
1699         (WebInspector.TextEditorChunkedPanel.prototype._repaintAll):
1700         (WebInspector.TextEditorMainPanel):
1701         (WebInspector.TextEditorMainPanel.prototype.markAndRevealRange):
1702         (WebInspector.TextEditorMainPanel.prototype.beginDomUpdates):
1703         (WebInspector.TextEditorMainPanel.prototype.endDomUpdates):
1704         (WebInspector.TextEditorMainPanel.prototype._paintScheduledLines):
1705         (WebInspector.TextEditorMainPanel.prototype._paintLineChunks):
1706         (WebInspector.TextEditorMainPanel.prototype._paintLine):
1707         (WebInspector.TextEditorMainPanel.prototype._insertSpanBefore):
1708         (WebInspector.TextEditorMainPanel.prototype._handleDOMUpdates):
1709         (WebInspector.TextEditorMainPanel.prototype._applyDomUpdates):
1710         * inspector/front-end/externs.js:
1711         * inspector/front-end/textEditor.css:
1712
1713 2012-11-12  Allan Sandfeld Jensen  <allan.jensen@digia.com>
1714
1715         [Qt] Support ResourceRequest's setTimeoutInterval
1716         https://bugs.webkit.org/show_bug.cgi?id=101731
1717
1718         Reviewed by Simon Hausmann.
1719
1720         Establish a timeout and return the correct error when it is triggered.
1721
1722         Tested by existing http/tests/xmlhttprequest/timeout tests.
1723
1724         * platform/network/ResourceRequestBase.cpp:
1725         * platform/network/qt/QNetworkReplyHandler.cpp:
1726         (WebCore::QNetworkReplyHandler::release):
1727         (WebCore::QNetworkReplyHandler::finish):
1728         (WebCore::QNetworkReplyHandler::timeout):
1729         (WebCore::QNetworkReplyHandler::timerEvent):
1730         (WebCore::QNetworkReplyHandler::start):
1731         * platform/network/qt/QNetworkReplyHandler.h:
1732         (QNetworkReplyHandler):
1733
1734 2012-11-12  Sheriff Bot  <webkit.review.bot@gmail.com>
1735
1736         Unreviewed, rolling out r134224.
1737         http://trac.webkit.org/changeset/134224
1738         https://bugs.webkit.org/show_bug.cgi?id=101937
1739
1740         asserting on bawts (Requested by kling on #webkit).
1741
1742         * rendering/style/RenderStyle.cpp:
1743         (WebCore::RenderStyle::diff):
1744         (WebCore::RenderStyle::setColor):
1745         (WebCore::RenderStyle::setVisitedLinkColor):
1746         * rendering/style/RenderStyle.h:
1747         * rendering/style/StyleBackgroundData.cpp:
1748         (WebCore::StyleBackgroundData::StyleBackgroundData):
1749         * rendering/style/StyleBackgroundData.h:
1750         (WebCore::StyleBackgroundData::color):
1751         (StyleBackgroundData):
1752         * rendering/style/StyleInheritedData.cpp:
1753         (WebCore::StyleInheritedData::StyleInheritedData):
1754         * rendering/style/StyleInheritedData.h:
1755         (StyleInheritedData):
1756         * rendering/style/StyleMultiColData.cpp:
1757         (WebCore::StyleMultiColData::StyleMultiColData):
1758         * rendering/style/StyleMultiColData.h:
1759         (StyleMultiColData):
1760         * rendering/style/StyleRareInheritedData.cpp:
1761         (SameSizeAsStyleRareInheritedData):
1762         (WebCore::StyleRareInheritedData::StyleRareInheritedData):
1763         (WebCore::StyleRareInheritedData::operator==):
1764         * rendering/style/StyleRareInheritedData.h:
1765         (WebCore):
1766         (StyleRareInheritedData):
1767         * rendering/style/StyleRareNonInheritedData.cpp:
1768         (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
1769         (WebCore::StyleRareNonInheritedData::operator==):
1770         * rendering/style/StyleRareNonInheritedData.h:
1771         (StyleRareNonInheritedData):
1772
1773 2012-11-12  Tiancheng Jiang  <tijiang@rim.com>
1774
1775         [BlackBerry] Update BB10 form theme.
1776         https://bugs.webkit.org/show_bug.cgi?id=100760
1777
1778         Reviewed by Rob Buis.
1779
1780         RIM PR 236993
1781         Internally Reviewed by Jeff Rogers.
1782         Use slide and paint method on slider range and media controls.
1783
1784         * platform/blackberry/RenderThemeBlackBerry.cpp:
1785         (WebCore):
1786         (WebCore::drawThreeSliceHorizontal):
1787         (WebCore::drawThreeSliceVertical):
1788         (WebCore::RenderThemeBlackBerry::paintSliderTrackRect):
1789         (WebCore::RenderThemeBlackBerry::paintMediaSliderTrack):
1790         (WebCore::RenderThemeBlackBerry::paintMediaSliderThumb):
1791         (WebCore::RenderThemeBlackBerry::paintMediaVolumeSliderTrack):
1792         * platform/blackberry/RenderThemeBlackBerry.h:
1793         (RenderThemeBlackBerry):
1794
1795 2012-11-12  Kent Tamura  <tkent@chromium.org>
1796
1797         Refactoring: set read-only values on layout in DateTimeEditElement
1798         https://bugs.webkit.org/show_bug.cgi?id=101916
1799
1800         Reviewed by Kentaro Hara.
1801
1802         We have always updated read-only values when we set an empty value or
1803         DateTimeFieldsState. It has wasted CPU time because such read-only
1804         values are never updated after layout() essentially. So, we set
1805         read-only values in DateTimeEditBuilder used by layout(), and remove
1806         dateForReadOnlyField arguments of setEmptyValue and
1807         setValueAsDateTimeFieldsState.
1808
1809         No new tests. This should not make behavior changes.
1810
1811         * html/BaseMultipleFieldsDateAndTimeInputType.cpp:
1812         (WebCore::BaseMultipleFieldsDateAndTimeInputType::restoreFormControlState):
1813         We removed dateForReadOnlyField argument because read-only values are
1814         already set in DateTimeFieldElement::layout().
1815         * html/shadow/DateTimeEditElement.cpp:
1816         (WebCore::DateTimeEditBuilder::visitField):
1817         Set a value to a read-only minute/second/millisecond field while
1818         building UI elements.
1819         Also, changed variable types for millisecond and second fields to
1820         RefPtr<DateTimeNumericFieldElement> because we'd like to call
1821         setValueAsDate, which is private in DateTimeMillisecondFieldElement and
1822         DateTimeSecondFieldElement
1823         (WebCore::DateTimeEditElement::setValueAsDateTimeFieldsState):
1824         We removed dateForReadOnlyField argument because read-only values are
1825         already set in DateTimeFieldElement::layout().
1826         (WebCore::DateTimeEditElement::setEmptyValue): Ditto.
1827         * html/shadow/DateTimeEditElement.h:
1828         (DateTimeEditElement):
1829         Removed dateForReadOnlyField argument for setValueAsDateTimeFieldsState.
1830
1831         * html/shadow/DateTimeFieldElement.cpp:
1832         (WebCore::DateTimeFieldElement::defaultKeyboardEventHandler):
1833         We removed dateForReadOnlyField argument because read-only values are
1834         already set in DateTimeFieldElement::layout().
1835         * html/shadow/DateTimeFieldElement.h:
1836         (DateTimeFieldElement): Ditto.
1837
1838         * html/shadow/DateTimeFieldElements.cpp: Ditto.
1839         * html/shadow/DateTimeFieldElements.h: Ditto.
1840         * html/shadow/DateTimeNumericFieldElement.cpp:
1841         (WebCore::DateTimeNumericFieldElement::setEmptyValue):
1842         It should do nothing if it is read-only because a read-only value was
1843         already set just after construction.
1844         * html/shadow/DateTimeNumericFieldElement.h:
1845         (DateTimeNumericFieldElement):
1846         Removed dateForReadOnlyField argument of setEmptyValue.
1847         * html/shadow/DateTimeSymbolicFieldElement.cpp:
1848         (WebCore::DateTimeSymbolicFieldElement::setEmptyValue): Ditto.
1849         * html/shadow/DateTimeSymbolicFieldElement.h:
1850         (DateTimeSymbolicFieldElement): Ditto.
1851
1852 2012-11-12  Tiancheng Jiang  <tijiang@rim.com>
1853
1854         [BlackBerry] Update BB10 form theme.
1855         https://bugs.webkit.org/show_bug.cgi?id=100760
1856
1857         Reviewed by Rob Buis.
1858
1859         RIM PR 236993
1860         Internally Reviewed by Jeff Rogers.
1861         Enable GL slider.
1862
1863         * platform/blackberry/RenderThemeBlackBerry.cpp:
1864         (WebCore::drawThreeSlice):
1865         (WebCore):
1866         (WebCore::RenderThemeBlackBerry::paintSliderTrackRect):
1867         (WebCore::RenderThemeBlackBerry::paintSliderThumb):
1868
1869 2012-11-12  Kentaro Hara  <haraken@chromium.org>
1870
1871         [V8][JSC] HTMLElement::itemValue() needs not to be custom
1872         https://bugs.webkit.org/show_bug.cgi?id=101882
1873
1874         Reviewed by Adam Barth.
1875
1876         We can remove a [Custom] IDL attribute.
1877
1878         No tests. No change in behavior.
1879
1880         * bindings/js/JSHTMLElementCustom.cpp:
1881         * bindings/v8/custom/V8HTMLElementCustom.cpp:
1882         * html/HTMLElement.idl:
1883
1884 2012-11-12  Andreas Kling  <kling@webkit.org>
1885
1886         RenderStyle: Pack Color members tighter in substructures.
1887         <http://webkit.org/b/101860>
1888
1889         Reviewed by Antti Koivisto.
1890
1891         For RenderStyle substructures (StyleInheritedData, et al.), unfold all WebCore::Color
1892         members into RGBA32/bool variables OR just an RGBA32 if the color can never be invalid.
1893
1894         Memory saved per instance:
1895
1896             - StyleMultiColData:          4 bytes
1897             - StyleBackgroundData:        8 bytes
1898             - StyleInheritedData:         8 bytes
1899             - StyleRareInheritedData:    24 bytes
1900             - StyleRareNonInheritedData: 24 bytes
1901
1902         323kB progression on Membuster3.
1903
1904         * rendering/style/RenderStyle.cpp:
1905         (WebCore::RenderStyle::diff):
1906         (WebCore::RenderStyle::setColor):
1907         (WebCore::RenderStyle::setVisitedLinkColor):
1908         (WebCore::RenderStyle::setVisitedLinkColumnRuleColor):
1909         (WebCore::RenderStyle::setBackgroundColor):
1910         * rendering/style/RenderStyle.h:
1911         * rendering/style/StyleBackgroundData.cpp:
1912         (WebCore::StyleBackgroundData::StyleBackgroundData):
1913         * rendering/style/StyleBackgroundData.h:
1914         (WebCore::StyleBackgroundData::color):
1915         (StyleBackgroundData):
1916         * rendering/style/StyleInheritedData.cpp:
1917         (WebCore::StyleInheritedData::StyleInheritedData):
1918         * rendering/style/StyleInheritedData.h:
1919         (StyleInheritedData):
1920         * rendering/style/StyleMultiColData.cpp:
1921         (WebCore::StyleMultiColData::StyleMultiColData):
1922         (WebCore::StyleMultiColData::setVisitedLinkColumnRuleColor):
1923         * rendering/style/StyleMultiColData.h:
1924         (StyleMultiColData):
1925         (WebCore::StyleMultiColData::visitedLinkColumnRuleColor):
1926         * rendering/style/StyleRareInheritedData.cpp:
1927         (SameSizeAsStyleRareInheritedData):
1928         (WebCore::StyleRareInheritedData::StyleRareInheritedData):
1929         (WebCore::StyleRareInheritedData::operator==):
1930         (WebCore::StyleRareInheritedData::setTextStrokeColor):
1931         (WebCore::StyleRareInheritedData::setTextFillColor):
1932         (WebCore::StyleRareInheritedData::setTextEmphasisColor):
1933         (WebCore::StyleRareInheritedData::setVisitedLinkTextStrokeColor):
1934         (WebCore::StyleRareInheritedData::setVisitedLinkTextFillColor):
1935         (WebCore::StyleRareInheritedData::setVisitedLinkTextEmphasisColor):
1936         * rendering/style/StyleRareInheritedData.h:
1937         (StyleRareInheritedData):
1938         (WebCore::StyleRareInheritedData::textStrokeColor):
1939         (WebCore::StyleRareInheritedData::textFillColor):
1940         (WebCore::StyleRareInheritedData::textEmphasisColor):
1941         (WebCore::StyleRareInheritedData::visitedLinkTextStrokeColor):
1942         (WebCore::StyleRareInheritedData::visitedLinkTextFillColor):
1943         (WebCore::StyleRareInheritedData::visitedLinkTextEmphasisColor):
1944         * rendering/style/StyleRareNonInheritedData.cpp:
1945         (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
1946         (WebCore::StyleRareNonInheritedData::operator==):
1947         (WebCore::StyleRareNonInheritedData::setVisitedLinkBorderLeftColor):
1948         (WebCore::StyleRareNonInheritedData::setVisitedLinkBorderRightColor):
1949         (WebCore::StyleRareNonInheritedData::setVisitedLinkBorderTopColor):
1950         (WebCore::StyleRareNonInheritedData::setVisitedLinkBorderBottomColor):
1951         (WebCore::StyleRareNonInheritedData::setVisitedLinkOutlineColor):
1952         (WebCore::StyleRareNonInheritedData::setVisitedLinkBackgroundColor):
1953         * rendering/style/StyleRareNonInheritedData.h:
1954         (WebCore::StyleRareNonInheritedData::visitedLinkBackgroundColor):
1955         (WebCore::StyleRareNonInheritedData::visitedLinkOutlineColor):
1956         (WebCore::StyleRareNonInheritedData::visitedLinkBorderLeftColor):
1957         (WebCore::StyleRareNonInheritedData::visitedLinkBorderRightColor):
1958         (WebCore::StyleRareNonInheritedData::visitedLinkBorderTopColor):
1959         (WebCore::StyleRareNonInheritedData::visitedLinkBorderBottomColor):
1960         (StyleRareNonInheritedData):
1961
1962 2012-11-12  Pavel Feldman  <pfeldman@chromium.org>
1963
1964         Web Inspector: migrate text editor to mutation observers
1965         https://bugs.webkit.org/show_bug.cgi?id=101841
1966
1967         Reviewed by Vsevolod Vlasov.
1968
1969         Otherwise, we miss notifications on the removed lines.
1970
1971         * inspector/front-end/DefaultTextEditor.js:
1972         (WebInspector.TextEditorMainPanel):
1973         (WebInspector.TextEditorMainPanel.prototype.beginDomUpdates):
1974         (WebInspector.TextEditorMainPanel.prototype.endDomUpdates):
1975         (WebInspector.TextEditorMainPanel.prototype._handleMutations):
1976         (WebInspector.TextEditorMainPanel.prototype._handleMutation):
1977         * inspector/front-end/externs.js:
1978         (WebKitMutation):
1979         (WebKitMutationObserver.prototype.observe):
1980         (WebKitMutationObserver.prototype.disconnect):
1981
1982 2012-11-12  Allan Sandfeld Jensen  <sandfeld@kde.org>
1983
1984         [Qt] Flash-plugin starts with wrong width
1985         https://bugs.webkit.org/show_bug.cgi?id=101836
1986
1987         Reviewed by Simon Hausmann.
1988
1989         Defer the setWindow call, so that the one time it is called it will have its final size.
1990
1991         * plugins/PluginPackage.cpp:
1992         (WebCore::PluginPackage::determineQuirks):
1993
1994 2012-11-12  Tommy Widenflycht  <tommyw@google.com>
1995
1996         Remove the V8 custom code for WebSockets constructor
1997         https://bugs.webkit.org/show_bug.cgi?id=100801
1998
1999         Reviewed by Kentaro Hara.
2000
2001         This patch does the following:
2002
2003         1) Modifies the V8 code generator to support overloaded constructors,
2004            the JS generator is fixed to work as before. Proper support for JS will come later.
2005
2006         2) Modifies WebSocket.h/.cpp for the new constructors.
2007
2008         Tested by running WebSockets layout tests.
2009
2010         * Modules/websockets/WebSocket.cpp:
2011         (WebCore::WebSocket::create):
2012         (WebCore):
2013         * Modules/websockets/WebSocket.h:
2014         (WebSocket):
2015         * Modules/websockets/WebSocket.idl:
2016         * bindings/scripts/CodeGeneratorJS.pm:
2017         (GenerateConstructorDefinition):
2018         * bindings/scripts/CodeGeneratorV8.pm:
2019         (GenerateHeader):
2020         (GenerateOverloadedConstructorCallback):
2021         (GenerateSingleConstructorCallback):
2022         (GenerateConstructorCallback):
2023         (GenerateImplementation):
2024         * bindings/scripts/IDLParser.pm:
2025         (copyAttributes):
2026         (parseExtendedAttributeList):
2027         (parseExtendedAttributes):
2028         (applyExtendedAttributeList):
2029         * bindings/scripts/IDLStructure.pm:
2030         * bindings/scripts/test/CPP/WebDOMTestOverloadedConstructors.cpp: Added.
2031         (WebDOMTestOverloadedConstructors::WebDOMTestOverloadedConstructorsPrivate::WebDOMTestOverloadedConstructorsPrivate):
2032         (WebDOMTestOverloadedConstructors::WebDOMTestOverloadedConstructorsPrivate):
2033         (WebDOMTestOverloadedConstructors::WebDOMTestOverloadedConstructors):
2034         (WebDOMTestOverloadedConstructors::operator=):
2035         (WebDOMTestOverloadedConstructors::impl):
2036         (WebDOMTestOverloadedConstructors::~WebDOMTestOverloadedConstructors):
2037         (toWebCore):
2038         (toWebKit):
2039         * bindings/scripts/test/CPP/WebDOMTestOverloadedConstructors.h: Added.
2040         (WebCore):
2041         (WebDOMTestOverloadedConstructors):
2042         * bindings/scripts/test/GObject/WebKitDOMTestOverloadedConstructors.cpp: Added.
2043         (WebKit):
2044         (WebKit::kit):
2045         (WebKit::core):
2046         (WebKit::wrapTestOverloadedConstructors):
2047         (webkit_dom_test_overloaded_constructors_finalize):
2048         (webkit_dom_test_overloaded_constructors_set_property):
2049         (webkit_dom_test_overloaded_constructors_get_property):
2050         (webkit_dom_test_overloaded_constructors_constructed):
2051         (webkit_dom_test_overloaded_constructors_class_init):
2052         (webkit_dom_test_overloaded_constructors_init):
2053         * bindings/scripts/test/GObject/WebKitDOMTestOverloadedConstructors.h: Added.
2054         (_WebKitDOMTestOverloadedConstructors):
2055         (_WebKitDOMTestOverloadedConstructorsClass):
2056         * bindings/scripts/test/GObject/WebKitDOMTestOverloadedConstructorsPrivate.h: Added.
2057         (WebKit):
2058         * bindings/scripts/test/JS/JSTestOverloadedConstructors.cpp: Added.
2059         (WebCore):
2060         (WebCore::JSTestOverloadedConstructorsConstructor::JSTestOverloadedConstructorsConstructor):
2061         (WebCore::JSTestOverloadedConstructorsConstructor::finishCreation):
2062         (WebCore::JSTestOverloadedConstructorsConstructor::getOwnPropertySlot):
2063         (WebCore::JSTestOverloadedConstructorsConstructor::getOwnPropertyDescriptor):
2064         (WebCore::JSTestOverloadedConstructorsConstructor::constructJSTestOverloadedConstructors):
2065         (WebCore::JSTestOverloadedConstructorsConstructor::getConstructData):
2066         (WebCore::JSTestOverloadedConstructorsPrototype::self):
2067         (WebCore::JSTestOverloadedConstructors::JSTestOverloadedConstructors):
2068         (WebCore::JSTestOverloadedConstructors::finishCreation):
2069         (WebCore::JSTestOverloadedConstructors::createPrototype):
2070         (WebCore::JSTestOverloadedConstructors::destroy):
2071         (WebCore::JSTestOverloadedConstructors::~JSTestOverloadedConstructors):
2072         (WebCore::JSTestOverloadedConstructors::getOwnPropertySlot):
2073         (WebCore::JSTestOverloadedConstructors::getOwnPropertyDescriptor):
2074         (WebCore::jsTestOverloadedConstructorsConstructor):
2075         (WebCore::JSTestOverloadedConstructors::getConstructor):
2076         (WebCore::isObservable):
2077         (WebCore::JSTestOverloadedConstructorsOwner::isReachableFromOpaqueRoots):
2078         (WebCore::JSTestOverloadedConstructorsOwner::finalize):
2079         (WebCore::toJS):
2080         (WebCore::toTestOverloadedConstructors):
2081         * bindings/scripts/test/JS/JSTestOverloadedConstructors.h: Added.
2082         (WebCore):
2083         (JSTestOverloadedConstructors):
2084         (WebCore::JSTestOverloadedConstructors::create):
2085         (WebCore::JSTestOverloadedConstructors::createStructure):
2086         (WebCore::JSTestOverloadedConstructors::impl):
2087         (WebCore::JSTestOverloadedConstructors::releaseImpl):
2088         (WebCore::JSTestOverloadedConstructors::releaseImplIfNotNull):
2089         (JSTestOverloadedConstructorsOwner):
2090         (WebCore::wrapperOwner):
2091         (WebCore::wrapperContext):
2092         (JSTestOverloadedConstructorsPrototype):
2093         (WebCore::JSTestOverloadedConstructorsPrototype::create):
2094         (WebCore::JSTestOverloadedConstructorsPrototype::createStructure):
2095         (WebCore::JSTestOverloadedConstructorsPrototype::JSTestOverloadedConstructorsPrototype):
2096         (JSTestOverloadedConstructorsConstructor):
2097         (WebCore::JSTestOverloadedConstructorsConstructor::create):
2098         (WebCore::JSTestOverloadedConstructorsConstructor::createStructure):
2099         * bindings/scripts/test/ObjC/DOMTestOverloadedConstructors.h: Added.
2100         * bindings/scripts/test/ObjC/DOMTestOverloadedConstructors.mm: Added.
2101         (-[DOMTestOverloadedConstructors dealloc]):
2102         (-[DOMTestOverloadedConstructors finalize]):
2103         (core):
2104         (kit):
2105         * bindings/scripts/test/ObjC/DOMTestOverloadedConstructorsInternal.h: Added.
2106         (WebCore):
2107         * bindings/scripts/test/TestOverloadedConstructors.idl: Copied from Source/WebCore/bindings/scripts/test/TestSerializedScriptValueInterface.idl.
2108         * bindings/scripts/test/TestSerializedScriptValueInterface.idl:
2109         * bindings/scripts/test/V8/V8TestOverloadedConstructors.cpp: Added.
2110         (WebCore):
2111         (TestOverloadedConstructorsV8Internal):
2112         (WebCore::TestOverloadedConstructorsV8Internal::V8_USE):
2113         (WebCore::V8TestOverloadedConstructors::constructor1Callback):
2114         (WebCore::V8TestOverloadedConstructors::constructor2Callback):
2115         (WebCore::V8TestOverloadedConstructors::constructor3Callback):
2116         (WebCore::V8TestOverloadedConstructors::constructor4Callback):
2117         (WebCore::V8TestOverloadedConstructors::constructorCallback):
2118         (WebCore::ConfigureV8TestOverloadedConstructorsTemplate):
2119         (WebCore::V8TestOverloadedConstructors::GetRawTemplate):
2120         (WebCore::V8TestOverloadedConstructors::GetTemplate):
2121         (WebCore::V8TestOverloadedConstructors::HasInstance):
2122         (WebCore::V8TestOverloadedConstructors::wrapSlow):
2123         (WebCore::V8TestOverloadedConstructors::derefObject):
2124         * bindings/scripts/test/V8/V8TestOverloadedConstructors.h: Added.
2125         (WebCore):
2126         (V8TestOverloadedConstructors):
2127         (WebCore::V8TestOverloadedConstructors::toNative):
2128         (WebCore::V8TestOverloadedConstructors::installPerContextProperties):
2129         (WebCore::V8TestOverloadedConstructors::installPerContextPrototypeProperties):
2130         (WebCore::V8TestOverloadedConstructors::wrap):
2131         (WebCore::toV8):
2132         * bindings/v8/custom/V8WebSocketCustom.cpp:
2133
2134 2012-11-12  Shinya Kawanaka  <shinyak@chromium.org>
2135
2136         [Refactoring] Create SelectRuleFeatureSet for collecting RuleFeatureSet for select attribute
2137         https://bugs.webkit.org/show_bug.cgi?id=101891
2138
2139         Reviewed by Hajime Morita.
2140
2141         We would like to have another class for RuleFeatureSet to collect 'select' attribute features,
2142         since it will have more features than the original RuleFeatureSet has.
2143
2144         Also, some methods of ElementShadow are removed and we provide a method to get SelectRuleFeatureSet itself.
2145
2146         No new tests, no change in behavior.
2147
2148         * CMakeLists.txt:
2149         * GNUmakefile.list.am:
2150         * Target.pri:
2151         * WebCore.gypi:
2152         * WebCore.vcproj/WebCore.vcproj:
2153         * WebCore.xcodeproj/project.pbxproj:
2154         * dom/ElementShadow.h:
2155         (ElementShadow):
2156         (WebCore::ElementShadow::selectRuleFeatureSet):
2157         (WebCore):
2158         * html/shadow/SelectRuleFeatureSet.cpp: Added.
2159         (WebCore):
2160         (WebCore::SelectRuleFeatureSet::SelectRuleFeatureSet):
2161         (WebCore::SelectRuleFeatureSet::add):
2162         (WebCore::SelectRuleFeatureSet::clear):
2163         (WebCore::SelectRuleFeatureSet::collectFeaturesFromSelector):
2164         * html/shadow/SelectRuleFeatureSet.h: Added.
2165         (WebCore):
2166         (SelectRuleFeatureSet):
2167         (WebCore::SelectRuleFeatureSet::hasSelectorForId):
2168         (WebCore::SelectRuleFeatureSet::hasSelectorForClass):
2169         (WebCore::SelectRuleFeatureSet::hasSelectorForAttribute):
2170         * testing/Internals.cpp:
2171         (WebCore::Internals::hasSelectorForIdInShadow):
2172         (WebCore::Internals::hasSelectorForClassInShadow):
2173         (WebCore::Internals::hasSelectorForAttributeInShadow):
2174
2175 2012-11-13  Keishi Hattori  <keishi@webkit.org>
2176
2177         Build fix for Chromium Android (caused by r134216)
2178
2179         Unreviewed.
2180
2181         No new tests.
2182
2183         * platform/text/PlatformLocale.cpp:
2184         (WebCore::Locale::formatDateTime):
2185
2186 2012-11-12  Keishi Hattori  <keishi@webkit.org>
2187
2188         Add support for week/month to Locale::formatDateTime()
2189         https://bugs.webkit.org/show_bug.cgi?id=101878
2190
2191         Reviewed by Kent Tamura.
2192
2193         Adding support for week/month to Locale::formatDateTime() in preparation for datalist support for <input type=week/month>.
2194
2195         Added Chromium tests LocaleMacTest.formatWeek and LocaleMacTest.formatMonth.
2196
2197         * platform/text/PlatformLocale.cpp:
2198         (WebCore::DateTimeStringBuilder::visitField):
2199         (WebCore::Locale::formatDateTime): Support week and month types.
2200
2201 2012-11-12  Allan Sandfeld Jensen  <allan.jensen@digia.com>
2202
2203         [Qt] Can not load MHTML documents
2204         https://bugs.webkit.org/show_bug.cgi?id=101765
2205
2206         Reviewed by Simon Hausmann.
2207
2208         Recognize common MHTML extensions so that we can recognize MHTML tests on the file-system.
2209
2210         Tested by existing mhtml/ tests.
2211
2212         * platform/qt/MIMETypeRegistryQt.cpp:
2213         (WebCore):
2214
2215 2012-11-12  Andreas Kling  <akling@apple.com>
2216
2217         Tighten vector in ResourceRequestBase::setResponseContentDispositionEncodingFallbackArray().
2218         <http://webkit.org/b/101850>
2219
2220         Reviewed by Antti Koivisto.
2221
2222         Reserve the exact amount of space needed for m_responseContentDispositionEncodingFallbackArray.
2223         222kB progression on Membuster3.
2224
2225         * platform/network/ResourceRequestBase.cpp:
2226         (WebCore::ResourceRequestBase::setResponseContentDispositionEncodingFallbackArray):
2227
2228 2012-11-12  Tommy Widenflycht  <tommyw@google.com>
2229
2230         MediaStream API: Schedule the RTCDataChannel events to be triggered at idle state
2231         https://bugs.webkit.org/show_bug.cgi?id=101751
2232
2233         Reviewed by Adam Barth.
2234
2235         This patch queues the events until the JS interpreter is in an idle state.
2236
2237         Existing tests cover this patch.
2238
2239         * Modules/mediastream/RTCDataChannel.cpp:
2240         (WebCore::RTCDataChannel::RTCDataChannel):
2241         (WebCore::RTCDataChannel::readyStateChanged):
2242         (WebCore::RTCDataChannel::dataArrived):
2243         (WebCore::RTCDataChannel::error):
2244         (WebCore::RTCDataChannel::scheduleDispatchEvent):
2245         (WebCore):
2246         (WebCore::RTCDataChannel::scheduledEventTimerFired):
2247         * Modules/mediastream/RTCDataChannel.h:
2248         (RTCDataChannel):
2249         * platform/chromium/support/WebRTCDataChannel.cpp:
2250         (WebKit::WebRTCDataChannel::setBufferedAmount):
2251         (WebKit::WebRTCDataChannel::readyStateChanged):
2252         (WebKit::WebRTCDataChannel::dataArrived):
2253         (WebKit::WebRTCDataChannel::error):
2254
2255 2012-11-12  Kunihiko Sakamoto  <ksakamoto@chromium.org>
2256
2257         Remove HTMLInputElement dependency from PickerIndicatorElement
2258         https://bugs.webkit.org/show_bug.cgi?id=101913
2259
2260         Reviewed by Kent Tamura.
2261
2262         Introduced PickerIndicatorOwner interface that replaces the role of hostInput() in
2263         PickerIndicatorElement. It makes easier to add interactions between picker indicator
2264         and its owner without having to add functions to HTMLInputElement.
2265
2266         No new tests. This is just a refactor.
2267
2268         * html/BaseMultipleFieldsDateAndTimeInputType.cpp:
2269         (WebCore::BaseMultipleFieldsDateAndTimeInputType::isPickerIndicatorOwnerDisabledOrReadOnly): Added.
2270         (WebCore):
2271         (WebCore::BaseMultipleFieldsDateAndTimeInputType::pickerIndicatorChooseValue): Added.
2272         (WebCore::BaseMultipleFieldsDateAndTimeInputType::setupDateTimeChooserParameters): Added.
2273         (WebCore::BaseMultipleFieldsDateAndTimeInputType::~BaseMultipleFieldsDateAndTimeInputType):
2274         (WebCore::BaseMultipleFieldsDateAndTimeInputType::createShadowSubtree):
2275         (WebCore::BaseMultipleFieldsDateAndTimeInputType::destroyShadowSubtree):
2276         * html/BaseMultipleFieldsDateAndTimeInputType.h:
2277         (WebCore):
2278         (BaseMultipleFieldsDateAndTimeInputType): Implements PickerIndicatorOwner.
2279         * html/shadow/PickerIndicatorElement.cpp: Replaced all the use of hostInput() by using PickerIndicatorOwner.
2280         (WebCore::PickerIndicatorElement::PickerIndicatorElement):
2281         (WebCore::PickerIndicatorElement::create):
2282         (WebCore::PickerIndicatorElement::defaultEventHandler):
2283         (WebCore::PickerIndicatorElement::willRespondToMouseClickEvents):
2284         (WebCore::PickerIndicatorElement::didChooseValue):
2285         (WebCore::PickerIndicatorElement::openPopup):
2286         * html/shadow/PickerIndicatorElement.h:
2287         (PickerIndicatorElement): Added a PickerIndicatorOwner member.
2288         (PickerIndicatorOwner): An interface class for communicating picker indicator and its owner.
2289         (WebCore::PickerIndicatorElement::PickerIndicatorOwner::~PickerIndicatorOwner):
2290         (WebCore::PickerIndicatorElement::removePickerIndicatorOwner):
2291
2292 2012-11-12  Mihnea Ovidenie  <mihnea@adobe.com>
2293
2294         [CSSRegions]Add support for text-shadow in region styling
2295         https://bugs.webkit.org/show_bug.cgi?id=94472
2296
2297         Reviewed by David Hyatt.
2298
2299         Original patch by Andrei Onea.
2300         Add support for text-shadow in region styling (@-webkit-region rule).
2301         In addition to the previously supported region styling properties (background-color and color),
2302         text-shadow requires the computation of an element style in region at layout time.
2303
2304         This patch adds a new method on RenderRegion - ensureRegionStyleForObject - that
2305         can be used to retrieve the object style in region (if already cached) or to compute it
2306         on the spot. When computing the object style in region, we need to compute the style in region
2307         also for the object ancestor, up to the content nodes.
2308
2309         This patch also refactors the way styles in region are computed and stored, because
2310         we can compute the style in region not only at paint time, but also at layout time.
2311
2312         Test: fast/regions/region-style-text-shadow.html
2313
2314         * css/StyleResolver.cpp:
2315         (WebCore::StyleResolver::isValidRegionStyleProperty):
2316         Allow text-shadow to be used in region styling.
2317         * rendering/InlineBox.cpp:
2318         (WebCore::InlineBox::styleInRegion):
2319         Retrieve the region style for an InlineBox's renderer, given its RenderRegion.
2320         Compute the style in region if not computed yet.
2321         (WebCore::InlineBox::regionDuringLayout):
2322         Retrieve the region in which an InlineBox is being flowed.
2323         * rendering/InlineBox.h:
2324         * rendering/InlineFlowBox.cpp: Take region styling into account.
2325         (WebCore::InlineFlowBox::addToLine):
2326         (WebCore::InlineFlowBox::addTextBoxVisualOverflow):
2327         * rendering/RenderRegion.cpp:
2328         (WebCore::RenderRegion::setRegionObjectsRegionStyle):
2329         (WebCore::canCacheObjectStyleInRegion):
2330         Test if we can cache the computed style in region.
2331         (WebCore::RenderRegion::restoreRegionObjectsOriginalStyle):
2332         (WebCore::RenderRegion::computeStyleInRegion):
2333         (WebCore::RenderRegion::setChildrenStyleInRegion):
2334         (WebCore::setObjectHasBoxDecorationsFlag):
2335         (WebCore::RenderRegion::setObjectStyleInRegion):
2336         (WebCore::RenderRegion::clearObjectStyleInRegion):
2337         (WebCore::RenderRegion::ensureRegionStyleForObject):
2338         * rendering/RenderRegion.h:
2339
2340 2012-11-12  Sheriff Bot  <webkit.review.bot@gmail.com>
2341
2342         Unreviewed, rolling out r134154.
2343         http://trac.webkit.org/changeset/134154
2344         https://bugs.webkit.org/show_bug.cgi?id=101919
2345
2346         Causes plenty of crashes on GTK and Apple Win builders
2347         (Requested by zdobersek on #webkit).
2348
2349         * css/mediaControls.css:
2350         * css/mediaControlsQuickTime.css:
2351         (audio::-webkit-media-controls-toggle-closed-captions-button, video::-webkit-media-controls-toggle-closed-captions-button):
2352         (audio::-webkit-media-controls-volume-slider-mute-button, video::-webkit-media-controls-volume-slider-mute-button):
2353         * html/shadow/MediaControlElements.cpp:
2354         (WebCore::MediaControlToggleClosedCaptionsButtonElement::MediaControlToggleClosedCaptionsButtonElement):
2355         (WebCore::MediaControlToggleClosedCaptionsButtonElement::create):
2356         (WebCore::MediaControlToggleClosedCaptionsButtonElement::defaultEventHandler):
2357         (WebCore::MediaControlToggleClosedCaptionsButtonElement::updateDisplayType):
2358         (WebCore::MediaControlToggleClosedCaptionsButtonElement::shadowPseudoId):
2359         * html/shadow/MediaControlElements.h:
2360         (MediaControlElement):
2361         (MediaControlToggleClosedCaptionsButtonElement):
2362         * html/shadow/MediaControlRootElement.cpp:
2363         (WebCore::MediaControlRootElement::MediaControlRootElement):
2364         (WebCore::MediaControlRootElement::create):
2365         (WebCore::MediaControlRootElement::setMediaController):
2366         (WebCore::MediaControlRootElement::hide):
2367         (WebCore::MediaControlRootElement::makeTransparent):
2368         (WebCore::MediaControlRootElement::reset):
2369         (WebCore::MediaControlRootElement::reportedError):
2370         * html/shadow/MediaControlRootElement.h:
2371         (WebCore):
2372         (MediaControlRootElement):
2373         * html/shadow/MediaControlRootElementChromium.cpp:
2374         (WebCore::MediaControlRootElementChromium::initializeControls):
2375         * html/shadow/MediaControls.h:
2376         (MediaControls):
2377         * platform/Language.cpp:
2378         (WebCore):
2379         * platform/Language.h:
2380         (WebCore):
2381         * rendering/RenderMediaControls.cpp:
2382         (WebCore::RenderMediaControls::paintMediaControlsPart):
2383         * rendering/RenderMediaControlsChromium.cpp:
2384         (WebCore::RenderMediaControlsChromium::paintMediaControlsPart):
2385
2386 2012-11-12  Mike West  <mkwst@chromium.org>
2387
2388         'for (x in y)' requires 'var' declaration in ConsoleMessage.js
2389         https://bugs.webkit.org/show_bug.cgi?id=101908
2390
2391         Reviewed by Pavel Feldman.
2392
2393         r134166 should have included a 'var' declaration in its 'for (x in y)'
2394         loop. This patch adds the missing 'var' in order to prevent leakage into
2395         the global context.
2396
2397         * inspector/front-end/ConsoleMessage.js:
2398         (WebInspector.ConsoleMessageImpl.prototype.append):
2399         (WebInspector.ConsoleMessageImpl.prototype._formatWithSubstitutionString):
2400
2401 2012-11-12  Zeno Albisser  <zeno@webkit.org>
2402
2403         [Qt] MiniBrowser should not strongly depend on QtTestSupport.
2404         https://bugs.webkit.org/show_bug.cgi?id=101775
2405
2406         Introducing HAVE(QTTESTSUPPORT) to allow building
2407         MiniBrowser without QtTestSupport.
2408         This is necessary when using a production build.
2409
2410         Reviewed by Tor Arne Vestbø.
2411
2412         * Target.pri:
2413         * platform/qt/QtTestSupport.h:
2414
2415 2012-11-12  Pavel Feldman  <pfeldman@chromium.org>
2416
2417         Web Inspector: wasShown is called twice when show() is called from within wasShown
2418         https://bugs.webkit.org/show_bug.cgi?id=101858
2419
2420         Reviewed by Vsevolod Vlasov.
2421
2422         When we attach views lazily from within wasShown, the views were getting wasShown notification twice.
2423         We now mute one of them.
2424
2425         * inspector/front-end/View.js:
2426         (WebInspector.View):
2427         (WebInspector.View.prototype._inNotification):
2428         (WebInspector.View.prototype._parentIsShowing):
2429         (WebInspector.View.prototype._callOnVisibleChildren):
2430         (WebInspector.View.prototype._processWasShown):
2431         (WebInspector.View.prototype._processWillHide):
2432         (WebInspector.View.prototype._processOnResize):
2433         (WebInspector.View.prototype._notify):
2434         (WebInspector.View.prototype.show):
2435
2436 2012-11-12  Ryosuke Niwa  <rniwa@webkit.org>
2437
2438         Build fix after r134191. Turns out that FrameView::performPostLayoutTasks calls FrameSelection::updateAppearance
2439         in the middle of a layout. So we can't have assertions in recomputeCaretRect and updateAppearance.
2440
2441         Furthermore, we can't update layout in updateAppearance. So do that in its call sites.
2442
2443         * editing/FrameSelection.cpp:
2444         (WebCore::FrameSelection::setSelection):
2445         (WebCore::FrameSelection::recomputeCaretRect):
2446         (WebCore::FrameSelection::updateAppearance):
2447         (WebCore::FrameSelection::setCaretVisibility):
2448
2449 2012-11-12  Shinya Kawanaka  <shinyak@chromium.org>
2450
2451         Don't update style when attaching in HTMLMeterElement
2452         https://bugs.webkit.org/show_bug.cgi?id=101714
2453
2454         Reviewed by Hajime Morita.
2455
2456         HTMLMeterElement was updating style when it's being attached. However, updating style when attaching
2457         can cause style-update prevention. The similar thing has already happened in Bug 100507.
2458
2459         Since we have already set the default value in creating ShadowDOM subtree, we don't need to update style actually.
2460
2461         Test: fast/dom/HTMLMeterElement/meter-bar-set-value.html
2462
2463         * html/HTMLMeterElement.cpp:
2464         * html/HTMLMeterElement.h:
2465         (HTMLMeterElement): Removed attach(). We don't need it.
2466
2467 2012-11-09  Ryosuke Niwa  <rniwa@webkit.org>
2468
2469         Multiple Layout Tests (e.g. fast/repaint/japanese-rl-selection-clear.html) is failing after r133840.
2470         https://bugs.webkit.org/show_bug.cgi?id=101547
2471
2472         Reviewed by Simon Fraser.
2473
2474         I overlooked the fact when the selection is null, we still have to invalidate the caret rect that
2475         previously existed. Revert the optimization added in r133840 to skip caret invalidation when new
2476         selection is null, and add a special method to be called by FrameLoader prior to destruction instead.
2477         This will let us avoid doing an extra layout upon destruction and not regress repaint tests.
2478
2479         Covered by existing tests.
2480
2481         * editing/FrameSelection.cpp:
2482         (WebCore::FrameSelection::setSelection): Added DoNotUpdateAppearance option.
2483         (WebCore::FrameSelection::prepareForDestruction): Added.
2484         (WebCore::FrameSelection::updateAppearance): Reverted the flawed optimization added in r133840.
2485         Also, don't update style before updating selection unless text caret is disabled since we always
2486         update the layout (including style) when text caret is enabled.
2487         * editing/FrameSelection.h:
2488         (FrameSelection):
2489         * loader/FrameLoader.cpp:
2490         (WebCore::FrameLoader::clear): Call prepareForDestruction instead of clear to avoid a layout.
2491
2492 2012-11-11  Dongwoo Joshua Im  <dw.im@samsung.com>
2493
2494         [CSS3] Parsing the property, text-align-last.
2495         https://bugs.webkit.org/show_bug.cgi?id=99439
2496
2497         Reviewed by Julien Chaffraix.
2498
2499         This patch implements the parsing side of the "text-align-last" property specified
2500         in CSS3 working draft, with "-webkit-" prefix, under ENABLE_CSS3_TEXT flag.
2501         Specification link : http://www.w3.org/TR/css3-text/#text-align-last
2502
2503         Tests: fast/css3-text/css3-text-align-last/getComputedStyle/getComputedStyle-text-align-last-inherited.html
2504                fast/css3-text/css3-text-align-last/getComputedStyle/getComputedStyle-text-align-last.html
2505
2506         * css/CSSComputedStyleDeclaration.cpp:
2507         (WebCore):
2508         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): Get the value of the text-align-last property.
2509         * css/CSSParser.cpp:
2510         (WebCore::CSSParser::parseValue): Parse the value, and check whether it is a proper value which text-align-last can have.
2511         * css/CSSPrimitiveValueMappings.h:
2512         (WebCore):
2513         (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
2514         (WebCore::CSSPrimitiveValue::operator ETextAlignLast):
2515         * css/CSSProperty.cpp:
2516         (WebCore::CSSProperty::isInheritedProperty):
2517         * css/CSSPropertyNames.in: Add '-webkit-text-align-last' property.
2518         * css/StyleBuilder.cpp:
2519         (WebCore::StyleBuilder::StyleBuilder):
2520         * css/StylePropertySet.cpp:
2521         (WebCore):
2522         * css/StyleResolver.cpp:
2523         (WebCore::StyleResolver::applyProperty):
2524         * rendering/style/RenderStyle.h:
2525         * rendering/style/RenderStyleConstants.h:
2526         * rendering/style/StyleRareInheritedData.cpp:
2527         (WebCore::StyleRareInheritedData::StyleRareInheritedData):
2528         (WebCore::StyleRareInheritedData::operator==):
2529         * rendering/style/StyleRareInheritedData.h:
2530         (StyleRareInheritedData): Add m_textAlignLast.
2531
2532 2012-11-11  Shinya Kawanaka  <shinyak@chromium.org>
2533
2534         [Refactoring] Remove shadowPseudoId() and use setPseudo() in HTMLKeygenElement
2535         https://bugs.webkit.org/show_bug.cgi?id=101881
2536
2537         Reviewed by Kent Tamura.
2538
2539         We're migrating shadowPseudoId() to pseudo(). We remove shadowPseudoId() from HTMLKeygenElement and use
2540         setPseudo()/pseudo() instead.
2541
2542         No new tests, simple refacotring.
2543
2544         * html/HTMLKeygenElement.cpp:
2545         (WebCore::KeygenSelectElement::KeygenSelectElement):
2546         (KeygenSelectElement):
2547
2548 2012-11-11  Adam Barth  <abarth@webkit.org>
2549
2550         Many DOMWindowProperties would benefit from being ScriptWrappable
2551         https://bugs.webkit.org/show_bug.cgi?id=101887
2552
2553         Reviewed by Kentaro Hara.
2554
2555         These object are only ever created at the behest of script, which means
2556         making them ScriptWrappable is a win.
2557
2558         * page/BarInfo.h:
2559         * page/Console.h:
2560         * page/Crypto.h:
2561         * page/History.h:
2562         * page/Location.h:
2563         * page/Navigator.h:
2564         * page/Performance.h:
2565
2566 2012-11-11  Kentaro Hara  <haraken@chromium.org>
2567
2568         [V8] HTMLDocument::all() needs not to be custom
2569         https://bugs.webkit.org/show_bug.cgi?id=101875
2570
2571         Reviewed by Adam Barth.
2572
2573         We can easily remove the custom getter from V8 because the
2574         custom setter sets .all by ForceSet(). On the other hand,
2575         it is non-trivial to remove the custom getter from JSC
2576         because the custom setter sets .all by putDirect()
2577         and the custom getter wants to get it by getDirect().
2578
2579         No tests. No change in behavior.
2580
2581         * bindings/v8/custom/V8HTMLDocumentCustom.cpp:
2582         * html/HTMLDocument.idl:
2583
2584 2012-11-11  Kentaro Hara  <haraken@chromium.org>
2585
2586         [V8] V8Console::memoryAttrGetter() needs not to be custom
2587         https://bugs.webkit.org/show_bug.cgi?id=101873
2588
2589         Reviewed by Adam Barth.
2590
2591         No tests. No change in behavior.
2592
2593         * bindings/v8/custom/V8ConsoleCustom.cpp:
2594         (WebCore):
2595         * page/Console.idl:
2596
2597 2012-11-11  Shinya Kawanaka  <shinyak@chromium.org>
2598
2599         [Shadow] ElementShadow should have RuleFeatureSet for select attribute selectors.
2600         https://bugs.webkit.org/show_bug.cgi?id=101180
2601
2602         Reviewed by Dimitri Glazkov.
2603
2604         This is a preparation patch for Bug 100451.
2605
2606         We preserve RuleFeatureSet collected from select attributes in ShadowDOM.
2607         When an element attribute is changed, we might have to invalidate content distribution,
2608         however it's high cost operation. So we would like to check RuleFeatureSet used in
2609         select attributes to determine we really need to invalidate distribution.
2610
2611         Like StyleResolver, ElementShadow has several rule features. When nested ShadowDOM is used,
2612         first we collect features in nested ShadowDOM, and merge it to the parent ShadowDOM.
2613         For the performance reason, we have a flag to check whether we need to collect features again.
2614
2615         Test: fast/dom/shadow/shadow-select-attribute-featureset.html
2616
2617         * WebCore.exp.in:
2618         * dom/ElementShadow.cpp:
2619         (WebCore::ElementShadow::ElementShadow):
2620         (WebCore::ElementShadow::setShouldCollectSelectFeatureSet): Enable a flag to collect feature set of descendant
2621         nodes (and their ShadowDOM).
2622         (WebCore):
2623         (WebCore::ElementShadow::ensureSelectFeatureSetCollected):
2624         (WebCore::ElementShadow::collectSelectFeatureSetFrom): Collect RuleFeatureSet from all descendant Nodes and their
2625         ShadowDOM. We need to collect id, class, and attribute names.
2626         * dom/ElementShadow.h:
2627         (WebCore::ElementShadow::shouldCollectSelectFeatureSet):
2628         (ElementShadow):
2629         (WebCore::ElementShadow::hasSelectorForId):
2630         (WebCore):
2631         (WebCore::ElementShadow::hasSelectorForClass):
2632         (WebCore::ElementShadow::hasSelectorForAttribute):
2633         * html/shadow/HTMLContentElement.cpp:
2634         (WebCore::HTMLContentElement::parseAttribute): When select attribute is changed, enable a flag to recollect features.
2635         (WebCore::HTMLContentElement::insertedInto): We have to recollect features when HTMLContentElement is moved.
2636         (WebCore::HTMLContentElement::removedFrom): ditto.
2637         * html/shadow/HTMLContentElement.h:
2638         (WebCore::toHTMLContentElement):
2639         (WebCore):
2640         * testing/Internals.cpp:
2641         (WebCore::Internals::hasSelectorForIdInShadow):
2642         (WebCore):
2643         (WebCore::Internals::hasSelectorForClassInShadow):
2644         (WebCore::Internals::hasSelectorForAttributeInShadow):
2645         * testing/Internals.h:
2646         (Internals):
2647         * testing/Internals.idl:
2648
2649 2012-11-11  Sheriff Bot  <webkit.review.bot@gmail.com>
2650
2651         Unreviewed, rolling out r134144.
2652         http://trac.webkit.org/changeset/134144
2653         https://bugs.webkit.org/show_bug.cgi?id=101876
2654
2655         seems to break win 7 chromium browser test (Requested by
2656         hayato on #webkit).
2657
2658         * WebCore.exp.in:
2659         * page/EventHandler.cpp:
2660         (WebCore):
2661         (WebCore::EventHandler::handleMouseMoveEvent):
2662         * page/EventHandler.h:
2663         (EventHandler):
2664         * testing/Internals.cpp:
2665         * testing/Internals.h:
2666         * testing/Internals.idl:
2667
2668 2012-11-11  Kent Tamura  <tkent@chromium.org>
2669
2670         Internals: MockPagePopup should not update DOM structure during detach()
2671         https://bugs.webkit.org/show_bug.cgi?id=101710
2672
2673         Reviewed by Hajime Morita.
2674
2675         PickerIndicatorElement::detach calls
2676         MockPagePopupDriver::closePagePopup, MockPagePopup::~MockPagePopup,
2677         which remove the mock iframe from the tree. But updating the tree during
2678         detach() is dangerous.
2679
2680         MockPagePopupDriver::closePagePopup calls MockpagePopup::closeLater, it
2681         requests to call 'close' asynchronously, and 'close' removes the mock
2682         iframe. We need to change MockPagePopup so that it is ref-couted and has
2683         a timer.
2684
2685         No new tests. This is a change for the test harness.
2686
2687         * testing/MockPagePopupDriver.cpp:
2688         (MockPagePopup): Make this ref-counted, add closeLater, add close, and
2689         add m_closeTimer.
2690         (WebCore::MockPagePopup::MockPagePopup): Initialize the timer.
2691         (WebCore::MockPagePopup::create): PassOwnPtr -> PassRefPtr
2692         (WebCore::MockPagePopup::closeLater):
2693         - Add one reference to avoid destruction by m_mockPagePopup.clear() in
2694           closePagePopup.
2695         - Notify didClosePopup here because the client expects didClosePopup is
2696           called synchronously.
2697         - Invoke the timer to call 'close'
2698         (WebCore::MockPagePopup::close):
2699         Just remove one reference. This means calling the desructor.
2700         (WebCore::MockPagePopup::~MockPagePopup):
2701         Move didClosePopup call to caloseLater.
2702         (WebCore::MockPagePopupDriver::closePagePopup):
2703         Request to close PagePopup.
2704         Clear PagePopupClient in m_pagePopupController because this object is
2705         necessary until MockPagePopup is closed, but it should not have a
2706         reference to the PagePopupClient.
2707         * testing/MockPagePopupDriver.h:
2708         (MockPagePopupDriver): Make MockPagePopup ref-counted.
2709
2710 2012-11-11  Adam Barth  <abarth@webkit.org>
2711
2712         axObjectCache code is more complicated than necessary
2713         https://bugs.webkit.org/show_bug.cgi?id=101820
2714
2715         Reviewed by Darin Adler.
2716
2717         This code should use OwnPtr rather than manually calling new/delete.
2718         Also, instead of using a "double check" pattern, we can just access the
2719         private fields on the top document directly.
2720
2721         * dom/Document.cpp:
2722         (WebCore::Document::Document):
2723         (WebCore::Document::clearAXObjectCache):
2724         (WebCore::Document::axObjectCacheExists):
2725         (WebCore):
2726         (WebCore::Document::axObjectCache):
2727         * dom/Document.h:
2728         (Document):
2729
2730 2012-11-10  Simon Fraser  <simon.fraser@apple.com>
2731
2732         Save one call to containerForRepaint() when updating layer positions
2733         https://bugs.webkit.org/show_bug.cgi?id=101856
2734
2735         Reviewed by Dan Bernstein.
2736
2737          RenderLayer::updateLayerPositions() has already computed the repaint container,
2738          but calls computeRepaintRects() which computes it again. Computing the repaint
2739          container involves a walk back up the layer tree, so calling it during a tree
2740          traversal is costly.
2741          
2742          Fix by passing the repaint container down into computeRepaintRects().
2743
2744         * rendering/RenderLayer.cpp:
2745         (WebCore::RenderLayer::updateLayerPositions):
2746         (WebCore::RenderLayer::computeRepaintRects):
2747         (WebCore::RenderLayer::computeRepaintRectsIncludingDescendants):
2748         (WebCore::RenderLayer::updateLayerPositionsAfterScroll):
2749         (WebCore::RenderLayer::setHasVisibleContent):
2750         * rendering/RenderLayer.h:
2751         (RenderLayer):
2752
2753 2012-11-11  Kenichi Ishibashi  <bashi@chromium.org>
2754
2755         WTFString::utf8() should have a mode of conversion to use replacement character
2756         https://bugs.webkit.org/show_bug.cgi?id=101678
2757
2758         Reviewed by Alexey Proskuryakov.
2759
2760         Follow the change on String::utf8()
2761
2762         No new tests. No changes in behavior.
2763
2764         * Modules/websockets/WebSocket.cpp:
2765         (WebCore::WebSocket::close): Pass String::StrictConversion instead of true to String::utf8().
2766         * Modules/websockets/WebSocketChannel.cpp:
2767         (WebCore::WebSocketChannel::send): Ditto.
2768         * html/MediaFragmentURIParser.cpp:
2769         (WebCore::MediaFragmentURIParser::parseFragments): Ditto.
2770         * platform/graphics/blackberry/MediaPlayerPrivateBlackBerry.cpp:
2771         (WebCore::MediaPlayerPrivate::notifyChallengeResult): Ditto.
2772         * platform/network/blackberry/rss/RSSFilterStream.cpp:
2773         (WebCore::RSSFilterStream::convertContentToHtml): Ditto.
2774         * platform/network/blackberry/rss/RSSGenerator.cpp:
2775         (WebCore::RSSGenerator::generateHtml): Ditto.
2776
2777 2012-11-10  Simon Fraser  <simon.fraser@apple.com>
2778
2779         Coalesce main thread scroll position updates
2780         https://bugs.webkit.org/show_bug.cgi?id=101855
2781
2782         Reviewed by Anders Carlsson.
2783
2784         When using threaded scrolling, the dispatched updateMainFrameScrollPosition() calls 
2785         from ScrollingTree would pile up on the main thread, and we'd handle several per
2786         runloop cycle when scrolling fast. This causes extra work especially on pages
2787         with position:fixed elements which must update RenderLayers on scrolling.
2788         
2789         Fix by using a zero-delay timer in ScrollingCoordinator to coalesce these
2790         scrolling updates to one per runloop.
2791
2792         * page/scrolling/ScrollingCoordinator.cpp:
2793         (WebCore::ScrollingCoordinator::ScrollingCoordinator): Initialized data members
2794         for the scheduled scroll position update.
2795         (WebCore::ScrollingCoordinator::scheduleUpdateMainFrameScrollPosition): If 
2796         the timer is active and the parameters match, just update the target scroll
2797         position and return. If the params don't match, dispatch the scheduled update,
2798         and then the new one. Otherwise, prime the timer.
2799         (WebCore::ScrollingCoordinator::updateMainFrameScrollPositionTimerFired): Call
2800         the existing updateMainFrameScrollPosition() with the saved values.
2801         * page/scrolling/ScrollingCoordinator.h:
2802         * page/scrolling/ScrollingTree.cpp:
2803         (WebCore::ScrollingTree::updateMainFrameScrollPosition): Call scheduleUpdateMainFrameScrollPosition()
2804         rather than updateMainFrameScrollPosition().
2805         * page/scrolling/mac/ScrollingCoordinatorMac.mm:
2806         (WebCore::ScrollingCoordinatorMac::syncChildPositions): Fixed a bug that caused fixed
2807         position elements to jiggle with the patch; we should be calling syncPosition() (which just
2808         sets the position data, without touching CA layers).
2809
2810 2012-11-10  Simon Fraser  <simon.fraser@apple.com>
2811
2812         Remove ScrollingCoordinatorMac::updateMainFrameScrollPositionAndScrollLayerPosition()
2813         https://bugs.webkit.org/show_bug.cgi?id=101514
2814
2815         Reviewed by Tim Horton.
2816
2817         ScrollingCoordinatorMac::updateMainFrameScrollPositionAndScrollLayerPosition() is very similar to
2818         ScrollingCoordinator::updateMainFrameScrollPosition(). In order to eliminate updateMainFrameScrollPositionAndScrollLayerPosition(),
2819         we just need to plumb through a flag that says that updateMainFrameScrollPosition() should
2820         set the layer position (rather than just doing a 'sync').
2821
2822         * page/scrolling/ScrollingCoordinator.cpp:
2823         (WebCore::ScrollingCoordinator::updateMainFrameScrollPosition):
2824         * page/scrolling/ScrollingCoordinator.h:
2825         * page/scrolling/ScrollingTree.cpp:
2826         (WebCore::ScrollingTree::updateMainFrameScrollPosition):
2827         * page/scrolling/ScrollingTree.h:
2828         * page/scrolling/mac/ScrollingCoordinatorMac.h:
2829         * page/scrolling/mac/ScrollingCoordinatorMac.mm:
2830         * page/scrolling/mac/ScrollingTreeScrollingNodeMac.mm:
2831         (WebCore::ScrollingTreeScrollingNodeMac::setScrollPositionWithoutContentEdgeConstraints):
2832
2833 2012-11-10  Sheriff Bot  <webkit.review.bot@gmail.com>
2834
2835         Unreviewed, rolling out r134069.
2836         http://trac.webkit.org/changeset/134069
2837         https://bugs.webkit.org/show_bug.cgi?id=101852
2838
2839         "It is a wrong way to fix the problem. See discussions in bug
2840         96614" (Requested by 1JTAAPQFJ on #webkit).
2841
2842         * bindings/js/JSDictionary.cpp:
2843         (WebCore::JSDictionary::getWithUndefinedOrNullCheck):
2844
2845 2012-11-10  Mike West  <mkwst@chromium.org>
2846
2847         Web Inspector: Multiple '%c' formatting options should all have effect.
2848         https://bugs.webkit.org/show_bug.cgi?id=101495
2849
2850         Reviewed by Pavel Feldman.
2851
2852         This patch supports multiple '%c' formatting blocks in console messages.
2853         'console.log("%cblue! %cgreen!", "color: blue;", "color: green;")' will
2854         do exactly what you expect: "blue!" will be blue, and "green!" will be
2855         green.
2856
2857         The implementation moves the styles off the message's parent 'span', and
2858         onto new 'span' elements that wrap the various textual bits of the
2859         message.
2860
2861         * inspector/front-end/ConsoleMessage.js:
2862         (WebInspector.ConsoleMessageImpl.prototype.):
2863         (WebInspector.ConsoleMessageImpl.prototype.append):
2864         (WebInspector.ConsoleMessageImpl.prototype._formatWithSubstitutionString):
2865
2866 2012-11-10  Mike West  <mkwst@chromium.org>
2867
2868         Including <CoreText/CoreText.h> breaks the chromium/mac build.
2869         https://bugs.webkit.org/show_bug.cgi?id=101851
2870
2871         Reviewed by Dan Bernstein.
2872
2873         r134146 introduced inclusion of 'CoreText/CoreText.h' in
2874         SimpleFontDataCoreText.cpp, which broke the chromium/mac build. Grepping
2875         around, it looks like this needs to be modified to include
2876         'ApplicationServices/ApplicationServices.h'.
2877
2878         * platform/graphics/mac/SimpleFontDataCoreText.cpp:
2879             Drop 'CoreText.h' in favor of 'ApplicationServices.h'.
2880         * platform/graphics/mac/ComplexTextControllerCoreText.mm:
2881             Drop the platform-specific '#if' logic; just include 'ApplicationServices.h'.
2882
2883 2012-11-10  Andreas Kling  <kling@webkit.org>
2884
2885         Don't detach from shared ElementAttributeData when overwriting attribute with identical value.
2886         <http://webkit.org/b/101849>
2887
2888         Reviewed by Anders Carlsson.
2889
2890         Defer the mutableAttributeData() call in Element::setAttributeInternal() until the last
2891         possible moment, to avoid unnecessarily detaching and cloning from attribute data.
2892
2893         120 kB progression on Membuster3.
2894
2895         * dom/Element.cpp:
2896         (WebCore::Element::setAttributeInternal):
2897         (WebCore::Element::addAttributeInternal):
2898
2899 2012-11-10  Simon Fraser  <simon.fraser@apple.com>
2900
2901         Some minor optimizations in RenderLayer
2902         https://bugs.webkit.org/show_bug.cgi?id=101847
2903
2904         Reviewed by Anders Carlsson.
2905
2906         Some minor performance improvements in RenderLayer code.
2907
2908         * rendering/RenderLayer.cpp:
2909         (WebCore::RenderLayer::updateLayerPosition): isRenderInline() is a virtual call,
2910         so prefix it with an isInline() check which tests a bit on RenderObject.
2911         (WebCore::RenderLayer::localBoundingBox): Ditto.
2912         (WebCore::RenderLayer::calculateLayerBounds): Pull layer->renderer()
2913         into a local variable.
2914
2915 2012-11-10  Anders Carlsson  <andersca@apple.com>
2916
2917         Document::m_fullScreenElementStack should be a Vector
2918         https://bugs.webkit.org/show_bug.cgi?id=101844
2919
2920         Reviewed by Andreas Kling.
2921
2922         m_fullScreenElementStack is currently a Deque where elements are being prepended
2923         and removed from the beginning in LIFO order, so it can be replaced with a Vector.
2924
2925         * dom/Document.cpp:
2926         (WebCore::Document::requestFullScreenForElement):
2927         (WebCore::Document::webkitCancelFullScreen):
2928         (WebCore::Document::popFullscreenElementStack):
2929         (WebCore::Document::pushFullscreenElementStack):
2930         * dom/Document.h:
2931         (WebCore::Document::webkitFullscreenElement):
2932         (Document):
2933
2934 2012-11-10  Adam Barth  <abarth@webkit.org>
2935
2936         [V8] Clean up header includes and ifdefs in V8GCController
2937         https://bugs.webkit.org/show_bug.cgi?id=101691
2938
2939         Reviewed by Kentaro Hara.
2940
2941         This file doesn't need to include all these headers anymore.
2942
2943         * bindings/v8/V8GCController.cpp:
2944         (WebCore::workingSetEstimateMBMutex):
2945         (WebCore::V8GCController::majorGCEpilogue):
2946         (WebCore::V8GCController::checkMemoryUsage):
2947
2948 2012-11-10  Joseph Pecoraro  <pecoraro@apple.com>
2949
2950         [Mac] Guard WebCore PageVisibility Symbol Export
2951         https://bugs.webkit.org/show_bug.cgi?id=101817
2952
2953         Reviewed by Andreas Kling.
2954
2955         Guard the export with the same ENABLE guards around its definition
2956         and implementation.
2957
2958         * WebCore.exp.in:
2959
2960 2012-11-10  Bruno de Oliveira Abinader  <bruno.abinader@basyskom.com>
2961
2962         [css] text-decoration:none no longer valid
2963         https://bugs.webkit.org/show_bug.cgi?id=101529
2964
2965         Reviewed by Ojan Vafai.
2966
2967         This patch fixes an issue where the 'none' value was parsed as explicitly
2968         'initial' value. However true in a sense that the initial value for the
2969         'text-decoration' property is 'none', the value itself could not be parsed as
2970         'initial'.
2971
2972         The getComputedStyle layout tests for 'text-decoration' and
2973         '-webkit-text-decoration-line' CSS properties are updated with the correct
2974         results.
2975
2976         * css/CSSParser.cpp:
2977         (WebCore::CSSParser::parseTextDecoration): When parsed, 'none' value
2978         gets its own identifier value instead of explicit initial.
2979
2980 2012-11-09  Dean Jackson  <dino@apple.com>
2981
2982         Support list of tracks in caption media controls
2983         https://bugs.webkit.org/show_bug.cgi?id=101669
2984
2985         Reviewed by Eric Carlson.
2986
2987         Attempt three of commit. The first two times caused build failures on Chromium.
2988
2989         Add some new elements to the media control shadow DOM that display the list of available
2990         tracks on an audio/video element. The UI is hidden by default everywhere but on Mac,
2991         where it is given a very basic design. At the moment only the list of available tracks
2992         are displayed; The followup bug will make the UI active: https://bugs.webkit.org/show_bug.cgi?id=101670
2993
2994         No new tests - this doesn't expose any testable surface.
2995
2996         * css/mediaControls.css: Added default rules that hide the new elements.
2997         * css/mediaControlsQuickTime.css: Specific rules that give a basic rendering of the new track list.
2998         * html/shadow/MediaControlElements.cpp:
2999         (WebCore::MediaControlElement::isShowing): Tests for the visibility of a control.
3000         (WebCore::MediaControlClosedCaptionsContainerElement::MediaControlClosedCaptionsContainerElement):
3001         (WebCore::MediaControlClosedCaptionsContainerElement::create):
3002         (WebCore::MediaControlClosedCaptionsContainerElement::shadowPseudoId):
3003         (WebCore::MediaControlToggleClosedCaptionsButtonElement::MediaControlToggleClosedCaptionsButtonElement):
3004         (WebCore::MediaControlToggleClosedCaptionsButtonElement::create): Now takes a reference to the media controls as a parameter.
3005         (WebCore::MediaControlToggleClosedCaptionsButtonElement::updateDisplayType):
3006         (WebCore::MediaControlToggleClosedCaptionsButtonElement::defaultEventHandler):
3007         (WebCore::MediaControlToggleClosedCaptionsButtonElement::shadowPseudoId):
3008         (WebCore::MediaControlClosedCaptionsTrackListElement::MediaControlClosedCaptionsTrackListElement): New element for holding a list of tracks to display.
3009         * html/shadow/MediaControlElements.h:
3010         (MediaControlElement):
3011         (MediaControlToggleClosedCaptionsButtonElement):
3012         (MediaControlClosedCaptionsContainerElement):
3013         (MediaControlClosedCaptionsTrackListElement): Examines the media element to build a shadow DOM that lists all the tracks available.
3014         * html/shadow/MediaControlRootElement.cpp:
3015         (WebCore::MediaControlRootElement::MediaControlRootElement):
3016         (WebCore::MediaControlRootElement::create): New track container and list elements created.
3017         (WebCore::MediaControlRootElement::setMediaController): Hook up the new elements to the controller..
3018         (WebCore::MediaControlRootElement::hide):
3019         (WebCore::MediaControlRootElement::makeTransparent):
3020         (WebCore::MediaControlRootElement::reset):
3021         (WebCore::MediaControlRootElement::reportedError):
3022         (WebCore::MediaControlRootElement::toggleClosedCaptionTrackList): Shows or hides the popup with the list of tracks.
3023         (WebCore):
3024         * html/shadow/MediaControlRootElement.h:
3025         (WebCore):
3026         (MediaControlRootElement):
3027         * html/shadow/MediaControlRootElementChromium.cpp:
3028         (WebCore::MediaControlRootElementChromium::initializeControls): Pass in the controls as a parameter.
3029         * html/shadow/MediaControls.h:
3030         (MediaControls):
3031         * platform/Language.cpp:
3032         (WebCore::displayNameForLanguageLocale): New function to return a human-readable name for a locale, given the identifier input.
3033         * platform/Language.h:
3034         (WebCore):
3035         * rendering/RenderMediaControls.cpp:
3036         (WebCore::RenderMediaControls::paintMediaControlsPart): New enum values into switch.
3037         * rendering/RenderMediaControlsChromium.cpp:
3038         (WebCore::RenderMediaControlsChromium::paintMediaControlsPart): New enum values into switch.
3039
3040 2012-11-09  Sheriff Bot  <webkit.review.bot@gmail.com>
3041
3042         Unreviewed, rolling out r134152.
3043         http://trac.webkit.org/changeset/134152
3044         https://bugs.webkit.org/show_bug.cgi?id=101831
3045
3046         broke chromium again (Requested by dino_ on #webkit).
3047
3048         * css/mediaControls.css:
3049         * css/mediaControlsQuickTime.css:
3050         (audio::-webkit-media-controls-toggle-closed-captions-button, video::-webkit-media-controls-toggle-closed-captions-button):
3051         (audio::-webkit-media-controls-volume-slider-mute-button, video::-webkit-media-controls-volume-slider-mute-button):
3052         * html/shadow/MediaControlElements.cpp:
3053         (WebCore::MediaControlToggleClosedCaptionsButtonElement::MediaControlToggleClosedCaptionsButtonElement):
3054         (WebCore::MediaControlToggleClosedCaptionsButtonElement::create):
3055         (WebCore::MediaControlToggleClosedCaptionsButtonElement::defaultEventHandler):
3056         (WebCore::MediaControlToggleClosedCaptionsButtonElement::updateDisplayType):
3057         (WebCore::MediaControlToggleClosedCaptionsButtonElement::shadowPseudoId):
3058         * html/shadow/MediaControlElements.h:
3059         (MediaControlElement):
3060         (MediaControlToggleClosedCaptionsButtonElement):
3061         * html/shadow/MediaControlRootElement.cpp:
3062         (WebCore::MediaControlRootElement::MediaControlRootElement):
3063         (WebCore::MediaControlRootElement::create):
3064         (WebCore::MediaControlRootElement::setMediaController):
3065         (WebCore::MediaControlRootElement::hide):
3066         (WebCore::MediaControlRootElement::makeTransparent):
3067         (WebCore::MediaControlRootElement::reset):
3068         (WebCore::MediaControlRootElement::reportedError):
3069         * html/shadow/MediaControlRootElement.h:
3070         (WebCore):
3071         (MediaControlRootElement):
3072         * html/shadow/MediaControlRootElementChromium.cpp:
3073         (WebCore::MediaControlRootElementChromium::initializeControls):
3074         * html/shadow/MediaControls.h:
3075         (MediaControls):
3076         * platform/Language.cpp:
3077         (WebCore):
3078         * platform/Language.h:
3079         (WebCore):
3080         * rendering/RenderMediaControls.cpp:
3081         (WebCore::RenderMediaControls::paintMediaControlsPart):
3082         * rendering/RenderMediaControlsChromium.cpp:
3083         (WebCore::RenderMediaControlsChromium::paintMediaControlsPart):
3084
3085 2012-11-09  Dean Jackson  <dino@apple.com>
3086
3087         Support list of tracks in caption media controls
3088         https://bugs.webkit.org/show_bug.cgi?id=101669
3089
3090         Reviewed by Eric Carlson.
3091
3092         Attempt two of commit. The first time caused a build failure on Chromium.
3093
3094         Add some new elements to the media control shadow DOM that display the list of available
3095         tracks on an audio/video element. The UI is hidden by default everywhere but on Mac,
3096         where it is given a very basic design. At the moment only the list of available tracks
3097         are displayed; The followup bug will make the UI active: https://bugs.webkit.org/show_bug.cgi?id=101670
3098
3099         No new tests - this doesn't expose any testable surface.
3100
3101         * css/mediaControls.css: Added default rules that hide the new elements.
3102         * css/mediaControlsQuickTime.css: Specific rules that give a basic rendering of the new track list.
3103         * html/shadow/MediaControlElements.cpp:
3104         (WebCore::MediaControlElement::isShowing): Tests for the visibility of a control.
3105         (WebCore::MediaControlClosedCaptionsContainerElement::MediaControlClosedCaptionsContainerElement):
3106         (WebCore::MediaControlClosedCaptionsContainerElement::create):
3107         (WebCore::MediaControlClosedCaptionsContainerElement::shadowPseudoId):
3108         (WebCore::MediaControlToggleClosedCaptionsButtonElement::MediaControlToggleClosedCaptionsButtonElement):
3109         (WebCore::MediaControlToggleClosedCaptionsButtonElement::create): Now takes a reference to the media controls as a parameter.
3110         (WebCore::MediaControlToggleClosedCaptionsButtonElement::updateDisplayType):
3111         (WebCore::MediaControlToggleClosedCaptionsButtonElement::defaultEventHandler):
3112         (WebCore::MediaControlToggleClosedCaptionsButtonElement::shadowPseudoId):
3113         (WebCore::MediaControlClosedCaptionsTrackListElement::MediaControlClosedCaptionsTrackListElement): New element for holding a list of tracks to display.
3114         * html/shadow/MediaControlElements.h:
3115         (MediaControlElement):
3116         (MediaControlToggleClosedCaptionsButtonElement):
3117         (MediaControlClosedCaptionsContainerElement):
3118         (MediaControlClosedCaptionsTrackListElement): Examines the media element to build a shadow DOM that lists all the tracks available.
3119         * html/shadow/MediaControlRootElement.cpp:
3120         (WebCore::MediaControlRootElement::MediaControlRootElement):
3121         (WebCore::MediaControlRootElement::create): New track container and list elements created.
3122         (WebCore::MediaControlRootElement::setMediaController): Hook up the new elements to the controller..
3123         (WebCore::MediaControlRootElement::hide):
3124         (WebCore::MediaControlRootElement::makeTransparent):
3125         (WebCore::MediaControlRootElement::reset):
3126         (WebCore::MediaControlRootElement::reportedError):
3127         (WebCore::MediaControlRootElement::toggleClosedCaptionTrackList): Shows or hides the popup with the list of tracks.
3128         (WebCore):
3129         * html/shadow/MediaControlRootElement.h:
3130         (WebCore):
3131         (MediaControlRootElement):
3132         * html/shadow/MediaControlRootElementChromium.cpp:
3133         (WebCore::MediaControlRootElementChromium::initializeControls): Pass in the controls as a parameter.
3134         * html/shadow/MediaControls.h:
3135         (MediaControls):
3136         * platform/Language.cpp:
3137         (WebCore::displayNameForLanguageLocale): New function to return a human-readable name for a locale, given the identifier input.
3138         * platform/Language.h:
3139         (WebCore):
3140         * rendering/RenderMediaControls.cpp:
3141         (WebCore::RenderMediaControls::paintMediaControlsPart): New enum values into switch.
3142         * rendering/RenderMediaControlsChromium.cpp:
3143         (WebCore::RenderMediaControlsChromium::paintMediaControlsPart): New enum values into switch.
3144
3145 2012-11-09  Ojan Vafai  <ojan@chromium.org>
3146
3147         Should only fire a single set of mouse events and update hover state once when scrolling is done
3148         https://bugs.webkit.org/show_bug.cgi?id=99940
3149
3150         Reviewed by Levi Weintraub.
3151
3152         -Use a DeferrableOneShotTimer instead of a Timer. By resetting when the
3153         timer is fired, we ensure the actual goal of not firing fake mouse events
3154         until the scroll is completed. This is the core part of this change.
3155         -Change our mouse event throttling to keep a running average of how long
3156         mouse events take and adjust throttling appropriately.
3157         Test: fast/scrolling/fake-mouse-event-throttling.html
3158         -Maintain a minimum throttle of 100ms.
3159
3160         * page/EventHandler.cpp:
3161         (WebCore):
3162         (WebCore::RunningAverageDurationTracker::RunningAverageDurationTracker):
3163         (WebCore::RunningAverageDurationTracker::~RunningAverageDurationTracker):
3164         Keep track of a running average instead of max. This lets us adjust throttling
3165         dynamically without punishing a page for having a single mouse event handler
3166         that takes disproportionately long.
3167         (RunningAverageDurationTracker):
3168         (WebCore::EventHandler::EventHandler):
3169         (WebCore::EventHandler::clear):
3170         (WebCore::EventHandler::mouseMoved):
3171         (WebCore::EventHandler::handleMouseMoveEvent):
3172         (WebCore::EventHandler::dispatchFakeMouseMoveEventSoon):
3173         (WebCore::EventHandler::fakeMouseMoveEventTimerFired):
3174         * page/EventHandler.h:
3175         (EventHandler):
3176         * platform/Timer.h:
3177         (WebCore::DeferrableOneShotTimer::setDelay):
3178         (WebCore::DeferrableOneShotTimer::delay):
3179         Add a way of adjusting the timer delay.
3180
3181 2012-11-09  Rick Byers  <rbyers@chromium.org>
3182
3183         Move chromium to USE(LAZY_NATIVE_CURSOR)
3184         https://bugs.webkit.org/show_bug.cgi?id=101501
3185
3186         Reviewed by Adam Barth.
3187
3188         This simplifies cursor handling in chromium and unifies it with other
3189         ports for easier code sharing and testing by moving to the
3190         USE_LAZY_CURSOR model and eliminating PlatformCursor entirely.
3191
3192         PlatformCursor adds no value in chromium since the sandboxing model
3193         requires the cursor information be marshalled to the browser process
3194         before being turned into a real OS cursor.
3195
3196         Test: fast/events/mouse-cursor.html
3197
3198         * WebCore.gypi:
3199         * platform/Cursor.h:
3200         (WebCore):
3201         * platform/chromium/CursorChromium.cpp:
3202         (WebCore::Cursor::Cursor):
3203         (WebCore::Cursor::operator=):
3204         (WebCore::Cursor::~Cursor):
3205         (WebCore::Cursor::ensurePlatformCursor):
3206         * platform/chromium/PlatformCursor.h: Removed.
3207
3208 2012-11-09  Noam Rosenthal  <noam.rosenthal@nokia.com>
3209
3210         Allow ports to decide whether an image should be directly composited
3211         https://bugs.webkit.org/show_bug.cgi?id=101827
3212
3213         Reviewed by Simon Fraser.
3214
3215         Tested by compositing/tiling/huge-layer-img.html.
3216
3217         * platform/graphics/GraphicsLayer.h:
3218         (WebCore::GraphicsLayer::shouldDirectlyCompositeImage):
3219             Allow the GraphicsLayer implementation to decide if the image can be composited.
3220
3221         * rendering/RenderLayerBacking.cpp:
3222         (WebCore::RenderLayerBacking::isDirectlyCompositedImage):
3223             Take onto account the new shouldDirectlyCompositeImage check.
3224
3225 2012-11-09  Dan Bernstein  <mitz@apple.com>
3226
3227         SimpleFontData::getCFStringAttributes sets some attributes to their default values, but shouldn’t
3228         https://bugs.webkit.org/show_bug.cgi?id=101799
3229
3230         Reviewed by Alexey Proskuryakov.
3231
3232         In some configurations, setting kCTLigatureAttributeName to its default value of 1 yields
3233         different behavior from not setting it at all. We can get the correct behavior and greatly
3234         simplify the code by not setting attributes to their default values.
3235
3236         * platform/graphics/mac/SimpleFontDataCoreText.cpp:
3237         Removed redundant #import directives and changed the remaining ones to #include.
3238         (WebCore::SimpleFontData::getCFStringAttributes): Changed to use a mutable dictionary and
3239         only add attributes that have non-default values.
3240
3241 2012-11-09  Rick Byers  <rbyers@chromium.org>
3242
3243         No tests for changing mouse cursors
3244         https://bugs.webkit.org/show_bug.cgi?id=100550
3245
3246         Reviewed by Adam Barth.
3247
3248         Add infrastructure to keep track of the last set mouse cursor,
3249         and then to query it from DumpRenderTree.
3250
3251         Test: fast/events/mouse-cursor.html
3252
3253         * WebCore.exp.in: Add Cursor copy ctor export
3254         * page/EventHandler.cpp:
3255         (WebCore::EventHandler::handleMouseMoveEvent): Keep track of last set mouse cursor
3256         * page/EventHandler.h:
3257         (WebCore::EventHandler::currentMouseCursor): New getter for last set mouse cursor
3258         * testing/Internals.cpp:
3259         (WebCore::cursorTypeToString): Helper to convert cursor type to enum
3260         (WebCore):
3261         (WebCore::Internals::getCurrentCursorInfo): New function to return a string describing the last set mouse cursor
3262         * testing/Internals.h: Declare getCurrentCursorInfo
3263         * testing/Internals.idl: Declare getCurrentCursorInfo
3264
3265 2012-11-09  Huang Dongsung  <luxtella@company100.net>
3266
3267         Coordinated Graphics: Amend CoordinatedBackingStore::paintToTextureMapper to fit its own semantic.
3268         https://bugs.webkit.org/show_bug.cgi?id=101701
3269
3270         Reviewed by Noam Rosenthal.
3271
3272         Add TiledBackingStore::rect() because CoordinatedTile needs to know
3273         m_rect of TiledBackingStore.
3274
3275         * platform/graphics/TiledBackingStore.h:
3276         (WebCore::TiledBackingStore::rect):
3277
3278 2012-11-09  Sheriff Bot  <webkit.review.bot@gmail.com>
3279
3280         Unreviewed, rolling out r134139.
3281         http://trac.webkit.org/changeset/134139
3282         https://bugs.webkit.org/show_bug.cgi?id=101823
3283
3284         breaks chromium (android) build (Requested by thorton on
3285         #webkit).
3286
3287         * css/mediaControls.css:
3288         * css/mediaControlsQuickTime.css:
3289         (audio::-webkit-media-controls-toggle-closed-captions-button, video::-webkit-media-controls-toggle-closed-captions-button):
3290         (audio::-webkit-media-controls-volume-slider-mute-button, video::-webkit-media-controls-volume-slider-mute-button):
3291         * html/shadow/MediaControlElements.cpp:
3292         (WebCore::MediaControlToggleClosedCaptionsButtonElement::MediaControlToggleClosedCaptionsButtonElement):
3293         (WebCore::MediaControlToggleClosedCaptionsButtonElement::create):
3294         (WebCore::MediaControlToggleClosedCaptionsButtonElement::defaultEventHandler):
3295         (WebCore::MediaControlToggleClosedCaptionsButtonElement::updateDisplayType):
3296         (WebCore::MediaControlToggleClosedCaptionsButtonElement::shadowPseudoId):
3297         * html/shadow/MediaControlElements.h:
3298         (MediaControlElement):
3299         (MediaControlToggleClosedCaptionsButtonElement):
3300         * html/shadow/MediaControlRootElement.cpp:
3301         (WebCore::MediaControlRootElement::MediaControlRootElement):
3302         (WebCore::MediaControlRootElement::create):
3303         (WebCore::MediaControlRootElement::setMediaController):
3304         (WebCore::MediaControlRootElement::hide):
3305         (WebCore::MediaControlRootElement::makeTransparent):
3306         (WebCore::MediaControlRootElement::reset):
3307         (WebCore::MediaControlRootElement::reportedError):
3308         * html/shadow/MediaControlRootElement.h:
3309         (WebCore):
3310         (MediaControlRootElement):
3311         * html/shadow/MediaControlRootElementChromium.cpp:
3312         (WebCore::MediaControlRootElementChromium::initializeControls):
3313         * html/shadow/MediaControls.h:
3314         (MediaControls):
3315         * platform/Language.cpp:
3316         (WebCore):
3317         * platform/Language.h:
3318         (WebCore):
3319
3320 2012-11-09  Huang Dongsung  <luxtella@company100.net>
3321
3322         [TexMap] Initialize m_compositedNativeImagePtr in GraphicsLayerTextureMapper.
3323         https://bugs.webkit.org/show_bug.cgi?id=101675
3324
3325         Reviewed by Noam Rosenthal.
3326
3327         Fix a potential bug in GraphicsLayerTextureMapper. If the member's uninitialized
3328         value equals image->nativeImageForCurrentFrame() by change, we can encounter
3329         undefined behavior.
3330
3331         * platform/graphics/texmap/GraphicsLayerTextureMapper.cpp:
3332         (WebCore::GraphicsLayerTextureMapper::GraphicsLayerTextureMapper):
3333         (WebCore::GraphicsLayerTextureMapper::setContentsToImage):
3334
3335 2012-11-09  Dean Jackson  <dino@apple.com>
3336
3337         Support list of tracks in caption media controls
3338         https://bugs.webkit.org/show_bug.cgi?id=101669
3339
3340         Reviewed by Eric Carlson.
3341
3342         Add some new elements to the media control shadow DOM that display the list of available
3343         tracks on an audio/video element. The UI is hidden by default everywhere but on Mac,
3344         where it is given a very basic design. At the moment only the list of available tracks
3345         are displayed; The followup bug will make the UI active: https://bugs.webkit.org/show_bug.cgi?id=101670
3346
3347         No new tests - this doesn't expose any testable surface.
3348
3349         * css/mediaControls.css: Added default rules that hide the new elements.
3350         * css/mediaControlsQuickTime.css: Specific rules that give a basic rendering of the new track list.
3351         * html/shadow/MediaControlElements.cpp:
3352         (WebCore::MediaControlElement::isShowing): Tests for the visibility of a control.
3353         (WebCore::MediaControlClosedCaptionsContainerElement::MediaControlClosedCaptionsContainerElement):
3354         (WebCore::MediaControlClosedCaptionsContainerElement::create):
3355         (WebCore::MediaControlClosedCaptionsContainerElement::shadowPseudoId):
3356         (WebCore::MediaControlToggleClosedCaptionsButtonElement::MediaControlToggleClosedCaptionsButtonElement):
3357         (WebCore::MediaControlToggleClosedCaptionsButtonElement::create): Now takes a reference to the media controls as a parameter.
3358         (WebCore::MediaControlToggleClosedCaptionsButtonElement::updateDisplayType):
3359         (WebCore::MediaControlToggleClosedCaptionsButtonElement::defaultEventHandler):
3360         (WebCore::MediaControlToggleClosedCaptionsButtonElement::shadowPseudoId):
3361         (WebCore::MediaControlClosedCaptionsTrackListElement::MediaControlClosedCaptionsTrackListElement): New element for holding a list of tracks to display.
3362         * html/shadow/MediaControlElements.h:
3363         (MediaControlElement):
3364         (MediaControlToggleClosedCaptionsButtonElement):
3365         (MediaControlClosedCaptionsContainerElement):
3366         (MediaControlClosedCaptionsTrackListElement): Examines the media element to build a shadow DOM that lists all the tracks available.
3367         * html/shadow/MediaControlRootElement.cpp:
3368         (WebCore::MediaControlRootElement::MediaControlRootElement):
3369         (WebCore::MediaControlRootElement::create): New track container and list elements created.
3370         (WebCore::MediaControlRootElement::setMediaController): Hook up the new elements to the controller..
3371         (WebCore::MediaControlRootElement::hide):
3372         (WebCore::MediaControlRootElement::makeTransparent):
3373         (WebCore::MediaControlRootElement::reset):
3374         (WebCore::MediaControlRootElement::reportedError):
3375         (WebCore::MediaControlRootElement::toggleClosedCaptionTrackList): Shows or hides the popup with the list of tracks.
3376         (WebCore):
3377         * html/shadow/MediaControlRootElement.h:
3378         (WebCore):
3379         (MediaControlRootElement):
3380         * html/shadow/MediaControlRootElementChromium.cpp:
3381         (WebCore::MediaControlRootElementChromium::initializeControls): Pass in the controls as a parameter.
3382         * html/shadow/MediaControls.h:
3383         (MediaControls):
3384         * platform/Language.cpp:
3385         (WebCore::displayNameForLanguageLocale): New function to return a human-readable name for a locale, given the identifier input.
3386         * platform/Language.h:
3387         (WebCore):
3388
3389 2012-11-09  Noel Gordon  <noel.gordon@gmail.com>
3390
3391         [chromium] Should pass fast/images/paletted-png-with-color-profile.html
3392         https://bugs.webkit.org/show_bug.cgi?id=101551
3393
3394         Reviewed by Adam Barth.
3395
3396         Support decoding color PALETTE images that have an ICC color profile.
3397
3398         Covered by fast/images/png-suite/test.html and many other fast/image tests.
3399
3400         * platform/image-decoders/png/PNGImageDecoder.cpp:
3401         (WebCore::PNGImageDecoder::headerAvailable): Move the color profile code after the
3402         transparency (tRNS) reader. Allow color PNG images: RGB, RGBA, PALLETE to be color
3403         corrected. Use the transparency count from the tRNS reader to detect the expansion
3404         of RGB and PALLETE image pixels to RGBA.
3405
3406 2012-11-09  Tien-Ren Chen  <trchen@chromium.org>
3407
3408         Correct hit-test point scaling for document.elementFromPoint
3409         https://bugs.webkit.org/show_bug.cgi?id=101798
3410
3411         Reviewed by Adam Barth.
3412
3413         The hit-test point come from user JavaScript is in the document coordinate.
3414         Convert to the frame coordinate with correct scale factor for hit test.
3415
3416         Test: fast/dom/elementFromPoint-scaled-scrolled.html
3417
3418         * dom/Document.cpp:
3419         (WebCore::nodeFromPoint):
3420
3421 2012-11-09  Alec Flett  <alecflett@chromium.org>
3422
3423         IndexedDB: Combine IDBBackingStore and IDBLevelDBBackingStore
3424         https://bugs.webkit.org/show_bug.cgi?id=101415
3425
3426         Reviewed by Tony Chang.
3427
3428         Combine abstract interface IDBBackingStore with its only
3429         implementation, IDBLevelDBBackingStore, to reduce code
3430         complexity. The legacy structure existed to support a SQLLite
3431         IDBBackingStore, but it is no longer worth the complexity to
3432         support this abstraction.
3433
3434         Changes include:
3435         1) Merging IDBLevelDBBackingStore into IDBBackingStore.
3436
3437         2) Merge together IDBBackingStore's inner classes: Cursor,
3438         Transaction, and ObjectStoreRecordIdentfier with their respective
3439         subclasses in IDBLevelDBBackingStore.
3440
3441         3) Simplifying the inner Transaction class to not be refcounted or
3442         virtualized, to allow it to be a simple concrete member of its
3443         owner, IDBTransactionBackendImpl.
3444
3445         No new tests as this is purely a refactor.
3446
3447         * Modules/indexeddb/IDBBackingStore.cpp:
3448         (WebCore::recordInternalError):
3449         (WebCore::setUpMetadata):
3450         (WebCore::IDBBackingStore::IDBBackingStore):
3451         (WebCore):
3452         (WebCore::IDBBackingStore::~IDBBackingStore):
3453         (WebCore::IDBBackingStore::open):
3454         (WebCore::IDBBackingStore::getDatabaseNames):
3455         (WebCore::IDBBackingStore::getIDBDatabaseMetaData):
3456         (WebCore::IDBBackingStore::createIDBDatabaseMetaData):
3457         (WebCore::IDBBackingStore::updateIDBDatabaseIntVersion):
3458         (WebCore::IDBBackingStore::updateIDBDatabaseMetaData):
3459         (WebCore::deleteRange):