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