4f0bbfc217c38d4ca54c6402730e3be24a1dea86
[WebKit-https.git] / WebCore / ChangeLog
1 2010-09-29  Adam Roben  <aroben@apple.com>
2
3         Fix color media queries on Windows
4
5         Fixes <http://webkit.org/b/42973> <rdar://problem/8234072> (color:8)
6         media query does not evaluate to true for 32bpp displays on Windows
7
8         Test: fast/media/color-does-not-include-alpha.html
9
10         Reviewed by Darin Adler.
11
12         * platform/win/PlatformScreenWin.cpp:
13         (WebCore::screenDepthPerComponent): Use screenDepth instead of trying
14         to interpret DEVMODE directly, since screenDepth knows how to correct
15         for video drivers that return 32 instead of 24.
16
17 2010-09-29  Adam Roben  <aroben@apple.com>
18
19         Make sure screen.colorDepth/screen.pixelDepth don't include the bits
20         used for alpha
21
22         Fixes <http://webkit.org/b/42972> <rdar://problem/8234071>
23         screen.colorDepth and screen.pixelDepth return 32 on Windows, but
24         should return 24 (according to CSSOM View and Firefox)
25
26         Reviewed by Darin Adler.
27
28         * platform/win/PlatformScreenWin.cpp:
29         (WebCore::screenDepth): If Windows says there are 32 bits per pixel,
30         return 24 instead, as 32 includes the alpha component but this
31         function is supposed to ignore the alpha component.
32
33 2010-09-30  Daniel Cheng  <dcheng@chromium.org>
34
35         Reviewed by Tony Chang.
36
37         [chromium] Refactor ChromiumDataObject to use getters/setters.
38         https://bugs.webkit.org/show_bug.cgi?id=46559
39
40         This is an intermediate step to converting ChromiumDataObject to use
41         callbacks to the browser to retrieve data.
42
43         This is covered by existing tests.
44
45         * editing/chromium/EditorChromium.cpp:
46         (WebCore::Editor::newGeneralClipboard):
47         * page/chromium/EventHandlerChromium.cpp:
48         (WebCore::EventHandler::createDraggingClipboard):
49         * platform/chromium/ChromiumDataObject.cpp:
50         (WebCore::ChromiumDataObject::clearData):
51         (WebCore::ChromiumDataObject::clearAll):
52         (WebCore::ChromiumDataObject::clearAllExceptFiles):
53         (WebCore::ChromiumDataObject::hasData):
54         (WebCore::ChromiumDataObject::types):
55         (WebCore::ChromiumDataObject::getData):
56         (WebCore::ChromiumDataObject::setData):
57         (WebCore::ChromiumDataObject::ChromiumDataObject):
58         * platform/chromium/ChromiumDataObject.h:
59         (WebCore::ChromiumDataObject::create):
60         (WebCore::ChromiumDataObject::urlTitle):
61         (WebCore::ChromiumDataObject::setUrlTitle):
62         (WebCore::ChromiumDataObject::htmlBaseUrl):
63         (WebCore::ChromiumDataObject::setHtmlBaseUrl):
64         (WebCore::ChromiumDataObject::containsFilenames):
65         (WebCore::ChromiumDataObject::filenames):
66         (WebCore::ChromiumDataObject::setFilenames):
67         (WebCore::ChromiumDataObject::fileExtension):
68         (WebCore::ChromiumDataObject::setFileExtension):
69         (WebCore::ChromiumDataObject::fileContentFilename):
70         (WebCore::ChromiumDataObject::setFileContentFilename):
71         (WebCore::ChromiumDataObject::fileContent):
72         (WebCore::ChromiumDataObject::setFileContent):
73         * platform/chromium/ClipboardChromium.cpp:
74         (WebCore::normalizeType):
75         (WebCore::ClipboardChromium::clearData):
76         (WebCore::ClipboardChromium::clearAllData):
77         (WebCore::ClipboardChromium::getData):
78         (WebCore::ClipboardChromium::setData):
79         (WebCore::ClipboardChromium::types):
80         (WebCore::ClipboardChromium::files):
81         (WebCore::writeImageToDataObject):
82         (WebCore::ClipboardChromium::declareAndWriteDragImage):
83         (WebCore::ClipboardChromium::writeURL):
84         (WebCore::ClipboardChromium::writeRange):
85         (WebCore::ClipboardChromium::writePlainText):
86         * platform/chromium/ClipboardChromiumWin.cpp:
87         (WebCore::ClipboardChromium::validateFileName):
88         * platform/chromium/ClipboardMimeTypes.cpp:
89         * platform/chromium/ClipboardMimeTypes.h:
90         * platform/chromium/DragDataChromium.cpp:
91         (WebCore::containsHTML):
92         (WebCore::DragData::containsURL):
93         (WebCore::DragData::asURL):
94         (WebCore::DragData::containsFiles):
95         (WebCore::DragData::asFilenames):
96         (WebCore::DragData::containsPlainText):
97         (WebCore::DragData::asPlainText):
98         (WebCore::DragData::canSmartReplace):
99         (WebCore::DragData::asFragment):
100         * platform/chromium/ReadableDataObject.cpp:
101         (WebCore::ReadableDataObject::getURL):
102         (WebCore::ReadableDataObject::getHTML):
103         * platform/chromium/WritableDataObject.cpp:
104         (WebCore::WritableDataObject::clearData):
105         (WebCore::WritableDataObject::setData):
106         (WebCore::WritableDataObject::setURL):
107         (WebCore::WritableDataObject::setHTML):
108
109 2010-09-30  Chris Marrin  <cmarrin@apple.com>
110
111         Reviewed by Simon Fraser.
112
113         Make 2D accelerated canvas rendering build on Mac
114         https://bugs.webkit.org/show_bug.cgi?id=46007
115
116         Add accelerated 2D rendering files to Mac build, fix build errors,
117         add ifdefs to compile only when the ACCELERATED_2D_CANVAS flag is
118         enabled, and add a skeleton of the mac specific file so it builds.
119
120         DrawingBufferMac.mm, the Mac specific file does nothing right now
121         other than initialize and create a layer. The rest will be added
122         when I do the actual implementation. 
123
124         The most significant change was to SharedGraphicsContext3D, which
125         had a static local OwnPtr in one of the methods. This was causing
126         the exit time destructor warning. Getting rid of the OwnPtr fixed
127         the problem. Since the pointer that was being wrapped was to a
128         static object that would never get destroyed, the OwnPtr was not
129         necessary.
130
131         I also added the ACCELERATED_2D_CANVAS flag to build-webkit
132         and FeatureDefines.xcconfig for WebCore, WebKit and JavaScriptCore.
133         But right now the flag is off by default.
134
135         * Configurations/FeatureDefines.xcconfig:
136         * WebCore.xcodeproj/project.pbxproj:
137         * platform/graphics/gpu/DrawingBuffer.cpp:
138         * platform/graphics/gpu/DrawingBuffer.h:
139         (WebCore::DrawingBuffer::WillPublishCallback::~WillPublishCallback):
140         * platform/graphics/gpu/LoopBlinnClassifier.cpp:
141         * platform/graphics/gpu/LoopBlinnMathUtils.cpp:
142         * platform/graphics/gpu/LoopBlinnTextureCoords.cpp:
143         * platform/graphics/gpu/Shader.cpp:
144         * platform/graphics/gpu/SharedGraphicsContext3D.cpp:
145         (WebCore::SharedGraphicsContext3D::allContexts):
146         * platform/graphics/gpu/SolidFillShader.cpp:
147         * platform/graphics/gpu/TexShader.cpp:
148         * platform/graphics/gpu/Texture.cpp:
149         * platform/graphics/gpu/Texture.h:
150         * platform/graphics/gpu/TilingData.cpp:
151         * platform/graphics/gpu/mac: Added.
152         * platform/graphics/gpu/mac/DrawingBufferMac.mm: Added.
153         (WebCore::DrawingBuffer::DrawingBuffer):
154         (WebCore::DrawingBuffer::~DrawingBuffer):
155         (WebCore::DrawingBuffer::reset):
156         (WebCore::DrawingBuffer::platformLayer):
157
158 2010-09-30  Renata Hodovan  <reni@inf.u-szeged.hu>
159
160         Reviewed by Dirk Schulze.
161
162         SVGFECompositeElement doesn't support dynamic invalidation, when attributes change.
163         https://bugs.webkit.org/show_bug.cgi?id=46902
164
165         Tests: svg/dynamic-updates/SVGFECompositeElement-dom-in-attr.html
166                svg/dynamic-updates/SVGFECompositeElement-dom-in2-attr.html
167                svg/dynamic-updates/SVGFECompositeElement-dom-k1-attr.html
168                svg/dynamic-updates/SVGFECompositeElement-dom-k2-attr.html
169                svg/dynamic-updates/SVGFECompositeElement-dom-k3-attr.html
170                svg/dynamic-updates/SVGFECompositeElement-dom-k4-attr.html
171                svg/dynamic-updates/SVGFECompositeElement-dom-operator-attr.html
172                svg/dynamic-updates/SVGFECompositeElement-svgdom-in-prop.html
173                svg/dynamic-updates/SVGFECompositeElement-svgdom-in2-prop.html
174                svg/dynamic-updates/SVGFECompositeElement-svgdom-k1-prop.html
175                svg/dynamic-updates/SVGFECompositeElement-svgdom-k2-prop.html
176                svg/dynamic-updates/SVGFECompositeElement-svgdom-k3-prop.html
177                svg/dynamic-updates/SVGFECompositeElement-svgdom-k4-prop.html
178                svg/dynamic-updates/SVGFECompositeElement-svgdom-operator-prop.html
179
180         * svg/SVGFECompositeElement.cpp:
181         (WebCore::SVGFECompositeElement::svgAttributeChanged):
182         * svg/SVGFECompositeElement.h:
183
184 2010-09-29  Jeremy Orlow  <jorlow@chromium.org>
185
186         Reviewed by Steve Block.
187
188         Finished IDBTransaction for IndexedDB
189         https://bugs.webkit.org/show_bug.cgi?id=46823
190
191         Switch the rest of IndexedDB to use transactions.
192         Implement most of setVersion.
193         Add IDBTransactions to IDBAny, IDBCursor, IDBRequest, etc.
194         Switch to using the standard cross thread task stuff.
195         Make everything threadsafe so it works with cross thread copy
196             (will be useful in the future).
197         Fix some subtle bugs in transactions.
198         
199         Various bits of clean up (when I couldn't resist).
200
201         * bindings/js/JSIDBAnyCustom.cpp:
202         (WebCore::toJS):
203         * bindings/v8/IDBBindingUtilities.cpp:
204         (WebCore::LocalContext::LocalContext):
205         (WebCore::LocalContext::~LocalContext):
206         (WebCore::createIDBKeyFromSerializedValueAndKeyPath):
207         * bindings/v8/SerializedScriptValue.cpp:
208         (WebCore::SerializedScriptValue::release):
209         (WebCore::SerializedScriptValue::SerializedScriptValue):
210         * bindings/v8/SerializedScriptValue.h:
211         * bindings/v8/custom/V8IDBAnyCustom.cpp:
212         (WebCore::toV8):
213         * platform/CrossThreadCopier.cpp:
214         * storage/IDBAny.cpp:
215         (WebCore::IDBAny::idbFactory):
216         (WebCore::IDBAny::idbTransaction):
217         (WebCore::IDBAny::set):
218         * storage/IDBAny.h:
219         * storage/IDBCallbacks.h:
220         * storage/IDBCursor.cpp:
221         (WebCore::IDBCursor::IDBCursor):
222         (WebCore::IDBCursor::update):
223         (WebCore::IDBCursor::continueFunction):
224         (WebCore::IDBCursor::remove):
225         * storage/IDBCursor.h:
226         (WebCore::IDBCursor::create):
227         * storage/IDBCursorBackendImpl.cpp:
228         (WebCore::IDBCursorBackendImpl::IDBCursorBackendImpl):
229         (WebCore::IDBCursorBackendImpl::update):
230         (WebCore::IDBCursorBackendImpl::updateInternal):
231         (WebCore::IDBCursorBackendImpl::continueFunction):
232         (WebCore::IDBCursorBackendImpl::continueFunctionInternal):
233         (WebCore::IDBCursorBackendImpl::remove):
234         (WebCore::IDBCursorBackendImpl::removeInternal):
235         * storage/IDBCursorBackendImpl.h:
236         (WebCore::IDBCursorBackendImpl::create):
237         * storage/IDBDatabase.cpp:
238         (WebCore::IDBDatabase::setSetVersionTransaction):
239         (WebCore::IDBDatabase::createObjectStore):
240         (WebCore::IDBDatabase::removeObjectStore):
241         (WebCore::IDBDatabase::setVersion):
242         (WebCore::IDBDatabase::close):
243         * storage/IDBDatabase.h:
244         * storage/IDBDatabase.idl:
245         * storage/IDBDatabaseBackendImpl.cpp:
246         (WebCore::IDBDatabaseBackendImpl::createObjectStore):
247         (WebCore::IDBDatabaseBackendImpl::createObjectStoreInternal):
248         (WebCore::IDBDatabaseBackendImpl::removeObjectStore):
249         (WebCore::IDBDatabaseBackendImpl::removeObjectStoreInternal):
250         (WebCore::IDBDatabaseBackendImpl::setVersion):
251         (WebCore::IDBDatabaseBackendImpl::setVersionInternal):
252         (WebCore::IDBDatabaseBackendImpl::close):
253         * storage/IDBDatabaseBackendImpl.h:
254         * storage/IDBDatabaseBackendInterface.h:
255         * storage/IDBFactory.cpp:
256         (WebCore::IDBFactory::open):
257         * storage/IDBIndex.cpp:
258         (WebCore::IDBIndex::IDBIndex):
259         (WebCore::IDBIndex::openObjectCursor):
260         (WebCore::IDBIndex::openCursor):
261         (WebCore::IDBIndex::getObject):
262         (WebCore::IDBIndex::get):
263         * storage/IDBIndex.h:
264         (WebCore::IDBIndex::create):
265         * storage/IDBIndexBackendImpl.cpp:
266         (WebCore::IDBIndexBackendImpl::openCursorInternal):
267         (WebCore::IDBIndexBackendImpl::openObjectCursor):
268         (WebCore::IDBIndexBackendImpl::openCursor):
269         (WebCore::IDBIndexBackendImpl::getInternal):
270         (WebCore::IDBIndexBackendImpl::getObject):
271         (WebCore::IDBIndexBackendImpl::get):
272         * storage/IDBIndexBackendImpl.h:
273         * storage/IDBIndexBackendInterface.h:
274         * storage/IDBKey.cpp:
275         (WebCore::IDBKey::IDBKey):
276         * storage/IDBKey.h:
277         * storage/IDBKeyRange.h:
278         * storage/IDBObjectStore.cpp:
279         (WebCore::IDBObjectStore::IDBObjectStore):
280         (WebCore::IDBObjectStore::add):
281         (WebCore::IDBObjectStore::put):
282         (WebCore::IDBObjectStore::remove):
283         (WebCore::IDBObjectStore::createIndex):
284         (WebCore::IDBObjectStore::index):
285         (WebCore::IDBObjectStore::removeIndex):
286         (WebCore::IDBObjectStore::openCursor):
287         * storage/IDBObjectStore.idl:
288         * storage/IDBObjectStoreBackendImpl.cpp:
289         (WebCore::IDBObjectStoreBackendImpl::get):
290         (WebCore::IDBObjectStoreBackendImpl::getInternal):
291         (WebCore::IDBObjectStoreBackendImpl::put):
292         (WebCore::IDBObjectStoreBackendImpl::putInternal):
293         (WebCore::IDBObjectStoreBackendImpl::remove):
294         (WebCore::IDBObjectStoreBackendImpl::removeInternal):
295         (WebCore::IDBObjectStoreBackendImpl::createIndex):
296         (WebCore::IDBObjectStoreBackendImpl::createIndexInternal):
297         (WebCore::IDBObjectStoreBackendImpl::removeIndex):
298         (WebCore::IDBObjectStoreBackendImpl::removeIndexInternal):
299         (WebCore::IDBObjectStoreBackendImpl::openCursor):
300         (WebCore::IDBObjectStoreBackendImpl::openCursorInternal):
301         * storage/IDBObjectStoreBackendImpl.h:
302         * storage/IDBObjectStoreBackendInterface.h:
303         * storage/IDBRequest.cpp:
304         (WebCore::IDBRequest::IDBRequest):
305         (WebCore::IDBRequest::resetReadyState):
306         (WebCore::IDBRequest::onSuccess):
307         (WebCore::IDBRequest::timerFired):
308         * storage/IDBRequest.h:
309         (WebCore::IDBRequest::create):
310         * storage/IDBTransactionBackendImpl.cpp:
311         (WebCore::IDBTransactionBackendImpl::IDBTransactionBackendImpl):
312         (WebCore::IDBTransactionBackendImpl::scheduleTask):
313         (WebCore::IDBTransactionBackendImpl::didCompleteTaskEvents):
314         (WebCore::IDBTransactionBackendImpl::run):
315         (WebCore::IDBTransactionBackendImpl::start):
316         (WebCore::IDBTransactionBackendImpl::commit):
317         (WebCore::IDBTransactionBackendImpl::timerFired):
318         * storage/IDBTransactionBackendImpl.h:
319
320 2010-09-30  Csaba Osztrogonác  <ossy@webkit.org>
321
322         Reviewed by Martin Robinson.
323
324         [Gtk] build still broken since r68521
325         https://bugs.webkit.org/show_bug.cgi?id=46795
326
327         makevalues.pl and makeprop.pl generate 3 files in one run.
328         Double or triple target is incorrect, because on a multicore
329         machine make processes targets in parallel.
330
331         Setting a->b->c dependencies for 3 generated files guarantees
332         that make doesn't execute the recipe of the rule more than one.
333
334         * GNUmakefile.am: Dependencies and missing headers added.
335
336 2010-09-30  Andrey Kosyakov  <caseq@chromium.org>
337
338         Unreviewed build fix (marked ResourceRawHeaders.h as private)
339
340         * WebCore.xcodeproj/project.pbxproj:
341
342 2010-09-29  Andrey Kosyakov  <caseq@chromium.org>
343
344         Reviewed by Pavel Feldman.
345
346         Web Inspector: display headers actually used by network stack in Resources tab
347         https://bugs.webkit.org/show_bug.cgi?id=46092
348
349         * GNUmakefile.am:
350         * WebCore.gypi:
351         * WebCore.pro:
352         * WebCore.vcproj/WebCore.vcproj:
353         * inspector/InspectorController.cpp:
354         (WebCore::InspectorController::willSendRequest): enable raw headers reporting if front-end is visible.
355         * inspector/InspectorResource.cpp:
356         (WebCore::InspectorResource::updateResponse):
357         * platform/network/ResourceRawHeaders.h: Added.
358         * platform/network/ResourceRequestBase.h: Added flag to enable raw headers reporting.
359         (WebCore::ResourceRequestBase::reportRawHeaders):
360         (WebCore::ResourceRequestBase::setReportRawHeaders):
361         (WebCore::ResourceRequestBase::ResourceRequestBase):
362         * platform/network/ResourceResponseBase.cpp: Added support for raw headers.
363         (WebCore::ResourceResponseBase::resourceRawHeaders):
364         (WebCore::ResourceResponseBase::setResourceRawHeaders):
365         * platform/network/ResourceResponseBase.h:
366
367 2010-09-29  Andrey Kosyakov  <caseq@chromium.org>
368
369         Reviewed by Pavel Feldman.
370
371         Web Inspector: display headers actually used by network stack in Resources tab
372         https://bugs.webkit.org/show_bug.cgi?id=46092
373
374         * GNUmakefile.am:
375         * WebCore.gypi:
376         * WebCore.pro:
377         * WebCore.vcproj/WebCore.vcproj:
378         * inspector/InspectorController.cpp:
379         (WebCore::InspectorController::willSendRequest): enable raw headers reporting if front-end is visible.
380         * inspector/InspectorResource.cpp:
381         (WebCore::InspectorResource::updateResponse):
382         * platform/network/ResourceRawHeaders.h: Added.
383         * platform/network/ResourceRequestBase.h: Added flag to enable raw headers reporting.
384         (WebCore::ResourceRequestBase::reportRawHeaders):
385         (WebCore::ResourceRequestBase::setReportRawHeaders):
386         (WebCore::ResourceRequestBase::ResourceRequestBase):
387         * platform/network/ResourceResponseBase.cpp: Added support for raw headers.
388         (WebCore::ResourceResponseBase::resourceRawHeaders):
389         (WebCore::ResourceResponseBase::setResourceRawHeaders):
390         * platform/network/ResourceResponseBase.h:
391
392 2010-09-30  Andreas Kling  <andreas.kling@nokia.com>
393
394         Reviewed by Tor Arne Vestbø.
395
396         [Qt] V8 port: Unbreak build
397
398         Add missing <wtf/text/CString.h> include.
399
400         * loader/PingLoader.cpp:
401
402 2010-09-29  Ilya Tikhonovsky  <loislo@chromium.org>
403
404         Reviewed by Pavel Feldman.
405
406         Web Inspector: assign the resource loading finish time which was obtained from the network stack
407         as the end time for the corresponding event in Timeline.
408         See related change for Resources panel https://bugs.webkit.org/show_bug.cgi?id=45664
409
410         https://bugs.webkit.org/show_bug.cgi?id=46789
411
412         * inspector/InspectorController.cpp:
413         (WebCore::InspectorController::didFinishLoading):
414         (WebCore::InspectorController::didFailLoading):
415         * inspector/InspectorTimelineAgent.cpp:
416         (WebCore::InspectorTimelineAgent::didFinishLoadingResource):
417         * inspector/InspectorTimelineAgent.h:
418
419 2010-09-29  Pavel Feldman  <pfeldman@chromium.org>
420
421         Reviewed by Timothy Hatcher.
422
423         Web Inspector: implement sorting by timeline in network panel + filtering.
424         https://bugs.webkit.org/show_bug.cgi?id=45657
425
426         A number of drive-by fixes, sorting by timeline added,
427         0-based timeline for duration added, filters added,
428         more love for detailed view + nice headers.
429
430         * English.lproj/localizedStrings.js:
431         * inspector/front-end/DataGrid.js:
432         (WebInspector.DataGrid):
433         (WebInspector.DataGrid.prototype.markColumnAsSortedBy):
434         (WebInspector.DataGrid.prototype.headerTableHeader):
435         * inspector/front-end/NetworkPanel.js:
436         (WebInspector.NetworkPanel):
437         (WebInspector.NetworkPanel.prototype.get statusBarItems):
438         (WebInspector.NetworkPanel.prototype._createTable):
439         (WebInspector.NetworkPanel.prototype._makeHeaderInnerHTML):
440         (WebInspector.NetworkPanel.prototype._createSortingFunctions):
441         (WebInspector.NetworkPanel.prototype._sortByTimeline):
442         (WebInspector.NetworkPanel.prototype._sortItems):
443         (WebInspector.NetworkPanel.prototype._createFilterPanel):
444         (WebInspector.NetworkPanel.prototype._showCategory):
445         (WebInspector.NetworkPanel.prototype._hideCategory):
446         (WebInspector.NetworkPanel.prototype._updateFilter):
447         (WebInspector.NetworkPanel.prototype._filter):
448         (WebInspector.NetworkPanel.prototype._updateDividersIfNeeded):
449         (WebInspector.NetworkPanel.prototype.reset):
450         (WebInspector.NetworkPanel.prototype._setLargerResources):
451         (WebInspector.NetworkDataGridNode.prototype.createCells):
452         (WebInspector.NetworkDataGridNode.prototype._createDivInTD):
453         (WebInspector.NetworkDataGridNode.prototype._refreshURLCell):
454         (WebInspector.NetworkDataGridNode.prototype._refreshStatusCell):
455         (WebInspector.NetworkDataGridNode.prototype._appendSubtitle):
456         (WebInspector.NetworkDataGridNode.SizeComparator):
457         (WebInspector.NetworkDataGridNode.ResourcePropertyComparator):
458         * inspector/front-end/ProfilesPanel.js:
459         (WebInspector.ProfilesPanel):
460         (WebInspector.ProfilesPanel.prototype.updateMainViewWidth):
461         * inspector/front-end/StoragePanel.js:
462         (WebInspector.StoragePanel):
463         * inspector/front-end/TimelineGrid.js:
464         (WebInspector.TimelineGrid.prototype.updateDividers):
465         * inspector/front-end/TimelineOverviewPane.js:
466         (WebInspector.TimelineOverviewPane):
467         (WebInspector.TimelineOverviewPane.prototype.updateMainViewWidth):
468         * inspector/front-end/inspector.css:
469         (.data-grid th.sort-ascending > div::after):
470         (.data-grid th.sort-descending > div::after):
471         (.status-bar-items):
472         * inspector/front-end/networkPanel.css:
473         (.network.panel .data-grid td):
474         (.network.panel .data-grid th):
475         (.network.panel .data-grid.small th):
476         (.network.panel .data-grid .data-container):
477         (.network.panel .data-grid.small .data-container):
478         (.network.panel .data-grid select):
479         (.network.panel .data-grid td.time-column):
480         (.network-cell-subtitle):
481         (.network-header-subtitle):
482         (.network-event-divider):
483         (.network.panel .network-timeline-grid.small .network-event-divider):
484         (.network.panel .resources-dividers-label-bar):
485         (.network.panel .network-timeline-grid.small .resources-dividers-label-bar):
486         (.network.panel .resources-divider-label):
487         (.network.panel .resources-dividers-label-bar .resources-divider):
488         (.network.panel .network-timeline-grid.small .resources-dividers-label-bar .resources-divider):
489         (.network.panel .resources-divider.first .resources-divider-label):
490         (.network.panel .resources-dividers-label-bar .resources-divider.first):
491         (#network-filter):
492         (.data-grid table.data tr.revealed.network-category-websockets, .data-grid table.data tr.revealed.network-category-other):
493         (.data-grid.filter-all table.data tr.revealed.network-category-other, .data-grid.filter-other table.data tr.revealed.network-category-other):
494
495 2010-09-30  Tor Arne Vestbø  <tor.arne.vestbo@nokia.com>
496
497         Reviewed by Simon Hausmann.
498
499         [Qt] Ensure we always report a valid size for the video
500
501         Some QtMultimedia-backends require a paint before even giving us
502         a size, so we start out by using the default video size, and then
503         update it once QtMultimedia starts feeding us valid sizes.
504
505         * platform/graphics/qt/MediaPlayerPrivateQt.cpp:
506         (WebCore::MediaPlayerPrivateQt::MediaPlayerPrivateQt):
507         (WebCore::MediaPlayerPrivateQt::nativeSizeChanged):
508         (WebCore::MediaPlayerPrivateQt::setSize):
509         (WebCore::MediaPlayerPrivateQt::naturalSize):
510         * platform/graphics/qt/MediaPlayerPrivateQt.h:
511
512 2010-09-30  Nikolas Zimmermann  <nzimmermann@rim.com>
513
514         Reviewed by Andreas Kling.
515
516         RenderSVGTextPath lacks isSVGTextPath() method
517         https://bugs.webkit.org/show_bug.cgi?id=46888
518
519         Make RenderSVGTextPath objects easily detectable, using a isSVGTextPath() method, like all other SVG renderers have.
520
521         * rendering/RenderObject.h:
522         (WebCore::RenderObject::isSVGTextPath): Return false.
523         * rendering/RenderSVGTextPath.h: Changed indentation of whole file.
524         (WebCore::RenderSVGTextPath::isSVGTextPath): Return true.
525         (WebCore::RenderSVGTextPath::renderName):
526         (WebCore::toRenderSVGTextPath): Add helper casting methods.
527
528 2010-09-30  Nikolas Zimmermann  <nzimmermann@rim.com>
529
530         Reviewed by Dirk Schulze.
531
532         AffineTransform should expose methods calculating the x/y scale factors
533         https://bugs.webkit.org/show_bug.cgi?id=46887
534
535         Expose methods calculating the x/y scale factors for an AffineTransform. 
536
537         * platform/graphics/transforms/AffineTransform.cpp:
538         (WebCore::affineTransformDecompose): Move xScale / yScale calculations in their own functions.
539         (WebCore::AffineTransform::xScale):
540         (WebCore::AffineTransform::yScale):
541         * platform/graphics/transforms/AffineTransform.h:
542
543 2010-09-30  Tor Arne Vestbø  <tor.arne.vestbo@nokia.com>
544
545         Reviewed by Simon Hausmann.
546
547         [Qt] Ensure that the media player backend does not leave any resources around
548
549         * platform/graphics/qt/MediaPlayerPrivateQt.cpp:
550         (WebCore::MediaPlayerPrivateQt::~MediaPlayerPrivateQt):
551
552 2010-09-30  Tor Arne Vestbø  <tor.arne.vestbo@nokia.com>
553
554         Reviewed by Simon Hausmann.
555
556         Minor cleanup of MediaPlayerPrivateQt
557
558         * platform/graphics/qt/MediaPlayerPrivateQt.cpp:
559         (WebCore::MediaPlayerPrivateQt::MediaPlayerPrivateQt):
560         (WebCore::MediaPlayerPrivateQt::currentTime):
561         (WebCore::MediaPlayerPrivateQt::positionChanged):
562         (WebCore::MediaPlayerPrivateQt::paint):
563
564 2010-09-30  Jochen Eisinger  <jochen@chromium.org>
565
566         Reviewed by Jeremy Orlow.
567
568         Mark unused parameters as such.
569         https://bugs.webkit.org/show_bug.cgi?id=46880
570
571         * inspector/InspectorDOMAgent.cpp:
572         * page/Geolocation.cpp:
573         (WebCore::Geolocation::clearWatch):
574
575 2010-09-29  Pavel Podivilov  <podivilov@chromium.org>
576
577         Reviewed by Pavel Feldman.
578
579         Web Inspector: extract Inspector Instrumentation API as a class.
580         https://bugs.webkit.org/show_bug.cgi?id=46614
581
582         * CMakeLists.txt:
583         * GNUmakefile.am:
584         * WebCore.gypi:
585         * WebCore.pro:
586         * WebCore.vcproj/WebCore.vcproj:
587         * WebCore.xcodeproj/project.pbxproj:
588         * bindings/js/JSXMLHttpRequestCustom.cpp:
589         (WebCore::JSXMLHttpRequest::send):
590         * bindings/v8/custom/V8XMLHttpRequestCustom.cpp:
591         (WebCore::V8XMLHttpRequest::sendCallback):
592         * dom/CharacterData.cpp:
593         (WebCore::CharacterData::dispatchModifiedEvent):
594         * dom/ContainerNode.cpp:
595         (WebCore::ContainerNode::insertBefore):
596         (WebCore::ContainerNode::parserInsertBefore):
597         (WebCore::ContainerNode::replaceChild):
598         (WebCore::ContainerNode::appendChild):
599         (WebCore::ContainerNode::parserAddChild):
600         (WebCore::notifyChildInserted):
601         (WebCore::dispatchChildRemovalEvents):
602         * dom/Element.cpp:
603         (WebCore::Element::setAttribute):
604         (WebCore::Element::removeAttribute):
605         * inspector/InspectorController.cpp:
606         (WebCore::InspectorController::InspectorController):
607         (WebCore::InspectorController::~InspectorController):
608         (WebCore::InspectorController::connectFrontend):
609         (WebCore::InspectorController::disconnectFrontend):
610         (WebCore::InspectorController::instrumentWillSendXMLHttpRequest):
611         * inspector/InspectorController.h:
612         * inspector/InspectorInstrumentation.cpp: Added.
613         (WebCore::InspectorInstrumentation::willInsertDOMNodeImpl):
614         (WebCore::InspectorInstrumentation::didInsertDOMNodeImpl):
615         (WebCore::InspectorInstrumentation::willRemoveDOMNodeImpl):
616         (WebCore::InspectorInstrumentation::didRemoveDOMNodeImpl):
617         (WebCore::InspectorInstrumentation::willModifyDOMAttrImpl):
618         (WebCore::InspectorInstrumentation::didModifyDOMAttrImpl):
619         (WebCore::InspectorInstrumentation::characterDataModifiedImpl):
620         (WebCore::InspectorInstrumentation::instrumentWillSendXMLHttpRequestImpl):
621         * inspector/InspectorInstrumentation.h: Added.
622         (WebCore::InspectorInstrumentation::frontendCreated):
623         (WebCore::InspectorInstrumentation::frontendDeleted):
624         (WebCore::InspectorInstrumentation::hasFrontends):
625         (WebCore::InspectorInstrumentation::willInsertDOMNode):
626         (WebCore::InspectorInstrumentation::didInsertDOMNode):
627         (WebCore::InspectorInstrumentation::willRemoveDOMNode):
628         (WebCore::InspectorInstrumentation::willModifyDOMAttr):
629         (WebCore::InspectorInstrumentation::didModifyDOMAttr):
630         (WebCore::InspectorInstrumentation::characterDataModified):
631         (WebCore::InspectorInstrumentation::instrumentWillSendXMLHttpRequest):
632         (WebCore::InspectorInstrumentation::inspectorControllerForScriptExecutionContext):
633         (WebCore::InspectorInstrumentation::inspectorControllerForDocument):
634         (WebCore::InspectorInstrumentation::inspectorControllerForPage):
635         * workers/SharedWorker.cpp:
636
637 2010-09-30  Kwang Yul Seo  <skyul@company100.net>
638
639         Reviewed by Darin Adler.
640
641         Build fix: Add ENABLE(INSPECTOR) guard
642         https://bugs.webkit.org/show_bug.cgi?id=46852
643
644         Page does not have inspectorController() when ENABLE(INSPECTOR) is 0.
645
646         * inspector/InspectorController.h:
647         (WebCore::InspectorController::inspectorControllerForDocument):
648
649 2010-09-30  Michael Nordman  <michaeln@google.com>
650
651         Reviewed by David Levin.
652
653         Make it possible to copy platform specific data members of ResourceRequest and ResourceResponse
654         across threads and to compare platform specific data members of ResourceRequest.
655         - Added two instance methods to the platform specific subclasses: doPlatformAdopt and doPlatformCopyData.
656         - Also added a "shadowable" static method for platformCompare to ResourceRequestBase, a similar method
657           is already present on ResourceResponseBase.
658         - Converted the cross thread structs defined in ResourceRequest/ResponseBase.h to base
659           classes and extended those base classes in the platform specific headers to provide a place
660           to hold additional fields.
661         - Used this mechanism to have the chromium port's data members make the hop.
662         https://bugs.webkit.org/show_bug.cgi?id=46430
663
664         No new tests. Just plumbing.
665
666         * WebCore.exp.in: removed the symbol for the now inlined == operator
667         * WebCore.gypi: added chromium/ResourceResponse.cpp
668         * platform/network/ResourceRequestBase.cpp:
669         (WebCore::ResourceRequestBase::adopt):
670         (WebCore::ResourceRequestBase::copyData):
671         (WebCore::ResourceRequestBase::compare):
672         * platform/network/ResourceRequestBase.h:
673         (WebCore::ResourceRequestBase::platformCompare):
674         (WebCore::operator==):
675         (WebCore::operator!=):
676         * platform/network/ResourceResponseBase.cpp:
677         (WebCore::ResourceResponseBase::asResourceResponse):
678         (WebCore::ResourceResponseBase::adopt):
679         (WebCore::ResourceResponseBase::copyData):
680         * platform/network/ResourceResponseBase.h:
681         * platform/network/android/ResourceRequest.h:
682         (WebCore::ResourceRequest::doPlatformCopyData):
683         (WebCore::ResourceRequest::doPlatformAdopt):
684         * platform/network/android/ResourceResponse.h:
685         (WebCore::ResourceResponse::doPlatformCopyData):
686         (WebCore::ResourceResponse::doPlatformAdopt):
687         * platform/network/cf/ResourceRequest.h:
688         (WebCore::ResourceRequest::doPlatformCopyData):
689         (WebCore::ResourceRequest::doPlatformAdopt):
690         * platform/network/cf/ResourceResponse.h:
691         (WebCore::ResourceResponse::doPlatformCopyData):
692         (WebCore::ResourceResponse::doPlatformAdopt):
693         * platform/network/chromium/ResourceRequest.cpp:
694         (WebCore::ResourceRequest::doPlatformCopyData):
695         (WebCore::ResourceRequest::doPlatformAdopt):
696         * platform/network/chromium/ResourceRequest.h:
697         * platform/network/chromium/ResourceResponse.cpp: Added.
698         (WebCore::ResourceResponse::doPlatformCopyData):
699         (WebCore::ResourceResponse::doPlatformAdopt):
700         * platform/network/chromium/ResourceResponse.h:
701         * platform/network/curl/ResourceRequest.h:
702         (WebCore::ResourceRequest::doPlatformCopyData):
703         (WebCore::ResourceRequest::doPlatformAdopt):
704         * platform/network/curl/ResourceResponse.h:
705         (WebCore::ResourceResponse::doPlatformCopyData):
706         (WebCore::ResourceResponse::doPlatformAdopt):
707         * platform/network/mac/ResourceRequest.h:
708         (WebCore::ResourceRequest::doPlatformCopyData):
709         (WebCore::ResourceRequest::doPlatformAdopt):
710         * platform/network/mac/ResourceResponse.h:
711         (WebCore::ResourceResponse::doPlatformCopyData):
712         (WebCore::ResourceResponse::doPlatformAdopt):
713         * platform/network/qt/ResourceRequest.h:
714         (WebCore::ResourceRequest::doPlatformCopyData):
715         (WebCore::ResourceRequest::doPlatformAdopt):
716         * platform/network/qt/ResourceResponse.h:
717         (WebCore::ResourceResponse::doPlatformCopyData):
718         (WebCore::ResourceResponse::doPlatformAdopt):
719         * platform/network/soup/ResourceRequest.h:
720         (WebCore::ResourceRequest::doPlatformCopyData):
721         (WebCore::ResourceRequest::doPlatformAdopt):
722         * platform/network/soup/ResourceResponse.h:
723         (WebCore::ResourceResponse::doUpdateResourceResponse):
724         (WebCore::ResourceResponse::doPlatformCopyData):
725         (WebCore::ResourceResponse::doPlatformAdopt):
726
727 2010-09-29  Chris Rogers  <crogers@google.com>
728
729         Reviewed by Kenneth Russell.
730
731         Put default initialize() and uninitialize() methods in AudioNode
732         https://bugs.webkit.org/show_bug.cgi?id=46767
733
734         No new tests since audio API is not yet implemented.
735
736         * webaudio/AudioNode.cpp:
737         (WebCore::AudioNode::initialize):
738         (WebCore::AudioNode::uninitialize):
739         * webaudio/AudioNode.h:
740
741 2010-09-29  Kent Tamura  <tkent@chromium.org>
742
743         Reviewed by Dimitri Glazkov.
744
745         Refactor HTMLInputElement: Make DeprecatedInputType private.
746         https://bugs.webkit.org/show_bug.cgi?id=46791
747
748         No new tests because this doesn't change any behavior.
749
750         * html/HTMLInputElement.cpp:
751         (WebCore::HTMLInputElement::createTypeMap):
752         * html/HTMLInputElement.h:
753          Move DeprecatedInputType, deprecatedInputType() and
754          parseToDateComponents() to the private section, make
755          createTypeMap() a member function of HTMLInputElement.
756         (WebCore::HTMLInputElement::deprecatedInputType):
757
758 2010-09-29  Mihai Parparita  <mihaip@chromium.org>
759
760         Reviewed by Darin Fisher.
761
762         REGRESSION: page reload on back button after history.pushState with appearing/disappearing iframes
763         https://bugs.webkit.org/show_bug.cgi?id=46324
764         
765         Revert same document check to the way it was before r66238 for history
766         entries created by pushState or fragment changes. Logic fror determining
767         if same document navigation should be used is moved to HistoryItem.
768
769         Tests: fast/history/same-document-iframes-changing-fragment.html
770                fast/history/same-document-iframes-changing-pushstate.html
771
772         * history/HistoryItem.cpp:
773         (WebCore::HistoryItem::shouldDoSameDocumentNavigationTo):
774         (WebCore::HistoryItem::hasSameDocumentTree):
775         (WebCore::HistoryItem::hasSameFrames):
776         * history/HistoryItem.h:
777         * loader/FrameLoader.cpp:
778         (WebCore::FrameLoader::loadItem):
779
780         * loader/FrameLoader.cpp:
781         (WebCore::FrameLoader::loadItem):
782
783 2010-09-29  MORITA Hajime  <morrita@google.com>
784
785         Unreviewed build fix.
786         
787         WebCore::ESpeak causes missing symbol with no ENABLE_SVG
788         https://bugs.webkit.org/show_bug.cgi?id=46865
789
790         Moves ESpeak related function definitions outside ENABLE_SVG block.
791
792         * css/CSSPrimitiveValueMappings.h:
793         (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
794         (WebCore::CSSPrimitiveValue::operator ESpeak):
795         (WebCore::CSSPrimitiveValue::operator EVectorEffect):
796
797 2010-09-29  Chris Rogers  <crogers@google.com>
798
799         Reviewed by Kenneth Russell.
800
801         Add AudioChannelSplitter files
802         https://bugs.webkit.org/show_bug.cgi?id=46290
803
804         No new tests since audio API is not yet implemented.
805
806         * webaudio/AudioChannelSplitter.cpp: Added.
807         (WebCore::AudioChannelSplitter::AudioChannelSplitter):
808         (WebCore::AudioChannelSplitter::process):
809         (WebCore::AudioChannelSplitter::reset):
810         * webaudio/AudioChannelSplitter.h: Added.
811         (WebCore::AudioChannelSplitter::create):
812         * webaudio/AudioChannelSplitter.idl: Added.
813
814 2010-09-29  Kinuko Yasuda  <kinuko@chromium.org>
815
816         Reviewed by David Levin.
817
818         Fix DirectoryReader's behavior to trigger only one EntriesCallback per readEntries
819         https://bugs.webkit.org/show_bug.cgi?id=46563
820
821         Test: fast/filesystem/read-directory.html
822
823         * fileapi/DOMFileSystem.cpp:
824         (WebCore::DOMFileSystem::readDirectory): Changed to take DirectoryReader
825         as a parameter.
826         * fileapi/DOMFileSystem.h:
827         (WebCore::DOMFileSystem::scheduleCallback): Added.
828         * fileapi/DirectoryReader.cpp:
829         (WebCore::DirectoryReader::DirectoryReader): Added initializer for
830         m_hasMore flag.
831         (WebCore::DirectoryReader::readEntries): Changed to schedule
832         EntriesCallback with an empty array if m_hasMore flag is set false.
833         * fileapi/DirectoryReader.h:
834         (WebCore::DirectoryReader::filesystem): Added.
835         (WebCore::DirectoryReader::setHasMore): Added.
836         * fileapi/FileSystemCallbacks.cpp:
837         (WebCore::EntriesCallbacks::create):
838         (WebCore::EntriesCallbacks::EntriesCallbacks): Changed to take
839         DirectoryReader as a parameter.
840         (WebCore::EntriesCallbacks::didReadDirectoryEntry):
841         (WebCore::EntriesCallbacks::didReadDirectoryEntries): Changed 1) not to
842         trigger the second callback when hasMore is false, and 2) to update
843         the DirectoryReader's m_hasMore flag.
844         * fileapi/FileSystemCallbacks.h:
845
846 2010-09-29  Chris Rogers  <crogers@google.com>
847
848         Reviewed by Kenneth Russell.
849
850         Add AudioGainNode files
851         https://bugs.webkit.org/show_bug.cgi?id=46286
852
853         No new tests since audio API is not yet implemented.
854
855         * webaudio/AudioGainNode.cpp: Added.
856         (WebCore::AudioGainNode::AudioGainNode):
857         (WebCore::AudioGainNode::process):
858         (WebCore::AudioGainNode::reset):
859         (WebCore::AudioGainNode::checkNumberOfChannelsForInput):
860         * webaudio/AudioGainNode.h: Added.
861         (WebCore::AudioGainNode::create):
862         (WebCore::AudioGainNode::gain):
863         * webaudio/AudioGainNode.idl: Added.
864
865 2010-09-29  Chris Rogers  <crogers@google.com>
866
867         Reviewed by Kenneth Russell.
868
869         Add AudioChannelMerger files
870         https://bugs.webkit.org/show_bug.cgi?id=46291
871
872         No new tests since audio API is not yet implemented.
873
874         * webaudio/AudioChannelMerger.cpp: Added.
875         (WebCore::AudioChannelMerger::AudioChannelMerger):
876         (WebCore::AudioChannelMerger::process):
877         (WebCore::AudioChannelMerger::reset):
878         * webaudio/AudioChannelMerger.h: Added.
879         (WebCore::AudioChannelMerger::create):
880         * webaudio/AudioChannelMerger.idl: Added.
881
882 2010-09-29  Chris Fleizach  <cfleizach@apple.com>
883
884         No review. Missed file for patch.
885
886         AX: implement CSS3 Speech "speak"
887         https://bugs.webkit.org/show_bug.cgi?id=46827
888
889         * css/CSSParser.cpp:
890         (WebCore::CSSParser::parseValue):
891
892 2010-09-29  Enrica Casucci  <enrica@apple.com>
893
894         Reviewed by Darin Adler.
895
896         Crash at lineBreakExistsAtPosition + 125
897         <rdar://problem/7028809> 
898         https://bugs.webkit.org/show_bug.cgi?id=46770
899         
900         lineBreakExistsAtPosition is called from InsertTextCommand::input,
901         where we compute the downstream position of the endingSelection().
902         Downstream can return the original position, that comes from a VisibleSelection
903         but there is no guarantee that its renderer is still there. Everywhere we dereference
904         a renderer we check if it's null.
905         
906         There is no regression test.
907         
908         * editing/htmlediting.cpp:
909         (WebCore::lineBreakExistsAtPosition): Added check that the renderer is not null
910         before dereferencing it.
911
912 2010-09-29  Sam Weinig  <sam@webkit.org>
913
914         Reviewed by Darin Adler.
915
916         Add additional checks to StringBuilder.
917         <rdar://problem/7761248>
918
919         * platform/text/StringBuilder.cpp:
920         (WebCore::checkAppend):
921         (WebCore::StringBuilder::append):
922         (WebCore::StringBuilder::toString):
923         (WebCore::StringBuilder::clear):
924         (WebCore::StringBuilder::length):
925         * platform/text/StringBuilder.h:
926         (WebCore::StringBuilder::StringBuilder):
927         (WebCore::StringBuilder::setNonNull):
928         (WebCore::StringBuilder::isNull):
929
930 2010-09-29  Anders Carlsson  <andersca@apple.com>
931
932         Reviewed by Darin Adler.
933
934         plugins/npruntime/invoke-failure.html fails in WebKit2 due to slightly different exception being thrown
935         https://bugs.webkit.org/show_bug.cgi?id=46715
936         <rdar://problem/8485909>
937
938         Remove exclamation points from exceptions.
939
940         * bindings/v8/V8NPObject.cpp:
941         (WebCore::npObjectInvokeImpl):
942         * bridge/c/c_instance.cpp:
943         (JSC::Bindings::CInstance::invokeMethod):
944         (JSC::Bindings::CInstance::invokeDefaultMethod):
945         (JSC::Bindings::CInstance::invokeConstruct):
946
947 2010-09-29  Anders Carlsson  <andersca@apple.com>
948
949         Reviewed by Darin Adler.
950
951         Add additional check to Text::wholeText.
952         <rdar://problem/8304795>
953
954         * dom/Text.cpp:
955         (WebCore::Text::wholeText):
956
957 2010-09-29  Brian Weinstein  <bweinstein@apple.com>
958
959         Reviewed by Brady Eidson.
960
961         REGRESSION (r66129): Loading full-frame .swf file crashes with flash blocker extension enabled
962         <https://bugs.webkit.org/show_bug.cgi?id=46773>
963         <rdar://problem/8390975>
964         
965         After r66129, start scripts were run on plugin documents, and cancelling the load of a plugin
966         document could cause Safari to crash.
967         
968         If a plugin load on an initial document is cancelled, we cancel the main resource load (where the
969         main resource is the plugin), and if the load is restarted and allowed, we don't go through the manual
970         loading path like we do on the initial load of a plugin in a plugin document.
971
972         Tests: plugins/plugin-document-load-prevented-userscript.html
973                plugins/plugin-document-willSendRequest-null.html
974
975         * html/HTMLEmbedElement.cpp:
976         (WebCore::HTMLEmbedElement::updateWidget): If the plugin load was cancelled, and this is in a
977             plugin document, call a function on PluginDocument that cancels the main resource load, and
978             sets a plugin document flag.
979         * html/PluginDocument.cpp:
980         (WebCore::PluginDocumentParser::appendBytes): Null check the widget's renderer, because it could be
981             null if the load was cancelled.
982         (WebCore::PluginDocument::PluginDocument): Initialize the new variable.
983         (WebCore::PluginDocument::cancelManualPluginLoad): Cancel the main resource load of the plugin document
984             (which is a plugin in the case of a plugin document).
985         * html/PluginDocument.h:
986         (WebCore::PluginDocument::shouldLoadPluginManually): Returns whether or not we should load the plugin
987             manually.
988         (WebCore::PluginDocument::setShouldLoadPluginManually): Set whether or not we should load the plugin
989             manually.
990         (WebCore::toPluginDocument):
991         * loader/SubframeLoader.cpp:
992         (WebCore::SubframeLoader::loadPlugin): Check if we should load the plugin manually according to the plugin
993             document.
994
995 2010-09-29  David Hyatt  <hyatt@apple.com>
996
997         Reviewed by Sam Weinig.
998
999         https://bugs.webkit.org/show_bug.cgi?id=46844, make estimateLogicalTopPosition
1000         block-flow-aware.
1001
1002         * rendering/RenderBlock.cpp:
1003         (WebCore::RenderBlock::estimateLogicalTopPosition):
1004         (WebCore::RenderBlock::collapsedMarginBeforeForChild):
1005         (WebCore::RenderBlock::collapsedMarginAfterForChild):
1006         * rendering/RenderBlock.h:
1007
1008 2010-09-29  Chris Rogers  <crogers@google.com>
1009
1010         Reviewed by Kenneth Russell.
1011
1012         Minor cleanup to AudioContext
1013         https://bugs.webkit.org/show_bug.cgi?id=46843
1014
1015         No new tests since audio API is not yet implemented
1016
1017         * webaudio/AudioContext.cpp:
1018         (WebCore::AudioContext::lock):
1019         (WebCore::AudioContext::handleDeferredFinishDerefs):
1020
1021 2010-09-29  MORITA Hajime  <morrita@google.com>
1022
1023         Reviewed by Eric Seidel.
1024
1025         Assertion failed when accessing -webkit-margin-top-collapse via computed style.
1026         https://bugs.webkit.org/show_bug.cgi?id=46798
1027         
1028         There was a switch statement which missed enum entries in getPropertyCSSValue().
1029         This change added these entries to prevent the leak.
1030         It also added extra case statements to encourage the compiler's help.
1031
1032         Test: fast/css/getComputedStyle/margin-top-bottom-collapse-alias.html
1033
1034         * css/CSSComputedStyleDeclaration.cpp:
1035         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
1036
1037 2010-09-29  Chris Rogers  <crogers@google.com>
1038
1039         Reviewed by Kenneth Russell.
1040
1041         Limit number of AudioNode deletions per render quantum in AudioContext
1042         https://bugs.webkit.org/show_bug.cgi?id=46834
1043
1044         No new tests since audio API is not yet implemented.
1045
1046         * webaudio/AudioContext.cpp:
1047         (WebCore::AudioContext::handlePostRenderTasks):
1048         (WebCore::AudioContext::deleteMarkedNodes):
1049
1050 2010-09-29  David Hyatt  <hyatt@apple.com>
1051
1052         Reviewed by Simon Fraser.
1053
1054         https://bugs.webkit.org/show_bug.cgi?id=46838
1055         
1056         Get rid of the marginXXXUsing/setMarginXXXUsing methods on RenderBox.  I'm inverting the way these are called
1057         and putting the methods on RenderBlock instead.  The methods can be named better this way and the getters
1058         can operate on RenderBoxModelObjects instead of just RenderBoxes.
1059
1060         * rendering/RenderBlock.cpp:
1061         (WebCore::RenderBlock::layoutBlockChild):
1062         (WebCore::RenderBlock::marginBeforeForChild):
1063         (WebCore::RenderBlock::marginAfterForChild):
1064         (WebCore::RenderBlock::marginStartForChild):
1065         (WebCore::RenderBlock::marginEndForChild):
1066         (WebCore::RenderBlock::setMarginStartForChild):
1067         (WebCore::RenderBlock::setMarginEndForChild):
1068         (WebCore::RenderBlock::setMarginBeforeForChild):
1069         (WebCore::RenderBlock::setMarginAfterForChild):
1070         * rendering/RenderBlock.h:
1071         (WebCore::RenderBlock::logicalHeightForChild):
1072         (WebCore::RenderBlock::logicalTopForChild):
1073         * rendering/RenderBox.cpp:
1074         (WebCore::RenderBox::marginBefore):
1075         (WebCore::RenderBox::marginAfter):
1076         (WebCore::RenderBox::marginStart):
1077         (WebCore::RenderBox::marginEnd):
1078         (WebCore::RenderBox::setMarginStart):
1079         (WebCore::RenderBox::setMarginEnd):
1080         (WebCore::RenderBox::setMarginBefore):
1081         (WebCore::RenderBox::setMarginAfter):
1082         (WebCore::RenderBox::computeLogicalWidth):
1083         (WebCore::RenderBox::computeInlineDirectionMargins):
1084         (WebCore::RenderBox::computeBlockDirectionMargins):
1085         * rendering/RenderBox.h:
1086         (WebCore::RenderBox::setMarginTop):
1087         (WebCore::RenderBox::setMarginBottom):
1088         (WebCore::RenderBox::setMarginLeft):
1089         (WebCore::RenderBox::setMarginRight):
1090
1091 2010-09-29  Dan Bernstein  <mitz@apple.com>
1092
1093         Reviewed by Sam Weinig.
1094
1095         Removed input type site-specific quirk for mail.google.com
1096         https://bugs.webkit.org/show_bug.cgi?id=46836
1097
1098         * bindings/js/JSHTMLInputElementCustom.cpp:
1099         (WebCore::needsGmailQuirk): Removed.
1100         (WebCore::JSHTMLInputElement::type): Removed this custom getter. 
1101         * html/HTMLInputElement.idl: Removed the JSCCustomGetter custom attribute
1102         from the type attribute.
1103
1104 2010-09-29  Joseph Pecoraro  <joepeck@webkit.org>
1105
1106         Reviewed by Simon Fraser.
1107
1108         CRASH at WebCore::HTMLSourceElement::scheduleErrorEvent
1109         https://bugs.webkit.org/show_bug.cgi?id=46777
1110
1111         It should not be possible to get to be in the LoadingFromSourceElement
1112         state with a null current source node. This was a possible scenario
1113         where the current source node was cleared but the load state was not
1114         cleared as well. Tried and could not create a test case for this.
1115
1116         * html/HTMLMediaElement.cpp:
1117         (WebCore::HTMLMediaElement::userCancelledLoad): clear the load state because we also clear the current source node.
1118
1119 2010-09-29  David Hyatt  <hyatt@apple.com>
1120
1121         Reviewed by Dan Bernstein.
1122
1123         https://bugs.webkit.org/show_bug.cgi?id=46835, patch a few more height/logicalHeights.  Rename stretchesToViewHeight.
1124
1125         * page/FrameView.cpp:
1126         (WebCore::FrameView::layout):
1127         * rendering/RenderBlock.cpp:
1128         (WebCore::RenderBlock::layoutBlock):
1129         * rendering/RenderBlockLineLayout.cpp:
1130         (WebCore::RenderBlock::layoutInlineChildren):
1131         * rendering/RenderBox.cpp:
1132         (WebCore::RenderBox::computeLogicalHeight):
1133         * rendering/RenderBox.h:
1134         (WebCore::RenderBox::stretchesToViewport):
1135         * rendering/RenderBoxModelObject.cpp:
1136         (WebCore::RenderBoxModelObject::relativePositionOffsetY):
1137
1138 2010-09-29  Chris Fleizach  <cfleizach@apple.com>
1139
1140         Reviewed by Darin Adler.
1141
1142         AX: implement CSS3 Speech "speak"
1143         https://bugs.webkit.org/show_bug.cgi?id=46827
1144
1145         Support the "speak" style as defined in
1146         http://www.w3.org/TR/css3-speech/#speak
1147
1148         This puts all the pieces in place for a platform to support this ability, but there's no platform implementation yet.
1149
1150         Test: platform/mac/accessibility/css-speech-speak.html
1151
1152         * accessibility/AccessibilityObject.h:
1153         (WebCore::AccessibilityObject::speakProperty):
1154         * accessibility/AccessibilityRenderObject.cpp:
1155         (WebCore::AccessibilityRenderObject::speakProperty):
1156         * accessibility/AccessibilityRenderObject.h:
1157         * accessibility/mac/AccessibilityObjectWrapper.mm:
1158         (-[AccessibilityObjectWrapper accessibilityAttributeValue:]):
1159         * css/CSSComputedStyleDeclaration.cpp:
1160         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
1161         * css/CSSPrimitiveValueMappings.h:
1162         (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
1163         (WebCore::CSSPrimitiveValue::operator ESpeak):
1164         * css/CSSPropertyNames.in:
1165         * css/CSSStyleSelector.cpp:
1166         (WebCore::CSSStyleSelector::applyProperty):
1167         * css/CSSValueKeywords.in:
1168         * rendering/style/RenderStyle.h:
1169         (WebCore::InheritedFlags::speak):
1170         (WebCore::InheritedFlags::setSpeak):
1171         (WebCore::InheritedFlags::initialSpeak):
1172         * rendering/style/RenderStyleConstants.h:
1173         * rendering/style/StyleRareInheritedData.cpp:
1174         (WebCore::StyleRareInheritedData::StyleRareInheritedData):
1175         (WebCore::StyleRareInheritedData::operator==):
1176         * rendering/style/StyleRareInheritedData.h:
1177
1178 2010-09-29  João Paulo Rechi Vita  <jprvita@profusion.mobi>
1179
1180         Reviewed by Antonio Gomes.
1181
1182         [Curl] Fix unused and unitialized warnings.
1183         https://bugs.webkit.org/show_bug.cgi?id=46831
1184
1185         No new tests since no new funcionality has been added.
1186
1187         * platform/network/curl/ResourceHandleCurl.cpp:
1188         (WebCore::allowsAnyHTTPSCertificateHosts):
1189         * platform/network/curl/ResourceHandleManager.cpp:
1190         (WebCore::ResourceHandleManager::ResourceHandleManager):
1191         (WebCore::handleLocalReceiveResponse):
1192         (WebCore::ResourceHandleManager::downloadTimerCallback):
1193         (WebCore::ResourceHandleManager::initializeHandle):
1194
1195 2010-09-29  David Hyatt  <hyatt@apple.com>
1196
1197         Reviewed by Sam Weinig.
1198
1199         https://bugs.webkit.org/show_bug.cgi?id=46824
1200         
1201         Convert layoutBlockChild (but not the functions it calls) to be block-flow-aware.
1202
1203         fast/blockflow/root-lr.html progresses as a result of this change.
1204
1205         * rendering/RenderBlock.cpp:
1206         (WebCore::RenderBlock::estimateLogicalTopPosition):
1207         (WebCore::RenderBlock::determineLogicalLeftPositionForChild):
1208         (WebCore::RenderBlock::setLogicalTopForChild):
1209         (WebCore::RenderBlock::layoutBlockChild):
1210         * rendering/RenderBlock.h:
1211         (WebCore::RenderBlock::logicalHeightForChild):
1212         (WebCore::RenderBlock::logicalTopForChild):
1213         * rendering/RenderBox.h:
1214
1215 2010-09-29  Ryosuke Niwa  <rniwa@webkit.org>
1216
1217         Reviewed by Antonio Gomes.
1218
1219         queryCommandValue "formatBlock" always returns false
1220         https://bugs.webkit.org/show_bug.cgi?id=21305
1221
1222         Implemented queryCommandValue('formatBlock'). We match the Firefox's behavior exactly
1223         because Firefox and Internet Explorer support the same set of elements
1224         (address, h1, h2, h3, h4, h5, h6, and p) and Firefox's behavior is more compatible with Opera.
1225         See the bug for the detailed discussion.
1226
1227         WebKit's implementation returns the local name of the lowest common ancestor
1228         of the selection with the tag name address, h1, h2, h3, h4, h5, h6, or p.
1229         It returns "" when there is no such an ancestor or there is no selection.
1230
1231         Test: editing/execCommand/query-format-block.html
1232
1233         * editing/Editor.cpp:
1234         (WebCore::isElementForFormatBlockCommand):
1235         (WebCore::Editor::elementForFormatBlockCommand):
1236         * editing/Editor.h:
1237         * editing/EditorCommand.cpp:
1238         (WebCore::valueFormatBlock):
1239         (WebCore::createCommandMap):
1240
1241 2010-09-29  Matt Perry  <mpcomplete@chromium.org>
1242
1243         Reviewed by Darin Fisher.
1244
1245         Remove obsolete registerExtension variants from chromium port.
1246         https://bugs.webkit.org/show_bug.cgi?id=46683
1247
1248         * bindings/v8/V8DOMWindowShell.cpp:
1249         (WebCore::V8DOMWindowShell::createNewContext):
1250         * bindings/v8/V8Proxy.cpp:
1251         (WebCore::V8Proxy::registeredExtensionWithV8):
1252         (WebCore::V8Proxy::registerExtension):
1253         * bindings/v8/V8Proxy.h:
1254
1255 2010-09-29  Martin Robinson  <mrobinson@igalia.com>
1256
1257         Reviewed by Chris Fleizach.
1258
1259         [GTK] editing/selection/selection-modify-crash.html crashes when run in Xvfb
1260         https://bugs.webkit.org/show_bug.cgi?id=46822
1261
1262         When parentObjectUnignored returns null in objectAndOffsetUnignored consider that
1263         a failure case. Handle this failure appropriately at all call sites.
1264
1265         * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
1266         (webkit_accessible_text_get_caret_offset): Handle the failure of objectAndOffsetUnignored.
1267         (objectAndOffsetUnignored): Always check the return value of parentObjectUnignored and
1268         return 0 to indicate failure when that happens.
1269         * editing/gtk/SelectionControllerGtk.cpp:
1270         (WebCore::SelectionController::notifyAccessibilityForSelectionChange): Handle the failure
1271         case of objectAndOffsetUnignored.
1272
1273 2010-09-29  Sheriff Bot  <webkit.review.bot@gmail.com>
1274
1275         Unreviewed, rolling out r68657.
1276         http://trac.webkit.org/changeset/68657
1277         https://bugs.webkit.org/show_bug.cgi?id=46820
1278
1279         reason "Breaks win debug build" (Requested by podivilov on
1280         #webkit).
1281
1282         * CMakeLists.txt:
1283         * GNUmakefile.am:
1284         * WebCore.gypi:
1285         * WebCore.pro:
1286         * WebCore.xcodeproj/project.pbxproj:
1287         * bindings/js/JSXMLHttpRequestCustom.cpp:
1288         (WebCore::JSXMLHttpRequest::send):
1289         * bindings/v8/custom/V8XMLHttpRequestCustom.cpp:
1290         (WebCore::V8XMLHttpRequest::sendCallback):
1291         * dom/CharacterData.cpp:
1292         (WebCore::CharacterData::dispatchModifiedEvent):
1293         * dom/ContainerNode.cpp:
1294         (WebCore::ContainerNode::insertBefore):
1295         (WebCore::ContainerNode::parserInsertBefore):
1296         (WebCore::ContainerNode::replaceChild):
1297         (WebCore::ContainerNode::appendChild):
1298         (WebCore::ContainerNode::parserAddChild):
1299         (WebCore::notifyChildInserted):
1300         (WebCore::dispatchChildRemovalEvents):
1301         * dom/Element.cpp:
1302         (WebCore::Element::setAttribute):
1303         (WebCore::Element::removeAttribute):
1304         * inspector/InspectorController.cpp:
1305         (WebCore::InspectorController::InspectorController):
1306         (WebCore::InspectorController::~InspectorController):
1307         (WebCore::InspectorController::connectFrontend):
1308         (WebCore::InspectorController::disconnectFrontend):
1309         (WebCore::InspectorController::willInsertDOMNodeImpl):
1310         (WebCore::InspectorController::didInsertDOMNodeImpl):
1311         (WebCore::InspectorController::willRemoveDOMNodeImpl):
1312         (WebCore::InspectorController::didRemoveDOMNodeImpl):
1313         (WebCore::InspectorController::willModifyDOMAttrImpl):
1314         (WebCore::InspectorController::didModifyDOMAttrImpl):
1315         (WebCore::InspectorController::characterDataModifiedImpl):
1316         (WebCore::InspectorController::instrumentWillSendXMLHttpRequestImpl):
1317         * inspector/InspectorController.h:
1318         (WebCore::InspectorController::willInsertDOMNode):
1319         (WebCore::InspectorController::didInsertDOMNode):
1320         (WebCore::InspectorController::willRemoveDOMNode):
1321         (WebCore::InspectorController::willModifyDOMAttr):
1322         (WebCore::InspectorController::didModifyDOMAttr):
1323         (WebCore::InspectorController::characterDataModified):
1324         (WebCore::InspectorController::instrumentWillSendXMLHttpRequest):
1325         (WebCore::InspectorController::inspectorControllerForScriptExecutionContext):
1326         (WebCore::InspectorController::inspectorControllerForNode):
1327         (WebCore::InspectorController::inspectorControllerForDocument):
1328         * inspector/InspectorInstrumentation.cpp: Removed.
1329         * inspector/InspectorInstrumentation.h: Removed.
1330         * workers/SharedWorker.cpp:
1331
1332 2010-09-29  Xiaomei Ji  <xji@chromium.org>
1333
1334         Reviewed by David Levin.
1335
1336         Performance improvement for FontLinux.
1337         https://bugs.webkit.org/show_bug.cgi?id=46374
1338
1339         Reduce new/delete operations by storing the maximum capacity of the glyph
1340         array and use that value in subsequent HB_ShapeItem calls. (Note that a
1341         call to HB_ShapeItem may reduce the value of m_item.num_glyphs below the
1342         capacity.)
1343
1344         Also be consistent with zero'ing the glyph arrays before calling 
1345         HB_ShapeItem.
1346
1347         There is no functionality changes so no new tests are added.
1348  
1349         * platform/graphics/chromium/FontLinux.cpp:
1350         (WebCore::TextRunWalker::createGlyphArrays):
1351         (WebCore::TextRunWalker::resetGlyphArrays):
1352         (WebCore::TextRunWalker::shapeGlyphs):
1353
1354 2010-09-29  Pavel Podivilov  <podivilov@chromium.org>
1355
1356         Reviewed by Pavel Feldman.
1357
1358         Web Inspector: extract Inspector Instrumentation API as a class.
1359         https://bugs.webkit.org/show_bug.cgi?id=46614
1360
1361         * CMakeLists.txt:
1362         * GNUmakefile.am:
1363         * WebCore.gypi:
1364         * WebCore.pro:
1365         * WebCore.xcodeproj/project.pbxproj:
1366         * bindings/js/JSXMLHttpRequestCustom.cpp:
1367         (WebCore::JSXMLHttpRequest::send):
1368         * bindings/v8/custom/V8XMLHttpRequestCustom.cpp:
1369         (WebCore::V8XMLHttpRequest::sendCallback):
1370         * dom/CharacterData.cpp:
1371         (WebCore::CharacterData::dispatchModifiedEvent):
1372         * dom/ContainerNode.cpp:
1373         (WebCore::ContainerNode::insertBefore):
1374         (WebCore::ContainerNode::parserInsertBefore):
1375         (WebCore::ContainerNode::replaceChild):
1376         (WebCore::ContainerNode::appendChild):
1377         (WebCore::ContainerNode::parserAddChild):
1378         (WebCore::notifyChildInserted):
1379         (WebCore::dispatchChildRemovalEvents):
1380         * dom/Element.cpp:
1381         (WebCore::Element::setAttribute):
1382         (WebCore::Element::removeAttribute):
1383         * inspector/InspectorController.cpp:
1384         (WebCore::InspectorController::InspectorController):
1385         (WebCore::InspectorController::~InspectorController):
1386         (WebCore::InspectorController::connectFrontend):
1387         (WebCore::InspectorController::disconnectFrontend):
1388         (WebCore::InspectorController::instrumentWillSendXMLHttpRequest):
1389         * inspector/InspectorController.h:
1390         * inspector/InspectorInstrumentation.cpp: Added.
1391         (WebCore::InspectorInstrumentation::willInsertDOMNodeImpl):
1392         (WebCore::InspectorInstrumentation::didInsertDOMNodeImpl):
1393         (WebCore::InspectorInstrumentation::willRemoveDOMNodeImpl):
1394         (WebCore::InspectorInstrumentation::didRemoveDOMNodeImpl):
1395         (WebCore::InspectorInstrumentation::willModifyDOMAttrImpl):
1396         (WebCore::InspectorInstrumentation::didModifyDOMAttrImpl):
1397         (WebCore::InspectorInstrumentation::characterDataModifiedImpl):
1398         (WebCore::InspectorInstrumentation::instrumentWillSendXMLHttpRequestImpl):
1399         * inspector/InspectorInstrumentation.h: Added.
1400         (WebCore::InspectorInstrumentation::frontendCreated):
1401         (WebCore::InspectorInstrumentation::frontendDeleted):
1402         (WebCore::InspectorInstrumentation::hasFrontends):
1403         (WebCore::InspectorInstrumentation::willInsertDOMNode):
1404         (WebCore::InspectorInstrumentation::didInsertDOMNode):
1405         (WebCore::InspectorInstrumentation::willRemoveDOMNode):
1406         (WebCore::InspectorInstrumentation::willModifyDOMAttr):
1407         (WebCore::InspectorInstrumentation::didModifyDOMAttr):
1408         (WebCore::InspectorInstrumentation::characterDataModified):
1409         (WebCore::InspectorInstrumentation::instrumentWillSendXMLHttpRequest):
1410         (WebCore::InspectorInstrumentation::inspectorControllerForScriptExecutionContext):
1411         (WebCore::InspectorInstrumentation::inspectorControllerForDocument):
1412         (WebCore::InspectorInstrumentation::inspectorControllerForPage):
1413
1414 2010-09-29  David Hyatt  <hyatt@apple.com>
1415
1416         Reviewed by Sam Weinig.
1417
1418         https://bugs.webkit.org/show_bug.cgi?id=46786, convert layoutBlockChild (but not any functions it calls)
1419         to be block-flow-aware.
1420
1421         * rendering/RenderBlock.cpp:
1422         (WebCore::RenderBlock::layoutBlock):
1423         (WebCore::RenderBlock::handleAfterSideOfBlock):
1424         (WebCore::RenderBlock::layoutBlockChildren):
1425         * rendering/RenderBlock.h:
1426         * rendering/RenderBox.h:
1427         (WebCore::RenderBox::scrollbarLogicalHeight):
1428
1429 2010-09-29  João Paulo Rechi Vita  <jprvita@profusion.mobi>
1430
1431         Reviewed by Antonio Gomes.
1432
1433         [EFL] General small fixes.
1434         https://bugs.webkit.org/show_bug.cgi?id=46813
1435
1436         This commit spots a comparison between signed and unsigned integer
1437         expressions, a missing return and a never-called function.
1438
1439         No new tests since no new funcionality has been added.
1440
1441         * platform/efl/SharedBufferEfl.cpp:
1442         (WebCore::SharedBuffer::createWithContentsOfFile):
1443
1444 2010-09-29  Philippe Normand  <pnormand@igalia.com>
1445
1446         Reviewed by Gustavo Noronha Silva.
1447
1448         build still broken since r68521
1449         https://bugs.webkit.org/show_bug.cgi?id=46795
1450
1451         Call make-values.pl once only. It seems calling it multiple times
1452         in the same build produces a wrong CSSValueKeywordsHash.h which
1453         has a duplicate declaration of its valueList variable. The double
1454         call is triggered by the double targets in the Makefile rules and
1455         makevalues.pl generates one of them, which screws up the build. A
1456         more proper fix should be done with the advices on
1457         http://www.cmcrossroads.com/cm-basics/12905-rules-with-multiple-outputs-in-gnu-make
1458
1459         * GNUmakefile.am:
1460
1461 2010-09-29  João Paulo Rechi Vita  <jprvita@profusion.mobi>
1462
1463         Unreviewed build fix.
1464
1465         Fix CMake build for ENABLE_PROGRESS_TAG.
1466         https://bugs.webkit.org/show_bug.cgi?id=46808
1467
1468         No new tests since it's a build fix.
1469
1470         * CMakeLists.txt:
1471
1472 2010-09-29  Yury Semikhatsky  <yurys@chromium.org>
1473
1474         Reviewed by Pavel Feldman.
1475
1476         [v8] Use generic mechanism to report exceptions in V8CustomVoidCallback
1477         https://bugs.webkit.org/show_bug.cgi?id=46803
1478
1479         No new tests. It's covered by existing tests under LayoutTests/storage
1480
1481         * bindings/v8/custom/V8CustomVoidCallback.cpp:
1482         (WebCore::invokeCallback):
1483
1484 2010-09-29  Satish Sampath  <satish@chromium.org>
1485
1486         Reviewed by Jeremy Orlow.
1487
1488         Rename the input element's @speech attribute to @webkitspeech since it is still experimental.
1489         https://bugs.webkit.org/show_bug.cgi?id=46799
1490
1491         * bindings/generic/RuntimeEnabledFeatures.h:
1492         (WebCore::RuntimeEnabledFeatures::webkitspeechEnabled): Rename the runtime feature flag getter.
1493         * css/CSSPrimitiveValueMappings.h:
1494         (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
1495         * css/CSSValueKeywords.in: Rename the css style name.
1496         * css/html.css: Rename the css style name.
1497         (input::-webkit-input-speech-button):
1498         * html/HTMLAttributeNames.in: Rename the @speech attribute.
1499         * html/HTMLInputElement.cpp: Update code using the attribute.
1500         (WebCore::HTMLInputElement::parseMappedAttribute):
1501         (WebCore::HTMLInputElement::isSpeechEnabled):
1502         * html/HTMLInputElement.idl: Rename the @speech attribute.
1503
1504 2010-09-29  MORITA Hajime  <morrita@google.com>
1505
1506         [Chromium] failed to build without ACCELERATED_COMPOSITING
1507         https://bugs.webkit.org/show_bug.cgi?id=46793
1508
1509         Moved constant definitions from inside ACCELERATED_COMPOSITING to
1510         outside of the condition.
1511         
1512         * WebCore.gypi:
1513         * platform/graphics/chromium/VideoFrameChromium.cpp: Added just for defining constants.
1514         * platform/graphics/chromium/VideoLayerChromium.cpp:
1515
1516 2010-09-28  Pavel Feldman  <pfeldman@chromium.org>
1517
1518         Reviewed by Timothy Hatcher.
1519
1520         Web Inspector: [Resources panel] Need more visible "at a glance".
1521         https://bugs.webkit.org/show_bug.cgi?id=45657
1522
1523         * WebCore.gypi:
1524         * WebCore.vcproj/WebCore.vcproj:
1525         * inspector/front-end/DataGrid.js:
1526         (WebInspector.DataGrid):
1527         (WebInspector.DataGrid.prototype.updateWidths):
1528         (WebInspector.DataGrid.prototype.sortNodes):
1529         (WebInspector.DataGrid.prototype._resizerDragging):
1530         (WebInspector.DataGrid.prototype._endResizerDragging):
1531         (WebInspector.DataGridNode.prototype.selectable.true.get element):
1532         (WebInspector.DataGridNode.prototype.createCells):
1533         (WebInspector.DataGridNode.prototype.refresh):
1534         * inspector/front-end/Images/networkIcon.png: Copied from WebCore/inspector/front-end/Images/resourcesIcon.png.
1535         * inspector/front-end/NetworkPanel.js: Added.
1536         * inspector/front-end/Settings.js:
1537         * inspector/front-end/WebKit.qrc:
1538         * inspector/front-end/inspector.css:
1539         (.toolbar-item.network .toolbar-icon):
1540         (.data-grid .data-container):
1541         * inspector/front-end/inspector.html:
1542         * inspector/front-end/inspector.js:
1543         (WebInspector._createPanels):
1544         (WebInspector.updateResource):
1545         * inspector/front-end/networkPanel.css: Added.
1546
1547 2010-09-28  Ilya Tikhonovsky  <loislo@chromium.org>
1548
1549         Reviewed by Yury Semikhatsky.
1550
1551         Web Inspector: move pauseOnExceptionState under control of InspectorState
1552         It is Inspector Protocol cleanup activity.
1553         The actual state of this flag can be obtained as a return value of setPauseOnExceptionState command
1554         or as a value in InspectorState object.
1555
1556         https://bugs.webkit.org/show_bug.cgi?id=46724
1557
1558         * inspector/Inspector.idl:
1559         * inspector/InspectorController.cpp:
1560         (WebCore::InspectorController::getInspectorState):
1561         (WebCore::InspectorController::populateScriptObjects):
1562         * inspector/InspectorDebuggerAgent.cpp:
1563         (WebCore::InspectorDebuggerAgent::setPauseOnExceptionsState):
1564         (WebCore::InspectorDebuggerAgent::pauseOnExceptionsState):
1565         * inspector/InspectorDebuggerAgent.h:
1566         * inspector/front-end/ScriptsPanel.js:
1567         (WebInspector.ScriptsPanel.prototype._togglePauseOnExceptions):
1568         * inspector/front-end/inspector.js:
1569         (WebInspector.doLoadedDone.populateInspectorState):
1570         (WebInspector.doLoadedDone):
1571         (WebInspector.reportProtocolError):
1572
1573 2010-09-28  Philippe Normand  <pnormand@igalia.com>
1574
1575         Reviewed by Martin Robinson.
1576
1577         check USE(GSTREAMER) instead of ENABLE(VIDEO) in gstreamer/ files
1578         https://bugs.webkit.org/show_bug.cgi?id=46717
1579
1580         Guard the gstreamer/ files with USE(GSTREAMER), which is more
1581         explicit than ENABLE(VIDEO).
1582
1583         * GNUmakefile.am: Define WTF_USE_GSTREAMER only if GStreamer
1584         support is enabled.
1585         * platform/graphics/gstreamer/DataSourceGStreamer.cpp:
1586         * platform/graphics/gstreamer/DataSourceGStreamer.h:
1587         * platform/graphics/gstreamer/GOwnPtrGStreamer.cpp:
1588         * platform/graphics/gstreamer/GOwnPtrGStreamer.h:
1589         * platform/graphics/gstreamer/GStreamerGWorld.cpp:
1590         * platform/graphics/gstreamer/GStreamerGWorld.h:
1591         * platform/graphics/gstreamer/ImageGStreamer.h:
1592         * platform/graphics/gstreamer/ImageGStreamerCG.mm:
1593         * platform/graphics/gstreamer/ImageGStreamerCairo.cpp:
1594         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
1595         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h:
1596         * platform/graphics/gstreamer/PlatformVideoWindow.h:
1597         * platform/graphics/gstreamer/PlatformVideoWindowEfl.cpp:
1598         * platform/graphics/gstreamer/PlatformVideoWindowGtk.cpp:
1599         * platform/graphics/gstreamer/VideoSinkGStreamer.cpp:
1600         * platform/graphics/gstreamer/VideoSinkGStreamer.h:
1601         * platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
1602         * platform/graphics/gstreamer/WebKitWebSourceGStreamer.h:
1603
1604 2010-09-28  Kent Tamura  <tkent@chromium.org>
1605
1606         Unreviewed, windows build fix for r68629.
1607
1608         * WebCore.vcproj/WebCore.vcproj: Add TimeInputType.{cpp,h}
1609
1610 2010-09-28  Johnny Ding  <jnd@chromium.org>
1611
1612         Reviewed by Adam Barth.
1613
1614         https://bugs.webkit.org/show_bug.cgi?id=41292
1615         Pass the right popupAllowed flag to current execution frame,
1616         so WebKit can get right gesture status for popups initiated
1617         from plugins.
1618         This also makes v8 binding's ScriptController::processingUserGesture
1619         match what jsc version.
1620
1621         Test: plugins/plugin-initiate-popup-window.html
1622
1623         * bindings/v8/NPV8Object.cpp:
1624         (_NPN_EvaluateHelper):
1625         * bindings/v8/ScriptController.cpp:
1626         (WebCore::ScriptController::ScriptController):
1627         (WebCore::ScriptController::processingUserGesture):
1628         * bindings/v8/ScriptController.h:
1629         (WebCore::ScriptController::setAllowPopupsFromPlugin):
1630         (WebCore::ScriptController::allowPopupsFromPlugin):
1631
1632 2010-09-28  Kent Tamura  <tkent@chromium.org>
1633
1634         Reviewed by Darin Adler.
1635
1636         Refactor HTMLInputElement: Introducing InputType class and classes
1637         for each input element types.
1638         https://bugs.webkit.org/show_bug.cgi?id=45872
1639
1640         No new tests because this doesn't change any behavior.
1641
1642         * Android.mk: Add new files.
1643         * CMakeLists.txt: ditto.
1644         * GNUmakefile.am: ditto.
1645         * WebCore.gypi: ditto.
1646         * WebCore.pro: ditto.
1647         * WebCore.vcproj/WebCore.vcproj: ditto.
1648         * WebCore.xcodeproj/project.pbxproj: ditto.
1649         * html/BaseTextInputType.cpp: Added.
1650         (WebCore::BaseTextInputType::isTextType):
1651         (WebCore::BaseTextInputType::patternMismatch):
1652         * html/BaseTextInputType.h: Added.
1653         (WebCore::BaseTextInputType::BaseTextInputType):
1654         * html/ButtonInputType.cpp: Added.
1655         (WebCore::ButtonInputType::create):
1656         (WebCore::ButtonInputType::formControlType):
1657         * html/ButtonInputType.h: Added.
1658         (WebCore::ButtonInputType::ButtonInputType):
1659         * html/CheckboxInputType.cpp: Added.
1660         (WebCore::CheckboxInputType::create):
1661         (WebCore::CheckboxInputType::formControlType):
1662         * html/CheckboxInputType.h: Added.
1663         (WebCore::CheckboxInputType::CheckboxInputType):
1664         * html/ColorInputType.cpp: Added.
1665         (WebCore::ColorInputType::create):
1666         (WebCore::ColorInputType::formControlType):
1667         * html/ColorInputType.h: Added.
1668         (WebCore::ColorInputType::ColorInputType):
1669         * html/DateInputType.cpp: Added.
1670         (WebCore::DateInputType::create):
1671         (WebCore::DateInputType::formControlType):
1672         * html/DateInputType.h: Added.
1673         (WebCore::DateInputType::DateInputType):
1674         * html/DateTimeInputType.cpp: Added.
1675         (WebCore::DateTimeInputType::create):
1676         (WebCore::DateTimeInputType::formControlType):
1677         * html/DateTimeInputType.h: Added.
1678         (WebCore::DateTimeInputType::DateTimeInputType):
1679         * html/DateTimeLocalInputType.cpp: Added.
1680         (WebCore::DateTimeLocalInputType::create):
1681         (WebCore::DateTimeLocalInputType::formControlType):
1682         * html/DateTimeLocalInputType.h: Added.
1683         (WebCore::DateTimeLocalInputType::DateTimeLocalInputType):
1684         * html/EmailInputType.cpp: Added.
1685         (WebCore::EmailInputType::create):
1686         (WebCore::EmailInputType::formControlType):
1687         * html/EmailInputType.h: Added.
1688         (WebCore::EmailInputType::EmailInputType):
1689         * html/FileInputType.cpp: Added.
1690         (WebCore::FileInputType::create):
1691         (WebCore::FileInputType::formControlType):
1692         * html/FileInputType.h: Added.
1693         (WebCore::FileInputType::FileInputType):
1694         * html/HTMLInputElement.cpp:
1695         (WebCore::HTMLInputElement::HTMLInputElement): Initialize m_inputType.
1696         (WebCore::HTMLInputElement::patternMismatch): Delegate to InputType.
1697         (WebCore::HTMLInputElement::updateType): Update m_inputType with new type.
1698         (WebCore::HTMLInputElement::formControlType): Delegate to InputType.
1699         (WebCore::HTMLInputElement::isTextField): ditto.
1700         (WebCore::HTMLInputElement::isTextType): ditto.
1701         * html/HTMLInputElement.h:
1702         * html/HiddenInputType.cpp: Added.
1703         (WebCore::HiddenInputType::create):
1704         (WebCore::HiddenInputType::formControlType):
1705         * html/HiddenInputType.h: Added.
1706         (WebCore::HiddenInputType::HiddenInputType):
1707         * html/ImageInputType.cpp: Added.
1708         (WebCore::ImageInputType::create):
1709         (WebCore::ImageInputType::formControlType):
1710         * html/ImageInputType.h: Added.
1711         (WebCore::ImageInputType::ImageInputType):
1712         * html/InputType.cpp: Added.
1713         (WebCore::createInputTypeFactoryMap):
1714         (WebCore::InputType::create):
1715         (WebCore::InputType::createText):
1716         (WebCore::InputType::~InputType):
1717         (WebCore::InputType::isTextField):
1718         (WebCore::InputType::isTextType):
1719         (WebCore::InputType::patternMismatch):
1720         (WebCore::InputTypeNames::button):
1721         (WebCore::InputTypeNames::checkbox):
1722         (WebCore::InputTypeNames::color):
1723         (WebCore::InputTypeNames::date):
1724         (WebCore::InputTypeNames::datetime):
1725         (WebCore::InputTypeNames::datetimelocal):
1726         (WebCore::InputTypeNames::email):
1727         (WebCore::InputTypeNames::file):
1728         (WebCore::InputTypeNames::hidden):
1729         (WebCore::InputTypeNames::image):
1730         (WebCore::InputTypeNames::isindex):
1731         (WebCore::InputTypeNames::month):
1732         (WebCore::InputTypeNames::number):
1733         (WebCore::InputTypeNames::password):
1734         (WebCore::InputTypeNames::radio):
1735         (WebCore::InputTypeNames::range):
1736         (WebCore::InputTypeNames::reset):
1737         (WebCore::InputTypeNames::search):
1738         (WebCore::InputTypeNames::submit):
1739         (WebCore::InputTypeNames::telephone):
1740         (WebCore::InputTypeNames::text):
1741         (WebCore::InputTypeNames::time):
1742         (WebCore::InputTypeNames::url):
1743         (WebCore::InputTypeNames::week):
1744         * html/InputType.h: Added.
1745         (WebCore::InputType::InputType):
1746         (WebCore::InputType::element):
1747         * html/IsIndexInputType.cpp: Added.
1748         (WebCore::IsIndexInputType::create):
1749         (WebCore::IsIndexInputType::formControlType):
1750         * html/IsIndexInputType.h: Added.
1751         (WebCore::IsIndexInputType::IsIndexInputType):
1752         * html/MonthInputType.cpp: Added.
1753         (WebCore::MonthInputType::create):
1754         (WebCore::MonthInputType::formControlType):
1755         * html/MonthInputType.h: Added.
1756         (WebCore::MonthInputType::MonthInputType):
1757         * html/NumberInputType.cpp: Added.
1758         (WebCore::NumberInputType::create):
1759         (WebCore::NumberInputType::formControlType):
1760         * html/NumberInputType.h: Added.
1761         (WebCore::NumberInputType::NumberInputType):
1762         * html/PasswordInputType.cpp: Added.
1763         (WebCore::PasswordInputType::create):
1764         (WebCore::PasswordInputType::formControlType):
1765         * html/PasswordInputType.h: Added.
1766         (WebCore::PasswordInputType::PasswordInputType):
1767         * html/RadioInputType.cpp: Added.
1768         (WebCore::RadioInputType::create):
1769         (WebCore::RadioInputType::formControlType):
1770         * html/RadioInputType.h: Added.
1771         (WebCore::RadioInputType::RadioInputType):
1772         * html/RangeInputType.cpp: Added.
1773         (WebCore::RangeInputType::create):
1774         (WebCore::RangeInputType::formControlType):
1775         * html/RangeInputType.h: Added.
1776         (WebCore::RangeInputType::RangeInputType):
1777         * html/ResetInputType.cpp: Added.
1778         (WebCore::ResetInputType::create):
1779         (WebCore::ResetInputType::formControlType):
1780         * html/ResetInputType.h: Added.
1781         (WebCore::ResetInputType::ResetInputType):
1782         * html/SearchInputType.cpp: Added.
1783         (WebCore::SearchInputType::create):
1784         (WebCore::SearchInputType::formControlType):
1785         * html/SearchInputType.h: Added.
1786         (WebCore::SearchInputType::SearchInputType):
1787         * html/SubmitInputType.cpp: Added.
1788         (WebCore::SubmitInputType::create):
1789         (WebCore::SubmitInputType::formControlType):
1790         * html/SubmitInputType.h: Added.
1791         (WebCore::SubmitInputType::SubmitInputType):
1792         * html/TelephoneInputType.cpp: Added.
1793         (WebCore::TelephoneInputType::create):
1794         (WebCore::TelephoneInputType::formControlType):
1795         * html/TelephoneInputType.h: Added.
1796         (WebCore::TelephoneInputType::TelephoneInputType):
1797         * html/TextFieldInputType.cpp: Added.
1798         (WebCore::TextFieldInputType::isTextField):
1799         * html/TextFieldInputType.h: Added.
1800         (WebCore::TextFieldInputType::TextFieldInputType):
1801         * html/TextInputType.cpp: Added.
1802         (WebCore::TextInputType::create):
1803         (WebCore::TextInputType::formControlType):
1804         * html/TextInputType.h: Added.
1805         (WebCore::TextInputType::TextInputType):
1806         * html/TimeInputType.cpp: Added.
1807         (WebCore::TimeInputType::create):
1808         (WebCore::TimeInputType::formControlType):
1809         * html/TimeInputType.h: Added.
1810         (WebCore::TimeInputType::TimeInputType):
1811         * html/URLInputType.cpp: Added.
1812         (WebCore::URLInputType::create):
1813         (WebCore::URLInputType::formControlType):
1814         * html/URLInputType.h: Added.
1815         (WebCore::URLInputType::URLInputType):
1816         * html/WeekInputType.cpp: Added.
1817         (WebCore::WeekInputType::create):
1818         (WebCore::WeekInputType::formControlType):
1819         * html/WeekInputType.h: Added.
1820         (WebCore::WeekInputType::WeekInputType):
1821
1822 2010-09-28  David Hyatt  <hyatt@apple.com>
1823
1824         Reviewed by Maciej Stachowiak.
1825
1826         https://bugs.webkit.org/show_bug.cgi?id=46782, rename the top and bottom margin quirk getters/setters.
1827
1828         Also do a bit of cleanup for block flow roots.  Make sure they don't try to propagate overhanging floats out
1829         to ancestors.
1830
1831         * rendering/RenderBlock.cpp:
1832         (WebCore::RenderBlock::layoutBlock):
1833         (WebCore::RenderBlock::collapseMargins):
1834         (WebCore::RenderBlock::setCollapsedBottomMargin):
1835         (WebCore::RenderBlock::addOverhangingFloats):
1836         * rendering/RenderObject.cpp:
1837         (WebCore::RenderObject::RenderObject):
1838         * rendering/RenderObject.h:
1839         (WebCore::RenderObject::isMarginBeforeQuirk):
1840         (WebCore::RenderObject::isMarginAfterQuirk):
1841         (WebCore::RenderObject::setMarginBeforeQuirk):
1842         (WebCore::RenderObject::setMarginAfterQuirk):
1843
1844 2010-09-28  David Hyatt  <hyatt@apple.com>
1845
1846         Reviewed by Sam Weinig.
1847
1848         https://bugs.webkit.org/show_bug.cgi?id=46780
1849         
1850         Rename the pos/neg/collapsed margin methods.  Rename all the members of the RenderBlockRareData struct.
1851         No logical changes.  Just renames.
1852
1853         * editing/TextIterator.cpp:
1854         (WebCore::shouldEmitExtraNewlineForNode):
1855         * rendering/RenderBlock.cpp:
1856         (WebCore::RenderBlock::MarginInfo::MarginInfo):
1857         (WebCore::RenderBlock::layoutBlock):
1858         (WebCore::RenderBlock::collapseMargins):
1859         (WebCore::RenderBlock::clearFloatsIfNeeded):
1860         (WebCore::RenderBlock::estimateVerticalPosition):
1861         (WebCore::RenderBlock::setCollapsedBottomMargin):
1862         (WebCore::RenderBlock::layoutBlockChild):
1863         (WebCore::RenderBlock::paintChildren):
1864         (WebCore::RenderBlock::lowestPosition):
1865         (WebCore::RenderBlock::setMaxMarginBeforeValues):
1866         (WebCore::RenderBlock::setMaxMarginAfterValues):
1867         (WebCore::RenderBlock::absoluteRects):
1868         (WebCore::RenderBlock::absoluteQuads):
1869         (WebCore::RenderBlock::rectWithOutlineForRepaint):
1870         (WebCore::RenderBlock::addFocusRingRects):
1871         * rendering/RenderBlock.h:
1872         (WebCore::RenderBlock::maxPosMarginBefore):
1873         (WebCore::RenderBlock::maxNegMarginBefore):
1874         (WebCore::RenderBlock::maxPosMarginAfter):
1875         (WebCore::RenderBlock::maxNegMarginAfter):
1876         (WebCore::RenderBlock::initMaxMarginValues):
1877         (WebCore::RenderBlock::maxMarginBefore):
1878         (WebCore::RenderBlock::maxMarginAfter):
1879         (WebCore::RenderBlock::RenderBlockRareData::RenderBlockRareData):
1880         (WebCore::RenderBlock::RenderBlockRareData::beforePosDefault):
1881         (WebCore::RenderBlock::RenderBlockRareData::beforeNegDefault):
1882         (WebCore::RenderBlock::RenderBlockRareData::afterPosDefault):
1883         (WebCore::RenderBlock::RenderBlockRareData::afterNegDefault):
1884         * rendering/RenderBox.cpp:
1885         (WebCore::RenderBox::computeLogicalHeight):
1886         * rendering/RenderBox.h:
1887         (WebCore::RenderBox::collapsedMarginBefore):
1888         (WebCore::RenderBox::collapsedMarginAfter):
1889         (WebCore::RenderBox::maxMarginBefore):
1890         (WebCore::RenderBox::maxMarginAfter):
1891         * rendering/RenderFlexibleBox.cpp:
1892         (WebCore::RenderFlexibleBox::layoutBlock):
1893
1894 2010-09-28  Kevin Ollivier  <kevino@theolliviers.com>
1895
1896         [wx] wxMSW build fix. Don't use multiple inheritance in PopupMenuWx to avoid debug build
1897         compiler error about ambiguity over which new override (wx's or FastAllocBase's) to use.
1898
1899         * platform/wx/PopupMenuWx.cpp:
1900         (WebCore::PopupMenuEventHandler::PopupMenuEventHandler):
1901         (WebCore::PopupMenuEventHandler::OnMenuItemSelected):
1902         (WebCore::PopupMenuWx::PopupMenuWx):
1903         (WebCore::PopupMenuWx::show):
1904         * platform/wx/PopupMenuWx.h:
1905
1906 2010-09-28  Xiaomei Ji  <xji@chromium.org>
1907
1908         Reviewed by NOBODY (revert unsquashed git commits)
1909
1910         Revert change sets 68583 to 68590, which are un-squashed git-commits: Performance improvement for FontLinux regarding issue 46374.
1911         https://bugs.webkit.org/show_bug.cgi?id=46374
1912
1913 2010-09-28  Marc-Antoine Ruel  <maruel@chromium.org>
1914
1915         Reviewed by Tony Chang.
1916
1917         Split webcore_html off webcore_remaining.
1918
1919         webcore_remaining is still too large for certain 32 bits toolsets.
1920         https://bugs.webkit.org/show_bug.cgi?id=46445
1921
1922         * WebCore.gyp/WebCore.gyp:
1923
1924 2010-09-28  Jia Pu  <jpu@apple.com>
1925
1926         Reviewed by Dan Bernstein.
1927
1928         Delete and forward delete shouldn't start autocorrection panel timer.
1929         https://bugs.webkit.org/show_bug.cgi?id=46679
1930         <rdar://problem/8463917>
1931
1932         * editing/TypingCommand.cpp:
1933         (WebCore::TypingCommand::markMisspellingsAfterTyping): Only start correction panel timer
1934           when the editing command is InsertText.
1935         (WebCore::TypingCommand::typingAddedToOpenCommand): Add an argument to pass in command type.
1936
1937         * editing/TypingCommand.h: Add an argument to typingAddedToOpenCommand().
1938
1939 2010-09-28  Mihai Parparita  <mihaip@chromium.org>
1940
1941         Reviewed by Dimitri Glazkov.
1942
1943         No back/forward list entry added when submitting a form via an onclick handler inside a frame
1944         https://bugs.webkit.org/show_bug.cgi?id=44140
1945         
1946         Lock the back/forward list for JavaScript form submissions inside frames
1947         only if they're not in response to user gestures.
1948
1949         Tests: fast/history/form-submit-in-frame-via-onclick.html
1950                fast/history/form-submit-in-frame.html
1951
1952         * loader/RedirectScheduler.cpp:
1953         (WebCore::RedirectScheduler::scheduleFormSubmission):
1954
1955 2010-09-28  David Hyatt  <hyatt@apple.com>
1956
1957         Reviewed by Sam Weinig.
1958
1959         Fix typo in previous checkin.
1960
1961         * rendering/RenderBlock.cpp:
1962         (WebCore::RenderBlock::MarginInfo::MarginInfo):
1963
1964 2010-09-28  Nat Duca  <nduca@chromium.org>
1965
1966         Reviewed by James Robinson.
1967
1968         [chromium] invalidateRootLayerRect needs to schedule compositor
1969         https://bugs.webkit.org/show_bug.cgi?id=46219
1970
1971         Update comments on LayerChromium commit/display functions to clarify
1972         their limitations. Remove unused dirtying logic from 
1973         LayerRendererChromium.
1974
1975         * platform/graphics/chromium/LayerChromium.cpp:
1976         (WebCore::LayerChromium::setNeedsCommit):
1977         (WebCore::LayerChromium::setNeedsDisplay):
1978         * platform/graphics/chromium/LayerRendererChromium.cpp:
1979         (WebCore::LayerRendererChromium::LayerRendererChromium):
1980         (WebCore::LayerRendererChromium::present):
1981         * platform/graphics/chromium/LayerRendererChromium.h:
1982
1983 2010-09-28  Jenn Braithwaite  <jennb@chromium.org>
1984
1985         Reviewed by Dmitry Titov.
1986
1987         Added oldPage param to FrameLoaderClient::didTransferChildFrameToNewDocument.
1988         https://bugs.webkit.org/show_bug.cgi?id=46663
1989
1990         No new tests. API addition only. Will be used in separate patch.
1991
1992         * loader/EmptyClients.h:
1993         (WebCore::EmptyFrameLoaderClient::didTransferChildFrameToNewDocument):
1994         * loader/FrameLoaderClient.h:
1995         * page/Frame.cpp:
1996         (WebCore::Frame::transferChildFrameToNewDocument):
1997         Pass former page to didTransferChildFrameToNewDocument.
1998
1999 2010-09-28  W. James MacLean  <wjmaclean@chromium.org>
2000
2001         Reviewed by James Robinson.
2002
2003         Scaled Resized images are blurred when sent to Skia
2004         https://bugs.webkit.org/show_bug.cgi?id=42370
2005
2006         This patch modifies ImageSkia.cpp to fix the calculation of resampled
2007         bitmap sizes so as to include the transform matrix of the canvas.
2008
2009         Test: svg/custom/image-rescale.svg
2010
2011         * platform/graphics/skia/ImageSkia.cpp:
2012         (WebCore::computeResamplingMode):
2013         (WebCore::drawResampledBitmap):
2014
2015 2010-09-28  James Robinson  <jamesr@chromium.org>
2016
2017         [chromium] Decrease warning level on chromium linux temporarily. This is causing failures on some bots
2018
2019         * WebCore.gyp/WebCore.gyp:
2020
2021 2010-09-27  James Robinson  <jamesr@chromium.org>
2022
2023         Reviewed by Tony Chang.
2024
2025         [chromium] Increase warning level for chromium linux build
2026         https://bugs.webkit.org/show_bug.cgi?id=46687
2027
2028         This sets the chromium_code gyp variable to 1 for the chromium
2029         linux WebCore build and fixes the warnings that exposes.  This
2030         matches the chromium mac build's compiler settings more closely
2031         and should cut down on the number of patches that break mac but
2032         compile cleaning on linux.
2033
2034         * WebCore.gyp/WebCore.gyp:
2035         * platform/chromium/ScrollbarThemeChromiumLinux.cpp:
2036         (WebCore::ScrollbarThemeChromiumLinux::paintButton):
2037         * platform/graphics/chromium/FontLinux.cpp:
2038         (WebCore::TextRunWalker::nextScriptRun):
2039         (WebCore::TextRunWalker::getTextRun):
2040         (WebCore::TextRunWalker::getNormalizedTextRun):
2041         (WebCore::TextRunWalker::setGlyphXPositions):
2042         (WebCore::glyphIndexForXPositionInScriptRun):
2043         (WebCore::Font::offsetForPositionForComplexText):
2044         (WebCore::Font::selectionRectForComplexText):
2045         * platform/graphics/chromium/HarfbuzzSkia.cpp:
2046         (WebCore::getOutlinePoint):
2047         * platform/graphics/chromium/LayerRendererChromium.cpp:
2048         (WebCore::LayerRendererChromium::updateRootLayerTextureRect):
2049         * platform/graphics/gpu/Texture.cpp:
2050         (WebCore::copySubRect):
2051         * platform/graphics/skia/PlatformContextSkia.cpp:
2052         (WebCore::PlatformContextSkia::readbackHardwareToSoftware):
2053         * platform/image-decoders/gif/GIFImageDecoder.cpp:
2054         (WebCore::GIFImageDecoder::setSize):
2055         * platform/image-decoders/gif/GIFImageDecoder.h:
2056
2057 2010-09-28  Stephen White  <senorblanco@chromium.org>
2058
2059         Reviewed by Csaba Osztrogonác.
2060
2061         Fix for r68521 to build on VS2008/Release.
2062
2063         * html/DocTypeStrings.gperf:
2064         Don't emit "#include <string.h>" here, since we're inside a namespace.
2065         * make-hash-tools.pl:
2066         Emit #include <string.h> manually where required.
2067         * platform/ColorData.gperf:
2068         Don't emit "#include <string.h>" here, since we're inside a namespace.
2069
2070 2010-09-28  David Hyatt  <hyatt@apple.com>
2071
2072         Reviewed by Sam Weinig.
2073
2074         Right now we have two properties named margin-top-collapse and margin-after-collapse.  They are proprietary and only used by Safari RSS.
2075
2076         I am adding margin-before-collapse and margin-after-collapse and just aliasing the old properties to the new ones.
2077         This way we have some names that are directionally independent.
2078
2079         Note that these properties aren't like other directional properties.  They are about what to do with the before side and after side of
2080         your block's margins when collapsing with adjacent blocks.  The meaning of before/after depend on the block-flow directionality
2081         of the containing block.
2082
2083         Computed style tests all changed and the remove-shorthand.html test covers manipulation of the shorthand.
2084
2085         * css/CSSComputedStyleDeclaration.cpp:
2086         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
2087         * css/CSSParser.cpp:
2088         (WebCore::CSSParser::parseValue):
2089         * css/CSSPropertyLonghand.cpp:
2090         (WebCore::initShorthandMap):
2091         * css/CSSPropertyNames.in:
2092         * css/CSSStyleSelector.cpp:
2093         (WebCore::CSSStyleSelector::applyProperty):
2094         * rendering/RenderBlock.cpp:
2095         (WebCore::RenderBlock::MarginInfo::MarginInfo):
2096         (WebCore::RenderBlock::isSelfCollapsingBlock):
2097         (WebCore::RenderBlock::collapseMargins):
2098         (WebCore::RenderBlock::layoutBlockChild):
2099         * rendering/style/RenderStyle.cpp:
2100         (WebCore::RenderStyle::diff):
2101         * rendering/style/RenderStyle.h:
2102         (WebCore::InheritedFlags::marginBeforeCollapse):
2103         (WebCore::InheritedFlags::marginAfterCollapse):
2104         (WebCore::InheritedFlags::setMarginBeforeCollapse):
2105         (WebCore::InheritedFlags::setMarginAfterCollapse):
2106         (WebCore::InheritedFlags::initialMarginBeforeCollapse):
2107         (WebCore::InheritedFlags::initialMarginAfterCollapse):
2108         * rendering/style/StyleRareNonInheritedData.cpp:
2109         (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
2110         (WebCore::StyleRareNonInheritedData::operator==):
2111         * rendering/style/StyleRareNonInheritedData.h:
2112
2113 2010-09-28  Martin Robinson  <mrobinson@igalia.com>
2114
2115         Reviewed by Gustavo Noronha Silva.
2116
2117         [Cairo] FreeType fonts should obey FontConfig hinting/anti-aliasing settings
2118         https://bugs.webkit.org/show_bug.cgi?id=46740
2119
2120         When creating a font from a FontConfig pattern, use the FontConfig pattern's
2121         hinting and anti-aliasing settings. This follows the Chromium Linux approach
2122         of having FontConfig settings take precedence over GTK+ settings, as GTK+
2123         settings cannot be configured per-font and per-font-size.
2124
2125         Test: platform/gtk/fonts/fontconfig-aliasing-settings.html
2126
2127         * platform/graphics/cairo/FontPlatformDataFreeType.cpp:
2128         (WebCore::convertFontConfigSubpixelOrder): Added this helper which converts
2129         the FontConfig subpixel order into the cairo equivalent.
2130         (WebCore::convertFontConfigHintStyle): Added this helper which converts the
2131         FontConfig hint style into the cairo equivalent.
2132         (WebCore::setCairoFontOptionsFromFontConfigPattern): Added this helper which
2133         reads the font rendering settings from a pattern and translates them into the
2134         appropriate cairo_font_options_t settings.
2135         (WebCore::FontPlatformData::FontPlatformData): When creating a font from a
2136         FontConfig pattern use setCairoFontOptionsFromFontConfigPattern to get the
2137         appropriate rendering options for the font.
2138
2139 2010-09-28  Sam Weinig  <sam@webkit.org>
2140
2141         Reviewed by Darin Adler and Dave Hyatt.
2142
2143         Vertical scroll bar on apple.com is too short with WebKit2
2144         <rdar://problem/8379230>
2145         https://bugs.webkit.org/show_bug.cgi?id=46739
2146
2147         Adds a function to recalculate the scrollbars to take advantage of
2148         a changed window re-sizer rect.
2149
2150         * WebCore.exp.in:
2151         * platform/ScrollView.cpp:
2152         (WebCore::ScrollView::windowResizerRectChanged):
2153         * platform/ScrollView.h:
2154
2155 2010-09-28  David Hyatt  <hyatt@apple.com>
2156
2157         Reviewed by Sam Weinig.
2158
2159         https://bugs.webkit.org/show_bug.cgi?id=46750
2160         
2161         Rename the MarginInfo members and functions to be block-flow independent.
2162
2163         * rendering/RenderBlock.cpp:
2164         (WebCore::RenderBlock::MarginInfo::MarginInfo):
2165         (WebCore::RenderBlock::adjustPositionedBlock):
2166         (WebCore::RenderBlock::adjustFloatingBlock):
2167         (WebCore::RenderBlock::collapseMargins):
2168         (WebCore::RenderBlock::clearFloatsIfNeeded):
2169         (WebCore::RenderBlock::estimateVerticalPosition):
2170         (WebCore::RenderBlock::setCollapsedBottomMargin):
2171         (WebCore::RenderBlock::handleBottomOfBlock):
2172         (WebCore::RenderBlock::layoutBlockChild):
2173         (WebCore::RenderBlock::applyAfterBreak):
2174         * rendering/RenderBlock.h:
2175         (WebCore::RenderBlock::MarginInfo::setAtBeforeSideOfBlock):
2176         (WebCore::RenderBlock::MarginInfo::setAtAfterSideOfBlock):
2177         (WebCore::RenderBlock::MarginInfo::setMarginBeforeQuirk):
2178         (WebCore::RenderBlock::MarginInfo::setMarginAfterQuirk):
2179         (WebCore::RenderBlock::MarginInfo::setDeterminedMarginBeforeQuirk):
2180         (WebCore::RenderBlock::MarginInfo::atBeforeSideOfBlock):
2181         (WebCore::RenderBlock::MarginInfo::canCollapseWithMarginBefore):
2182         (WebCore::RenderBlock::MarginInfo::canCollapseWithMarginAfter):
2183         (WebCore::RenderBlock::MarginInfo::canCollapseMarginBeforeWithChildren):
2184         (WebCore::RenderBlock::MarginInfo::canCollapseMarginAfterWithChildren):
2185         (WebCore::RenderBlock::MarginInfo::determinedMarginBeforeQuirk):
2186         (WebCore::RenderBlock::MarginInfo::marginBeforeQuirk):
2187         (WebCore::RenderBlock::MarginInfo::marginAfterQuirk):
2188
2189 2010-09-28  Dan Bernstein  <mitz@apple.com>
2190
2191         Reviewed by Darin Adler.
2192
2193         Improved the handling of soft hyphens in Copy and Find operations, addressing the following
2194         bugs:
2195
2196         <rdar://problem/7938878> Soft hyphenation and the clipboard
2197         https://bugs.webkit.org/show_bug.cgi?id=11154
2198
2199         window.getSelection().toString() breaks soft hyphen &shy;
2200         https://bugs.webkit.org/show_bug.cgi?id=26774
2201
2202         <rdar://problem/5640505> soft hyphen breaks search function
2203         https://bugs.webkit.org/show_bug.cgi?id=16675
2204
2205         Test: fast/text/find-soft-hyphen.html
2206
2207         Changed line layout code to not skip over soft hyphens but rather include them in the text
2208         boxes. Changed font code to render the soft hyphen character as a zero width space, so that
2209         the former change will not affect rendering of soft hyphens in the middle of the line. Also
2210         changed line layout code to mark text boxes where hyphenation occurred due to a soft hyphen
2211         as hyphenated, so that the hyphen string specified in CSS will be appended to them.
2212
2213         Not omitting the soft hyphens from the text boxes makes the text iterator emit them, which
2214         solves the Copy and plain-text conversion issues. Previously, the iterator would emit a space
2215         to account for non-rendered characters between adjacent boxes, which was wrong in this case.
2216
2217         To make Find work, soft hyphens are folded into 0, which is ignorable in the collation used
2218         for Find.
2219
2220         * editing/TextIterator.cpp:
2221         (WebCore::foldQuoteMarkOrSoftHyphen): Renamed foldQuoteMark() to this and added folding of
2222         soft hyphen to 0.
2223         (WebCore::foldQuoteMarksAndSoftHyphens): Renamed foldQuoteMarks() to thid and added folding
2224         of soft hyphen to 0.
2225         (WebCore::SearchBuffer::SearchBuffer): Updated for renames.
2226         (WebCore::SearchBuffer::append): Ditto.
2227         * platform/graphics/Font.h:
2228         (WebCore::Font::treatAsSpace): Replaced number literal with name.
2229         (WebCore::Font::treatAsZeroWidthSpace): Added softHyphen.
2230         * platform/graphics/GlyphPageTreeNode.cpp:
2231         (WebCore::GlyphPageTreeNode::initializePage): Get the zero width space glyph for soft hyphen.
2232         * platform/graphics/mac/ComplexTextController.cpp:
2233         (WebCore::ComplexTextController::collectComplexTextRuns): Removed special handling that made
2234         a trailing soft hyphen render as hyphen-minus. All soft hyphens are now rendered as zero width
2235         spaces, and where a line break actually occurs at a soft hyphen, rendering code appends the
2236         CSS-specified hyphenate character to the text run that is passed to us here.
2237         * rendering/RenderBlockLineLayout.cpp:
2238         (WebCore::chopMidpointsAt): Removed this function, which was only used for skipping over soft
2239         hyphens.
2240         (WebCore::checkMidpoints): Removed code related to skipping over soft hyphens.
2241         (WebCore::RenderBlock::findNextLineBreak): Removed code to skip over soft hyphens. Ignore
2242         a line break opportunity at a soft hyphen if the style specifies 'hyphens: none'. Set
2243         'hyphenated' to true if a line break occurs at a soft hyphen.
2244         * rendering/style/RenderStyle.cpp:
2245         (WebCore::RenderStyle::hyphenString): Changed the assertion to allow querying for the hyphen
2246         string for 'hyphens: manual'.
2247
2248 2010-09-28  Martin Robinson  <mrobinson@igalia.com>
2249
2250         More GTK+ build fixes after r68521.
2251
2252         * GNUmakefile.am: Added proper dependency tracking for some
2253         new autogenerated files.
2254
2255 2010-09-28  Andreas Kling  <andreas.kling@nokia.com>
2256
2257         Reviewed by Kenneth Rohde Christiansen.
2258
2259         [Qt] Text drawing taints GraphicsContext's QPainter::pen()
2260         https://bugs.webkit.org/show_bug.cgi?id=46744
2261
2262         Test: fast/canvas/canvas-style-intact-after-text.html
2263
2264         * platform/graphics/qt/FontQt.cpp:
2265         (WebCore::drawTextCommon): Make sure the QPainter's pen is
2266         restored after filling and/or stroking text.
2267
2268 2010-09-28  Jia Pu  <jpu@apple.com>
2269
2270         Reviewed by Dan Bernstein.
2271
2272         Autocorrection panel is shown at incorrect location when WebView is scrolled.
2273         https://bugs.webkit.org/show_bug.cgi?id=46531
2274         <rdar://problem/8455376>
2275
2276         * dom/Range.h: Make getBorderAndTextQuads() public so that it can be used by Editor.
2277         * editing/Editor.cpp:
2278         (WebCore::Editor::markAllMisspellingsAndBadGrammarInRanges): Replaced call to textQuads()
2279           with getBorderAndTextQuads().
2280
2281 2010-09-28  Andrei Popescu  <andreip@google.com>
2282
2283         Reviewed by Jeremy Orlow.
2284
2285         IDBRequest should not have a method called abort.
2286         https://bugs.webkit.org/show_bug.cgi?id=46720
2287
2288         IDBRequest::abort() was dropped from the spec following discussion in
2289         http://www.w3.org/Bugs/Public/show_bug.cgi?id=10165
2290
2291         * storage/IDBRequest.cpp:
2292         (WebCore::IDBRequest::IDBRequest):
2293         (WebCore::IDBRequest::~IDBRequest):
2294         (WebCore::IDBRequest::resetReadyState):
2295         (WebCore::IDBRequest::timerFired):
2296         (WebCore::IDBRequest::scheduleEvent):
2297         * storage/IDBRequest.h:
2298         * storage/IDBRequest.idl:
2299
2300 2010-09-28  Chris Fleizach  <cfleizach@apple.com>
2301
2302         Reviewed by Beth Dakin.
2303
2304         CrashTracer: 1,382 crashes in Safari at com.apple.WebCore: WebCore::VisiblePosition::canonicalPosition + 78
2305         https://bugs.webkit.org/show_bug.cgi?id=45927
2306
2307         AXTextMarkers store pointers to Nodes without any retain or reference. If a Node is deallocated and then
2308         a client tries to use a text marker that references that node, it leads to this crash.
2309
2310         The AXObjectCache instance now keeps a HashSet of Node's being used. When a node becomes deallocated, it removes itself
2311         from the HashSet. When creating a VisiblePosition from an AXTextMarker, the cache can then check if the node is valid
2312         before proceeding.
2313
2314         Test: platform/mac/accessibility/crash-invalid-text-marker-node.html
2315
2316         * accessibility/AXObjectCache.cpp:
2317         (WebCore::AXObjectCache::visiblePositionForTextMarkerData):
2318         (WebCore::AXObjectCache::textMarkerDataForVisiblePosition):
2319             Modify to check whether a node is valid before proceeeding.
2320         * accessibility/AXObjectCache.h:
2321         (WebCore::AXObjectCache::setNodeInUse):
2322         (WebCore::AXObjectCache::removeNodeForUse):
2323         (WebCore::AXObjectCache::isNodeInUse):
2324             Methods for managing whether a node is in use by text markers.
2325         * accessibility/mac/AccessibilityObjectWrapper.mm:
2326         (textMarkerForVisiblePosition):
2327         (-[AccessibilityObjectWrapper textMarkerForVisiblePosition:]):
2328         (visiblePositionForTextMarker):
2329         (-[AccessibilityObjectWrapper visiblePositionForTextMarker:]):
2330         (visiblePositionForStartOfTextMarkerRange):
2331         (visiblePositionForEndOfTextMarkerRange):
2332         (-[AccessibilityObjectWrapper doAXAttributedStringForTextMarkerRange:]):
2333         (textMarkerRangeFromVisiblePositions):
2334         (-[AccessibilityObjectWrapper textMarkerRangeFromVisiblePositions:endPosition:]):
2335         (-[AccessibilityObjectWrapper visiblePositionRangeForTextMarkerRange:]):
2336         (-[AccessibilityObjectWrapper textMarkerRangeForSelection]):
2337         (-[AccessibilityObjectWrapper accessibilityAttributeValue:]):
2338         (-[AccessibilityObjectWrapper doAXAttributedStringForRange:]):
2339         (-[AccessibilityObjectWrapper accessibilityAttributeValue:forParameter:]):
2340              Change these calls so that the axObjectCache() can be passed in to create the visible position.
2341         * dom/Document.cpp:
2342         (WebCore::Document::axObjectCacheExists):
2343         * dom/Document.h:
2344         * dom/Node.cpp:
2345         (WebCore::Node::~Node):
2346              If accessibility is enabled, inform the axObjectCache() that this node is disappearing.
2347
2348 2010-09-28  Chris Rogers  <crogers@google.com>
2349
2350         Reviewed by Kenneth Russell.
2351
2352         Add AudioDestinationNode files
2353         https://bugs.webkit.org/show_bug.cgi?id=45009
2354
2355         No new tests since audio API is not yet implemented.
2356
2357         * webaudio/AudioDestinationNode.cpp: Added.
2358         (WebCore::AudioDestinationNode::AudioDestinationNode):
2359         (WebCore::AudioDestinationNode::~AudioDestinationNode):
2360         (WebCore::AudioDestinationNode::initialize):
2361         (WebCore::AudioDestinationNode::uninitialize):
2362         (WebCore::AudioDestinationNode::provideInput):
2363         * webaudio/AudioDestinationNode.h: Added.
2364         (WebCore::AudioDestinationNode::create):
2365         (WebCore::AudioDestinationNode::process):
2366         (WebCore::AudioDestinationNode::reset):
2367         (WebCore::AudioDestinationNode::currentTime):
2368         (WebCore::AudioDestinationNode::sampleRate):
2369         (WebCore::AudioDestinationNode::numberOfChannels):
2370         * webaudio/AudioDestinationNode.idl: Added.
2371
2372 2010-09-28  Chris Rogers  <crogers@google.com>
2373
2374         Reviewed by Kenneth Russell.
2375
2376         audio engine: audio output classes
2377         https://bugs.webkit.org/show_bug.cgi?id=34716
2378
2379         No new tests since audio API is not yet implemented.
2380
2381         * platform/audio/AudioDestination.h: Added.
2382         (WebCore::AudioDestination::~AudioDestination):
2383         * platform/audio/mac/AudioDestinationMac.cpp: Added.
2384         (WebCore::AudioDestination::create):
2385         (WebCore::AudioDestination::hardwareSampleRate):
2386         (WebCore::AudioDestinationMac::AudioDestinationMac):
2387         (WebCore::AudioDestinationMac::~AudioDestinationMac):
2388         (WebCore::AudioDestinationMac::configure):
2389         (WebCore::AudioDestinationMac::start):
2390         (WebCore::AudioDestinationMac::stop):
2391         (WebCore::AudioDestinationMac::render):
2392         (WebCore::AudioDestinationMac::inputProc):
2393         * platform/audio/mac/AudioDestinationMac.h: Added.
2394         (WebCore::AudioDestinationMac::isPlaying):
2395         (WebCore::AudioDestinationMac::sampleRate):
2396
2397 2010-09-28  Chris Rogers  <crogers@google.com>
2398
2399         Reviewed by Kenneth Russell.
2400
2401         Add AudioGain files
2402         https://bugs.webkit.org/show_bug.cgi?id=46285
2403
2404         No new tests since audio API is not yet implemented.
2405
2406         * webaudio/AudioGain.h: Added.
2407         (WebCore::AudioGain::create):
2408         (WebCore::AudioGain::AudioGain):
2409         * webaudio/AudioGain.idl: Added.
2410
2411 2010-09-28  Chris Rogers  <crogers@google.com>
2412
2413         Reviewed by Kenneth Russell.
2414
2415         Fix possible illegal float values in AudioParam
2416         https://bugs.webkit.org/show_bug.cgi?id=46681
2417
2418         No new tests since audio API is not yet implemented.
2419
2420         * webaudio/AudioParam.h:
2421         (WebCore::AudioParam::setValue):
2422
2423 2010-09-28  Tor Arne Vestbø  <tor.arne.vestbo@nokia.com>
2424
2425         Reviewed by Simon Hausmann.
2426
2427         [Qt] Rename member variable in MediaPlayerPrivateQt 
2428
2429         * platform/graphics/qt/MediaPlayerPrivateQt.cpp:
2430         * platform/graphics/qt/MediaPlayerPrivateQt.h:
2431
2432 2010-09-28  Andras Becsi  <abecsi@webkit.org>
2433
2434         [Gtk] Build fix. Remove leftover trailing backslash.
2435
2436         * GNUmakefile.am:
2437
2438 2010-09-28  Andras Becsi  <abecsi@webkit.org>
2439
2440         Unreviewed.
2441
2442         [Gtk] Build fix after r68521
2443
2444         No new tests needed.
2445
2446         * GNUmakefile.am:
2447
2448 2010-09-28  Tor Arne Vestbø  <tor.arne.vestbo@nokia.com>
2449
2450         Reviewed by Andreas Kling.
2451
2452         [Qt] Rename MediaPlayerPrivate to MediaPlayerPrivateQt/Phonon
2453
2454         https://bugs.webkit.org/show_bug.cgi?id=36663
2455
2456         * platform/graphics/MediaPlayer.cpp:
2457         * platform/graphics/qt/MediaPlayerPrivateQt.cpp:
2458         * platform/graphics/qt/MediaPlayerPrivateQt.h:
2459         * platform/graphics/qt/MediaPlayerPrivatePhonon.cpp:
2460         * platform/graphics/qt/MediaPlayerPrivatePhonon.h:
2461
2462 2010-09-28  Andras Becsi  <abecsi@webkit.org>
2463
2464         Reviewed by Csaba Osztrogonác.
2465
2466         Undefined reference errors when linking due to gperf and inlining.
2467         webkit.org/b/29244
2468
2469         EFL CMake changes by Leandro Pereira <leandro@profusion.mobi>
2470
2471         Refactor gperf code generation and usage to fix the debug build with gcc>4.4.
2472         Hitherto gperf generated C code, these files were included in multiple C++ files across WebCore
2473         to access the functionality provided. This resulted in debug build failure with newer gcc versions
2474         because of a behaviour change of gcc, which disables C style inlining in debug mode.
2475         The make-hash-tools.pl script lets gperf generate C++ code for all gperf files now, which are compiled
2476         in their own compilation unit.
2477         The functionality provided by the generated code is wrapped behind HashTools.h, so there is no need
2478         for multiple inclusions of generated C files to access these functions.
2479
2480         No new tests needed.
2481
2482         * CMakeLists.txt:
2483         * WebCore.gyp/WebCore.gyp:
2484         * WebCore.pri:
2485         * WebCore.vcproj/WebCore.vcproj:
2486         * WebCore.xcodeproj/project.pbxproj:
2487         * css/CSSParser.cpp:
2488         * css/makeprop.pl:
2489         * css/makevalues.pl:
2490         * html/DocTypeStrings.gperf:
2491         * html/HTMLDocument.cpp:
2492         * make-hash-tools.pl:
2493         * platform/ColorData.gperf:
2494         * platform/graphics/Color.cpp:
2495
2496 2010-09-28  Andreas Kling  <andreas.kling@nokia.com>
2497
2498         Reviewed by Kenneth Rohde Christiansen.
2499
2500         Canvas: Crash when setting a font with size in 'ex' units
2501         https://bugs.webkit.org/show_bug.cgi?id=46538
2502
2503         update() the style's font after setting the style's font description.
2504         Needed because CSSPrimitiveValue::computeLengthDouble() later assumes
2505         that the style's font is properly initialized (for xHeight().)
2506
2507         Fixes crash on IE test center's canvas-text-font-002 test.
2508
2509         * html/canvas/CanvasRenderingContext2D.cpp:
2510         (WebCore::CanvasRenderingContext2D::setFont):
2511
2512 2010-09-28  Benjamin Poulain  <benjamin.poulain@nokia.com>
2513
2514         Reviewed by Kenneth Rohde Christiansen.
2515
2516         [Qt] Remove support for Qt 4.5
2517         https://bugs.webkit.org/show_bug.cgi?id=46718
2518
2519         Remove the code for versions of Qt prior to 4.6.
2520
2521         * WebCore.pro:
2522         * features.pri:
2523         * platform/network/qt/QNetworkReplyHandler.cpp:
2524         (WebCore::QNetworkReplyHandler::QNetworkReplyHandler):
2525         (WebCore::QNetworkReplyHandler::start):
2526         * platform/network/qt/ResourceRequestQt.cpp:
2527         (WebCore::ResourceRequest::toNetworkRequest):
2528         * platform/qt/QWebPageClient.h:
2529
2530 2010-09-28  Kent Tamura  <tkent@chromium.org>
2531
2532         Unreviewed, run sort-Xcode-project-file
2533
2534         * WebCore.xcodeproj/project.pbxproj:
2535
2536 2010-09-28  Huahui Wu  <mediadependent@gmail.com>
2537
2538         Reviewed by Steve Block.
2539
2540         Add multi-touch for Android.
2541         https://bugs.webkit.org/show_bug.cgi?id=45221
2542
2543         The Android touch event used to take one point as the touch point,
2544         it's now changed to a vector of points to support multi-touch.
2545
2546         Tests: fast/events/touch/basic-multi-touch-events-limited.html
2547                fast/events/touch/touch-target-limited.html
2548
2549         * platform/PlatformTouchEvent.h:
2550         * platform/PlatformTouchPoint.h:
2551         * platform/android/PlatformTouchEventAndroid.cpp:
2552         (WebCore::PlatformTouchEvent::PlatformTouchEvent):
2553         * platform/android/PlatformTouchPointAndroid.cpp:
2554         (WebCore::PlatformTouchPoint::PlatformTouchPoint):
2555
2556 2010-09-27  Kent Tamura  <tkent@chromium.org>
2557
2558         Reviewed by Alexey Proskuryakov.
2559
2560         Fix assertion failure in a case that the dirty flag of a textarea element is changed
2561         https://bugs.webkit.org/show_bug.cgi?id=45681
2562
2563         We need to call setNeedsValidityCheck() after updating m_isDirty.
2564
2565         Test: fast/forms/textarea-checkValidity-crash.html
2566
2567         * html/HTMLTextAreaElement.cpp:
2568         (WebCore::HTMLTextAreaElement::setValue):
2569         (WebCore::HTMLTextAreaElement::setNonDirtyValue):
2570         (WebCore::HTMLTextAreaElement::setValueCommon):
2571         * html/HTMLTextAreaElement.h:
2572
2573 2010-09-27  Abhishek Arya  <inferno@chromium.org>
2574
2575         Reviewed by Dan Bernstein.
2576
2577         When the block RunIn is destroyed, its line box tree is not deleted. As a result, it
2578         gets later used during dirtying of inline text boxes step where this deleted parent is
2579         accessed. The fix is to delete the line box tree before destroying the runin block.
2580
2581         https://bugs.webkit.org/show_bug.cgi?id=46376
2582
2583         Test: fast/text/dirty-inline-textbox-crash.html
2584
2585         * rendering/RenderText.cpp:
2586         (WebCore::RenderText::dirtyLineBoxes):
2587
2588 2010-09-27  Eric Uhrhane  <ericu@chromium.org>
2589
2590         Reviewed by David Levin.
2591
2592         Fix event sequencing in FileWriter
2593         https://bugs.webkit.org/show_bug.cgi?id=46544
2594
2595         Only set readyState to DONE when we're about to send the last progress
2596         event associated with an operation.  Make sure all progress events come
2597         from backend calls, and aren't ever fired synchronously in response to
2598         user JS method calls.
2599
2600         No new tests, as none of this is fully implemented yet.
2601
2602         * fileapi/FileWriter.cpp:
2603         (WebCore::FileWriter::write):
2604         (WebCore::FileWriter::truncate):
2605         (WebCore::FileWriter::abort):
2606         (WebCore::FileWriter::didWrite):
2607         (WebCore::FileWriter::didTruncate):
2608         (WebCore::FileWriter::didFail):
2609
2610 2010-09-27  Chris Rogers  <crogers@google.com>
2611
2612         Reviewed by James Robinson.
2613
2614         Add HRTFDatabase files
2615         https://bugs.webkit.org/show_bug.cgi?id=46233
2616
2617         No new tests since audio API is not yet implemented.
2618
2619         * platform/audio/HRTFDatabase.cpp: Added.
2620         (WebCore::HRTFDatabase::create):
2621         (WebCore::HRTFDatabase::HRTFDatabase):
2622         (WebCore::HRTFDatabase::getKernelsFromAzimuthElevation):
2623         (WebCore::HRTFDatabase::indexFromElevationAngle):
2624         * platform/audio/HRTFDatabase.h: Added.
2625         (WebCore::HRTFDatabase::numberOfAzimuths):
2626         (WebCore::HRTFDatabase::sampleRate):
2627
2628 2010-09-27  Alpha Lam  <hclam@chromium.org>
2629
2630         Build fix. Not reviewed.
2631
2632         Move constant definitions to VideoLayerChromium.cpp.
2633         A proper fix should come later.
2634
2635         * platform/graphics/chromium/VideoLayerChromium.cpp:
2636
2637 2010-09-23  Antonio Gomes  <agomes@rim.com>
2638
2639         Reviewed by Kenneth Rohde Christiansen.
2640
2641         Make Document::nodesFromRect more flexible
2642         https://bugs.webkit.org/show_bug.cgi?id=46336
2643
2644         The patch changes the API for the Document::nodesFromRect() method as follows:
2645         
2646         from
2647         - RefPtf<NodeList> nodesFromRect(int x, int y, unsigned horizontalPadding, unsigned verticalPadding, bool ignoreClipping)
2648         to
2649         - RefPtf<NodeList> nodesFromRect(int x, int y, unsigned topPadding, unsigned rightPadding, unsigned bottomPadding,
2650                                          unsigned leftPadding, bool ignoreClipping)
2651
2652         Previously the method was receiving as parameter horizontal and vertical padding values.
2653         In practice, the horizontal padding was being used to expand a given center point in both
2654         right and left directions, while vertical padding was expanding it to the top and bottom directions.
2655
2656         Although this design makes it possible to improve the touch experience on mobile devices
2657         (Document::nodesFromRect exposes the rect based hit testing system), empirical experiments
2658         showed that, specially in capacitive touch screens, users tend to tap below elements. So
2659         for even more accurate results (which means here the possibility of pleasant tapping experience),
2660         it makes sense to use a region that is offset more above the touch point, favoring elements
2661         above the touch point.
2662
2663         The patch basically implements that, increasing the API flexible and power by making it possible
2664         to specify different padding values for each direction in a given orientation.
2665
2666         Changes were made accordingly to the HitTestResult, RenderLayer, RenderImage and RenderLineBoxList
2667         classes.
2668
2669         WebCore:
2670
2671         * WebCore.exp.in:
2672         * dom/Document.h: API adjustment.
2673         * dom/Document.idl: Ditto.
2674         * dom/Document.cpp: API adjustment and method body implementation accordingly.
2675         (WebCore::Document::nodesFromRect):
2676         * page/EventHandler.cpp:
2677         (WebCore::EventHandler::hitTestResultAtPoint): For simplicity, I did not change the signature
2678             but the way the padding value passed in as parameter is being used to construct a HitTestResult.
2679         * rendering/HitTestResult.cpp: Changed the rect-based bits from using IntSize (padding) to separated paddings for each direction.
2680         (WebCore::HitTestResult::HitTestResult): Ditto.
2681         (WebCore::HitTestResult::operator=): Ditto.
2682         (WebCore::HitTestResult::rectFromPoint): Ditto.
2683         * rendering/HitTestResult.h:
2684         (WebCore::HitTestResult::topPadding): getter for the top padding.
2685         (WebCore::HitTestResult::rightPadding): getter for the right padding.
2686         (WebCore::HitTestResult::bottomPadding): getter for the bottom padding.
2687         (WebCore::HitTestResult::leftPadding): getter for the left padding.
2688         (WebCore::HitTestResult::rectFromPoint): Added a static method that given a center point and padding values for each direction,
2689             returns the rect that is going to be used in WebCore's hit testing processing.
2690         * rendering/RenderImage.cpp: Changed the rect-based bits from using IntSize (padding) to separated paddings for each direction.
2691         (WebCore::RenderImage::nodeAtPoint): Ditto.
2692         * rendering/RenderLayer.cpp: Ditto.
2693         (WebCore::RenderLayer::hitTestLayer): Ditto.
2694         (WebCore::RenderLayer::hitTestList): Ditto.
2695         * rendering/RenderLineBoxList.cpp: Ditto.
2696         (WebCore::RenderLineBoxList::hitTest): Ditto.
2697
2698 2010-09-27  Chris Rogers  <crogers@google.com>
2699
2700         Reviewed by James Robinson.
2701
2702         Add HRTFDatabaseLoader files
2703         https://bugs.webkit.org/show_bug.cgi?id=46234
2704
2705         No new tests since audio API is not yet implemented.
2706
2707         * platform/audio/HRTFDatabaseLoader.cpp: Added.
2708         (WebCore::HRTFDatabaseLoader::createAndLoadAsynchronouslyIfNecessary):
2709         (WebCore::HRTFDatabaseLoader::HRTFDatabaseLoader):
2710         (WebCore::HRTFDatabaseLoader::~HRTFDatabaseLoader):
2711         (WebCore::databaseLoaderEntry):
2712         (WebCore::HRTFDatabaseLoader::load):
2713         (WebCore::HRTFDatabaseLoader::loadAsynchronously):
2714         (WebCore::HRTFDatabaseLoader::isLoaded):
2715         (WebCore::HRTFDatabaseLoader::defaultHRTFDatabase):
2716         * platform/audio/HRTFDatabaseLoader.h: Added.
2717         (WebCore::HRTFDatabaseLoader::database):
2718         (WebCore::HRTFDatabaseLoader::databaseSampleRate):
2719
2720 2010-09-27  Ryosuke Niwa  <rniwa@webkit.org>
2721
2722         Reviewed by Darin Adler.
2723
2724         queryCommandState with justifyCenter, justifyLeft, and justifyRight always return false
2725         https://bugs.webkit.org/show_bug.cgi?id=45910
2726
2727         Implemented queryCommandState for justifyCenter, justifyLeft, and justifyRight commands.
2728         Added getTextAlignment to convert -webkit-center, -webkit-left, and -webkit-right to
2729         center, left, and right respectively because they can be treated equally for editing purposes.
2730
2731         Test: editing/execCommand/query-text-alignment.html
2732
2733         * editing/ApplyStyleCommand.cpp:
2734         (WebCore::getTextAlignment): Added.
2735         (WebCore::getPropertiesNotIn): Uses getTextAlignment.
2736         * editing/EditorCommand.cpp:
2737         (WebCore::stateJustifyCenter): Added.
2738         (WebCore::stateJustifyLeft): Added.
2739         (WebCore::stateJustifyRight): Added.
2740         (WebCore::createCommandMap): Refers to stateJustifyCenter, stateJustifyLeft, and stateJustifyRight.
2741
2742 2010-09-27  Alpha Lam  <hclam@chromium.org>
2743
2744         Unreviewed. Build fix.
2745
2746         Reorder member declarations and fix other warnings.
2747
2748         * platform/graphics/chromium/VideoLayerChromium.cpp:
2749         (WebCore::VideoLayerChromium::VideoLayerChromium):
2750         (WebCore::VideoLayerChromium::~VideoLayerChromium):
2751         (WebCore::VideoLayerChromium::updateContents):
2752         (WebCore::VideoLayerChromium::determineTextureFormat):
2753         (WebCore::VideoLayerChromium::allocateTexturesIfNeeded):
2754         * platform/graphics/chromium/VideoLayerChromium.h:
2755
2756 2010-09-27  Kenneth Russell  <kbr@google.com>
2757
2758         Unreviewed, Qt build fix. Stub out CanvasRenderingContext::checkOrigin(const HTMLVideoElement*)
2759         on platforms that don't support video after r68460.
2760
2761         * html/canvas/CanvasRenderingContext.cpp:
2762         (WebCore::CanvasRenderingContext::checkOrigin):
2763
2764 2010-09-27  Chris Fleizach  <cfleizach@apple.com>
2765
2766         Reviewed by Beth Dakin.
2767
2768         CrashTracer: 1,803 crashes in Safari at com.apple.WebCore: -[AccessibilityObjectWrapper accessibilityIsIgnored] + 56
2769         https://bugs.webkit.org/show_bug.cgi?id=46662
2770
2771         Before calling updateBackingStore(), the wrapper object needs to be retained, lest it be invalidated during
2772         the updateBackingStore call. This consolidates all calls to updateBackingStore().
2773
2774         Test: platform/mac/accessibility/removing-textarea-after-edit-crash.html
2775
2776         * accessibility/mac/AXObjectCacheMac.mm:
2777         (WebCore::AXObjectCache::postPlatformNotification):
2778             Use an ASSERT here to catch the crash because DRT won't cause AppKit to post notifications.
2779         * accessibility/mac/AccessibilityObjectWrapper.mm:
2780         (-[AccessibilityObjectWrapper prepareAccessibilityMethod]):
2781         (-[AccessibilityObjectWrapper accessibilityActionNames]):
2782         (-[AccessibilityObjectWrapper accessibilityAttributeNames]):
2783         (-[AccessibilityObjectWrapper accessibilityAttributeValue:]):
2784         (-[AccessibilityObjectWrapper accessibilityFocusedUIElement]):
2785         (-[AccessibilityObjectWrapper accessibilityHitTest:]):
2786         (-[AccessibilityObjectWrapper accessibilityIsAttributeSettable:]):
2787         (-[AccessibilityObjectWrapper accessibilityIsIgnored]):
2788         (-[AccessibilityObjectWrapper accessibilityParameterizedAttributeNames]):
2789         (-[AccessibilityObjectWrapper accessibilityPerformPressAction]):
2790         (-[AccessibilityObjectWrapper accessibilityPerformIncrementAction]):
2791         (-[AccessibilityObjectWrapper accessibilityPerformDecrementAction]):
2792         (-[AccessibilityObjectWrapper accessibilityPerformAction:]):
2793         (-[AccessibilityObjectWrapper accessibilitySetValue:forAttribute:]):
2794         (-[AccessibilityObjectWrapper accessibilityAttributeValue:forParameter:]):
2795         (-[AccessibilityObjectWrapper accessibilityIndexOfChild:]):
2796         (-[AccessibilityObjectWrapper accessibilityArrayAttributeCount:]):
2797         (-[AccessibilityObjectWrapper accessibilityArrayAttributeValues:index:maxCount:]):
2798
2799 2010-09-27  Adrienne Walker  <enne@google.com>
2800
2801         Reviewed by Adam Barth.
2802
2803         WebGL's readPixels doesn't respect origin-clean flag
2804
2805         Push CanvasRenderingContext2D checkOrigin logic into base class so it can be shared between different kinds of canvas contexts.
2806         https://bugs.webkit.org/show_bug.cgi?id=45718
2807
2808         Test: LayoutTests/http/tests/canvas/webgl/origin-clean-conformance.html
2809
2810         * html/canvas/CanvasRenderingContext.cpp:
2811         (WebCore::CanvasRenderingContext::checkOrigin):
2812         * html/canvas/CanvasRenderingContext.h:
2813         (WebCore::CanvasRenderingContext::~CanvasRenderingContext):
2814         (WebCore::CanvasRenderingContext::canvas):
2815         (WebCore::CanvasRenderingContext::is2d):
2816         (WebCore::CanvasRenderingContext::is3d):
2817         (WebCore::CanvasRenderingContext::isAccelerated):
2818         (WebCore::CanvasRenderingContext::paintRenderingResultsToCanvas):
2819         (WebCore::CanvasRenderingContext::paintsIntoCanvasBuffer):
2820         (WebCore::CanvasRenderingContext::platformLayer):
2821         * html/canvas/CanvasRenderingContext2D.cpp:
2822         (WebCore::CanvasRenderingContext2D::setStrokeStyle):
2823         (WebCore::CanvasRenderingContext2D::setFillStyle):
2824         (WebCore::CanvasRenderingContext2D::drawImage):
2825         (WebCore::CanvasRenderingContext2D::drawImageFromRect):
2826         * html/canvas/CanvasRenderingContext2D.h:
2827         * html/canvas/WebGLRenderingContext.cpp:
2828         (WebCore::WebGLRenderingContext::readPixels):
2829         (WebCore::WebGLRenderingContext::texImage2D):
2830         (WebCore::WebGLRenderingContext::videoFrameToImage):
2831         (WebCore::WebGLRenderingContext::texSubImage2D):
2832         * html/canvas/WebGLRenderingContext.h:
2833         * html/canvas/WebGLRenderingContext.idl:
2834
2835 2010-09-27  Darin Adler  <darin@apple.com>
2836
2837         Reviewed by Dan Bernstein.
2838
2839         REGRESSION (r68054): Buttons no longer render at correct sizes
2840         https://bugs.webkit.org/show_bug.cgi?id=46513
2841
2842         Test: fast/forms/input-button-sizes.html
2843
2844         The setUpButtonCell function was running only once, but needed to run every time
2845         through the button function.
2846
2847         * platform/mac/ThemeMac.mm:
2848         (WebCore::leakButtonCell): Added. Separate one-time initialization code.
2849         (WebCore::setUpButtonCell): Removed the first-time initialization part of this function.
2850         (WebCore::button): Merged the three functions back into one.
2851
2852 2010-09-27  Victoria Kirst  <vrk@google.com>
2853
2854         Reviewed by James Robinson.
2855
2856         Modifies VideoLayerChromium to do YUV to RGB color conversion in the
2857         GPU. Also adds support for RGBA video frame formats, though this code
2858         path is currently never run because the video frames are in YV12
2859         format.
2860         https://bugs.webkit.org/show_bug.cgi?id=45069
2861
2862         * platform/graphics/chromium/LayerRendererChromium.cpp:
2863         (WebCore::LayerRendererChromium::initializeSharedObjects):
2864         (WebCore::LayerRendererChromium::cleanupSharedObjects):
2865         * platform/graphics/chromium/LayerRendererChromium.h:
2866         (WebCore::LayerRendererChromium::videoLayerSharedValues):
2867         * platform/graphics/chromium/VideoLayerChromium.cpp:
2868         (WebCore::VideoLayerChromium::SharedValues::SharedValues):
2869         (WebCore::VideoLayerChromium::SharedValues::~SharedValues):
2870         (WebCore::VideoLayerChromium::VideoLayerChromium):
2871         (WebCore::VideoLayerChromium::~VideoLayerChromium):
2872         (WebCore::VideoLayerChromium::updateContents):
2873         (WebCore::VideoLayerChromium::updateYUVContents):
2874         (WebCore::VideoLayerChromium::allocateYUVTextures):
2875         (WebCore::VideoLayerChromium::updateYUVTextures):
2876         (WebCore::VideoLayerChromium::updateRGBAContents):
2877         (WebCore::VideoLayerChromium::allocateTexture):
2878         (WebCore::VideoLayerChromium::updateTexture):
2879         (WebCore::VideoLayerChromium::updateContentsCompleted):
2880         (WebCore::VideoLayerChromium::draw):
2881         (WebCore::VideoLayerChromium::drawYUV):
2882         (WebCore::VideoLayerChromium::drawRGBA):
2883         * platform/graphics/chromium/VideoLayerChromium.h:
2884         (WebCore::VideoLayerChromium::drawsContent):
2885         (WebCore::VideoLayerChromium::SharedValues::yuvShaderProgram):
2886         (WebCore::VideoLayerChromium::SharedValues::rgbaShaderProgram):
2887         (WebCore::VideoLayerChromium::SharedValues::yuvShaderMatrixLocation):
2888         (WebCore::VideoLayerChromium::SharedValues::rgbaShaderMatrixLocation):
2889         (WebCore::VideoLayerChromium::SharedValues::yuvWidthScaleFactorLocation):
2890         (WebCore::VideoLayerChromium::SharedValues::rgbaWidthScaleFactorLocation):
2891         (WebCore::VideoLayerChromium::SharedValues::yTextureLocation):
2892         (WebCore::VideoLayerChromium::SharedValues::uTextureLocation):
2893         (WebCore::VideoLayerChromium::SharedValues::vTextureLocation):
2894         (WebCore::VideoLayerChromium::SharedValues::yuvAlphaLocation):
2895         (WebCore::VideoLayerChromium::SharedValues::rgbaTextureLocation):
2896         (WebCore::VideoLayerChromium::SharedValues::ccMatrixLocation):
2897         (WebCore::VideoLayerChromium::SharedValues::initialized):
2898
2899 2010-09-27  Peter Kasting  <pkasting@google.com>
2900
2901         Reviewed by James Robinson.
2902
2903         ImageDecoderSkia.cpp needs to check for allocator failure when copying
2904         bitmaps.
2905         https://bugs.webkit.org/show_bug.cgi?id=46437
2906
2907         * manual-tests/large-size-image-crash.html: Added.
2908         * manual-tests/resources/large-size-image-crash.gif: Added.
2909         * platform/image-decoders/ImageDecoder.cpp:
2910         (WebCore::RGBA32Buffer::copyBitmapData):
2911         * platform/image-decoders/ImageDecoder.h:
2912         * platform/image-decoders/gif/GIFImageDecoder.cpp:
2913         (WebCore::GIFImageDecoder::initFrameBuffer):
2914         * platform/image-decoders/qt/RGBA32BufferQt.cpp:
2915         (WebCore::RGBA32Buffer::copyBitmapData):
2916         * platform/image-decoders/skia/ImageDecoderSkia.cpp:
2917         (WebCore::RGBA32Buffer::copyBitmapData):
2918
2919 2010-09-27  James Robinson  <jamesr@chromium.org>
2920
2921         Reviewed by Simon Fraser.
2922
2923         Revert r63307, it broke repainting dynamically changed SVG content
2924         https://bugs.webkit.org/show_bug.cgi?id=46499
2925
2926         This patch reverts r63307 and adds a regression test for what broke.
2927
2928         Test: fast/repaint/repaint-svg-after-style-change.html
2929
2930         * rendering/RenderForeignObject.cpp:
2931         (WebCore::RenderForeignObject::layout):
2932         * rendering/RenderPath.cpp:
2933         (WebCore::RenderPath::layout):
2934         * rendering/RenderSVGContainer.cpp:
2935         (WebCore::RenderSVGContainer::layout):
2936         * rendering/RenderSVGImage.cpp:
2937         (WebCore::RenderSVGImage::layout):
2938         * rendering/RenderSVGRoot.cpp:
2939         (WebCore::RenderSVGRoot::layout):
2940         * rendering/RenderSVGText.cpp:
2941         (WebCore::RenderSVGText::layout):
2942
2943 2010-09-27  Vangelis Kokkevis  <vangelis@chromium.org>
2944
2945         Reviewed by James Robinson.
2946
2947         [chromium] Making LayerChromium's destructor virtual so that the appropriate
2948         derived class destructors get called when the layer tree is taken down.
2949         ContentLayerChromium and its derived types (ImageLayerChromium for now) will
2950         free up the texture allocated for their contents upon destruction. To avoid
2951         having the LayerRendererChromium destructor getting called before the layers
2952         are destroyed and thus leaving their textures orphaned, the layers now hold
2953         a ref counted pointer to the renderer that uses them.
2954         https://bugs.webkit.org/show_bug.cgi?id=46139
2955
2956         * platform/graphics/chromium/ContentLayerChromium.cpp:
2957         (WebCore::ContentLayerChromium::~ContentLayerChromium):
2958         (WebCore::ContentLayerChromium::setLayerRenderer):
2959         (WebCore::ContentLayerChromium::cleanupResources):
2960         * platform/graphics/chromium/ContentLayerChromium.h:
2961         * platform/graphics/chromium/LayerChromium.cpp:
2962         (WebCore::LayerChromium::setLayerRenderer):
2963         * platform/graphics/chromium/LayerChromium.h:
2964         (WebCore::LayerChromium::layerRenderer):
2965         * platform/graphics/chromium/LayerRendererChromium.cpp:
2966         (WebCore::LayerRendererChromium::create):
2967         (WebCore::LayerRendererChromium::deleteLayerTexture):
2968         (WebCore::LayerRendererChromium::cleanupSharedObjects):
2969         * platform/graphics/chromium/LayerRendererChromium.h:
2970
2971 2010-09-27  Erik Arvidsson  <arv@chromium.org>
2972
2973         Reviewed by Darin Adler.
2974
2975         Implement HTML 5's HTMLElement.classList property
2976         https://bugs.webkit.org/show_bug.cgi?id=20709
2977
2978         This adds a DOMTokenList class that is used for the classList property. DOMTokenList uses a SpaceSplitString for fast
2979         contains check. In standards mode the existing classNames is used but in quirks mode we use an internal SpaceSplitString
2980         because classList is always case sensitive.
2981
2982         Tests: fast/dom/HTMLElement/class-list-gc.html
2983                fast/dom/HTMLElement/class-list-quirks.html
2984                fast/dom/HTMLElement/class-list.html
2985                perf/class-list-remove.html
2986
2987         * Android.derived.jscbindings.mk:
2988         * Android.derived.v8bindings.mk:
2989         * Android.jscbindings.mk:
2990         * CMakeLists.txt:
2991         * DerivedSources.cpp:
2992         * DerivedSources.make:
2993         * GNUmakefile.am:
2994         * WebCore.gypi:
2995         * WebCore.pri:
2996         * WebCore.pro:
2997         * WebCore.vcproj/WebCore.vcproj:
2998         * WebCore.xcodeproj/project.pbxproj:
2999         * bindings/gobject/GNUmakefile.am:
3000         * bindings/js/JSElementCustom.cpp:
3001         (WebCore::JSElement::markChildren): Make sure that we keep the wrapper while the element is alive.
3002         * bindings/scripts/CodeGeneratorJS.pm: DOMTokenList has a string indexed getter.
3003         * bindings/scripts/CodeGeneratorV8.pm:
3004         * bindings/v8/custom/V8DOMTokenListCustom.cpp: Added.
3005         (WebCore::toV8):
3006         * dom/Element.cpp:
3007         (WebCore::Element::classList):
3008         (WebCore::Element::optionalClassList):
3009         * dom/Element.h:
3010         * dom/ElementRareData.h: This now has an OwnPtr to a ClassList if the Element::classList is ever called.
3011         * dom/SpaceSplitString.h:
3012         (WebCore::SpaceSplitString::isNull):
3013         * dom/StyledElement.cpp:
3014         (WebCore::StyledElement::classAttributeChanged): Update the classList if it exists.
3015         * dom/StyledElement.h:
3016         * html/DOMTokenList.cpp: Added.
3017         (WebCore::validateToken):
3018         (WebCore::DOMTokenList::DOMTokenList):
3019         (WebCore::DOMTokenList::ref):
3020         (WebCore::DOMTokenList::deref):
3021         (WebCore::DOMTokenList::length):
3022         (WebCore::DOMTokenList::item):
3023         (WebCore::DOMTokenList::contains):
3024         (WebCore::DOMTokenList::containsInternal): The internal methods do no validation of the token.
3025         (WebCore::DOMTokenList::add):
3026         (WebCore::DOMTokenList::addInternal):
3027         (WebCore::DOMTokenList::remove):
3028         (WebCore::DOMTokenList::removeInternal):
3029         (WebCore::DOMTokenList::toggle):
3030         (WebCore::DOMTokenList::toString):
3031         (WebCore::DOMTokenList::reset):
3032         (WebCore::DOMTokenList::classNames):
3033         * html/DOMTokenList.h: Added.
3034         (WebCore::DOMTokenList::create):
3035         (WebCore::DOMTokenList::element):
3036         * html/DOMTokenList.idl: Added.
3037         * html/HTMLElement.idl:
3038         * page/DOMWindow.cpp:
3039         * page/DOMWindow.idl:
3040
3041 2010-09-27  Kenneth Russell  <kbr@google.com>
3042
3043         Reviewed by James Robinson.
3044
3045         Add local triangulation of cubic curve control points
3046         https://bugs.webkit.org/show_bug.cgi?id=45252
3047
3048         (Re-landing; I neglected to actually add the new files in
3049         http://trac.webkit.org/changeset/68045 .)
3050
3051         Adding a localized triangulation algorithm which takes as input
3052         the four control points of a cubic curve segment and provides both
3053         triangles as well as the ability to walk the interior edges. The
3054         latter will be used later to fill the interior of shapes bounded
3055         by these cubic curves, quadratic curves and line segments.
3056
3057         * platform/graphics/gpu/LoopBlinnLocalTriangulator.cpp: Added.
3058         (WebCore::LoopBlinnLocalTriangulator::Triangle::contains):
3059         (WebCore::LoopBlinnLocalTriangulator::Triangle::nextVertex):
3060         (WebCore::LoopBlinnLocalTriangulator::Triangle::indexForVertex):
3061         (WebCore::LoopBlinnLocalTriangulator::Triangle::makeCounterClockwise):
3062         (WebCore::LoopBlinnLocalTriangulator::LoopBlinnLocalTriangulator):
3063         (WebCore::LoopBlinnLocalTriangulator::reset):
3064         (WebCore::LoopBlinnLocalTriangulator::triangulate):
3065         (WebCore::LoopBlinnLocalTriangulator::triangulateHelper):
3066         (WebCore::LoopBlinnLocalTriangulator::addTriangle):
3067         (WebCore::LoopBlinnLocalTriangulator::addInteriorVertex):
3068         (WebCore::LoopBlinnLocalTriangulator::isSharedEdge):
3069         * platform/graphics/gpu/LoopBlinnLocalTriangulator.h: Added.
3070         (WebCore::LoopBlinnLocalTriangulator::Vertex::Vertex):
3071         (WebCore::LoopBlinnLocalTriangulator::Vertex::xyCoordinates):
3072         (WebCore::LoopBlinnLocalTriangulator::Vertex::klmCoordinates):
3073         (WebCore::LoopBlinnLocalTriangulator::Vertex::set):
3074         (WebCore::LoopBlinnLocalTriangulator::Vertex::end):
3075         (WebCore::LoopBlinnLocalTriangulator::Vertex::setEnd):
3076         (WebCore::LoopBlinnLocalTriangulator::Vertex::marked):
3077         (WebCore::LoopBlinnLocalTriangulator::Vertex::setMarked):
3078         (WebCore::LoopBlinnLocalTriangulator::Vertex::interior):
3079         (WebCore::LoopBlinnLocalTriangulator::Vertex::setInterior):
3080         (WebCore::LoopBlinnLocalTriangulator::Vertex::resetFlags):
3081         (WebCore::LoopBlinnLocalTriangulator::Triangle::Triangle):
3082         (WebCore::LoopBlinnLocalTriangulator::Triangle::getVertex):
3083         (WebCore::LoopBlinnLocalTriangulator::Triangle::setVertices):
3084         (WebCore::LoopBlinnLocalTriangulator::getVertex):
3085         (WebCore::LoopBlinnLocalTriangulator::numberOfTriangles):
3086         (WebCore::LoopBlinnLocalTriangulator::getTriangle):
3087         (WebCore::LoopBlinnLocalTriangulator::numberOfInteriorVertices):
3088         (WebCore::LoopBlinnLocalTriangulator::getInteriorVertex):
3089
3090 2010-09-27  Chris Rogers  <crogers@google.com>
3091
3092         Reviewed by Kenneth Russell.
3093
3094         Add AudioNode files
3095         https://bugs.webkit.org/show_bug.cgi?id=45571
3096
3097         No new tests since audio API is not yet implemented.
3098
3099         * webaudio/AudioNode.cpp: Added.
3100         (WebCore::AudioNode::AudioNode):
3101         (WebCore::AudioNode::~AudioNode):
3102         (WebCore::AudioNode::setType):
3103         (WebCore::AudioNode::lazyInitialize):
3104         (WebCore::AudioNode::addInput):
3105         (WebCore::AudioNode::addOutput):
3106         (WebCore::AudioNode::input):
3107         (WebCore::AudioNode::output):
3108         (WebCore::AudioNode::connect):
3109         (WebCore::AudioNode::disconnect):
3110         (WebCore::AudioNode::processIfNecessary):
3111         (WebCore::AudioNode::pullInputs):
3112         (WebCore::AudioNode::ref):
3113         (WebCore::AudioNode::deref):
3114         (WebCore::AudioNode::finishDeref):
3115         (WebCore::AudioNode::printNodeCounts):
3116         * webaudio/AudioNode.h: Added.
3117         (WebCore::AudioNode::context):
3118         (WebCore::AudioNode::type):
3119         (WebCore::AudioNode::isInitialized):
3120         (WebCore::AudioNode::numberOfInputs):
3121         (WebCore::AudioNode::numberOfOutputs):
3122         (WebCore::AudioNode::sampleRate):
3123         (WebCore::AudioNode::checkNumberOfChannelsForInput):
3124         * webaudio/AudioNode.idl: Added.
3125
3126 2010-09-27  David Hyatt  <hyatt@apple.com>
3127
3128         Reviewed by Sam Weinig.
3129
3130         https://bugs.webkit.org/show_bug.cgi?id=46665
3131
3132         Patch RenderView's layout and computeLogicalWidth/Height methods to be block-flow-aware.
3133
3134         Added fast/root-lr-basic.html
3135
3136         * rendering/RenderView.cpp:
3137         (WebCore::RenderView::computeLogicalHeight):
3138         (WebCore::RenderView::computeLogicalWidth):
3139         (WebCore::RenderView::layout):
3140         * rendering/RenderView.h:
3141         (WebCore::RenderView::viewLogicalWidth):
3142         (WebCore::RenderView::viewLogicalHeight):
3143
3144 2010-09-24  Zhenyao Mo  <zmo@google.com>
3145
3146         Reviewed by Kenneth Russell.
3147
3148         Hook up ANGLE with chromium --in-process-webgl port
3149         https://bugs.webkit.org/show_bug.cgi?id=44309
3150
3151         * platform/graphics/GraphicsContext3D.h: Move Angle stuff inside MAC only section.
3152
3153 2010-09-27  David Hyatt  <hyatt@apple.com>
3154
3155         Reviewed by Sam Weinig.
3156
3157         https://bugs.webkit.org/show_bug.cgi?id=46659
3158
3159         Patch the width/height/x/y calls in layoutBlock() to be their logical equivalents instead.
3160
3161         * rendering/RenderBlock.cpp:
3162         (WebCore::RenderBlock::layoutBlock):
3163
3164 2010-09-27  David Hyatt  <hyatt@apple.com>
3165
3166         Reviewed by Sam Weinig.
3167
3168         https://bugs.webkit.org/show_bug.cgi?id=46649, fix failing layout tests.
3169
3170         The implementation of setting the before/after margins was wrong and poking the wrong margin values.
3171         
3172         Once I made them set the correct values, it revealed that one of the new block flow tests wasn't
3173         actually working.  In order to fix it, I had to make the block direction margin computation actually
3174         use the containing block's block-flow in order to return the right answer.  This involved cleaning
3175         up computeBlockDirectionMargins to be more like computeInlineDirectionMargins.
3176         
3177         fast/css/logical-property-resolution.html also caught the bug.  Its results are now correct.
3178
3179         * rendering/RenderBlock.cpp:
3180         (WebCore::RenderBlock::adjustPositionedBlock):
3181         (WebCore::RenderBlock::determineHorizontalPosition):
3182         (WebCore::RenderBlock::layoutBlockChild):
3183         (WebCore::RenderBlock::insertFloatingObject):
3184         * rendering/RenderBox.cpp:
3185         (WebCore::RenderBox::setMarginBeforeUsing):
3186         (WebCore::RenderBox::setMarginAfterUsing):
3187         (WebCore::RenderBox::computeLogicalWidth):
3188         (WebCore::RenderBox::computeInlineDirectionMargins):
3189         (WebCore::RenderBox::computeLogicalHeight):
3190         (WebCore::RenderBox::computeBlockDirectionMargins):
3191         * rendering/RenderBox.h:
3192         * rendering/RenderFlexibleBox.cpp:
3193         (WebCore::RenderFlexibleBox::layoutHorizontalBox):
3194         (WebCore::RenderFlexibleBox::layoutVerticalBox):
3195         * rendering/RenderObject.h:
3196         * rendering/RenderTable.cpp:
3197         (WebCore::RenderTable::computeLogicalWidth):
3198         * rendering/RenderTableRow.cpp:
3199         (WebCore::RenderTableRow::layout):
3200         * rendering/style/RenderStyle.cpp:
3201         (WebCore::RenderStyle::marginBeforeUsing):
3202         (WebCore::RenderStyle::marginAfterUsing):
3203         * rendering/style/RenderStyle.h:
3204
3205 2010-09-14  Zhenyao Mo  <zmo@google.com>
3206
3207         Reviewed by Kenneth Russell.
3208
3209         Textures and renderbuffers should be detached first before deletion if they are attached to framebuffers
3210         https://bugs.webkit.org/show_bug.cgi?id=43942
3211
3212         Test: fast/canvas/webgl/object-deletion-behaviour.html
3213
3214         * html/canvas/WebGLBuffer.cpp:
3215         (WebCore::WebGLBuffer::deleteObjectImpl): Delete the object only once.
3216         * html/canvas/WebGLFramebuffer.cpp: Use RefPtr for attachment WebGLObjects.
3217         (WebCore::WebGLFramebuffer::WebGLFramebuffer):
3218         (WebCore::WebGLFramebuffer::removeAttachment): Remove an attachment data ref.
3219         (WebCore::WebGLFramebuffer::onAttachedObjectChange):
3220         (WebCore::WebGLFramebuffer::getColorBufferFormat):
3221         (WebCore::WebGLFramebuffer::deleteObjectImpl):
3222         (WebCore::WebGLFramebuffer::initializeRenderbuffers):
3223         * html/canvas/WebGLFramebuffer.h: Declare removeAttachment().
3224         * html/canvas/WebGLObject.cpp:
3225         (WebCore::WebGLObject::setObject): Make it protected and can only be called when initializing.
3226         * html/canvas/WebGLObject.h:
3227         (WebCore::WebGLObject::onDetached): Fix a bug.
3228         (WebCore::WebGLObject::isDeleted): Expose the delete flag.
3229         * html/canvas/WebGLProgram.cpp:
3230         (WebCore::WebGLProgram::deleteObjectImpl): Detach shaders when deleting a program.
3231         * html/canvas/WebGLRenderbuffer.cpp:
3232         (WebCore::WebGLRenderbuffer::deleteObjectImpl): Delete the object only once.
3233         * html/canvas/WebGLRenderingContext.cpp:
3234         (WebCore::WebGLRenderingContext::deleteFramebuffer): Bind to internal fbo when deleting the currently-bound fbo.
3235         (WebCore::WebGLRenderingContext::deleteRenderbuffer): Remove renderbuffer from currently-bound fbo upon deletion.
3236         (WebCore::WebGLRenderingContext::deleteTexture): Remove texture from currently-bound fbo upon deletion.
3237         (WebCore::WebGLRenderingContext::useProgram): Fix a condition.
3238         * html/canvas/WebGLShader.cpp:
3239         (WebCore::WebGLShader::deleteObjectImpl): Delete the object only once.
3240         * html/canvas/WebGLTexture.cpp:
3241         (WebCore::WebGLTexture::deleteObjectImpl): Ditto.
3242
3243 2010-09-27  Ryosuke Niwa  <rniwa@webkit.org>
3244
3245         Reviewed by Antonio Gomes.
3246
3247         stateStyle (@EditorCommand.cpp) should ask EditingBehavior for platform specific behavior
3248         https://bugs.webkit.org/show_bug.cgi?id=41989
3249
3250         queryCommandState returns true even when in the mixed state
3251         https://bugs.webkit.org/show_bug.cgi?id=46382
3252
3253         Fixed stateStyle so that it calls selectionStartHasStyle when shouldToggleStyleBasedOnStartOfSelection
3254         is true (Mac platforms) and calls selectionHasStyle otherwise (non-Mac platforms).
3255
3256         Also fixed queryCommandState so that it only returns true when the state is TrueTriState
3257         as supposed to returning true whenever the state is not FalseTriState. New behavior matches that of
3258         other browsers such as Firefox and Internet Explorer.
3259
3260         * dom/Document.cpp:
3261         (WebCore::Document::queryCommandState):
3262         * editing/EditorCommand.cpp:
3263         (WebCore::executeToggleStyle):
3264         (WebCore::stateStyle):
3265
3266 2010-09-27  David Hyatt  <hyatt@apple.com>
3267
3268         Reviewed by Dan Bernstein.
3269
3270         https://bugs.webkit.org/show_bug.cgi?id=46647, add getters/setters for the logical position of a box.
3271
3272         Also made all of the logicalWidth/Height getters/setters inline for performance.
3273
3274         * rendering/RenderBox.cpp:
3275         * rendering/RenderBox.h:
3276         (WebCore::RenderBox::logicalLeft):
3277         (WebCore::RenderBox::logicalTop):
3278         (WebCore::RenderBox::logicalWidth):
3279         (WebCore::RenderBox::logicalHeight):
3280         (WebCore::RenderBox::setLogicalLeft):
3281         (WebCore::RenderBox::setLogicalTop):
3282         (WebCore::RenderBox::setLogicalWidth):
3283         (WebCore::RenderBox::setLogicalHeight):
3284         (WebCore::RenderBox::setLogicalLocation):
3285
3286 2010-09-27  David Hyatt  <hyatt@apple.com>
3287
3288         Reviewed by Sam Weinig.
3289
3290         https://bugs.webkit.org/show_bug.cgi?id=46639, make computeLogicalHeight block-flow-aware.
3291         
3292         This patch does the following:
3293             (1) Makes computeLogicalHeight block-flow-aware (patching all helper functions as needed to make this work).
3294             (2) Makes block flow roots (blocks whose parent has a different block-flow directionality) establish new block formatting contexts.
3295             (This causes them to not collapse their margins with their children and to avoid floats). 
3296             (3) Patch all occurrences of setHeight in block and line layout to setLogicalHeight so that height doesn't get incorrectly
3297             overwritten for lr/rl block-flow.  This is necessary to write tests that examine the width/height of the blocks.
3298         
3299         Added multiple new tests in fast/blockflow.
3300         fast/css/logical-property-resolution gives the correct results now.
3301
3302         * rendering/RenderBlock.cpp:
3303         (WebCore::RenderBlock::MarginInfo::MarginInfo):
3304         (WebCore::RenderBlock::layoutBlock):
3305         (WebCore::RenderBlock::expandsToEncloseOverhangingFloats):
3306         (WebCore::RenderBlock::adjustFloatingBlock):
3307         (WebCore::RenderBlock::collapseMargins):
3308         (WebCore::RenderBlock::clearFloatsIfNeeded):
3309         (WebCore::RenderBlock::determineHorizontalPosition):
3310         (WebCore::RenderBlock::handleBottomOfBlock):
3311         (WebCore::RenderBlock::layoutBlockChildren):
3312         (WebCore::RenderBlock::layoutBlockChild):
3313         (WebCore::RenderBlock::positionNewFloatOnLine):
3314         (WebCore::RenderBlock::newLine):
3315         (WebCore::RenderBlock::logicalLeftOffsetForLine):
3316         (WebCore::RenderBlock::logicalRightOffsetForContent):
3317         (WebCore::RenderBlock::logicalRightOffsetForLine):
3318         (WebCore::RenderBlock::getClearDelta):
3319         (WebCore::RenderBlock::layoutColumns):
3320         * rendering/RenderBlock.h:
3321         * rendering/RenderBlockLineLayout.cpp:
3322         (WebCore::RenderBlock::computeBlockDirectionPositionsForLine):
3323         (WebCore::RenderBlock::layoutInlineChildren):
3324         (WebCore::RenderBlock::determineStartPosition):
3325         (WebCore::RenderBlock::fitBelowFloats):
3326         * rendering/RenderBox.cpp:
3327         (WebCore::RenderBox::marginBefore):
3328         (WebCore::RenderBox::marginBeforeUsing):
3329         (WebCore::RenderBox::marginAfter):
3330         (WebCore::RenderBox::marginAfterUsing):
3331         (WebCore::RenderBox::setMarginBefore):
3332         (WebCore::RenderBox::setMarginAfter):
3333         (WebCore::RenderBox::setMarginBeforeUsing):
3334         (WebCore::RenderBox::setMarginAfterUsing):
3335         (WebCore::RenderBox::computeLogicalHeight):
3336         (WebCore::RenderBox::computeLogicalHeightUsing):
3337         (WebCore::RenderBox::computePercentageLogicalHeight):
3338         (WebCore::RenderBox::computeReplacedHeightUsing):
3339         (WebCore::RenderBox::availableLogicalHeight):
3340         (WebCore::RenderBox::availableLogicalHeightUsing):
3341         (WebCore::RenderBox::computeBlockDirectionMargins):
3342         (WebCore::RenderBox::avoidsFloats):
3343         * rendering/RenderBox.h:
3344         (WebCore::RenderBox::contentLogicalWidth):
3345         (WebCore::RenderBox::contentLogicalHeight):
3346         (WebCore::RenderBox::stretchesToViewHeight):
3347         (WebCore::RenderBox::availableLogicalWidth):
3348         (WebCore::RenderBox::availableWidth):
3349         (WebCore::RenderBox::availableHeight):
3350         (WebCore::RenderBox::isBlockFlowRoot):
3351         * rendering/RenderTable.cpp:
3352         (WebCore::RenderTable::computeLogicalWidth):
3353
3354 2010-09-27  Mario Sanchez Prada  <msanchez@igalia.com>
3355
3356         Reviewed by Chris Fleizach.
3357
3358         [Gtk] Adjust atk_text_get_text_at_offset to account for bullets/numbers in list items
3359         https://bugs.webkit.org/show_bug.cgi?id=45381
3360
3361         Ensure list markers are consistently used in the Atk wrapper.
3362
3363         This patch does two things (both needed to fix the bug): It
3364         improves the way list items markers are exposed through the Atk
3365         Wrapper (by exposing the exact text in the marker, including the
3366         marker suffix, if any) and makes sure the marker is consistently
3367         considered and treated in those methods of the AtkText interface
3368         that would need it (like atk_text_get_character_count or
3369         atk_text_get_run_attributes, for instance).
3370
3371         * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
3372         (textForObject):
3373            Append/prepend list marker when needed.
3374         (webkit_accessible_text_get_text):
3375            Use the new function markerTextWithSuffix() to expose a more
3376            accurate value.
3377         (accessibilityObjectLength):
3378            Consider list items marker to return the length of an object,
3379            if needed. Also, added some extra checks.
3380         (webkit_accessible_text_get_character_count):
3381            Just delegate on accessibilityObjectLength, to make it
3382            cleaner and more consistent.
3383
3384         * rendering/RenderListItem.cpp:
3385         (WebCore::RenderListItem::markerTextWithSuffix):
3386            New public function to return a single string with the
3387            marker associated to the item and its suffix, considering
3388            text direction (LTR or RTL).
3389         * rendering/RenderListItem.h:
3390         * rendering/RenderListMarker.cpp:
3391         (WebCore::RenderListMarker::suffix):
3392            New public function to return a String with the suffix
3393            associated to the marker.
3394         * rendering/RenderListMarker.h:
3395
3396 2010-09-27  Sheriff Bot  <webkit.review.bot@gmail.com>
3397
3398         Unreviewed, rolling out r68389.
3399         http://trac.webkit.org/changeset/68389
3400         https://bugs.webkit.org/show_bug.cgi?id=46637
3401
3402         test_shell is crashing on chromium Win (Requested by loislo on
3403         #webkit).
3404
3405         * inspector/InspectorTimelineAgent.cpp:
3406         (WebCore::InspectorTimelineAgent::InspectorTimelineAgent):
3407         (WebCore::InspectorTimelineAgent::pushGCEventRecords):
3408         (WebCore::InspectorTimelineAgent::didGC):
3409         (WebCore::InspectorTimelineAgent::~InspectorTimelineAgent):
3410         (WebCore::InspectorTimelineAgent::willCallFunction):
3411         (WebCore::InspectorTimelineAgent::didCallFunction):
3412         (WebCore::InspectorTimelineAgent::willDispatchEvent):
3413         (WebCore::InspectorTimelineAgent::didDispatchEvent):
3414         (WebCore::InspectorTimelineAgent::willLayout):
3415         (WebCore::InspectorTimelineAgent::didLayout):
3416         (WebCore::InspectorTimelineAgent::willRecalculateStyle):
3417         (WebCore::InspectorTimelineAgent::didRecalculateStyle):
3418         (WebCore::InspectorTimelineAgent::willPaint):
3419         (WebCore::InspectorTimelineAgent::didPaint):
3420         (WebCore::InspectorTimelineAgent::willWriteHTML):
3421         (WebCore::InspectorTimelineAgent::didWriteHTML):
3422         (WebCore::InspectorTimelineAgent::didInstallTimer):
3423         (WebCore::InspectorTimelineAgent::didRemoveTimer):
3424         (WebCore::InspectorTimelineAgent::willFireTimer):
3425         (WebCore::InspectorTimelineAgent::didFireTimer):
3426         (WebCore::InspectorTimelineAgent::willChangeXHRReadyState):
3427         (WebCore::InspectorTimelineAgent::didChangeXHRReadyState):
3428         (WebCore::InspectorTimelineAgent::willLoadXHR):
3429         (WebCore::InspectorTimelineAgent::didLoadXHR):
3430         (WebCore::InspectorTimelineAgent::willEvaluateScript):
3431         (WebCore::InspectorTimelineAgent::didEvaluateScript):
3432         (WebCore::InspectorTimelineAgent::didScheduleResourceRequest):
3433         (WebCore::InspectorTimelineAgent::willSendResourceRequest):
3434         (WebCore::InspectorTimelineAgent::willReceiveResourceData):
3435         (WebCore::InspectorTimelineAgent::didReceiveResourceData):
3436         (WebCore::InspectorTimelineAgent::willReceiveResourceResponse):
3437         (WebCore::InspectorTimelineAgent::didReceiveResourceResponse):
3438         (WebCore::InspectorTimelineAgent::didFinishLoadingResource):
3439         (WebCore::InspectorTimelineAgent::didMarkTimeline):
3440         (WebCore::InspectorTimelineAgent::didMarkDOMContentEvent):
3441         (WebCore::InspectorTimelineAgent::didMarkLoadEvent):
3442         (WebCore::InspectorTimelineAgent::reset):
3443         (WebCore::InspectorTimelineAgent::resetFrontendProxyObject):
3444         (WebCore::InspectorTimelineAgent::addRecordToTimeline):
3445         (WebCore::InspectorTimelineAgent::setHeapSizeStatistic):
3446         (WebCore::InspectorTimelineAgent::didCompleteCurrentRecord):
3447         (WebCore::InspectorTimelineAgent::pushCurrentRecord):
3448         * inspector/InspectorTimelineAgent.h:
3449         (WebCore::InspectorTimelineAgent::TimelineRecordEntry::TimelineRecordEntry):
3450         (WebCore::InspectorTimelineAgent::GCEvent::GCEvent):
3451
3452 2010-09-27  Kinuko Yasuda  <kinuko@google.com>
3453
3454         Reviewed by Adam Barth.
3455
3456         [Cleanup] Add create method to FileSystemCallbacks to get rid of naked new's
3457         https://bugs.webkit.org/show_bug.cgi?id=46561
3458
3459         Also cleanup the callbacks layering to pass AsyncFileSystemCallbacks
3460         object to LocalFileSystem::requestFileSystem (rather than
3461         FileSystemCallback and ErrorCallback) so that all the callbacks class
3462         we pass from WebCore to WebKit/chromium/src will be
3463         AsyncFileSystemCallbacks.
3464
3465         No new tests; this patch is only for cleanup and there should be no functionality changes.
3466
3467         * fileapi/DOMFileSystem.cpp:
3468         (WebCore::DOMFileSystem::getMetadata):
3469         (WebCore::DOMFileSystem::move):
3470         (WebCore::DOMFileSystem::copy):
3471         (WebCore::DOMFileSystem::remove):
3472         (WebCore::DOMFileSystem::getParent):
3473         (WebCore::DOMFileSystem::getFile):
3474         (WebCore::DOMFileSystem::getDirectory):
3475         (WebCore::DOMFileSystem::createWriter):
3476         (WebCore::DOMFileSystem::readDirectory):
3477         * fileapi/FileSystemCallbacks.cpp:
3478         (WebCore::EntryCallbacks::create): Added.
3479         (WebCore::EntriesCallbacks::create): Added.
3480         (WebCore::FileSystemCallbacks::create): Added.
3481         (WebCore::MetadataCallbacks::create): Added.
3482         (WebCore::FileWriterCallbacks::create): Added.
3483         (WebCore::VoidCallbacks::create): Added.
3484         * fileapi/FileSystemCallbacks.h:
3485         * fileapi/LocalFileSystem.cpp:
3486         (WebCore::openFileSystem):
3487         (WebCore::LocalFileSystem::requestFileSystem): Changed to take
3488         AsyncFileSystemCallbacks as (a) callback argument(s).
3489         * fileapi/LocalFileSystem.h:
3490         * page/DOMWindow.cpp:
3491         (WebCore::DOMWindow::requestFileSystem): Made a corresponding change
3492         to LocalFileSystem::requestFileSystem.
3493         * workers/WorkerContext.cpp:
3494         (WebCore::WorkerContext::requestFileSystem): Made a corresponding change
3495         to LocalFileSystem::requestFileSystem.
3496
3497 2010-09-27  Abhishek Arya  <inferno@chromium.org>
3498
3499         Reviewed by Dave Hyatt.
3500
3501         Fix memory safety issue during positioning list marker as a result of assuming 
3502         that list item's parent can always be casted to a RenderBox. The display of the parent
3503         can be manipluated using css as Inline which causes a bad cast.
3504
3505         https://bugs.webkit.org/show_bug.cgi?id=46384
3506
3507         Test: fast/lists/parent-box-not-box-crash.html
3508
3509         * rendering/RenderListItem.cpp:
3510         (WebCore::RenderListItem::positionListMarker):
3511         * rendering/RenderListMarker.cpp:
3512         (WebCore::RenderListMarker::layout):
3513
3514 2010-09-19  Martin Robinson  <mrobinson@igalia.com>
3515
3516         Reviewed by Gustavo Noronha Silva.
3517
3518         [GTK] Wrong font instantiated from an unknown font family
3519         https://bugs.webkit.org/show_bug.cgi?id=36548
3520
3521         When FontConfig returns a match for a particular family name, ensure that
3522         the family name matches the configured alias for the original pattern. This
3523         should prevent selecting FontConfig fallbacks in situations where the next
3524         font on the CSS fallback list should be used. This requires moving all FontConfig
3525         matching logic into FontCacheFreeType and out of FontPlatformDataFreeType.
3526         It should be there anyway.
3527
3528         Test: platform/gtk/fonts/font-family-fallback.html
3529
3530         * platform/graphics/cairo/FontCacheFreeType.cpp:
3531         (WebCore::FontCache::platformInit): Simply call FcInit here instead of
3532         deferring to FontPlatformData.
3533         (WebCore::FontCache::getLastResortFallbackFont): The last resort font should
3534         be a fallback font or else the new FontConfig logic may result in null font data
3535         if it cannot find an appropriate match.
3536         (WebCore::getFamilyNameStringFromFontDescriptionAndFamily): Added. Helper function
3537         which converts WebCore fallback names into ones that FontConfig understands.
3538         (WebCore::isFallbackFontAllowed): Added. Helper function that allows FontConfig
3539         fallbacks to be used when generic family names are specified.
3540         (WebCore::FontCache::createFontPlatformData): Move all FontConfig matching logic here
3541         and prevent against the situation where FontConfig returns a different family name
3542         than we asked for.
3543         * platform/graphics/cairo/FontCustomPlatformData.cpp: Updated FontPlatformData constructor.
3544         * platform/graphics/cairo/FontPlatformDataFreeType.cpp: Update the constructor to
3545         take the FcPattern returned and the original FontDescription. We no longer need the other
3546         arguments, because the selection is now done by FontCacheFreeType.
3547         (WebCore::FontPlatformData::FontPlatformData): Remove the FontConfig selection logic from
3548         this code.
3549         * platform/graphics/cairo/FontPlatformDataFreeType.h: Updated method definitions.
3550         * platform/graphics/cairo/GlyphPageTreeNodeCairo.cpp: Fixed includes.
3551         * platform/graphics/cairo/PlatformRefPtrCairo.cpp: Added a PlatformRefPtr specialization
3552         for cairo_font_face_t.
3553         (WTF::refPlatformPtr): Added.
3554         (WTF::derefPlatformPtr): Added.
3555         * platform/graphics/cairo/PlatformRefPtrCairo.h: Updated method definitons.
3556         * platform/graphics/cairo/SimpleFontDataCairo.cpp:
3557         (WebCore::SimpleFontData::smallCapsFontData): Fixed FontPlatformData constructor.
3558
3559 2010-09-27  Philippe Normand  <pnormand@igalia.com>
3560
3561         Reviewed by Martin Robinson.
3562
3563         [GTK] Doesn't build with gtk+ 2.14
3564         https://bugs.webkit.org/show_bug.cgi?id=46565
3565
3566         Fixed the build for GTK+ 2.14 by adding backward compatible
3567         a backward-compatible function for gtk_menu_item_get_label and a
3568         utility function to create a blank mouse cursor. Those functions
3569         are used in the fullscreen video controller and in the DRT
3570         EventSender.
3571
3572         * platform/gtk/GtkVersioning.c:
3573         (gdk_window_get_root_coords):
3574         (blankCursor):
3575         (gtk_menu_item_get_label):
3576         * platform/gtk/GtkVersioning.h:
3577
3578 2010-09-23  Stephen White  <senorblanco@chromium.org>
3579
3580         Reviewed by James Robinson.
3581
3582         [CHROMIUM] Fix for canvas clearRect() with clipping active, when
3583         --enable-accelerated-2d-canvas is on.
3584         https://bugs.webkit.org/show_bug.cgi?id=46412
3585
3586         Covered by layout test http://philip.html5.org/tests/canvas/suite/tests/2d.clearRect.clip.html.
3587
3588         * platform/graphics/skia/GraphicsContextSkia.cpp:
3589         (WebCore::GraphicsContext::clearRect):
3590         Check if a clip is active during clipRect(), and force to software
3591         if so.  Force a readback in this case, since clearRect() is not
3592         compatible with mixed-mode rendering.
3593         * platform/graphics/skia/PlatformContextSkia.cpp:
3594         (WebCore::PlatformContextSkia::canvasClipApplied):
3595         * platform/graphics/skia/PlatformContextSkia.h:
3596         Implement accessor to check if a clip is active.
3597
3598 2010-09-14  Zhenyao Mo  <zmo@google.com>
3599
3600         Reviewed by Kenneth Russell.
3601
3602         drawElements with count=0 and offset = 0 should not generate GL error or crash
3603         https://bugs.webkit.org/show_bug.cgi?id=45769
3604
3605         * html/canvas/WebGLRenderingContext.cpp: Deal with count=0 case.
3606         (WebCore::WebGLRenderingContext::validateIndexArrayConservative):
3607         (WebCore::WebGLRenderingContext::validateIndexArrayPrecise):
3608         (WebCore::WebGLRenderingContext::drawElements):
3609
3610 2010-09-16  Zhenyao Mo  <zmo@google.com>
3611
3612         Reviewed by Kenneth Russell.
3613
3614         Fold getString into getParameter and implement new queries
3615         https://bugs.webkit.org/show_bug.cgi?id=40321
3616
3617         Test: fast/canvas/webgl/gl-getstring.html
3618
3619         * html/canvas/WebGLRenderingContext.cpp: Merge getString enums into getParameter.
3620         (WebCore::WebGLRenderingContext::getParameter):
3621         * html/canvas/WebGLRenderingContext.h: Remove getString.
3622         * html/canvas/WebGLRenderingContext.idl: Remove getString.
3623
3624 2010-09-24  Zhenyao Mo  <zmo@google.com>
3625
3626         Reviewed by Kenneth Russell.
3627
3628         gl-teximage fails on chrome mac bot
3629         https://bugs.webkit.org/show_bug.cgi?id=45332
3630
3631         Add support for alpha first pixel formats.
3632
3633         * platform/graphics/GraphicsContext3D.cpp:
3634         (WebCore::doPacking):
3635         * platform/graphics/GraphicsContext3D.h:
3636         * platform/graphics/cg/GraphicsContext3DCG.cpp:
3637         (WebCore::GraphicsContext3D::getImageData):
3638
3639 2010-09-17  Yury Semikhatsky  <yurys@chromium.org>
3640
3641         Reviewed by Pavel Feldman.
3642
3643         Web Inspector: implement go-to-line feature
3644         https://bugs.webkit.org/show_bug.cgi?id=45166
3645
3646         * English.lproj/localizedStrings.js:
3647         * inspector/front-end/GoToLineDialog.js: Added.
3648         (WebInspector.GoToLineDialog):
3649         (WebInspector.GoToLineDialog.show):
3650         (WebInspector.GoToLineDialog.prototype._hide):
3651         (WebInspector.GoToLineDialog.prototype._onKeyDown):
3652         (WebInspector.GoToLineDialog.prototype._onBlur):
3653         * inspector/front-end/ScriptsPanel.js:
3654         (WebInspector.ScriptsPanel.prototype._registerShortcuts):
3655         (WebInspector.ScriptsPanel.prototype.jumpToPreviousSearchResult):
3656         (WebInspector.ScriptsPanel.prototype.showGoToLineDialog):
3657         * inspector/front-end/goToLineDialog.css: Added.
3658         (.go-to-line-dialog):
3659         * inspector/front-end/inspector.html:
3660
3661 2010-09-24  Pavel Podivilov  <podivilov@chromium.org>
3662
3663         Reviewed by Pavel Feldman.
3664
3665         Web Inspector: add XHR breakpoints sidebar pane to front-end
3666         https://bugs.webkit.org/show_bug.cgi?id=46483
3667
3668         * English.lproj/localizedStrings.js:
3669         * WebCore.gypi:
3670         * inspector/InspectorController.cpp:
3671         (WebCore::InspectorController::instrumentWillSendXMLHttpRequestImpl):
3672         * inspector/InspectorTimelineAgent.h:
3673         * inspector/front-end/BreakpointManager.js:
3674         (WebInspector.BreakpointManager):
3675         (WebInspector.BreakpointManager.prototype._setBreakpointOnBackend):
3676         (WebInspector.BreakpointManager.prototype.createXHRBreakpoint):
3677         (WebInspector.BreakpointManager.prototype._xhrBreakpointRemoved):
3678         (WebInspector.Breakpoint.prototype.compareTo):
3679         (WebInspector.XHRBreakpoint):
3680         (WebInspector.XHRBreakpoint.prototype.get enabled):
3681         (WebInspector.XHRBreakpoint.prototype.set enabled):
3682         (WebInspector.XHRBreakpoint.prototype.get url):
3683         (WebInspector.XHRBreakpoint.prototype.formatLabel):
3684         (WebInspector.XHRBreakpoint.prototype.compareTo):
3685         (WebInspector.XHRBreakpoint.prototype.remove):
3686         (WebInspector.XHRBreakpoint.prototype._setOnBackend.didSet):
3687         (WebInspector.XHRBreakpoint.prototype._setOnBackend):
3688         (WebInspector.XHRBreakpoint.prototype._removeFromBackend):
3689         * inspector/front-end/BreakpointsSidebarPane.js:
3690         (WebInspector.XHRBreakpointsSidebarPane):
3691         (WebInspector.XHRBreakpointsSidebarPane.prototype._showEditBreakpointDialog):
3692         (WebInspector.XHRBreakpointsSidebarPane.prototype._hideEditBreakpointDialog):
3693         (WebInspector.BreakpointItem.prototype.compareTo):
3694         (WebInspector.BreakpointItem.prototype._checkboxClicked):
3695         (WebInspector.BreakpointItem.prototype._enableChanged):
3696         (WebInspector.BreakpointItem.prototype._breakpointClicked):
3697         (WebInspector.XHRBreakpointItem):
3698         * inspector/front-end/CallStackSidebarPane.js:
3699         (WebInspector.CallStackSidebarPane.prototype.updateStatus.formatters.s):
3700         (WebInspector.CallStackSidebarPane.prototype.updateStatus.append):
3701         (WebInspector.CallStackSidebarPane.prototype.updateStatus):
3702         * inspector/front-end/DOMAgent.js:
3703         (WebInspector.DOMBreakpoint.prototype.compareTo):
3704         * inspector/front-end/Images/paneAddButtons.png: Added.
3705         * inspector/front-end/ScriptsPanel.js:
3706         (WebInspector.ScriptsPanel):
3707         (WebInspector.ScriptsPanel.prototype.reset):
3708         * inspector/front-end/WebKit.qrc:
3709         * inspector/front-end/inspector.css:
3710         (.pane > .title > button.add):
3711         (.pane > .title > button.add:hover):
3712         (.pane > .title > button.add:active):
3713         (.pane > .body .breakpoint-condition):
3714         * inspector/front-end/inspector.js:
3715         (WebInspector.createXHRBreakpointsSidebarPane.breakpointAdded):
3716         (WebInspector.createXHRBreakpointsSidebarPane):
3717
3718 2010-09-27  Pavel Feldman  <pfeldman@chromium.org>
3719
3720         Reviewed by Timothy Hatcher.
3721
3722         Web Inspector: Merge AbstractTimelinePanel into ResourcesPanel.
3723         https://bugs.webkit.org/show_bug.cgi?id=46612
3724
3725         I am refactoring resources panel and would like to merge abstract
3726         one back in since it is not use anywhere else.
3727
3728         * WebCore.gypi:
3729         * WebCore.vcproj/WebCore.vcproj:
3730         * inspector/front-end/AbstractTimelinePanel.js: Removed.
3731         * inspector/front-end/ResourceCategory.js:
3732         (WebInspector.ResourceCategory):
3733         (WebInspector.ResourceCategory.prototype.toString):
3734         * inspector/front-end/ResourcesPanel.js:
3735         (WebInspector.ResourcesPanel):
3736         (WebInspector.ResourcesPanel.prototype.get items):
3737         (WebInspector.ResourcesPanel.prototype.createInterface):
3738         (WebInspector.ResourcesPanel.prototype.createFilterPanel.createFilterElement):
3739         (WebInspector.ResourcesPanel.prototype.createFilterPanel):
3740         (WebInspector.ResourcesPanel.prototype.showCategory):
3741         (WebInspector.ResourcesPanel.prototype.hideCategory):
3742         (WebInspector.ResourcesPanel.prototype.filter):
3743         (WebInspector.ResourcesPanel.prototype._updateFilter):
3744         (WebInspector.ResourcesPanel.prototype._updateDividersLabelBarPosition):
3745         (WebInspector.ResourcesPanel.prototype.get needsRefresh):
3746         (WebInspector.ResourcesPanel.prototype.set needsRefresh):
3747         (WebInspector.ResourcesPanel.prototype.refreshIfNeeded):
3748         (WebInspector.ResourcesPanel.prototype.resize):
3749         (WebInspector.ResourcesPanel.prototype.invalidateAllItems):
3750         (WebInspector.ResourcesPanel.prototype.get calculator):
3751         (WebInspector.ResourcesPanel.prototype.set calculator):
3752         (WebInspector.ResourcesPanel.prototype.addItem):
3753         (WebInspector.ResourcesPanel.prototype.removeItem):
3754         (WebInspector.ResourcesPanel.prototype.refreshItem):
3755         (WebInspector.ResourcesPanel.prototype.revealAndSelectItem):
3756         (WebInspector.ResourcesPanel.prototype.sortItems):
3757         (WebInspector.ResourcesPanel.prototype.adjustScrollPosition):
3758         (WebInspector.ResourcesPanel.prototype.addEventDivider):
3759         (WebInspector.ResourcesPanel.prototype.hideEventDividers):
3760         (WebInspector.ResourcesPanel.prototype.showEventDividers):
3761         (WebInspector.ResourcesPanel.prototype.show):
3762         (WebInspector.ResourcesPanel.prototype.refresh):
3763         (WebInspector.ResourcesPanel.prototype.reset):
3764         (WebInspector.ResourcesPanel.prototype.updateGraphDividersIfNeeded):
3765         (WebInspector.ResourcesPanel.prototype.updateMainViewWidth):
3766         (WebInspector.ResourceBaseCalculator):
3767         (WebInspector.ResourceBaseCalculator.prototype.computeSummaryValues):
3768         (WebInspector.ResourceBaseCalculator.prototype.computeBarGraphPercentages):
3769         (WebInspector.ResourceBaseCalculator.prototype.computeBarGraphLabels):
3770         (WebInspector.ResourceBaseCalculator.prototype.get boundarySpan):
3771         (WebInspector.ResourceBaseCalculator.prototype.updateBoundaries):
3772         (WebInspector.ResourceBaseCalculator.prototype.reset):
3773         (WebInspector.ResourceBaseCalculator.prototype._value):
3774         (WebInspector.ResourceBaseCalculator.prototype.formatValue):
3775         (WebInspector.ResourceTimeCalculator):
3776         (WebInspector.ResourceTransferSizeCalculator):
3777         * inspector/front-end/WebKit.qrc:
3778         * inspector/front-end/inspector.html:
3779
3780 2010-09-27  Ragner Magalhaes  <ragner.magalhaes@openbossa.org>
3781
3782         Reviewed by Kenneth Rohde Christiansen.
3783
3784         [Qt] New input style for Qt Mobile theme
3785         https://bugs.webkit.org/show_bug.cgi?id=46461
3786
3787         Rename themeQtMaemo5.css to themeQtMobile.css since it is the theme for all Qt mobile platform.
3788         Adjust new input style.
3789
3790         * WebCore.pri:
3791         * css/themeQtMobile.css: Renamed from css/themeQtMaemo5.css
3792         (select):
3793         (select:disabled):
3794         (select:active):
3795         (select:active:disabled):
3796         (textarea):
3797         (textarea:disabled):
3798         (textarea:active):
3799         * platform/qt/RenderThemeQt.cpp:
3800         (WebCore::RenderThemeQt::extraDefaultStyleSheet): Renamed themeQtMaemo5UserAgentStyleSheet to themeQtMobileUserAgentStyleSheet to match renamed file.
3801
3802 2010-09-27  Girish Ramakrishnan  <girish@forwardbias.in>
3803
3804         Reviewed by Antonio Gomes.
3805
3806         [Qt] Enable local rendering of NPAPI plugins on Maemo6.
3807
3808         https://bugs.webkit.org/show_bug.cgi?id=46618
3809
3810         * WebCore.pro:
3811         * bridge/npapi.h:
3812         * plugins/PluginView.cpp:
3813         (WebCore::PluginView::setValue):
3814         (WebCore::PluginView::PluginView):
3815         * plugins/PluginView.h:
3816         * plugins/qt/PluginViewQt.cpp:
3817         (WebCore::PluginView::updatePluginWidget):
3818         (WebCore::PluginView::paint):
3819         (WebCore::PluginView::platformGetValueStatic):
3820
3821 2010-09-27  Ilya Tikhonovsky  <loislo@chromium.org>
3822
3823         Reviewed by Pavel Feldman.
3824
3825         Web Inspector: divide InspectorTimelineAgent into two parts.
3826
3827         We have an idea to split InspectorTimelineAgent into two parts.
3828         The first part is an instrumentation API which can be used for DOM breakpoints too.
3829         The other is the real Timeline agent which do a transformation of raw data into timeline data.
3830
3831         https://bugs.webkit.org/show_bug.cgi?id=46611
3832
3833         * inspector/InspectorTimelineAgent.cpp:
3834         (WebCore::InspectorTimelineAgent2::TimelineRecordEntry::TimelineRecordEntry):
3835         (WebCore::InspectorTimelineAgent2::GCEvent::GCEvent):
3836         (WebCore::InspectorTimelineAgent2::InspectorTimelineAgent2):
3837         (WebCore::InspectorTimelineAgent2::~InspectorTimelineAgent2):
3838         (WebCore::InspectorTimelineAgent2::didGC):
3839         (WebCore::InspectorTimelineAgent2::addRecordToTimeline):
3840         (WebCore::InspectorTimelineAgent2::setHeapSizeStatistic):
3841         (WebCore::InspectorTimelineAgent2::startNewRecord):
3842         (WebCore::InspectorTimelineAgent2::completeCurrentRecord):
3843         (WebCore::InspectorTimelineAgent2::asyncRecord):
3844         (WebCore::InspectorTimelineAgent2::atomicRecord):
3845         (WebCore::InspectorTimelineAgent2::getTopRecordData):
3846         (WebCore::InspectorTimelineAgent2::reset):
3847         (WebCore::InspectorTimelineAgent2::resetFrontendProxyObject):
3848         (WebCore::InspectorTimelineAgent2::pushGCEventRecords):
3849         (WebCore::InspectorTimelineAgent::InspectorTimelineAgent):
3850         (WebCore::InspectorTimelineAgent::~InspectorTimelineAgent):
3851         (WebCore::InspectorTimelineAgent::reset):
3852         (WebCore::InspectorTimelineAgent::willCallFunction):
3853         (WebCore::InspectorTimelineAgent::didCallFunction):
3854         (WebCore::InspectorTimelineAgent::willDispatchEvent):
3855         (WebCore::InspectorTimelineAgent::didDispatchEvent):
3856         (WebCore::InspectorTimelineAgent::willLayout):
3857         (WebCore::InspectorTimelineAgent::didLayout):
3858         (WebCore::InspectorTimelineAgent::willRecalculateStyle):
3859         (WebCore::InspectorTimelineAgent::didRecalculateStyle):
3860         (WebCore::InspectorTimelineAgent::willPaint):
3861         (WebCore::InspectorTimelineAgent::didPaint):
3862         (WebCore::InspectorTimelineAgent::willWriteHTML):
3863         (WebCore::InspectorTimelineAgent::didWriteHTML):
3864         (WebCore::InspectorTimelineAgent::didInstallTimer):
3865         (WebCore::InspectorTimelineAgent::didRemoveTimer):
3866         (WebCore::InspectorTimelineAgent::willFireTimer):
3867         (WebCore::InspectorTimelineAgent::didFireTimer):
3868         (WebCore::InspectorTimelineAgent::willChangeXHRReadyState):
3869         (WebCore::InspectorTimelineAgent::didChangeXHRReadyState):
3870         (WebCore::InspectorTimelineAgent::willLoadXHR):
3871         (WebCore::InspectorTimelineAgent::didLoadXHR):
3872         (WebCore::InspectorTimelineAgent::willEvaluateScript):
3873         (WebCore::InspectorTimelineAgent::didEvaluateScript):
3874         (WebCore::InspectorTimelineAgent::didScheduleResourceRequest):
3875         (WebCore::InspectorTimelineAgent::willSendResourceRequest):
3876         (WebCore::InspectorTimelineAgent::willReceiveResourceData):
3877         (WebCore::InspectorTimelineAgent::didReceiveResourceData):
3878         (WebCore::InspectorTimelineAgent::willReceiveResourceResponse):
3879         (WebCore::InspectorTimelineAgent::didReceiveResourceResponse):
3880         (WebCore::InspectorTimelineAgent::didFinishLoadingResource):
3881         (WebCore::InspectorTimelineAgent::didMarkTimeline):
3882         (WebCore::InspectorTimelineAgent::didMarkDOMContentEvent):
3883         (WebCore::InspectorTimelineAgent::didMarkLoadEvent):
3884         (WebCore::InspectorTimelineAgent::resetFrontendProxyObject):
3885         * inspector/InspectorTimelineAgent.h:
3886
3887 2010-09-27  Alexander Pavlov  <apavlov@chromium.org>
3888
3889         Reviewed by Sam Weinig.
3890
3891         Implement CSSStyleRule::setSelectorText()
3892
3893         This involves removing the "selectorText" "setter raises(DOMException)" clause from the IDL files,
3894         since the setter no longer raises the exception, as per http://dev.w3.org/csswg/cssom/#dom-cssstylerule-selectortext
3895         https://bugs.webkit.org/show_bug.cgi?id=46487
3896
3897         Test: fast/css/css-set-selector-text.html
3898
3899         * css/CSSPageRule.idl:
3900         * css/CSSStyleRule.cpp:
3901         (WebCore::CSSStyleRule::setSelectorText):
3902         * css/CSSStyleRule.h:
3903         * css/CSSStyleRule.idl:
3904
3905 2010-09-27  Zoltan Herczeg  <zherczeg@webkit.org>
3906
3907         Reviewed by Dirk Schulze.
3908
3909         Filter builder should be able to follow the filter object dependencies
3910         https://bugs.webkit.org/show_bug.cgi?id=45812
3911
3912         To propagate the changes of a primitive object, a data structure
3913         is needed which stores the dependent primitive objects. (Those
3914         who use the resulting image.) This data structure is implemented
3915         as a hash map, which contains primitive object and set of primitive
3916         objects <key,value> pairs. The hash map is able to follow the
3917         dynamic topology changes.
3918
3919         * rendering/RenderSVGResourceFilter.cpp:
3920         (WebCore::RenderSVGResourceFilter::buildPrimitives):
3921         * rendering/RenderSVGResourceFilterPrimitive.h:
3922         (WebCore::RenderSVGResourceFilterPrimitive::renderName):
3923         (WebCore::RenderSVGResourceFilterPrimitive::isSVGResourceFilterPrimitive):
3924         * svg/graphics/filters/SVGFilterBuilder.cpp:
3925         (WebCore::SVGFilterBuilder::SVGFilterBuilder):
3926         (WebCore::SVGFilterBuilder::appendEffectToEffectReferences):
3927         (WebCore::SVGFilterBuilder::clearEffects):
3928         * svg/graphics/filters/SVGFilterBuilder.h:
3929         (WebCore::SVGFilterBuilder::getEffectReferences):
3930         (WebCore::SVGFilterBuilder::addBuiltinEffects):
3931
3932 2010-09-27  Andreas Kling  <andreas.kling@nokia.com>
3933
3934         Rubber-stamped by Kenneth Rohde Christiansen.
3935
3936         [Qt] 32-bit Flash crashes on repeated SetWindow calls
3937         https://bugs.webkit.org/show_bug.cgi?id=46616
3938
3939         Re-enable PluginQuirkDontCallSetWindowMoreThanOnce for Qt on x86 Unix.
3940
3941         We incorrectly thought this was fixed in Flash 10, but it turns out it
3942         was just never broken on 64-bit.
3943
3944         * plugins/PluginPackage.cpp:
3945         (WebCore::PluginPackage::determineQuirks):
3946
3947 2010-09-27  İsmail Dönmez  <ismail@namtrac.org>
3948
3949         Reviewed by Andreas Kling.
3950
3951         Add PluginView::setJavaScriptPaused(bool) stub for WinCE.
3952
3953         * platform/qt/TemporaryLinkStubsQt.cpp:
3954         (PluginView::setJavaScriptPaused):
3955
3956 2010-09-27  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
3957
3958         Reviewed by Dirk Schulze.
3959
3960         Bug 46607 -  [WML] Fix a build break when WML is enabled
3961
3962         Fix a build break when WML is enabled.
3963
3964         * wml/WMLElement.cpp: Include HTMLParserIdioms.h
3965         (WebCore::WMLElement::parseMappedAttribute): Add additional parameter to invoke parseHTMLInteger() function. 
3966
3967 2010-09-26  Patrick Gansterer  <paroga@webkit.org>
3968
3969         Reviewed by Adam Barth.
3970
3971         Remove dead code and fix header includes in ResourceHandleWin
3972         https://bugs.webkit.org/show_bug.cgi?id=46479
3973
3974         Also add missing member varibale from r68167.
3975
3976         * platform/network/ResourceHandle.h:
3977         * platform/network/ResourceHandleInternal.h:
3978         (WebCore::ResourceHandleInternal::ResourceHandleInternal):
3979         * platform/network/win/ResourceHandleWin.cpp:
3980         (WebCore::ResourceHandleInternal::~ResourceHandleInternal):
3981         (WebCore::ResourceHandle::~ResourceHandle):
3982         (WebCore::ResourceHandle::onRequestComplete):
3983         * platform/network/win/ResourceHandleWin.h: Removed.
3984
3985 2010-09-26  Patrick Gansterer  <paroga@webkit.org>
3986
3987         Reviewed by Adam Barth.
3988
3989         Add WTF::StringHasher::createBlobHash
3990         https://bugs.webkit.org/show_bug.cgi?id=46514
3991
3992         Add this function for hashing FormElementKey and QualifiedNameComponents.
3993
3994         * dom/Document.cpp:
3995         (WebCore::FormElementKeyHash::hash):
3996         * dom/QualifiedName.h:
3997         (WebCore::hashComponents):
3998         (WebCore::QualifiedNameHash::hash):
3999
4000 2010-09-26  David Hyatt  <hyatt@apple.com>
4001
4002         Reviewed by Sam Weinig.
4003
4004         https://bugs.webkit.org/show_bug.cgi?id=46519
4005
4006         Convert the implementation of computeLogicalWidth to work with block-flow.
4007
4008         * rendering/RenderBlock.cpp:
4009         (WebCore::RenderBlock::determineHorizontalPosition):
4010         Patched to call the new computeMarginsInContainingBlockInlineDirection.  Eventually determineHorizontalPosition will
4011         be placing children along the inline direction of the containing block, and those children may have mismatched
4012         block flows.  The new computeMarginsInContainingBlockInlineDirection function is designed to handle that.
4013
4014         * rendering/RenderBox.cpp:
4015         (WebCore::RenderBox::marginStart):
4016         (WebCore::RenderBox::marginStartUsing):
4017         (WebCore::RenderBox::marginEnd):
4018         (WebCore::RenderBox::marginEndUsing):
4019         (WebCore::RenderBox::setMarginStart):
4020         (WebCore::RenderBox::setMarginEnd):
4021         (WebCore::RenderBox::setMarginStartUsing):
4022         (WebCore::RenderBox::setMarginEndUsing):
4023         Helpers that allow for marginStart/End access and that also allow for marginStart/End to be computed based off another
4024         element's block-flow and direction (typically the containing block).
4025         
4026         (WebCore::RenderBox::computeBorderBoxLogicalWidth):
4027         (WebCore::RenderBox::computeBorderBoxLogicalHeight):
4028         (WebCore::RenderBox::computeContentBoxLogicalWidth):
4029         (WebCore::RenderBox::computeContentBoxLogicalHeight):
4030         Patched to use logical border/padding widths and heights.
4031
4032         (WebCore::RenderBox::perpendicularContainingBlockLogicalHeight):
4033         A function for returning the available logical height of a perpendicular containing block.  If a child has vertical
4034         text for example and its block-flow is "lr", its available logical width is determined by the logical
4035         height of the containing block when that containing block is perpendicular, e.g. "tb".
4036         
4037         (WebCore::RenderBox::computeLogicalWidth):
4038         (WebCore::RenderBox::computeLogicalWidthUsing):
4039         Patched to be block-flow-aware and to use logical width values everywhere.
4040     
4041         (WebCore::RenderBox::sizesToIntrinsicLogicalWidth):
4042         Patched to use logical widths.
4043         
4044         (WebCore::RenderBox::computeMarginsInContainingBlockInlineDirection):
4045         A new function that is directionally abstract and that can handle the computation of margins in the containing
4046         block's inline direction.  This function is written such that a perpendicular child block flow can still be 
4047         pushed to the center, left or right in the containing block's inline direction.
4048         
4049         (WebCore::RenderBox::computePositionedLogicalWidth):
4050         This function is still largely unpatched.  A future patch will address positioend elements.
4051         
4052         * rendering/RenderBox.h:
4053         (WebCore::RenderBox::stretchesToMinIntrinsicLogicalWidth):
4054         * rendering/RenderFieldset.h:
4055         (WebCore::RenderFieldset::stretchesToMinIntrinsicLogicalWidth):
4056         Renames.
4057         
4058         * rendering/RenderTable.cpp:
4059         (WebCore::RenderTable::computeLogicalWidth):
4060         Renames, but not converted yet. Tables will happen in a future patch.
4061         
4062         * rendering/style/RenderStyle.cpp:
4063         (WebCore::RenderStyle::marginStartUsing):
4064         (WebCore::RenderStyle::marginEndUsing):
4065         * rendering/style/RenderStyle.h:
4066         Added helpers for accessing marginStart and End using another style's direction and block flow (typically will
4067         be the containing block's).
4068
4069         fast/block/basic/016.html changed, since centering now always awards the extra pixel for odd widths to the end margin
4070         instead of the right margin.  This is a progression.
4071         
4072         fast/css/logical-property-values.html is now reporting garbage results, which is expected now that some of the core layout
4073         functions have been patched.
4074
4075         Horizontal block flows are untestable still, since the normal layout process incorrectly blows away any computed height values.
4076
4077 2010-09-26  Antonio Gomes  <agomes@rim.comg>
4078
4079         Reviewed by Kenneth Rohde Christiansen.
4080
4081         DRT/Mac nodesFromRect support
4082
4083         [Mac][DRT] Implement LayoutTestController::nodesFromRect
4084         https://bugs.webkit.org/show_bug.cgi?id=46580
4085
4086         Symbol files updated.
4087
4088         * WebCore.exp.in: Added symbols to Document::nodesFromRect and bits of JSDocument now
4089         needed in WebKit/mac.
4090         * WebCore.xcodeproj/project.pbxproj: Set both JSDocument.h and JSNodeList as private headers
4091         now that they are referred in WebKit/mac.
4092
4093 2010-09-26  Adam Barth  <abarth@webkit.org>
4094
4095         Reviewed by Dimitri Glazkov.
4096
4097         Implement location.origin and HTMLAnchorElement.origin
4098         https://bugs.webkit.org/show_bug.cgi?id=46558
4099
4100         These attributes are part of my proposed URL API:
4101         https://docs.google.com/document/edit?id=1r_VTFKApVOaNIkocrg0z-t7lZgzisTuGTXkdzAk4gLU&hl=en
4102
4103         Hixie thought we should implement as much of this API as makes sense on
4104         Location and HTMLAnchorElement as well.  I'm starting with the origin
4105         attribute, because that seems like the biggest bang for the buck.
4106
4107         Tests: fast/dom/anchor-origin.html
4108                http/tests/misc/location-origin.html
4109
4110         * WebCore.xcodeproj/project.pbxproj:
4111         * html/HTMLAnchorElement.cpp:
4112         (WebCore::HTMLAnchorElement::origin):
4113         * html/HTMLAnchorElement.h:
4114         * html/HTMLAnchorElement.idl:
4115         * page/Location.cpp:
4116         (WebCore::Location::origin):
4117         * page/Location.h:
4118         * page/Location.idl:
4119
4120 2010-09-26  Sheriff Bot  <webkit.review.bot@gmail.com>
4121
4122         Unreviewed, rolling out r68343.
4123         http://trac.webkit.org/changeset/68343
4124         https://bugs.webkit.org/show_bug.cgi?id=46581
4125
4126         broke GTK+ (Requested by kling on #webkit).
4127
4128         * html/canvas/CanvasRenderingContext2D.cpp:
4129         (WebCore::CanvasRenderingContext2D::setFont):
4130
4131 2010-09-25  Antonio Gomes  <agomes@rim.com>
4132
4133         Reviewed by Kenneth Christiansen and Andreas Kling.
4134
4135         document.nodesFromRect() needs to be removed from Document.idl
4136         https://bugs.webkit.org/show_bug.cgi?id=46492
4137
4138         As discussed with Sam Weinig on IRC, it was decided to removed
4139         nodesFromRect() from the Document.idl, and that way, not exposing
4140         it to Web content.
4141
4142         Reason: there is no plan to make it standard at the moment, and at the
4143         very least, the method should had been originally added with the "webkit"
4144         prefix, which was not the case.
4145
4146         * dom/Document.idl:
4147
4148 2010-09-26  Renata Hodovan  <reni@inf.u-szeged.hu>
4149
4150         Reviewed by Dirk Schulze.
4151
4152         SVGFEBlendElement doesn't support dynamic invalidation, when attributes change.
4153         https://bugs.webkit.org/show_bug.cgi?id=46464
4154
4155         Tests: svg/dynamic-updates/SVGFEBlendElement-dom-in-attr.html
4156                svg/dynamic-updates/SVGFEBlendElement-dom-in2-attr.html
4157                svg/dynamic-updates/SVGFEBlendElement-dom-mode-attr.html
4158                svg/dynamic-updates/SVGFEBlendElement-svgdom-in-prop.html
4159                svg/dynamic-updates/SVGFEBlendElement-svgdom-in2-prop.html
4160                svg/dynamic-updates/SVGFEBlendElement-svgdom-mode-prop.html
4161
4162         * svg/SVGFEBlendElement.cpp:
4163         (WebCore::SVGFEBlendElement::svgAttributeChanged):
4164         * svg/SVGFEBlendElement.h:
4165
4166 2010-09-26  Andreas Kling  <andreas.kling@nokia.com>
4167
4168         Reviewed by Dan Bernstein.
4169
4170         Canvas: Crash when setting a font with size in 'ex' units