XSS Auditor bypass via svg tags and xlink:href
[WebKit-https.git] / Source / WebCore / ChangeLog
1 2013-02-04  Tom Sepez  <tsepez@chromiium.org>
2
3         XSS Auditor bypass via svg tags and xlink:href
4         https://bugs.webkit.org/show_bug.cgi?id=84158
5
6         This patch adds a test for the xlink:href attribute inside of
7         script tokens. The test is complicated by the namespacing; the
8         xlink hrefAttr qualified name does not contain a literal "xlink"
9         prefix but only the URI of the namespace.
10         
11         Reviewed by Adam Barth.
12
13         Test: http/tests/security/xssAuditor/svg-script-tag.html
14
15         * html/parser/XSSAuditor.cpp:
16         (WebCore::findAttributeWithName):
17         (WebCore::XSSAuditor::filterScriptToken):
18
19 2013-02-04  Eric Carlson  <eric.carlson@apple.com>
20
21         Update CaptionUserPreferences
22         https://bugs.webkit.org/show_bug.cgi?id=108783
23
24         Reviewed by Dean Jackson.
25
26         * html/shadow/MediaControlElements.cpp:
27         (WebCore::MediaControlTextTrackContainerElement::updateSizes): Mark font size as important
28             when necessary.
29         * page/CaptionUserPreferences.h:
30         (WebCore::CaptionUserPreferences::setUserPrefersCaptions): New, allow a port to remember that
31             the user has chosen to see captions.
32         (WebCore::CaptionUserPreferences::setPreferredLanguage): New, allow a port to remember the
33             user's preferred caption language.
34         (WebCore::CaptionUserPreferences::preferredLanguages): New, return a Vector of the user's 
35             preferred caption languages.
36         * page/CaptionUserPreferencesMac.h:
37         * page/CaptionUserPreferencesMac.mm:
38         * page/PageGroup.cpp:
39         (WebCore::PageGroup::captionPreferences):
40         (WebCore::PageGroup::captionFontSizeScale):
41         * page/PageGroup.h:
42         * platform/Language.cpp:
43         (WebCore::userPreferredLanguagesOverride): New, return the user preferred languages override
44             used during testing.
45         * platform/Language.h:
46         * platform/graphics/avfoundation/objc/InbandTextTrackPrivateAVFObjC.mm:
47         (WebCore::InbandTextTrackPrivateAVFObjC::kind):
48
49 2013-02-04  Tim Horton  <timothy_horton@apple.com>
50
51         Allow TiledCoreAnimationDrawingArea overlay layers to become tiled
52         https://bugs.webkit.org/show_bug.cgi?id=108729
53         <rdar://problem/13047546>
54
55         Reviewed by Anders Carlsson.
56
57         * WebCore.exp.in:
58         * platform/graphics/ca/GraphicsLayerCA.cpp:
59         (WebCore::GraphicsLayerCA::flushCompositingStateForThisLayerOnly): The "for this layer only" variant
60         of flushCompositingState wasn't informing its client that it committed changes for the layer.
61         (WebCore::GraphicsLayerCA::swapFromOrToTiledLayer): We now explicitly want to be able to have a
62         GraphicsLayerCA switch into or out of tiling while being unparented (we'll get a client callback and
63         swap out its parent ourselves).
64
65 2013-02-04  Julien Chaffraix  <jchaffraix@webkit.org>
66
67         [CSS Grid Layout] Add parsing for grid-auto-flow
68         https://bugs.webkit.org/show_bug.cgi?id=108397
69
70         Reviewed by Ojan Vafai.
71
72         Test: fast/css-grid-layout/grid-auto-flow-get-set.html
73
74         This change adds the parsing, application and conversion back through getComputedStyle
75         for the new property -webkit-grid-auto-flow, which accpets the following:
76
77         -webkit-grid-auto-flow: none | rows | columns
78
79         * css/CSSComputedStyleDeclaration.cpp:
80         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
81         Added code to convert the RenderStyle information back into a CSS value.
82
83         * css/CSSParser.cpp:
84         (WebCore::isValidKeywordPropertyAndValue):
85         (WebCore::isKeywordPropertyID):
86         Implemented parsing for -webkit-grid-auto-flow.
87
88         * css/CSSPrimitiveValueMappings.h:
89         (WebCore::CSSPrimitiveValue::operator GridAutoFlow):
90         (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
91         Added the conversion operators, used for parsing and getComputedStyle.
92
93         * css/CSSProperty.cpp:
94         (WebCore::CSSProperty::isInheritedProperty):
95         Added -webkit-grid-auto-flow to the list of the not inherited properties.
96
97         * css/CSSPropertyNames.in:
98         Added the new value and keywords.
99
100         * css/StyleBuilder.cpp:
101         (WebCore::StyleBuilder::StyleBuilder):
102         Added a handler for the new CSS property.
103
104         * rendering/style/RenderStyle.h:
105         Added the usual getter / setter / initial function.
106
107         * rendering/style/RenderStyleConstants.h:
108         Added a new enum GridAutoFlow to hold the parsed value.
109
110         * rendering/style/StyleGridData.cpp:
111         (WebCore::StyleGridData::StyleGridData):
112         * rendering/style/StyleGridData.h:
113         (WebCore::StyleGridData::operator==):
114         Updated after adding a new field for the GridAutoFlow value.
115
116 2013-02-04  Mark Pilgrim  <pilgrim@chromium.org>
117
118         [Chromium] Move IDBFactoryBackendInterface to WebCore
119         https://bugs.webkit.org/show_bug.cgi?id=108638
120
121         Reviewed by Adam Barth.
122
123         Part of a larger refactoring series; see tracking bug 106829.
124
125         * Modules/indexeddb/chromium: Added.
126         * Modules/indexeddb/chromium/IDBFactoryBackendInterfaceChromium.cpp: Added.
127         (WebCore):
128         (WebCore::setIDBFactoryBackendInterfaceCreateFunction):
129         (WebCore::IDBFactoryBackendInterface::create):
130         * Modules/indexeddb/chromium/IDBFactoryBackendInterfaceChromium.h: Added.
131         (WebCore):
132         * WebCore.gyp/WebCore.gyp:
133         * WebCore.gypi:
134
135 2013-02-04  Abhishek Arya  <inferno@chromium.org>
136
137         Add ASSERT_WITH_SECURITY_IMPLICATION to detect bad cast in DOM, CSS, etc.
138         https://bugs.webkit.org/show_bug.cgi?id=108688
139
140         Reviewed by Eric Seidel.
141
142         * Modules/notifications/Notification.cpp:
143         (WebCore::Notification::Notification):
144         (WebCore::Notification::permission):
145         (WebCore::Notification::requestPermission):
146         * Modules/speech/SpeechGrammar.cpp:
147         (WebCore::SpeechGrammar::setSrc):
148         * Modules/speech/SpeechGrammarList.cpp:
149         (WebCore::SpeechGrammarList::addFromUri):
150         * Modules/websockets/ThreadableWebSocketChannel.cpp:
151         (WebCore::ThreadableWebSocketChannel::create):
152         * accessibility/AccessibilityMenuListPopup.cpp:
153         (WebCore::AccessibilityMenuListPopup::menuListOptionAccessibilityObject):
154         * accessibility/AccessibilityTable.cpp:
155         (WebCore::AccessibilityTable::cellForColumnAndRow):
156         * css/CSSFontFaceRule.cpp:
157         (WebCore::CSSFontFaceRule::reattach):
158         * css/CSSImageSetValue.cpp:
159         (WebCore::CSSImageSetValue::fillImageSet):
160         * css/CSSPageRule.cpp:
161         (WebCore::CSSPageRule::reattach):
162         * css/CSSStyleRule.cpp:
163         (WebCore::CSSStyleRule::reattach):
164         * css/StyleBuilder.cpp:
165         (WebCore::ApplyPropertyFontVariantLigatures::applyValue):
166         (WebCore::ApplyPropertyTextDecoration::applyValue):
167         (WebCore::ApplyPropertyZoom::applyValue):
168         * css/StyleResolver.cpp:
169         (WebCore::createGridPosition):
170         (WebCore::StyleResolver::applyProperty):
171         (WebCore::StyleResolver::createCustomFilterOperationWithInlineSyntax):
172         * css/WebKitCSSFilterRule.cpp:
173         (WebCore::WebKitCSSFilterRule::reattach):
174         * css/WebKitCSSKeyframesRule.cpp:
175         (WebCore::WebKitCSSKeyframesRule::reattach):
176         * css/WebKitCSSViewportRule.cpp:
177         (WebCore::WebKitCSSViewportRule::reattach):
178         * editing/EditCommand.h:
179         (WebCore::toSimpleEditCommand):
180         * editing/visible_units.cpp:
181         (WebCore::startOfParagraph):
182         (WebCore::endOfParagraph):
183         * html/HTMLCollection.cpp:
184         (WebCore::LiveNodeListBase::setItemCache):
185         * loader/ThreadableLoader.cpp:
186         (WebCore::ThreadableLoader::create):
187         (WebCore::ThreadableLoader::loadResourceSynchronously):
188         * loader/WorkerThreadableLoader.cpp:
189         (WebCore::WorkerThreadableLoader::MainThreadBridge::mainThreadCreateLoader):
190         * page/Frame.cpp:
191         (WebCore::Frame::frameForWidget):
192         * platform/RefCountedSupplement.h:
193         (WebCore::RefCountedSupplement::from):
194         * rendering/RenderBlock.cpp:
195         (WebCore::RenderBlock::splitBlocks):
196         (WebCore::RenderBlock::firstLineBlock):
197         * rendering/RenderBlockLineLayout.cpp:
198         (WebCore::RenderBlock::createLineBoxes):
199         * rendering/RenderBox.cpp:
200         (WebCore::RenderBox::computeReplacedLogicalHeightUsing):
201         * rendering/svg/RenderSVGText.cpp:
202         (WebCore::RenderSVGText::positionForPoint):
203         * rendering/svg/SVGRootInlineBox.cpp:
204         (WebCore::SVGRootInlineBox::layoutCharactersInTextBoxes):
205         (WebCore::SVGRootInlineBox::layoutChildBoxes):
206         * testing/js/WebCoreTestSupport.cpp:
207         (WebCoreTestSupport::resetInternalsObject):
208         * testing/v8/WebCoreTestSupport.cpp:
209         (WebCoreTestSupport::resetInternalsObject):
210         * workers/DefaultSharedWorkerRepository.cpp:
211         (WebCore::SharedWorkerProxy::addToWorkerDocuments):
212         (WebCore::SharedWorkerConnectTask::performTask):
213         * workers/SharedWorker.cpp:
214         (WebCore::SharedWorker::create):
215         * workers/WorkerContext.cpp:
216         (WebCore::CloseWorkerContextTask::performTask):
217         * workers/WorkerMessagingProxy.cpp:
218         (WebCore::MessageWorkerContextTask::performTask):
219         (WebCore::connectToWorkerContextInspectorTask):
220         (WebCore::disconnectFromWorkerContextInspectorTask):
221         (WebCore::dispatchOnInspectorBackendTask):
222         * workers/WorkerScriptLoader.cpp:
223         (WebCore::WorkerScriptLoader::loadSynchronously):
224         * workers/WorkerThread.cpp:
225         (WebCore::WorkerThreadShutdownFinishTask::performTask):
226         (WebCore::WorkerThreadShutdownStartTask::performTask):
227
228 2013-02-04  Dominik Röttsches  <dominik.rottsches@intel.com>
229
230         [Skia] Argument to HarfBuzzShaper::offsetForPosition unnecessarily truncated
231         https://bugs.webkit.org/show_bug.cgi?id=108479
232
233         Reviewed by Emil A Eklund.
234
235         Remove a FIXME that intended to solve the value truncation.
236         Should positively affect SVG text positioning.
237
238         No new tests, partially covered by manual test
239         ManualTests/harfbuzz-mouse-selection-crash.html.
240
241         * platform/graphics/harfbuzz/FontHarfBuzz.cpp:
242         (WebCore::Font::offsetForPositionForComplexText):
243
244 2013-02-04  Vladislav Kaznacheev  <kaznacheev@chromium.org>
245
246         Web Inspector: Create a container class for SidebarPane instances
247         https://bugs.webkit.org/show_bug.cgi?id=108183
248
249         Reviewed by Pavel Feldman.
250
251         SidebarPaneStack is responsible for pane title bar and expand/collapse behavior (previously handled by SidebarPane).
252         SidebarPanes are inserted into DOM lazily and can belong to more than one container.
253         SidebarPane is ready to be displayed in other types of containers (such as tabbed pane as requested in https://bugs.webkit.org/show_bug.cgi?id=107552).
254         There should be no visible changes except for one: DOM breakpoint pane expand/collapse state is no longer
255         shared between Elements and Sources sidebars.
256
257         * inspector/front-end/AuditResultView.js:
258         (WebInspector.AuditResultView):
259         * inspector/front-end/BreakpointsSidebarPane.js:
260         (WebInspector.JavaScriptBreakpointsSidebarPane.prototype._addBreakpoint):
261         (WebInspector.XHRBreakpointsSidebarPane.prototype.highlightBreakpoint):
262         (WebInspector.EventListenerBreakpointsSidebarPane.prototype.highlightBreakpoint):
263         * inspector/front-end/DOMBreakpointsSidebarPane.js:
264         (WebInspector.DOMBreakpointsSidebarPane.prototype.highlightBreakpoint):
265         * inspector/front-end/ElementsPanel.js:
266         (WebInspector.ElementsPanel):
267         (WebInspector.ElementsPanel.prototype.wasShown):
268         (WebInspector.ElementsPanel.prototype.updateStyles):
269         (WebInspector.ElementsPanel.prototype.updateMetrics):
270         (WebInspector.ElementsPanel.prototype.updateProperties):
271         (WebInspector.ElementsPanel.prototype.updateEventListeners):
272         * inspector/front-end/ExtensionPanel.js:
273         (WebInspector.ExtensionSidebarPane):
274         * inspector/front-end/ExtensionServer.js:
275         (WebInspector.ExtensionServer.prototype._onCreateSidebarPane):
276         * inspector/front-end/ScriptsPanel.js:
277         (WebInspector.ScriptsPanel.prototype.wasShown):
278         * inspector/front-end/SidebarPane.js:
279         (WebInspector.SidebarPane):
280         (WebInspector.SidebarPane.prototype.title):
281         (WebInspector.SidebarPane.prototype.prepareContent):
282         (WebInspector.SidebarPane.prototype.expand):
283         (WebInspector.SidebarPane.prototype.onContentReady):
284         (WebInspector.SidebarPane.prototype.setExpandCallback):
285         (WebInspector.SidebarPane.prototype.setShowCallback):
286         (WebInspector.SidebarPane.prototype.wasShown):
287         (WebInspector.SidebarPaneStack):
288         (WebInspector.SidebarPaneStack.prototype.wasShown):
289         (WebInspector.SidebarPaneStack.prototype.addPane):
290         (WebInspector.SidebarPaneStack.prototype._addTitle):
291         (WebInspector.SidebarPaneStack.prototype._attachToPane):
292         (WebInspector.SidebarPaneStack.prototype._isExpanded):
293         (WebInspector.SidebarPaneStack.prototype._setExpanded):
294         (WebInspector.SidebarPaneStack.prototype._onPaneExpanded):
295         (WebInspector.SidebarPaneStack.prototype._collapsePane):
296         (WebInspector.SidebarPaneStack.prototype._togglePane):
297         (WebInspector.SidebarPaneStack.prototype._onTitleKeyDown):
298         * inspector/front-end/StylesSidebarPane.js:
299         (WebInspector.StylesSidebarPane.prototype._refreshUpdate):
300         (WebInspector.StylesSidebarPane.prototype._rebuildUpdate):
301         (WebInspector.StylesSidebarPane.prototype.set _createNewRule):
302         (WebInspector.ComputedStyleSidebarPane.prototype.prepareContent):
303         * inspector/front-end/WatchExpressionsSidebarPane.js:
304         (WebInspector.WatchExpressionsSidebarPane):
305         (WebInspector.WatchExpressionsSidebarPane.prototype.wasShown):
306         (WebInspector.WatchExpressionsSidebarPane.prototype.addExpression):
307         (WebInspector.WatchExpressionsSidebarPane.prototype._addButtonClicked):
308         * inspector/front-end/inspector.css:
309         (.pane-title + .pane-title, .pane:not(.visible) + .pane-title, .pane-title:first-of-type):
310         (.pane-title):
311         (.pane-title:active):
312         (.pane-title::before):
313         (.pane-title.expanded::before):
314         (.pane-title > select):
315         (.pane-title > select:hover):
316         (.pane-title > select:active):
317         (.pane-title > select.select-settings):
318         (.pane-title > select.select-filter):
319         (.pane-title > select > option, .pane-title > select > hr):
320         (.pane-title > .pane-title-button):
321         (.pane-title > .pane-title-button:hover):
322         (.pane-title > .pane-title-button:active, .pane-title > .pane-title-button.toggled):
323         (.pane-title > .pane-title-button.add):
324         (.pane-title > .pane-title-button.element-state):
325         (.pane-title > .pane-title-button.refresh):
326         (.pane.visible > .body):
327         (.pane.visible:nth-last-of-type(1)):
328         (.panel-enabler-view button:not(.status-bar-item), .pane-title-button, button.show-all-nodes):
329         (.panel-enabler-view button:active:not(.status-bar-item), .pane-title-button:active, button.show-all-nodes:active):
330         (body.inactive .panel-enabler-view button:not(.status-bar-item), .panel-enabler-view button:disabled:not(.status-bar-item), body.inactive .pane-title-button, .pane-title-button:disabled, body.inactive button.show-all-nodes):
331
332 2013-02-01  Emil A Eklund  <eae@chromium.org>
333
334         Remove duplicate code in RenderBoxModelObject::computedCSSPadding*
335         https://bugs.webkit.org/show_bug.cgi?id=108707
336
337         Reviewed by Eric Seidel.
338         
339         The computedCSSPaddingTop/Bottom/... methods in
340         RenderBoxModelObject all do pretty much exactly the same thing
341         yet share no code.
342         
343         Break out shared code into computedCSSPadding method and have
344         the top/bottom/left/right/... ones call it with the appropriate
345         length value.
346
347         No new tests, no change in functionality.
348
349         * rendering/RenderBoxModelObject.cpp:
350         (WebCore::RenderBoxModelObject::computedCSSPadding):
351         * rendering/RenderBoxModelObject.h:
352         (WebCore::RenderBoxModelObject::computedCSSPaddingTop):
353         (WebCore::RenderBoxModelObject::computedCSSPaddingBottom):
354         (WebCore::RenderBoxModelObject::computedCSSPaddingLeft):
355         (WebCore::RenderBoxModelObject::computedCSSPaddingRight):
356         (WebCore::RenderBoxModelObject::computedCSSPaddingBefore):
357         (WebCore::RenderBoxModelObject::computedCSSPaddingAfter):
358         (WebCore::RenderBoxModelObject::computedCSSPaddingStart):
359         (WebCore::RenderBoxModelObject::computedCSSPaddingEnd):
360         (RenderBoxModelObject):
361
362 2013-02-04  Andrey Lushnikov  <lushnikov@chromium.org>
363
364         Web Inspector: add round braces to javascript tokenizer
365         https://bugs.webkit.org/show_bug.cgi?id=108692
366
367         Reviewed by Pavel Feldman.
368
369         Change SourceJavascriptTokenizer.re2js file to produce "brace-start"
370         and "brace-end" tokens for round braces.
371         Regenerate SourceJavascriptTokenizer.js according to new re2js file.
372
373         No new tests: no change in behaviour.
374
375         * inspector/front-end/SourceJavaScriptTokenizer.js:
376         (WebInspector.SourceJavaScriptTokenizer.prototype.nextToken):
377         * inspector/front-end/SourceJavaScriptTokenizer.re2js:
378
379 2013-02-04  Pavel Feldman  <pfeldman@chromium.org>
380
381         Web Inspector: take page scale factor into account when updating overlay.
382         https://bugs.webkit.org/show_bug.cgi?id=108831
383
384         Reviewed by Vsevolod Vlasov.
385
386         Otherwise, the ports that use page scale factor have broken overlay.
387
388         * inspector/InspectorOverlay.cpp:
389         (WebCore::InspectorOverlay::update):
390
391 2013-02-04  Dan Carney  <dcarney@google.com>
392
393         [v8] explicit isolate parameter for MakeWeak calls
394         https://bugs.webkit.org/show_bug.cgi?id=108818
395
396         Reviewed by Kentaro Hara.
397
398         No new tests. No change in functionality.
399
400         * bindings/v8/DOMDataStore.cpp:
401         (WebCore::DOMDataStore::DOMDataStore):
402         (WebCore::DOMDataStore::weakCallback):
403         * bindings/v8/DOMDataStore.h:
404         (WebCore::DOMDataStore::setWrapper):
405         (WebCore::DOMDataStore::set):
406         (WebCore::DOMDataStore::setWrapperInObject):
407         (DOMDataStore):
408         * bindings/v8/DOMWrapperMap.h:
409         (WebCore::DOMWrapperMap::DOMWrapperMap):
410         (WebCore::DOMWrapperMap::set):
411         (WebCore::DOMWrapperMap::defaultWeakCallback):
412         (DOMWrapperMap):
413         * bindings/v8/DOMWrapperWorld.cpp:
414         (WebCore::isolatedWorldWeakCallback):
415         (WebCore::DOMWrapperWorld::makeContextWeak):
416         * bindings/v8/ScriptState.cpp:
417         (WebCore::ScriptState::ScriptState):
418         (WebCore::ScriptState::weakReferenceCallback):
419         * bindings/v8/ScriptState.h:
420         (ScriptState):
421         * bindings/v8/V8AbstractEventListener.cpp:
422         (WebCore::V8AbstractEventListener::weakEventListenerCallback):
423         (WebCore::V8AbstractEventListener::V8AbstractEventListener):
424         (WebCore::V8AbstractEventListener::setListenerObject):
425         * bindings/v8/V8AbstractEventListener.h:
426         (V8AbstractEventListener):
427         * bindings/v8/V8EventListener.cpp:
428         (WebCore::V8EventListener::V8EventListener):
429         * bindings/v8/V8LazyEventListener.cpp:
430         (WebCore::V8LazyEventListener::V8LazyEventListener):
431         * bindings/v8/V8MutationCallback.cpp:
432         (WebCore::V8MutationCallback::V8MutationCallback):
433         * bindings/v8/V8MutationCallback.h:
434         (WebCore::V8MutationCallback::create):
435         (WebCore::V8MutationCallback::weakCallback):
436         * bindings/v8/V8NPObject.cpp:
437         (WebCore::V8NPTemplateMap::set):
438         (WebCore::V8NPTemplateMap::sharedInstance):
439         (WebCore::V8NPTemplateMap::V8NPTemplateMap):
440         (V8NPTemplateMap):
441         (WebCore::V8NPTemplateMap::weakCallback):
442         (WebCore::npObjectGetProperty):
443         (WebCore):
444         (WebCore::staticNPObjectMap):
445         (WebCore::weakNPObjectCallback):
446         * bindings/v8/V8ValueCache.cpp:
447         (WebCore::cachedStringCallback):
448         (WebCore::StringCache::v8ExternalStringSlow):
449         * bindings/v8/custom/V8InjectedScriptManager.cpp:
450         (WebCore::WeakReferenceCallback):
451         (WebCore::createInjectedScriptHostV8Wrapper):
452         * bindings/v8/custom/V8MutationObserverCustom.cpp:
453         (WebCore::V8MutationObserver::constructorCallbackCustom):
454
455 2013-02-04  Dmitry Gozman  <dgozman@chromium.org>
456
457         Web Inspector: Allow user to change dock side by dragging toolbar
458         https://bugs.webkit.org/show_bug.cgi?id=108073
459
460         Dragging toolbar to the right/bottom will change the dock side accordingly
461         instead of changing the inspector window height (if dock to right is available).
462
463         Reviewed by Pavel Feldman.
464
465         No new tests, because of pure inspector UI change.
466
467         * inspector/front-end/DockController.js:
468         (WebInspector.DockController.prototype.dockSide):
469         * inspector/front-end/Toolbar.js:
470         (WebInspector.Toolbar):
471         (WebInspector.Toolbar.prototype._isDockedToBottom):
472         (WebInspector.Toolbar.prototype._isUndocked):
473         (WebInspector.Toolbar.prototype._toolbarDragStart):
474         (WebInspector.Toolbar.prototype._toolbarDragEnd):
475         (WebInspector.Toolbar.prototype._toolbarDrag):
476         (WebInspector.Toolbar.prototype._toolbarDragMoveWindow):
477         (WebInspector.Toolbar.prototype._toolbarDragChangeDocking):
478         (WebInspector.Toolbar.prototype._toolbarDragChangeHeight):
479         * inspector/front-end/UIUtils.js:
480         (WebInspector._elementDragStart):
481         (WebInspector._elementDragMove):
482         (WebInspector._cancelDragEvents):
483         (WebInspector._elementDragEnd):
484
485 2013-02-04  Andrey Kosyakov  <caseq@chromium.org>
486
487         Web Inspector: sync list of console API methods to that used by auto-complete
488         https://bugs.webkit.org/show_bug.cgi?id=108804
489
490         Reviewed by Pavel Feldman.
491
492         - push new method names from InjectedScriptSource to RuntimeModel;
493         - add a comment to InjectedScriptSource noting the necessity of keeping lists in sync.
494
495         * inspector/InjectedScriptSource.js:
496         * inspector/front-end/RuntimeModel.js:
497         (WebInspector.RuntimeModel.prototype.receivedPropertyNames):
498         (WebInspector.RuntimeModel.prototype._completionsForExpression):
499
500 2013-02-04  Eugene Klyuchnikov  <eustas@chromium.org>
501
502         Web Inspector: [Network] Minor refactorings.
503         https://bugs.webkit.org/show_bug.cgi?id=108162
504
505         Reviewed by Vsevolod Vlasov.
506
507         Apply minor refactorings to NetworkPanel.js
508         Add hint to statusbar selector buttons.
509
510         * English.lproj/localizedStrings.js: Added hint string.
511         * inspector/front-end/NetworkPanel.js:
512         (WebInspector.NetworkLogView.prototype._createStatusBarItems): Ditto.
513         (WebInspector.NetworkLogView.prototype._makeHeaderFragment):
514         Applied minor refactoring.
515         (WebInspector.NetworkLogView.prototype._createStatusBarItems.createFilterElement):
516         Ditto.
517         (WebInspector.NetworkLogView.prototype._updateOffscreenRows): Ditto.
518         (WebInspector.NetworkPanel.prototype._onRowSizeChanged): Ditto.
519
520 2013-02-04  Eugene Klyuchnikov  <eustas@chromium.org>
521
522         Web Inspector: [CPU Profile] Apply minor refactorings and add JSDocs.
523         https://bugs.webkit.org/show_bug.cgi?id=108437
524
525         Reviewed by Pavel Feldman.
526
527         CPU Profile code has obsolete inline-comments to clarify types.
528         Currently we use JSDocs to specify types.
529
530         Also applied some minor refactorings.
531
532         * inspector/front-end/BottomUpProfileDataGridTree.js:
533         (WebInspector.BottomUpProfileDataGridNode):
534         Added JSDocs. Removed profileView parameter.
535         (WebInspector.BottomUpProfileDataGridNode.prototype._takePropertiesFromProfileDataGridNode):
536         Added JSDocs.
537         (WebInspector.BottomUpProfileDataGridNode.prototype._keepOnlyChild):
538         Ditto.
539         (WebInspector.BottomUpProfileDataGridNode.prototype._merge):
540         Ditto.
541         (WebInspector.BottomUpProfileDataGridNode.prototype._sharedPopulate):
542         Do not pass profileView to constructor.
543         (WebInspector.BottomUpProfileDataGridTree):
544         Added JSDocs. Renamed parameters.
545         (WebInspector.BottomUpProfileDataGridTree.prototype.focus):
546         Added JSDocs.
547         (WebInspector.BottomUpProfileDataGridTree.prototype.exclude):
548         Ditto.
549         * inspector/front-end/CPUProfileView.js: Removed unused getter/setter.
550         (WebInspector.CPUProfileView.prototype._getCPUProfileCallback):
551         Un-nested. Added JSDocs.
552         (WebInspector.CPUProfileView.prototype._getBottomUpProfileDataGridTree):
553         Added JSDocs. Turned to method from getter. Simplified.
554         (WebInspector.CPUProfileView.prototype._getTopDownProfileDataGridTree):
555         Added JSDocs. Turned to method from getter.
556         (WebInspector.CPUProfileView.prototype._assignParentsInProfile):
557         Optimized.
558         * inspector/front-end/DataGrid.js: Added JSDocs.
559         * inspector/front-end/ProfileDataGridTree.js:
560         (WebInspector.ProfileDataGridNode):
561         Added JSDocs. Removed profileView parameter.
562         (WebInspector.ProfileDataGridNode.prototype.createCell): Added JSDocs.
563         (WebInspector.ProfileDataGridNode.prototype.sort): Ditto.
564         (WebInspector.ProfileDataGridNode.prototype.insertChild): Ditto.
565         (WebInspector.ProfileDataGridNode.prototype.removeChild): Ditto.
566         (WebInspector.ProfileDataGridNode.prototype.removeChildren):
567         Added JSDocs. Removed parameter.
568         (WebInspector.ProfileDataGridNode.prototype.findChild): Added JSDocs.
569         (WebInspector.ProfileDataGridTree): Added JSDocs. Renamed parameter.
570         * inspector/front-end/TopDownProfileDataGridTree.js:
571         (WebInspector.TopDownProfileDataGridNode):
572         Added JSDocs. Removed profileView parameter.
573         (WebInspector.TopDownProfileDataGridNode.prototype._sharedPopulate):
574         Do not pass profileView to constructor.
575         (WebInspector.TopDownProfileDataGridTree):
576         Added JSDocs. Renamed parameter.
577         (WebInspector.TopDownProfileDataGridTree.prototype.focus):
578         Added JSDocs.
579         (WebInspector.TopDownProfileDataGridTree.prototype.exclude):
580         Ditto.
581
582 2013-02-04  Dan Carney  <dcarney@google.com>
583
584         [v8] use toV8Fast in hand coded callbacks
585         https://bugs.webkit.org/show_bug.cgi?id=108817
586
587         Reviewed by Kentaro Hara.
588
589         No new tests. No change in functionality.
590
591         * bindings/v8/custom/V8DOMWindowCustom.cpp:
592         (WebCore::V8DOMWindow::openCallback):
593         (WebCore::V8DOMWindow::indexedPropertyGetter):
594         (WebCore::V8DOMWindow::namedPropertyGetter):
595         * bindings/v8/custom/V8DocumentCustom.cpp:
596         (WebCore::V8Document::evaluateCallback):
597         * bindings/v8/custom/V8DocumentLocationCustom.cpp:
598         (WebCore::V8Document::locationAccessorGetter):
599         * bindings/v8/custom/V8EventCustom.cpp:
600         (WebCore::V8Event::dataTransferAccessorGetter):
601         (WebCore::V8Event::clipboardDataAccessorGetter):
602         * bindings/v8/custom/V8FileReaderCustom.cpp:
603         (WebCore::V8FileReader::resultAccessorGetter):
604         * bindings/v8/custom/V8HTMLAllCollectionCustom.cpp:
605         (WebCore):
606         (WebCore::getNamedItems):
607         (WebCore::getItem):
608         (WebCore::V8HTMLAllCollection::namedPropertyGetter):
609         (WebCore::V8HTMLAllCollection::itemCallback):
610         (WebCore::V8HTMLAllCollection::namedItemCallback):
611         (WebCore::V8HTMLAllCollection::callAsFunctionCallback):
612         * bindings/v8/custom/V8HTMLCanvasElementCustom.cpp:
613         (WebCore::V8HTMLCanvasElement::getContextCallback):
614         * bindings/v8/custom/V8HTMLCollectionCustom.cpp:
615         (WebCore::V8HTMLCollection::namedPropertyGetter):
616         * bindings/v8/custom/V8HTMLElementCustom.cpp:
617         (WebCore::V8HTMLElement::itemValueAccessorGetter):
618         * bindings/v8/custom/V8HTMLFormControlsCollectionCustom.cpp:
619         (WebCore):
620         (WebCore::getNamedItems):
621         (WebCore::V8HTMLFormControlsCollection::namedPropertyGetter):
622         (WebCore::V8HTMLFormControlsCollection::namedItemCallback):
623         * bindings/v8/custom/V8HTMLFormElementCustom.cpp:
624         (WebCore::V8HTMLFormElement::indexedPropertyGetter):
625         (WebCore::V8HTMLFormElement::namedPropertyGetter):
626         * bindings/v8/custom/V8HTMLFrameSetElementCustom.cpp:
627         (WebCore::V8HTMLFrameSetElement::namedPropertyGetter):
628         * bindings/v8/custom/V8HTMLLinkElementCustom.cpp:
629         (WebCore::V8HTMLLinkElement::sizesAccessorGetter):
630         * bindings/v8/custom/V8HTMLOptionsCollectionCustom.cpp:
631         (WebCore):
632         (WebCore::getNamedItems):
633         (WebCore::V8HTMLOptionsCollection::namedPropertyGetter):
634         (WebCore::V8HTMLOptionsCollection::namedItemCallback):
635         (WebCore::V8HTMLOptionsCollection::indexedPropertyGetter):
636         * bindings/v8/custom/V8HTMLSelectElementCustom.cpp:
637         (WebCore::V8HTMLSelectElement::indexedPropertyGetter):
638         * bindings/v8/custom/V8MessageEventCustom.cpp:
639         (WebCore::V8MessageEvent::dataAccessorGetter):
640         (WebCore::V8MessageEvent::portsAccessorGetter):
641         * bindings/v8/custom/V8NamedNodeMapCustom.cpp:
642         (WebCore::V8NamedNodeMap::indexedPropertyGetter):
643         (WebCore::V8NamedNodeMap::namedPropertyGetter):
644         * bindings/v8/custom/V8NodeListCustom.cpp:
645         (WebCore::V8NodeList::namedPropertyGetter):
646         * bindings/v8/custom/V8PopStateEventCustom.cpp:
647         (WebCore::V8PopStateEvent::stateAccessorGetter):
648         * bindings/v8/custom/V8SQLTransactionSyncCustom.cpp:
649         (WebCore::V8SQLTransactionSync::executeSqlCallback):
650         * bindings/v8/custom/V8StyleSheetListCustom.cpp:
651         (WebCore::V8StyleSheetList::namedPropertyGetter):
652         * bindings/v8/custom/V8TrackEventCustom.cpp:
653         (WebCore::V8TrackEvent::trackAccessorGetter):
654         * bindings/v8/custom/V8XMLHttpRequestCustom.cpp:
655         (WebCore::V8XMLHttpRequest::responseAccessorGetter):
656
657 2013-02-04  David Kilzer  <ddkilzer@apple.com>
658
659         Remove duplicate entry from WebCore Xcode project
660
661             $ uniq Source/WebCore/WebCore.xcodeproj/project.pbxproj | diff -u - Source/WebCore/WebCore.xcodeproj/project.pbxproj | patch -p0 -R
662             patching file Source/WebCore/WebCore.xcodeproj/project.pbxproj
663
664         * WebCore.xcodeproj/project.pbxproj: Remove duplicate.
665
666 2013-02-04  David Kilzer  <ddkilzer@apple.com>
667
668         Sort WebCore Xcode project file
669
670         * WebCore.xcodeproj/project.pbxproj:
671
672 2013-02-04  Dan Carney  <dcarney@google.com>
673
674         [v8] disable ascii check once latin-1 is enabled in v8
675         https://bugs.webkit.org/show_bug.cgi?id=108805
676
677         Reviewed by Kentaro Hara.
678
679         No new tests. No change in functionality.
680
681         * bindings/v8/V8ValueCache.cpp:
682         (WebCore::makeExternalString):
683
684 2013-02-04  Pavel Feldman  <pfeldman@chromium.org>
685
686         Web Inspector: make tabbed pane header a relayout boundary.
687         https://bugs.webkit.org/show_bug.cgi?id=108650
688
689         Reviewed by Alexander Pavlov.
690
691         Otherwise, its measure width routine causes total reflow.
692
693         * inspector/front-end/tabbedPane.css:
694         (.tabbed-pane-header):
695
696 2013-02-04  Hayato Ito  <hayato@chromium.org>
697
698         Split InspectorCSSOMWrappers out from StyleResolver.h into its own file.
699         https://bugs.webkit.org/show_bug.cgi?id=108797
700
701         Reviewed by Hajime Morita.
702
703         This is a following patch after r141373. Now we can have
704         InspectorCSSOMWrappers in its own file since CSSDefaultStyleSheets
705         was factored out from StyleResolver.cpp in r141733.
706
707         WebCore/inspector/ directory is used for basic inspector
708         functionalities. Therefore, I've put
709         InspectorCSSOMWrappers.{h,cpp} in WebCore/css/ rather than
710         WebCore/inspector/.
711
712         No new tests, refactoring only.
713
714         * CMakeLists.txt:
715         * GNUmakefile.list.am:
716         * Target.pri:
717         * WebCore.gypi:
718         * WebCore.xcodeproj/project.pbxproj:
719         * css/CSSAllInOne.cpp:
720         * css/InspectorCSSOMWrappers.cpp: Added.
721         (WebCore):
722         (WebCore::InspectorCSSOMWrappers::collectFromStyleSheetIfNeeded):
723         (WebCore::InspectorCSSOMWrappers::collect):
724         (WebCore::InspectorCSSOMWrappers::collectFromStyleSheetContents):
725         (WebCore::InspectorCSSOMWrappers::collectFromStyleSheets):
726         (WebCore::InspectorCSSOMWrappers::collectFromDocumentStyleSheetCollection):
727         (WebCore::InspectorCSSOMWrappers::getWrapperForRuleInSheets):
728         (WebCore::InspectorCSSOMWrappers::reportMemoryUsage):
729         * css/InspectorCSSOMWrappers.h: Added.
730         (WebCore):
731         (InspectorCSSOMWrappers):
732         * css/StyleResolver.cpp:
733         * css/StyleResolver.h:
734
735 2013-02-04  Balazs Kelemen  <kbalazs@webkit.org>
736
737         [Soup] Wrap SoupSession by NetworkStorageSession
738         https://bugs.webkit.org/show_bug.cgi?id=108615
739
740         Reviewed by Alexey Proskuryakov.
741
742         Implement NetworkStorageSession for ports using soup. It has been
743         separated from NetworkingContext, so now we have a default storage
744         session, which is the same as before but now wrapped with NetworkStorageSession,
745         and it can be overridden by the networking context.
746
747         No change in behavior so no new tests.
748
749         * CMakeLists.txt:
750         * GNUmakefile.list.am:
751         * PlatformBlackBerry.cmake:
752         * PlatformEfl.cmake:
753         * loader/CookieJar.cpp:
754         (WebCore):
755         Now we also get the storage session from the networking context
756         and not the other way.
757
758         * platform/network/NetworkStorageSession.h:
759         (NetworkStorageSession):
760         (WebCore::NetworkStorageSession::setSoupSession):
761         (WebCore::NetworkStorageSession::soupSession):
762         Hold a SoupSession pointer for ports using soup. Added a setter because it is
763         necessary for API's that allow it to be specified per page, like EFL WK1.
764
765         * platform/network/NetworkingContext.h:
766         (NetworkingContext):
767         * platform/network/soup/CookieJarSoup.cpp:
768         (WebCore::cookieJarForSession):
769         * platform/network/soup/NetworkStorageSessionSoup.cpp: Copied from Source/WebKit2/WebProcess/WebCoreSupport/soup/WebFrameNetworkingContext.cpp.
770         (WebCore::NetworkStorageSession::NetworkStorageSession):
771         (WebCore::NetworkStorageSession::defaultStorageSession):
772         (WebCore::NetworkStorageSession::createDefaultSession):
773         (WebCore::NetworkStorageSession::createPrivateBrowsingSession):
774         (WebCore::NetworkStorageSession::switchToNewTestingSession):
775         * platform/network/soup/ResourceHandleSoup.cpp:
776         (WebCore::sessionFromContext):
777
778         * CMakeLists.txt:
779         * GNUmakefile.list.am:
780         * PlatformBlackBerry.cmake:
781         * PlatformEfl.cmake:
782         * loader/CookieJar.cpp:
783         (WebCore):
784         * platform/network/NetworkStorageSession.h:
785         (NetworkStorageSession):
786         (WebCore::NetworkStorageSession::setSoupSession):
787         (WebCore::NetworkStorageSession::soupSession):
788         * platform/network/NetworkingContext.h:
789         (NetworkingContext):
790         * platform/network/soup/CookieJarSoup.cpp:
791         (WebCore::cookieJarForSession):
792         * platform/network/soup/ResourceHandleSoup.cpp:
793         (WebCore::sessionFromContext):
794
795 2013-02-04  Andrey Lushnikov  <lushnikov@chromium.org>
796
797         Web Inspector: source location in statusbar has few bugs in it
798         https://bugs.webkit.org/show_bug.cgi?id=108748
799
800         Reviewed by Vsevolod Vlasov.
801
802         Call super method statusBarItems in SnippetJavaScriptSourceFrame class
803         and merge its results. Fix css styles for source location in statusbar
804         and rename its css class into a less confusing name.
805
806         No new test: no change in behaviour.
807
808         * inspector/front-end/SnippetJavaScriptSourceFrame.js:
809         (WebInspector.SnippetJavaScriptSourceFrame.prototype.statusBarItems):
810         * inspector/front-end/SourceFrame.js:
811         (WebInspector.SourceFrame):
812         * inspector/front-end/inspector.css:
813         (.source-frame-cursor-position):
814
815 2013-02-04  Mike West  <mkwst@chromium.org>
816
817         Cleanup: Normalize usage of ExceptionCode in ContainerNode::checkXxxChild()
818         https://bugs.webkit.org/show_bug.cgi?id=108766
819
820         Reviewed by Kentaro Hara.
821
822         This patch refactors checkAddChild and checkReplaceChild to remove the
823         creation of an extra ExceptionCode that's not necessary for the
824         desired behavior, and to bring the ExceptionCode usage into line with
825         the rest of WebKit (this was the only case where ExceptionCode was
826         assigned inside an 'if' statement's condition).
827
828         After this patch, 'ec' will always be assigned a value, even if the
829         result of 'checkAcceptChild' is 0. This would only change behavior if
830         'ec' was non-zero coming into the function, and 'checkAcceptChild'
831         returned 0. Since every callsite is either directly after an explicit
832         zeroing of 'ec', or after an 'if (ec)' clause, that case should never
833         appear. This patch, therefore, shouldn't visibly change WebKit's
834         behavior.
835
836         * dom/ContainerNode.cpp:
837         (WebCore::checkAddChild):
838         (WebCore::checkReplaceChild):
839
840 2013-02-03  David Kilzer  <ddkilzer@apple.com>
841
842         Upstream ENABLE_PDFKIT_PLUGIN settting
843         <http://webkit.org/b/108792>
844
845         Reviewed by Tim Horton.
846
847         * Configurations/FeatureDefines.xcconfig: Disable PDFKIT_PLUGIN
848         on iOS since PDFKit is a Mac-only framework.
849
850 2013-02-03  Takashi Sakamoto  <tasak@google.com>
851
852         Split per-resolve logic out from StyleResolver.
853         https://bugs.webkit.org/show_bug.cgi?id=96421
854
855         Reviewed by Eric Seidel.
856
857         Implemented class StyleResolver::State and added m_state to
858         StyleResolver. All member variables used for per-resolve logic are
859         moved into the state class.
860
861         No new tests, because just refactoring.
862
863         * css/SVGCSSStyleSelector.cpp:
864         (WebCore::StyleResolver::applySVGProperty):
865         * css/StyleResolver.cpp:
866         (WebCore):
867         (WebCore::StyleResolver::StyleResolver):
868         (WebCore::StyleResolver::collectMatchingRules):
869         (WebCore::StyleResolver::collectMatchingRulesForRegion):
870         (WebCore::StyleResolver::sortAndTransferMatchedRules):
871         (WebCore::StyleResolver::matchScopedAuthorRules):
872         (WebCore::StyleResolver::styleSharingCandidateMatchesHostRules):
873         (WebCore::StyleResolver::matchHostRules):
874         (WebCore::StyleResolver::matchAuthorRules):
875         (WebCore::StyleResolver::matchUserRules):
876         (WebCore::StyleResolver::matchUARules):
877         (WebCore::StyleResolver::collectMatchingRulesForList):
878         (WebCore::StyleResolver::sortMatchedRules):
879         (WebCore::StyleResolver::matchAllRules):
880         (WebCore::StyleResolver::initElement):
881         (WebCore::StyleResolver::initForStyleResolve):
882         (WebCore::StyleResolver::styleSharingCandidateMatchesRuleSet):
883         (WebCore::StyleResolver::canShareStyleWithControl):
884         (WebCore::StyleResolver::sharingCandidateHasIdenticalStyleAffectingAttributes):
885         (WebCore::StyleResolver::canShareStyleWithElement):
886         (WebCore::StyleResolver::locateSharedStyle):
887         (WebCore::StyleResolver::styleForElement):
888         (WebCore::StyleResolver::styleForKeyframe):
889         (WebCore::StyleResolver::pseudoStyleForElement):
890         (WebCore::StyleResolver::styleForPage):
891         (WebCore::StyleResolver::defaultStyleForElement):
892         (WebCore::StyleResolver::adjustRenderStyle):
893         (WebCore::StyleResolver::updateFont):
894         (WebCore::StyleResolver::cacheBorderAndBackground):
895         (WebCore::StyleResolver::pseudoStyleRulesForElement):
896         (WebCore::StyleResolver::ruleMatches):
897         (WebCore::StyleResolver::checkRegionSelector):
898         (WebCore::StyleResolver::applyProperties):
899         (WebCore::StyleResolver::applyMatchedProperties):
900         (WebCore::StyleResolver::isLeftPage):
901         (WebCore::StyleResolver::applyPropertyToStyle):
902         (WebCore::StyleResolver::useSVGZoomRules):
903         (WebCore::createGridTrackBreadth):
904         (WebCore::createGridTrackMinMax):
905         (WebCore::createGridTrackGroup):
906         (WebCore::createGridTrackList):
907         (WebCore::StyleResolver::resolveVariables):
908         (WebCore::StyleResolver::applyProperty):
909         (WebCore::StyleResolver::cachedOrPendingFromValue):
910         (WebCore::StyleResolver::generatedOrPendingFromValue):
911         (WebCore::StyleResolver::setOrPendingFromValue):
912         (WebCore::StyleResolver::cursorOrPendingFromValue):
913         (WebCore::StyleResolver::checkForTextSizeAdjust):
914         (WebCore::StyleResolver::initializeFontStyle):
915         (WebCore::StyleResolver::setFontSize):
916         (WebCore::StyleResolver::colorFromPrimitiveValue):
917         (WebCore::StyleResolver::loadPendingSVGDocuments):
918         (WebCore::StyleResolver::cachedOrPendingStyleShaderFromValue):
919         (WebCore::StyleResolver::loadPendingShaders):
920         (WebCore::StyleResolver::parseCustomFilterTransformParameter):
921         (WebCore::StyleResolver::createFilterOperations):
922         (WebCore::StyleResolver::loadPendingImage):
923         (WebCore::StyleResolver::loadPendingImages):
924         (WebCore::StyleResolver::reportMemoryUsage):
925         * css/StyleResolver.h:
926         (WebCore::StyleResolver::style):
927         (WebCore::StyleResolver::parentStyle):
928         (WebCore::StyleResolver::rootElementStyle):
929         (WebCore::StyleResolver::element):
930         (WebCore::StyleResolver::setFontDescription):
931         (WebCore::StyleResolver::setZoom):
932         (WebCore::StyleResolver::setEffectiveZoom):
933         (WebCore::StyleResolver::setTextSizeAdjust):
934         (WebCore::StyleResolver::setWritingMode):
935         (WebCore::StyleResolver::setTextOrientation):
936         (WebCore::StyleResolver::hasParentNode):
937         (WebCore::StyleResolver::addMatchedRule):
938         (StyleResolver):
939         (State):
940         (WebCore::StyleResolver::State::State):
941         (WebCore::StyleResolver::applyPropertyToRegularStyle):
942         (WebCore::StyleResolver::applyPropertyToVisitedLinkStyle):
943         Added "m_state." to access member variables used for per-resolve logic.
944
945 2013-02-03  Kent Tamura  <tkent@chromium.org>
946
947         Support setLangAttributeAwareFormControlUIEnabled on Chromium Windows XP
948         https://bugs.webkit.org/show_bug.cgi?id=108791
949
950         Reviewed by Kentaro Hara.
951
952         We didn't support setLangAttributeAwareFormControlUIEnabled(true) on
953         Chromium Windows XP because of lack of LocaleNameToLCID API. This change
954         add manual mapping from locale names to LCIDs for Windows XP.
955
956         No new tests. This doesn't make any behavior changes in products, and
957         this improves some test results.
958
959         * platform/text/win/LocaleWin.cpp:
960         (WebCore): Define NameToLCIDMap.
961         (WebCore::removeLastComponent):
962         Remove the last component separated with '-'.
963         (WebCore::ensureNameToLCIDMap):
964         Add locale names used in layout tests.
965         (WebCore::convertLocaleNameToLCID):
966         Find an appropriate LCID longest matching with the specified locale name.
967         (WebCore::LCIDFromLocale):
968         Use convertLocaleNameToLCID if LocaleNameToLCID is not available.
969
970 2013-02-03  Kent Tamura  <tkent@chromium.org>
971
972         Add FocusDirection argument to HTMLTextFormControlElement::handleFocusEvent
973         https://bugs.webkit.org/show_bug.cgi?id=108775
974
975         Reviewed by Hajime Morita.
976
977         We'd like to add a FocusDirection argument to
978         HTMLTextFormControlElement::handleFocusEvent in order to fix Bug
979         108447. This is a preparation for it.
980
981         We need to add FocusDirection arguments to some focus-related functions
982         to pass it correctly when TAB or Shift+TAB is pressed.
983
984         No new tests. This doesn't make any behavior changes.
985
986         * html/HTMLTextFormControlElement.cpp:
987         (WebCore::HTMLTextFormControlElement::dispatchFocusEvent):
988         To pass the FocusDirection argument to handleFocusEvent, we need to add
989         it to dispatchFocusEvent too.
990         * html/HTMLTextFormControlElement.h:
991         (HTMLTextFormControlElement):
992         Add FocusDirection arugment to dispatchFocusEvent.
993         (WebCore::HTMLTextFormControlElement::handleFocusEvent):
994         Add FocusDirection argument.
995
996         * dom/Node.cpp:
997         (WebCore::Node::dispatchFocusEvent): Add FocusDirection argument.
998         * dom/Node.h:
999         (Node): Ditto.
1000
1001         * dom/Document.cpp:
1002         (WebCore::Document::setFocusedNode): Add FocusDirection argument in
1003         order to pass it to Node::dispatchFocusEvent.
1004         * dom/Document.h:
1005         (Document): Ditto.
1006
1007         * page/FocusController.cpp:
1008         (WebCore::dispatchEventsOnWindowAndFocusedNode):
1009         Adjust Node::dispatchFocusEvent argument.
1010         (WebCore::FocusController::advanceFocusInDocumentOrder):
1011         Pass FocusDirectio to Element::focus.
1012         (WebCore::FocusController::setFocusedNode):
1013         Add FocusDirection argument in order to pass it to Document::setFocusedNode.
1014         (WebCore::FocusController::advanceFocusDirectionallyInContainer):
1015         Pass FocusDirectio to Element::focus.
1016         * page/FocusController.h:
1017         (FocusController): Add FocusDirection argument to setFocusedNode.
1018
1019         * dom/Element.cpp:
1020         (WebCore::Element::focus):
1021         Add FocusDirection argument to pass it to FocusController::setFocusedNode.
1022         * dom/Element.h:
1023         (Element): Ditto.
1024
1025         * WebCore.exp.in:
1026         Update FocusController::setFocusedNode and Document::setFocusedNode.
1027
1028         * html/HTMLLabelElement.cpp:
1029         (WebCore::HTMLLabelElement::focus): Adjust FocusDirection argument.
1030         * html/HTMLLabelElement.h:
1031         (HTMLLabelElement): Ditto.
1032         * html/HTMLLegendElement.cpp:
1033         (WebCore::HTMLLegendElement::focus): Ditto.
1034         * html/HTMLLegendElement.h:
1035         (HTMLLegendElement): Ditto.
1036         * html/HTMLSelectElement.cpp:
1037         (WebCore::HTMLSelectElement::dispatchFocusEvent): Ditto.
1038         * html/HTMLSelectElement.h:
1039         (HTMLSelectElement): Ditto.
1040
1041         * html/HTMLInputElement.cpp:
1042         (WebCore::HTMLInputElement::defaultFocus):
1043         Add FocusDirection argument in order to pass it from
1044         HTMLInputElement::focus() to HTMLTextFormControlElement::focus().
1045         (WebCore::HTMLInputElement::focus):
1046         Pass the FocusDirection argument to InputType::focus. See above.
1047         (WebCore::HTMLInputElement::handleFocusEvent):
1048         Adjust FocusDirection argument.
1049         * html/HTMLInputElement.h:
1050         (HTMLInputElement):
1051         * html/InputType.cpp:
1052         (WebCore::InputType::focus): Add FocusDirection argument.
1053         * html/InputType.h:
1054         (InputType): Ditto.
1055
1056         * html/BaseMultipleFieldsDateAndTimeInputType.cpp:
1057         (WebCore::BaseMultipleFieldsDateAndTimeInputType::focus):
1058         Add FocusDirection argument to follow InputType.
1059         * html/BaseMultipleFieldsDateAndTimeInputType.h:
1060         (BaseMultipleFieldsDateAndTimeInputType): Ditto.
1061
1062 2013-02-03  Kassy Coan  <kassycoan@chromium.org>
1063
1064         Adds usage instrumentation for indexedDB
1065         Includes new header file in project files
1066
1067         https://bugs.webkit.org/show_bug.cgi?id=107772
1068
1069         Reviewed by Tony Chang.
1070
1071         Currently untestable. Has zero effect apart from histogramming.
1072
1073         * GNUmakefile.list.am:
1074         * Modules/indexeddb/IDBDatabase.cpp:
1075         (WebCore::IDBDatabase::createObjectStore):
1076         (WebCore::IDBDatabase::deleteObjectStore):
1077         (WebCore::IDBDatabase::transaction):
1078         * Modules/indexeddb/IDBFactory.cpp:
1079         (WebCore::IDBFactory::openInternal):
1080         (WebCore::IDBFactory::deleteDatabase):
1081         * Modules/indexeddb/IDBHistograms.h: Added.
1082         (WebCore):
1083         * Target.pri:
1084         * WebCore.gypi:
1085         * WebCore.vcproj/WebCore.vcproj:
1086         * WebCore.xcodeproj/project.pbxproj:
1087
1088 2013-02-03  Hayato Ito  <hayato@chromium.org>
1089
1090         Split default style-sheet statics out from StyleResolver into its own class
1091         https://bugs.webkit.org/show_bug.cgi?id=107780
1092
1093         Reviewed by Dimitri Glazkov.
1094
1095         Factored static variables and logic about default style sheets out from StyleResolver into its own class
1096         CSSDefaultStyleSheets. This is a following patch after r141373.
1097
1098         No new tests, refactoring only.
1099
1100         * CMakeLists.txt:
1101         * GNUmakefile.list.am:
1102         * Target.pri:
1103         * WebCore.gypi:
1104         * WebCore.xcodeproj/project.pbxproj:
1105         * css/CSSAllInOne.cpp:
1106         * css/CSSDefaultStyleSheets.cpp: Added.
1107         (WebCore):
1108         (WebCore::elementCanUseSimpleDefaultStyle):
1109         (WebCore::screenEval):
1110         (WebCore::printEval):
1111         (WebCore::parseUASheet):
1112         (WebCore::CSSDefaultStyleSheets::initDefaultStyle):
1113         (WebCore::CSSDefaultStyleSheets::loadFullDefaultStyle):
1114         (WebCore::CSSDefaultStyleSheets::loadSimpleDefaultStyle):
1115         (WebCore::CSSDefaultStyleSheets::viewSourceStyle):
1116         (WebCore::CSSDefaultStyleSheets::ensureDefaultStyleSheetsForElement):
1117         * css/CSSDefaultStyleSheets.h: Added.
1118         (WebCore):
1119         (CSSDefaultStyleSheets):
1120         * css/StyleResolver.cpp:
1121         (WebCore):
1122         (WebCore::StyleResolver::StyleResolver):
1123         (WebCore::StyleResolver::matchUARules):
1124         (WebCore::StyleResolver::styleForElement):
1125         (WebCore::StyleResolver::styleForPage):
1126         (WebCore::InspectorCSSOMWrappers::getWrapperForRuleInSheets):
1127         (WebCore::StyleResolver::collectFeatures):
1128         (WebCore::StyleResolver::reportMemoryUsage):
1129
1130 2013-02-03  Kentaro Hara  <haraken@chromium.org>
1131
1132         [V8] Simplify CodeGeneratorV8.pm by using InheritsExtendedAttribute("EventTarget")
1133         https://bugs.webkit.org/show_bug.cgi?id=108441
1134
1135         Reviewed by Adam Barth.
1136
1137         A complicated condition in GetInternalFields() can be simplified
1138         by using InheritsExtendedAttribute("EventTarget").
1139
1140         No tests. No change in behavior.
1141
1142         * bindings/scripts/CodeGeneratorV8.pm:
1143         (GetInternalFields):
1144         * dom/EventTarget.idl: Added [EventTarget] which should have been added.
1145         * svg/SVGElementInstance.idl: Ditto.
1146
1147 2013-02-03  Gustavo Noronha Silva  <gns@gnome.org>
1148
1149         [Soup] Do not use local variables for the client
1150         https://bugs.webkit.org/show_bug.cgi?id=108714
1151
1152         Reviewed by Martin Robinson.
1153
1154         Covered by existing tests, refactoring code only.
1155
1156         We have had problems in the past with the client being destroyed or
1157         changed inside a method or function, and we ended up with a stale
1158         pointer, leading to crashes. This refactoring is an effort to minimize
1159         the possibility of hitting that same issue in the future.
1160
1161         * platform/network/soup/ResourceHandleSoup.cpp:
1162         (WebCore::redirectSkipCallback): no longer use a local variable to hold
1163         the client.
1164         (WebCore::wroteBodyDataCallback): ditto.
1165         (WebCore::nextMultipartResponsePartCallback): ditto.
1166         (WebCore::sendRequestCallback): ditto.
1167         (WebCore::closeCallback): ditto.
1168         (WebCore::readCallback): ditto.
1169
1170 2013-02-03  Kentaro Hara  <haraken@chromium.org>
1171
1172         [V8] Pass an Isolate to HasInstance() (part 1)
1173         https://bugs.webkit.org/show_bug.cgi?id=108617
1174
1175         Reviewed by Adam Barth.
1176
1177         This is one of efforts to pass an Isolate to GetTemplate().
1178
1179         No tests. No change in behavior.
1180
1181         * bindings/scripts/CodeGeneratorV8.pm:
1182         (JSValueToNative):
1183         * bindings/scripts/test/V8/V8Float64Array.cpp:
1184         (WebCore::Float64ArrayV8Internal::fooCallback):
1185         * bindings/scripts/test/V8/V8TestActiveDOMObject.cpp:
1186         (WebCore::TestActiveDOMObjectV8Internal::excitingFunctionCallback):
1187         * bindings/scripts/test/V8/V8TestEventTarget.cpp:
1188         (WebCore::TestEventTargetV8Internal::dispatchEventCallback):
1189         * bindings/scripts/test/V8/V8TestInterface.cpp:
1190         (WebCore::TestInterfaceV8Internal::supplementalNodeAttrSetter):
1191         (WebCore::TestInterfaceV8Internal::supplementalMethod2Callback):
1192         * bindings/scripts/test/V8/V8TestObj.cpp:
1193         (WebCore::TestObjV8Internal::testObjAttrAttrSetter):
1194         (WebCore::TestObjV8Internal::XMLObjAttrAttrSetter):
1195         (WebCore::TestObjV8Internal::typedArrayAttrAttrSetter):
1196         (WebCore::TestObjV8Internal::withScriptExecutionContextAttributeAttrSetter):
1197         (WebCore::TestObjV8Internal::withScriptStateAttributeRaisesAttrSetter):
1198         (WebCore::TestObjV8Internal::withScriptExecutionContextAttributeRaisesAttrSetter):
1199         (WebCore::TestObjV8Internal::withScriptExecutionContextAndScriptStateAttributeAttrSetter):
1200         (WebCore::TestObjV8Internal::withScriptExecutionContextAndScriptStateAttributeRaisesAttrSetter):
1201         (WebCore::TestObjV8Internal::withScriptExecutionContextAndScriptStateWithSpacesAttributeAttrSetter):
1202         (WebCore::TestObjV8Internal::withScriptArgumentsAndCallStackAttributeAttrSetter):
1203         (WebCore::TestObjV8Internal::mutablePointAttrSetter):
1204         (WebCore::TestObjV8Internal::immutablePointAttrSetter):
1205         (WebCore::TestObjV8Internal::voidMethodWithArgsCallback):
1206         (WebCore::TestObjV8Internal::longMethodWithArgsCallback):
1207         (WebCore::TestObjV8Internal::objMethodWithArgsCallback):
1208         (WebCore::TestObjV8Internal::methodThatRequiresAllArgsAndThrowsCallback):
1209         (WebCore::TestObjV8Internal::overloadedMethod1Callback):
1210         (WebCore::TestObjV8Internal::overloadedMethod2Callback):
1211         (WebCore::TestObjV8Internal::overloadedMethod8Callback):
1212         (WebCore::TestObjV8Internal::convert1Callback):
1213         (WebCore::TestObjV8Internal::convert2Callback):
1214         (WebCore::TestObjV8Internal::convert4Callback):
1215         (WebCore::TestObjV8Internal::convert5Callback):
1216         (WebCore::TestObjV8Internal::variadicNodeMethodCallback):
1217         * bindings/scripts/test/V8/V8TestOverloadedConstructors.cpp:
1218         (WebCore::V8TestOverloadedConstructors::constructor1Callback):
1219         (WebCore::V8TestOverloadedConstructors::constructor2Callback):
1220         (WebCore::V8TestOverloadedConstructors::constructor3Callback):
1221         * bindings/v8/Dictionary.cpp:
1222         (WebCore::Dictionary::get):
1223         * bindings/v8/ScriptProfiler.cpp:
1224         (WebCore::ScriptProfiler::visitNodeWrappers):
1225         * bindings/v8/SerializedScriptValue.cpp:
1226         (WebCore::SerializedScriptValue::SerializedScriptValue):
1227         (WebCore::SerializedScriptValue::deserialize):
1228         * bindings/v8/V8Binding.cpp:
1229         (WebCore::toDOMStringList):
1230         (WebCore::toXPathNSResolver):
1231         * bindings/v8/V8Binding.h:
1232         (WebCore):
1233         * bindings/v8/V8Collection.cpp:
1234         (WebCore::toOptionsCollectionSetter):
1235         * bindings/v8/V8GCController.cpp:
1236         (WebCore::WrapperVisitor::WrapperVisitor):
1237         (WrapperVisitor):
1238         (WebCore::V8GCController::majorGCPrologue):
1239         * bindings/v8/V8NPObject.cpp:
1240         (WebCore::npObjectInvokeImpl):
1241         * bindings/v8/V8Utilities.cpp:
1242         (WebCore::extractTransferables):
1243         * bindings/v8/custom/V8DocumentCustom.cpp:
1244         (WebCore::V8Document::evaluateCallback):
1245
1246 2013-02-03  Joanmarie Diggs  <jdiggs@igalia.com>
1247
1248         [GTK] Make distcheck fails
1249         https://bugs.webkit.org/show_bug.cgi?id=108756
1250
1251         Reviewed by Kentaro Hara.
1252
1253         * GNUmakefile.list.am: Remove header files which no longer exist;
1254         correct one which got added incorrectly.
1255
1256 2013-02-03  Kentaro Hara  <haraken@chromium.org>
1257
1258         [V8] Pass an Isolate to HasInstance() (part 3)
1259         https://bugs.webkit.org/show_bug.cgi?id=108622
1260
1261         Reviewed by Adam Barth.
1262
1263         This is one of efforts to pass an Isolate to GetTemplate().
1264
1265         No tests. No change in behavior.
1266
1267         * bindings/v8/custom/V8InjectedScriptHostCustom.cpp:
1268         (WebCore::V8InjectedScriptHost::isHTMLAllCollectionCallback):
1269         (WebCore::V8InjectedScriptHost::typeCallback):
1270         (WebCore::V8InjectedScriptHost::getEventListenersCallback):
1271         * bindings/v8/custom/V8NodeCustom.cpp:
1272         (WebCore::V8Node::insertBeforeCallback):
1273         (WebCore::V8Node::replaceChildCallback):
1274         (WebCore::V8Node::removeChildCallback):
1275         (WebCore::V8Node::appendChildCallback):
1276         * bindings/v8/custom/V8WebGLRenderingContextCustom.cpp:
1277         (WebCore::toWebGLUniformLocation):
1278         (WebCore::V8WebGLRenderingContext::getAttachedShadersCallback):
1279         (WebCore::V8WebGLRenderingContext::getProgramParameterCallback):
1280         (WebCore::V8WebGLRenderingContext::getShaderParameterCallback):
1281         (WebCore::V8WebGLRenderingContext::getUniformCallback):
1282         (WebCore::vertexAttribAndUniformHelperf):
1283         (WebCore::uniformHelperi):
1284         (WebCore::uniformMatrixHelper):
1285         * bindings/v8/custom/V8XMLHttpRequestCustom.cpp:
1286         (WebCore::isDocumentType):
1287         (WebCore::V8XMLHttpRequest::sendCallback):
1288
1289 2013-02-03  Kentaro Hara  <haraken@chromium.org>
1290
1291         [V8] Pass an Isolate to HasInstance() (part 2)
1292         https://bugs.webkit.org/show_bug.cgi?id=108620
1293
1294         Reviewed by Adam Barth.
1295
1296         This is one of efforts to pass an Isolate to GetTemplate().
1297
1298         No tests. No change in behavior.
1299
1300         * bindings/v8/custom/V8ArrayBufferViewCustom.h:
1301         (WebCore::constructWebGLArray):
1302         (WebCore::setWebGLArrayHelper):
1303         * bindings/v8/custom/V8AudioBufferSourceNodeCustom.cpp:
1304         (WebCore::V8AudioBufferSourceNode::bufferAccessorSetter):
1305         * bindings/v8/custom/V8BlobCustom.cpp:
1306         (WebCore::V8Blob::constructorCallbackCustom):
1307         * bindings/v8/custom/V8CanvasRenderingContext2DCustom.cpp:
1308         (WebCore::toCanvasStyle):
1309         (WebCore::V8CanvasRenderingContext2D::strokeStyleAccessorSetter):
1310         * bindings/v8/custom/V8ClipboardCustom.cpp:
1311         (WebCore::V8Clipboard::setDragImageCallback):
1312         * bindings/v8/custom/V8CryptoCustom.cpp:
1313         (WebCore::V8Crypto::getRandomValuesCallback):
1314         * bindings/v8/custom/V8DOMFormDataCustom.cpp:
1315         (WebCore::V8DOMFormData::constructorCallbackCustom):
1316         (WebCore::V8DOMFormData::appendCallback):
1317         * bindings/v8/custom/V8DataViewCustom.cpp:
1318         (WebCore::V8DataView::constructorCallbackCustom):
1319         * bindings/v8/custom/V8DocumentCustom.cpp:
1320         (WebCore::V8Document::evaluateCallback):
1321         * bindings/v8/custom/V8HTMLMediaElementCustom.cpp:
1322         (WebCore::V8HTMLMediaElement::controllerAccessorSetter):
1323         * bindings/v8/custom/V8HTMLOptionsCollectionCustom.cpp:
1324         (WebCore::V8HTMLOptionsCollection::addCallback):
1325         * bindings/v8/custom/V8HTMLSelectElementCustom.cpp:
1326         (WebCore::removeElement):
1327
1328 2013-02-03  Mike West  <mkwst@chromium.org>
1329
1330         Cleanup: 'ExceptionCode& ec', not 'ExceptionCode &ec'.
1331         https://bugs.webkit.org/show_bug.cgi?id=108769
1332
1333         Reviewed by Eric Seidel.
1334
1335         Does what it says on the tin: reference parameters should read
1336         'type& name', and this patch fixes the two occurances of 'type &name'
1337         that cropped up for ExceptionCode.
1338
1339         Pure style change; no effect on behavior.
1340
1341         * html/HTMLOptionsCollection.cpp:
1342         (WebCore::HTMLOptionsCollection::add):
1343
1344 2013-02-02  Jun Jiang  <jun.a.jiang@intel.com>
1345
1346         Optimize some operations for float type in texture format conversions of WebGL
1347         https://bugs.webkit.org/show_bug.cgi?id=107526
1348
1349         Reviewed by Darin Adler.
1350
1351         Some small changes are made to optimize the operations for float type in the texture format conversion of WebGL to improve performance.
1352
1353         Already covered by current tests.
1354
1355         * platform/graphics/GraphicsContext3D.cpp:
1356         (WebCore):
1357
1358 2013-02-02  Simon Fraser  <simon.fraser@apple.com>
1359
1360         Clean up the storage of dirty bits on nodes in the scrolling state tree
1361         https://bugs.webkit.org/show_bug.cgi?id=108744
1362
1363         Reviewed by Sam Weinig.
1364
1365         ScrollingStateNode and its subclasses used different techniques for
1366         tracking which properties changed. ScrollingStateNode tracked its layers
1367         via a bool member and some layer-specific methods, but also had virtual
1368         methods to allow subclasses to track properties via a bit mask.
1369         
1370         Clean this up by having the base class store the bit mask, and use
1371         enums to specify bits for the various properties. All properties are thus
1372         tracked in the same way. Bits are read and written through non-virtual member
1373         functions on ScrollingStateNode. All bit checking is done via hasChangedProperty().
1374
1375         * page/scrolling/ScrollingStateFixedNode.cpp:
1376         (WebCore::ScrollingStateFixedNode::ScrollingStateFixedNode): m_changedProperties is now on the base class.
1377         (WebCore::ScrollingStateFixedNode::updateConstraints): Use setPropertyChanged()
1378         * page/scrolling/ScrollingStateFixedNode.h: Remove overrides that are no longer needed.
1379         * page/scrolling/ScrollingStateNode.cpp:
1380         (WebCore::ScrollingStateNode::ScrollingStateNode): Initialize m_changedProperties,
1381         m_scrollLayerDidChange no longer tracked separately.
1382         (WebCore::ScrollingStateNode::cloneAndReset):
1383         * page/scrolling/ScrollingStateNode.h:
1384         (WebCore::ScrollingStateNode::hasChangedProperties):
1385         (WebCore::ScrollingStateNode::hasChangedProperty): Tests the bit.
1386         (WebCore::ScrollingStateNode::resetChangedProperties): Set all bits to 0.
1387         (WebCore::ScrollingStateNode::setPropertyChanged): Set the bit.
1388         (WebCore::ScrollingStateNode::changedProperties): Private to discourage incorrect usage
1389         (changeProperties() & foo).
1390         * page/scrolling/ScrollingStateScrollingNode.cpp:
1391         (WebCore::ScrollingStateScrollingNode::ScrollingStateScrollingNode): Base class does the copying now.
1392         (WebCore::ScrollingStateScrollingNode::setViewportRect): Use setPropertyChanged().
1393         (WebCore::ScrollingStateScrollingNode::setContentsSize): Ditto.
1394         (WebCore::ScrollingStateScrollingNode::setFrameScaleFactor): Etc.
1395         (WebCore::ScrollingStateScrollingNode::setNonFastScrollableRegion):
1396         (WebCore::ScrollingStateScrollingNode::setWheelEventHandlerCount):
1397         (WebCore::ScrollingStateScrollingNode::setShouldUpdateScrollLayerPositionOnMainThread):
1398         (WebCore::ScrollingStateScrollingNode::setHorizontalScrollElasticity):
1399         (WebCore::ScrollingStateScrollingNode::setVerticalScrollElasticity):
1400         (WebCore::ScrollingStateScrollingNode::setHasEnabledHorizontalScrollbar):
1401         (WebCore::ScrollingStateScrollingNode::setHasEnabledVerticalScrollbar):
1402         (WebCore::ScrollingStateScrollingNode::setHorizontalScrollbarMode):
1403         (WebCore::ScrollingStateScrollingNode::setVerticalScrollbarMode):
1404         (WebCore::ScrollingStateScrollingNode::setRequestedScrollPosition):
1405         (WebCore::ScrollingStateScrollingNode::setScrollOrigin):
1406         * page/scrolling/ScrollingStateScrollingNode.h:
1407         (ScrollingStateScrollingNode):
1408         * page/scrolling/ScrollingStateStickyNode.cpp:
1409         (WebCore::ScrollingStateStickyNode::ScrollingStateStickyNode):
1410         (WebCore::ScrollingStateStickyNode::updateConstraints):
1411         * page/scrolling/ScrollingStateStickyNode.h:
1412         * page/scrolling/ScrollingTree.cpp:
1413         (WebCore::ScrollingTree::commitNewTreeState):
1414         * page/scrolling/ScrollingTreeScrollingNode.cpp:
1415         (WebCore::ScrollingTreeScrollingNode::update):
1416         * page/scrolling/mac/ScrollingStateNodeMac.mm:
1417         (WebCore::ScrollingStateNode::setScrollLayer):
1418         * page/scrolling/mac/ScrollingStateScrollingNodeMac.mm:
1419         (WebCore::ScrollingStateScrollingNode::setCounterScrollingLayer):
1420         * page/scrolling/mac/ScrollingTreeFixedNode.mm:
1421         (WebCore::ScrollingTreeFixedNode::update):
1422         * page/scrolling/mac/ScrollingTreeScrollingNodeMac.mm:
1423         (WebCore::ScrollingTreeScrollingNodeMac::update):
1424         * page/scrolling/mac/ScrollingTreeStickyNode.mm:
1425         (WebCore::ScrollingTreeStickyNode::update):
1426
1427 2013-02-02  Simon Fraser  <simon.fraser@apple.com>
1428
1429         Fixed and sticky nodes have no nodeID set
1430         https://bugs.webkit.org/show_bug.cgi?id=108734
1431
1432         Reviewed by Sam Weinig.
1433         
1434         Push ScrollingNodeIDs onto scrolling nodes at construction time, and thereafter
1435         treat them as readonly. Previously, only the root scrolling node would have a node ID.
1436         
1437         Node IDs aren't actually used by the scrolling tree yet, but are useful for debugging.
1438
1439         Not testable since we only dump the scrolling state tree, not the scrolling
1440         node tree in tests.
1441
1442         * page/scrolling/ScrollingTree.cpp:
1443         (WebCore::ScrollingTree::ScrollingTree): No longer create the root node here;
1444         we can only create it when we know what its ID will be.
1445         (WebCore::ScrollingTree::updateTreeFromStateNode): Create the root node if
1446         necessary. Pass node IDs into create methods.
1447         * page/scrolling/ScrollingTreeNode.cpp:
1448         (WebCore::ScrollingTreeNode::ScrollingTreeNode):
1449         * page/scrolling/ScrollingTreeNode.h:
1450         * page/scrolling/ScrollingTreeScrollingNode.cpp:
1451         (WebCore::ScrollingTreeScrollingNode::ScrollingTreeScrollingNode):
1452         * page/scrolling/ScrollingTreeScrollingNode.h:
1453         * page/scrolling/mac/ScrollingTreeFixedNode.h:
1454         * page/scrolling/mac/ScrollingTreeFixedNode.mm:
1455         (WebCore::ScrollingTreeFixedNode::create):
1456         (WebCore::ScrollingTreeFixedNode::ScrollingTreeFixedNode):
1457         * page/scrolling/mac/ScrollingTreeScrollingNodeMac.h:
1458         * page/scrolling/mac/ScrollingTreeScrollingNodeMac.mm:
1459         (WebCore::ScrollingTreeScrollingNode::create):
1460         (WebCore::ScrollingTreeScrollingNodeMac::ScrollingTreeScrollingNodeMac):
1461         * page/scrolling/mac/ScrollingTreeStickyNode.h:
1462         * page/scrolling/mac/ScrollingTreeStickyNode.mm:
1463         (WebCore::ScrollingTreeStickyNode::create):
1464         (WebCore::ScrollingTreeStickyNode::ScrollingTreeStickyNode):
1465
1466 2013-02-02  Takashi Sakamoto  <tasak@google.com>
1467
1468         Making -webkit-image-set() the first value of background property causes crash.
1469         https://bugs.webkit.org/show_bug.cgi?id=108409
1470
1471         Reviewed by Beth Dakin.
1472
1473         CSSParser::addFillValue should use lval->isBaseValueList() instead
1474         of lval->isValueList(). If lval is -webkit-image-set, rval is appended
1475         to -webkit-image-set.
1476
1477         Test: fast/css/image-set-value-crash-in-fillImageSet.html
1478
1479         * css/CSSParser.cpp:
1480         (WebCore::CSSParser::addFillValue):
1481         If lval is not a value list, lval is initialized by using
1482         CSSValueList::createCommaSeparated(). So we have to check whether
1483         lval is created by CSSValueList::createCommaSeparated() or not.
1484
1485 2013-02-02  David Kilzer  <ddkilzer@apple.com>
1486
1487         Upstream iOS FeatureDefines
1488         <http://webkit.org/b/108753>
1489
1490         Reviewed by Anders Carlsson.
1491
1492         * Configurations/FeatureDefines.xcconfig:
1493         - ENABLE_DEVICE_ORIENTATION: Add iOS configurations.
1494         - ENABLE_PLUGIN_PROXY_FOR_VIDEO: Ditto.
1495         - FEATURE_DEFINES: Add ENABLE_PLUGIN_PROXY_FOR_VIDEO.  Add
1496           PLATFORM_NAME variant to reduce future merge conflicts. 
1497
1498 2013-02-02  Philippe Normand  <pnormand@igalia.com>
1499
1500         [GStreamer] Media tests fix after r141695.
1501
1502         Rubber-stamped by Martin Robinson.
1503
1504         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
1505         (WebCore::MediaPlayerPrivateGStreamer::setPlaybinURL): Remove
1506         both fragment and query string for file:// uris before loading.
1507
1508 2013-02-02  Patrick Gansterer  <paroga@webkit.org>
1509
1510         Build fix for WinCE after r141637.
1511
1512         * platform/graphics/wince/ImageBufferWinCE.cpp:
1513
1514 2013-02-01  Philippe Normand  <pnormand@igalia.com>
1515
1516         [GStreamer] webkitwebsrc is exposed to application-side
1517         https://bugs.webkit.org/show_bug.cgi?id=108088
1518
1519         Reviewed by Martin Robinson.
1520
1521         Switch the webkitwebsrc to handle webkit+http(s) uris so it is now
1522         explicit that this element is meant to be used preferrably inside
1523         WebKit. This change is internal to the player.
1524
1525         No new tests, covered by existing http/tests/media tests.
1526
1527         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
1528         (WebCore::MediaPlayerPrivateGStreamer::setPlaybinURL):
1529         (WebCore):
1530         (WebCore::MediaPlayerPrivateGStreamer::load):
1531         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h:
1532         (MediaPlayerPrivateGStreamer):
1533         * platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
1534         (webKitWebSrcGetProtocols):
1535         (webKitWebSrcSetUri):
1536
1537 2013-02-02  Simon Hausmann  <simon.hausmann@digia.com>
1538
1539         Unreviewed trivial prospective build fix for A17n disabled
1540         configurations.
1541
1542         The dummy computed object attriute cache control functions need to be defined
1543         as being member functions of AXObjectCache, because that's where they are
1544         declared.
1545
1546         * accessibility/AXObjectCache.h:
1547         (WebCore::AXObjectCache::startCachingComputedObjectAttributesUntilTreeMutates):
1548         (WebCore::AXObjectCache::stopCachingComputedObjectAttributes):
1549
1550 2013-02-02  Antoine Quint  <graouts@apple.com>
1551
1552         Creating a WebInspector.ContextMenu without an event crashes WebCore when calling .show()
1553         https://bugs.webkit.org/show_bug.cgi?id=108636
1554
1555         Reviewed by Pavel Feldman.
1556
1557         Return early if InspectorFrontendHost::showContextMenu() is called without an event and
1558         assert in ContextMenuController::createContextMenu() in case no event was provided.
1559
1560         * inspector/InspectorFrontendHost.cpp:
1561         (WebCore::InspectorFrontendHost::showContextMenu):
1562         * page/ContextMenuController.cpp:
1563         (WebCore::ContextMenuController::createContextMenu):
1564
1565 2013-02-02  Jonathan Feldstein  <jfeldstein@rim.com>
1566
1567         [BlackBerry] Improper initialization of ANGLEResources
1568         https://bugs.webkit.org/show_bug.cgi?id=101489
1569
1570         Reviewed by Antonio Gomes.
1571
1572         MaxDrawBuffers, OES_standard_derivatives, OES_EGL_image_external and ARB_texture_rectangle have already been initialized through ShBuiltInResources function and these fields do not need to be set again in GraphicsContext3dBlackBerry.cpp. In addition, the extension flags cannot be set to true without getExtension having been called (Khronos WebGL specs, section 5.14.14.). Thus these lines need to be removed.
1573
1574         * platform/graphics/blackberry/GraphicsContext3DBlackBerry.cpp:
1575         (WebCore::GraphicsContext3D::GraphicsContext3D):
1576
1577 2013-02-02  Vivek Galatage  <vivek.vg@samsung.com>
1578
1579         Web Inspector: Refactor InspectorDOMStorageAgent::getDOMStorageEntries to report the error messages
1580         https://bugs.webkit.org/show_bug.cgi?id=108611
1581
1582         Reviewed by Pavel Feldman.
1583
1584         Added reporting of various error messages. Moved the modification of output
1585         parameter at a later stage when there are no errors reported.
1586
1587         No new tests as code refactoring.
1588
1589         * inspector/InspectorDOMStorageAgent.cpp:
1590         (WebCore::hadException):
1591         (WebCore):
1592         (WebCore::InspectorDOMStorageAgent::getDOMStorageEntries):
1593
1594 2013-02-02  Andrey Lushnikov  <lushnikov@chromium.org>
1595
1596         Web Inspector: fix bug in highlighting single chars via highlightRange API of DTE
1597         https://bugs.webkit.org/show_bug.cgi?id=108685
1598
1599         Reviewed by Pavel Feldman.
1600
1601         Use Math.min instead of Math.max in rangesForLine method.
1602
1603         Updated test: text-editor-highlight-api.html
1604
1605         * inspector/front-end/DefaultTextEditor.js:
1606         (WebInspector.TextEditorMainPanel.RangeHighlightDescriptor.prototype.rangesForLine):
1607
1608 2013-02-02  Tony Gentilcore  <tonyg@chromium.org>
1609
1610         Continue making XSSAuditor thread safe: Remove unsafe AtomicString compares
1611         https://bugs.webkit.org/show_bug.cgi?id=108557
1612
1613         Reviewed by Adam Barth.
1614
1615         Unfortunately HTMLNames comparisons will always be false on a non-main thread
1616         with our current design, so we have to use some "threadSafeMatch" helpers written
1617         for the HTMLBackgroundParser.
1618
1619         Also factor out threadSafeMatch() methods to HTMLParserIdioms.
1620
1621         No new tests because no new functionality.
1622
1623         * html/parser/BackgroundHTMLParser.cpp:
1624         (WebCore):
1625         * html/parser/HTMLParserIdioms.cpp:
1626         (WebCore::threadSafeEqual):
1627         (WebCore):
1628         (WebCore::threadSafeMatch):
1629         * html/parser/HTMLParserIdioms.h:
1630         (WebCore):
1631         * html/parser/XSSAuditor.cpp:
1632         (WebCore::XSSAuditor::eraseAttributeIfInjected):
1633
1634 2013-02-01  James Simonsen  <simonjam@chromium.org>
1635
1636         Add didChangePriority() to ResourceHandle
1637         https://bugs.webkit.org/show_bug.cgi?id=107995
1638
1639         Reviewed by Darin Fisher.
1640
1641         For PLT, it's important that preloads remain a lower priority than parser requested resources.
1642         This can lead to a 5% improvement.
1643
1644         The plan is to use this plumbing to expose the desired behavior. This patch simply allows a
1645         resource's priority to change and have it propagate to the network layer. An upcoming patch will
1646         lower the priority of preloads and then increase the priority when the parser officially requests
1647         it.
1648
1649         No new tests. No visible change, because priority doesn't change yet.
1650
1651         * loader/cache/CachedResource.cpp:
1652         (WebCore):
1653         (WebCore::CachedResource::setLoadPriority):
1654         * loader/cache/CachedResourceLoader.cpp:
1655         (WebCore::CachedResourceLoader::requestResource): Allow loads to modify priority.
1656         * loader/cache/CachedResourceRequest.h:
1657         (WebCore::CachedResourceRequest::setPriority): Notify when priority changes.
1658         * platform/network/ResourceHandle.cpp:
1659         (WebCore::ResourceHandle::didChangePriority): Added.
1660         (WebCore):
1661         * platform/network/ResourceHandle.h:
1662         (ResourceHandle):
1663         * platform/network/chromium/ResourceHandle.cpp:
1664         (WebCore::ResourceHandleInternal::didChangePriority):
1665         (WebCore):
1666         (WebCore::ResourceHandle::didChangePriority):
1667         * platform/network/chromium/ResourceHandleInternal.h:
1668         (ResourceHandleInternal):
1669
1670 2013-02-01  Roger Fong  <roger_fong@apple.com>
1671
1672         Unreviewed. Clean up WebCore VS2010 project.
1673
1674         * WebCore.vcxproj/WebCore.vcxproj:
1675         * WebCore.vcxproj/WebCore.vcxproj.filters:
1676         * WebCore.vcxproj/WebCoreCommon.props:
1677         * WebCore.vcxproj/WebCoreGenerated.make:
1678         * WebCore.vcxproj/WebCorePreLink.cmd: Removed.
1679         * WebCore.vcxproj/build-generated-files.sh:
1680
1681 2013-02-01  Sam Weinig  <sam@webkit.org>
1682
1683         Don't use deprecated method -[NSImage dissolveToPoint:fraction:]
1684         <rdar://problem/11723792>
1685         https://bugs.webkit.org/show_bug.cgi?id=108739
1686
1687         Reviewed by Anders Carlsson.
1688
1689         * platform/mac/DragImageMac.mm:
1690         (WebCore::dissolveDragImageToFraction):
1691         Remove use of deprecated NSImage methods and simplify a bit.
1692
1693 2013-02-01  Andrey Lushnikov  <lushnikov@chromium.org>
1694
1695         Web Inspector: fix "DOM Exception 8" when deleting lines containing decoration in DTE.
1696         https://bugs.webkit.org/show_bug.cgi?id=108689
1697
1698         Reviewed by Alexander Pavlov.
1699
1700         Add a check that decoration element is still added to the line before trying to delete it. This
1701         won't be true if the whole line is deleted in contentEditable,
1702         and this is the reason for the exception to be thrown.
1703
1704         No new tests.
1705
1706         * inspector/front-end/DefaultTextEditor.js:
1707         (WebInspector.TextEditorMainChunk.prototype.removeAllDecorations):
1708
1709 2013-02-01  Sheriff Bot  <webkit.review.bot@gmail.com>
1710
1711         Unreviewed, rolling out r141669.
1712         http://trac.webkit.org/changeset/141669
1713         https://bugs.webkit.org/show_bug.cgi?id=108728
1714
1715         Broke the windows build. (Requested by leviw on #webkit).
1716
1717         * rendering/RenderBoxModelObject.cpp:
1718         (WebCore::RenderBoxModelObject::computedCSSPaddingTop):
1719         (WebCore):
1720         (WebCore::RenderBoxModelObject::computedCSSPaddingBottom):
1721         (WebCore::RenderBoxModelObject::computedCSSPaddingLeft):
1722         (WebCore::RenderBoxModelObject::computedCSSPaddingRight):
1723         (WebCore::RenderBoxModelObject::computedCSSPaddingBefore):
1724         (WebCore::RenderBoxModelObject::computedCSSPaddingAfter):
1725         (WebCore::RenderBoxModelObject::computedCSSPaddingStart):
1726         (WebCore::RenderBoxModelObject::computedCSSPaddingEnd):
1727         * rendering/RenderBoxModelObject.h:
1728         (RenderBoxModelObject):
1729
1730 2013-02-01  Emil A Eklund  <eae@chromium.org>
1731
1732         Remove duplicate code in RenderBoxModelObject::computedCSSPadding*
1733         https://bugs.webkit.org/show_bug.cgi?id=108707
1734
1735         Reviewed by Levi Weintraub.
1736         
1737         The computedCSSPaddingTop/Bottom/... methods in
1738         RenderBoxModelObject all do pretty much exactly the same thing
1739         yet share no code.
1740         
1741         Break out shared code into computedCSSPadding method and have
1742         the top/bottom/left/right/... ones call it with the appropriate
1743         length value.
1744
1745         No new tests, no change in functionality.
1746
1747         * rendering/RenderBoxModelObject.cpp:
1748         (WebCore::RenderBoxModelObject::computedCSSPadding):
1749         * rendering/RenderBoxModelObject.h:
1750         (WebCore::RenderBoxModelObject::computedCSSPaddingTop):
1751         (WebCore::RenderBoxModelObject::computedCSSPaddingBottom):
1752         (WebCore::RenderBoxModelObject::computedCSSPaddingLeft):
1753         (WebCore::RenderBoxModelObject::computedCSSPaddingRight):
1754         (WebCore::RenderBoxModelObject::computedCSSPaddingBefore):
1755         (WebCore::RenderBoxModelObject::computedCSSPaddingAfter):
1756         (WebCore::RenderBoxModelObject::computedCSSPaddingStart):
1757         (WebCore::RenderBoxModelObject::computedCSSPaddingEnd):
1758         (RenderBoxModelObject):
1759
1760 2013-02-01  Mark Lam  <mark.lam@apple.com>
1761
1762         Replace ExceptionCode with DatabaseError in the openDatabase() code path.
1763         https://bugs.webkit.org/show_bug.cgi?id=108724.
1764
1765         Reviewed by Alexey Proskuryakov.
1766
1767         Also made DatabaseBackend::performOpenAndVerify() a little more
1768         straightforward and less repetitive.
1769
1770         No new tests.
1771
1772         * Modules/webdatabase/DOMWindowWebDatabase.cpp:
1773         (WebCore::DOMWindowWebDatabase::openDatabase):
1774         * Modules/webdatabase/Database.cpp:
1775         (WebCore::Database::openAndVerifyVersion):
1776         (WebCore::Database::performOpenAndVerify):
1777         * Modules/webdatabase/Database.h:
1778         (Database):
1779         * Modules/webdatabase/DatabaseBackend.cpp:
1780         (WebCore::DoneCreatingDatabaseOnExitCaller::DoneCreatingDatabaseOnExitCaller):
1781         (WebCore::DoneCreatingDatabaseOnExitCaller::~DoneCreatingDatabaseOnExitCaller):
1782         (DoneCreatingDatabaseOnExitCaller):
1783         (WebCore::DoneCreatingDatabaseOnExitCaller::openSucceeded):
1784         (WebCore::DatabaseBackend::performOpenAndVerify):
1785         * Modules/webdatabase/DatabaseBackend.h:
1786         * Modules/webdatabase/DatabaseManager.cpp:
1787         (WebCore::DatabaseManager::openDatabase):
1788         (WebCore::DatabaseManager::openDatabaseSync):
1789         * Modules/webdatabase/DatabaseManager.h:
1790         (DatabaseManager):
1791         * Modules/webdatabase/DatabaseSync.cpp:
1792         (WebCore::DatabaseSync::openAndVerifyVersion):
1793         * Modules/webdatabase/DatabaseSync.h:
1794         (DatabaseSync):
1795         * Modules/webdatabase/DatabaseTask.cpp:
1796         (WebCore::Database::DatabaseOpenTask::DatabaseOpenTask):
1797         (WebCore::Database::DatabaseOpenTask::doPerformTask):
1798         * Modules/webdatabase/DatabaseTask.h:
1799         (WebCore::Database::DatabaseOpenTask::create):
1800         (Database::DatabaseOpenTask):
1801         * Modules/webdatabase/WorkerContextWebDatabase.cpp:
1802         (WebCore::WorkerContextWebDatabase::openDatabase):
1803         (WebCore::WorkerContextWebDatabase::openDatabaseSync):
1804         * WebCore.gypi:
1805
1806 2013-02-01  Yongjun Zhang  <yongjun_zhang@apple.com>
1807
1808         Document is never released if an image's src attribute is changed to a url blocked by content-security-policy.
1809         https://bugs.webkit.org/show_bug.cgi?id=108545
1810
1811         If we just scheduled an error event due to an null newImage, we should not cancel it when newImage and oldImage
1812         is not the same.  Otherwise we will ref the sourceElement in updateHasPendingEvent (m_hasPendingErrorEvent is true)
1813         but never deref it since we already cancelled the error event.
1814
1815         Reviewed by Alexey Proskuryakov.
1816
1817         Test: fast/images/image-error-event-not-firing.html
1818
1819         * loader/ImageLoader.cpp:
1820         (WebCore::ImageLoader::updateFromElement): don't cancel error event if newImage is null, we want the
1821             error event to fire.
1822
1823 2013-02-01  Benjamin Poulain  <bpoulain@apple.com>
1824
1825         Clean the String->AtomicString conversion for AnimationController::pauseAnimationAtTime
1826         https://bugs.webkit.org/show_bug.cgi?id=108558
1827
1828         Reviewed by Dean Jackson.
1829
1830         This is a step torward killing the implicit conversion from String to AtomicString.
1831
1832         The animation name are AtomicString. The API is changed all the way to the callers
1833         to take an AtomicString. When needed, we use explicit conversion.
1834
1835         * WebCore.exp.in:
1836         * page/animation/AnimationController.cpp:
1837         (WebCore::AnimationControllerPrivate::pauseAnimationAtTime):
1838         (WebCore::AnimationController::pauseAnimationAtTime):
1839         * page/animation/AnimationController.h:
1840         (AnimationController):
1841         * page/animation/AnimationControllerPrivate.h:
1842         (AnimationControllerPrivate):
1843         * page/animation/CompositeAnimation.cpp:
1844         (WebCore::CompositeAnimation::pauseAnimationAtTime):
1845         We should not null check the name. Getting a null name from the HashMap would be
1846         an error from the tests, and the HashMap would never return a value anyway.
1847         * testing/Internals.cpp:
1848         (WebCore::Internals::pauseAnimationAtTimeOnPseudoElement):
1849
1850 2013-02-01  Dominic Mazzoni  <dmazzoni@google.com>
1851
1852         AX: memoize expensive computation during blocks where tree doesn't change
1853         https://bugs.webkit.org/show_bug.cgi?id=106497
1854
1855         Reviewed by Ryosuke Niwa.
1856
1857         Add a cache for computed attributes of AXObjects.
1858         The cache can be enabled at the start of a batch of
1859         read-only operations on the accessibility tree, and
1860         it's cleared automatically when the tree mutates.
1861         Currently accessibilityIsIgnored is cached, since it's
1862         frequently called and relatively expensive to compute.
1863
1864         No new tests.
1865
1866         * accessibility/AXObjectCache.cpp:
1867         (WebCore):
1868         (WebCore::AXComputedObjectAttributeCache::getIgnored):
1869         (WebCore::AXComputedObjectAttributeCache::setIgnored):
1870         (WebCore::AXObjectCache::postNotification):
1871         (WebCore::AXObjectCache::nodeTextChangeNotification):
1872         (WebCore::AXObjectCache::handleScrollbarUpdate):
1873         (WebCore::AXObjectCache::startCachingComputedObjectAttributesUntilTreeMutates):
1874         (WebCore::AXObjectCache::stopCachingComputedObjectAttributes):
1875         * accessibility/AXObjectCache.h:
1876         (AXComputedObjectAttributeCache):
1877         (WebCore::AXComputedObjectAttributeCache::create):
1878         (WebCore::AXComputedObjectAttributeCache::AXComputedObjectAttributeCache):
1879         (WebCore::AXComputedObjectAttributeCache::CachedAXObjectAttributes::CachedAXObjectAttributes):
1880         (CachedAXObjectAttributes):
1881         (WebCore):
1882         (WebCore::AXObjectCache::computedObjectAttributeCache):
1883         (AXObjectCache):
1884         (WebCore::AXComputedObjectAttributeCache::getIgnored):
1885         (WebCore::AXComputedObjectAttributeCache::setIgnored):
1886         (WebCore::startCachingComputedObjectAttributesUntilTreeMutates):
1887         (WebCore::stopCachingComputedObjectAttributes):
1888         * accessibility/AccessibilityObject.cpp:
1889         (WebCore::AccessibilityObject::findMatchingObjects):
1890         * accessibility/AccessibilityRenderObject.cpp:
1891         (WebCore):
1892         (WebCore::AccessibilityRenderObject::accessibilityIsIgnored):
1893         (WebCore::AccessibilityRenderObject::computeAccessibilityIsIgnored):
1894         * accessibility/AccessibilityRenderObject.h:
1895         (AccessibilityRenderObject):
1896
1897 2013-02-01  Alexey Proskuryakov  <ap@apple.com>
1898
1899         Build fix.
1900
1901         * Modules/webdatabase/DatabaseBackend.cpp: (DoneCreatingDatabaseOnExitCaller):
1902         Don't fail because of an unused member variable in cross-plaform code path.
1903
1904 2013-02-01  Kevin Ellis  <kevers@chromium.org>
1905
1906         [chromium] Fat scrollbars on Windows in high-DPI mode.
1907         https://bugs.webkit.org/show_bug.cgi?id=108637
1908
1909         Updates mechanism for retrieving scrollbar metrics on the
1910         Windows port of Chromium.  Previously, GetSystemMetrics calls
1911         were used, which fetches prescaled sizes in pixel rather than
1912         logical units, resulting in a double scaling when a device
1913         scale factor is set.  With the patch, the size is retrieved
1914         from the theme engine in DIP.
1915
1916         Reviewed by Adam Barth.
1917
1918         No new tests.
1919
1920         * platform/chromium/ScrollbarThemeChromiumWin.cpp:
1921         (WebCore::ScrollbarThemeChromiumWin::scrollbarThickness):
1922         (WebCore::ScrollbarThemeChromiumWin::paintTrackPiece):
1923         * rendering/RenderThemeChromiumWin.cpp:
1924         (WebCore):
1925         (WebCore::menuListButtonWidth):
1926
1927 2013-02-01  Mark Lam  <mark.lam@apple.com>
1928
1929         Clean up calls to DatabaseTracker::add/removeOpenDatabase().
1930         https://bugs.webkit.org/show_bug.cgi?id=108431
1931
1932         Reviewed by Geoffrey Garen.
1933
1934         Also adapted the chromium port to work with this new code.
1935         Chromium parts reviewed by Michael Nordman and David Levin.
1936
1937         This is part of the webdatabase refactoring effort.
1938
1939         No new tests.
1940
1941         * Modules/webdatabase/AbstractDatabaseServer.h:
1942         (AbstractDatabaseServer):
1943         * Modules/webdatabase/Database.cpp:
1944         (WebCore::Database::openAndVerifyVersion):
1945         (WebCore::Database::close):
1946         * Modules/webdatabase/DatabaseBackend.cpp:
1947         (WebCore::DatabaseBackend::DatabaseBackend):
1948         (WebCore::DatabaseBackend::closeDatabase):
1949         (DoneCreatingDatabaseOnExitCaller):
1950         (WebCore::DoneCreatingDatabaseOnExitCaller::DoneCreatingDatabaseOnExitCaller):
1951         (WebCore::DoneCreatingDatabaseOnExitCaller::~DoneCreatingDatabaseOnExitCaller):
1952         (WebCore::DatabaseBackend::performOpenAndVerify):
1953         * Modules/webdatabase/DatabaseManager.cpp:
1954         (WebCore::DatabaseManager::openDatabase):
1955         (WebCore::DatabaseManager::openDatabaseSync):
1956         * Modules/webdatabase/DatabaseManager.h:
1957         (DatabaseManager):
1958         * Modules/webdatabase/DatabaseServer.cpp:
1959         * Modules/webdatabase/DatabaseServer.h:
1960         * Modules/webdatabase/DatabaseSync.cpp:
1961         (WebCore::DatabaseSync::~DatabaseSync):
1962         (WebCore::DatabaseSync::openAndVerifyVersion):
1963         (WebCore::DatabaseSync::closeImmediately):
1964         * Modules/webdatabase/DatabaseSync.h:
1965         (DatabaseSync):
1966         * Modules/webdatabase/DatabaseTracker.cpp:
1967         (WebCore::DatabaseTracker::doneCreatingDatabase):
1968         (WebCore::DatabaseTracker::addOpenDatabase):
1969         * Modules/webdatabase/DatabaseTracker.h:
1970         (DatabaseTracker):
1971         * Modules/webdatabase/chromium/DatabaseTrackerChromium.cpp:
1972         (WebCore::DatabaseTracker::addOpenDatabase):
1973         (WebCore::DatabaseTracker::prepareToOpenDatabase):
1974         (WebCore::DatabaseTracker::failedToOpenDatabase):
1975
1976 2013-02-01  Andrey Lushnikov  <lushnikov@chromium.org>
1977
1978         Web Inspector: remove extra padding around overlay highlight.
1979         https://bugs.webkit.org/show_bug.cgi?id=108679
1980
1981         Reviewed by Alexander Pavlov.
1982
1983         No new tests: no change in behaviour.
1984
1985         Remove extraWidth from overlay highlight spans.
1986
1987         * inspector/front-end/DefaultTextEditor.js:
1988         (WebInspector.TextEditorMainPanel.prototype._appendOverlayHighlight):
1989
1990 2013-02-01  Philip Rogers  <pdr@google.com>
1991
1992         Prevent skipped repaints for children of inner SVG elements
1993         https://bugs.webkit.org/show_bug.cgi?id=108429
1994
1995         Reviewed by Eric Seidel.
1996
1997         This patch fixes a bug caused by r108699 and r133786 where we would not repaint children
1998         of inner SVG elements because "m_didTransformToRootUpdate" was never reset on viewport
1999         containers. The stale m_didTransformToRootUpdate variable caused us to skip child repaints.
2000
2001         I verified that the Robohornet SVG benchmark performance gains in r133786 are not regressed
2002         with this patch.
2003
2004         Test: svg/repaint/svgsvgelement-repaint-children.html
2005
2006         * rendering/svg/RenderSVGViewportContainer.cpp:
2007         (WebCore::RenderSVGViewportContainer::calcViewport):
2008
2009             This can be removed because setNeedsTransformUpdate() will set m_needsTransformUpdate.
2010
2011         (WebCore::RenderSVGViewportContainer::calculateLocalTransform):
2012
2013             This change is straightforward and is similar to the equivalent assignment in
2014             RenderSVGTransformableContainer::calculateLocalTransform().
2015
2016 2013-02-01  Philip Rogers  <pdr@google.com>
2017
2018         Change hasAlpha to isKnownToBeOpaque and correct the return value for SVG images.
2019         https://bugs.webkit.org/show_bug.cgi?id=106966
2020
2021         Reviewed by Stephen White.
2022
2023         Previously, Image::currentFrameHasAlpha's default implementation returned false so SVG
2024         images always returned false for currentFrameHasAlpha. Additionally, currentFrameHasAlpha
2025         was treated as returning whether the frame had alpha when it would actually conservatively
2026         return true.
2027
2028         This patch renames hasAlpha and currentFrameHasAlpha to isKnownToBeOpaque and
2029         currentFrameIsKnownToBeOpaque, respectively. This rename better describes the actual
2030         functionality. This patch also makes Image::isKnownToBeOpaque a pure virtual function and
2031         correctly implements it for SVG images.
2032
2033         All users of isKnownToBeOpaque access SVG images using CachedImage::imageForRenderer which
2034         currently returns a cached bitmap image. Therefore, this patch will not affect existing
2035         functionality. A regression test has been added that will catch if this changes in the
2036         future (e.g., WK106159 which proposes not returning cached bitmaps). The now unnecessary
2037         isBitmapImage() calls have been removed in this patch.
2038
2039         image-box-shadow.html has been modified to test SVG images.
2040
2041         * css/CSSCrossfadeValue.cpp:
2042         (WebCore::subimageKnownToBeOpaque):
2043         (WebCore::CSSCrossfadeValue::knownToBeOpaque):
2044
2045             Mostly straightforward rename but note the logic has been slightly altered: AND -> OR.
2046
2047         * css/CSSCrossfadeValue.h:
2048         (CSSCrossfadeValue):
2049         * css/CSSGradientValue.cpp:
2050         (WebCore::CSSGradientValue::knownToBeOpaque):
2051         * css/CSSGradientValue.h:
2052         (CSSGradientValue):
2053         * css/CSSImageGeneratorValue.cpp:
2054         (WebCore::CSSImageGeneratorValue::knownToBeOpaque):
2055         * css/CSSImageGeneratorValue.h:
2056         (CSSImageGeneratorValue):
2057         * css/CSSImageValue.cpp:
2058         (WebCore::CSSImageValue::knownToBeOpaque):
2059         * css/CSSImageValue.h:
2060         (CSSImageValue):
2061         * loader/cache/CachedImage.cpp:
2062         (WebCore::CachedImage::currentFrameKnownToBeOpaque):
2063         * loader/cache/CachedImage.h:
2064         (CachedImage):
2065         * platform/graphics/BitmapImage.cpp:
2066         (WebCore::BitmapImage::currentFrameKnownToBeOpaque):
2067         * platform/graphics/BitmapImage.h:
2068         (BitmapImage):
2069         * platform/graphics/GeneratedImage.h:
2070         (GeneratedImage):
2071         * platform/graphics/Image.h:
2072
2073             Note: now a pure virtual function!
2074
2075         (Image):
2076         * platform/graphics/blackberry/LayerTiler.cpp:
2077         (WebCore::LayerTiler::updateTextureContentsIfNeeded):
2078
2079             Removed unnecessary isBitmapImage() checks.
2080
2081         * platform/graphics/cg/GraphicsContext3DCG.cpp:
2082         (WebCore::GraphicsContext3D::ImageExtractor::extractImage):
2083
2084             Removed unnecessary isBitmapImage() checks.
2085
2086         * platform/graphics/cg/PDFDocumentImage.h:
2087         (PDFDocumentImage):
2088         * platform/graphics/chromium/GraphicsLayerChromium.cpp:
2089
2090             Removed unnecessary isBitmapImage() checks.
2091
2092         (WebCore::GraphicsLayerChromium::setContentsToImage):
2093         * platform/graphics/qt/StillImageQt.cpp:
2094         (WebCore::StillImage::currentFrameKnownToBeOpaque):
2095         * platform/graphics/qt/StillImageQt.h:
2096         (StillImage):
2097         * platform/graphics/skia/BitmapImageSingleFrameSkia.cpp:
2098         (WebCore::BitmapImageSingleFrameSkia::currentFrameKnownToBeOpaque):
2099         * platform/graphics/skia/BitmapImageSingleFrameSkia.h:
2100         (BitmapImageSingleFrameSkia):
2101         * platform/graphics/texmap/TextureMapperBackingStore.cpp:
2102         (WebCore::TextureMapperTile::updateContents):
2103         (WebCore::TextureMapperTiledBackingStore::updateContents):
2104         * platform/graphics/texmap/coordinated/CoordinatedImageBacking.cpp:
2105         (WebCore::CoordinatedImageBacking::update):
2106         * rendering/RenderImage.cpp:
2107         (WebCore::RenderImage::backgroundIsObscured):
2108
2109             Removed unnecessary isBitmapImage() checks and slightly reworked the logic.
2110
2111         * rendering/style/FillLayer.cpp:
2112         (WebCore::FillLayer::hasOpaqueImage):
2113         * rendering/style/StyleCachedImage.cpp:
2114         (WebCore::StyleCachedImage::knownToBeOpaque):
2115         * rendering/style/StyleCachedImage.h:
2116         (StyleCachedImage):
2117         * rendering/style/StyleCachedImageSet.cpp:
2118         (WebCore::StyleCachedImageSet::knownToBeOpaque):
2119         * rendering/style/StyleCachedImageSet.h:
2120         (StyleCachedImageSet):
2121         * rendering/style/StyleGeneratedImage.cpp:
2122         (WebCore::StyleGeneratedImage::knownToBeOpaque):
2123         * rendering/style/StyleGeneratedImage.h:
2124         (StyleGeneratedImage):
2125         * rendering/style/StyleImage.h:
2126         (StyleImage):
2127         * rendering/style/StylePendingImage.h:
2128         (WebCore::StylePendingImage::knownToBeOpaque):
2129         * svg/graphics/SVGImage.h:
2130         (SVGImage):
2131
2132 2013-02-01  Brady Eidson  <beidson@apple.com>
2133
2134         Clean up WebArchive loading with the NetworkProcess
2135         <rdar://problem/12695840> and https://bugs.webkit.org/show_bug.cgi?id=108673
2136
2137         Reviewed by Alexey Proskuryakov.
2138
2139         No new tests (No change in WebCore behavior).
2140
2141         Remove a now unneeded function and add a needed export.
2142
2143         * WebCore.exp.in:
2144         * loader/ResourceLoadScheduler.cpp:
2145         * loader/ResourceLoadScheduler.h:
2146
2147 2013-02-01  Alok Priyadarshi  <alokp@chromium.org>
2148
2149         Print GraphicsLayer::m_contentsOpaque if non-default (true)
2150         https://bugs.webkit.org/show_bug.cgi?id=108354
2151
2152         Reviewed by Simon Fraser.
2153
2154         No new tests. This change facilitates testing of GraphicsLayer opaqueness.
2155
2156         * platform/graphics/GraphicsLayer.cpp:
2157         (WebCore::GraphicsLayer::dumpProperties):
2158
2159 2013-02-01  Tony Gentilcore  <tonyg@chromium.org>
2160
2161         Continue making XSSAuditor thread safe: Remove dependency on parser's Document URL
2162         https://bugs.webkit.org/show_bug.cgi?id=108655
2163
2164         Reviewed by Adam Barth.
2165
2166         No new tests because no new functionality.
2167
2168         * html/parser/XSSAuditor.cpp:
2169         (WebCore::XSSAuditor::XSSAuditor):
2170         (WebCore::XSSAuditor::init):
2171         (WebCore::XSSAuditor::isLikelySafeResource):
2172         * html/parser/XSSAuditor.h:
2173
2174 2013-02-01  Jer Noble  <jer.noble@apple.com>
2175
2176         REGRESSION (r141281): Navigating to this HTTP Live Streaming (application/vnd.apple.mpegurl) URL downloads a file instead of playing it in the browser
2177         https://bugs.webkit.org/show_bug.cgi?id=108674
2178         <rdar://problem/13133595>
2179
2180         Reviewed by Eric Carlson.
2181
2182         When passed a HashSet of available MIME types to fill out, QTKit was overwriting the contents, which were
2183         AVFoundation's supported types. Instead, it should be appending to the list of supported types.
2184
2185         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
2186         (WebCore::concatenateHashSets): Added static utility function.
2187         (WebCore::MediaPlayerPrivateQTKit::getSupportedTypes): Concatenate instead of overwriting the passed in MIME types.
2188
2189 2013-02-01  Beth Dakin  <bdakin@apple.com>
2190
2191         Another speculative windows build fix.
2192
2193         * platform/ScrollAnimator.h:
2194
2195 2013-01-31  Dirk Schulze  <krit@webkit.org>
2196
2197         [canvas] Add more constructors to Path
2198         https://bugs.webkit.org/show_bug.cgi?id=108587
2199
2200         Reviewed by Dean Jackson.
2201
2202         Add more constructors to Path object to make it possible
2203         to copy Path objects and parse SVG strings into a Path
2204         object that can be used on the canvas context afterwards.
2205
2206         Test: fast/canvas/canvas-path-constructors.html
2207
2208         * html/canvas/DOMPath.h: New constructors for Path.
2209         (WebCore::DOMPath::create):
2210         (WebCore::DOMPath::DOMPath):
2211         * html/canvas/DOMPath.idl: Ditto.
2212
2213 2013-02-01  Zan Dobersek  <zdobersek@igalia.com>
2214
2215         [GTK] Add WTFURL source files to the build
2216         https://bugs.webkit.org/show_bug.cgi?id=108215
2217
2218         Reviewed by Benjamin Poulain.
2219
2220         * platform/KURLWTFURL.cpp:
2221         (WebCore): Only use the stub implementation of the fileSystemPath method for the
2222         Apple ports, other ports should for now still rely on their platform-specific implementations.
2223
2224 2013-02-01  Mike West  <mkwst@chromium.org>
2225
2226         Remove call to SecurityOrigin::canAccessDatabase from IDB constructor.
2227         https://bugs.webkit.org/show_bug.cgi?id=108477
2228
2229         Reviewed by Adam Barth.
2230
2231         This change removes the 'SecurityOrigin::canAccessDatabase' check from
2232         the constructor for the 'indexedDB' property on both DOMWindow and
2233         WorkerContext. After the patch for http://wkbug.com/94171 this check
2234         is redundant, as all the entry points to IDB are now gated on access
2235         being granted.
2236
2237         As a side-effect, dropping the check in WorkerContextIndexedDatabase
2238         allows us to stop holding a pointer to the ScriptExecutionContext we're
2239         extending, which can only be a good thing.
2240
2241         The tests in storage/indexeddb should continue to pass.
2242
2243         * Modules/indexeddb/DOMWindowIndexedDatabase.cpp:
2244         (WebCore::DOMWindowIndexedDatabase::indexedDB):
2245             Drop the SecurityOrigin::canAccessDatabase check.
2246         * Modules/indexeddb/WorkerContextIndexedDatabase.cpp:
2247         (WebCore::WorkerContextIndexedDatabase::WorkerContextIndexedDatabase):
2248         (WebCore::WorkerContextIndexedDatabase::from):
2249             Drop the ScriptExecutionContext parameter from the class's
2250             constructor and callsites.
2251         (WebCore::WorkerContextIndexedDatabase::indexedDB):
2252             Drop the SecurityOrigin::canAccessDatabase check.
2253         * Modules/indexeddb/WorkerContextIndexedDatabase.h:
2254         (WorkerContextIndexedDatabase):
2255             Drop the stored pointer to ScriptExecutionContext, as we no longer
2256             need it in ::indexedDB.
2257
2258 2013-02-01  Beth Dakin  <bdakin@apple.com>
2259
2260         Speculative Windows build fix. 
2261
2262         * platform/ScrollAnimator.h:
2263         (WebCore):
2264
2265 2013-02-01  Ryosuke Niwa  <rniwa@webkit.org>
2266
2267         Smart link can erroneously move caret after an URL when typing immediately before it
2268         https://bugs.webkit.org/show_bug.cgi?id=92812
2269
2270         Reviewed by Enrica Casucci.
2271
2272         The bug was caused by smart link being triggered even when a user finished typing a word
2273         immediately before an URL. We already had a logic to avoid smart-linking an URL when the caret
2274         was after the URL but we were missing a check for when the caret is before the URL.
2275
2276         Fixed the bug by adding this check.
2277
2278         Test: editing/inserting/smart-link-when-caret-is-moved-before-URL.html
2279
2280         * editing/Editor.cpp:
2281         (WebCore::Editor::markAndReplaceFor):
2282
2283 2013-02-01  Roger Fong  <roger_fong@apple.com>
2284
2285         Unreviewed. Windows build fix. FloatSize.cpp was not included in the project.
2286
2287         * WebCore.vcproj/WebCore.vcproj:
2288
2289 2013-02-01  Julien Chaffraix  <jchaffraix@webkit.org>
2290
2291         [CSS Grid Layout] computePreferredLogicalWidths doesn't handle minmax tracks
2292         https://bugs.webkit.org/show_bug.cgi?id=108403
2293
2294         Reviewed by Ojan Vafai.
2295
2296         Test: fast/css-grid-layout/grid-preferred-logical-widths.html
2297
2298         The code before this change was only handling minmax() with 2 fixed widths.
2299         The new code was updated to remove this artificial limitation and we now
2300         support all combination of minmax().
2301
2302         * rendering/RenderGrid.cpp:
2303         (WebCore::RenderGrid::computePreferredLogicalWidths):
2304         Updated to use computePreferredTrackWidth..
2305
2306         (WebCore::RenderGrid::computePreferredTrackWidth):
2307         Added this helper function that implements the core of the preferred width
2308         computation.
2309
2310         * rendering/RenderGrid.h: Added computePreferredTrackWidth.
2311
2312 2013-02-01  Nate Chapin  <japhet@chromium.org>
2313
2314         Cached main resources report a zero identifer on 304s
2315         https://bugs.webkit.org/show_bug.cgi?id=108402
2316
2317         Reviewed by Adam Barth.
2318
2319         Test: http/tests/cache/iframe-304-crash.html
2320
2321         * loader/MainResourceLoader.cpp:
2322         (WebCore::MainResourceLoader::responseReceived): Throughout, check m_identifierForLoadWithoutResourceLoader
2323             instead of !loader() to determine whether MainResourceLoader needs to synthesize resource load callbacks.
2324         (WebCore::MainResourceLoader::dataReceived):
2325         (WebCore::MainResourceLoader::didFinishLoading):
2326
2327 2013-02-01  Nico Weber  <thakis@chromium.org>
2328
2329         [chromium] Build webkit with enable_web_intents set to 0.
2330         https://bugs.webkit.org/show_bug.cgi?id=108408
2331
2332         Reviewed by Tony Chang.
2333
2334         I'll then make chromium build fine with that, then switch
2335         enable_web_intents to 0, roll that into webkit, and then
2336         actually remove the code hidden behind this flag.
2337
2338         * bindings/v8/custom/V8IntentCustom.cpp:
2339
2340 2013-02-01  Pavel Feldman  <pfeldman@chromium.org>
2341
2342         Web Inspector: make console object state hint non-active
2343         https://bugs.webkit.org/show_bug.cgi?id=108642
2344
2345         Reviewed by Vsevolod Vlasov.
2346
2347         Otherwise it seems like an active element user could click.
2348
2349         * inspector/front-end/inspector.css:
2350         (.object-info-state-note):
2351
2352 2013-02-01  Rashmi Shyamasundar  <rashmi.s2@samsung.com>
2353
2354         Zero size gradient should paint nothing on canvas
2355         https://bugs.webkit.org/show_bug.cgi?id=102654
2356
2357         Reviewed by Dirk Schulze.
2358
2359         The functions fill(), fillText(), stroke(), strokeRect() and strokeText()
2360         should paint nothing on canvas when the canvas fillStyle/strokeStyle
2361         is set to a zero size gradient.
2362  
2363         Tests: fast/canvas/canvas-fill-zeroSizeGradient.html
2364                fast/canvas/canvas-fillRect-zeroSizeGradient.html
2365                fast/canvas/canvas-fillText-zeroSizeGradient.html
2366                fast/canvas/canvas-stroke-zeroSizeGradient.html
2367                fast/canvas/canvas-strokeRect-zeroSizeGradient.html
2368                fast/canvas/canvas-strokeText-zeroSizeGradient.html
2369
2370         * html/canvas/CanvasRenderingContext2D.cpp:
2371         (WebCore::CanvasRenderingContext2D::fill):
2372         (WebCore::CanvasRenderingContext2D::stroke):
2373         (WebCore::CanvasRenderingContext2D::strokeRect):
2374         (WebCore::CanvasRenderingContext2D::drawTextInternal):
2375
2376 2013-02-01  Jesus Sanchez-Palencia  <jesus.palencia@openbossa.org>
2377
2378         HRTFElevation segfault if a null AudioBus is returned by loadPlatformResource
2379         https://bugs.webkit.org/show_bug.cgi?id=108504
2380
2381         Reviewed by Kenneth Russell.
2382
2383         Fixed a segfault by checking if the returned AudioBus is null or not.
2384         If it is, we should early return in the same way it was being done already
2385         in HRTFElevation::calculateKernelsForAzimuthElevation();
2386
2387         No new tests, covered by existing tests.
2388
2389         * platform/audio/HRTFElevation.cpp:
2390         (WebCore::getConcatenatedImpulseResponsesForSubject):
2391
2392 2013-02-01  Beth Dakin  <bdakin@apple.com>
2393
2394         ScrollAnimatorMac should adopt contentAreaScrolledInDirection
2395         https://bugs.webkit.org/show_bug.cgi?id=108647
2396         -and corresponding-
2397         <rdar://problem/12434779>
2398
2399         Reviewed by Anders Carlsson.
2400
2401         This patch makes notifyContentAreaScrolled() and notifyPositionChanged() take a 
2402         FloatSize parameter that represents the scroll delta so that it can be passed 
2403         along to contentAreaScrolledInDirection:. 
2404
2405         Pass along the scroll delta.
2406         * platform/ScrollAnimator.cpp:
2407         (WebCore::ScrollAnimator::scroll):
2408         (WebCore::ScrollAnimator::scrollToOffsetWithoutAnimation):
2409
2410         The delta is not needed in this base-class implementation. It will only be needed 
2411         in the ScrollAnimatorMac override.
2412         (WebCore::ScrollAnimator::notifyPositionChanged):
2413         * platform/ScrollAnimator.h:
2414         (WebCore::ScrollAnimator::notifyContentAreaScrolled):
2415
2416         Pass along the delta.
2417         * platform/ScrollAnimatorNone.cpp:
2418         (WebCore::ScrollAnimatorNone::scrollToOffsetWithoutAnimation):
2419         (WebCore::ScrollAnimatorNone::animationTimerFired):
2420         * platform/ScrollableArea.cpp:
2421         (WebCore::ScrollableArea::scrollPositionChanged):
2422
2423         Add contentAreaScrolledInDirection: to the NSScrollerImpDetails.
2424         * platform/mac/NSScrollerImpDetails.h:
2425
2426         New member variable m_contentAreaScrolledTimerScrollDelta stores the current 
2427         scroll delta while we are waiting for m_sendContentAreaScrolledTimer to fire.
2428         * platform/mac/ScrollAnimatorMac.h:
2429
2430         We need this so that we can call just contentAreaScrolled if 
2431         contentAreaScrolledInDirection: is not available.
2432         * platform/mac/ScrollAnimatorMac.mm:
2433         (supportsContentAreaScrolledInDirection):
2434
2435         Pass along the delta.
2436         (WebCore::ScrollAnimatorMac::immediateScrollTo):
2437         (WebCore::ScrollAnimatorMac::notifyPositionChanged):
2438         (WebCore::ScrollAnimatorMac::mayBeginScrollGesture):
2439         (WebCore::ScrollAnimatorMac::notifyContentAreaScrolled):
2440         (WebCore::ScrollAnimatorMac::immediateScrollBy):
2441         (WebCore::ScrollAnimatorMac::sendContentAreaScrolledSoon):
2442
2443         If contentAreaScrolledInDirection: is available, call it with the delta, and then 
2444         reset our delta. Otherwise, still call contentAreaScrolled.
2445         (WebCore::ScrollAnimatorMac::sendContentAreaScrolledTimerFired):
2446
2447 2013-02-01  Pavel Feldman  <pfeldman@chromium.org>
2448
2449         Web Inspector: [file selector dialog] for mixed case queries, score uppercase letters only when assessing camelcase.
2450         https://bugs.webkit.org/show_bug.cgi?id=108639
2451
2452         Reviewed by Vsevolod Vlasov.
2453
2454         * inspector/front-end/FilteredItemSelectionDialog.js:
2455         (WebInspector.FilteredItemSelectionDialog.prototype._createScoringRegex):
2456
2457 2013-02-01  Robert Hogan  <robert@webkit.org>
2458
2459         Padding in a parent inline preceding an empty inline child should be counted towards width
2460         https://bugs.webkit.org/show_bug.cgi?id=108226
2461
2462         Reviewed by Levi Weintraub.
2463
2464         Add the border/padding/margin from an empty inline's parent inline if it is the first or last
2465         child of the inline. 
2466
2467         Tests: fast/inline/parent-inline-element-padding-contributes-width.html
2468                fast/inline/positioned-element-padding-contributes-width.html
2469
2470         * rendering/RenderBlockLineLayout.cpp:
2471         (WebCore::RenderBlock::LineBreaker::nextSegmentBreak):
2472
2473 2013-02-01  Tony Gentilcore  <tonyg@chromium.org>
2474
2475         Continue making XSSAuditor thread safe: Remove dependencies on m_parser from init()
2476         https://bugs.webkit.org/show_bug.cgi?id=108531
2477
2478         Reviewed by Adam Barth.
2479
2480         The threaded HTML parser will create and init() the XSSAuditor on the main thread, but filterToken() will be called on the background.
2481
2482         No new tests because no change in functionality.
2483
2484         * html/parser/HTMLDocumentParser.cpp:
2485         (WebCore::HTMLDocumentParser::pumpTokenizer):
2486         * html/parser/XSSAuditor.cpp:
2487         (WebCore::XSSAuditor::XSSAuditor):
2488         (WebCore::XSSAuditor::init):
2489         (WebCore::XSSAuditor::filterToken):
2490         * html/parser/XSSAuditor.h:
2491         (WebCore):
2492         (XSSAuditor):
2493
2494 2013-02-01  Brady Eidson  <beidson@apple.com>
2495
2496         Remove unnecessary parameter from DocumentLoader::scheduleArchiveLoad
2497         https://bugs.webkit.org/show_bug.cgi?id=108654
2498
2499         Reviewed by Alexey Proskuryakov.
2500
2501         No new tests (No behavior change.)
2502
2503         Remove the KURL parameter parameter from this method which, in practice,
2504         is always the same as the url of the ResourceRequest parameter.
2505
2506         * loader/DocumentLoader.cpp:
2507         (WebCore::DocumentLoader::scheduleArchiveLoad):
2508         * loader/DocumentLoader.h:
2509
2510         * loader/ResourceLoader.cpp:
2511         (WebCore::ResourceLoader::start):
2512
2513 2013-02-01  Pavel Feldman  <pfeldman@chromium.org>
2514
2515         Web Inspector: relax goto file matching again.
2516         https://bugs.webkit.org/show_bug.cgi?id=108346
2517
2518         Reviewed by Vsevolod Vlasov.
2519
2520         This change brings back behavior introduced in r116244.
2521
2522         * inspector/front-end/FilteredItemSelectionDialog.js:
2523         (WebInspector.FilteredItemSelectionDialog.prototype._createItemElement):
2524         (WebInspector.FilteredItemSelectionDialog.prototype._createSearchRegex):
2525         (WebInspector.FilteredItemSelectionDialog.prototype._createScoringRegex):
2526         (WebInspector.FilteredItemSelectionDialog.prototype._filterItems.compareFunction):
2527         (WebInspector.FilteredItemSelectionDialog.prototype._filterItems):
2528         (WebInspector.FilteredItemSelectionDialog.prototype._onMouseMove):
2529         (WebInspector.FilteredItemSelectionDialog.prototype.itemElement):
2530         (WebInspector.OpenResourceDialog):
2531         * inspector/front-end/utilities.js:
2532         (String.regexSpecialCharacters):
2533         (String.prototype.escapeForRegExp):
2534
2535 2013-02-01  Vsevolod Vlasov  <vsevik@chromium.org>
2536
2537         Web Inspector: Navigator should not create tree elements for uiSourceCodes unless neededm should populate folders on expand only.
2538         https://bugs.webkit.org/show_bug.cgi?id=108601
2539
2540         Reviewed by Pavel Feldman.
2541
2542         Tree elememnts for uiSourceCodes are not created until really needed anymore.
2543         They are now created when parent folder tree elememnts are expanded or when uiSourceCode is revealed in navigator.
2544
2545         * inspector/front-end/NavigatorView.js:
2546         (WebInspector.NavigatorView):
2547         (WebInspector.NavigatorView.prototype.addUISourceCode):
2548         (WebInspector.NavigatorView.prototype._getOrCreateScriptTreeElement):
2549         (WebInspector.NavigatorView.prototype._getScriptTreeElement):
2550         (WebInspector.NavigatorView.prototype._createScriptTreeElement):
2551         (WebInspector.NavigatorView.prototype._removeScriptTreeElement):
2552         (WebInspector.NavigatorView.prototype._updateScriptTitle):
2553         (WebInspector.NavigatorView.prototype.isScriptSourceAdded):
2554         (WebInspector.NavigatorView.prototype.revealUISourceCode):
2555         (WebInspector.NavigatorView.prototype.removeUISourceCode):
2556         (WebInspector.NavigatorView.prototype.reset):
2557         (WebInspector.NavigatorView.prototype.createFolderTreeElement):
2558         (WebInspector.NavigatorView.prototype._populateFolderTreeElement):
2559         (WebInspector.NavigatorView.prototype._addScriptTreeElement):
2560         (WebInspector.NavigatorView.prototype._adoptUISourceCode):
2561         (WebInspector.NavigatorFolderTreeElement):
2562         (WebInspector.NavigatorFolderTreeElement.prototype.onpopulate):
2563
2564 2013-02-01  Vsevolod Vlasov  <vsevik@chromium.org>
2565
2566         Web Inspector: TabbedEditorContainer.History performance optimization.
2567         https://bugs.webkit.org/show_bug.cgi?id=108581
2568
2569         Introduced history items indexing by url.
2570
2571         Reviewed by Pavel Feldman.
2572
2573         Covered by existing test.
2574
2575         * inspector/front-end/TabbedEditorContainer.js:
2576         (WebInspector.TabbedEditorContainer.History):
2577         (WebInspector.TabbedEditorContainer.History.prototype.index):
2578         (WebInspector.TabbedEditorContainer.History.prototype._rebuildItemIndex):
2579         (WebInspector.TabbedEditorContainer.History.prototype.update):
2580         (WebInspector.TabbedEditorContainer.History.prototype.remove):
2581
2582 2013-02-01  Geoffrey Garen  <ggaren@apple.com>
2583
2584         Added TriState to WTF and started using it in one place
2585         https://bugs.webkit.org/show_bug.cgi?id=108628
2586
2587         Reviewed by Beth Dakin.
2588
2589         * editing/EditingStyle.h:
2590         (WebCore): Moved TriState to WTF so it can be used in more places.
2591
2592 2013-02-01  Pavel Feldman  <pfeldman@chromium.org>
2593
2594         Web Inspector: Follow up to r141260: fixing renamed style.
2595         Not reviewed.
2596
2597         * inspector/front-end/FilteredItemSelectionDialog.js:
2598         (WebInspector.FilteredItemSelectionDialog.prototype._createItemElement):
2599         (WebInspector.FilteredItemSelectionDialog.prototype._onClick):
2600         (WebInspector.FilteredItemSelectionDialog.prototype._onMouseMove):
2601
2602 2013-02-01  Alexis Menard  <alexis@webkit.org>
2603
2604         Enable unprefixed CSS transitions by default.
2605         https://bugs.webkit.org/show_bug.cgi?id=108216
2606
2607         Reviewed by Dean Jackson.
2608
2609         Rename the flag CSS_TRANSFORMS_ANIMATIONS_TRANSITIONS_UNPREFIXED
2610         to CSS_TRANSFORMS_ANIMATIONS_UNPREFIXED which will be used later to 
2611         guard the unprefixing work for CSS Transforms and animations. Remove the
2612         various #ifdefs and conditional generations.
2613
2614         * Configurations/FeatureDefines.xcconfig:
2615         * DerivedSources.cpp:
2616         * GNUmakefile.features.am.in:
2617         * css/CSSPropertyNames.in:
2618         * dom/EventNames.in:
2619         * dom/TransitionEvent.cpp:
2620         * dom/TransitionEvent.h:
2621         * dom/TransitionEvent.idl:
2622         * page/DOMWindow.idl:
2623         * page/animation/AnimationController.cpp:
2624         (WebCore::AnimationControllerPrivate::fireEventsAndUpdateStyle):
2625
2626 2013-02-01  Kentaro Hara  <haraken@chromium.org>
2627
2628         Unreviewed, rolling out r141548.
2629         http://trac.webkit.org/changeset/141548
2630         https://bugs.webkit.org/show_bug.cgi?id=108579
2631
2632         userscript-plugin-document.html is flaky
2633
2634         * bindings/v8/DOMDataStore.h:
2635         (WebCore::DOMDataStore::setWrapperInObject):
2636         * bindings/v8/V8GCController.cpp:
2637         (WebCore):
2638         (WebCore::gcTree):
2639         (WebCore::V8GCController::didCreateWrapperForNode):
2640         (WebCore::V8GCController::gcPrologue):
2641         (WebCore::V8GCController::minorGCPrologue):
2642         (WebCore::V8GCController::majorGCPrologue):
2643         * bindings/v8/V8GCController.h:
2644         (V8GCController):
2645
2646 2013-02-01  Andrey Adaikin  <aandrey@chromium.org>
2647
2648         Web Inspector: fix jscompiler warnings
2649         https://bugs.webkit.org/show_bug.cgi?id=108604
2650
2651         Reviewed by Pavel Feldman.
2652
2653         * inspector/front-end/ConsoleView.js:
2654         (WebInspector.ConsoleGroup.prototype.addMessage):
2655         * inspector/front-end/ContextMenu.js:
2656         (WebInspector.ContextSubMenuItem):
2657         * inspector/front-end/ImageView.js:
2658         (WebInspector.ImageView.prototype._copyImageURL):
2659         (WebInspector.ImageView.prototype._openInNewTab):
2660         * inspector/front-end/NetworkPanel.js:
2661         (WebInspector.NetworkLogView.prototype._clearBrowserCache):
2662         (WebInspector.NetworkLogView.prototype._clearBrowserCookies):
2663         * inspector/front-end/ResourcesPanel.js:
2664         (WebInspector.IDBDatabaseTreeElement.prototype._refreshIndexedDB):
2665         * inspector/front-end/ScriptsNavigator.js:
2666         (WebInspector.SnippetsNavigatorView.prototype._handleEvaluateSnippet):
2667         (WebInspector.SnippetsNavigatorView.prototype._handleRenameSnippet):
2668         (WebInspector.SnippetsNavigatorView.prototype._handleRemoveSnippet):
2669         (WebInspector.SnippetsNavigatorView.prototype._handleCreateSnippet):
2670         * inspector/front-end/Toolbar.js:
2671         (WebInspector.Toolbar.prototype._isDockedToBottom):
2672
2673 2013-02-01  Jae Hyun Park  <jae.park@company100.net>
2674
2675
2676         Coordinated Graphics : Sort Target.pri and class declarations in alphabetical order.
2677         https://bugs.webkit.org/show_bug.cgi?id=108590
2678
2679         Reviewed by Noam Rosenthal.
2680
2681         Sort CoordinatedGraphics files in Target.pri in alphabetical order.
2682
2683         No new tests. No change in behavior.
2684
2685         * Target.pri:
2686
2687 2013-02-01  Ilya Tikhonovsky  <loislo@chromium.org>
2688
2689         Web Inspector: Native Memory Instrumentation: provide edge names to class members in all WebCore instrumented classes.
2690         https://bugs.webkit.org/show_bug.cgi?id=107369
2691
2692         Reviewed by Yury Semikhatsky.
2693
2694         It is almost mechanical change generated by a script.
2695         Late I'll implement name to edge name consistency check in clang plugin.
2696
2697         * Modules/webaudio/AudioContext.cpp:
2698         (WebCore::AudioContext::reportMemoryUsage):
2699         * Modules/webaudio/AudioNode.cpp:
2700         (WebCore::AudioNode::reportMemoryUsage):
2701         * bindings/js/ScriptWrappable.h:
2702         (WebCore::ScriptWrappable::reportMemoryUsage):
2703         * bindings/v8/DOMDataStore.cpp:
2704         (WebCore::DOMDataStore::reportMemoryUsage):
2705         * bindings/v8/DOMWrapperMap.h:
2706         (WebCore::DOMWrapperMap::reportMemoryUsage):
2707         * bindings/v8/V8PerIsolateData.cpp:
2708         (WebCore::V8PerIsolateData::reportMemoryUsage):
2709         * bindings/v8/V8ValueCache.cpp:
2710         (WebCore::StringCache::reportMemoryUsage):
2711         * css/CSSBorderImageSliceValue.cpp:
2712         (WebCore::CSSBorderImageSliceValue::reportDescendantMemoryUsage):
2713         * css/CSSCalculationValue.cpp:
2714         * css/CSSCanvasValue.cpp:
2715         (WebCore::CSSCanvasValue::reportDescendantMemoryUsage):
2716         * css/CSSCharsetRule.cpp:
2717         (WebCore::CSSCharsetRule::reportMemoryUsage):
2718         * css/CSSComputedStyleDeclaration.cpp:
2719         (WebCore::CSSComputedStyleDeclaration::reportMemoryUsage):
2720         * css/CSSCrossfadeValue.cpp:
2721         (WebCore::CSSCrossfadeValue::reportDescendantMemoryUsage):
2722         * css/CSSCursorImageValue.cpp:
2723         (WebCore::CSSCursorImageValue::reportDescendantMemoryUsage):
2724         * css/CSSFontFaceRule.cpp:
2725         (WebCore::CSSFontFaceRule::reportMemoryUsage):
2726         * css/CSSFontFaceSrcValue.cpp:
2727         (WebCore::CSSFontFaceSrcValue::reportDescendantMemoryUsage):
2728         * css/CSSFunctionValue.cpp:
2729         (WebCore::CSSFunctionValue::reportDescendantMemoryUsage):
2730         * css/CSSGradientValue.cpp:
2731         (WebCore::CSSGradientColorStop::reportMemoryUsage):
2732         (WebCore::CSSGradientValue::reportBaseClassMemoryUsage):
2733         (WebCore::CSSLinearGradientValue::reportDescendantMemoryUsage):
2734         (WebCore::CSSRadialGradientValue::reportDescendantMemoryUsage):
2735         * css/CSSGroupingRule.cpp:
2736         (WebCore::CSSGroupingRule::reportMemoryUsage):
2737         * css/CSSImageGeneratorValue.cpp:
2738         (WebCore::CSSImageGeneratorValue::reportBaseClassMemoryUsage):
2739         * css/CSSImageSetValue.cpp:
2740         (WebCore::CSSImageSetValue::reportDescendantMemoryUsage):
2741         (WebCore::CSSImageSetValue::ImageWithScale::reportMemoryUsage):
2742         * css/CSSImageValue.cpp:
2743         (WebCore::CSSImageValue::reportDescendantMemoryUsage):
2744         * css/CSSImportRule.cpp:
2745         (WebCore::CSSImportRule::reportMemoryUsage):
2746         * css/CSSMediaRule.cpp:
2747         (WebCore::CSSMediaRule::reportMemoryUsage):
2748         * css/CSSPageRule.cpp:
2749         (WebCore::CSSPageRule::reportMemoryUsage):
2750         * css/CSSPrimitiveValue.cpp:
2751         (WebCore::CSSPrimitiveValue::reportDescendantMemoryUsage):
2752         * css/CSSProperty.cpp:
2753         (WebCore::CSSProperty::reportMemoryUsage):
2754         * css/CSSReflectValue.cpp:
2755         (WebCore::CSSReflectValue::reportDescendantMemoryUsage):
2756         * css/CSSRule.cpp:
2757         (WebCore::CSSRule::reportMemoryUsage):
2758         * css/CSSRuleList.cpp:
2759         (WebCore::StaticCSSRuleList::reportMemoryUsage):
2760         * css/CSSRuleList.h:
2761         * css/CSSSelectorList.cpp:
2762         (WebCore::CSSSelectorList::reportMemoryUsage):
2763         * css/CSSStyleRule.cpp:
2764         (WebCore::CSSStyleRule::reportMemoryUsage):
2765         * css/CSSStyleSheet.cpp:
2766         (WebCore::CSSStyleSheet::reportMemoryUsage):
2767         * css/CSSValue.cpp:
2768         (WebCore::TextCloneCSSValue::reportDescendantMemoryUsage):
2769         * css/CSSValueList.cpp:
2770         (WebCore::CSSValueList::reportDescendantMemoryUsage):
2771         * css/CSSVariableValue.h:
2772         (WebCore::CSSVariableValue::reportDescendantMemoryUsage):
2773         * css/FontFeatureValue.cpp:
2774         (WebCore::FontFeatureValue::reportDescendantMemoryUsage):
2775         * css/FontValue.cpp:
2776         (WebCore::FontValue::reportDescendantMemoryUsage):
2777         * css/MediaList.cpp:
2778         (WebCore::MediaQuerySet::reportMemoryUsage):
2779         (WebCore::MediaList::reportMemoryUsage):
2780         * css/MediaQuery.cpp:
2781         (WebCore::MediaQuery::reportMemoryUsage):
2782         * css/MediaQueryExp.cpp:
2783         (WebCore::MediaQueryExp::reportMemoryUsage):
2784         * css/PropertySetCSSStyleDeclaration.cpp:
2785         (WebCore::PropertySetCSSStyleDeclaration::reportMemoryUsage):
2786         (WebCore::StyleRuleCSSStyleDeclaration::reportMemoryUsage):
2787         (WebCore::InlineCSSStyleDeclaration::reportMemoryUsage):
2788         * css/RuleFeature.cpp:
2789         (WebCore::RuleFeatureSet::reportMemoryUsage):
2790         * css/RuleSet.cpp:
2791         (WebCore::RuleData::reportMemoryUsage):
2792         (WebCore::RuleSet::reportMemoryUsage):
2793         (WebCore::RuleSet::RuleSetSelectorPair::reportMemoryUsage):
2794         * css/ShadowValue.cpp:
2795         (WebCore::ShadowValue::reportDescendantMemoryUsage):
2796         * css/StylePropertySet.cpp:
2797         (WebCore::StylePropertySet::reportMemoryUsage):
2798         * css/StyleResolver.cpp:
2799         (WebCore::StyleResolver::MatchedProperties::reportMemoryUsage):
2800         (WebCore::StyleResolver::MatchedPropertiesCacheItem::reportMemoryUsage):
2801         (WebCore::MediaQueryResult::reportMemoryUsage):
2802         (WebCore::StyleResolver::reportMemoryUsage):
2803         * css/StyleRule.cpp:
2804         (WebCore::StyleRule::reportDescendantMemoryUsage):
2805         (WebCore::StyleRulePage::reportDescendantMemoryUsage):
2806         (WebCore::StyleRuleFontFace::reportDescendantMemoryUsage):
2807         (WebCore::StyleRuleGroup::reportDescendantMemoryUsage):
2808         (WebCore::StyleRuleMedia::reportDescendantMemoryUsage):
2809         (WebCore::StyleRuleRegion::reportDescendantMemoryUsage):
2810         (WebCore::StyleRuleViewport::reportDescendantMemoryUsage):
2811         * css/StyleRuleImport.cpp:
2812         (WebCore::StyleRuleImport::reportDescendantMemoryUsage):
2813         * css/StyleScopeResolver.cpp:
2814         (WebCore::StyleScopeResolver::reportMemoryUsage):
2815         * css/StyleSheetContents.cpp:
2816         (WebCore::StyleSheetContents::reportMemoryUsage):
2817         * css/WebKitCSSKeyframeRule.cpp:
2818         (WebCore::StyleKeyframe::reportMemoryUsage):
2819         (WebCore::WebKitCSSKeyframeRule::reportMemoryUsage):
2820         * css/WebKitCSSKeyframesRule.cpp:
2821         (WebCore::StyleRuleKeyframes::reportDescendantMemoryUsage):
2822         (WebCore::WebKitCSSKeyframesRule::reportMemoryUsage):
2823         * css/WebKitCSSSVGDocumentValue.cpp:
2824         (WebCore::WebKitCSSSVGDocumentValue::reportDescendantMemoryUsage):
2825         * css/WebKitCSSShaderValue.cpp:
2826         (WebCore::WebKitCSSShaderValue::reportDescendantMemoryUsage):
2827         * css/WebKitCSSViewportRule.cpp:
2828         (WebCore::WebKitCSSViewportRule::reportMemoryUsage):
2829         * dom/Attribute.h:
2830         (WebCore::Attribute::reportMemoryUsage):
2831         * dom/CharacterData.cpp:
2832         (WebCore::CharacterData::reportMemoryUsage):
2833         * dom/ContainerNode.cpp:
2834         (WebCore::ContainerNode::reportMemoryUsage):
2835         * dom/ContainerNode.h:
2836         (ContainerNode):
2837         * dom/Document.cpp:
2838         (WebCore::Document::reportMemoryUsage):
2839         * dom/DocumentEventQueue.cpp:
2840         (WebCore::DocumentEventQueue::reportMemoryUsage):
2841         * dom/DocumentOrderedMap.cpp:
2842         (WebCore::DocumentOrderedMap::reportMemoryUsage):
2843         * dom/DocumentStyleSheetCollection.cpp:
2844         (WebCore::DocumentStyleSheetCollection::reportMemoryUsage):
2845         * dom/Element.cpp:
2846         (WebCore::Element::reportMemoryUsage):
2847         * dom/ElementAttributeData.cpp:
2848         (WebCore::ElementAttributeData::reportMemoryUsage):
2849         * dom/ElementRareData.cpp:
2850         (WebCore::ElementRareData::reportMemoryUsage):
2851         * dom/ElementShadow.cpp:
2852         (WebCore::ElementShadow::reportMemoryUsage):
2853         * dom/Event.cpp:
2854         (WebCore::Event::reportMemoryUsage):
2855         * dom/LiveNodeList.cpp:
2856         (WebCore::LiveNodeListBase::reportMemoryUsage):
2857         * dom/Node.cpp:
2858         (WebCore::Node::reportMemoryUsage):
2859         * dom/NodeRareData.cpp:
2860         (WebCore::NodeListsNodeData::reportMemoryUsage):
2861         (WebCore::NodeRareData::reportMemoryUsage):
2862         * dom/QualifiedName.cpp:
2863         (WebCore::QualifiedName::reportMemoryUsage):
2864         (WebCore::QualifiedName::QualifiedNameImpl::reportMemoryUsage):
2865         * dom/ScriptExecutionContext.cpp:
2866         (WebCore::ScriptExecutionContext::reportMemoryUsage):
2867         * dom/SecurityContext.cpp:
2868         (WebCore::SecurityContext::reportMemoryUsage):
2869         * dom/ShadowRoot.cpp:
2870         (WebCore::ShadowRoot::reportMemoryUsage):
2871         * dom/TreeScope.cpp:
2872         (WebCore::TreeScope::reportMemoryUsage):
2873         * html/HTMLCanvasElement.cpp:
2874         (WebCore::HTMLCanvasElement::reportMemoryUsage):
2875         * html/HTMLFormControlElement.cpp:
2876         (WebCore::HTMLFormControlElement::reportMemoryUsage):
2877         * html/HTMLImageElement.cpp:
2878         (WebCore::HTMLImageElement::reportMemoryUsage):
2879         * html/HTMLInputElement.cpp:
2880         (WebCore::HTMLInputElement::reportMemoryUsage):
2881         * html/HTMLMediaElement.cpp:
2882         (WebCore::HTMLMediaElement::reportMemoryUsage):
2883         * html/HTMLTextFormControlElement.cpp:
2884         (WebCore::HTMLTextFormControlElement::reportMemoryUsage):
2885         * inspector/HeapGraphSerializer.cpp:
2886         (WebCore::HeapGraphSerializer::HeapGraphSerializer):
2887         (WebCore::HeapGraphSerializer::reportNode):
2888         (WebCore::HeapGraphSerializer::reportMemoryUsage):
2889         * inspector/HeapGraphSerializer.h:
2890         (HeapGraphSerializer):
2891         * inspector/InspectorBaseAgent.cpp:
2892         (WebCore::InspectorBaseAgentInterface::reportMemoryUsage):
2893         * inspector/InspectorController.cpp:
2894         (WebCore::InspectorController::reportMemoryUsage):
2895         * inspector/InspectorDOMStorageAgent.cpp:
2896         (WebCore::InspectorDOMStorageAgent::reportMemoryUsage):
2897         * inspector/InspectorDOMStorageResource.cpp:
2898         (WebCore::InspectorDOMStorageResource::reportMemoryUsage):
2899         * inspector/InspectorDebuggerAgent.cpp:
2900         (WebCore::InspectorDebuggerAgent::reportMemoryUsage):
2901         (WebCore::ScriptDebugListener::Script::reportMemoryUsage):
2902         * inspector/InspectorMemoryAgent.cpp:
2903         (WebCore::InspectorMemoryAgent::reportMemoryUsage):
2904         * inspector/InspectorOverlay.cpp:
2905         (WebCore::InspectorOverlay::reportMemoryUsage):
2906         * inspector/InspectorProfilerAgent.cpp:
2907         (WebCore::InspectorProfilerAgent::reportMemoryUsage):
2908         * inspector/InspectorResourceAgent.cpp:
2909         (WebCore::InspectorResourceAgent::reportMemoryUsage):
2910         * inspector/MemoryInstrumentationImpl.cpp:
2911         (WebCore::MemoryInstrumentationClientImpl::reportMemoryUsage):
2912         (WebCore::MemoryInstrumentationImpl::reportMemoryUsage):
2913         * inspector/NetworkResourcesData.cpp:
2914         (WebCore::XHRReplayData::reportMemoryUsage):
2915         (WebCore::NetworkResourcesData::ResourceData::reportMemoryUsage):
2916         (WebCore::NetworkResourcesData::reportMemoryUsage):
2917         * loader/CachedMetadata.cpp:
2918         (WebCore::CachedMetadata::reportMemoryUsage):
2919         * loader/DocumentLoader.cpp:
2920         (WebCore::DocumentLoader::reportMemoryUsage):
2921         * loader/FrameLoader.cpp:
2922         (WebCore::FrameLoader::reportMemoryUsage):
2923         * loader/MainResourceLoader.cpp:
2924         (WebCore::MainResourceLoader::reportMemoryUsage):
2925         * loader/Prerenderer.cpp:
2926         (WebCore::Prerenderer::reportMemoryUsage):
2927         * loader/ResourceBuffer.cpp:
2928         (WebCore::ResourceBuffer::reportMemoryUsage):
2929         * loader/ResourceLoader.cpp:
2930         (WebCore::ResourceLoader::reportMemoryUsage):
2931         * loader/SubresourceLoader.cpp:
2932         (WebCore::SubresourceLoader::reportMemoryUsage):
2933         * loader/SubstituteData.cpp:
2934         (WebCore::SubstituteData::reportMemoryUsage):
2935         * loader/cache/CachedCSSStyleSheet.cpp:
2936         (WebCore::CachedCSSStyleSheet::reportMemoryUsage):
2937         * loader/cache/CachedFont.cpp:
2938         (WebCore::CachedFont::reportMemoryUsage):
2939         * loader/cache/CachedImage.cpp:
2940         (WebCore::CachedImage::reportMemoryUsage):
2941         * loader/cache/CachedResource.cpp:
2942         (WebCore::CachedResource::reportMemoryUsage):
2943         * loader/cache/CachedResourceHandle.cpp:
2944         (WebCore::CachedResourceHandleBase::reportMemoryUsage):
2945         * loader/cache/CachedResourceLoader.cpp:
2946         (WebCore::CachedResourceLoader::reportMemoryUsage):
2947         * loader/cache/CachedSVGDocument.cpp:
2948         (WebCore::CachedSVGDocument::reportMemoryUsage):
2949         * loader/cache/CachedScript.cpp:
2950         (WebCore::CachedScript::reportMemoryUsage):
2951         * loader/cache/CachedShader.cpp:
2952         (WebCore::CachedShader::reportMemoryUsage):
2953         * loader/cache/CachedXSLStyleSheet.cpp:
2954         (WebCore::CachedXSLStyleSheet::reportMemoryUsage):
2955         * loader/cache/MemoryCache.cpp:
2956         (WebCore::MemoryCache::reportMemoryUsage):
2957         * page/DOMTimer.cpp:
2958         (WebCore::DOMTimer::reportMemoryUsage):
2959         * page/Frame.cpp:
2960         (WebCore::Frame::reportMemoryUsage):
2961         * page/Page.cpp:
2962         (WebCore::Page::reportMemoryUsage):
2963         * platform/KURL.cpp:
2964         (WebCore::KURL::reportMemoryUsage):
2965         * platform/KURLGoogle.cpp:
2966         (WebCore::KURLGooglePrivate::reportMemoryUsage):
2967         * platform/KURLWTFURLImpl.h:
2968         (WebCore::KURLWTFURLImpl::reportMemoryUsage):
2969         * platform/ScrollableArea.cpp:
2970         (WebCore::ScrollableArea::reportMemoryUsage):
2971         * platform/SharedBuffer.cpp:
2972         (WebCore::SharedBuffer::reportMemoryUsage):
2973         * platform/audio/AudioArray.h:
2974         (WebCore::AudioArray::reportMemoryUsage):
2975         * platform/audio/FFTFrame.cpp:
2976         (WebCore::FFTFrame::reportMemoryUsage):
2977         * platform/audio/HRTFDatabase.cpp:
2978         (WebCore::HRTFDatabase::reportMemoryUsage):
2979         * platform/audio/HRTFDatabaseLoader.cpp:
2980         (WebCore::HRTFDatabaseLoader::reportMemoryUsage):
2981         * platform/audio/HRTFElevation.cpp:
2982         (WebCore::HRTFElevation::reportMemoryUsage):
2983         * platform/audio/HRTFKernel.cpp:
2984         (WebCore::HRTFKernel::reportMemoryUsage):
2985         * platform/audio/ffmpeg/FFTFrameFFMPEG.cpp:
2986         (reportMemoryUsage):
2987         * platform/graphics/BitmapImage.cpp:
2988         (WebCore::BitmapImage::reportMemoryUsage):
2989         (WebCore::FrameData::reportMemoryUsage):
2990         * platform/graphics/CrossfadeGeneratedImage.cpp:
2991         (WebCore::CrossfadeGeneratedImage::reportMemoryUsage):
2992         * platform/graphics/GeneratorGeneratedImage.cpp:
2993         (WebCore::GeneratorGeneratedImage::reportMemoryUsage):
2994         * platform/graphics/GraphicsLayer.cpp:
2995         (WebCore::GraphicsLayer::reportMemoryUsage):
2996         * platform/graphics/ImageBuffer.cpp:
2997         (WebCore::ImageBuffer::reportMemoryUsage):
2998         * platform/graphics/ImageSource.cpp:
2999         (WebCore::ImageSource::reportMemoryUsage):
3000         * platform/graphics/chromium/GraphicsLayerChromium.cpp:
3001         (WebCore::GraphicsLayerChromium::reportMemoryUsage):
3002         * platform/graphics/skia/ImageBufferSkia.cpp:
3003         (WebCore::ImageBufferData::reportMemoryUsage):
3004         * platform/graphics/skia/MemoryInstrumentationSkia.cpp:
3005         (reportMemoryUsage):
3006         * platform/graphics/skia/NativeImageSkia.cpp:
3007         (WebCore::NativeImageSkia::reportMemoryUsage):
3008         * platform/image-decoders/ImageDecoder.cpp:
3009         (WebCore::ImageFrame::reportMemoryUsage):
3010         (WebCore):
3011         (WebCore::ImageDecoder::reportMemoryUsage):
3012         * platform/image-decoders/skia/ImageDecoderSkia.cpp:
3013         (WebCore::ImageFrame::reportMemoryUsage):
3014         * platform/network/FormData.cpp:
3015         (WebCore::FormData::reportMemoryUsage):
3016         (WebCore::FormDataElement::reportMemoryUsage):
3017         * platform/network/ResourceRequestBase.cpp:
3018         (WebCore::ResourceRequestBase::reportMemoryUsageBase):
3019         * platform/network/ResourceResponseBase.cpp:
3020         (WebCore::ResourceResponseBase::reportMemoryUsage):
3021         * platform/network/chromium/ResourceRequest.cpp:
3022         (WebCore::ResourceRequest::reportMemoryUsage):
3023         * rendering/InlineBox.cpp:
3024         (WebCore::InlineBox::reportMemoryUsage):
3025         * rendering/InlineFlowBox.cpp:
3026         (WebCore::InlineFlowBox::reportMemoryUsage):
3027         * rendering/InlineTextBox.cpp:
3028         (WebCore::InlineTextBox::reportMemoryUsage):
3029         * rendering/RenderBlock.cpp:
3030         (WebCore::RenderBlock::reportMemoryUsage):
3031         * rendering/RenderBox.cpp:
3032         (WebCore::RenderBox::reportMemoryUsage):
3033         * rendering/RenderFrameSet.cpp:
3034         (WebCore::RenderFrameSet::reportMemoryUsage):
3035         (WebCore::RenderFrameSet::GridAxis::reportMemoryUsage):
3036         * rendering/RenderInline.cpp:
3037         (WebCore::RenderInline::reportMemoryUsage):
3038         * rendering/RenderLayer.cpp:
3039         (WebCore::RenderLayer::reportMemoryUsage):
3040         * rendering/RenderLayerBacking.cpp:
3041         (WebCore::RenderLayerBacking::reportMemoryUsage):
3042         * rendering/RenderLayerCompositor.cpp:
3043         (WebCore::RenderLayerCompositor::reportMemoryUsage):
3044         * rendering/RenderListMarker.cpp:
3045         (WebCore::RenderListMarker::reportMemoryUsage):
3046         * rendering/RenderObject.cpp:
3047         (WebCore::RenderObject::reportMemoryUsage):
3048         * rendering/RenderTableCol.cpp:
3049         (WebCore::RenderTableCol::reportMemoryUsage):
3050         * rendering/RenderTableRow.cpp:
3051         (WebCore::RenderTableRow::reportMemoryUsage):
3052         * rendering/RenderTableSection.cpp:
3053         (WebCore::RenderTableSection::reportMemoryUsage):
3054         (WebCore::RenderTableSection::RowStruct::reportMemoryUsage):
3055         (WebCore::RenderTableSection::CellStruct::reportMemoryUsage):
3056         * rendering/RenderText.cpp:
3057         (WebCore::RenderText::reportMemoryUsage):
3058         * rendering/RenderView.cpp:
3059         (WebCore::RenderView::reportMemoryUsage):
3060         * rendering/style/DataRef.h:
3061         (WebCore::DataRef::reportMemoryUsage):
3062         * rendering/style/RenderStyle.cpp:
3063         (WebCore::RenderStyle::reportMemoryUsage):
3064         * rendering/style/StyleRareInheritedData.cpp:
3065         (WebCore::StyleRareInheritedData::reportMemoryUsage):
3066         * rendering/style/StyleRareNonInheritedData.cpp:
3067         (WebCore::StyleRareNonInheritedData::reportMemoryUsage):
3068         * svg/SVGPaint.cpp:
3069         (WebCore::SVGPaint::reportDescendantMemoryUsage):
3070         * svg/graphics/SVGImage.cpp:
3071         (WebCore::SVGImage::reportMemoryUsage):
3072         * xml/XMLHttpRequest.cpp:
3073         (WebCore::XMLHttpRequest::reportMemoryUsage):
3074
3075 2013-02-01  Philippe Normand  <pnormand@igalia.com>
3076
3077         [GTK][GStreamer] FullscreenVideoControllerGtk implementation
3078         https://bugs.webkit.org/show_bug.cgi?id=107398
3079
3080         Reviewed by Gustavo Noronha Silva.
3081
3082         NATIVE_FULLSCREEN_VIDEO support for the GTK port. The previous
3083         FullscreenVideoController implementation was refactored as a
3084         sub-class of FullscreenVideoControllerGStreamer and hooked in the
3085         MediaPlayerPrivateGStreamer backend.
3086
3087         * GNUmakefile.list.am:
3088         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
3089         (WebCore::MediaPlayerPrivateGStreamer::~MediaPlayerPrivateGStreamer):
3090         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h:
3091         * platform/graphics/gtk/FullscreenVideoControllerGtk.cpp: Renamed from Source/WebKit/gtk/WebCoreSupport/FullscreenVideoController.cpp.
3092         * platform/graphics/gtk/FullscreenVideoControllerGtk.h: Renamed from Source/WebKit/gtk/WebCoreSupport/FullscreenVideoController.h.
3093
3094 2013-02-01  Andrey Lushnikov  <lushnikov@chromium.org>
3095
3096         Web Inspector: fix cursor location in Source Frame
3097         https://bugs.webkit.org/show_bug.cgi?id=108592
3098
3099         Reviewed by Pavel Feldman.
3100
3101         Normalize range before computing amount of lines in
3102         _updateSourcePosition.
3103
3104         No new tests.
3105
3106         * inspector/front-end/SourceFrame.js:
3107         (WebInspector.SourceFrame.prototype._updateSourcePosition): Normalize text range.
3108         * inspector/front-end/inspector.css: Slightly bigger left padding for the text.
3109         (.source-frame-position):
3110
3111 2013-02-01  Kentaro Hara  <haraken@chromium.org>
3112
3113         Unreviewed build fix after r141553.
3114
3115         * bindings/scripts/CodeGeneratorV8.pm:
3116         (GenerateImplementation):
3117         * bindings/scripts/test/V8/V8Float64Array.cpp:
3118         (WebCore::V8Float64Array::HasInstance):
3119         * bindings/scripts/test/V8/V8TestActiveDOMObject.cpp:
3120         (WebCore::V8TestActiveDOMObject::HasInstance):
3121         * bindings/scripts/test/V8/V8TestCustomNamedGetter.cpp:
3122         (WebCore::V8TestCustomNamedGetter::HasInstance):
3123         * bindings/scripts/test/V8/V8TestEventConstructor.cpp:
3124         (WebCore::V8TestEventConstructor::HasInstance):
3125         * bindings/scripts/test/V8/V8TestEventTarget.cpp:
3126         (WebCore::V8TestEventTarget::HasInstance):
3127         * bindings/scripts/test/V8/V8TestException.cpp:
3128         (WebCore::V8TestException::HasInstance):
3129         * bindings/scripts/test/V8/V8TestInterface.cpp:
3130         (WebCore::V8TestInterface::HasInstance):
3131         * bindings/scripts/test/V8/V8TestMediaQueryListListener.cpp:
3132         (WebCore::V8TestMediaQueryListListener::HasInstance):
3133         * bindings/scripts/test/V8/V8TestNamedConstructor.cpp:
3134         (WebCore::V8TestNamedConstructor::HasInstance):
3135         * bindings/scripts/test/V8/V8TestNode.cpp:
3136         (WebCore::V8TestNode::HasInstance):
3137         * bindings/scripts/test/V8/V8TestObj.cpp:
3138         (WebCore::V8TestObj::HasInstance):
3139         * bindings/scripts/test/V8/V8TestOverloadedConstructors.cpp:
3140         (WebCore::V8TestOverloadedConstructors::HasInstance):
3141         * bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.cpp:
3142         (WebCore::V8TestSerializedScriptValueInterface::HasInstance):
3143
3144 2013-02-01  Vsevolod Vlasov  <vsevik@chromium.org>
3145
3146         Web Inspector: Sources panel navigator reveal and expand fixes.
3147         https://bugs.webkit.org/show_bug.cgi?id=108584
3148
3149         Reviewed by Pavel Feldman.
3150
3151         Navigator folders are not expanded by default anymore.
3152         Made domain folder expanded for inspected page main frame domain.
3153         UISourceCodes are now added to navigator before editor container
3154         so that they could be revealed if editor container decides to show them.
3155
3156         * inspector/front-end/NavigatorView.js:
3157         (WebInspector.BaseNavigatorTreeElement.prototype.onattach):
3158         (WebInspector.NavigatorFolderTreeElement.prototype.onattach):
3159         * inspector/front-end/ScriptsPanel.js:
3160         (WebInspector.ScriptsPanel.prototype._addUISourceCode):
3161
3162 2013-02-01  Andrey Adaikin  <aandrey@chromium.org>
3163
3164         Web Inspector: [Canvas] drop trace log in the backend when deleting profile in frontend
3165         https://bugs.webkit.org/show_bug.cgi?id=108591
3166
3167         Reviewed by Pavel Feldman.
3168
3169         Send a dropTraceLog command to the backend when deleting a profile header from the sidebar.
3170         Before we were sending the command only upon deleting an existing view of a profile, so we  would not
3171         sent the command if the view was not created or if a profile header was removed via context menu (the ondelete() method).
3172         Drive-by: fixed an odd formatting of property functions.
3173
3174         * inspector/front-end/CanvasProfileView.js:
3175         (WebInspector.CanvasProfileView.prototype.dispose):
3176         (WebInspector.CanvasProfileHeader.prototype.reset):
3177         * inspector/front-end/ProfilesPanel.js:
3178         (WebInspector.ProfileHeader.prototype.reset):
3179         (WebInspector.ProfileHeader.prototype.load):
3180         (WebInspector.ProfileHeader.prototype.canSaveToFile):
3181         (WebInspector.ProfileHeader.prototype.saveToFile):
3182         (WebInspector.ProfileHeader.prototype.loadFromFile):
3183         (WebInspector.ProfileHeader.prototype.fromFile):
3184         (WebInspector.ProfilesPanel):
3185         (WebInspector.ProfilesPanel.prototype._reset):
3186         (WebInspector.ProfilesPanel.prototype._removeProfileHeader):
3187
3188 2013-02-01  Chris Fleizach  <cfleizach@apple.com>
3189
3190         AX: when aria-activedescendant is used with a ComboBox role, focus should not be changed
3191         https://bugs.webkit.org/show_bug.cgi?id=108596
3192
3193         Reviewed by Ryosuke Niwa.
3194
3195         Normally, an aria-activedescendant change causes a focus change to be triggered.
3196         However, when used in conjunction with a combo box, this causes problems for screen readers.
3197         Namely, the user expects focus to remain in the text field so that the user can keep typing. 
3198         If focus moves to an item in the combobox list, it is not possible to keep typing.
3199
3200         The solution is to not trigger a focus change in this case and instead use a selected children change notification.
3201
3202         Test: platform/mac/accessibility/combobox-activedescendant-notifications.html
3203
3204         * accessibility/AccessibilityRenderObject.cpp:
3205         (WebCore::AccessibilityRenderObject::shouldNotifyActiveDescendant):
3206         (WebCore::AccessibilityRenderObject::shouldFocusActiveDescendant):
3207         (WebCore::AccessibilityRenderObject::handleActiveDescendantChanged):
3208         * accessibility/AccessibilityRenderObject.h:
3209         (AccessibilityRenderObject):
3210         * accessibility/mac/AXObjectCacheMac.mm:
3211         (WebCore::AXObjectCache::postPlatformNotification):
3212
3213 2013-02-01  Chris Fleizach  <cfleizach@apple.com>
3214
3215         [Mac] REGRESSION(r140974): accessibility/lists.html fails on Lion=
3216         https://bugs.webkit.org/show_bug.cgi?id=108291
3217
3218         Reviewed by Ryosuke Niwa.
3219
3220         This accounts for differences in what AppKit gives for accessibility role descriptions between platforms
3221         when the subrole is not recognized, and standardizes it for WebKit.
3222
3223         Unskip a failing Lion test
3224
3225         * accessibility/mac/WebAccessibilityObjectWrapper.mm:
3226         (-[WebAccessibilityObjectWrapper roleDescription]):
3227
3228 2013-02-01  Vsevolod Vlasov  <vsevik@chromium.org>
3229
3230         Web Inspector: Replace localeCompare in NavigatorView with compareTo.
3231         https://bugs.webkit.org/show_bug.cgi?id=108585
3232
3233         Reviewed by Pavel Feldman.
3234
3235         Replaced String.prototype.localeCompare with String.prototype.compareTo
3236         in NavigatorView to improve performance.
3237
3238         * inspector/front-end/NavigatorView.js:
3239         (WebInspector.NavigatorTreeOutline._treeElementsCompare):
3240
3241 2013-02-01  Vsevolod Vlasov  <vsevik@chromium.org>
3242
3243         Web Inspector: File system pending requests list is not cleared after processing.
3244         https://bugs.webkit.org/show_bug.cgi?id=108573
3245
3246         Reviewed by Pavel Feldman.
3247
3248         * inspector/front-end/IsolatedFileSystemModel.js:
3249         (WebInspector.IsolatedFileSystemModel.prototype._processPendingFileSystemRequests):
3250
3251 2013-02-01  Tom Sepez  <tsepez@chromium.org>
3252
3253         Dubious cast from HTMLCollection to HTMLAllCollection
3254         https://bugs.webkit.org/show_bug.cgi?id=108538
3255
3256         Reviewed by Adam Barth.
3257
3258         Patch is tested by enabling V8 binding integrity on HTMLAllCollection and
3259         running the existing tests without introducing new crashes.
3260
3261         * dom/Document.cpp:
3262         (WebCore::Document::all):
3263         Pass correct type to template.
3264         
3265         * html/HTMLAllCollection.cpp:
3266         (WebCore::HTMLAllCollection::create):
3267         (WebCore::HTMLAllCollection::HTMLAllCollection):
3268         * html/HTMLAllCollection.h:
3269         (HTMLAllCollection):
3270         Make create() method arguments compatible with template above.
3271
3272         * html/HTMLAllCollection.idl:
3273         Enable binding integrity.
3274
3275 2013-02-01  Ken Kania  <kkania@chromium.org>
3276
3277         Web Inspector: Add support for handling modal dialogs
3278         https://bugs.webkit.org/show_bug.cgi?id=107883
3279
3280         Reviewed by Pavel Feldman.
3281
3282         Introduce support for being notified when a JavaScript modal dialog
3283         is opening and closing, as well as a new command for accepting or
3284         dismissing the dialog.
3285
3286         Test: inspector-protocol/page/willRunJavaScriptDialog.html
3287
3288         * inspector/Inspector.json:
3289         * inspector/InspectorClient.h:
3290         (WebCore::InspectorClient::handleJavaScriptDialog):
3291         (InspectorClient):
3292         * inspector/InspectorInstrumentation.cpp:
3293         (WebCore):
3294         (WebCore::InspectorInstrumentation::willRunJavaScriptDialogImpl):
3295         (WebCore::InspectorInstrumentation::didRunJavaScriptDialogImpl):
3296         * inspector/InspectorInstrumentation.h:
3297         (InspectorInstrumentation):
3298         (WebCore::InspectorInstrumentation::willRunJavaScriptDialog):
3299         (WebCore):
3300         (WebCore::InspectorInstrumentation::didRunJavaScriptDialog):
3301         * inspector/InspectorPageAgent.cpp:
3302         (WebCore::InspectorPageAgent::willRunJavaScriptDialog):
3303         (WebCore):
3304         (WebCore::InspectorPageAgent::didRunJavaScriptDialog):
3305         (WebCore::InspectorPageAgent::handleJavaScriptDialog):
3306         * inspector/InspectorPageAgent.h:
3307         * inspector/front-end/ResourceTreeModel.js:
3308         (WebInspector.PageDispatcher.prototype.frameStartedLoading):
3309         (WebInspector.PageDispatcher.prototype.frameStoppedLoading):
3310         (WebInspector.PageDispatcher.prototype.frameScheduledNavigation):
3311         (WebInspector.PageDispatcher.prototype.frameClearedScheduledNavigation):
3312         (WebInspector.PageDispatcher.prototype.javascriptDialogOpening):
3313         (WebInspector.PageDispatcher.prototype.javascriptDialogClosed):
3314         * page/Chrome.cpp:
3315         (WebCore::Chrome::runBeforeUnloadConfirmPanel):
3316         (WebCore::Chrome::runJavaScriptAlert):
3317         (WebCore::Chrome::runJavaScriptConfirm):
3318         (WebCore::Chrome::runJavaScriptPrompt):
3319
3320 2013-02-01  Dan Alcantara  <dfalcantara@chromium.org>
3321
3322         Touch disambiguation blacklist is not being queried properly
3323         https://bugs.webkit.org/show_bug.cgi?id=108222
3324
3325         Reviewed by Adam Barth.
3326
3327         TEST=WebFrameTest::DisambiguationPopupBlacklist
3328
3329         Fix the blacklist so that we check it for the right nodes.
3330         Add a chromium test to check that the blacklist is being built and used
3331         correctly.  Also update the other DisambiguationPopup tests to
3332         use the new page scale method.
3333
3334         * page/TouchDisambiguation.cpp:
3335         (WebCore::findGoodTouchTargets):
3336
3337 2013-01-31  Kentaro Hara  <haraken@chromium.org>
3338
3339         [V8] Add a temporary optional Isolate parameter to HasInstance()
3340         https://bugs.webkit.org/show_bug.cgi?id=108567
3341
3342         Reviewed by Adam Barth.
3343
3344         The optional Isolate parameter will be removed once all call sites have an Isolate.
3345         It will require several patches.
3346
3347         No tests. No change in behavior.
3348
3349         * bindings/scripts/CodeGeneratorV8.pm:
3350         (GenerateHeader):
3351         (GenerateNormalAttrSetter):
3352         (GenerateParametersCheckExpression):
3353         (GenerateParametersCheck):
3354         (GenerateImplementation):
3355         * bindings/scripts/test/V8/V8Float64Array.cpp:
3356         (WebCore::V8Float64Array::HasInstance):
3357         * bindings/scripts/test/V8/V8Float64Array.h:
3358         (V8Float64Array):
3359         * bindings/scripts/test/V8/V8TestActiveDOMObject.cpp:
3360         (WebCore::V8TestActiveDOMObject::HasInstance):
3361         * bindings/scripts/test/V8/V8TestActiveDOMObject.h:
3362         (V8TestActiveDOMObject):
3363         * bindings/scripts/test/V8/V8TestCustomNamedGetter.cpp:
3364         (WebCore::V8TestCustomNamedGetter::HasInstance):
3365         * bindings/scripts/test/V8/V8TestCustomNamedGetter.h:
3366         (V8TestCustomNamedGetter):
3367         * bindings/scripts/test/V8/V8TestEventConstructor.cpp:
3368         (WebCore::V8TestEventConstructor::HasInstance):
3369         * bindings/scripts/test/V8/V8TestEventConstructor.h:
3370         (V8TestEventConstructor):
3371         * bindings/scripts/test/V8/V8TestEventTarget.cpp:
3372         (WebCore::V8TestEventTarget::HasInstance):
3373         * bindings/scripts/test/V8/V8TestEventTarget.h:
3374         (V8TestEventTarget):
3375         * bindings/scripts/test/V8/V8TestException.cpp:
3376         (WebCore::V8TestException::HasInstance):
3377         * bindings/scripts/test/V8/V8TestException.h:
3378         (V8TestException):
3379         * bindings/scripts/test/V8/V8TestInterface.cpp:
3380         (WebCore::V8TestInterface::HasInstance):
3381         * bindings/scripts/test/V8/V8TestInterface.h:
3382         (V8TestInterface):
3383         * bindings/scripts/test/V8/V8TestMediaQueryListListener.cpp:
3384         (WebCore::V8TestMediaQueryListListener::HasInstance):
3385         * bindings/scripts/test/V8/V8TestMediaQueryListListener.h:
3386         (V8TestMediaQueryListListener):
3387         * bindings/scripts/test/V8/V8TestNamedConstructor.cpp:
3388         (WebCore::V8TestNamedConstructor::HasInstance):
3389         * bindings/scripts/test/V8/V8TestNamedConstructor.h:
3390         (V8TestNamedConstructor):
3391         * bindings/scripts/test/V8/V8TestNode.cpp:
3392         (WebCore::V8TestNode::HasInstance):
3393         * bindings/scripts/test/V8/V8TestNode.h:
3394         (V8TestNode):
3395         * bindings/scripts/test/V8/V8TestObj.cpp:
3396         (WebCore::TestObjV8Internal::overloadedMethodCallback):
3397         (WebCore::TestObjV8Internal::variadicNodeMethodCallback):
3398         (WebCore::V8TestObj::HasInstance):
3399         * bindings/scripts/test/V8/V8TestObj.h:
3400         (V8TestObj):
3401         * bindings/scripts/test/V8/V8TestOverloadedConstructors.cpp:
3402         (WebCore::V8TestOverloadedConstructors::constructorCallback):
3403         (WebCore::V8TestOverloadedConstructors::HasInstance):
3404         * bindings/scripts/test/V8/V8TestOverloadedConstructors.h:
3405         (V8TestOverloadedConstructors):
3406         * bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.cpp:
3407         (WebCore::V8TestSerializedScriptValueInterface::HasInstance):
3408         * bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.h:
3409         (V8TestSerializedScriptValueInterface):
3410
3411 2013-02-01  Nils Barth  <nbarth@google.com>
3412
3413         [CPP,GObject,ObjC] Add 'static' skip to CodeGenerator{CPP,GObject,ObjC}.pm
3414         https://bugs.webkit.org/show_bug.cgi?id=108578
3415
3416         Reviewed by Kentaro Hara.
3417
3418         Since CPP/GObject/ObjC code generators (CodeGenerator{CPP,GObject,ObjC}.pm)
3419         do not support static attributes, add test to skip these.
3420         This lets us remove #if macro from static in test files and not need
3421         these in future.
3422
3423         Test: bindings/scripts/test/TestObj.idl (run-bindings-test)
3424         Test: bindings/scripts/test/TestSupplemental.idl (run-bindings-test)
3425
3426         * bindings/scripts/CodeGeneratorCPP.pm:
3427         (SkipAttribute):
3428         * bindings/scripts/CodeGeneratorGObject.pm:
3429         (SkipAttribute):
3430         * bindings/scripts/CodeGeneratorObjC.pm:
3431         (SkipAttribute):
3432         * bindings/scripts/test/TestObj.idl:
3433         * bindings/scripts/test/TestSupplemental.idl:
3434
3435 2013-02-01  Kentaro Hara  <haraken@chromium.org>
3436
3437         [V8] Remove V8GCController::m_edenNodes
3438         https://bugs.webkit.org/show_bug.cgi?id=108579
3439
3440         Reviewed by Adam Barth.
3441
3442         Currently V8GCController::m_edenNodes stores a list of nodes whose
3443         wrappers have been created since the latest GC. The reason why we
3444         needed m_edenNodes is that there was no way to know a list of wrappers
3445         in the new space of V8. By using m_edenNodes, we had been approximating
3446         'wrappers in the new space' by 'wrappers that have been created since
3447         the latest GC'.
3448
3449         Now V8 provides VisitHandlesForPartialDependence(), with which WebKit
3450         can know a list of wrappers in the new space. By using the API, we can
3451         remove V8GCController::m_edenNodes. The benefit is that (1) we no longer
3452         need to keep m_edenNodes and that (2) it enables more precise minor
3453         DOM GC (Remember that m_edenNodes was just an approximation).
3454
3455         Performance benchmark: https://bugs.webkit.org/attachment.cgi?id=185940
3456         The benchmark runs 300 iterations, each of which creates 100000 elements.
3457         The benchmark measures average, min, median, max and stdev of execution times
3458         of the 300 iterations. This will tell us the worst-case overhead of this change.
3459
3460         Before:
3461           mean=59.91ms, min=39ms, median=42ms, max=258ms, stdev=47.48ms
3462
3463         After:
3464           mean=58.75ms, min=35ms, median=41ms, max=250ms, stdev=47.32ms
3465
3466         As shown above, I couldn't observe any performance regression.
3467
3468         No tests. No change in behavior.
3469
3470         * bindings/v8/DOMDataStore.h:
3471         (WebCore::DOMDataStore::setWrapperInObject):
3472         * bindings/v8/V8GCController.cpp:
3473         (WebCore::gcTree):
3474         (WebCore):
3475         (MinorGCWrapperVisitor):
3476         (WebCore::MinorGCWrapperVisitor::notifyFinished):
3477         (WebCore::V8GCController::gc