3c6f3247b2ae589e38253cc00fe91817288b93bf
[WebKit-https.git] / Source / WebCore / ChangeLog
1 2011-04-13  Andrey Kosyakov  <caseq@chromium.org>
2
3         Unreviewed. Fix chromium clang build problem:
4         ApplyPropertyExpandingSuppressValue::applyValue() shadows a virtual method
5         with a different signature in base class instead of overriding it.
6
7         * css/CSSStyleApplyProperty.cpp:
8         (WebCore::ApplyPropertyExpandingSuppressValue::applyValue):
9
10 2011-04-13  Kinuko Yasuda  <kinuko@chromium.org>
11
12         Reviewed by David Levin.
13
14         Add mock implementation and plumbing code for unified Quota API
15         https://bugs.webkit.org/show_bug.cgi?id=57927
16
17         Added mock implementation and some plumbing code for the quota API,
18         that is based on the discussion on public-webapps:
19         http://lists.w3.org/Archives/Public/public-webapps/2011JanMar/0346.html
20
21         No new tests: tests will be added when we expose the API.
22
23         * CMakeLists.txt: Added new file entries.
24         * DerivedSources.cpp: Added new file entries.
25         * DerivedSources.make: Added new file entries.
26         * GNUmakefile.am: Added new file entries.
27         * WebCore.gypi: Added new file entries.
28         * WebCore.pro: Added new file entries.
29         * WebCore.vcproj/WebCore.vcproj: Added new file entries.
30         * WebCore.xcodeproj/project.pbxproj: Added new file entries.
31         * storage/StorageInfo.cpp: Added.
32         * storage/StorageInfo.h: Added.
33         * storage/StorageInfoErrorCallback.h: Added.
34         * storage/StorageInfoQuotaCallback.h: Added.
35         * storage/StorageInfoUsageCallback.h: Added.
36
37 2011-04-13  Gustavo Noronha Silva  <gns@gnome.org>
38
39         Reviewed by Martin Robinson.
40
41         [GTK] PluginPackage should check whether a plugin mixes GTK+ 2 and 3 symbols itself
42         https://bugs.webkit.org/show_bug.cgi?id=58297
43
44         Make sure we do not load plugins that use symbols of a different
45         GTK+ major version to avoid bugs and crashes.
46
47         * plugins/gtk/PluginPackageGtk.cpp:
48         (WebCore::moduleMixesGtkSymbols):
49         (WebCore::PluginPackage::load):
50
51 2011-04-13  Andrey Adaikin  <aandrey@google.com>
52
53         Reviewed by Pavel Feldman.
54
55         Web Inspector: Implement undo/redo in text editor
56         https://bugs.webkit.org/show_bug.cgi?id=58426
57
58         Native undo/redo does not work because we modify DOM structure (highlights, chunks and etc.)
59         Implement it via keyboard shortcuts for now (Cmd/Ctrl+Z and Cmd/Ctrl+Shift+Z).
60         FIXME: Do something with the popup's Undo and Redo menu options - they invoke native's undo/redo.
61
62         * inspector/front-end/SourceFrame.js:
63         (WebInspector.SourceFrame.prototype.endEditing):
64         * inspector/front-end/TextEditorModel.js:
65         (WebInspector.TextEditorModel.prototype.setText):
66         (WebInspector.TextEditorModel.prototype._innerSetText):
67         (WebInspector.TextEditorModel.prototype._pushUndoableCommand):
68         (WebInspector.TextEditorModel.prototype.undo):
69         (WebInspector.TextEditorModel.prototype.redo):
70         (WebInspector.TextEditorModel.prototype._doUndo):
71         * inspector/front-end/TextViewer.js:
72         (WebInspector.TextViewer.prototype._textChanged):
73         (WebInspector.TextViewer.prototype._enterInternalTextChangeMode):
74         (WebInspector.TextViewer.prototype._exitInternalTextChangeMode):
75         (WebInspector.TextViewer.prototype._registerShortcuts):
76         (WebInspector.TextViewer.prototype._cancelEditing):
77         (WebInspector.TextViewer.prototype._handleUndoRedo):
78         (WebInspector.TextEditorChunkedPanel.prototype.makeLineAChunk):
79         (WebInspector.TextEditorChunkedPanel.prototype._repaintAll):
80         (WebInspector.TextEditorGutterPanel.prototype.textChanged):
81         (WebInspector.TextEditorMainPanel.prototype.handleUndoRedo.callback):
82         (WebInspector.TextEditorMainPanel.prototype.handleUndoRedo):
83         (WebInspector.TextEditorMainPanel.prototype._restoreSelection):
84         (WebInspector.TextEditorMainPanel.prototype._applyDomUpdates):
85         (WebInspector.TextEditorMainPanel.prototype.textChanged):
86         (WebInspector.TextEditorMainPanel.prototype._updateChunksForRanges):
87
88 2011-04-13  Pavel Feldman  <pfeldman@chromium.org>
89
90         Reviewed by Yury Semikhatsky.
91
92         Web Inspector: make optional event parameter last to prevent regressions.
93         https://bugs.webkit.org/show_bug.cgi?id=58433
94
95         * inspector/Inspector.json:
96         * inspector/InspectorResourceAgent.cpp:
97         (WebCore::InspectorResourceAgent::willSendRequest):
98         * inspector/front-end/NetworkManager.js:
99         (WebInspector.NetworkDispatcher.prototype.requestWillBeSent):
100
101 2011-04-13  Pavel Feldman  <pfeldman@chromium.org>
102
103         Not reviewed: revert Inspector.json change for breaking world.
104
105         * inspector/Inspector.json:
106
107 2011-04-13  Pavel Feldman  <pfeldman@chromium.org>
108
109         Not reviewed: swap methods in the Inspector.json.
110
111         * inspector/Inspector.json:
112
113 2011-04-13  Csaba Osztrogonác  <ossy@webkit.org>
114
115         Unreviewed, rolling out r83695.
116         http://trac.webkit.org/changeset/83695
117         https://bugs.webkit.org/show_bug.cgi?id=58375
118
119         [Qt][WK2]It broke http tests
120
121         * platform/network/qt/QNetworkReplyHandler.cpp:
122         (WebCore::QNetworkReplyHandler::start):
123         (WebCore::QNetworkReplyHandler::synchronousLoad):
124         * platform/network/qt/QNetworkReplyHandler.h:
125         * platform/network/qt/ResourceHandleQt.cpp:
126         (WebCore::WebCoreSynchronousLoader::resourceResponse):
127         (WebCore::WebCoreSynchronousLoader::resourceError):
128         (WebCore::WebCoreSynchronousLoader::data):
129         (WebCore::WebCoreSynchronousLoader::setReplyFinished):
130         (WebCore::WebCoreSynchronousLoader::WebCoreSynchronousLoader):
131         (WebCore::WebCoreSynchronousLoader::didReceiveResponse):
132         (WebCore::WebCoreSynchronousLoader::didReceiveData):
133         (WebCore::WebCoreSynchronousLoader::didFinishLoading):
134         (WebCore::WebCoreSynchronousLoader::didFail):
135         (WebCore::WebCoreSynchronousLoader::waitForCompletion):
136         (WebCore::ResourceHandle::loadResourceSynchronously):
137
138 2011-04-13  Pavel Podivilov  <podivilov@chromium.org>
139
140         Reviewed by Pavel Feldman.
141
142         Web Inspector: inactive style sheets should be read only.
143         https://bugs.webkit.org/show_bug.cgi?id=58423
144
145         * inspector/front-end/ResourceView.js:
146         (WebInspector.CSSSourceFrame):
147         (WebInspector.CSSSourceFrame.prototype.isContentEditable):
148         (WebInspector.CSSSourceFrame.prototype._loadStyleSheet.didGetAllStyleSheets.didCreateForId):
149         (WebInspector.CSSSourceFrame.prototype._loadStyleSheet):
150
151 2011-04-13  Mikhail Naganov  <mnaganov@chromium.org>
152
153         Reviewed by Pavel Feldman.
154
155         Web Inspector: [Chromium] Prepare to move detailed heap snapshots storage and processing into workers.
156         https://bugs.webkit.org/show_bug.cgi?id=58320
157
158         Introduce a proxy object that emulates worker behavior and change UI code to cope with it.
159
160         * WebCore.gypi:
161         * WebCore.vcproj/WebCore.vcproj:
162         * inspector/front-end/DetailedHeapshotGridNodes.js:
163         (WebInspector.HeapSnapshotGridNode.prototype._populate.doPopulate.sorted):
164         (WebInspector.HeapSnapshotGridNode.prototype._populate.doPopulate):
165         (WebInspector.HeapSnapshotGridNode.prototype._populate):
166         (WebInspector.HeapSnapshotGridNode.prototype.populateChildren.childrenRetrieved.notify):
167         (WebInspector.HeapSnapshotGridNode.prototype.populateChildren.childrenRetrieved):
168         (WebInspector.HeapSnapshotGridNode.prototype.populateChildren):
169         (WebInspector.HeapSnapshotGridNode.prototype.sort.doSort.afterSort.afterPopulate):
170         (WebInspector.HeapSnapshotGridNode.prototype.sort.doSort.afterSort):
171         (WebInspector.HeapSnapshotGridNode.prototype.sort):
172         (WebInspector.HeapSnapshotGenericObjectNode):
173         (WebInspector.HeapSnapshotGenericObjectNode.prototype.get _shallowSizePercent):
174         (WebInspector.HeapSnapshotGenericObjectNode.prototype._updateHasChildren):
175         (WebInspector.HeapSnapshotObjectNode):
176         (WebInspector.HeapSnapshotObjectNode.prototype._createChildNode):
177         (WebInspector.HeapSnapshotObjectNode.prototype._createProvider):
178         (WebInspector.HeapSnapshotInstanceNode):
179         (WebInspector.HeapSnapshotInstanceNode.prototype._createChildNode):
180         (WebInspector.HeapSnapshotInstanceNode.prototype._createProvider):
181         (WebInspector.HeapSnapshotConstructorNode.prototype._createChildNode):
182         (WebInspector.HeapSnapshotConstructorNode.prototype._createNodesProvider):
183         (WebInspector.HeapSnapshotIteratorsTuple.prototype.sortAndRewind):
184         (WebInspector.HeapSnapshotDiffNode.prototype._calculateDiff):
185         (WebInspector.HeapSnapshotDiffNode.prototype._createChildNode):
186         (WebInspector.HeapSnapshotDiffNode.prototype._createNodesProvider.createProvider):
187         (WebInspector.HeapSnapshotDiffNode.prototype._createNodesProvider):
188         (WebInspector.HeapSnapshotDiffNode.prototype._childHashForEntity):
189         (WebInspector.HeapSnapshotDiffNode.prototype._childHashForNode):
190         (WebInspector.HeapSnapshotDiffNode.prototype.populateChildren.firstProviderPopulated):
191         (WebInspector.HeapSnapshotDiffNode.prototype.populateChildren.else.firstProviderPopulated):
192         (WebInspector.HeapSnapshotDiffNode.prototype.populateChildren):
193         (WebInspector.HeapSnapshotDominatorObjectNode):
194         (WebInspector.HeapSnapshotDominatorObjectNode.prototype._createChildNode):
195         (WebInspector.HeapSnapshotDominatorObjectNode.prototype._createProvider):
196         * inspector/front-end/DetailedHeapshotView.js:
197         (WebInspector.HeapSnapshotSortableDataGrid.prototype.sortingChanged):
198         (WebInspector.HeapSnapshotSortableDataGrid.prototype._performSorting):
199         (WebInspector.HeapSnapshotConstructorsDataGrid.prototype.setDataSource):
200         (WebInspector.HeapSnapshotConstructorsDataGrid.prototype.populateChildren):
201         (WebInspector.HeapSnapshotDiffDataGrid.prototype.setBaseDataSource.baseSnapshotNodeIdsReceived):
202         (WebInspector.HeapSnapshotDiffDataGrid.prototype.setBaseDataSource.pushBaseSnapshotNodeIds):
203         (WebInspector.HeapSnapshotDiffDataGrid.prototype.setBaseDataSource.snapshotNodeIdsReceived):
204         (WebInspector.HeapSnapshotDiffDataGrid.prototype.setBaseDataSource):
205         (WebInspector.HeapSnapshotDiffDataGrid.prototype.populateChildren.baseAggregatesReceived.aggregatesReceived):
206         (WebInspector.HeapSnapshotDiffDataGrid.prototype.populateChildren):
207         (WebInspector.HeapSnapshotRetainingPathsList):
208         (WebInspector.HeapSnapshotRetainingPathsList.prototype._resetPaths):
209         (WebInspector.HeapSnapshotRetainingPathsList.prototype.setDataSource):
210         (WebInspector.HeapSnapshotRetainingPathsList.prototype.refresh):
211         (WebInspector.HeapSnapshotRetainingPathsList.prototype.showNext.pathFound):
212         (WebInspector.HeapSnapshotRetainingPathsList.prototype.showNext.startSearching):
213         (WebInspector.HeapSnapshotRetainingPathsList.prototype.showNext):
214         (WebInspector.DetailedHeapshotView.profileCallback):
215         (WebInspector.DetailedHeapshotView):
216         (WebInspector.DetailedHeapshotView.prototype.get profileWrapper):
217         (WebInspector.DetailedHeapshotView.prototype.get baseProfileWrapper):
218         (WebInspector.DetailedHeapshotView.prototype.show.profileCallback1):
219         (WebInspector.DetailedHeapshotView.prototype.show.profileCallback2):
220         (WebInspector.DetailedHeapshotView.prototype.show):
221         (WebInspector.DetailedHeapshotView.prototype._changeBase.baseProfileLoaded):
222         * inspector/front-end/HeapSnapshot.js:
223         * inspector/front-end/HeapSnapshotProxy.js: Added.
224         * inspector/front-end/PleaseWaitMessage.js:
225         * inspector/front-end/ProfilesPanel.js:
226         (WebInspector.ProfilesPanel.prototype._reset):
227         (WebInspector.ProfilesPanel.prototype.loadHeapSnapshot):
228         (WebInspector.ProfilesPanel.prototype._addHeapSnapshotChunk):
229         (WebInspector.ProfilesPanel.prototype._finishHeapSnapshot.doParse):
230         (WebInspector.ProfilesPanel.prototype._finishHeapSnapshot.else.parsed):
231         (WebInspector.ProfilesPanel.prototype._finishHeapSnapshot):
232         * inspector/front-end/WebKit.qrc:
233         * inspector/front-end/inspector.html:
234
235 2011-04-13  Alexander Pavlov  <apavlov@chromium.org>
236
237         Reviewed by Pavel Feldman.
238
239         Web Inspector: Web Page Performance auditing fails
240         https://bugs.webkit.org/show_bug.cgi?id=58322
241
242         * inspector/front-end/AuditRules.js:
243         (WebInspector.AuditRules.UnusedCssRule.prototype.doRun.evalCallback):
244         (WebInspector.AuditRules.UnusedCssRule.prototype.doRun.evalCallback.documentLoaded):
245         (WebInspector.AuditRules.ImageDimensionsRule.prototype.doRun):
246         (WebInspector.AuditRules.CssInHeadRule.prototype.doRun.externalStylesheetsReceived):
247         (WebInspector.AuditRules.CssInHeadRule.prototype.doRun.inlineStylesReceived):
248         (WebInspector.AuditRules.CssInHeadRule.prototype.doRun.onDocumentAvailable):
249         (WebInspector.AuditRules.CssInHeadRule.prototype.doRun):
250         (WebInspector.AuditRules.StylesScriptsOrderRule.prototype.doRun.cssBeforeInlineReceived):
251         (WebInspector.AuditRules.StylesScriptsOrderRule.prototype.doRun.lateStylesReceived):
252         (WebInspector.AuditRules.StylesScriptsOrderRule.prototype.doRun.onDocumentAvailable):
253         (WebInspector.AuditRules.StylesScriptsOrderRule.prototype.doRun):
254
255 2011-04-13  Pavel Feldman  <pfeldman@google.com>
256
257         Reviewed by Yury Semikhatsky.
258
259         Web Inspector: enumerate properties in Inspector.json using array, not object keys.
260         https://bugs.webkit.org/show_bug.cgi?id=58418
261
262         * inspector/Inspector.json:
263
264 2011-04-06  Pavel Podivilov  <podivilov@chromium.org>
265
266         Reviewed by Pavel Feldman.
267
268         Web Inspector: add "De-obfuscate Source" item to source frame text area context menu.
269         https://bugs.webkit.org/show_bug.cgi?id=57942
270
271         * English.lproj/localizedStrings.js:
272         * inspector/front-end/DebuggerPresentationModel.js:
273         (WebInspector.DebuggerPresentationModel.prototype.formatSourceFilesToggled):
274         * inspector/front-end/ScriptsPanel.js:
275         (WebInspector.ScriptsPanel):
276         (WebInspector.ScriptsPanel.prototype._togglePauseOnExceptions):
277         (WebInspector.SourceFrameDelegateForScriptsPanel.prototype.releaseEvaluationResult):
278         (WebInspector.SourceFrameDelegateForScriptsPanel.prototype.toggleFormatSourceFiles):
279         (WebInspector.SourceFrameDelegateForScriptsPanel.prototype.formatSourceFilesToggled):
280         * inspector/front-end/SourceFrame.js:
281         (WebInspector.SourceFrame.prototype._contextMenu):
282         (WebInspector.SourceFrame.prototype._populateLineGutterContextMenu):
283         (WebInspector.SourceFrame.prototype._populateTextAreaContextMenu):
284         (WebInspector.SourceFrameDelegate.prototype.releaseEvaluationResult):
285         (WebInspector.SourceFrameDelegate.prototype.toggleFormatSourceFiles):
286         (WebInspector.SourceFrameDelegate.prototype.formatSourceFilesToggled):
287
288 2011-04-13  Nikolas Zimmermann  <nzimmermann@rim.com>
289
290         Reviewed by Dirk Schulze.
291
292         SVGTextContentElements textLength returns 0
293         https://bugs.webkit.org/show_bug.cgi?id=52543
294
295         Add proper handling of the SVGTextContentElement textLength property, according to SVG 1.1 2nd edition.
296
297         If the textLength attributes is not explicitely set "textContentElement.textLength.baseVal"
298         will return the same as "textContentElement.getComputedTextLength()". If it's set the values
299         aren't equal anymore. getComputedTextLength() ignores the textLength attributes as well as the
300         lengthAdjust attribute. Adapt all of SVGTextQuery to ignore the lengthAdjust/textLength attributes.
301         This is how Opera implements it, and it makes sense to a certain degree, as otherwhise getComputedTextLength()
302         and textLength.baseVal.value would always be the same. Nor does the spec mention that textLength is honored
303         in the SVG Text DOM API.
304
305         Fixes svg/custom/text-dom-01-f.svg (from SVG 1.1 2nd edition, should be moved into the new W3C-SVG-1.1-SE directory).
306         Fixes svg/W3C-SVG-1.1-SE/svgdom-over-01-f.svg (last subtest related to textLength now passes).
307
308         Added new svg/dynamic-updates testcases covering dynamic changes of lengthAdjust/textLength and the synchronization
309         with getComputedTextLength().
310
311         Tests: svg/W3C-SVG-1.1-SE/svgdom-over-01-f.svg
312                svg/dynamic-updates/SVGTextElement-dom-lengthAdjust-attr.html
313                svg/dynamic-updates/SVGTextElement-dom-textLength-attr.html
314                svg/dynamic-updates/SVGTextElement-svgdom-lengthAdjust-prop.html
315                svg/dynamic-updates/SVGTextElement-svgdom-textLength-prop.html
316
317         * rendering/svg/RenderSVGInlineText.cpp:
318         (WebCore::RenderSVGInlineText::positionForPoint):
319         * rendering/svg/SVGInlineFlowBox.cpp:
320         (WebCore::SVGInlineFlowBox::computeTextMatchMarkerRectForRenderer):
321         * rendering/svg/SVGInlineTextBox.cpp:
322         (WebCore::SVGInlineTextBox::offsetForPositionInFragment):
323         (WebCore::SVGInlineTextBox::selectionRect):
324         (WebCore::SVGInlineTextBox::paintSelectionBackground):
325         (WebCore::SVGInlineTextBox::paint):
326         (WebCore::SVGInlineTextBox::calculateBoundaries):
327         * rendering/svg/SVGTextChunkBuilder.cpp:
328         (WebCore::SVGTextChunkBuilder::buildTextChunks):
329         (WebCore::SVGTextChunkBuilder::layoutTextChunks):
330         (WebCore::SVGTextChunkBuilder::addTextChunk):
331         (WebCore::SVGTextChunkBuilder::processTextChunk):
332         (WebCore::SVGTextChunkBuilder::processTextLengthSpacingCorrection):
333         (WebCore::SVGTextChunkBuilder::processTextAnchorCorrection):
334         * rendering/svg/SVGTextFragment.h:
335         (WebCore::SVGTextFragment::SVGTextFragment):
336         (WebCore::SVGTextFragment::buildFragmentTransform):
337         (WebCore::SVGTextFragment::transformAroundOrigin):
338         (WebCore::SVGTextFragment::buildTransformForTextOnPath):
339         (WebCore::SVGTextFragment::buildTransformForTextOnLine):
340         * rendering/svg/SVGTextLayoutEngine.cpp:
341         (WebCore::SVGTextLayoutEngine::parentDefinesTextLength):
342         (WebCore::SVGTextLayoutEngine::beginTextPathLayout):
343         (WebCore::dumpTextBoxes):
344         (WebCore::SVGTextLayoutEngine::finalizeTransformMatrices):
345         (WebCore::SVGTextLayoutEngine::finishLayout):
346         (WebCore::SVGTextLayoutEngine::layoutTextOnLineOrPath):
347         * rendering/svg/SVGTextQuery.cpp:
348         (WebCore::SVGTextQuery::textLengthCallback):
349         (WebCore::SVGTextQuery::subStringLengthCallback):
350         (WebCore::SVGTextQuery::startPositionOfCharacterCallback):
351         (WebCore::SVGTextQuery::endPositionOfCharacterCallback):
352         (WebCore::SVGTextQuery::rotationOfCharacterCallback):
353         (WebCore::calculateGlyphBoundaries):
354         * svg/SVGTextContentElement.cpp:
355         (WebCore::SVGTextContentElement::SVGTextContentElement):
356         (WebCore::SVGTextContentElement::synchronizeTextLength):
357         (WebCore::SVGTextContentElement::textLengthAnimated):
358         (WebCore::SVGTextContentElement::parseMappedAttribute):
359         (WebCore::SVGTextContentElement::svgAttributeChanged):
360         * svg/SVGTextContentElement.h:
361         (WebCore::SVGTextContentElement::specifiedTextLength):
362         * svg/SVGTextPathElement.cpp:
363         (WebCore::SVGTextPathElement::svgAttributeChanged):
364         * svg/SVGTextPositioningElement.cpp:
365         (WebCore::SVGTextPositioningElement::svgAttributeChanged):
366
367 2011-04-13  Pavel Feldman  <pfeldman@google.com>
368
369         Reviewed by Yury Semikhatsky.
370
371         Web Inspector: requestDocument can result in race condition in DOMAgent.js
372         https://bugs.webkit.org/show_bug.cgi?id=58415
373
374         * inspector/front-end/DOMAgent.js:
375         (WebInspector.DOMAgent.prototype.requestDocument.onDocumentAvailable):
376         (WebInspector.DOMAgent.prototype.requestDocument):
377
378 2011-04-12  Pavel Feldman  <pfeldman@google.com>
379
380         Reviewed by Yury Semikhatsky.
381
382         Web Inspector: another pass of protocol renames.
383         https://bugs.webkit.org/show_bug.cgi?id=58340
384
385         * inspector/Inspector.json:
386         * inspector/InspectorDOMAgent.cpp:
387         (WebCore::InspectorDOMAgent::getDocument):
388         (WebCore::InspectorDOMAgent::performSearch):
389         (WebCore::InspectorDOMAgent::setSearchingForNode):
390         * inspector/InspectorDOMAgent.h:
391         * inspector/InspectorDebuggerAgent.cpp:
392         (WebCore::InspectorDebuggerAgent::evaluateOnCallFrame):
393         * inspector/InspectorDebuggerAgent.h:
394         * inspector/InspectorRuntimeAgent.cpp:
395         (WebCore::InspectorRuntimeAgent::evaluate):
396         * inspector/InspectorRuntimeAgent.h:
397         * inspector/front-end/ElementsPanel.js:
398         (WebInspector.ElementsPanel.prototype._setSearchingForNode):
399         (WebInspector.ElementsPanel.prototype.setSearchingForNode):
400
401 2011-04-12  Luke Macpherson   <macpherson@chromium.org>
402
403         Reviewed by Dimitri Glazkov.
404
405         Implement remaining Background and Mask css properties in CSSStyleApplyProperty
406         https://bugs.webkit.org/show_bug.cgi?id=58390
407
408         No new tests required as no functionality changed.
409
410         * css/CSSStyleApplyProperty.cpp:
411         (WebCore::ApplyPropertyExpanding): Class to expand one property to 0-4 properties.
412         (WebCore::ApplyPropertyExpandingSuppressValue): Expand properties but suppress applyValue.
413
414         (WebCore::CSSStyleApplyProperty::CSSStyleApplyProperty):
415         (WebCore::CSSStyleSelector::applyProperty): Remove implementations that have been moved to CSSStyleApplyProperty.
416
417 2011-04-12  Sergey Glazunov  <serg.glazunov@gmail.com>
418
419         Reviewed by Dimitri Glazkov.
420
421         Element::setAttribute should check the namespace of an id attribute
422         https://bugs.webkit.org/show_bug.cgi?id=58359
423
424         Test: fast/dom/id-attribute-with-namespace-crash.html
425
426         * dom/Element.cpp:
427         (WebCore::Element::setAttribute):
428
429 2011-04-12  Mike Lawther  <mikelawther@chromium.org>
430
431         Reviewed by James Robinson.
432
433         Update boolean operators in RenderStyle to be compatible with check-webkit-style
434         https://bugs.webkit.org/show_bug.cgi?id=58409
435
436         No new functionality, so no new tests.
437
438         * rendering/style/RenderStyle.cpp:
439         (WebCore::RenderStyle::operator==):
440         (WebCore::RenderStyle::inheritedNotEqual):
441         (WebCore::positionedObjectMoved):
442         (WebCore::RenderStyle::diff):
443         (WebCore::RenderStyle::applyTransform):
444         * rendering/style/RenderStyle.h:
445         (WebCore::InheritedFlags::isOriginalDisplayInlineType):
446
447 2011-04-12  Luiz Agostini  <luiz.agostini@openbossa.org>
448
449         Reviewed by Andreas Kling.
450
451         [Qt] QNetworkReplyHandler refactoring: remove nested event loop.
452         https://bugs.webkit.org/show_bug.cgi?id=58375
453
454         As QNAM now makes actual synchronous loads there is no need for a nested event loop
455         in ResourceHandleQt.
456
457         Moving the call for QNetworkReplyWrapper::synchronousLoad from
458         ResourceHandle::loadResourceSynchronously to QNetworkReplyHandler::start for the
459         redirections to work in synchronous requests.
460
461         * platform/network/qt/QNetworkReplyHandler.cpp:
462         (WebCore::QNetworkReplyHandler::start):
463         * platform/network/qt/QNetworkReplyHandler.h:
464         * platform/network/qt/ResourceHandleQt.cpp:
465         (WebCore::WebCoreSynchronousLoader::WebCoreSynchronousLoader):
466         (WebCore::WebCoreSynchronousLoader::didReceiveResponse):
467         (WebCore::WebCoreSynchronousLoader::didReceiveData):
468         (WebCore::WebCoreSynchronousLoader::didFinishLoading):
469         (WebCore::WebCoreSynchronousLoader::didFail):
470         (WebCore::ResourceHandle::loadResourceSynchronously):
471
472 2011-04-12  Vangelis Kokkevis  <vangelis@chromium.org>
473
474         Reviewed by James Robinson.
475
476         [chromium] Move the calculation of the layer's z coordinate to the
477         right spot so that it can be picked up by its sublayers.
478         https://bugs.webkit.org/show_bug.cgi?id=58397
479
480         Test: platform/chromium/compositing/child-layer-3d-sorting.html
481
482         * platform/graphics/chromium/LayerRendererChromium.cpp:
483         (WebCore::LayerRendererChromium::updatePropertiesAndRenderSurfaces):
484
485 2011-04-12  Luiz Agostini  <luiz.agostini@openbossa.org>
486
487         Reviewed by Andreas Kling.
488
489         [Qt] QNetworkReplyHandler refactoring: signal queue
490         https://bugs.webkit.org/show_bug.cgi?id=57075
491
492         The idea is to make all signals that come from the QNetworkReply to pass through a queue and to
493         stop that queue when loading is deferred. This way almost all the deferred logic can be removed
494         from QNetworkReplyHandler class and encapsulated in its own class.
495
496         To stop the queue during wrapper methods execution avoids stacking handler methods over wrapper
497         methods. Because of this there is no chance for the wrapper to be destroyed inside one of its methods.
498         This together with empting the queue at wrapper destruction time makes sure that the handler will
499         not receive calls from a dead wrapper.
500
501         The new class is named QNetworkReplyHandlerCallQueue.
502
503         * platform/network/qt/QNetworkReplyHandler.cpp:
504         (WebCore::QNetworkReplyHandlerCallQueue::QNetworkReplyHandlerCallQueue):
505         (WebCore::QNetworkReplyHandlerCallQueue::push):
506         (WebCore::QNetworkReplyHandlerCallQueue::lock):
507         (WebCore::QNetworkReplyHandlerCallQueue::unlock):
508         (WebCore::QNetworkReplyHandlerCallQueue::setDeferSignals):
509         (WebCore::QNetworkReplyHandlerCallQueue::flush):
510         (WebCore::QueueLocker::QueueLocker):
511         (WebCore::QueueLocker::~QueueLocker):
512         (WebCore::QNetworkReplyWrapper::QNetworkReplyWrapper):
513         (WebCore::QNetworkReplyWrapper::~QNetworkReplyWrapper):
514         (WebCore::QNetworkReplyWrapper::receiveMetaData):
515         (WebCore::QNetworkReplyWrapper::readyRead):
516         (WebCore::QNetworkReplyWrapper::didReceiveFinished):
517         (WebCore::QNetworkReplyHandler::QNetworkReplyHandler):
518         (WebCore::QNetworkReplyHandler::resetState):
519         (WebCore::QNetworkReplyHandler::release):
520         (WebCore::QNetworkReplyHandler::finish):
521         (WebCore::QNetworkReplyHandler::sendResponseIfNeeded):
522         (WebCore::QNetworkReplyHandler::forwardData):
523         (WebCore::QNetworkReplyHandler::start):
524         (WebCore::QNetworkReplyHandler::synchronousLoad):
525         * platform/network/qt/QNetworkReplyHandler.h:
526         (WebCore::QNetworkReplyHandlerCallQueue::deferSignals):
527         (WebCore::QNetworkReplyHandlerCallQueue::clear):
528         (WebCore::QNetworkReplyWrapper::synchronousLoad):
529         (WebCore::QNetworkReplyHandler::setLoadingDeferred):
530         * platform/network/qt/ResourceHandleQt.cpp:
531         (WebCore::ResourceHandle::loadResourceSynchronously):
532
533 2011-04-12  Kenichi Ishibashi  <bashi@chromium.org>
534
535         Reviewed by Kent Tamura.
536
537         Fix wrong calculation of HTMLFormElement::m_associatedElementsAfterIndex.
538         https://bugs.webkit.org/show_bug.cgi?id=58247
539
540         - Increment m_associatedElementsAfterIndex when the form owner and an
541         inserted form associated element have the same parent chain.
542         - Always iterate over m_associatedElements to decrease indexes when a
543         form associated element is removed. This is needed for a case that the
544         form associated element is removed from the form element due to
545         deleting the 'form' attribute. No behavioral change expected with this
546         change.
547
548         Tests: fast/dom/HTMLFormElement/associated-elements-after-index-assertion-fail1.html
549                fast/dom/HTMLFormElement/associated-elements-after-index-assertion-fail2.html
550
551         * html/HTMLFormElement.cpp:
552         (WebCore::HTMLFormElement::formElementIndexWithFormAttribute):
553         Incremet m_associatedElementsAfterIndex when compareDocumentPosition()
554         returns DOCUMENT_POSITION_CONTAINED_BY.
555         (WebCore::HTMLFormElement::removeFormElement):
556         Always iterate m_associatedElements to adjust indexes.
557
558 2011-04-12  Diego Gonzalez  <diegohcg@webkit.org>
559
560         Reviewed by Kenneth Rohde Christiansen.
561
562         [Qt] Do not show scrollbars when use mobile theme
563         https://bugs.webkit.org/show_bug.cgi?id=58380
564
565         * platform/qt/ScrollbarThemeQt.cpp:
566         (WebCore::ScrollbarThemeQt::scrollbarThickness):
567
568 2011-04-12  Anantanarayanan G Iyengar  <ananta@chromium.org>
569
570         Reviewed by Alexey Proskuryakov.
571
572         The default backspace event handler should mark the event as handled if navigation succeeds.
573         https://bugs.webkit.org/show_bug.cgi?id=58379
574
575         We should mark the event as handled only if we were able to successfully navigate backwards or forwards.
576         These navigations can fail if there is now back/forward history. This can occur in cases like ChromeFrame
577         where history is managed by an external browser like IE.
578
579         No new tests added as this scenario can occur when the history view is split across two browsers (WebKit and IE)
580         It is non trivial to simulate this environment.
581
582         * page/EventHandler.cpp:
583         (WebCore::EventHandler::defaultBackspaceEventHandler):
584
585 2011-04-12  Ryosuke Niwa  <rniwa@webkit.org>
586
587         Reviewed by Eric Seidel.
588
589         Make availableWidth and totalOverhangWidth in findNextLineBreak member variables of LineWidth
590         https://bugs.webkit.org/show_bug.cgi?id=58400
591
592         Added m_availableWidth and m_overhangWidth to LineWidth this allows us to encapsulate m_overhangWidth.
593
594         * rendering/RenderBlock.h:
595         * rendering/RenderBlockLineLayout.cpp:
596         (WebCore::LineWidth::LineWidth):
597         (WebCore::LineWidth::fitsOnLine): Added; returns true if current width + first argument <= availableWidth.
598         (WebCore::LineWidth::availableWidth): Added.
599         (WebCore::LineWidth::setAvailableWidth): Added; takes LineOffsets.
600         (WebCore::LineWidth::applyOverhang): Added; obtains the overhang width from ruby run and inflates
601         the available width.
602         (WebCore::LineWidth::fitBelowFloats): Moved from RenderBlock.
603         (WebCore::RenderBlock::findNextLineBreak): Uses LineWidth.
604
605 2011-04-12  Alexis Menard  <alexis.menard@openbossa.org>
606
607         Unreviewed warning fix.
608
609         MediaControlElements has been moved to html/shadow.
610
611         * WebCore.pro:
612
613 2011-04-12  Yael Aharon  <yael.aharon@nokia.com>
614
615         Reviewed by Eric Seidel.
616
617         Rename onEndChain and make it a static method.
618         https://bugs.webkit.org/show_bug.cgi?id=58403
619
620         No new tests since this is refactoring only.
621
622         * rendering/InlineFlowBox.cpp:
623         (WebCore::isLastChildForRenderer):
624         (WebCore::InlineFlowBox::determineSpacingForFlowBoxes):
625         * rendering/InlineFlowBox.h:
626
627 2011-04-12  Eric Carlson  <eric.carlson@apple.com>
628
629         Not reviewed, build fix.
630
631         Fix non-accelerated build after r83667.
632
633         * html/HTMLMediaElement.cpp:
634         (WebCore::HTMLMediaElement::mediaPlayerFirstVideoFrameAvailable): Guard call to 
635             mediaPlayerRenderingModeChanged with USE(ACCELERATED_COMPOSITING.
636
637 2011-04-12  Adrienne Walker  <enne@google.com>
638
639         Reviewed by James Robinson.
640
641         [chromium] TilingData mishandles very small texture sizes
642         https://bugs.webkit.org/show_bug.cgi?id=58364
643
644         Use zero tiles when the texture size is too small for tiling.
645
646         * platform/graphics/gpu/TilingData.cpp:
647         (WebCore::TilingData::TilingData):
648         (WebCore::TilingData::setMaxTextureSize):
649
650 2011-04-12  Csaba Osztrogonác  <ossy@webkit.org>
651
652         Unreviewed, rolling out r83634 and r83659.
653         http://trac.webkit.org/changeset/83634
654         http://trac.webkit.org/changeset/83659
655         https://bugs.webkit.org/show_bug.cgi?id=57075
656
657         It made 2 tests time out
658
659         * platform/network/qt/QNetworkReplyHandler.cpp:
660         (WebCore::QNetworkReplyWrapper::QNetworkReplyWrapper):
661         (WebCore::QNetworkReplyWrapper::~QNetworkReplyWrapper):
662         (WebCore::QNetworkReplyWrapper::receiveMetaData):
663         (WebCore::QNetworkReplyWrapper::didReceiveFinished):
664         (WebCore::QNetworkReplyHandler::QNetworkReplyHandler):
665         (WebCore::QNetworkReplyHandler::resetState):
666         (WebCore::QNetworkReplyHandler::setLoadingDeferred):
667         (WebCore::QNetworkReplyHandler::resumeDeferredLoad):
668         (WebCore::QNetworkReplyHandler::release):
669         (WebCore::QNetworkReplyHandler::finish):
670         (WebCore::QNetworkReplyHandler::sendResponseIfNeeded):
671         (WebCore::QNetworkReplyHandler::forwardData):
672         (WebCore::QNetworkReplyHandler::start):
673         * platform/network/qt/QNetworkReplyHandler.h:
674         * platform/network/qt/ResourceHandleQt.cpp:
675         (WebCore::WebCoreSynchronousLoader::resourceResponse):
676         (WebCore::WebCoreSynchronousLoader::resourceError):
677         (WebCore::WebCoreSynchronousLoader::data):
678         (WebCore::WebCoreSynchronousLoader::setReplyFinished):
679         (WebCore::WebCoreSynchronousLoader::WebCoreSynchronousLoader):
680         (WebCore::WebCoreSynchronousLoader::didReceiveResponse):
681         (WebCore::WebCoreSynchronousLoader::didReceiveData):
682         (WebCore::WebCoreSynchronousLoader::didFinishLoading):
683         (WebCore::WebCoreSynchronousLoader::didFail):
684         (WebCore::WebCoreSynchronousLoader::waitForCompletion):
685         (WebCore::ResourceHandle::loadResourceSynchronously):
686
687 2011-04-12  Sam Weinig  <sam@webkit.org>
688
689         Reviewed by Simon Fraser.
690
691         Frames prevent scrolling containing page
692         <rdar://problem/8990409>
693         https://bugs.webkit.org/show_bug.cgi?id=58392
694
695         Also fixes:
696         Should rubber-band on pages with no scrollbars
697         <rdar://problem/9034280>
698
699         * page/FrameView.cpp:
700         (WebCore::FrameView::FrameView):
701         Make the main frame rubber-band horizontally and vertically always.
702
703         * platform/ScrollTypes.h:
704         Add ScrollElasticity enum.
705
706         * platform/ScrollableArea.cpp:
707         Default to no elasticity.
708
709         (WebCore::ScrollableArea::ScrollableArea):
710         * platform/ScrollableArea.h:
711         (WebCore::ScrollableArea::setVerticalScrollElasticity):
712         (WebCore::ScrollableArea::verticalScrollElasticity):
713         (WebCore::ScrollableArea::setHorizontalScrollElasticity):
714         (WebCore::ScrollableArea::horizontalScrollElasticity):
715         Add state for horizontal and vertical elasticity.
716
717         * platform/mac/ScrollAnimatorMac.mm:
718         (WebCore::ScrollAnimatorMac::handleWheelEvent):
719         Bail out of new scrolling behavior if we can't rubber-band. By bailing before
720         accepting the wheel event, we allow the wheel event to be forwarded. We will
721         need to refine this logic to allow subframe scrolling in the future.
722
723         (WebCore::ScrollAnimatorMac::allowsVerticalStretching):
724         (WebCore::ScrollAnimatorMac::allowsHorizontalStretching):
725         Switch stretching behavior based on the ScrollableArea's elasticity.
726
727 2011-04-12  Geoffrey Garen  <ggaren@apple.com>
728
729         Not reviewed.
730
731         Try to fix the Chromium build.
732         
733         Why have one URL when you can have two at twice the price?
734
735         * platform/KURL.h:
736         (WebCore::KURL::KURL):
737         (WebCore::KURL::isHashTableDeletedValue):
738         * platform/KURLGoogle.cpp:
739         (WebCore::KURLGooglePrivate::KURLGooglePrivate):
740         * platform/KURLGooglePrivate.h: Added a GoogleURL path for KURL's hash
741         table deleted value constructor.
742
743 2011-04-12  Stephanie Lewis  <slewis@apple.com>
744
745         Reviewed by Oliver Hunt.
746         https://bugs.webkit.org/show_bug.cgi?id=58280
747         Fix a layout test by correctly comparing enums, and not adding exceptions.
748
749         * bindings/js/SerializedScriptValue.cpp:
750         (WebCore::SerializedScriptValue::create):
751         (WebCore::SerializedScriptValue::deserialize):
752         * bindings/js/SerializedScriptValue.h:
753
754 2011-04-12  Eric Carlson  <eric.carlson@apple.com>
755
756         Reviewed by Simon Fraser.
757
758         Apple movie trailers play only audio
759         https://bugs.webkit.org/show_bug.cgi?id=58339
760         <rdar://problem/9237606>
761
762         No new tests, covered by existing layout and manual tests.
763
764         * html/HTMLMediaElement.cpp:
765         (WebCore::HTMLMediaElement::mediaPlayerEngineUpdated): Do the logging before calling any functions.
766         (WebCore::HTMLMediaElement::mediaPlayerFirstVideoFrameAvailable): New, if still displaying the poster 
767             change the display mode to Video and force a style recalc so the video layer gets hooked
768             up the the render tree.
769         * html/HTMLMediaElement.h: Define new display mode, PosterWaitingForVideo, to signal that we
770             want to stop displaying the poster as soon as the first frame of video is available.
771
772         * html/HTMLVideoElement.cpp:
773         (WebCore::HTMLVideoElement::setDisplayMode): Change display mode to PosterWaitingForVideo when
774             we want to display Video but the media engines doesn't have the first frame yet.
775         * html/HTMLVideoElement.h:
776         (WebCore::HTMLVideoElement::shouldDisplayPosterImage): Update to return true when display mode
777             is PosterWaitingForVideo.
778
779         * manual-tests/media-elements/video-replaces-poster.html: Clean up bit-rot from patch changes.
780
781         * platform/graphics/MediaPlayer.cpp:
782         (WebCore::MediaPlayer::firstVideoFrameAvailable): New, passthrough from media engien to element.
783         * platform/graphics/MediaPlayer.h:
784         (WebCore::MediaPlayerClient::mediaPlayerFirstVideoFrameAvailable):
785
786         * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp:
787         (WebCore::MediaPlayerPrivateAVFoundation::MediaPlayerPrivateAVFoundation): Initialize 
788             m_haveReportedFirstVideoFrame and m_playWhenFramesAvailable.
789         (WebCore::MediaPlayerPrivateAVFoundation::play): Don't actually start playback until the first
790             frame of video has loaded, or audio will begin to play before we can show video.
791         (WebCore::MediaPlayerPrivateAVFoundation::pause): Clear m_playWhenFramesAvailable.
792         (WebCore::MediaPlayerPrivateAVFoundation::updateStates): When first frame of video is
793             available, inform elment and begin playback if it was previousl requested.
794         * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.h:
795
796         * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundationObjC.h:
797         * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundationObjC.mm:
798         (WebCore::MediaPlayerPrivateAVFoundationObjC::destroyContextVideoRenderer): Correct logging.
799         (WebCore::MediaPlayerPrivateAVFoundationObjC::createVideoLayer): Ditto.
800         (WebCore::MediaPlayerPrivateAVFoundationObjC::platformPlay): Renamed from play.
801         (WebCore::MediaPlayerPrivateAVFoundationObjC::platformPause): Rename from pause.
802
803 2011-04-12  Jian Li  <jianli@chromium.org>
804
805         Unreviewed, rolling out r83649.
806         http://trac.webkit.org/changeset/83649
807         https://bugs.webkit.org/show_bug.cgi?id=57563
808
809         This patch causes compiling errors for chromium
810
811         * platform/graphics/chromium/FontChromiumWin.cpp:
812         (WebCore::TransparencyAwareFontPainter::TransparencyAwareFontPainter::initializeForGDI):
813         (WebCore::TransparencyAwareFontPainter::TransparencyAwareFontPainter::~TransparencyAwareFontPainter):
814         (WebCore::Font::drawComplexText):
815         * platform/graphics/chromium/ImageBufferData.h:
816         * platform/graphics/chromium/LayerChromium.h:
817         * platform/graphics/chromium/LayerRendererChromium.h:
818         * platform/graphics/chromium/PlatformCanvas.cpp:
819         (WebCore::PlatformCanvas::resize):
820         * platform/graphics/chromium/PlatformCanvas.h:
821         * platform/graphics/chromium/TransparencyWin.cpp:
822         (WebCore::TransparencyWin::compositeTextComposite):
823         (WebCore::TransparencyWin::makeLayerOpaque):
824         * platform/graphics/skia/ImageBufferSkia.cpp:
825         (WebCore::ImageBuffer::ImageBuffer):
826         * platform/graphics/skia/ImageSkia.cpp:
827         (WebCore::paintSkBitmap):
828         (WebCore::Image::drawPattern):
829         * platform/graphics/skia/PlatformContextSkia.cpp:
830         (WebCore::PlatformContextSkia::PlatformContextSkia):
831         (WebCore::PlatformContextSkia::setCanvas):
832         (WebCore::PlatformContextSkia::isPrinting):
833         (WebCore::PlatformContextSkia::isNativeFontRenderingAllowed):
834         * platform/graphics/skia/PlatformContextSkia.h:
835         (WebCore::PlatformContextSkia::canvas):
836
837 2011-04-12  Enrica Casucci  <enrica@apple.com>
838
839         Reviewed by Alexey Proskuryakov.
840
841         Implement non-activating clicks to allow dragging out of a background window.
842         https://bugs.webkit.org/show_bug.cgi?id=55053
843         <rdar://problem/9042197>
844
845         * WebCore.exp.in: Added new exported method.
846
847 2011-04-12  Geoffrey Garen  <ggaren@apple.com>
848
849         Reviewed by Geoffrey Garen.
850
851         Cleaned up hash traits, and added hash traits for handles
852         https://bugs.webkit.org/show_bug.cgi?id=58381
853
854         * dom/QualifiedName.h: Use new SimpleClassHashTraits to avoid duplication.
855
856         * platform/KURL.h:
857         (WebCore::KURL::KURL):
858         (WebCore::KURL::isHashTableDeletedValue): Added explicit hash table
859         deleted value constructor, to be more explicit and enable use of
860         SimpleClassHashTraits.
861
862         * platform/KURLHash.h: Use new SimpleClassHashTraits to avoid duplication.
863
864         * platform/graphics/FontCache.cpp: Ditto.
865         * platform/network/ProtectionSpaceHash.h: Ditto.
866         * svg/properties/SVGAnimatedPropertyDescription.h: Ditto.
867
868 2011-04-12  Luiz Agostini  <luiz.agostini@openbossa.org>
869
870         Reviewed by Andreas Kling.
871
872         [Qt] QNetworkReplyHandler refactoring: remove nested event loop.
873         https://bugs.webkit.org/show_bug.cgi?id=58375
874
875         As QNAM now makes actual synchronous loads there is no need for a nested event loop
876         in ResourceHandleQt.
877
878         Moving the call for QNetworkReplyWrapper::synchronousLoad from
879         ResourceHandle::loadResourceSynchronously to QNetworkReplyHandler::start for the
880         redirections to work in synchronous requests.
881
882         * platform/network/qt/QNetworkReplyHandler.cpp:
883         (WebCore::QNetworkReplyHandler::start):
884         * platform/network/qt/QNetworkReplyHandler.h:
885         * platform/network/qt/ResourceHandleQt.cpp:
886         (WebCore::WebCoreSynchronousLoader::WebCoreSynchronousLoader):
887         (WebCore::WebCoreSynchronousLoader::didReceiveResponse):
888         (WebCore::WebCoreSynchronousLoader::didReceiveData):
889         (WebCore::WebCoreSynchronousLoader::didFinishLoading):
890         (WebCore::WebCoreSynchronousLoader::didFail):
891         (WebCore::ResourceHandle::loadResourceSynchronously):
892
893 2011-04-11  Jer Noble  <jer.noble@apple.com>
894
895         Reviewed by Simon Fraser.
896
897         REGRESSION: Vimeo fullscreen video displays incorrectly
898         https://bugs.webkit.org/show_bug.cgi?id=58291
899
900         Set the RenderFullScreen's zIndex to the max.  And make sure to override
901         a video element's specified width and height by making its full screen rules
902         important.  Also, always show the controls when a media element is in full
903         screen mode.
904
905         Test: fullscreen/video-specified-size.html
906         Test: fullscreen/full-screen-zIndex.html
907
908         * css/fullscreen.css:
909         (video:-webkit-full-screen): 
910         * html/HTMLMediaElement.cpp:
911         (WebCore::HTMLMediaElement::controls): Always show controls in full screen mode.
912         (WebCore::HTMLMediaElement::preDispatchEventHandler): Added. Handle the fullscreen
913             change event and hide or show the controls accordingly.
914         * html/HTMLMediaElement.h:
915         * rendering/RenderFullScreen.cpp:
916         (RenderFullScreen::createFullScreenStyle): Set the zIndex to INT_MAX and use a 
917             vertical flexbox instead of a horizontal one.
918
919 2011-04-12  Chris Marrin  <cmarrin@apple.com>
920
921         Reviewed by Simon Fraser.
922
923         Page tears and stutters in WebKit2 when page is > 2048 pixels wide
924         https://bugs.webkit.org/show_bug.cgi?id=58330
925
926         Added API to GraphicsLayer to disable switching to tiled layers. This is 
927         set in the nonCompositedContentLayer in WK2, causing that layer to never
928         switch to tiles and avoiding the asynchronous update of the content during
929         scroll.
930
931         * platform/graphics/ca/GraphicsLayerCA.cpp:
932             Implement setAllowTiledLayer() to simulate a SizeChanged action to 
933             properly switch between tiled and untiled layer.
934         * platform/graphics/ca/GraphicsLayerCA.h:
935
936 2011-04-12  Alok Priyadarshi  <alokp@chromium.org>
937
938         Reviewed by James Robinson.
939
940         Remove dependency on chromium skia::PlatformCanvas
941         https://bugs.webkit.org/show_bug.cgi?id=57563
942
943         This patch does not change any functionality, just the type of object skia::PlatformCanvas -> SkCanvas.
944         The object is still being created by a factory method skia::CreateBitmapCanvas defined in Chromium.
945         We will eventually define an API that every port using skia will define.
946
947         * platform/graphics/chromium/FontChromiumWin.cpp:
948         (WebCore::TransparencyAwareFontPainter::TransparencyAwareFontPainter::initializeForGDI):
949         (WebCore::TransparencyAwareFontPainter::TransparencyAwareFontPainter::~TransparencyAwareFontPainter):
950         (WebCore::Font::drawComplexText):
951         * platform/graphics/chromium/ImageBufferData.h:
952         * platform/graphics/chromium/LayerChromium.h:
953         * platform/graphics/chromium/LayerRendererChromium.h:
954         * platform/graphics/chromium/PlatformCanvas.cpp:
955         (WebCore::PlatformCanvas::resize):
956         * platform/graphics/chromium/PlatformCanvas.h:
957         * platform/graphics/chromium/TransparencyWin.cpp:
958         (WebCore::TransparencyWin::compositeTextComposite):
959         (WebCore::TransparencyWin::makeLayerOpaque):
960         * platform/graphics/skia/ImageBufferSkia.cpp:
961         (WebCore::ImageBuffer::ImageBuffer):
962         * platform/graphics/skia/ImageSkia.cpp:
963         (WebCore::paintSkBitmap):
964         (WebCore::Image::drawPattern):
965         * platform/graphics/skia/PlatformContextSkia.cpp:
966         (WebCore::PlatformContextSkia::PlatformContextSkia):
967         (WebCore::PlatformContextSkia::setCanvas):
968         (WebCore::PlatformContextSkia::isNativeFontRenderingAllowed):
969         * platform/graphics/skia/PlatformContextSkia.h:
970         (WebCore::PlatformContextSkia::canvas):
971         (WebCore::PlatformContextSkia::printing):
972         (WebCore::PlatformContextSkia::setPrinting):
973
974 2011-04-11  Stephanie Lewis  <slewis@apple.com>
975
976         Reviewed by Oliver Hunt.
977
978         https://bugs.webkit.org/show_bug.cgi?id=58280
979         <rdar://problem/9252824> javascript in an inconsistent state due to serialization returning an un-handled exception
980         Currently serialization and deserialization can throw javascript exceptions.  Since SerializedScriptValue is called in
981         several places that do not always involve direct calls into javascript have the functions return an error code and the callers
982         decide whether or not to throw exceptions.
983
984         Don't allow SerializedScriptValue to attempt to serialize objects that inherit from JSNavigator.h.  Walking that object creates
985         additional objects which eventually causes serialization to end up throwing a stack overflow error.  Instead fail immediately.
986
987         Untangle header includes.  SerializedScriptValue was inheriting ScriptValue.h, but not using it.  Since ScriptValue depends on
988         SerializedScriptValue this could lead to a circular header dependency.
989
990         No change in functionality, covered by current tests
991
992         * WebCore.exp.in:
993         * bindings/js/JSMessageEventCustom.cpp:
994         (WebCore::JSMessageEvent::initMessageEvent):
995         * bindings/js/ScriptValue.cpp:
996         (WebCore::ScriptValue::serialize):
997         (WebCore::ScriptValue::deserialize):
998         * bindings/js/ScriptValue.h:
999         * bindings/js/SerializedScriptValue.cpp:
1000         (WebCore::CloneSerializer::serialize):
1001         (WebCore::CloneSerializer::dumpIfTerminal):
1002         (WebCore::CloneDeserializer::deserialize):
1003         (WebCore::SerializedScriptValue::create):
1004         (WebCore::SerializedScriptValue::deserialize):
1005         (WebCore::SerializedScriptValue::maybeThrowExceptionIfSerializationFailed):
1006         (WebCore::SerializedScriptValue::serializationDidCompleteSuccessfully):
1007         * bindings/js/SerializedScriptValue.h:
1008
1009         * bindings/js/JSWorkerContextBase.cpp: header include fix
1010         * loader/FrameLoader.h: header include fix
1011         * page/Frame.cpp: header include fix
1012
1013 2011-03-28  Adam Barth  <abarth@webkit.org>
1014
1015         Reviewed by Kenneth Russell.
1016
1017         Move libtess from WebCore/thirdparty to ThirdParty
1018         https://bugs.webkit.org/show_bug.cgi?id=57288
1019
1020         * WebCore.gyp/WebCore.gyp:
1021             - Add libtess as a legit dependency.
1022         * WebCore.gypi:
1023             - Remove libtess files from the gypi.
1024         * thirdparty/glu: Removed.
1025
1026 2011-04-12  Ryosuke Niwa  <rniwa@webkit.org>
1027
1028         Reviewed by David Hyatt.
1029
1030         Bundle w and tmpW in findNextLineBreak together as a class
1031         https://bugs.webkit.org/show_bug.cgi?id=58362
1032
1033         Renamed w, tempW, and width in findNextLineBreak to committedWidth, uncommittedWidth,
1034         and availableWidth respectively. Also bundled committedWidth and uncommittedWith as a class
1035         named LineWidth.
1036
1037         * rendering/RenderBlockLineLayout.cpp:
1038         (WebCore::LineWidth::LineWidth): Added.
1039         (WebCore::LineWidth::currentWidth): Added; returns the sum of committed and uncommitted width.
1040         (WebCore::LineWidth::uncommittedWidth): Added.
1041         (WebCore::LineWidth::committedWidth): Added.
1042         (WebCore::LineWidth::addUncommittedWidth): Added; adds the specified width to the uncommitted width.
1043         (WebCore::LineWidth::commit): Added; commits the current width and clears the uncommitted width.
1044         (WebCore::RenderBlock::findNextLineBreak): Uses LineWidth.
1045
1046 2011-04-12  Yael Aharon  <yael.aharon@nokia.com>
1047
1048         Reviewed by Eric Seidel.
1049
1050         REGRESSION(r82419): extra border in t0805-c5519-ibrdr-r-00-a.html
1051         https://bugs.webkit.org/show_bug.cgi?id=57459
1052
1053         Slightly change the way we decide if a InlineFlowBox is the last box for its renderer.
1054         We include the border in that box under these conditions:
1055         (1) The next line was not created, or it is constructed. We check the previous line for rtl.
1056         (2) The logicallyLastRun is not a descendant of this renderer.
1057         (3) The logicallyLastRun is a descendant of this renderer, but it is the last child of this renderer and it does not wrap to the next line.
1058         I added the tests from bug 47210, because now the draw the borders correctly.
1059
1060         Tests: fast/borders/bidi-002.html
1061                fast/borders/bidi-004.html
1062                fast/borders/bidi-009a.html
1063
1064         * rendering/InlineFlowBox.cpp:
1065         (WebCore::InlineFlowBox::onEndChain):
1066         (WebCore::isAnsectorAndWithinBlock):
1067         (WebCore::InlineFlowBox::determineSpacingForFlowBoxes):
1068         * rendering/InlineFlowBox.h:
1069         * rendering/RenderBlock.h:
1070         * rendering/RenderBlockLineLayout.cpp:
1071         (WebCore::RenderBlock::constructLine):
1072         (WebCore::RenderBlock::layoutInlineChildren):
1073
1074 2011-04-12  Geoffrey Garen  <ggaren@apple.com>
1075
1076         Reviewed by Sam Weinig.
1077
1078         Cleaned up some Vector traits, and added missing Vector traits for handles
1079         https://bugs.webkit.org/show_bug.cgi?id=58372
1080
1081         * platform/graphics/BitmapImage.h: Added a FIXME because the current
1082         Vector traits for FrameData are logically incorrect, but I couldn't find
1083         a place where this currently results in bad behavior, and it's not
1084         immediately obvious what the right solution is.
1085
1086 2011-04-12  Dimitri Glazkov  <dglazkov@chromium.org>
1087
1088         Reviewed by Eric Seidel.
1089
1090         Move MediaControlElements to html/shadow.
1091         https://bugs.webkit.org/show_bug.cgi?id=58347
1092
1093         Mechanical move of the files.
1094
1095         * Android.mk: Updated the build file.
1096         * CMakeLists.txt: Ditto.
1097         * GNUmakefile.list.am: Ditto.
1098         * WebCore.gypi: Ditto.
1099         * WebCore.pro: Ditto.
1100         * WebCore.vcproj/WebCore.vcproj: Ditto.
1101         * WebCore.xcodeproj/project.pbxproj: Ditto, also ran sort-XCode-project-files.
1102         * html/shadow/MediaControlElements.cpp: Copied from Source/WebCore/rendering/MediaControlElements.cpp.
1103         (WebCore::MediaControlFullscreenButtonElement::defaultEventHandler):
1104         * html/shadow/MediaControlElements.h: Copied from Source/WebCore/rendering/MediaControlElements.h.
1105         * rendering/MediaControlElements.cpp: Removed.
1106         * rendering/MediaControlElements.h: Removed.
1107         * rendering/RenderingAllInOne.cpp: Removed the files that were moved.
1108
1109 2011-04-12  Luiz Agostini  <luiz.agostini@openbossa.org>
1110
1111         Reviewed by Andreas Kling.
1112
1113         [Qt] QNetworkReplyHandler refactoring: signal queue
1114         https://bugs.webkit.org/show_bug.cgi?id=57075
1115
1116         The idea is to make all signals that come from the QNetworkReply to pass through a queue and to
1117         stop that queue when loading is deferred. This way almost all the deferred logic can be removed
1118         from QNetworkReplyHandler class and encapsulated in its own class.
1119
1120         To stop the queue during wrapper methods execution avoids stacking handler methods over wrapper
1121         methods. Because of this there is no chance for the wrapper to be destroyed inside one of its methods.
1122         This together with empting the queue at wrapper destruction time makes sure that the handler will
1123         not receive calls from a dead wrapper.
1124
1125         The new class is named QNetworkReplyHandlerCallQueue.
1126
1127         * platform/network/qt/QNetworkReplyHandler.cpp:
1128         (WebCore::QNetworkReplyHandlerCallQueue::QNetworkReplyHandlerCallQueue):
1129         (WebCore::QNetworkReplyHandlerCallQueue::push):
1130         (WebCore::QNetworkReplyHandlerCallQueue::lock):
1131         (WebCore::QNetworkReplyHandlerCallQueue::unlock):
1132         (WebCore::QNetworkReplyHandlerCallQueue::setDeferSignals):
1133         (WebCore::QueueLocker::QueueLocker):
1134         (WebCore::QueueLocker::~QueueLocker):
1135         (WebCore::QNetworkReplyWrapper::QNetworkReplyWrapper):
1136         (WebCore::QNetworkReplyWrapper::~QNetworkReplyWrapper):
1137         (WebCore::QNetworkReplyWrapper::receiveMetaData):
1138         (WebCore::QNetworkReplyWrapper::readyRead):
1139         (WebCore::QNetworkReplyWrapper::didReceiveFinished):
1140         (WebCore::QNetworkReplyHandler::QNetworkReplyHandler):
1141         (WebCore::QNetworkReplyHandler::resetState):
1142         (WebCore::QNetworkReplyHandler::release):
1143         (WebCore::QNetworkReplyHandler::finish):
1144         (WebCore::QNetworkReplyHandler::sendResponseIfNeeded):
1145         (WebCore::QNetworkReplyHandler::forwardData):
1146         (WebCore::QNetworkReplyHandler::start):
1147         (WebCore::QNetworkReplyHandler::synchronousLoad):
1148         * platform/network/qt/QNetworkReplyHandler.h:
1149         (WebCore::QNetworkReplyHandlerCallQueue::deferSignals):
1150         (WebCore::QNetworkReplyHandlerCallQueue::clear):
1151         (WebCore::QNetworkReplyWrapper::synchronousLoad):
1152         (WebCore::QNetworkReplyHandler::setLoadingDeferred):
1153         * platform/network/qt/ResourceHandleQt.cpp:
1154         (WebCore::ResourceHandle::loadResourceSynchronously):
1155
1156 2011-04-12  David Hyatt  <hyatt@apple.com>
1157
1158         Reviewed by Dan Bernstein.
1159
1160         https://bugs.webkit.org/show_bug.cgi?id=58176
1161         
1162         Inline replaced elements following positioned elements on lines are not rendered. Make sure the
1163         logic for skipping run construction in appendRunsForObject matches the new logic that I added
1164         to findNextLineBreak. If they don't match up, you risk confusing the run construction code and
1165         causing it to not make runs for objects that follow the positioned object on the line.
1166
1167         Added fast/inline/positioned-object-between-replaced-elements.html
1168         
1169         * rendering/RenderBlockLineLayout.cpp:
1170         (WebCore::RenderBlock::appendRunsForObject):
1171
1172 2011-04-12  Alice Liu  <alice.liu@apple.com>
1173
1174         Reviewed by Sam Weinig.
1175
1176         https://bugs.webkit.org/show_bug.cgi?id=58292
1177         Provide new setting to allow site icon loading despite disabling automatic image loading in general.
1178
1179         Test: http/tests/misc/favicon-loads-with-icon-loading-override.html
1180
1181         * WebCore.exp.in: Added export symbol
1182         * loader/FrameLoader.cpp:
1183         (WebCore::FrameLoader::startIconLoader): Check new setting before deciding that site icon images shouldn't be loaded.
1184         * page/Settings.cpp:
1185         (WebCore::Settings::Settings): Add initializer for new setting
1186         (WebCore::Settings::setLoadsSiteIconsIgnoringImageLoadingSetting): Add setter for new setting.
1187         * page/Settings.h: Explain nuances regarding loadsImagesAutomatically setting.
1188         (WebCore::Settings::loadsSiteIconsIgnoringImageLoadingSetting): Added getter.
1189
1190 2011-04-12  Ryosuke Niwa  <rniwa@webkit.org>
1191
1192         Reviewed by Eric Seidel.
1193
1194         Move StyleChange and other global functions from ApplyStyleCommand to EditingStyle
1195         https://bugs.webkit.org/show_bug.cgi?id=55974
1196
1197         Moved StyleChange, getIdentifierValue, and legacyFontSizeFromCSSValue from ApplyStyleCommand
1198         to EditingStyle. Also moved reconcileTextDecorationProperties, getIdentifierValue,
1199         setTextDecorationProperty, isCSSValueLength, legacyFontSizeFromCSSValue, extractTextStyles,
1200         diffTextDecorations, fontWeightIsBold, getTextAlignment, and getPropertiesNotIn.
1201
1202         Because of this move, getPropertiesNotIn is no longer visible outside of EditingStyle.cpp
1203
1204         * editing/ApplyStyleCommand.cpp:
1205         * editing/ApplyStyleCommand.h:
1206         * editing/EditingStyle.cpp:
1207         (WebCore::reconcileTextDecorationProperties):
1208         (WebCore::StyleChange::StyleChange):
1209         (WebCore::setTextDecorationProperty):
1210         (WebCore::getRGBAFontColor):
1211         (WebCore::StyleChange::extractTextStyles):
1212         (WebCore::diffTextDecorations):
1213         (WebCore::fontWeightIsBold):
1214         (WebCore::getTextAlignment):
1215         (WebCore::getPropertiesNotIn):
1216         (WebCore::getIdentifierValue):
1217         (WebCore::isCSSValueLength):
1218         (WebCore::legacyFontSizeFromCSSValue):
1219         * editing/EditingStyle.h:
1220         (WebCore::StyleChange::cssStyle):
1221         (WebCore::StyleChange::applyBold):
1222         (WebCore::StyleChange::applyItalic):
1223         (WebCore::StyleChange::applyUnderline):
1224         (WebCore::StyleChange::applyLineThrough):
1225         (WebCore::StyleChange::applySubscript):
1226         (WebCore::StyleChange::applySuperscript):
1227         (WebCore::StyleChange::applyFontColor):
1228         (WebCore::StyleChange::applyFontFace):
1229         (WebCore::StyleChange::applyFontSize):
1230         (WebCore::StyleChange::fontColor):
1231         (WebCore::StyleChange::fontFace):
1232         (WebCore::StyleChange::fontSize):
1233         (WebCore::StyleChange::operator==):
1234         (WebCore::StyleChange::operator!=):
1235
1236 2011-04-12  Diego Gonzalez  <diegohcg@webkit.org>
1237
1238         Reviewed by Kenneth Rohde Christiansen.
1239
1240         [Qt] Better padding for inputs and comboxes in mobile theme
1241         https://bugs.webkit.org/show_bug.cgi?id=58248
1242
1243         * platform/qt/RenderThemeQt.cpp:
1244         (WebCore::RenderThemeQt::setButtonPadding):
1245         (WebCore::RenderThemeQt::adjustTextFieldStyle):
1246         (WebCore::RenderThemeQt::paintTextField):
1247         (WebCore::RenderThemeQt::adjustMenuListStyle):
1248
1249 2011-04-11  Abhishek Arya  <inferno@chromium.org>
1250
1251         Reviewed by Dave Hyatt.
1252
1253         Replace insertChildNode with addChild in handleRunIn's reparenting
1254         of inlineRunIn to currBlock.
1255         https://bugs.webkit.org/show_bug.cgi?id=58228
1256
1257         Use addChild instead of insertChildNode since it handles 
1258         correct placement of the children, esp where we cannot insert
1259         anything before the first child. e.g. details tag requires that its
1260         first child be a summary child and won't be able to remove child if
1261         that is not the case.
1262
1263         Test: fast/runin/runin-reparent-crash.html
1264
1265         * rendering/RenderBlock.cpp:
1266         (WebCore::RenderBlock::handleRunInChild):
1267
1268 2011-04-12  Chris Fleizach  <cfleizach@apple.com>
1269
1270         Unreviewed. Fixing Leopard build.
1271
1272         REGRESSION: WK2: misspelled AX attributes no longer returned from text fields
1273         https://bugs.webkit.org/show_bug.cgi?id=58304
1274
1275         checkTextOfParagraph is not available on Leopard. That code needs to be conditionalized with USE(UNIFIED_TEXT_CHECKING).
1276
1277         * accessibility/mac/AccessibilityObjectWrapper.mm:
1278         (AXAttributeStringSetSpelling):
1279
1280 2011-04-12  Mario Sanchez Prada  <msanchez@igalia.com>
1281
1282         Unreviewed. Added missing files to GNUmakefile.list.am.
1283
1284         * GNUmakefile.list.am: Added IDBLevelDBBackingStore.[h|cpp].
1285
1286 2011-04-12  Cris Neckar  <cdn@chromium.org>
1287
1288         Reviewed by Nikolas Zimmermann.
1289
1290         Add handling for non-svg inline text boxes in text box lists.
1291         https://bugs.webkit.org/show_bug.cgi?id=57933
1292
1293         Test: svg/text/svg-rtl-text-crash.html
1294
1295         * rendering/svg/RenderSVGInlineText.cpp:
1296         (WebCore::RenderSVGInlineText::positionForPoint):
1297         * rendering/svg/SVGInlineFlowBox.cpp:
1298         (WebCore::SVGInlineFlowBox::computeTextMatchMarkerRectForRenderer):
1299         * rendering/svg/SVGRenderTreeAsText.cpp:
1300         (WebCore::writeSVGInlineTextBoxes):
1301         * rendering/svg/SVGRootInlineBox.cpp:
1302         (WebCore::SVGRootInlineBox::closestLeafChildForPosition):
1303         (WebCore::reverseInlineBoxRangeAndValueListsIfNeeded):
1304         * rendering/svg/SVGTextQuery.cpp:
1305         (WebCore::SVGTextQuery::collectTextBoxesInFlowBox):
1306
1307 2011-04-12  Mario Sanchez Prada  <msanchez@igalia.com>
1308
1309         Reviewed by Chris Fleizach.
1310
1311         [GTK] Expose menu items and menus as children of a menu bar
1312         https://bugs.webkit.org/show_bug.cgi?id=56659
1313
1314         Ensure menu items get exposed when they're children of menu bars.
1315
1316         * accessibility/AccessibilityRenderObject.cpp:
1317         (WebCore::AccessibilityRenderObject::determineAriaRoleAttribute):
1318         Consider menu bars as potential parent objects for menu items.
1319
1320 2011-04-12  Pavel Feldman  <pfeldman@google.com>
1321
1322         Reviewed by Yury Semikhatsky.
1323
1324         Web Inspector: remove scriptWorldType from the protocol.
1325         https://bugs.webkit.org/show_bug.cgi?id=58324
1326
1327         * inspector/Inspector.json:
1328         * inspector/InspectorDebuggerAgent.cpp:
1329         (WebCore::InspectorDebuggerAgent::didParseSource):
1330         * inspector/ScriptDebugListener.h:
1331         (WebCore::ScriptDebugListener::~ScriptDebugListener):
1332         * inspector/front-end/DebuggerModel.js:
1333         (WebInspector.DebuggerModel.prototype._parsedScriptSource):
1334         (WebInspector.DebuggerDispatcher.prototype.scriptParsed):
1335         * inspector/front-end/Script.js:
1336         (WebInspector.Script):
1337         * inspector/front-end/ScriptsPanel.js:
1338         * inspector/front-end/SourceFile.js:
1339         (WebInspector.SourceFile):
1340
1341 2011-04-11  Dimitri Glazkov  <dglazkov@chromium.org>
1342
1343         Reviewed by Eric Carlson.
1344
1345         Should MediaControls::changedNetworkState fiddle with Fullscreen controls?
1346         https://bugs.webkit.org/show_bug.cgi?id=58163
1347
1348         Covered by existing tests and manual-tests/media-controls.html.
1349
1350         * html/shadow/MediaControls.cpp:
1351         (WebCore::MediaControls::reset): Moved fullscreen showing/hiding here.
1352         (WebCore::MediaControls::changedNetworkState): ... from here.
1353
1354 2011-04-12  Ilya Tikhonovsky  <loislo@chromium.org>
1355
1356         Reviewed by Pavel Feldman.
1357
1358         Web Inspector: remove unnecessary method InspectorAgent.didEvaluateForTestInFrontend.
1359         https://bugs.webkit.org/show_bug.cgi?id=58335
1360
1361         It was the method for Inspector layout tests.
1362         We can use RuntimeAgent.evaluate instead.
1363
1364         * inspector/Inspector.json:
1365         * inspector/InspectorAgent.cpp:
1366         * inspector/InspectorAgent.h:
1367         * inspector/InspectorController.cpp:
1368         (WebCore::InspectorController::connectFrontend):
1369         * inspector/front-end/TestController.js:
1370         (WebInspector.TestController.prototype.notifyDone):
1371
1372 2011-04-12  Philippe Normand  <pnormand@igalia.com>
1373
1374         Reviewed by Martin Robinson.
1375
1376         [GStreamer] some public callbacks remain
1377         https://bugs.webkit.org/show_bug.cgi?id=58307
1378
1379         Cleanup of the player public/private APIs. Moving the GstMessage
1380         handling code inside of the player allowed some APIs to move to
1381         the private scope of the class.
1382
1383         No new tests, this patch is a cleanup and should not affect
1384         current tests coverage.
1385
1386         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
1387         (WebCore::mediaPlayerPrivateMessageCallback):
1388         (WebCore::mediaPlayerPrivateSourceChangedCallback):
1389         (WebCore::mediaPlayerPrivateVolumeChangedCallback):
1390         (WebCore::mediaPlayerPrivateMuteChangedCallback):
1391         (WebCore::mediaPlayerPrivateRepaintCallback):
1392         (WebCore::MediaPlayerPrivateGStreamer::playbackPosition):
1393         (WebCore::MediaPlayerPrivateGStreamer::currentTime):
1394         (WebCore::MediaPlayerPrivateGStreamer::seek):
1395         (WebCore::MediaPlayerPrivateGStreamer::setRate):
1396         (WebCore::MediaPlayerPrivateGStreamer::handleMessage):
1397         (WebCore::MediaPlayerPrivateGStreamer::sourceChanged):
1398         (WebCore::MediaPlayerPrivateGStreamer::triggerRepaint):
1399         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h:
1400
1401 2011-04-12  Philippe Normand  <pnormand@igalia.com>
1402
1403         Reviewed by Martin Robinson.
1404
1405         [GStreamer] advertize HTTP Live Streaming mime-type
1406         https://bugs.webkit.org/show_bug.cgi?id=58318
1407
1408         Register the hls mime-type in the internal cache if found in the
1409         typefind factories.
1410
1411         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
1412         (WebCore::mimeTypeCache):
1413
1414 2011-04-11  MORITA Hajime  <morrita@google.com>
1415
1416         Reviewed by Ryosuke Niwa.
1417         
1418         RenderIndicator and ShadowBlockElement are no longer used.
1419         https://bugs.webkit.org/show_bug.cgi?id=58277
1420
1421         Removed RenderIndicator and ShadowBlockElement.
1422         
1423         No new tests. Just removed unused code.
1424
1425         * CMakeLists.txt:
1426         * GNUmakefile.list.am:
1427         * WebCore.gypi:
1428         * WebCore.pro:
1429         * WebCore.vcproj/WebCore.vcproj:
1430         * WebCore.xcodeproj/project.pbxproj:
1431         * rendering/RenderIndicator.cpp: Removed.
1432         * rendering/RenderIndicator.h: Removed.
1433         * rendering/RenderMeter.h:
1434         * rendering/RenderingAllInOne.cpp:
1435         * rendering/ShadowElement.cpp:
1436         * rendering/ShadowElement.h:
1437
1438 2011-04-12  Csaba Osztrogonác  <ossy@webkit.org>
1439
1440         Reviewed by Benjamin Poulain.
1441
1442         fast/css/dashboard-regions-attr-crash.html asserts
1443         https://bugs.webkit.org/show_bug.cgi?id=58233
1444
1445         Move DASHBOARD_SUPPORT feature detection from features.pri to CodeGenerators.pri
1446         not to generate incorrect properties into CSSPropertyNames.h.
1447
1448         * CodeGenerators.pri:
1449         * features.pri:
1450
1451 2011-04-12  Chris Fleizach  <cfleizach@apple.com>
1452
1453         Reviewed by Dan Bernstein.
1454
1455         REGRESSION: WK2: misspelled AX attributes no longer returned from text fields
1456         https://bugs.webkit.org/show_bug.cgi?id=58304
1457
1458         checkSpellingOfString is no longer implemented in WK2. Accessibility needs to change to use
1459         checkTextOfParagraph in order to retrieve misspelled ranges.
1460
1461         Existing tests cover this functionality.
1462
1463         * accessibility/mac/AccessibilityObjectWrapper.mm:
1464         (AXAttributeStringSetSpelling):
1465
1466 2011-04-12  Sergio Villar Senin  <svillar@igalia.com>
1467
1468         Reviewed by Martin Robinson.
1469
1470         [GTK] Remove m_idleHandler from ResourceHandleSoup
1471         https://bugs.webkit.org/show_bug.cgi?id=58319
1472
1473         The m_idleHandler attribute is no longer used in ResourceHandleSoup.
1474         No new tests needed, no functionality change.
1475
1476         * platform/network/ResourceHandleInternal.h:
1477         (WebCore::ResourceHandleInternal::ResourceHandleInternal):
1478         * platform/network/soup/ResourceHandleSoup.cpp:
1479         (WebCore::ResourceHandleInternal::~ResourceHandleInternal):
1480
1481 2011-04-12  Andrey Adaikin  <aandrey@google.com>
1482
1483         Reviewed by Yury Semikhatsky.
1484
1485         Web Inspector: Breakpoints and execution line decoration should stay in place if the edited line is not whitespace
1486         https://bugs.webkit.org/show_bug.cgi?id=58314
1487
1488         * inspector/front-end/SourceFrame.js:
1489         (WebInspector.SourceFrame.prototype._lineNumberAfterEditing):
1490
1491 2011-04-11  Pavel Podivilov  <podivilov@chromium.org>
1492
1493         Reviewed by Pavel Feldman.
1494
1495         Web Inspector: move shortcut handlers from SourceFrame to TextViewer.
1496         https://bugs.webkit.org/show_bug.cgi?id=58238
1497
1498         Commit/cancel editing functionality is common for all resource types, and it deals with TextViewer state.
1499
1500         * inspector/front-end/SourceFrame.js:
1501         (WebInspector.SourceFrame):
1502         (WebInspector.SourceFrame.prototype.isContentEditable):
1503         (WebInspector.SourceFrame.prototype._createTextViewer):
1504         (WebInspector.SourceFrame.prototype.commitEditing.didEditContent):
1505         (WebInspector.SourceFrame.prototype.commitEditing):
1506         (WebInspector.SourceFrame.prototype.cancelEditing):
1507         * inspector/front-end/TextViewer.js:
1508         (WebInspector.TextViewer.prototype._doubleClick):
1509         (WebInspector.TextViewer.prototype._registerShortcuts):
1510         (WebInspector.TextViewer.prototype._handleKeyDown):
1511         (WebInspector.TextViewer.prototype._commitEditing.didCommitEditing):
1512         (WebInspector.TextViewer.prototype._commitEditing):
1513         (WebInspector.TextViewer.prototype._cancelEditing):
1514         (WebInspector.TextViewerDelegate.prototype.endEditing):
1515         (WebInspector.TextViewerDelegate.prototype.commitEditing):
1516         (WebInspector.TextViewerDelegate.prototype.cancelEditing):
1517
1518 2011-04-12  Pavel Feldman  <pfeldman@google.com>
1519
1520         Reviewed by Yury Semikhatsky.
1521
1522         Web Inspector: cookies view is empty even for sites with cookies.
1523         https://bugs.webkit.org/show_bug.cgi?id=58316
1524
1525         Test: http/tests/inspector/resource-tree-model.html
1526
1527         * inspector/front-end/ResourceTreeModel.js:
1528         (WebInspector.ResourceTreeModel.prototype._callForFrameResources):
1529
1530 2011-04-11  Stephen White  <senorblanco@chromium.org>
1531
1532         Reviewed by James Robinson.
1533
1534         [chromium] GPU-accelerated canvas-to-canvas drawImage is incorrect.
1535         https://bugs.webkit.org/show_bug.cgi?id=58258
1536
1537         When one accelerated canvas is drawn to another via drawImage(), if the
1538         prior call in the source canvas was non-accelerated, the 
1539         hardware canvas is not up-to-date, and the results will be incorrect.
1540         Fixed by calling prepareForHardwareDraw() on the source context.
1541
1542         Test: fast/canvas/canvas-to-canvas.html
1543
1544         * platform/graphics/skia/ImageBufferSkia.cpp:
1545         (WebCore::ImageBuffer::draw):
1546
1547 2011-04-12  Mikhail Naganov  <mnaganov@chromium.org>
1548
1549         Reviewed by Pavel Feldman.
1550
1551         Web Inspector: [Chromium] Add some more tests for detailed heap snapshots UI.
1552         https://bugs.webkit.org/show_bug.cgi?id=58146
1553
1554         Tests: inspector/profiler/detailed-heapshots-comparison-expansion-preserved-when-sorting.html
1555                inspector/profiler/detailed-heapshots-comparison-show-all.html
1556                inspector/profiler/detailed-heapshots-comparison-show-next.html
1557                inspector/profiler/detailed-heapshots-comparison-shown-node-count-preserved-when-sorting.html
1558                inspector/profiler/detailed-heapshots-comparison-sorting.html
1559                inspector/profiler/detailed-heapshots-containment-shown-node-count-preserved-when-sorting.html
1560                inspector/profiler/detailed-heapshots-dominators-expansion-preserved-when-sorting.html
1561                inspector/profiler/detailed-heapshots-dominators-show-all.html
1562                inspector/profiler/detailed-heapshots-dominators-show-next.html
1563                inspector/profiler/detailed-heapshots-dominators-shown-node-count-preserved-when-sorting.html
1564                inspector/profiler/detailed-heapshots-dominators-sorting.html
1565                inspector/profiler/detailed-heapshots-summary-shown-node-count-preserved-when-sorting.html
1566
1567         * inspector/front-end/DetailedHeapshotView.js:
1568         (WebInspector.HeapSnapshotDiffDataGrid):
1569
1570 2011-04-12  Ilya Tikhonovsky  <loislo@chromium.org>
1571
1572         Reviewed by Yury Semikhatsky.
1573
1574         Web Inspector: there was incorrect value of id property of responses for malformed json-rpc 2.0 requests.
1575         https://bugs.webkit.org/show_bug.cgi?id=58305
1576
1577         It was 0 if the message is not a json object or it has no id property. But according to spec it must be null.
1578
1579         * inspector/CodeGeneratorInspector.pm:
1580
1581 2011-04-11  Pavel Podivilov  <podivilov@chromium.org>
1582
1583         Reviewed by Pavel Feldman.
1584
1585         Web Inspector: [chromium] script formatting doesn't work when chromium is built with debug_devtools=1.
1586         https://bugs.webkit.org/show_bug.cgi?id=58232
1587
1588         * WebCore.gypi:
1589
1590 2011-04-12  Pavel Podivilov  <podivilov@chromium.org>
1591
1592         Reviewed by Pavel Feldman.
1593
1594         Web Inspector: REGRESSION: Most resources in the Network panel show a blank panel when clicked.
1595         https://bugs.webkit.org/show_bug.cgi?id=58273
1596
1597         * inspector/front-end/SourceFrame.js:
1598         (WebInspector.SourceFrame):
1599         (WebInspector.SourceFrame.prototype.get visible):
1600         (WebInspector.SourceFrame.prototype.set visible):
1601         (WebInspector.SourceFrame.prototype.show):
1602         (WebInspector.SourceFrame.prototype.hide):
1603         (WebInspector.SourceFrame.prototype.detach):
1604         (WebInspector.SourceFrame.prototype._ensureContentLoaded):
1605         (WebInspector.SourceFrame.prototype.markDiff):
1606         (WebInspector.SourceFrame.prototype.addMessage):
1607         (WebInspector.SourceFrame.prototype.clearMessages):
1608         (WebInspector.SourceFrame.prototype.get scrollTop):
1609         (WebInspector.SourceFrame.prototype.set scrollTop):
1610         (WebInspector.SourceFrame.prototype.highlightLine):
1611         (WebInspector.SourceFrame.prototype._clearLineHighlight):
1612         (WebInspector.SourceFrame.prototype._initializeTextViewer):
1613         (WebInspector.SourceFrame.prototype.performSearch):
1614         (WebInspector.SourceFrame.prototype.searchCanceled):
1615         (WebInspector.SourceFrame.prototype._jumpToSearchResult):
1616         (WebInspector.SourceFrame.prototype.setExecutionLine):
1617         (WebInspector.SourceFrame.prototype.clearExecutionLine):
1618         (WebInspector.SourceFrame.prototype.resize):
1619
1620 2011-04-12  Pavel Feldman  <pfeldman@google.com>
1621
1622         Reviewed by Yury Semikhatsky.
1623
1624         Web Inspector: document runtime agent, share remote object definition between domains.
1625         https://bugs.webkit.org/show_bug.cgi?id=58246
1626
1627         * inspector/Inspector.json:
1628
1629 2011-04-12  Pavel Feldman  <pfeldman@google.com>
1630
1631         Reviewed by Yury Semikhatsky.
1632
1633         Web Inspector: document console domain, support cross-domain type references.
1634         https://bugs.webkit.org/show_bug.cgi?id=58240
1635
1636         * inspector/ConsoleMessage.cpp:
1637         (WebCore::messageSourceValue):
1638         (WebCore::messageTypeValue):
1639         (WebCore::messageLevelValue):
1640         (WebCore::ConsoleMessage::addToFrontend):
1641         * inspector/Inspector.json:
1642         * inspector/ScriptCallFrame.cpp:
1643         (WebCore::ScriptCallFrame::buildInspectorObject):
1644         * inspector/front-end/ConsoleView.js:
1645         (WebInspector.ConsoleView.prototype._registerConsoleDomainDispatcher.dispatcher.messageAdded):
1646         (WebInspector.ConsoleMessage):
1647         (WebInspector.ConsoleMessage.prototype._populateStackTraceTreeElement):
1648         (WebInspector.ConsoleMessage.prototype.isEqual):
1649         * inspector/front-end/NetworkManager.js:
1650         (WebInspector.NetworkDispatcher.prototype.requestWillBeSent):
1651         * inspector/generate-inspector-idl:
1652         * page/Console.h:
1653
1654 2011-04-06  Philippe Normand  <pnormand@igalia.com>
1655
1656         Reviewed by Martin Robinson.
1657
1658         [GStreamer] RTSP playback broken
1659         https://bugs.webkit.org/show_bug.cgi?id=56930
1660
1661         Rely on {audio,video}-changed playbin2 signals instead of the
1662         -tags-changed signals because some media don't provide tags and
1663         then can trick the media-player to not paint video, for instance.
1664
1665         Also trigger a video size calculation after the video sink
1666         negotiated its caps. This is useful in the cases where
1667         audio-changed signal is emitted but the video sink takes more time
1668         to negociate caps with its peer.
1669
1670         This patch also fixes the rtsp manual-test with a new stream url
1671         which seems to be more permanent than the previous WWDC keynote
1672         stream.
1673
1674         * manual-tests/video-rtsp.html:
1675         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
1676         (WebCore::mediaPlayerPrivateVideoChangedCallback):
1677         (WebCore::mediaPlayerPrivateAudioChangedCallback):
1678         (WebCore::mediaPlayerPrivateAudioChangeTimeoutCallback):
1679         (WebCore::mediaPlayerPrivateVideoChangeTimeoutCallback):
1680         (WebCore::MediaPlayerPrivateGStreamer::MediaPlayerPrivateGStreamer):
1681         (WebCore::MediaPlayerPrivateGStreamer::~MediaPlayerPrivateGStreamer):
1682         (WebCore::MediaPlayerPrivateGStreamer::naturalSize):
1683         (WebCore::MediaPlayerPrivateGStreamer::videoChanged):
1684         (WebCore::MediaPlayerPrivateGStreamer::notifyPlayerOfVideo):
1685         (WebCore::MediaPlayerPrivateGStreamer::audioChanged):
1686         (WebCore::MediaPlayerPrivateGStreamer::notifyPlayerOfAudio):
1687         (WebCore::MediaPlayerPrivateGStreamer::paint):
1688         (WebCore::MediaPlayerPrivateGStreamer::createGSTPlayBin):
1689         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h:
1690
1691 2011-04-12  Vsevolod Vlasov  <vsevik@chromium.org>
1692
1693         Reviewed by Pavel Feldman.
1694
1695         Web Inspector: Failed/canceled resource requests kept showing as Pending in network panel.
1696         https://bugs.webkit.org/show_bug.cgi?id=58135
1697
1698         Added statuses for failed/canceled resource loading.
1699
1700         * English.lproj/localizedStrings.js:
1701         * inspector/Inspector.json:
1702         * inspector/InspectorResourceAgent.cpp:
1703         (WebCore::InspectorResourceAgent::didFailLoading):
1704         * inspector/front-end/NetworkManager.js:
1705         * inspector/front-end/NetworkPanel.js:
1706         * inspector/front-end/Resource.js:
1707
1708 2011-04-12  Steve Block  <steveblock@google.com>
1709
1710         Reviewed by Oliver Hunt.
1711
1712         Callable objects created via JavaScriptCore API cannot be used as Geolocation callbacks
1713         https://bugs.webkit.org/show_bug.cgi?id=40012
1714
1715         Covered by fast/dom/Geolocation/argument-types.html
1716
1717         * bindings/js/CallbackFunction.cpp:
1718         (WebCore::checkFunctionOnlyCallback):
1719
1720 2011-04-07  Philippe Normand  <pnormand@igalia.com>
1721
1722         Reviewed by Martin Robinson.
1723
1724         [GStreamer] report playback statistics
1725         https://bugs.webkit.org/show_bug.cgi?id=58033
1726
1727         Provide media playback statistics using fpsdisplaysink and
1728         position queries.
1729
1730         * manual-tests/video-statistics.html: Added.
1731         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
1732         (WebCore::MediaPlayerPrivateGStreamer::decodedFrameCount):
1733         (WebCore::MediaPlayerPrivateGStreamer::droppedFrameCount):
1734         (WebCore::MediaPlayerPrivateGStreamer::audioDecodedByteCount):
1735         (WebCore::MediaPlayerPrivateGStreamer::videoDecodedByteCount):
1736         (WebCore::MediaPlayerPrivateGStreamer::updateAudioSink):
1737         (WebCore::MediaPlayerPrivateGStreamer::updateStates):
1738         (WebCore::MediaPlayerPrivateGStreamer::createGSTPlayBin):
1739         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h:
1740
1741 2011-04-11  Philippe Normand  <pnormand@igalia.com>
1742
1743         Reviewed by Martin Robinson.
1744
1745         [GStreamer] warnings in media/video-set-rate-from-pause.html
1746         https://bugs.webkit.org/show_bug.cgi?id=58220
1747
1748         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
1749         (WebCore::MediaPlayerPrivateGStreamer::setRate): Pause the
1750         pipeline if new rate is zero, like advised in the GStreamer
1751         documentation of gst_event_new_seek().
1752
1753 2011-04-11  Vangelis Kokkevis  <vangelis@chromium.org>
1754
1755         Reviewed by James Robinson.
1756
1757         [chromium] Properly invalidate the contents of ImageLayerChromium's
1758         when the actual image contents change.
1759         https://bugs.webkit.org/show_bug.cgi?id=58181
1760
1761         Test: compositing/images/content-image-change.html
1762
1763         * platform/graphics/chromium/ContentLayerChromium.cpp:
1764         (WebCore::ContentLayerChromium::updateTexture):
1765         * platform/graphics/chromium/ImageLayerChromium.cpp:
1766         (WebCore::ImageLayerChromium::ImageLayerChromium):
1767         (WebCore::ImageLayerChromium::setContents):
1768         (WebCore::ImageLayerChromium::paintContentsIfDirty):
1769         * platform/graphics/chromium/ImageLayerChromium.h:
1770
1771 2011-04-11  Simon Fraser  <simon.fraser@apple.com>
1772
1773         Reviewed by Dan Bernstein.
1774
1775         -webkit-box-shadow:inset does not animate transform as an inset shadow
1776         https://bugs.webkit.org/show_bug.cgi?id=45176
1777         
1778         Two fixes:
1779         1. Don't run transitions between different shadow styles (normal vs. inset).
1780         2. When either source or destination is null, use a default shadow with a
1781         matching style so that the transition runs.
1782
1783         Test: transitions/mismatched-shadow-styles.html
1784
1785         * page/animation/AnimationBase.cpp:
1786         (WebCore::blendFunc):
1787         (WebCore::PropertyWrapperShadow::blend):
1788
1789 2011-04-11  John Bates  <jbates@google.com>
1790
1791         Reviewed by Kenneth Russell.
1792
1793         chromium support for glSetLatch and glWaitLatch between 3D contexts
1794         https://bugs.webkit.org/show_bug.cgi?id=58003
1795
1796         * platform/graphics/chromium/Canvas2DLayerChromium.cpp:
1797         (WebCore::Canvas2DLayerChromium::~Canvas2DLayerChromium):
1798         (WebCore::Canvas2DLayerChromium::setDrawingBuffer):
1799         (WebCore::Canvas2DLayerChromium::setLayerRenderer):
1800         * platform/graphics/chromium/Canvas2DLayerChromium.h:
1801         * platform/graphics/chromium/Extensions3DChromium.h:
1802         * platform/graphics/chromium/GLES2Canvas.cpp:
1803         (WebCore::Cubic::Cubic):
1804         * platform/graphics/chromium/LayerRendererChromium.cpp:
1805         (WebCore::LayerRendererChromium::LayerRendererChromium):
1806         (WebCore::LayerRendererChromium::updateAndDrawLayers):
1807         (WebCore::LayerRendererChromium::updateLayers):
1808         (WebCore::LayerRendererChromium::addChildContext):
1809         (WebCore::LayerRendererChromium::removeChildContext):
1810         * platform/graphics/chromium/LayerRendererChromium.h:
1811         * platform/graphics/chromium/WebGLLayerChromium.cpp:
1812         (WebCore::WebGLLayerChromium::~WebGLLayerChromium):
1813         (WebCore::WebGLLayerChromium::updateCompositorResources):
1814         (WebCore::WebGLLayerChromium::setContext):
1815         (WebCore::WebGLLayerChromium::setLayerRenderer):
1816         * platform/graphics/chromium/WebGLLayerChromium.h:
1817
1818 2011-04-11  Alexey Marinichev  <amarinichev@chromium.org>
1819
1820         Reviewed by James Robinson.
1821
1822         LayerChromium/CCLayerImpl ownership fix
1823         https://bugs.webkit.org/show_bug.cgi?id=58283
1824
1825         CCLayerImpl's m_owner field lifetime should match the lifetime of the
1826         corresponding LayerChromium.  This change moves resetting of m_owner
1827         into LayerChromium's destructor.
1828
1829         Tested similarly to bug 57577.
1830
1831         * platform/graphics/chromium/LayerChromium.cpp:
1832         (WebCore::LayerChromium::~LayerChromium):
1833         * platform/graphics/chromium/cc/CCLayerImpl.cpp:
1834         (WebCore::CCLayerImpl::cleanupResources):
1835         * platform/graphics/chromium/cc/CCLayerImpl.h:
1836         (WebCore::CCLayerImpl::resetOwner):
1837
1838 2011-04-11  Daniel Bates  <dbates@rim.com>
1839
1840         Attempt to fix the GTK build after changeset 83527 <http://trac.webkit.org/changeset/83527>
1841         (https://bugs.webkit.org/show_bug.cgi?id=53556).
1842
1843         * GNUmakefile.list.am: Append files HTMLTrackElement.{h, cpp} to the list webcore_sources.
1844
1845 2011-04-11  Brady Eidson  <beidson@apple.com>
1846
1847         Reviewed by Maciej Stachowiak.
1848
1849         <rdar://problem/9251515> and https://bugs.webkit.org/show_bug.cgi?id=58072
1850         URLs accessed as a result of pushState/replaceState should count as "visited" and be in the global history
1851
1852         Test: fast/loader/stateobjects/state-url-sets-links-visited.html
1853
1854         * loader/HistoryController.cpp:
1855         (WebCore::HistoryController::pushState): Notify the history client and add the visited link.
1856         (WebCore::HistoryController::replaceState): Ditto.
1857
1858 2011-04-11  Dimitri Glazkov  <dglazkov@chromium.org>
1859
1860         Reviewed by Eric Carlson.
1861
1862         Rename MediaControls to MediaControlRootElement.
1863         https://bugs.webkit.org/show_bug.cgi?id=58250
1864
1865         Mechanical move using do-webcore-rename.
1866
1867 2011-04-11  Dean Jackson  <dino@apple.com>
1868
1869         Reviewed by Simon Fraser.
1870
1871         https://bugs.webkit.org/show_bug.cgi?id=58285
1872         CompositeAnimation is cleared while an AnimationBase is waiting for notification
1873
1874         Occasionally hardware animations would trigger a state where
1875         they would tell the AnimationControllerPrivate that it should notify
1876         any waiting animations that they are ready to start, even though
1877         the RenderObject had gone away and hence the CompositeAnimation
1878         had been destroyed. The fix is to zero the pointer from AnimationBase
1879         when the CompositeAnimation destructor runs (or its animations are
1880         cleared) and test the validity of the CompositeAnimation before it
1881         is used in AnimationBase.
1882
1883         * page/animation/AnimationBase.cpp:
1884         (WebCore::AnimationBase::updateStateMachine):
1885         (WebCore::AnimationBase::fireAnimationEventsIfNeeded):
1886         (WebCore::AnimationBase::updatePlayState):
1887         (WebCore::AnimationBase::freezeAtTime):
1888         (WebCore::AnimationBase::beginAnimationUpdateTime):
1889         - test that the CompositeAnimation exists
1890         * page/animation/AnimationBase.h:
1891         (WebCore::AnimationBase::clear):
1892         - rename clearRenderer() to clear() as it now also clears the CompositeAnimation
1893         * page/animation/CompositeAnimation.cpp:
1894         (WebCore::CompositeAnimation::clearRenderer):
1895         (WebCore::CompositeAnimation::updateKeyframeAnimations):
1896         - call clear() rather than clearRenderer()
1897
1898 2011-04-11  Justin Novosad  <junov@chromium.org>
1899
1900         Reviewed by Kenneth Russell.
1901
1902         [Chromium] Text anti-aliasing fails when rendering text with shadow
1903         https://bugs.webkit.org/show_bug.cgi?id=57584
1904
1905         * platform/graphics/chromium/FontChromiumWin.cpp:
1906         (WebCore::drawGlyphsWin): new static function, code factored-out
1907         from WebCore::Font::drawGlyphs
1908         (WebCore::Font::drawGlyphs): may separate font rendering into two
1909         passes to allow foreground glyphs to be rendered with GDI when Skia 
1910         is required for rendering shadows
1911         * platform/graphics/skia/SkiaFontWin.cpp:
1912         (WebCore::windowsCanHandleDrawTextShadow):
1913         Modified method so that it does not assume a shadow is present, and
1914         returns true if there is no shadow (GDI can draw 'no shadow')
1915         (WebCore::windowsCanHandleTextDrawing):
1916         Factored out into sub methods so that the the shadow and foregound
1917         glyph properties can be tested separately independently.
1918         (WebCore::windowsCanHandleTextDrawingWithoutShadow):
1919         New method returns true if the foreground glyph only has effect
1920         that can be draw with GDI
1921         (WebCore::paintSkiaText):
1922         * platform/graphics/skia/SkiaFontWin.h:
1923
1924 2011-04-11  Ryosuke Niwa  <rniwa@webkit.org>
1925
1926         Unreviewed, rolling out r83515.
1927         http://trac.webkit.org/changeset/83515
1928         https://bugs.webkit.org/show_bug.cgi?id=57178
1929
1930         Broke GTK builds. nextOnLineExists and prevOnLineExists are still used in AccessibilityObjectWrapperAtk.cpp.
1931
1932         * rendering/InlineBox.cpp:
1933         (WebCore::InlineBox::nextOnLineExists):
1934         (WebCore::InlineBox::prevOnLineExists):
1935         * rendering/InlineBox.h:
1936         (WebCore::InlineBox::InlineBox):
1937
1938 2011-04-11  Brady Eidson  <beidson@apple.com>
1939
1940         Reverting, seeing something else still broken.  Sorry.
1941
1942         * html/HTMLTrackElement.cpp:
1943
1944 2011-04-11  Brady Eidson  <beidson@apple.com>
1945
1946         Fix the build.
1947
1948         * html/HTMLTrackElement.cpp: Case-sensitive, please.
1949
1950 2011-04-11  Alexis Menard  <alexis.menard@openbossa.org>
1951
1952         Unreviewed build fix for Mac.
1953
1954         An idl file was added in the wrong place.
1955
1956         * WebCore.xcodeproj/project.pbxproj:
1957
1958 2011-04-11  Chris Marrin  <cmarrin@apple.com>
1959
1960         Rubberstamped by Dan Bernstein.
1961
1962         xhr.responseType = 'arraybuffer' works on Mac but not on Windows
1963         https://bugs.webkit.org/show_bug.cgi?id=50334
1964
1965         Got rid of guards around arraybuffer logic in XHR. ArrayBuffer and friends
1966         are always turned on now, so there's not need for the guard. I reenabled the
1967         test that was Skipped on Windows and it works now.
1968
1969         * bindings/js/JSXMLHttpRequestCustom.cpp:
1970         (WebCore::JSXMLHttpRequest::markChildren):
1971         (WebCore::JSXMLHttpRequest::send):
1972         (WebCore::JSXMLHttpRequest::response):
1973         * xml/XMLHttpRequest.cpp:
1974         (WebCore::XMLHttpRequest::responseArrayBuffer):
1975         (WebCore::XMLHttpRequest::setResponseType):
1976         (WebCore::XMLHttpRequest::send):
1977         (WebCore::XMLHttpRequest::clearResponseBuffers):
1978         (WebCore::XMLHttpRequest::didReceiveData):
1979         * xml/XMLHttpRequest.h:
1980         (WebCore::XMLHttpRequest::optionalResponseArrayBuffer):
1981
1982 2011-04-11  Anna Cavender  <annacc@chromium.org>
1983
1984         Reviewed by Eric Carlson.
1985
1986         Setup ENABLE(TRACK) feature define + initial HTMLTrackElement
1987         https://bugs.webkit.org/show_bug.cgi?id=53556
1988
1989         No new tests. No real functionality added just yet.
1990
1991         * CMakeLists.txt:
1992         * CodeGenerators.pri:
1993         * Configurations/FeatureDefines.xcconfig:
1994         * DerivedSources.make:
1995         * GNUmakefile.am:
1996         * GNUmakefile.list.am:
1997         * WebCore.gypi:
1998         * WebCore.xcodeproj/project.pbxproj:
1999         * features.pri:
2000         * html/HTMLAttributeNames.in:
2001         * html/HTMLTagNames.in:
2002         * html/HTMLTrackElement.cpp: Added.
2003         (WebCore::HTMLTrackElement::HTMLTrackElement):
2004         (WebCore::HTMLTrackElement::create):
2005         (WebCore::HTMLTrackElement::insertedIntoTree):
2006         (WebCore::HTMLTrackElement::willRemove):
2007         (WebCore::HTMLTrackElement::src):
2008         (WebCore::HTMLTrackElement::setSrc):
2009         (WebCore::HTMLTrackElement::kind):
2010         (WebCore::HTMLTrackElement::setKind):
2011         (WebCore::HTMLTrackElement::srclang):
2012         (WebCore::HTMLTrackElement::setSrclang):
2013         (WebCore::HTMLTrackElement::label):
2014         (WebCore::HTMLTrackElement::setLabel):
2015         (WebCore::HTMLTrackElement::isDefault):
2016         (WebCore::HTMLTrackElement::setIsDefault):
2017         (WebCore::HTMLTrackElement::isURLAttribute):
2018         * html/HTMLTrackElement.h: Added.
2019         * html/HTMLTrackElement.idl: Added.
2020
2021 2011-04-11  Ben Taylor  <bentaylor.solx86@gmail.com>
2022
2023         Reviewed by David Levin.
2024
2025         https://bugs.webkit.org/show_bug.cgi?id=57535
2026
2027         Better compile fix for Solaris 10/Sun Studio 12 CC 
2028         needing <sys/time.h>
2029
2030         * loader/icon/IconRecord.h:
2031         * page/Page.h:
2032         * platform/network/ResourceResponseBase.h:
2033
2034 2011-04-11  Alexey Proskuryakov  <ap@apple.com>
2035
2036         Reviewed by Maciej Stachowiak.
2037
2038         WebKit2: Cannot use Ctrl-Delete as a custom keyboard shortcut
2039         https://bugs.webkit.org/show_bug.cgi?id=58265
2040         <rdar://problem/9221468>
2041
2042         * page/EventHandler.cpp:
2043         (WebCore::EventHandler::defaultKeyboardEventHandler): Handle Backspace.
2044         (WebCore::EventHandler::defaultSpaceEventHandler): Enabled this on Mac, and added checks for
2045         other modifiers - no one wants to scroll on Ctrl+Alt+Space and such.
2046         (WebCore::EventHandler::defaultBackspaceEventHandler): Backspace goes back, Shift-backspace
2047         goes forward. All browsers do it.
2048         (WebCore::EventHandler::defaultArrowEventHandler): Assert that this function was called
2049         for a correct event.
2050         (WebCore::EventHandler::defaultTabEventHandler): Ditto.
2051
2052         * page/EventHandler.h: Added defaultBackspaceEventHandler.
2053
2054 2011-04-11  Matthew Delaney  <mdelaney@apple.com>
2055
2056         Reviewed by Dan Bernstein.
2057
2058         [CG] drawImage with a subimage bleeds pixel data at borders
2059         https://bugs.webkit.org/show_bug.cgi?id=58267
2060
2061         Test: fast/canvas/DrawImageSinglePixelStretch.html
2062
2063         * platform/graphics/cg/ImageCG.cpp:
2064         (WebCore::BitmapImage::draw): Any interpolation quality other than 'none' will graft out the subimage first now.
2065
2066 2011-04-11  Chris Marrin  <cmarrin@apple.com>
2067
2068         Reviewed by Simon Fraser.
2069
2070         iframe/compositing propagation should also work for <object> and framesets
2071         https://bugs.webkit.org/show_bug.cgi?id=39037
2072
2073         Generalized the code that handles the parenting of composited <iframe> elements
2074         to include <frame> and <object> elements. This includes forcing the parent
2075         element to be composited and constructing the layer tree in the child document
2076         and properly parenting it. Much of the change is giving the function calls more
2077         generic names (from ...IFrame... to ...Frame...)
2078         
2079         Compositing tests that were done in RenderIFrame have been moved to RenderPart
2080         since this is the highest base class common to all 3 elements.
2081         
2082         I also renamed several ...IFrame... functions to
2083         ...Frame... and changed them so they work on a RenderPart for determining
2084         if the renderer is composited. One other detail is that <iframe> and 
2085         <object> never share style since they might be composited. I had to add
2086         <frame> to that list.
2087
2088         Tests: compositing/framesets/composited-frame-alignment.html
2089                compositing/objects/composited-object-alignment.html
2090
2091         * css/CSSStyleSelector.cpp: Add <frame> to list of element types that should never share style since it might be composited.
2092         (WebCore::CSSStyleSelector::canShareStyleWithElement):
2093         * page/FrameView.cpp:
2094         (WebCore::FrameView::hasCompositedContentIncludingDescendants):
2095         (WebCore::FrameView::setIsOverlapped):
2096         * rendering/RenderIFrame.cpp: Moved methods to RenderPart
2097         * rendering/RenderIFrame.h:
2098         * rendering/RenderLayerBacking.cpp:
2099         (WebCore::RenderLayerBacking::updateAfterWidgetResize):
2100         (WebCore::RenderLayerBacking::updateGraphicsLayerConfiguration):
2101         (WebCore::RenderLayerBacking::paintingGoesToWindow):
2102         * rendering/RenderLayerCompositor.cpp:
2103         (WebCore::RenderLayerCompositor::updateBacking):
2104         (WebCore::RenderLayerCompositor::rebuildCompositingLayerTree):
2105         (WebCore::RenderLayerCompositor::frameContentsCompositor):
2106         (WebCore::RenderLayerCompositor::parentFrameContentLayers):
2107         (WebCore::RenderLayerCompositor::didMoveOnscreen):
2108         (WebCore::RenderLayerCompositor::allowsIndependentlyCompositedFrames):
2109         (WebCore::RenderLayerCompositor::shouldPropagateCompositingToEnclosingFrame):
2110         (WebCore::RenderLayerCompositor::enclosingFrameElement):
2111         (WebCore::RenderLayerCompositor::requiresCompositingLayer):
2112         (WebCore::RenderLayerCompositor::requiresCompositingForFrame):
2113         (WebCore::RenderLayerCompositor::requiresScrollLayer):
2114         (WebCore::RenderLayerCompositor::ensureRootPlatformLayer):
2115         (WebCore::RenderLayerCompositor::attachRootPlatformLayer):
2116         (WebCore::RenderLayerCompositor::detachRootPlatformLayer):
2117         * rendering/RenderLayerCompositor.h:
2118         * rendering/RenderPart.cpp: Functions moved from RenderIFrame
2119         (WebCore::RenderPart::requiresLayer):
2120         (WebCore::RenderPart::requiresAcceleratedCompositing):
2121         * rendering/RenderPart.h:
2122
2123 2011-04-11  Yael Aharon  <yael.aharon@nokia.com>
2124
2125         Reviewed by Eric Seidel.
2126
2127         InlineBox::prevOnline and InlineBox::prevOnlineExists() are confusing and should be renamed
2128         https://bugs.webkit.org/show_bug.cgi?id=57178
2129
2130         Remove prevOnLineExists() and nextOnLineExists() as they are not used anymore.
2131         No new tests needed because this is cleanup only.
2132
2133         * rendering/InlineBox.cpp:
2134         * rendering/InlineBox.h:
2135         (WebCore::InlineBox::InlineBox):
2136         (WebCore::InlineBox::setPrevOnLine):
2137
2138 2011-04-11  David Hyatt  <hyatt@apple.com>
2139
2140         Reviewed by Dan Bernstein.
2141
2142         https://bugs.webkit.org/show_bug.cgi?id=58261
2143
2144         Fix for layout regression on marketwatch.com. When I converted TrailingFloatsRootInlineBox over
2145         to the new overflow model, I messed up the math and passed a bottom value where I should have
2146         passed a height value. This patch fixes the code to be logically equivalent to the way it
2147         was prior to my changes.
2148
2149         Added fast/overflow/trailing-float-linebox.html.
2150
2151         * rendering/RenderBlockLineLayout.cpp:
2152         (WebCore::RenderBlock::layoutInlineChildren):
2153
2154 2011-04-11  Adrienne Walker  <enne@google.com>
2155
2156         Unreviewed, rolling out r83500.
2157         http://trac.webkit.org/changeset/83500
2158         https://bugs.webkit.org/show_bug.cgi?id=57113
2159
2160         Regresses huge-layer-rotated test
2161
2162         * platform/graphics/chromium/ContentLayerChromium.cpp:
2163         (WebCore::ContentLayerChromium::ContentLayerChromium):
2164         (WebCore::ContentLayerChromium::~ContentLayerChromium):
2165         (WebCore::ContentLayerChromium::cleanupResources):
2166         (WebCore::ContentLayerChromium::requiresClippedUpdateRect):
2167         (WebCore::ContentLayerChromium::paintContentsIfDirty):
2168         (WebCore::ContentLayerChromium::resizeUploadBuffer):
2169         (WebCore::ContentLayerChromium::updateTextureIfNeeded):
2170         (WebCore::ContentLayerChromium::updateTexture):
2171         (WebCore::ContentLayerChromium::draw):
2172         (WebCore::ContentLayerChromium::updateCompositorResources):
2173         (WebCore::ContentLayerChromium::unreserveContentsTexture):
2174         (WebCore::ContentLayerChromium::bindContentsTexture):
2175         (WebCore::ContentLayerChromium::dumpLayerProperties):
2176         * platform/graphics/chromium/ContentLayerChromium.h:
2177         (WebCore::ContentLayerChromium::drawsContent):
2178         * platform/graphics/chromium/GraphicsLayerChromium.cpp:
2179         (WebCore::GraphicsLayerChromium::setMaskLayer):
2180         * platform/graphics/chromium/ImageLayerChromium.cpp:
2181         (WebCore::ImageLayerChromium::paintContentsIfDirty):
2182         (WebCore::ImageLayerChromium::updateTextureIfNeeded):
2183         * platform/graphics/chromium/ImageLayerChromium.h:
2184         * platform/graphics/chromium/LayerChromium.h:
2185         (WebCore::LayerChromium::draw):
2186         * platform/graphics/chromium/LayerRendererChromium.cpp:
2187         (WebCore::LayerRendererChromium::drawRootLayer):
2188         (WebCore::LayerRendererChromium::drawLayers):
2189         (WebCore::LayerRendererChromium::paintContentsRecursive):
2190         (WebCore::LayerRendererChromium::copyOffscreenTextureToDisplay):
2191         (WebCore::LayerRendererChromium::drawLayer):
2192         (WebCore::LayerRendererChromium::initializeSharedObjects):
2193         (WebCore::LayerRendererChromium::cleanupSharedObjects):
2194         * platform/graphics/chromium/LayerRendererChromium.h:
2195         (WebCore::LayerRendererChromium::contentLayerProgram):
2196         * platform/graphics/chromium/LayerTilerChromium.cpp:
2197         (WebCore::LayerTilerChromium::invalidateRect):
2198         (WebCore::LayerTilerChromium::update):
2199         (WebCore::LayerTilerChromium::updateFromPixels):
2200         (WebCore::LayerTilerChromium::draw):
2201         * platform/graphics/chromium/LayerTilerChromium.h:
2202         * platform/graphics/chromium/PlatformCanvas.cpp:
2203         (WebCore::PlatformCanvas::AutoLocker::AutoLocker):
2204         (WebCore::PlatformCanvas::Painter::Painter):
2205         * platform/graphics/chromium/PlatformCanvas.h:
2206         * platform/graphics/chromium/RenderSurfaceChromium.cpp:
2207         (WebCore::RenderSurfaceChromium::draw):
2208         * platform/graphics/chromium/RenderSurfaceChromium.h:
2209         * platform/graphics/chromium/cc/CCCanvasLayerImpl.cpp:
2210         (WebCore::CCCanvasLayerImpl::draw):
2211         * platform/graphics/chromium/cc/CCCanvasLayerImpl.h:
2212         * platform/graphics/chromium/cc/CCHeadsUpDisplay.cpp:
2213         (WebCore::CCHeadsUpDisplay::draw):
2214         * platform/graphics/chromium/cc/CCLayerImpl.cpp:
2215         (WebCore::CCLayerImpl::draw):
2216         * platform/graphics/chromium/cc/CCLayerImpl.h:
2217         * platform/graphics/chromium/cc/CCPluginLayerImpl.cpp:
2218         (WebCore::CCPluginLayerImpl::draw):
2219         * platform/graphics/chromium/cc/CCPluginLayerImpl.h:
2220         * platform/graphics/chromium/cc/CCVideoLayerImpl.cpp:
2221         (WebCore::CCVideoLayerImpl::draw):
2222         * platform/graphics/chromium/cc/CCVideoLayerImpl.h:
2223
2224 2011-04-11  Jon Honeycutt  <jhoneycutt@apple.com>
2225
2226         <rdar://problem/9267042> Assertion failure on launch in
2227         LayerChangesFlusher::setHook().
2228
2229         https://bugs.webkit.org/show_bug.cgi?id=58270
2230
2231         Reviewed by Adam Roben.
2232
2233         * platform/graphics/ca/win/LayerChangesFlusher.cpp:
2234         (WebCore::LayerChangesFlusher::setHook):
2235         MSDN says that the HINSTANCE passed in must be null if the thread ID
2236         passed is a thread created by this process and the hook procedure is
2237         within this process.
2238
2239 2011-04-11  MORITA Hajime  <morrita@google.com>
2240
2241         Unreviewed build fix.
2242
2243         Changeset 83492 broke Leopard build.
2244         https://bugs.webkit.org/show_bug.cgi?id=58268
2245
2246         * editing/Editor.cpp:
2247         (WebCore::Editor::markMisspellingsAfterTypingToWord):
2248
2249 2011-03-25  Adrienne Walker  <enne@google.com>
2250
2251         Reviewed by James Robinson.
2252
2253         [chromium] Tile content and image layers
2254         https://bugs.webkit.org/show_bug.cgi?id=57113
2255
2256         Layers tile by default if any dimension is larger than 512.  Smaller
2257         layers are contained within a single texture but still use the tiler
2258         infrastructure so that there's only one code path.
2259
2260         Remove large layer support from content layers.  Content layers no
2261         longer own a platform canvas--they own a tiler.  Refactor tiler to
2262         allow for better separation of update/upload/paint.  Add rect
2263         parameter to update and draw functions on layers for the layer-space
2264         rect of interest.  This is necessary to know which tiles need to be
2265         drawn.
2266
2267         * platform/graphics/chromium/ContentLayerChromium.cpp:
2268         (WebCore::ContentLayerChromium::ContentLayerChromium):
2269         (WebCore::ContentLayerChromium::~ContentLayerChromium):
2270         (WebCore::ContentLayerPainter::ContentLayerPainter):
2271         (WebCore::ContentLayerPainter::paint):
2272         (WebCore::ContentLayerChromium::paintContentsIfDirty):
2273         (WebCore::ContentLayerChromium::setLayerRenderer):
2274         (WebCore::ContentLayerChromium::tilingTransform):
2275         (WebCore::ContentLayerChromium::visibleLayerRect):
2276         (WebCore::ContentLayerChromium::layerBounds):
2277         (WebCore::ContentLayerChromium::updateLayerSize):
2278         (WebCore::ContentLayerChromium::draw):
2279         (WebCore::ContentLayerChromium::createTilerIfNeeded):
2280         (WebCore::ContentLayerChromium::updateCompositorResources):
2281         (WebCore::ContentLayerChromium::setTilingOption):
2282         (WebCore::ContentLayerChromium::bindContentsTexture):
2283         (WebCore::ContentLayerChromium::unreserveContentsTexture):
2284         (WebCore::ContentLayerChromium::setIsMask):
2285         (WebCore::ContentLayerChromium::dumpLayerProperties):
2286         * platform/graphics/chromium/ContentLayerChromium.h:
2287         (WebCore::ContentLayerChromium::drawsContent):
2288         * platform/graphics/chromium/GraphicsLayerChromium.cpp:
2289         (WebCore::GraphicsLayerChromium::setMaskLayer):
2290         * platform/graphics/chromium/ImageLayerChromium.cpp:
2291         (WebCore::ImageLayerChromium::paintContentsIfDirty):
2292         (WebCore::ImageLayerChromium::updateCompositorResources):
2293         (WebCore::ImageLayerChromium::layerBounds):
2294         (WebCore::ImageLayerChromium::tilingTransform):
2295         * platform/graphics/chromium/ImageLayerChromium.h:
2296         * platform/graphics/chromium/LayerChromium.h:
2297         (WebCore::LayerChromium::invalidateRect):
2298         (WebCore::LayerChromium::paintContentsIfDirty):
2299         (WebCore::LayerChromium::setIsMask):
2300         (WebCore::LayerChromium::draw):
2301         * platform/graphics/chromium/LayerRendererChromium.cpp:
2302         (WebCore::LayerRendererChromium::drawRootLayer):
2303         (WebCore::LayerRendererChromium::drawLayers):
2304         (WebCore::LayerRendererChromium::paintContentsRecursive):
2305         (WebCore::LayerRendererChromium::copyOffscreenTextureToDisplay):
2306         (WebCore::LayerRendererChromium::drawLayer):
2307         (WebCore::LayerRendererChromium::initializeSharedObjects):
2308         (WebCore::LayerRendererChromium::cleanupSharedObjects):
2309         * platform/graphics/chromium/LayerRendererChromium.h:
2310         * platform/graphics/chromium/LayerTilerChromium.cpp:
2311         (WebCore::LayerTilerChromium::getSingleTexture):
2312         (WebCore::LayerTilerChromium::invalidateRect):
2313         (WebCore::LayerTilerChromium::update):
2314         (WebCore::LayerTilerChromium::uploadCanvas):
2315         (WebCore::LayerTilerChromium::updateFromPixels):
2316         (WebCore::LayerTilerChromium::draw):
2317         (WebCore::LayerTilerChromium::unreserveTextures):
2318         * platform/graphics/chromium/LayerTilerChromium.h:
2319         (WebCore::LayerTilerChromium::setLayerRenderer):
2320         (WebCore::LayerTilerChromium::skipsDraw):
2321         * platform/graphics/chromium/PlatformCanvas.cpp:
2322         (WebCore::PlatformCanvas::AutoLocker::AutoLocker):
2323         (WebCore::PlatformCanvas::Painter::Painter):
2324         * platform/graphics/chromium/PlatformCanvas.h:
2325         * platform/graphics/chromium/RenderSurfaceChromium.cpp:
2326         (WebCore::RenderSurfaceChromium::draw):
2327         * platform/graphics/chromium/RenderSurfaceChromium.h:
2328         * platform/graphics/chromium/cc/CCCanvasLayerImpl.cpp:
2329         (WebCore::CCCanvasLayerImpl::draw):
2330         * platform/graphics/chromium/cc/CCCanvasLayerImpl.h:
2331         * platform/graphics/chromium/cc/CCHeadsUpDisplay.cpp:
2332         (WebCore::CCHeadsUpDisplay::draw):
2333         * platform/graphics/chromium/cc/CCLayerImpl.cpp:
2334         (WebCore::CCLayerImpl::draw):
2335         * platform/graphics/chromium/cc/CCLayerImpl.h:
2336         * platform/graphics/chromium/cc/CCPluginLayerImpl.cpp:
2337         (WebCore::CCPluginLayerImpl::draw):
2338         * platform/graphics/chromium/cc/CCPluginLayerImpl.h:
2339         * platform/graphics/chromium/cc/CCVideoLayerImpl.cpp:
2340         (WebCore::CCVideoLayerImpl::draw):
2341         * platform/graphics/chromium/cc/CCVideoLayerImpl.h:
2342
2343 2011-04-11  Eric Carlson  <eric.carlson@apple.com>
2344
2345         Reviewed by Simon Fraser.
2346
2347         Ignore context change callbacks when not on the main thread
2348         https://bugs.webkit.org/show_bug.cgi?id=58256
2349         <rdar://problem/9266090>
2350
2351         * platform/graphics/ca/win/WKCACFViewLayerTreeHost.cpp:
2352         (WebCore::WKCACFViewLayerTreeHost::contextDidChange): Do nothing when not called
2353             on the main thread. This should only happen when no changes have actually 
2354             been committed to the context, eg. when a video frame has been added to an image
2355             queue, so return without triggering animations etc.
2356
2357 2011-04-11  Daniel Cheng  <dcheng@chromium.org>
2358
2359         Reviewed by Dmitry Titov.
2360
2361         [chromium] Implement image/png support in DataTransferItems
2362         https://bugs.webkit.org/show_bug.cgi?id=58106
2363
2364         This patch implements DataTransferItem::getAsFile() using Blobs. In
2365         addition, plumbing for image/png has been added so image paste will be
2366         supported as long as the renderer makes that data available.
2367
2368         Tests: editing/pasteboard/data-transfer-items-image-png.html
2369
2370         * dom/DataTransferItem.h:
2371         * dom/DataTransferItem.idl:
2372         * platform/chromium/ClipboardMimeTypes.cpp:
2373         * platform/chromium/ClipboardMimeTypes.h:
2374         * platform/chromium/DataTransferItemChromium.cpp:
2375         (WebCore::DataTransferItemChromium::getAsString):
2376         (WebCore::DataTransferItemChromium::getAsFile):
2377         * platform/chromium/DataTransferItemChromium.h:
2378         * platform/chromium/PlatformBridge.h:
2379
2380 2011-04-11  Mario Sanchez Prada  <msanchez@igalia.com>
2381
2382         Reviewed by Chris Fleizach.
2383
2384         [Gtk] Implement support for Embedded Objects
2385         https://bugs.webkit.org/show_bug.cgi?id=52148
2386
2387         Expose special OBJECT character for replaced elements, implementing
2388         AtkText and AtkHyperlink when required.
2389
2390         * accessibility/AccessibilityRenderObject.cpp:
2391         (WebCore::textIteratorBehaviorForTextRange): New helper function,
2392         to return the right behavior, depending on the platform, so it
2393         ensures that object replacement characters get emitted for GTK.
2394         (WebCore::AccessibilityRenderObject::textUnderElement): Use the
2395         new helper function textIteratorBehaviorForTextRange.
2396         (WebCore::AccessibilityRenderObject::stringValue): Ditto.
2397         (WebCore::AccessibilityRenderObject::indexForVisiblePosition):
2398         Consider replaced elements when calculating range length in GTK.
2399
2400         * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
2401         (textForRenderer): Ouput the 'object replacement character' for
2402         replaced objects.
2403         (getSelectionOffsetsForObject): Consider replaced elements when
2404         calculating range length in GTK.
2405         (webkitAccessibleHypertextGetLink): Remove wrong extra check that
2406         were causing only links to be considered.
2407         (webkitAccessibleHypertextGetNLinks): Replace wrong 'isLink()'
2408         check with the right one, by checking that the right ATK interface
2409         is being implemented by the AtkObject.
2410         (getInterfaceMaskFromObject): Implement the Hyperlink interface
2411         both for links and replaced objects.
2412         (objectAndOffsetUnignored): Consider replaced elements when
2413         calculating range length in GTK.
2414
2415         * accessibility/gtk/WebKitAccessibleHyperlink.cpp:
2416         (getRangeLengthForObject): Ensure spaces are used for replaced
2417         elements when calling to TextIterator::rangeLength().
2418
2419         * editing/TextIterator.h: New value in the TextIteratorBehavior
2420         enumeration (TextIteratorEmitsObjectReplacementCharacters) and new
2421         private variable to consider that new option internally.
2422         * editing/TextIterator.cpp:
2423         (WebCore::TextIterator::TextIterator): Initialize the new private
2424         attribute m_emitsObjectReplacementCharacters in constructors.
2425         (WebCore::TextIterator::handleReplacedElement): Emit the 'object
2426         replacement character' when m_emitsObjectReplacementCharacters.
2427
2428 2011-04-11  Jia Pu  <jpu@apple.com>
2429
2430         Reviewed by Adele Peterson.
2431
2432         Shouldn't carry out autocorrection when start typing a new word
2433         https://bugs.webkit.org/show_bug.cgi?id=58241
2434         <rdar://problem/9264736>
2435
2436         Tests: platform/mac/editing/spelling/autocorrection-at-beginning-of-word-1.html
2437                platform/mac/editing/spelling/autocorrection-at-beginning-of-word-2.html
2438
2439         In TypingCommand::markMisspellingsAfterTyping(), we want to call Editor::markMisspellingsAfterTypingToWord()
2440         only when the typing command is an insertion command, and preceding word contains at least one non-whitespace
2441         character.
2442
2443         * editing/Editor.cpp:
2444         (WebCore::Editor::markMisspellingsAfterTypingToWord):
2445         * editing/Editor.h:
2446         * editing/TypingCommand.cpp:
2447         (WebCore::TypingCommand::markMisspellingsAfterTyping):
2448
2449 2011-04-11  Vsevolod Vlasov  <vsevik@chromium.org>
2450
2451         Reviewed by Pavel Feldman.
2452
2453         PerformanceTiming returns inconsistent values when timing is null.
2454         https://bugs.webkit.org/show_bug.cgi?id=58143
2455
2456         Made PerformanceTiming returned values consistent when there is no timing object.
2457
2458         * page/PerformanceTiming.cpp:
2459         (WebCore::PerformanceTiming::domainLookupStart):
2460         (WebCore::PerformanceTiming::domainLookupEnd):
2461         (WebCore::PerformanceTiming::connectStart):
2462         (WebCore::PerformanceTiming::connectEnd):
2463         (WebCore::PerformanceTiming::requestStart):
2464         (WebCore::PerformanceTiming::responseStart):
2465         (WebCore::PerformanceTiming::domLoading):
2466
2467 2011-04-05  Stephen White  <senorblanco@chromium.org>
2468
2469         Fix for jittering when animating a rotated image.
2470         https://bugs.webkit.org/show_bug.cgi?id=50775
2471
2472         Make GraphicsContext::roundToDevicePixels a no-op on Chrome/Mac.
2473
2474         * platform/graphics/cg/GraphicsContextCG.cpp:
2475         (WebCore::GraphicsContext::roundToDevicePixels):
2476
2477 2011-04-06  Xiaomei Ji  <xji@chromium.org>
2478
2479         Reviewed by Ryosuke Niwa.
2480
2481         Continue experiment with moving caret by word in visual order.
2482         https://bugs.webkit.org/show_bug.cgi?id=57806
2483
2484         This is the 2nd patch, which adds implementation when caret is inside box
2485         (not at boundaries). If the word break is inside the same box and not at the boundaries
2486         either, the word break will be returned. If need to search the adjacent boxes for word
2487         breaks, then, only the cases implemented in bug 57336 work.
2488
2489         * editing/visible_units.cpp:
2490         (WebCore::leftmostPositionInRTLBoxInLTRBlock):
2491         (WebCore::rightmostPositionInLTRBoxInRTLBlock):
2492         (WebCore::lastWordBreakInBox):
2493         (WebCore::positionIsVisuallyOrderedInBoxInBlockWithDifferentDirectionality):
2494         (WebCore::nextWordBreakInBoxInsideBlockWithDifferentDirectionality):
2495         (WebCore::WordBoundaryEntry::WordBoundaryEntry):
2496         (WebCore::collectWordBreaksInBoxInsideBlockWithSameDirectionality):
2497         (WebCore::collectWordBreaksInBoxInsideBlockWithDifferntDirectionality):
2498         (WebCore::greatestValueUnder):
2499         (WebCore::smallestOffsetAbove):
2500         (WebCore::positionIsInsideBox):
2501         (WebCore::positionBeforeNextWord):
2502         (WebCore::positionAfterPreviousWord):
2503         (WebCore::leftWordPosition):
2504         (WebCore::rightWordPosition):
2505
2506 2011-04-11  Mario Sanchez Prada  <msanchez@igalia.com>
2507
2508         Reviewed by Chris Fleizach.
2509
2510         [GTK] Unskip accessibility/input-slider.html and accessibility/media-element.html
2511         https://bugs.webkit.org/show_bug.cgi?id=58040
2512
2513         Don't expose objects of role SliderThumbRoles in GTK.
2514
2515         * accessibility/AccessibilitySlider.cpp:
2516         (WebCore::AccessibilitySlider::addChildren): Allow the platform
2517         make a final decision before including children in the hierarchy.
2518         (WebCore::AccessibilitySliderThumb::accessibilityIsIgnored):
2519         Implemented by relying on accessibilityPlatformIncludesObject().
2520
2521         * accessibility/gtk/AccessibilityObjectAtk.cpp:
2522         (WebCore::AccessibilityObject::accessibilityPlatformIncludesObject):
2523         Ignore accessibility objects with role SliderThumbRole.
2524
2525 2011-04-11  Simon Fraser  <simon.fraser@apple.com>
2526
2527         Reviewed by Dan Bernstein.
2528
2529         Divide by zero in calcColumnWidth
2530         https://bugs.webkit.org/show_bug.cgi?id=58230
2531
2532         Test: fast/multicol/huge-column-count.html
2533         
2534         Make sure we have at least one column, to avoid divide by zero.
2535
2536         * rendering/RenderBlock.cpp:
2537         (WebCore::RenderBlock::calcColumnWidth):
2538
2539 2011-04-09  Gavin Barraclough  <barraclough@apple.com>
2540
2541         Reviewed by Sam Weinig.
2542
2543         Bug 58198 - Clean up JSValue implementation for JSVALUE64
2544
2545         JSNumberCell.h has been deprecated.
2546
2547         * ForwardingHeaders/runtime/JSNumberCell.h: Removed.
2548         * bindings/scripts/CodeGeneratorJS.pm:
2549         * bridge/c/c_instance.cpp:
2550
2551 2011-04-11  Dan Bernstein  <mitz@apple.com>
2552
2553         Build fix.
2554
2555         * html/canvas/CanvasRenderingContext2D.cpp:
2556         (WebCore::CanvasRenderingContext2D::State::State):
2557
2558 2011-04-11  Antti Koivisto  <antti@apple.com>
2559
2560         Reviewed by Tony Gentilcore.
2561
2562         Document source preload scanned repeatedly
2563         https://bugs.webkit.org/show_bug.cgi?id=58123
2564         
2565         Don't clear the preload scanner after execution resumes. This would lose the current
2566         scanning point and lead to rescanning when the preload scanner would get reconstructed
2567         due to main parser blocking again.
2568
2569         Instead clear the scanner only in the specific case of receiving new data while the main
2570         parser has already reached the end of the current input.
2571
2572         Also switched to using isWaitingForScripts() instead of m_treeBuilder->isPaused() for consistency.
2573
2574         The case the clearing in resumeParsingAfterScriptExecution() was added for is covered by 
2575         http/tests/loading/preload-slow-loading.php.
2576
2577         * html/parser/HTMLDocumentParser.cpp:
2578         (WebCore::HTMLDocumentParser::insert):
2579         (WebCore::HTMLDocumentParser::append):
2580         (WebCore::HTMLDocumentParser::resumeParsingAfterScriptExecution):
2581
2582 2011-04-11  Dan Bernstein  <mitz@apple.com>
2583
2584         Build fix.
2585
2586         * html/canvas/CanvasRenderingContext2D.cpp:
2587         (WebCore::CanvasRenderingContext2D::State::State):
2588
2589 2011-04-11  Dan Bernstein  <mitz@apple.com>
2590
2591         Reviewed by Alexey Proskuryakov.
2592
2593         Assertion failure in CanvasRenderingContext2D::State::fontsNeedUpdate when invalidating the font cache after opening canvas/philip/tests/initial.reset.2dstate.html (occurs on Qt debug test bot)
2594         https://bugs.webkit.org/show_bug.cgi?id=58229
2595
2596         * html/canvas/CanvasRenderingContext2D.cpp:
2597         (WebCore::CanvasRenderingContext2D::State::State): Added copy constructor, to register the copy with
2598         the font selector if needed.
2599         (WebCore::CanvasRenderingContext2D::State::operator=): Added assignment constructor, to handle
2600         registration with the font selector as needed.
2601         * html/canvas/CanvasRenderingContext2D.h:
2602
2603 2011-04-11  Mario Sanchez Prada  <msanchez@igalia.com>
2604
2605         Reviewed by Chris Fleizach.
2606
2607         [GTK] ARIA tables not exposing cells as HTML tables do
2608         https://bugs.webkit.org/show_bug.cgi?id=57463
2609
2610         Expose cells for ARIA grids consistently with HTML tables in GTK,
2611         keeping the same behaviour for the other platforms.
2612
2613         * accessibility/AccessibilityARIAGrid.cpp:
2614         (WebCore::AccessibilityARIAGrid::addChild): Add the row's children
2615         to the accessibility hierarchy when accessibility objects for rows
2616         are ignoring accessibility, otherwise add the row.
2617         (WebCore::AccessibilityARIAGrid::addChildren): Do not check at
2618         this point whether every child of the table ignores or not
2619         accessibility, letting addChild() make the proper decision later.
2620
2621         * accessibility/AccessibilityARIAGridCell.cpp:
2622         (WebCore::AccessibilityARIAGridCell::parentTable): Consider that
2623         rows could be ignoring accessibility, hence the parent could be
2624         retrieved in the first call to parentObjectUnignored().
2625         (WebCore::AccessibilityARIAGridCell::rowIndexRange): Ditto.
2626         (WebCore::AccessibilityARIAGridCell::columnIndexRange): Ditto..
2627
2628         * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
2629         (atkRole): Map ColumnHeader and RowHeader to ATK_ROLE_TABLE_CELL.
2630
2631 2011-04-11  Sergio Villar Senin  <svillar@igalia.com>
2632
2633         Reviewed by Martin Robinson.
2634
2635         [GTK] Fix make distcheck
2636         https://bugs.webkit.org/show_bug.cgi?id=58224
2637
2638         Removed a file that is no longer in the source tree.
2639
2640         * GNUmakefile.list.am:
2641
2642 2011-04-11  Dimitri Glazkov  <dglazkov@chromium.org>
2643
2644         Reviewed by Martin Robinson.
2645
2646         REGRESSION(r83397): Most GTK media controls are hidden when no valid source is specified
2647         https://bugs.webkit.org/show_bug.cgi?id=58204
2648
2649         Covered by existing tests.
2650
2651         * platform/gtk/RenderThemeGtk.h:
2652         (WebCore::RenderThemeGtk::hasOwnDisabledStateHandlingFor): Let GTK handle
2653             the the state of media controls.
2654
2655 2011-04-11  Dimitri Glazkov  <dglazkov@chromium.org>
2656
2657         Remove obsolete comment, which was mistakenly landed in r83397.
2658
2659         Though potentially a work of art, the comment lost its functional meaning a long time ago.
2660
2661         * html/shadow/MediaControls.cpp:
2662         (WebCore::MediaControls::create): Removed comment.
2663
2664 2011-04-05  Hans Wennborg  <hans@chromium.org>
2665
2666         Reviewed by Steve Block.
2667
2668         IndexedDB: Introduce skeleton for LevelDB backend
2669         https://bugs.webkit.org/show_bug.cgi?id=57827
2670
2671         No new tests: no new functionality (yet).
2672
2673         * WebCore.gyp/WebCore.gyp:
2674             Add dependency on leveldb when ENABLE_LEVELDB=1 in feature_defines.
2675         * WebCore.gypi:
2676             Add new files.
2677         * storage/IDBBackingStore.h:
2678         (WebCore::IDBBackingStore::ObjectStoreRecordIdentifier::~ObjectStoreRecordIdentifier):
2679             Introduce abstract type ObjectStoreRecordIdentifier. The SQLite
2680             backend uses integers to refer to a specific row in a table, but
2681             the LevelDB backend will use something else.
2682         * storage/IDBDatabaseBackendImpl.cpp:
2683         (WebCore::IDBDatabaseBackendImpl::createObjectStore):
2684         (WebCore::IDBDatabaseBackendImpl::createObjectStoreInternal):
2685         (WebCore::IDBDatabaseBackendImpl::deleteObjectStoreInternal):
2686         (WebCore::IDBDatabaseBackendImpl::loadObjectStores):
2687             Change functions to pass along the database id for operations that
2688             concern object stores. We want to be able to group object stores
2689             ids per database.
2690         * storage/IDBFactoryBackendImpl.cpp:
2691         (WebCore::IDBFactoryBackendImpl::open):
2692             Decide which backend to use based on the backingStoreType
2693             parameter.
2694         * storage/IDBIndexBackendImpl.cpp:
2695         (WebCore::IDBIndexBackendImpl::IDBIndexBackendImpl):
2696         (WebCore::IDBIndexBackendImpl::openCursorInternal):
2697         (WebCore::IDBIndexBackendImpl::getInternal):
2698         (WebCore::IDBIndexBackendImpl::addingKeyAllowed):
2699         * storage/IDBIndexBackendImpl.h:
2700         (WebCore::IDBIndexBackendImpl::create):
2701             Pass database and object store id to backend functions concerning
2702             indexes.
2703         * storage/IDBLevelDBBackingStore.cpp: Added.
2704         (WebCore::IDBLevelDBBackingStore::IDBLevelDBBackingStore):
2705         (WebCore::IDBLevelDBBackingStore::~IDBLevelDBBackingStore):
2706         (WebCore::IDBLevelDBBackingStore::open):
2707         (WebCore::IDBLevelDBBackingStore::extractIDBDatabaseMetaData):
2708         (WebCore::IDBLevelDBBackingStore::setIDBDatabaseMetaData):
2709         (WebCore::IDBLevelDBBackingStore::getObjectStores):
2710         (WebCore::IDBLevelDBBackingStore::createObjectStore):
2711         (WebCore::IDBLevelDBBackingStore::deleteObjectStore):
2712         (WebCore::IDBLevelDBBackingStore::getObjectStoreRecord):
2713         (WebCore::IDBLevelDBBackingStore::putObjectStoreRecord):
2714         (WebCore::IDBLevelDBBackingStore::clearObjectStore):
2715         (WebCore::IDBLevelDBBackingStore::deleteObjectStoreRecord):
2716         (WebCore::IDBLevelDBBackingStore::nextAutoIncrementNumber):
2717         (WebCore::IDBLevelDBBackingStore::keyExistsInObjectStore):
2718         (WebCore::IDBLevelDBBackingStore::forEachObjectStoreRecord):
2719         (WebCore::IDBLevelDBBackingStore::getIndexes):
2720         (WebCore::IDBLevelDBBackingStore::createIndex):
2721         (WebCore::IDBLevelDBBackingStore::deleteIndex):
2722         (WebCore::IDBLevelDBBackingStore::putIndexDataForRecord):
2723         (WebCore::IDBLevelDBBackingStore::deleteIndexDataForRecord):
2724         (WebCore::IDBLevelDBBackingStore::getObjectViaIndex):
2725         (WebCore::IDBLevelDBBackingStore::getPrimaryKeyViaIndex):
2726         (WebCore::IDBLevelDBBackingStore::keyExistsInIndex):
2727         (WebCore::IDBLevelDBBackingStore::openObjectStoreCursor):
2728         (WebCore::IDBLevelDBBackingStore::openIndexKeyCursor):
2729         (WebCore::IDBLevelDBBackingStore::openIndexCursor):
2730         (WebCore::IDBLevelDBBackingStore::createTransaction):
2731         * storage/IDBLevelDBBackingStore.h: Added.
2732             Add an empty implementation of the LevelDB backend.
2733         * storage/IDBObjectStoreBackendImpl.cpp:
2734             Keep track of database id, use the new RecordIdentifier.
2735         (WebCore::IDBObjectStoreBackendImpl::IDBObjectStoreBackendImpl):
2736         (WebCore::IDBObjectStoreBackendImpl::getInternal):
2737         (WebCore::IDBObjectStoreBackendImpl::putInternal):
2738         (WebCore::IDBObjectStoreBackendImpl::deleteInternal):
2739         (WebCore::IDBObjectStoreBackendImpl::clearInternal):
2740         (WebCore::populateIndex):
2741         (WebCore::IDBObjectStoreBackendImpl::createIndex):
2742         (WebCore::IDBObjectStoreBackendImpl::createIndexInternal):
2743         (WebCore::IDBObjectStoreBackendImpl::deleteIndexInternal):
2744         (WebCore::IDBObjectStoreBackendImpl::openCursorInternal):
2745         (WebCore::IDBObjectStoreBackendImpl::loadIndexes):
2746         (WebCore::IDBObjectStoreBackendImpl::genAutoIncrementKey):
2747         * storage/IDBObjectStoreBackendImpl.h:
2748         (WebCore::IDBObjectStoreBackendImpl::create):
2749         (WebCore::IDBObjectStoreBackendImpl::databaseId):
2750         * storage/IDBSQLiteBackingStore.cpp:
2751         (WebCore::IDBSQLiteBackingStore::open):
2752         (WebCore::IDBSQLiteBackingStore::createObjectStore):
2753         (WebCore::IDBSQLiteBackingStore::deleteObjectStore):
2754         (WebCore::IDBSQLiteBackingStore::getObjectStoreRecord):
2755         (WebCore::IDBSQLiteBackingStore::putObjectStoreRecord):
2756         (WebCore::IDBSQLiteBackingStore::clearObjectStore):
2757         (WebCore::IDBSQLiteBackingStore::deleteObjectStoreRecord):
2758         (WebCore::IDBSQLiteBackingStore::nextAutoIncrementNumber):
2759         (WebCore::IDBSQLiteBackingStore::keyExistsInObjectStore):
2760         (WebCore::IDBSQLiteBackingStore::forEachObjectStoreRecord):
2761         (WebCore::IDBSQLiteBackingStore::getIndexes):
2762         (WebCore::IDBSQLiteBackingStore::createIndex):
2763         (WebCore::IDBSQLiteBackingStore::deleteIndex):
2764         (WebCore::IDBSQLiteBackingStore::putIndexDataForRecord):
2765         (WebCore::IDBSQLiteBackingStore::deleteIndexDataForRecord):
2766         (WebCore::IDBSQLiteBackingStore::getObjectViaIndex):
2767         (WebCore::IDBSQLiteBackingStore::getPrimaryKeyViaIndex):
2768         (WebCore::IDBSQLiteBackingStore::keyExistsInIndex):
2769         (WebCore::IDBSQLiteBackingStore::openObjectStoreCursor):
2770         (WebCore::IDBSQLiteBackingStore::openIndexKeyCursor):
2771         (WebCore::IDBSQLiteBackingStore::openIndexCursor):
2772         * storage/IDBSQLiteBackingStore.h:
2773
2774 2011-04-11  Alexander Pavlov  <apavlov@chromium.org>
2775
2776         Reviewed by Yury Semikhatsky.
2777
2778         Web Inspector: Duplicate CSS properties are reported for non-lowercase property names in the Styles sidebar
2779         https://bugs.webkit.org/show_bug.cgi?id=58226
2780
2781         * inspector/InspectorStyleSheet.cpp:
2782         (WebCore::InspectorStyle::populateAllProperties):
2783
2784 2011-04-07  Pavel Podivilov  <podivilov@chromium.org>
2785
2786         Reviewed by Pavel Feldman.
2787
2788         Web Inspector: get rid of source frame delegates for resources panel.
2789         https://bugs.webkit.org/show_bug.cgi?id=58041
2790
2791         Use TextViewer configured with a domain-specific delegate to show/edit resource contents in resources panel.
2792
2793         * inspector/front-end/ResourceView.js:
2794         (WebInspector.ResourceView.createResourceView):
2795         (WebInspector.ResourceView.resourceViewTypeMatchesResource):
2796         (WebInspector.ResourceSourceFrame):
2797         (WebInspector.ResourceSourceFrame.prototype.get resource):
2798         (WebInspector.ResourceSourceFrame.prototype.contentEditable):
2799         (WebInspector.ResourceSourceFrame.prototype._requestContent):
2800         (WebInspector.CSSSourceFrame):
2801         (WebInspector.CSSSourceFrame.prototype.contentEditable):
2802         (WebInspector.CSSSourceFrame.prototype._editContent):
2803         (WebInspector.CSSSourceFrame.prototype._editContent.handleInfos):
2804         (WebInspector.CSSSourceFrame.prototype._saveStyleSheet):
2805         * inspector/front-end/SourceFrame.js:
2806         (WebInspector.SourceFrame.prototype._ensureContentLoaded):
2807         (WebInspector.SourceFrame.prototype._requestContent):
2808         (WebInspector.SourceFrame.prototype._handleSave):
2809         (WebInspector.SourceFrame.prototype._editContent):
2810
2811 2011-04-11  Alexis Menard  <alexis.menard@openbossa.org>
2812
2813         Reviewed by Andreas Kling.
2814
2815         [Qt] Regression : r83051 Oxygen's lineedits are not rendered properly
2816         https://bugs.webkit.org/show_bug.cgi?id=58076
2817
2818         State_Sunken is more generic than pressed. It is used by items such as frames or
2819         line edits because they are "sunken" frames (e.g. QLineEdit). It can be required
2820         by some style like Oxygen. Therefore only in the mobile theme we check if the object
2821         is pressed.
2822
2823         * platform/qt/RenderThemeQt.cpp:
2824         (WebCore::RenderThemeQt::paintTextField):
2825
2826 2011-04-11  Pavel Feldman  <pfeldman@chromium.org>
2827
2828         Reviewed by Yury Semikhatsky.
2829
2830         Web Inspector: add support for optional output parameters.
2831         https://bugs.webkit.org/show_bug.cgi?id=58207
2832
2833         Output parameters such as "redirectResponse" are optional, but
2834         do not allow specifying them as such.
2835
2836         * inspector/CodeGeneratorInspector.pm:
2837         * inspector/Inspector.json:
2838         * inspector/InspectorResourceAgent.cpp:
2839         (WebCore::buildObjectForResourceResponse):
2840         (WebCore::buildObjectForCachedResource):
2841         * inspector/front-end/NetworkManager.js:
2842         (WebInspector.NetworkDispatcher.prototype._updateResourceWithResponse):
2843         * inspector/generate-inspector-idl:
2844
2845 2011-04-11  Pavel Feldman  <pfeldman@chromium.org>
2846
2847         Reviewed by Yury Semikhatsky.
2848
2849         Web Inspector: refactor / document call frames in debugger domain.
2850         https://bugs.webkit.org/show_bug.cgi?id=58187
2851
2852         Note that we are not special casing with(element) and with(document) anymore
2853         and do not tell user that it is "Event target" and "Event document". Strictly speaking,
2854         we should not have done it for with(element) not necessarily being related to an event.
2855
2856         * English.lproj/localizedStrings.js:
2857         * inspector/InjectedScriptSource.js:
2858         * inspector/Inspector.json:
2859         * inspector/front-end/ScopeChainSidebarPane.js:
2860         (WebInspector.ScopeChainSidebarPane.prototype.update):
2861
2862 2011-04-10  ChangSeok Oh  <shivamidow@gmail.com>
2863
2864         Reviewed by Eric Seidel.
2865
2866         Make correspondence of file name related with event to other port.
2867         https://bugs.webkit.org/show_bug.cgi?id=57416
2868
2869         Some file names are changed to make correspondence naming rule.
2870         Keyboard, mouse and wheel event file names for GTK port have been different from other ports.
2871         This has made user hard to find a specific file related with event for GTK port. 
2872
2873         No test required. This patch just changes some file names.
2874
2875         * GNUmakefile.list.am:
2876         * platform/gtk/KeyEventGtk.cpp: Removed.
2877         * platform/gtk/MouseEventGtk.cpp: Removed.
2878         * platform/gtk/PlatformKeyboardEventGtk.cpp: Added.
2879         * platform/gtk/PlatformMouseEventGtk.cpp: Added.
2880         * platform/gtk/PlatformWheelEventGtk.cpp: Added.
2881         * platform/gtk/WheelEventGtk.cpp: Removed.
2882
2883 2011-04-10  Simon Fraser  <simon.fraser@apple.com>
2884
2885         Revert the FloatRect.cpp part of r83422, since
2886         clampToInteger() is broken for some inputs. I filed
2887         https://bugs.webkit.org/show_bug.cgi?id=58216
2888
2889         * platform/graphics/FloatRect.cpp:
2890         (WebCore::safeFloatToInt):
2891         (WebCore::enclosingIntRect):
2892
2893 2011-04-10  Simon Fraser  <simon.fraser@apple.com>
2894
2895         Reviewed by Maciej Stachowiak.
2896
2897         Car model dropdowns at audiusa.com lay out incorrectly with compositing enabled
2898         https://bugs.webkit.org/show_bug.cgi?id=56660
2899         
2900         When overflow on an element changes, we need to inform compositing
2901         layers which create and position an "ancestor clipping" layer based
2902         on that overflow. Do this by triggering a rebuild of compositing layers
2903         when overflow changes on a layer whose stacking context has compositing
2904         descendants. (We can't just check whether the layer itself has compositing
2905         descendants, because overflow follows the render tree, but compositing
2906         follows the z-order tree.)
2907
2908         Test: compositing/geometry/ancestor-overflow-change.html
2909
2910         * rendering/RenderLayer.cpp:
2911         (WebCore::RenderLayer::styleChanged):
2912         * rendering/RenderLayer.h:
2913         * rendering/RenderLayerBacking.cpp:
2914         (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
2915
2916 2011-04-10  Simon Fraser  <simon.fraser@apple.com>
2917
2918         Reviewed by Ariya Hidayat.
2919
2920         Allow ShadowBlur to re-use the last buffer if it already contains the correct shadow
2921         https://bugs.webkit.org/show_bug.cgi?id=58161
2922         
2923         ShadowBlur already has a singleton scratch buffer that is re-used
2924         between shadows. Enhance use of this scratch buffer to avoid drawing
2925         and blurring the shadow if the results will match what is already
2926         in the buffer.
2927         
2928         Cleaned up ShadowBlur code to remove beginShadowLayer() and endShadowLayer(),
2929         which ended up with little reusable code after adding the re-use logic.
2930
2931         * platform/graphics/FloatRect.cpp:
2932         (WebCore::enclosingIntRect): Replace safeFloatToInt() with the existing
2933         clampToInteger() from MathExtras.h
2934         
2935         * platform/graphics/FloatSize.h:
2936         (WebCore::expandedIntSize): New method to safely ceil() the size.
2937         
2938         * platform/graphics/RoundedIntRect.h:
2939         Add operator== for Radii and RoundedIntRect.
2940
2941         * platform/graphics/ShadowBlur.cpp:
2942         (WebCore::ScratchBuffer::ScratchBuffer):
2943         (WebCore::ScratchBuffer::setLastShadowValues):
2944         (WebCore::ScratchBuffer::setLastInsetShadowValues):
2945         (WebCore::ScratchBuffer::matchesLastShadow):
2946         (WebCore::ScratchBuffer::matchesLastInsetShadow):
2947         (WebCore::ScratchBuffer::clearScratchBuffer):
2948         Have the scratch buffer remember what shadow parameters were used
2949         to render the buffer contents.
2950         
2951         (WebCore::ShadowBlur::drawShadowBuffer):
2952         Renamed from endShadowLayer(), and only contains the drawing
2953         logic now.
2954         
2955         (WebCore::ShadowBlur::drawRectShadow):
2956         Promote some code from beginShadowLayer().
2957         
2958         (WebCore::ShadowBlur::drawInsetShadow):
2959         Promote some code from beginShadowLayer().
2960
2961         (WebCore::ShadowBlur::drawRectShadowWithoutTiling):
2962         (WebCore::ShadowBlur::drawInsetShadowWithoutTiling):
2963         (WebCore::ShadowBlur::drawInsetShadowWithTiling):
2964         (WebCore::ShadowBlur::drawRectShadowWithTiling):
2965         These methods now check to see if the buffer already matches
2966         their required parameters, and avoid work if it does.
2967         
2968         (WebCore::ShadowBlur::blurShadowBuffer):
2969         Factored some code into this new method.
2970         
2971         (WebCore::ShadowBlur::blurAndColorShadowBuffer):
2972         Minor refactoring.
2973
2974         * platform/graphics/ShadowBlur.h:
2975
2976 2011-04-10  Geoffrey Garen  <ggaren@apple.com>
2977
2978         Build fix: Updated for file move.
2979
2980         * bindings/js/GCController.cpp:
2981         * bindings/js/ScriptGCEvent.cpp:
2982
2983 2011-04-10  Geoffrey Garen  <ggaren@apple.com>
2984
2985         Rubber-stamped by Beth Dakin.
2986
2987         Moved Heap.h and Heap.cpp to the heap folder, because anything less 
2988         would be uncivilized.
2989
2990         * ForwardingHeaders/heap/Heap.h: Copied from WebCore/ForwardingHeaders/runtime/Heap.h.
2991         * ForwardingHeaders/runtime/Heap.h: Removed.
2992
2993 2011-04-10  Luke Macpherson   <macpherson@chromium.org>
2994
2995         Reviewed by Simon Fraser.
2996
2997         Rename CSSStyleApplyProperty::inherit,initial,value applyInheritValue,applyInitialValue,applyValue
2998         https://bugs.webkit.org/show_bug.cgi?id=58212
2999
3000         No new tests - function renaming only / no functionality changes.
3001
3002         * css/CSSStyleApplyProperty.cpp:
3003         Rename all instances of inherit, initial and value.
3004         * css/CSSStyleApplyProperty.h:
3005         Rename all instances of inherit, initial and value.
3006         * css/CSSStyleSelector.cpp:
3007         Rename all instances of inherit, initial and value.
3008
3009 2011-04-10  Mike Lawther  <mikelawther@chromium.org>
3010
3011         Reviewed by Ojan Vafai.
3012
3013         flex/bison tokens and grammar for CSS calc
3014         https://bugs.webkit.org/show_bug.cgi?id=54412
3015
3016         Tests: css3/calc/calc-errors.html
3017                css3/calc/lexer-regression-57581-2.html
3018                css3/calc/lexer-regression-57581-3.html
3019                css3/calc/lexer-regression-57581.html
3020                css3/calc/minmax-errors.html
3021                css3/calc/nested-rounded-corners.html
3022                css3/calc/simple-calcs.html
3023                css3/calc/simple-minmax.html
3024
3025         * css/CSSGrammar.y:
3026         * css/CSSParserValues.cpp:
3027         (WebCore::CSSParserValueList::insertValueAt):
3028         (WebCore::CSSParserValueList::extend):
3029         * css/CSSParserValues.h:
3030         * css/tokenizer.flex:
3031
3032 2011-04-10  Alice Boxhall  <aboxhall@chromium.org>
3033
3034         Reviewed by Ryosuke Niwa.
3035
3036         Change EventHandler::updateSelectionForMouseDrag to take a HitTestResult only.
3037         https://bugs.webkit.org/show_bug.cgi?id=57923
3038
3039         Change EventHandler::updateSelectionForMouseDrag to take a HitTestResult
3040         rather than a Node* and an IntPoint&, as the selection may actually not
3041         extend into the Node found by the HitTest.
3042
3043         No new tests. Refactoring only.
3044
3045         * page/EventHandler.cpp:
3046         (WebCore::EventHandler::handleMouseDraggedEvent):
3047         (WebCore::EventHandler::updateSelectionForMouseDrag):
3048         * page/EventHandler.h:
3049
3050 2011-04-10  Kent Tamura  <tkent@chromium.org>
3051
3052         Unreviewed, rolling out r83353.
3053         http://trac.webkit.org/changeset/83353
3054         https://bugs.webkit.org/show_bug.cgi?id=58106
3055
3056         The new test doesn't pass on all Chromium platforms.
3057
3058         * dom/DataTransferItem.h:
3059         * dom/DataTransferItem.idl:
3060         * platform/chromium/ClipboardMimeTypes.cpp:
3061         * platform/chromium/ClipboardMimeTypes.h:
3062         * platform/chromium/DataTransferItemChromium.cpp:
3063         (WebCore::DataTransferItemChromium::getAsString):
3064         * platform/chromium/DataTransferItemChromium.h:
3065         * platform/chromium/PlatformBridge.h:
3066
3067 2011-04-10  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
3068
3069         Reviewed by Eric Carlson.
3070
3071         [EFL] Add seek forward / backward buttons to MediaControl UI.
3072         https://bugs.webkit.org/show_bug.cgi?id=56810
3073
3074         Add seek forward / backward buttons to media control. And, change formType name
3075         for media control.
3076
3077         * platform/efl/RenderThemeEfl.cpp:
3078         (WebCore::RenderThemeEfl::edjeGroupFromFormType):
3079         (WebCore::RenderThemeEfl::emitMediaButtonSignal):
3080         (WebCore::RenderThemeEfl::paintMediaMuteButton):
3081         (WebCore::RenderThemeEfl::paintMediaPlayButton):
3082         (WebCore::RenderThemeEfl::paintMediaSeekBackButton):
3083         (WebCore::RenderThemeEfl::paintMediaSeekForwardButton):
3084         * platform/efl/RenderThemeEfl.h:
3085
3086 2011-04-10  Chris Guillory  <chris.guillory@google.com>
3087
3088         Reviewed by Eric Seidel.
3089
3090         Remove unused function declaration in PlatformContextSkia.h.
3091         https://bugs.webkit.org/show_bug.cgi?id=55983
3092
3093         * platform/graphics/skia/PlatformContextSkia.h:
3094
3095 2011-04-10  Patrick Gansterer  <paroga@webkit.org>
3096
3097         Unreviewed build fix for !ENABLE(XSLT) after r82562.
3098
3099         * dom/XMLDocumentParserLibxml2.cpp:
3100         (WebCore::XMLDocumentParser::doEnd):
3101
3102 2011-04-10  Patrick Gansterer  <paroga@webkit.org>
3103
3104         Unreviewed build fix for !ENABLE(XSLT) after r82562.
3105
3106         * xml/XMLTreeViewer.cpp: Readded #if ENABLE(XSLT).
3107
3108 2011-04-10  Dimitri Glazkov  <dglazkov@chromium.org>
3109
3110         Reviewed by Anders Carlsson.
3111
3112         REGRESSION(r83256): Text-decoration bleeds into shadow DOM
3113         https://bugs.webkit.org/show_bug.cgi?id=58205
3114
3115         Now that the shadow root is a never-styled element, we need to walk to
3116         parent to find out if we're inside of a shadow DOM subtree.
3117
3118         Test: media/controls-styling.html
3119
3120         * css/CSSStyleSelector.cpp:
3121         (WebCore::isAtShadowBoundary): Added helper function.
3122         (WebCore::CSSStyleSelector::adjustRenderStyle): Changed to use the helper.
3123
3124 2011-04-07  Dimitri Glazkov  <dglazkov@chromium.org>
3125
3126         Reviewed by Eric Carlson.
3127
3128         [Meta] Convert HTMLMediaElement to use the new shadow DOM
3129         https://bugs.webkit.org/show_bug.cgi?id=53020
3130
3131         This conversion is non-trivial, for several reasons:
3132
3133         1) Since HTMLMediaElement now hosts the shadow DOM for controls, hiding
3134         and showing controls does not result in destroying and re-creating the
3135         shadow DOM tree. Instead, the tree is created as needed and shown/hidden
3136         using inline styles.
3137         
3138         2) Instead of detaching/attaching on each style change, the control parts
3139         are now using a set of higher fidelity callbacks that notify MediaControls
3140         about changes to which it should react. Each reaction results in hiding,
3141         showing, or changing the state of the control parts using inline styles
3142         and DOM APIs.
3143
3144         3) Hiding and showing controls is accomplished using inline styles, rather
3145         than wiring rendererIsNeeded, because renderers are now re-created less
3146         frequently.
3147
3148         4) Instead of constantly querying RenderTheme about visibility of a particular
3149         control part, we let the theme determine which parts are supported and
3150         which parts are visible in certain conditions.
3151
3152         5) Custom hit-testing, event forwarding, and style updates are completely
3153         removed, since they are now unnecessary.
3154
3155         6) Fading controls in/out is now done as CSS animation, since shadow DOM
3156         supports it.
3157
3158         Test: manual-tests/media-controls.html
3159
3160 2011-04-09  Dan Bernstein  <mitz@apple.com>
3161
3162         Reviewed by Beth Dakin.
3163
3164         <rdar://problem/9215280> Detached canvas draws with incorrect font
3165
3166         Test: fast/canvas/font-update.html
3167
3168         The existing mechanism for updating the font in a canvas 2D context was lacking in at least
3169         two ways: it neglected to update fonts in all but the topmost state in the stack, and since it
3170         was based on HTMLCanvasElemen's attach() and recalcStyle(), it did not work when the element
3171         was not attached.
3172
3173         This change takes the responsibility for font updates away from the canvas element and gives it
3174         to the canvas context and its graphics state.
3175
3176         * css/CSSFontSelector.cpp:
3177         (WebCore::CSSFontSelector::registerForInvalidationCallbacks): Added. Adds to the set of registered
3178         font selector clients.
3179         (WebCore::CSSFontSelector::unregisterForInvalidationCallbacks): Added. Removes from the set of
3180         registered font selector clients.
3181         (WebCore::CSSFontSelector::dispatchInvalidationCallbacks): Calls fontsNeedUpdate() on all registered
3182         clients and forces a style recalc on the document.
3183         (WebCore::CSSFontSelector::fontLoaded): Changed to call dispatchInvalidationCallbacks().
3184         (WebCore::CSSFontSelector::fontCacheInvalidated): Ditto.
3185         * css/CSSFontSelector.h:
3186         * html/HTMLCanvasElement.cpp: Removed overrides of attach() and recalcStyle().
3187         * html/HTMLCanvasElement.h:
3188         * html/canvas/CanvasRenderingContext2D.cpp:
3189         (WebCore::CanvasRenderingContext2D::State::~State): Added. Unregisters with the font selector.
3190         (WebCore::CanvasRenderingContext2D::State::fontsNeedUpdate): Added. Called by the font selector
3191         when its fonts need to be updated. Updates the font.
3192         (WebCore::CanvasRenderingContext2D::setFont): Registers the state with the font selector.
3193         * html/canvas/CanvasRenderingContext2D.h:
3194         * platform/graphics/FontSelector.h:
3195         (WebCore::FontSelectorClient::~FontSelectorClient):
3196
3197 2011-04-09  Geoffrey Garen  <ggaren@apple.com>
3198
3199         Not reviewed.
3200
3201         Try recommitting some things svn left out of my last commit.
3202
3203         * bridge/qt/qt_runtime.h:
3204
3205 2011-04-09  Geoffrey Garen  <ggaren@apple.com>
3206
3207         Not reviewed.
3208
3209         Try recommitting some things svn left out of my last commit.
3210
3211         * ForwardingHeaders/collector: Removed.
3212         * ForwardingHeaders/collector/handles: Removed.
3213         * ForwardingHeaders/collector/handles/Global.h: Removed.
3214
3215 2011-04-08  Dimitri Glazkov  <dglazkov@chromium.org>
3216
3217         Reviewed by Ojan Vafai.
3218
3219         Implement proper handling of mouseover/mouseout events in regard to shadow DOM boundaries.
3220         https://bugs.webkit.org/show_bug.cgi?id=55515
3221
3222         This implements XBL 2.0's specified handling of mouseover/mouseout events:
3223         http://dev.w3.org/2006/xbl2/Overview.html#the-mouseover-and-mouseout-events
3224
3225         To do this, we:
3226         1) calculate lowest common ancestor between relatedTarget and target, and
3227            the nearest boundaries around them: the outer (common) boundary, and the
3228            inner (specific to relatedTarget) boundary. Then, we
3229         2) ensure that events only propagate up to the common boundary (or
3230            all the way if boundary is not found), while
3231         3) updating relatedTarget be the inner boundary.
3232
3233         We also detect the most common case when no common boundary could exist
3234         and provide a fast path to short-circuit most of the boundary detection
3235         logic.
3236
3237         Test: fast/events/shadow-boundary-crossing.html
3238
3239         * dom/EventDispatcher.cpp:
3240         (WebCore::EventDispatcher::adjustToShadowBoundaries): Added a helper to determine lowest
3241             common ancestor, the boundaries around it, and compute adjustments
3242             to relatedTarget and event target ancestor chain.
3243         (WebCore::ancestorsCrossShadowBoundaries): Added.
3244         (WebCore::EventDispatcher::adjustRelatedTarget): Changed to calculate
3245             inner/outer shadow DOM boundaries and adjust ancestors chain accordingly.
3246         (WebCore::EventDispatcher::EventDispatcher): Added flag initializer
3247         (WebCore::EventDispatcher::ensureEventAncestors): Renamed from getEventAncestors,
3248             converted to use initialization flag, rather than testing for empty.
3249         * dom/EventDispatcher.h: Adjusted decls.
3250         * dom/MouseEvent.cpp:
3251         (WebCore::MouseEventDispatchMediator::dispatchEvent): Changed to send event
3252             to adjustRelatedTarget.
3253
3254 2011-04-08  Geoffrey Garen  <ggaren@apple.com>
3255
3256         Reviewed by Oliver Hunt.
3257
3258         A few heap-related renames and file moves.
3259         
3260         WeakGCPtr<T> => Weak<T>
3261         Global<T> => Strong<T>
3262         collector/ => heap/
3263         collector/* => heap/*
3264         runtime/WeakGCPtr.h => heap/Weak.h
3265         
3266         (Eventually, even more files should move into the heap directory. Like
3267         Heap.h and Heap.cpp, for example.)
3268
3269         * CMakeLists.txt:
3270         * ForwardingHeaders/collector: Removed.
3271         * ForwardingHeaders/heap: Copied from ForwardingHeaders/collector.
3272         * ForwardingHeaders/heap/Strong.h: Copied from ForwardingHeaders/collector/handles/Global.h.
3273         * ForwardingHeaders/heap/Weak.h: Copied from ForwardingHeaders/runtime/WeakGCPtr.h.
3274         * ForwardingHeaders/runtime/WeakGCPtr.h: Removed.
3275         * WebCore.vcproj/WebCore.vcproj:
3276         * WebCore.vcproj/copyForwardingHeaders.cmd:
3277         * bindings/js/JSCallbackData.h:
3278         * bindings/js/JSCustomVoidCallback.h:
3279         * bindings/js/JSDOMWindowBase.h:
3280         * bindings/js/JSDOMWindowShell.cpp:
3281         (WebCore::JSDOMWindowShell::setWindow):
3282         * bindings/js/JSDataGridDataSource.h:
3283         * bindings/js/JSEventListener.h:
3284         * bindings/js/ScheduledAction.cpp:
3285         (WebCore::ScheduledAction::ScheduledAction):
3286         * bindings/js/ScheduledAction.h:
3287         * bindings/js/ScriptCachedFrameData.cpp:
3288         (WebCore::ScriptCachedFrameData::ScriptCachedFrameData):
3289         * bindings/js/ScriptCachedFrameData.h:
3290         * bindings/js/ScriptController.cpp:
3291         (WebCore::ScriptController::createWindowShell):
3292         * bindings/js/ScriptController.h:
3293         * bindings/js/ScriptObject.h:
3294         * bindings/js/ScriptState.h:
3295         * bindings/js/ScriptValue.cpp:
3296         * bindings/js/ScriptValue.h:
3297         * bindings/js/ScriptWrappable.h:
3298         * bindings/js/WorkerScriptController.cpp:
3299         (WebCore::WorkerScriptController::initScript):
3300         * bindings/js/WorkerScriptController.h:
3301         * bridge/jsc/BridgeJSC.h:
3302         * bridge/qt/qt_runtime.h:
3303         * bridge/runtime_root.h:
3304         * xml/XMLHttpRequest.cpp:
3305
3306 2011-04-09  Keith Kyzivat  <keith.kyzivat@nokia.com>
3307
3308         Reviewed by Laszlo Gombos.
3309
3310         [Qt] Don't link against fontconfig or X11 if embedded
3311         https://bugs.webkit.org/show_bug.cgi?id=58104
3312
3313         No functional change so no new tests.
3314
3315         * WebCore.pri: qpa=>embedded should be done very early so all cases of embedded are uniform.
3316
3317 2011-04-09  Csaba Osztrogonác  <ossy@webkit.org>
3318
3319         [Qt] Unreviewed trivial fix after r83344.
3320
3321         * WebCore.pro: Update HEADERS list.
3322
3323 2011-04-09  Jon Lee  <jonlee@apple.com>
3324
3325         Reviewed by Beth Dakin.
3326
3327         Overlay scrollbar flashes in scrollable <textarea> with each keystroke (58180)
3328         https://bugs.webkit.org/show_bug.cgi?id=58180
3329         <rdar://problem/9047984>
3330
3331         * platform/mac/ScrollAnimatorMac.mm:
3332         (WebCore::ScrollAnimatorMac::immediateScrollToPoint): Check that there is a change before submitting
3333         (WebCore::ScrollAnimatorMac::immediateScrollByDeltaX):
3334         (WebCore::ScrollAnimatorMac::immediateScrollByDeltaY):
3335
3336 2011-04-09  Sreeram Ramachandran  <sreeram@google.com>
3337
3338         Reviewed by Ryosuke Niwa.
3339
3340         Gather data on modal dialogs shown during unload events
3341         https://bugs.webkit.org/show_bug.cgi?id=58115
3342
3343         Add a new method to the ChromeClient API to allow clients to receive
3344         notifications of modal dialogs dispatched during page dismissal events.
3345         The new method has a default empty definition; only chromium overrides
3346         it to keep track of histograms.
3347
3348         No tests because this is a no-op for all ports except chromium (and it's
3349         not clear how to test chromium histograms from webkit).
3350
3351         * page/Chrome.cpp:
3352         (WebCore::isDuringPageDismissal):
3353         (WebCore::willRunModalDialog):
3354         (WebCore::Chrome::runJavaScriptAlert):
3355         (WebCore::Chrome::runJavaScriptConfirm):
3356         (WebCore::Chrome::runJavaScriptPrompt):
3357         (WebCore::Chrome::willRunModalHTMLDialog):
3358         * page/Chrome.h:
3359         * page/ChromeClient.h:
3360         (WebCore::ChromeClient::willRunModalDialogDuringPageDismissal):
3361         * page/DOMWindow.cpp:
3362         (WebCore::DOMWindow::showModalDialog):
3363
3364 2011-04-08  David Humphrey  <david.humphrey@senecac.on.ca>
3365
3366         Reviewed by Eric Carlson.
3367
3368         Fix call order of media element muted and play(), such that setting muted before play() works.
3369         https://bugs.webkit.org/show_bug.cgi?id=57673
3370         https://code.google.com/p/chromium/issues/detail?id=70777
3371
3372         Manual test added: manual-tests/media-muted.html
3373
3374         * html/HTMLMediaElement.cpp:
3375         (WebCore::HTMLMediaElement::updatePlayState):
3376         * manual-tests/media-muted.html: Added.
3377
3378 2011-04-08  Nat Duca  <nduca@chromium.org>
3379
3380         Reviewed by David Levin.
3381
3382         [chromium] Fix windows assertion on ~CCThread
3383         https://bugs.webkit.org/show_bug.cgi?id=58153
3384
3385         Because ~CCThread uses waitForThreadCompletion,
3386         calling detachThread is not necessary.
3387
3388         * platform/graphics/chromium/cc/CCThread.cpp:
3389         (WebCore::CCThread::runLoop):
3390
3391 2011-04-08  Jian Li  <jianli@chromium.org>
3392
3393         Unreviewed, rolling out r83348.
3394         http://trac.webkit.org/changeset/83348
3395         https://bugs.webkit.org/show_bug.cgi?id=49508
3396
3397         Breaks layout tests in QT, Win7 and Chromium.
3398
3399         * rendering/RenderText.cpp:
3400         (WebCore::RenderText::localCaretRect):
3401
3402 2011-04-08  MORITA Hajime  <morrita@google.com>
3403
3404         Reviewed by Simon Fraser.
3405
3406         Negative spread should not make a sharp corner rounded
3407         https://bugs.webkit.org/show_bug.cgi?id=58162
3408
3409         Handled inset shadow path for rounded and non-rounded rect
3410         differently as normal shadow path is doing.
3411         
3412         * rendering/RenderBoxModelObject.cpp:
3413         (WebCore::RenderBoxModelObject::paintBoxShadow):
3414
3415 2011-04-07  Simon Fraser  <simon.fraser@apple.com>
3416
3417         Reviewed by Martin Robinson.
3418
3419         REGRESSION (r77034-r77220): CSS box-shadow no longer renders on PowerPC
3420         https://bugs.webkit.org/show_bug.cgi?id=55180
3421
3422         The endianness #ifdef in ShadowBlur was unnecessary and harmful. The
3423         data we get back from ImageBuffer::getImageData() do not vary in
3424         endianness.
3425
3426         * platform/graphics/ShadowBlur.cpp:
3427         (WebCore::ShadowBlur::blurLayerImage):
3428
3429 2011-04-08  Erik Arvidsson  <arv@chromium.org>
3430
3431         Reviewed by Dimitri Glazkov.
3432
3433         IFrame is getting the focus even though it is hidden
3434         https://bugs.webkit.org/show_bug.cgi?id=55861
3435
3436         Test: fast/dom/hidden-iframe-no-focus.html
3437
3438         * html/HTMLFrameOwnerElement.cpp:
3439         (WebCore::HTMLFrameOwnerElement::isKeyboardFocusable):
3440         * html/HTMLFrameOwnerElement.h:
3441
3442 2011-04-08  Jeff Timanus  <twiz@chromium.org>
3443
3444         Reviewed by Kenneth Russell.
3445
3446         Fall back to software rendering for Canvas2D when requesting a DrawingBuffer larger than supported by the GL environment.
3447         https://bugs.webkit.org/show_bug.cgi?id=57768
3448
3449         * html/canvas/CanvasRenderingContext2D.cpp:
3450         (WebCore::CanvasRenderingContext2D::CanvasRenderingContext2D):
3451         (WebCore::CanvasRenderingContext2D::reset):
3452         * platform/graphics/gpu/DrawingBuffer.cpp:
3453         (WebCore::DrawingBuffer::reset):
3454         * platform/graphics/gpu/DrawingBuffer.h:
3455
3456 2011-04-08  Daniel Cheng  <dcheng@chromium.org>
3457
3458         Reviewed by Dmitry Titov.
3459
3460         [chromium] Implement image/png support in DataTransferItems
3461         https://bugs.webkit.org/show_bug.cgi?id=58106
3462
3463         This patch implements DataTransferItem::getAsFile() using Blobs. In
3464         addition, plumbing for image/png has been added so image paste will be
3465         supported as long as the renderer makes that data available.
3466
3467         Tests: editing/pasteboard/data-transfer-items-image-png.html
3468
3469         * dom/DataTransferItem.h:
3470         * dom/DataTransferItem.idl:
3471         * platform/chromium/ClipboardMimeTypes.cpp:
3472         * platform/chromium/ClipboardMimeTypes.h:
3473         * platform/chromium/DataTransferItemChromium.cpp:
3474         (WebCore::DataTransferItemChromium::getAsString):
3475         (WebCore::DataTransferItemChromium::getAsFile):
3476         * platform/chromium/DataTransferItemChromium.h:
3477         * platform/chromium/PlatformBridge.h:
3478
3479 2011-04-08 MORITA Hajime  <morrita@google.com>
3480
3481         Unreviewed windows build fix.
3482         
3483         * editing/SpellingCorrectionController.h:
3484         (WebCore::SpellingCorrectionController::UNLESS_ENABLED):
3485
3486 2011-04-08  Enrica Casucci  <enrica@apple.com>
3487
3488         Reviewed by Maciej Stachowiak.
3489
3490         Improve lifetime management of nodes in ReplaceNodeWithSpanCommand.
3491         https://bugs.webkit.org/show_bug.cgi?id=57595
3492         <rdar://problem/9222122>
3493
3494         Test: editing/style/bold-with-dom-changes.html
3495
3496         * editing/ReplaceNodeWithSpanCommand.cpp:
3497         (WebCore::swapInNodePreservingAttributesAndChildren):
3498
3499 2011-04-07  Roland Steiner  <rolandsteiner@chromium.org>
3500
3501         Reviewed by Dimitri Glazkov.
3502
3503         Bug 58060 - Prepare access to TreeScope from Node, using NodeRareData
3504         https://bugs.webkit.org/show_bug.cgi?id=58060
3505
3506         Add a TreeScope pointer to NodeRareData to allow direct access to the containing tree scope.
3507         However, in case the containing scope is the document, this is not set, and the
3508         document pointer within Node is used instead.
3509
3510         In an object derived from TreeScope (currently Document), the tree scope pointer
3511         points to itself. Such objects also contain a parent tree scope pointer that
3512         points to the containing scope. For Document, this is 0.
3513
3514         Add new functions setTreeScope[Recursively] that replace setDocument[Recursively]
3515         in public usage. setDocument[Recursively] are now only used internally and are
3516         thererfore protected.
3517
3518         No new tests. (no new functionality)
3519
3520         * dom/ContainerNode.cpp: change DOM manipulation methods to update scope of inserted nodes
3521         (WebCore::ContainerNode::insertBefore):
3522         (WebCore::ContainerNode::replaceChild):
3523         (WebCore::ContainerNode::appendChild):
3524         * dom/Document.cpp:
3525         (WebCore::Document::~Document):
3526         (WebCore::Document::setDocType): Ditto
3527         (WebCore::Document::adoptNode): Ditto
3528         * dom/Document.h:
3529         * dom/Node.cpp:
3530         (WebCore::Node::treeScope): use NodeRareData to check if a non-Document scope is set
3531         (WebCore::Node::setTreeScope): update NodeRareData depending on whether scope is a document
3532         (WebCore::Node::setTreeScopeRecursively):
3533         (WebCore::Node::setDocumentRecursively):
3534         * dom/Node.h:
3535         * dom/NodeRareData.h: add scope pointer
3536         (WebCore::NodeRareData::NodeRareData):
3537         (WebCore::NodeRareData::treeScope):
3538         (WebCore::NodeRareData::setTreeScope):
3539         * dom/TreeScope.cpp: add parentTreeScope pointer
3540         (WebCore::TreeScope::TreeScope):
3541         (WebCore::TreeScope::setParentTreeScope):
3542         * dom/TreeScope.h:
3543         (WebCore::TreeScope::parentTreeScope):
3544
3545 2011-04-08  Xiaomei Ji  <xji@chromium.org>
3546
3547         Reviewed by David Hyatt.
3548
3549         Local caret rectangle calculation should be relative to its containing block.
3550         https://bugs.webkit.org/show_bug.cgi?id=49508.
3551
3552         InlineBox and caret rectangle are positioned relative to its containing block.
3553         So its left and right edge value should be relative to its containing block as well. 
3554
3555         Test: fast/forms/cursor-at-editable-content-boundary.html
3556
3557         * rendering/RenderText.cpp:
3558         (WebCore::RenderText::localCaretRect):
3559
3560 2011-04-08  MORITA Hajime  <morrita@google.com>
3561
3562         Unreviewed build fix.
3563
3564         * editing/Editor.cpp:
3565         (WebCore::Editor::markMisspellingsAfterTypingToWord):
3566
3567 2011-04-08  David Hyatt  <hyatt@apple.com>
3568
3569         Reviewed by Simon Fraser.
3570
3571         https://bugs.webkit.org/show_bug.cgi?id=57971
3572         
3573         Rework visited/unvisited links for before/after content. Propagate the bits earlier so that we don't lose
3574         them when we throw away the visited style. Don't throw away the visited link style for pseudo elements
3575         either, so that the styles are consistent.
3576
3577         Added fast/history/visited-generated-content-test.html
3578
3579         * css/CSSStyleSelector.cpp:
3580         (WebCore::CSSStyleSelector::styleForElement):
3581         (WebCore::CSSStyleSelector::pseudoStyleForElement):
3582
3583 2011-04-06  MORITA Hajime  <morrita@google.com>
3584
3585         Reviewed by Darin Adler.
3586
3587         [Refactoring] Auto correction panel should be handled by its own class.
3588         https://bugs.webkit.org/show_bug.cgi?id=55571
3589
3590         Extracted code inside SUPPORT_AUTOCORRECTION_PANEL into
3591         SpellingCorrectionController class.
3592         This change also remove some SUPPORT_AUTOCORRECTION_PANEL guard if
3593         code paths inside the never reached without autocorrection support.
3594         Removing guards reduces unintentional build breakage.
3595
3596         No new tests, no behavior chagne.
3597
3598         * CMakeLists.txt:
3599         * GNUmakefile.am:
3600         * WebCore.gypi:
3601         * WebCore.pro:
3602         * WebCore.vcproj/WebCore.vcproj:
3603         * WebCore.xcodeproj/project.pbxproj:
3604         * editing/CorrectionPanelInfo.h: Removed.
3605         * editing/EditingAllInOne.cpp:
3606         * editing/Editor.cpp:
3607         (WebCore::Editor::respondToChangedSelection):
3608         (WebCore::Editor::respondToChangedContents):
3609         (WebCore::Editor::appliedEditing):
3610         (WebCore::Editor::Editor):
3611         (WebCore::Editor::~Editor):
3612         (WebCore::Editor::insertTextWithoutSendingTextEvent):
3613         (WebCore::Editor::insertLineBreak):
3614         (WebCore::Editor::insertParagraphSeparator):
3615         (WebCore::Editor::cut):
3616         (WebCore::Editor::paste):
3617         (WebCore::Editor::pasteAsPlainText):
3618         (WebCore::Editor::isAutomaticSpellingCorrectionEnabled):
3619         (WebCore::Editor::markMisspellingsAfterTypingToWord):
3620         (WebCore::Editor::markAllMisspellingsAndBadGrammarInRanges):
3621         (WebCore::Editor::changeBackToReplacedString):
3622         (WebCore::Editor::unappliedSpellCorrection):
3623         (WebCore::Editor::updateMarkersForWordsAffectedByEditing):
3624         (WebCore::Editor::startCorrectionPanelTimer):
3625         (WebCore::Editor::handleCorrectionPanelResult):
3626         (WebCore::Editor::dismissCorrectionPanelAsIgnored):
3627         * editing/Editor.h:
3628         * editing/SpellingCorrectionCommand.cpp:
3629         * editing/SpellingCorrectionController.cpp: Added.
3630         (WebCore::markerTypesForAutocorrection):
3631         (WebCore::markerTypesForReplacement):
3632         (WebCore::markersHaveIdenticalDescription):
3633         (WebCore::SpellingCorrectionController::SpellingCorrectionController):
3634         (WebCore::SpellingCorrectionController::~SpellingCorrectionController):
3635         (WebCore::SpellingCorrectionController::startCorrectionPanelTimer):
3636         (WebCore::SpellingCorrectionController::stopCorrectionPanelTimer):
3637         (WebCore::SpellingCorrectionController::stopPendingCorrection):
3638         (WebCore::SpellingCorrectionController::applyPendingCorrection):
3639         (WebCore::SpellingCorrectionController::hasPendingCorrection):
3640         (WebCore::SpellingCorrectionController::isSpellingMarkerAllowed):
3641         (WebCore::SpellingCorrectionController::show):
3642         (WebCore::SpellingCorrectionController::handleCancelOperation):
3643         (WebCore::SpellingCorrectionController::dismiss):
3644         (WebCore::SpellingCorrectionController::dismissSoon):
3645         (WebCore::SpellingCorrectionController::applyCorrectionPanelInfo):
3646         (WebCore::SpellingCorrectionController::applyAutocorrectionBeforeTypingIfAppropriate):
3647         (WebCore::SpellingCorrectionController::respondToUnappliedSpellCorrection):
3648         (WebCore::SpellingCorrectionController::correctionPanelTimerFired):
3649         (WebCore::SpellingCorrectionController::handleCorrectionPanelResult):
3650         (WebCore::SpellingCorrectionController::isAutomaticSpellingCorrectionEnabled):
3651         (WebCore::SpellingCorrectionController::windowRectForRange):
3652         (WebCore::SpellingCorrectionController::respondToChangedSelection):
3653         (WebCore::SpellingCorrectionController::respondToAppliedEditing):
3654         (WebCore::SpellingCorrectionController::client):
3655         (WebCore::SpellingCorrectionController::textChecker):
3656         (WebCore::SpellingCorrectionController::recordAutocorrectionResponseReversed):
3657         (WebCore::SpellingCorrectionController::markReversed):
3658         (WebCore::SpellingCorrectionController::markCorrection):
3659         (WebCore::SpellingCorrectionController::recordSpellcheckerResponseForModifiedCorrection):
3660         * editing/SpellingCorrectionController.h: Added.
3661         (WebCore::SpellingCorrectionController::UNLESS_ENABLED):
3662         (WebCore::SpellingCorrectionController::shouldStartTimeFor):
3663         (WebCore::SpellingCorrectionController::shouldRemoveMarkersUponEditing):        
3664         * editing/TypingCommand.cpp:
3665         (WebCore::TypingCommand::insertText):
3666         (WebCore::TypingCommand::markMisspellingsAfterTyping):
3667         (WebCore::TypingCommand::deleteKeyPressed):
3668         (WebCore::TypingCommand::forwardDeleteKeyPressed):
3669         * editing/htmlediting.h:
3670         (WebCore::isAmbiguousBoundaryCharacter):
3671         * page/EditorClient.h:
3672         * page/Frame.cpp:
3673         (WebCore::Frame::setPageAndTextZoomFactors):
3674
3675 2011-04-08  Alpha Lam  <hclam@chromium.org>
3676
3677         Unreviewed, rolling out r83335.
3678         http://trac.webkit.org/changeset/83335
3679         https://bugs.webkit.org/show_bug.cgi?id=53556
3680
3681         GTK and QT bots are broken
3682
3683         * CMakeLists.txt:
3684         * Configurations/FeatureDefines.xcconfig:
3685         * DerivedSources.make:
3686         * GNUmakefile.am:
3687         * WebCore.gypi:
3688         * WebCore.xcodeproj/project.pbxproj:
3689         * features.pri:
3690         * html/HTMLAttributeNames.in:
3691         * html/HTMLTagNames.in:
3692         * html/HTMLTrackElement.cpp: Removed.
3693         * html/HTMLTrackElement.h: Removed.
3694         * html/HTMLTrackElement.idl: Removed.
3695
3696 2011-04-08  Brady Eidson  <beidson@apple.com>
3697
3698         Reviewed by Adam Roben.
3699
3700         https://bugs.webkit.org/show_bug.cgi?id=58155 and part of <rdar://problem/9251767>
3701         BitmapImage::getFirstCGImageRefOfSize fails if the frameCount hasn't been initialized from the image source.
3702
3703         * platform/graphics/cg/ImageCG.cpp:
3704         (WebCore::BitmapImage::getFirstCGImageRefOfSize): Call frameCount() instead of accessing m_frames.size() to
3705           make sure the frames are properly tallied first.
3706
3707 2011-04-08  Benjamin Poulain  <benjamin.poulain@nokia.com>
3708
3709         Reviewed by Andreas Kling.
3710
3711         [Qt] Dragging and dropping an image in edit mode does not work
3712         https://bugs.webkit.org/show_bug.cgi?id=19385
3713
3714         When adding an image to the clipboard, we should also include the HTML code of that image so
3715         it can be used for internal drag and drop.
3716
3717         This HTML is expected by all clients of drop events so a fragment can be moved from one browser to
3718         another, or inside the same browser.
3719
3720         * platform/qt/ClipboardQt.cpp:
3721         (WebCore::ClipboardQt::declareAndWriteDragImage):
3722
3723 2011-04-07  Anna Cavender  <annacc@chromium.org>
3724
3725         Reviewed by Eric Carlson.
3726
3727         Setup ENABLE(TRACK) feature define + initial HTMLTrackElement
3728         https://bugs.webkit.org/show_bug.cgi?id=53556
3729
3730         No new tests. No real functionality added just yet.
3731
3732         * CMakeLists.txt:
3733         * Configurations/FeatureDefines.xcconfig:
3734         * DerivedSources.make:
3735         * GNUmakefile.am:
3736         * WebCore.gypi:
3737         * WebCore.xcodeproj/project.pbxproj:
3738         * features.pri:
3739         * html/HTMLAttributeNames.in:
3740         * html/HTMLTagNames.in:
3741         * html/HTMLTrackElement.cpp: Added.
3742         (WebCore::HTMLTrackElement::HTMLTrackElement):
3743         (WebCore::HTMLTrackElement::create):
3744         (WebCore::HTMLTrackElement::insertedIntoTree):
3745         (WebCore::HTMLTrackElement::willRemove):
3746         (WebCore::HTMLTrackElement::src):
3747         (WebCore::HTMLTrackElement::setSrc):
3748         (WebCore::HTMLTrackElement::kind):
3749         (WebCore::HTMLTrackElement::setKind):
3750         (WebCore::HTMLTrackElement::srclang):
3751         (WebCore::HTMLTrackElement::setSrclang):
3752         (WebCore::HTMLTrackElement::label):
3753         (WebCore::HTMLTrackElement::setLabel):
3754         (WebCore::HTMLTrackElement::isDefault):
3755         (WebCore::HTMLTrackElement::setIsDefault):
3756         (WebCore::HTMLTrackElement::isURLAttribute):
3757         * html/HTMLTrackElement.h: Added.
3758         * html/HTMLTrackElement.idl: Added.
3759
3760 2011-04-07  Jer Noble  <jer.noble@apple.com>
3761
3762         Reviewed by Eric Carlson.
3763
3764         Logic error in HTMLMediaElement::exitFullscreen()
3765         https://bugs.webkit.org/show_bug.cgi?id=58085
3766
3767         The new full screen API case could fall through to the legacy API case
3768         unintentionally if a script calls exitFullscreen on an element which is
3769         not the current full screen element.
3770
3771         * html/HTMLMediaElement.cpp:
3772         (WebCore::HTMLMediaElement::enterFullscreen):
3773         (WebCore::HTMLMediaElement::exitFullscreen):
3774
3775 2011-04-08  Mike Reed  <reed@google.com>
3776
3777         Reviewed by Eric Seidel.
3778
3779         Replace SKIA_TEXT with isNativeFontRenderingAllowed() for print-preview to work
3780         https://bugs.webkit.org/show_bug.cgi?id=57782
3781
3782         No new tests. This change only affects print-preview and build option SKIA_GPU 
3783
3784         * platform/graphics/skia/SkiaFontWin.cpp:
3785         (WebCore::paintSkiaText):
3786
3787 2011-04-08  Ryosuke Niwa  <rniwa@webkit.org>
3788
3789         Reviewed by Tony Chang, Darin Adler, and Enrica Casucci.
3790
3791         REGRESSION(r81887): Crash in SplitElement
3792         https://bugs.webkit.org/show_bug.cgi?id=57743
3793
3794         The crash was caused by ReplaceSelectionCommand::doApply's calling splitElement with computeNodeAfterPosition
3795         even when the position was after the last node in it container. Since all we are doing here is to splitting tree
3796         up until the highest ancestor with isInlineNodeWithStyle, replaced the while loop by calls to splitTreeToNode
3797         and highestEnclosingNodeOfType.
3798
3799         Also fixed a bug in splitTreeToNode not to check the difference in visible position when splitting the ancestor,
3800         which would have introduced unnecessary nodes when splitting tree and a bug in highestEnclosingNodeOfType that
3801         it incorrectly called deprecatedNode instead of containerNode.
3802
3803         Test: editing/inserting/insert-images-in-pre-x-crash.html
3804
3805         * editing/CompositeEditCommand.cpp:
3806         (WebCore::CompositeEditCommand::splitTreeToNode):
3807         * editing/ReplaceSelectionCommand.cpp:
3808         (WebCore::ReplaceSelectionCommand::doApply):
3809         * editing/htmlediting.cpp:
3810         (WebCore::highestEnclosingNodeOfType):
3811
3812 2011-04-08  Antti Koivisto  <antti@apple.com>
3813
3814         Reviewed by Tony Gentilcore.
3815
3816         Incoming source should be preload scanned when the parser is blocked 
3817         https://bugs.webkit.org/show_bug.cgi?id=58117
3818
3819         Scan the appended source if parser is blocked.
3820
3821         Test: http/tests/loading/preload-append-scan.php
3822
3823         * html/parser/HTMLDocumentParser.cpp:
3824         (WebCore::HTMLDocumentParser::append):
3825
3826 2011-04-08  Martin Robinson  <mrobinson@igalia.com>
3827
3828         Reviewed by Xan Lopez.
3829
3830         [GTK] Fix the WebKit2 build for older versions of GTK+
3831         https://bugs.webkit.org/show_bug.cgi?id=58095
3832
3833         No new tests. This is just a build fix.
3834
3835         * platform/gtk/GtkVersioning.c:
3836         (gdk_window_create_similar_surface): Reimplement this method for older versions of GDK.
3837         * platform/gtk/GtkVersioning.h: Add the new method to the header.
3838
3839 2011-04-08  Misha Tyutyunik  <michael.tyutyunik@nokia.com>
3840
3841         Reviewed by Laszlo Gombos.
3842
3843         [Qt] Plugin is not scrolled together with page content or jumping 
3844         when content is rendered using cache (backing store).
3845         https://bugs.webkit.org/show_bug.cgi?id=56130
3846         
3847         This is a Symbian portion of the fix. For Linux it looks like
3848         it's enough to call set geometry which should be addressed in
3849         https://bugs.webkit.org/show_bug.cgi?id=57179
3850
3851         No new tests required. This can be tested with manual tests from 
3852         WebCore/manual-tests/qt and WebCore/manual-tests/plugins
3853
3854         * plugins/symbian/PluginViewSymbian.cpp:
3855         (WebCore::PluginView::updatePluginWidget):
3856
3857 2011-04-08  Abhishek Arya  <inferno@chromium.org>
3858
3859         Unreviewed. Remove accidental printf added in r83306.
3860
3861         * page/EventHandler.cpp:
3862         (WebCore::EventHandler::sendContextMenuEvent):
3863
3864 2011-04-08  Enrica Casucci  <enrica@apple.com>
3865
3866         Reviewed by Darin Adler.
3867
3868         Dragging text in a WebKit2 window results in a copy instead of a move.
3869         https://bugs.webkit.org/show_bug.cgi?id=56772
3870         <rdar://problem/9165140>
3871
3872         cleanupAfterSystemDrag cannot call dragEnd in WebKit2, since
3873         the call to startDrag is asynchronous.
3874         
3875         * page/mac/DragControllerMac.mm:
3876         (WebCore::DragController::cleanupAfterSystemDrag):
3877
3878 2011-04-05  Dimitri Glazkov  <dglazkov@chromium.org>
3879
3880         Reviewed by Darin Adler.
3881
3882         Move WheelEvent-dispatching logic into WheelEventDispatchMediator.
3883         https://bugs.webkit.org/show_bug.cgi?id=57642
3884
3885         Covered by existing tests, no functional change.
3886
3887         * dom/Event.cpp:
3888         * dom/Event.h:
3889         (WebCore::EventDispatchMediator::EventDispatchMediator): Added default
3890             constructor.
3891         (WebCore::EventDispatchMediator::event): Inlined.
3892         (WebCore::EventDispatchMediator::setEvent): Added.
3893         * dom/EventDispatcher.cpp: Removed dispatchWheelEvent.
3894         * dom/EventDispatcher.h: Updated decls.
3895         * dom/Node.cpp:
3896         (WebCore::Node::dispatchWheelEvent): Changed to use the mediator and
3897             return a bool, like other dispatch event functions.
3898         * dom/Node.h: Changed decl.
3899         * dom/WheelEvent.cpp:
3900         (WebCore::granularity): Moved from EventDispatcher.
3901         (WebCore::WheelEventDispatchMediator::WheelEventDisatchMediator): Added.
3902         (WebCore::WheelEventDispatchMediator::event): Added.
3903         (WebCore::WheelEventDispatchMediator::dispatchEvent): Added.
3904         * dom/WheelEvent.h: Updated decls.
3905         * page/EventHandler.cpp:
3906         (WebCore::EventHandler::handleWheelEvent): Changed to receive and react
3907             to the return value.
3908
3909 2011-04-08  Jessie Berlin  <jberlin@apple.com>
3910
3911         Windows build warning fix.
3912
3913         * WebCore.vcproj/WebCore.vcproj:
3914         Since ShadowRoot.cpp is included in the DOMAllInOne.cpp file, it should be excluded from
3915         the build.
3916
3917 2011-04-07  Pavel Podivilov  <podivilov@chromium.org>
3918
3919         Reviewed by Pavel Feldman.
3920
3921         Web Inspector: update breakpoints according to source frame decorations after live edit.
3922         https://bugs.webkit.org/show_bug.cgi?id=58029
3923
3924         * inspector/front-end/DebuggerPresentationModel.js:
3925         (WebInspector.DebuggerPresentationModel.prototype.editScriptSource.didEditScriptSource):
3926         (WebInspector.DebuggerPresentationModel.prototype.editScriptSource):
3927         (WebInspector.DebuggerPresentationModel.prototype._updateResourceContent.didEditScriptSource):
3928         (WebInspector.DebuggerPresentationModel.prototype._updateResourceContent):
3929         * inspector/front-end/SourceFile.js:
3930         (WebInspector.SourceFile.prototype.set content):
3931         * inspector/front-end/SourceFrame.js:
3932         (WebInspector.SourceFrame.prototype._handleSave.didEditScriptSource):
3933         (WebInspector.SourceFrame.prototype._handleSave):
3934
3935 2011-04-08  Pavel Podivilov  <podivilov@chromium.org>
3936
3937         Reviewed by Pavel Feldman.
3938
3939         Web Inspector: fix scripts concatenation in scripts panel.
3940         https://bugs.webkit.org/show_bug.cgi?id=58138
3941
3942         When there is just one script starting at 0:0 it should not be surrounded by <script> framing.
3943
3944         * inspector/front-end/SourceFile.js:
3945         (WebInspector.SourceFile.prototype._loadResourceContent):
3946         (WebInspector.SourceFile.prototype._loadAndConcatenateScriptsContent):
3947
3948 2011-04-08  Pavel Feldman  <pfeldman@chromium.org>
3949
3950         Reviewed by Yury Semikhatsky.
3951
3952         Web Inspector: use "locations" for debugger scripts, "lineNumbers" for the UI elements.
3953         https://bugs.webkit.org/show_bug.cgi?id=58118
3954
3955         This change reuses location for call frames in the protocol + structures script
3956         location <-> source lines interaction better. When we need UI columns, we will add
3957         them, but we should distinguish between script and UI terms on the type level, not naming.
3958
3959         * English.lproj/localizedStrings.js:
3960         * bindings/v8/DebuggerScript.js:
3961         * inspector/InjectedScriptSource.js:
3962         * inspector/Inspector.json:
3963         * inspector/front-end/CallStackSidebarPane.js:
3964         (WebInspector.CallStackSidebarPane.prototype.update.didGetSourceLine):
3965         (WebInspector.CallStackSidebarPane.prototype.update):
3966         * inspector/front-end/DebuggerPresentationModel.js:
3967         (WebInspector.DebuggerPresentationModel.prototype.addConsoleMessage.didRequestSourceMapping):
3968         (WebInspector.DebuggerPresentationModel.prototype.addConsoleMessage):
3969         (WebInspector.DebuggerPresentationModel.prototype.continueToLine):
3970         (WebInspector.DebuggerPresentationModel.prototype._setBreakpointInDebugger.didRequestSourceMapping):
3971         (WebInspector.DebuggerPresentationModel.prototype._setBreakpointInDebugger):
3972         (WebInspector.DebuggerPresentationModel.prototype._breakpointAdded.didRequestSourceMapping):
3973         (WebInspector.DebuggerPresentationModel.prototype._breakpointAdded):
3974         (WebInspector.PresenationCallFrame):
3975         (WebInspector.PresenationCallFrame.prototype.sourceLine.didRequestSourceMapping):
3976         (WebInspector.PresenationCallFrame.prototype.sourceLine):
3977         * inspector/front-end/ScriptFormatter.js:
3978         (WebInspector.ScriptFormatter.locationToPosition):
3979         (WebInspector.ScriptFormatter.lineToPosition):
3980         * inspector/front-end/ScriptsPanel.js:
3981         (WebInspector.ScriptsPanel.prototype._debuggerPaused.else.didGetSourceLocation):
3982         (WebInspector.ScriptsPanel.prototype._debuggerPaused):
3983         (WebInspector.ScriptsPanel.prototype.showAnchorLocation):
3984         (WebInspector.ScriptsPanel.prototype._callFrameSelected.didGetSourceLocation):
3985         (WebInspector.ScriptsPanel.prototype._callFrameSelected):
3986         * inspector/front-end/SourceFile.js:
3987         (WebInspector.SourceMapping.prototype.scriptLocationToSourceLine):
3988         (WebInspector.SourceMapping.prototype.sourceLineToScriptLocation):
3989         (WebInspector.FormattedSourceMapping.prototype.scriptLocationToSourceLine):
3990         (WebInspector.FormattedSourceMapping.prototype.sourceLineToScriptLocation):
3991
3992 2011-04-08  Pavel Podivilov  <podivilov@chromium.org>
3993
3994         Reviewed by Pavel Feldman.
3995
3996         Web Inspector: distinguish breakpoints set on de-obfuscated sources from breakponts set on original sources.
3997         https://bugs.webkit.org/show_bug.cgi?id=58133
3998
3999         * inspector/front-end/DebuggerPresentationModel.js:
4000         (WebInspector.DebuggerPresentationModel.prototype.canEditScriptSource):
4001         (WebInspector.DebuggerPresentationModel.prototype.toggleFormatSourceFiles):
4002         (WebInspector.DebuggerPresentationModel.prototype._debuggerPaused):
4003         (WebInspector.DebuggerPresentationModel.prototype._sourceFileForScript):
4004         (WebInspector.DebuggerPresentationModel.prototype._scriptForSourceFileId):
4005         (WebInspector.DebuggerPresentationModel.prototype._createSourceFileId):
4006         (WebInspector.DebuggerPresentationModel.prototype._reset):
4007
4008 2011-04-07  Pavel Podivilov  <podivilov@chromium.org>
4009
4010         Reviewed by Pavel Feldman.
4011
4012         Web Inspector: make SourceFrame TextViewer's delegate for editing operations.
4013         https://bugs.webkit.org/show_bug.cgi?id=58026
4014
4015         This is the first step of decoupling TextViewer from SourceFrame.
4016
4017         * inspector/front-end/SourceFrame.js:
4018         (WebInspector.SourceFrame):
4019         (WebInspector.SourceFrame.prototype.show):
4020         (WebInspector.SourceFrame.prototype.hide):
4021         (WebInspector.SourceFrame.prototype._ensureContentLoaded):
4022         (WebInspector.SourceFrame.prototype.contentEditable):
4023         (WebInspector.SourceFrame.prototype.startEditing):
4024         (WebInspector.SourceFrame.prototype.endEditing):
4025         (WebInspector.SourceFrame.prototype._createTextViewer):
4026         (WebInspector.SourceFrame.prototype._handleSave):
4027         (WebInspector.SourceFrame.prototype._handleRevertEditing):
4028         * inspector/front-end/TextViewer.js:
4029         (WebInspector.TextViewer.prototype._enterInternalTextChangeMode):
4030         (WebInspector.TextViewer.prototype._exitInternalTextChangeMode):
4031         (WebInspector.TextViewer.prototype._syncDecorationsForLine):
4032         (WebInspector.TextViewer.prototype._doubleClick):
4033         (WebInspector.TextViewerDelegate):
4034         (WebInspector.TextViewerDelegate.prototype.contentEditable):
4035         (WebInspector.TextViewerDelegate.prototype.startEditing):
4036         (WebInspector.TextViewerDelegate.prototype.endEditing):
4037         (WebInspector.TextEditorMainPanel.prototype._paintScheduledLines):
4038         (WebInspector.TextEditorMainPanel.prototype._handleDOMUpdates):
4039         * inspector/front-end/inspector.html:
4040
4041 2011-04-08  Leandro Gracia Gil  <leandrogracia@chromium.org>
4042
4043         Reviewed by Steve Block.
4044
4045         Media Stream API: add the getUserMedia method and the Javascript bindings.
4046         https://bugs.webkit.org/show_bug.cgi?id=56586
4047
4048         Add the getUserMedia method to the navigator and its new Javascript types.
4049         Current specification: http://www.whatwg.org/specs/web-apps/current-work/multipage/dnd.html#video-conferencing-and-peer-to-peer-communication
4050
4051         Tests: fast/dom/MediaStream/argument-types.html
4052                fast/dom/MediaStream/enabled.html
4053                fast/dom/MediaStream/no-interface-object.html
4054
4055         * Android.derived.jscbindings.mk:
4056         * Android.derived.v8bindings.mk:
4057         * Android.v8bindings.mk:
4058         * CMakeLists.txt:
4059         * CodeGenerators.pri:
4060         * DerivedSources.cpp:
4061         * DerivedSources.make:
4062         * GNUmakefile.list.am:
4063         * WebCore.gypi:
4064         * WebCore.pro:
4065         * WebCore.vcproj/WebCore.vcproj:
4066         * WebCore.xcodeproj/project.pbxproj:
4067         * bindings/js/JSNavigatorCustom.cpp:
4068         (WebCore::JSNavigator::webkitGetUserMedia):
4069         * bindings/v8/custom/V8NavigatorCustom.cpp: Added.
4070         (WebCore::V8Navigator::webkitGetUserMediaCallback):
4071         * page/Navigator.cpp:
4072         (WebCore::Navigator::webkitGetUserMedia):
4073