3be069ad884eba1bfee729f75dd59dda189ffdc4
[WebKit-https.git] / Source / WebCore / ChangeLog
1 2012-02-22  Philippe Normand  <pnormand@igalia.com>
2
3         [GStreamer] webkitwebsrc: use HTTP referer provided by MediaPlayer
4         https://bugs.webkit.org/show_bug.cgi?id=79236
5
6         Reviewed by Martin Robinson.
7
8         Store a pointer to the MediaPlayer object in the private structure
9         of the WebKitWebSrc element so we can call its public methods,
10         like ::referrer().
11
12         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
13         (WebCore::MediaPlayerPrivateGStreamer::sourceChanged):
14         * platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
15         (_WebKitWebSrcPrivate):
16         * platform/graphics/gstreamer/WebKitWebSourceGStreamer.h:
17
18 2012-02-22  Martin Robinson  <mrobinson@igalia.com>
19
20         [GTK] Clean build is broken when using make -j
21         https://bugs.webkit.org/show_bug.cgi?id=76388
22
23         No new tests. This is just a build fix.
24
25         Use order-only dependencies to ensure that built sources are built before
26         files that depend on them.
27
28         * GNUmakefile.am: Establish an order-only dependency on some built sources before starting
29         to build non-generated sources. Rename some temporary files and variables to be more consistent.
30         * bindings/gobject/GNUmakefile.am: Updated to reflect new variable names.
31
32 2012-02-22  Dana Jansens  <danakj@chromium.org>
33
34         [Chromium] New CCOcclusionTracker class with tests
35         https://bugs.webkit.org/show_bug.cgi?id=78549
36
37         Reviewed by James Robinson.
38
39         Adds a CCOcclusionTrackerBase template class that is able to track occlusion
40         of layers while traversing the layer tree from front-to-back, with typedefed
41         versions for the main and impl threads.
42
43         At each step of the front-to-back traversal, the class should be notified of
44         changes to the current render target, and when done working with a layer, the
45         layer is added the tracked occlusion.
46
47         The class provides tests for checking if a rect in content space
48         for a layer/surface is occluded by others in front of it.
49
50         Unit tests: CCOcclusionTrackerTest.cpp
51
52         * WebCore.gypi:
53         * platform/graphics/chromium/cc/CCOcclusionTracker.cpp: Added.
54         (WebCore):
55         (WebCore::::enterTargetRenderSurface):
56         (WebCore::::finishedTargetRenderSurface):
57         (WebCore::transformSurfaceOpaqueRegion):
58         (WebCore::::leaveToTargetRenderSurface):
59         (WebCore::contentToScreenSpaceTransform):
60         (WebCore::contentToTargetSurfaceTransform):
61         (WebCore::computeOcclusionBehindLayer):
62         (WebCore::::markOccludedBehindLayer):
63         (WebCore::testContentRectOccluded):
64         (WebCore::::occluded):
65         (WebCore::::surfaceOccluded):
66         (WebCore::rectSubtractRegion):
67         (WebCore::computeUnoccludedContentRect):
68         (WebCore::::unoccludedContentRect):
69         (WebCore::::surfaceUnoccludedContentRect):
70         (WebCore::::currentOcclusionInScreenSpace):
71         (WebCore::::currentOcclusionInTargetSurface):
72         * platform/graphics/chromium/cc/CCOcclusionTracker.h: Added.
73         (WebCore):
74         (CCOcclusionTrackerBase):
75         (WebCore::CCOcclusionTrackerBase::CCOcclusionTrackerBase):
76         (StackObject):
77
78 2012-02-22  Joshua Bell  <jsbell@chromium.org>
79
80         [Chromium] IndexedDB: Integrate with about:tracing
81         https://bugs.webkit.org/show_bug.cgi?id=78831
82
83         Annotate interesting IDB functions so they show up in the
84         tracing utility included in the Chromium port.
85
86         Reviewed by Tony Chang.
87
88         * WebCore.gypi:
89         * WebCore.xcodeproj/project.pbxproj:
90         * bindings/v8/IDBBindingUtilities.cpp:
91         (WebCore::createIDBKeyFromSerializedValueAndKeyPath):
92         (WebCore::injectIDBKeyIntoSerializedValue):
93         * storage/IDBCursor.cpp:
94         (WebCore::IDBCursor::direction):
95         (WebCore::IDBCursor::key):
96         (WebCore::IDBCursor::primaryKey):
97         (WebCore::IDBCursor::value):
98         (WebCore::IDBCursor::update):
99         (WebCore::IDBCursor::continueFunction):
100         (WebCore::IDBCursor::deleteFunction):
101         * storage/IDBCursorBackendImpl.cpp:
102         (WebCore::IDBCursorBackendImpl::direction):
103         (WebCore::IDBCursorBackendImpl::key):
104         (WebCore::IDBCursorBackendImpl::primaryKey):
105         (WebCore::IDBCursorBackendImpl::value):
106         (WebCore::IDBCursorBackendImpl::update):
107         (WebCore::IDBCursorBackendImpl::continueFunction):
108         (WebCore::IDBCursorBackendImpl::continueFunctionInternal):
109         (WebCore::IDBCursorBackendImpl::deleteFunction):
110         (WebCore::IDBCursorBackendImpl::prefetchContinue):
111         (WebCore::IDBCursorBackendImpl::prefetchContinueInternal):
112         (WebCore::IDBCursorBackendImpl::prefetchReset):
113         (WebCore::IDBCursorBackendImpl::close):
114         * storage/IDBDatabase.cpp:
115         (WebCore::IDBDatabase::dispatchEvent):
116         * storage/IDBIndex.cpp:
117         (WebCore::IDBIndex::openCursor):
118         (WebCore::IDBIndex::count):
119         (WebCore::IDBIndex::openKeyCursor):
120         (WebCore::IDBIndex::get):
121         (WebCore::IDBIndex::getKey):
122         * storage/IDBIndexBackendImpl.cpp:
123         (WebCore::IDBIndexBackendImpl::openCursorInternal):
124         (WebCore::IDBIndexBackendImpl::openCursor):
125         (WebCore::IDBIndexBackendImpl::openKeyCursor):
126         (WebCore::IDBIndexBackendImpl::countInternal):
127         (WebCore::IDBIndexBackendImpl::count):
128         (WebCore::IDBIndexBackendImpl::getInternal):
129         (WebCore::IDBIndexBackendImpl::get):
130         (WebCore::IDBIndexBackendImpl::getKey):
131         * storage/IDBObjectStore.cpp:
132         (WebCore::IDBObjectStore::name):
133         (WebCore::IDBObjectStore::keyPath):
134         (WebCore::IDBObjectStore::indexNames):
135         (WebCore::IDBObjectStore::transaction):
136         (WebCore::IDBObjectStore::get):
137         (WebCore::IDBObjectStore::add):
138         (WebCore::IDBObjectStore::put):
139         (WebCore::IDBObjectStore::deleteFunction):
140         (WebCore::IDBObjectStore::clear):
141         (WebCore::IDBObjectStore::createIndex):
142         (WebCore::IDBObjectStore::index):
143         (WebCore::IDBObjectStore::openCursor):
144         (WebCore::IDBObjectStore::count):
145         * storage/IDBObjectStoreBackendImpl.cpp:
146         (WebCore::IDBObjectStoreBackendImpl::get):
147         (WebCore::IDBObjectStoreBackendImpl::getInternal):
148         (WebCore::fetchKeyFromKeyPath):
149         (WebCore::injectKeyIntoKeyPath):
150         (WebCore::IDBObjectStoreBackendImpl::put):
151         (WebCore::IDBObjectStoreBackendImpl::putInternal):
152         (WebCore::IDBObjectStoreBackendImpl::deleteFunction):
153         (WebCore::IDBObjectStoreBackendImpl::deleteInternal):
154         (WebCore::IDBObjectStoreBackendImpl::clear):
155         (WebCore::IDBObjectStoreBackendImpl::openCursor):
156         (WebCore::IDBObjectStoreBackendImpl::openCursorInternal):
157         (WebCore::IDBObjectStoreBackendImpl::count):
158         (WebCore::IDBObjectStoreBackendImpl::countInternal):
159         * storage/IDBRequest.cpp:
160         (WebCore::IDBRequest::onSuccess):
161         (WebCore::IDBRequest::onSuccessWithContinuation):
162         (WebCore::IDBRequest::dispatchEvent):
163         * storage/IDBTracing.h: Added.
164         * storage/IDBTransaction.cpp:
165         (WebCore::IDBTransaction::dispatchEvent):
166         * storage/IDBTransactionBackendImpl.cpp:
167         (WebCore::IDBTransactionBackendImpl::abort):
168         (WebCore::IDBTransactionBackendImpl::commit):
169         (WebCore::IDBTransactionBackendImpl::taskTimerFired):
170         (WebCore::IDBTransactionBackendImpl::taskEventTimerFired):
171
172 2012-02-22  Dana Jansens  <danakj@chromium.org>
173
174         [chromium] Push CCLayerIteratorPosition struct into CCLayerIterator class.
175         https://bugs.webkit.org/show_bug.cgi?id=75864
176
177         Reviewed by James Robinson.
178
179         * platform/graphics/chromium/cc/CCLayerIterator.cpp:
180         (WebCore::CCLayerIteratorActions::BackToFront::begin):
181         (WebCore::CCLayerIteratorActions::BackToFront::end):
182         (WebCore::CCLayerIteratorActions::BackToFront::next):
183         (WebCore::CCLayerIteratorActions::FrontToBack::begin):
184         (WebCore::CCLayerIteratorActions::FrontToBack::end):
185         (WebCore::CCLayerIteratorActions::FrontToBack::next):
186         (WebCore::CCLayerIteratorActions::FrontToBack::goToHighestInSubtree):
187         * platform/graphics/chromium/cc/CCLayerIterator.h:
188         (WebCore::CCLayerIterator::CCLayerIterator):
189         (WebCore::CCLayerIterator::operator++):
190         (WebCore::CCLayerIterator::operator==):
191         (WebCore::CCLayerIterator::operator->):
192         (WebCore::CCLayerIterator::operator*):
193         (WebCore::CCLayerIterator::representsTargetRenderSurface):
194         (WebCore::CCLayerIterator::representsContributingRenderSurface):
195         (WebCore::CCLayerIterator::currentLayer):
196         (WebCore::CCLayerIterator::currentLayerRepresentsContributingRenderSurface):
197         (WebCore::CCLayerIterator::currentLayerRepresentsTargetRenderSurface):
198         (WebCore::CCLayerIterator::targetRenderSurfaceLayer):
199         (WebCore::CCLayerIterator::targetRenderSurface):
200         (WebCore::CCLayerIterator::targetRenderSurfaceChildren):
201         * platform/graphics/chromium/cc/CCLayerIteratorPosition.h: Removed.
202
203 2012-02-22  Pavel Feldman  <pfeldman@google.com>
204
205         Web Inspector: console doesn't show properly arrays from which tail values have been deleted
206         https://bugs.webkit.org/show_bug.cgi?id=79242
207
208         Reviewed by Yury Semikhatsky.
209
210         * English.lproj/localizedStrings.js:
211         * inspector/front-end/ConsoleMessage.js:
212         (WebInspector.ConsoleMessageImpl.prototype._printArray.appendUndefined):
213         (WebInspector.ConsoleMessageImpl.prototype._printArray):
214
215 2012-02-22  Pavel Feldman  <pfeldman@google.com>
216
217         Web Inspector: warning external font mime (font/font/woff).
218         https://bugs.webkit.org/show_bug.cgi?id=79244
219
220         Reviewed by Yury Semikhatsky.
221
222         * inspector/front-end/Resource.js:
223
224 2012-02-22  Yury Semikhatsky  <yurys@chromium.org>
225
226         Web Inspector: use dots as markers on the counter graphs
227         https://bugs.webkit.org/show_bug.cgi?id=79243
228
229         Changed counter graphs marker and counter text styles.
230
231         Reviewed by Pavel Feldman.
232
233         * English.lproj/localizedStrings.js:
234         * inspector/front-end/MemoryStatistics.js:
235         (WebInspector.MemoryStatistics):
236         (WebInspector.MemoryStatistics.prototype._createCounterSidebarElement):
237         (WebInspector.MemoryStatistics.prototype.addTimlineEvent):
238         (WebInspector.MemoryStatistics.prototype._draw):
239         (WebInspector.MemoryStatistics.prototype._onMouseOut):
240         (WebInspector.MemoryStatistics.prototype._onMouseOver):
241         (WebInspector.MemoryStatistics.prototype._onMouseMove):
242         (WebInspector.MemoryStatistics.prototype._refreshCurrentValues):
243         (WebInspector.MemoryStatistics.prototype._recordIndexAt):
244         (WebInspector.MemoryStatistics.prototype._highlightCurrentPositionOnGraphs):
245         (WebInspector.MemoryStatistics.prototype._clearMarkers):
246         (WebInspector.MemoryStatistics.prototype._saveImageUnderMarker):
247         (WebInspector.MemoryStatistics.prototype.refresh):
248         (WebInspector.MemoryStatistics.prototype._drawPolyline):
249         (WebInspector.MemoryStatistics.prototype._clear):
250         * inspector/front-end/timelinePanel.css:
251         (.memory-counter-sidebar-info):
252         (.memory-counter-sidebar-info .title):
253         (.memory-counter-sidebar-info .counter-value):
254
255 2012-02-22  Pavel Feldman  <pfeldman@google.com>
256
257         Web Inspector: make 'glue asynchronous events' optional.
258         https://bugs.webkit.org/show_bug.cgi?id=79240
259
260         Reviewed by Yury Semikhatsky.
261
262         * English.lproj/localizedStrings.js:
263         * inspector/front-end/Images/statusbarButtonGlyphs.png:
264         * inspector/front-end/TimelinePanel.js:
265         (WebInspector.TimelinePanel.prototype.get statusBarItems):
266         (WebInspector.TimelinePanel.prototype._createStatusbarButtons):
267         (WebInspector.TimelinePanel.prototype._glueParentButtonClicked):
268         (WebInspector.TimelinePanel.prototype._toggleStartAtZeroButtonClicked):
269         (WebInspector.TimelinePanel.prototype._repopulateRecords):
270         (WebInspector.TimelinePanel.prototype._findParentRecord):
271         (WebInspector.TimelinePanel.prototype._innerAddRecordToTimeline):
272         (WebInspector.TimelinePanel.prototype.sidebarResized):
273         (WebInspector.TimelineCalculator.prototype.computeBarGraphPercentages):
274         (WebInspector.TimelineCalculator.prototype.computeBarGraphWindowPosition):
275         (WebInspector.TimelineRecordGraphRow):
276         (WebInspector.TimelineRecordGraphRow.prototype.update):
277         (WebInspector.TimelinePanel.FormattedRecord.prototype._calculateAggregatedStats):
278         * inspector/front-end/timelinePanel.css:
279         (.glue-async-status-bar-item .glyph):
280         (.timeline-start-at-zero-status-bar-item .glyph):
281
282 2012-02-22  Vsevolod Vlasov  <vsevik@chromium.org>
283
284         Web Inspector: [REGRESSION] Console xhr logging is broken for async xhrs since r107672.
285         https://bugs.webkit.org/show_bug.cgi?id=79229
286
287         Reviewed by Pavel Feldman.
288
289         Test: http/tests/inspector/console-xhr-logging-async.html
290
291         * inspector/InspectorResourceAgent.cpp:
292         (WebCore::InspectorResourceAgent::setInitialScriptContent):
293         * xml/XMLHttpRequest.cpp:
294         (WebCore::XMLHttpRequest::didFinishLoading):
295
296 2012-02-22  Andrey Kosyakov  <caseq@chromium.org>
297
298         Web Inspector: fix memory counters and start-at-zero modes of timeline panels to co-exist nicely
299         https://bugs.webkit.org/show_bug.cgi?id=79241
300
301         Reviewed by Yury Semikhatsky.
302
303         * inspector/front-end/MemoryStatistics.js:
304         (WebInspector.MemoryStatistics.prototype.addTimlineEvent):
305         * inspector/front-end/TimelineOverviewPane.js:
306         (WebInspector.TimelineOverviewPane):
307         (WebInspector.TimelineOverviewPane.prototype._showTimelines):
308         (WebInspector.TimelineOverviewPane.prototype._showMemoryGraph):
309         (WebInspector.TimelineOverviewPane.prototype.setStartAtZero):
310         (WebInspector.TimelineOverviewPane.prototype._onWindowChanged):
311         * inspector/front-end/TimelinePanel.js:
312         (WebInspector.TimelinePanel.prototype._timelinesOverviewModeChanged):
313
314 2012-02-22  Andrey Kosyakov  <caseq@chromium.org>
315
316         Web Inspector: [experimental] add a mode to display timeline events aligned by the start time
317         https://bugs.webkit.org/show_bug.cgi?id=79123
318
319         Reviewed by Pavel Feldman.
320
321         * inspector/front-end/Images/statusbarButtonGlyphs.png:
322         * inspector/front-end/Settings.js:
323         (WebInspector.ExperimentsSettings):
324         * inspector/front-end/TimelineOverviewPane.js:
325         (WebInspector.TimelineOverviewPane):
326         (WebInspector.TimelineOverviewPane.prototype._showTimelines):
327         (WebInspector.TimelineOverviewPane.prototype._showMemoryGraph):
328         (WebInspector.TimelineOverviewPane.prototype._onWindowChanged):
329         (WebInspector.TimelineOverviewPane.prototype.setStartAtZero):
330         (WebInspector.TimelineOverviewPane.prototype.update):
331         (WebInspector.TimelineOverviewPane.prototype.reset):
332         (WebInspector.TimelineOverviewWindow):
333         (WebInspector.TimelineOverviewWindow.prototype.reset):
334         (WebInspector.TimelineOverviewWindow.prototype._setWindowPosition):
335         (WebInspector.TimelineOverviewWindow.prototype.scrollWindow):
336         (WebInspector.TimelineStartAtZeroOverview):
337         (WebInspector.TimelineStartAtZeroOverview.prototype.reset):
338         (WebInspector.TimelineStartAtZeroOverview.prototype.update):
339         (WebInspector.TimelineStartAtZeroOverview.prototype._filterRecords):
340         (WebInspector.TimelineStartAtZeroOverview.prototype._buildBar):
341         (WebInspector.TimelineStartAtZeroOverview.prototype._onWindowChanged):
342         * inspector/front-end/TimelinePanel.js:
343         (WebInspector.TimelinePanel.prototype.get statusBarItems):
344         (WebInspector.TimelinePanel.prototype._createStatusbarButtons):
345         (WebInspector.TimelinePanel.prototype._toggleStartAtZeroButtonClicked):
346         (WebInspector.TimelinePanel.prototype.get _startAtZero):
347         (WebInspector.TimelinePanel.prototype._innerAddRecordToTimeline):
348         (WebInspector.TimelinePanel.prototype.sidebarResized):
349         (WebInspector.TimelinePanel.prototype._onRecordsCleared):
350         (WebInspector.TimelinePanel.prototype._resetPanel):
351         (WebInspector.TimelinePanel.prototype._scheduleRefresh):
352         (WebInspector.TimelinePanel.prototype._refresh):
353         (WebInspector.TimelinePanel.prototype._filterRecords):
354         (WebInspector.TimelinePanel.prototype._refreshRecords):
355         (WebInspector.TimelineCalculator.prototype.computeBarGraphWindowPosition):
356         (WebInspector.TimelineStartAtZeroCalculator):
357         (WebInspector.TimelineStartAtZeroCalculator.prototype.computeBarGraphPercentages):
358         (WebInspector.TimelineStartAtZeroCalculator.prototype.computeBarGraphWindowPosition):
359         (WebInspector.TimelineStartAtZeroCalculator.prototype.calculateWindow):
360         (WebInspector.TimelineStartAtZeroCalculator.prototype.reset):
361         (WebInspector.TimelineStartAtZeroCalculator.prototype.updateBoundaries):
362         (WebInspector.TimelineStartAtZeroCalculator.prototype.formatValue):
363         (WebInspector.TimelinePanel.FormattedRecord):
364         (WebInspector.TimelinePanel.FormattedRecord.prototype._generateAggregatedInfo):
365         (WebInspector.TimelinePanel.FormattedRecord.prototype._generatePopupContent):
366         (WebInspector.TimelinePanel.FormattedRecord.prototype._calculateAggregatedStats):
367         (WebInspector.TimelinePanel.FormattedRecord.prototype.get aggregatedStats):
368         (WebInspector.TimelineModel.prototype.get records):
369         (WebInspector.TimelinePresentationModel):
370         (WebInspector.TimelinePresentationModel.prototype.reset):
371         (WebInspector.TimelinePresentationModel.prototype.setWindowIndices):
372         (WebInspector.TimelineRecordFilter):
373         (WebInspector.TimelineRecordFilter.prototype.accept):
374         (WebInspector.TimelineStartAtZeroRecordFilter):
375         (WebInspector.TimelineStartAtZeroRecordFilter.prototype.accept):
376         * inspector/front-end/timelinePanel.css:
377         (.timeline-start-at-zero #timeline-overview-sidebar):
378         (.timeline-start-at-zero #timeline-overview-grid):
379         (.timeline-overview-window):
380         (.timeline-start-at-zero .timeline-overview-window):
381         (.timeline-start-at-zero .timeline-overview-dividers-background):
382         (.timeline-overview-window-rulers):
383         (.timeline-start-at-zero #timeline-overview-memory):
384         (.popover .timeline-loading):
385         (.popover .timeline-scripting):
386         (.popover .timeline-rendering):
387         (.timeline-start-at-zero-status-bar-item .glyph):
388         (.timeline-start-at-zero-status-bar-item.toggled-on .glyph):
389         (.timeline-overview-start-at-zero):
390         (.timeline-overview-start-at-zero-bars):
391         (.timeline-overview-start-at-zero-bars .padding):
392         (.timeline-overview-start-at-zero-bars .timeline-bar-vertical):
393         (.timeline-bar-vertical div:first-child):
394         (.timeline-bar-vertical .timeline-loading):
395         (.timeline-bar-vertical .timeline-scripting):
396         (.timeline-bar-vertical .timeline-rendering):
397
398 2012-02-22  Kenneth Rohde Christiansen  <kenneth@webkit.org>
399
400         [Qt] Disregard previous backing store as soon as possible
401         https://bugs.webkit.org/show_bug.cgi?id=79232
402
403         Reviewed by Simon Hausmann and No'am Rosenthal.
404
405         Make it possible to drop non-visible tiles and to test
406         if the current visible rect is fully covered.
407
408         * platform/graphics/TiledBackingStore.cpp:
409         (WebCore::TiledBackingStore::visibleContentsRect):
410         (WebCore::TiledBackingStore::coverageRatio):
411         (WebCore::TiledBackingStore::visibleAreaIsCovered):
412         (WebCore):
413         (WebCore::TiledBackingStore::createTiles):
414         (WebCore::TiledBackingStore::removeAllNonVisibleTiles):
415         * platform/graphics/TiledBackingStore.h:
416         (TiledBackingStore):
417
418 2012-02-22  Simon Hausmann  <simon.hausmann@nokia.com>
419
420         [Qt] Move QMenu dependant scrollbar context menu handling out of WebCore
421         https://bugs.webkit.org/show_bug.cgi?id=79233
422
423         Reviewed by Kenneth Rohde Christiansen.
424
425         Move the code into WebKit/qt/Api/qwebpage.cpp, the only place where it is called from.
426
427         * Target.pri: Remove ScrollbarQt.cpp from build.
428         * platform/Scrollbar.h: Remove Qt-only context menu handling but make moveThum
429         accessible from the outside.
430         * platform/qt/ScrollbarQt.cpp: Removed. Not needed anymore.
431
432 2012-02-22  Vsevolod Vlasov  <vsevik@chromium.org>
433
434         Web Inspector: retrieving content for some XHR requests crashes inspected page renderer
435         https://bugs.webkit.org/show_bug.cgi?id=79026
436
437         Reviewed by Pavel Feldman.
438
439         Fixed loading empty xhr content and xhr content decoding that was
440         broken in r107672.
441
442         Tests: http/tests/inspector/network/network-cyrillic-xhr.html
443                http/tests/inspector/network/network-empty-xhr.html
444
445         * inspector/InspectorPageAgent.cpp:
446         (WebCore):
447         (WebCore::InspectorPageAgent::createDecoder):
448         (WebCore::InspectorPageAgent::cachedResourceContent):
449         * inspector/InspectorPageAgent.h:
450         (WebCore):
451         * inspector/NetworkResourcesData.cpp:
452         (WebCore::NetworkResourcesData::ResourceData::decodeDataToContent):
453         (WebCore::NetworkResourcesData::responseReceived):
454         * inspector/NetworkResourcesData.h:
455         (WebCore::NetworkResourcesData::ResourceData::decoder):
456         (WebCore::NetworkResourcesData::ResourceData::setDecoder):
457
458 2012-02-22  Peter Rybin  <peter.rybin@gmail.com>
459
460         Web Inspector: CodeGeneratorInspector.py: remove neural-net-style constructions
461         https://bugs.webkit.org/show_bug.cgi?id=79153
462
463         Reviewed by Yury Semikhatsky.
464
465         CParamType class removed completely, some ("virtual") methods are
466         removed. TypeModel notion is added instead with some minor helper
467         classes and methods.
468
469         * inspector/CodeGeneratorInspector.py:
470         (DomainNameFixes):
471         (RawTypes.BaseType):
472         (RawTypes.String):
473         (RawTypes.String.get_raw_type_model):
474         (RawTypes.Int):
475         (RawTypes.Int.get_raw_type_model):
476         (RawTypes.Number):
477         (RawTypes.Number.get_raw_type_model):
478         (RawTypes.Bool):
479         (RawTypes.Bool.get_raw_type_model):
480         (RawTypes.Object):
481         (RawTypes.Object.get_raw_type_model):
482         (RawTypes.Any):
483         (RawTypes.Any.get_raw_type_model):
484         (RawTypes.Array):
485         (RawTypes.Array.get_raw_type_model):
486         (replace_right_shift):
487         (CommandReturnPassModel):
488         (CommandReturnPassModel.ByReference):
489         (CommandReturnPassModel.ByReference.__init__):
490         (CommandReturnPassModel.ByReference.get_return_var_type):
491         (CommandReturnPassModel.get_output_argument_prefix):
492         (CommandReturnPassModel.get_output_to_raw_expression):
493         (CommandReturnPassModel.get_output_parameter_type):
494         (CommandReturnPassModel.get_set_return_condition):
495         (CommandReturnPassModel.ByPointer):
496         (CommandReturnPassModel.ByPointer.__init__):
497         (CommandReturnPassModel.ByPointer.get_return_var_type):
498         (TypeModel):
499         (TypeModel.RefPtrBased):
500         (TypeModel.RefPtrBased.__init__):
501         (TypeModel.RefPtrBased.get_optional):
502         (TypeModel.RefPtrBased.get_command_return_pass_model):
503         (TypeModel.RefPtrBased.get_input_param_type_text):
504         (TypeModel.RefPtrBased.get_event_setter_expression_pattern):
505         (TypeModel.Enum):
506         (TypeModel.Enum.__init__):
507         (TypeModel.Enum.get_optional):
508         (TypeModel.Enum.get_optional.EnumOptional):
509         (TypeModel.Enum.get_optional.EnumOptional.get_optional):
510         (TypeModel.Enum.get_optional.EnumOptional.get_command_return_pass_model):
511         (TypeModel.Enum.get_input_param_type_text):
512         (TypeModel.Enum.get_event_setter_expression_pattern):
513         (TypeModel.Enum.get_command_return_pass_model):
514         (TypeModel.ValueType):
515         (TypeModel.ValueType.__init__):
516         (TypeModel.ValueType.get_optional):
517         (TypeModel.ValueType.get_command_return_pass_model):
518         (TypeModel.ValueType.get_input_param_type_text):
519         (TypeModel.ValueType.get_event_setter_expression_pattern):
520         (TypeModel.ValueType.ValueOptional):
521         (TypeModel.ValueType.ValueOptional.__init__):
522         (TypeModel.ValueType.ValueOptional.get_optional):
523         (TypeModel.ValueType.ValueOptional.get_command_return_pass_model):
524         (TypeModel.ValueType.ValueOptional.get_input_param_type_text):
525         (TypeModel.ValueType.ValueOptional.get_event_setter_expression_pattern):
526         (TypeModel.init_class):
527         (TypeBindings.create_ad_hoc_type_declaration.Helper):
528         (TypeBindings.create_type_declaration_.EnumBinding.get_array_item_c_type_text):
529         (TypeBindings.create_type_declaration_.EnumBinding.get_setter_value_expression_pattern):
530         (TypeBindings.create_type_declaration_.EnumBinding):
531         (TypeBindings.create_type_declaration_.EnumBinding.get_type_model):
532         (TypeBindings.create_type_declaration_):
533         (TypeBindings.create_type_declaration_.get_type_model):
534         (TypeBindings.create_type_declaration_.get_array_item_c_type_text):
535         (get_type_model):
536         (AdHocTypeContextImpl.__init__):
537         (PlainObjectBinding):
538         (PlainObjectBinding.get_type_model):
539         (AdHocTypeContext):
540         (ArrayBinding.get_array_item_c_type_text):
541         (ArrayBinding):
542         (ArrayBinding.get_type_model):
543         (RawTypeBinding.get_validator_call_text):
544         (RawTypeBinding.reduce_to_raw_type):
545         (RawTypeBinding):
546         (RawTypeBinding.get_type_model):
547         (MethodGenerateModes.StrictParameterMode.get_c_param_type_text):
548         (MethodGenerateModes.RawParameterMode.get_c_param_type_text):
549         (MethodGenerateModes.CombinedMode.get_c_param_type_text):
550         (Generator.go):
551         (Generator.process_event):
552         (Generator.process_command):
553         (Generator.resolve_type_and_generate_ad_hoc):
554         (Generator.resolve_type_and_generate_ad_hoc.AdHocTypeContext):
555         * inspector/InspectorDebuggerAgent.cpp:
556         (WebCore::InspectorDebuggerAgent::didParseSource):
557
558 2012-02-21  Vsevolod Vlasov  <vsevik@chromium.org>
559
560         Web Inspector: [InspectorIndexedDB] Show IndexedDB views on selection IndexedDB elements in resources panel.
561         https://bugs.webkit.org/show_bug.cgi?id=79098
562
563         Reviewed by Pavel Feldman.
564
565         * English.lproj/localizedStrings.js:
566         * WebCore.gypi:
567         * WebCore.vcproj/WebCore.vcproj:
568         * inspector/InspectorIndexedDBAgent.cpp:
569         (WebCore):
570         * inspector/compile-front-end.sh:
571         * inspector/front-end/IndexedDBModel.js:
572         (WebInspector.IndexedDBModel.prototype._assertFrameId):
573         (WebInspector.IndexedDBModel.prototype.loadObjectStoreData):
574         (WebInspector.IndexedDBModel.prototype.loadIndexData):
575         * inspector/front-end/IndexedDBViews.js: Added.
576         * inspector/front-end/ObjectPropertiesSection.js:
577         (WebInspector.ObjectPropertiesSection):
578         (WebInspector.ObjectPropertiesSection.prototype.updateProperties):
579         * inspector/front-end/ResourcesPanel.js:
580         (WebInspector.ResourcesPanel.prototype.showIndexedDB):
581         (WebInspector.IndexedDBTreeElement.prototype.refreshIndexedDB):
582         (WebInspector.IndexedDBTreeElement.prototype._indexedDBAdded):
583         (WebInspector.IDBDatabaseTreeElement):
584         (WebInspector.IDBDatabaseTreeElement.prototype.get itemURL):
585         (WebInspector.IDBDatabaseTreeElement.prototype.update):
586         (WebInspector.IDBDatabaseTreeElement.prototype.onselect):
587         (WebInspector.IDBObjectStoreTreeElement):
588         (WebInspector.IDBObjectStoreTreeElement.prototype.get itemURL):
589         (WebInspector.IDBObjectStoreTreeElement.prototype.update):
590         (WebInspector.IDBObjectStoreTreeElement.prototype.onselect):
591         (WebInspector.IDBIndexTreeElement):
592         (WebInspector.IDBIndexTreeElement.prototype.get itemURL):
593         (WebInspector.IDBIndexTreeElement.prototype.update):
594         (WebInspector.IDBIndexTreeElement.prototype.onselect):
595         * inspector/front-end/WebKit.qrc:
596         * inspector/front-end/externs.js:
597         * inspector/front-end/indexedDBViews.css: Added.
598         * inspector/front-end/inspector.html:
599
600 2012-02-22  Nikolas Zimmermann  <nzimmermann@rim.com>
601
602         REGRESSION(58212): html foreignObjects with positions other than static not hidden correctly when parent has display:none
603         https://bugs.webkit.org/show_bug.cgi?id=41386
604
605         Reviewed by Zoltan Herczeg.
606
607         r58212 gave SVGGElements a renderer, regardless if "display: none" was set or not, for various reasons (see change set).
608         The <g> renderer for such cases is a RenderSVGHiddenContainer. We make sure in SVG that such subtrees are never used
609         for painting & hittesting - they only exist for the purpose of SVG DOM (query getCTM, etc..) and to create renderers
610         for child resources, like <g display="none"><linearGradient>.
611
612         This concept still works fine for: <g display="none"><foreignObject><body>Foobar</body></foreignObject></g>, as
613         RenderSVGForeignObject::paint is never called thus we never paint the subtree of the <fO>. If the <body> elements
614         contains "position: relative" a new layer is created for the <body>. When the document paints we have two seperated
615         layers, and the <body> layer doesn't know that it's actually inside a "SVG hidden subtree", and gets painted, where it
616         shouldn't. HTML doesn't have this problems, as a display: none object, never creates a renderer.
617
618         The fix is to disallow layer creation in hidden SVG subtrees, to mimic what would happen if we'd follow HTML rules
619         to not create renderers for display: none objects. This avoids any indirections - as no layers are created anymore.
620
621         Tests: svg/foreignObject/fO-display-none-with-relative-pos-content.svg
622                svg/foreignObject/fO-display-none.svg
623                svg/foreignObject/fO-parent-display-changes.svg
624                svg/foreignObject/fO-parent-display-none-with-relative-pos-content.svg
625                svg/foreignObject/fO-parent-display-none.svg
626                svg/foreignObject/fO-parent-of-parent-display-none-with-relative-pos-content.svg
627                svg/foreignObject/fO-parent-of-parent-display-none.svg
628
629         * rendering/RenderBoxModelObject.cpp:
630         (WebCore::RenderBoxModelObject::styleDidChange): Only create layers, if its allowed -- layerCreationAllowedForSubtree() will always return true for HTML, and only false for layers inside a hidden SVG subtree.
631         * rendering/RenderObject.cpp:
632         (WebCore::RenderObject::addChild): Only create layers, if its allowed.
633         * rendering/RenderObject.h: Add inline layerCreationAllowedForSubtree() helper, that craws the tree to find a RenderSVGHiddenContainer ancestor, if not present, return true.
634
635 2012-02-22  Zoltan Herczeg  <zherczeg@webkit.org>
636
637         Drop clipToImageBuffer from RenderBoxModelObject
638         https://bugs.webkit.org/show_bug.cgi?id=79225
639
640         Reviewed by Nikolas Zimmermann.
641
642         -webkit-background-clip: text is a rarely used non-standard
643         feature uses clipToImageBuffer. It is replaced by
644         CompositeDestinationIn on a transparent layer. The new
645         approach has the same speed as the old one.
646
647         Existing tests cover this issue.
648
649         * rendering/RenderBoxModelObject.cpp:
650         (WebCore::RenderBoxModelObject::paintFillLayerExtended):
651
652 2012-02-22  Kenneth Rohde Christiansen  <kenneth@webkit.org>
653
654         Merge setVisibleRectTrajectoryVector and adjustVisibleRect to
655         the more descriptive coverWithTilesIfNeeded
656         https://bugs.webkit.org/show_bug.cgi?id=79230
657
658         Reviewed by Simon Hausmann.
659
660         Both setVisibleRectTrajectoryVector and the adjustVisibleRect are
661         used for initiating re-tiling, so make that more obvious and merge
662         the two.
663
664         * platform/graphics/TiledBackingStore.cpp:
665         (WebCore::TiledBackingStore::coverWithTilesIfNeeded):
666         * platform/graphics/TiledBackingStore.h:
667         (TiledBackingStore):
668
669 2012-02-17  Nikolas Zimmermann  <nzimmermann@rim.com>
670
671         REGRESSION: unbalanced transparency layers for clipPath
672         https://bugs.webkit.org/show_bug.cgi?id=78074
673
674         Reviewed by Zoltan Herczeg.
675
676         If we're rendering to a mask image buffer, all children are rendered with opacity=1, regardless what their RenderStyles specify.
677         SVGRenderSupport::finishRenderSVGContent() did not take this into account and always called endTransparencyLayer(). Fix that
678         by checking if we're rendering to a mask image buffer, if so don't call endTransparencyLayer().
679
680         Add new reftest covering both the visual & logical correctness (no assertion).
681
682         Tests: svg/clip-path/opacity-assertion-expected.svg
683                svg/clip-path/opacity-assertion.svg
684
685         * rendering/svg/SVGRenderSupport.cpp:
686         (WebCore::isRenderingMaskImage): Extraced as sharable helper function.
687         (WebCore::SVGRenderSupport::prepareToRenderSVGContent): Factor out isRenderingMaskImage() function.
688         (WebCore::SVGRenderSupport::finishRenderSVGContent): Only call endTransparencyLayer(), if we actually called beginTL() first. 
689
690 2012-02-22  Kenneth Rohde Christiansen  <kenneth@webkit.org>
691
692         Improve comments in tiling code.
693
694         Rubberstamped by Simon Hausmann.
695
696         * platform/graphics/TiledBackingStore.cpp:
697         (WebCore::TiledBackingStore::createTiles):
698
699 2012-02-22  'Pavel Feldman'  <pfeldman@google.com>
700
701         Not reviewed: build fix.
702
703         * inspector/InspectorController.cpp:
704         * inspector/InspectorController.h:
705         (InspectorController):
706
707 2012-02-21  Pavel Feldman  <pfeldman@google.com>
708
709         Web Inspector: do not filter out requestAnimationFrame from timeline, implement stop on animation events.
710         https://bugs.webkit.org/show_bug.cgi?id=79116
711
712         Reviewed by Yury Semikhatsky.
713
714         * English.lproj/localizedStrings.js:
715         * dom/ScriptedAnimationController.cpp:
716         (WebCore::ScriptedAnimationController::registerCallback):
717         * inspector/InspectorInstrumentation.cpp:
718         (WebCore):
719         (WebCore::InspectorInstrumentation::didRequestAnimationFrameCallbackImpl):
720         (WebCore::InspectorInstrumentation::didCancelAnimationFrameCallbackImpl):
721         (WebCore::InspectorInstrumentation::willFireAnimationFrameEventImpl):
722         * inspector/InspectorInstrumentation.h:
723         (InspectorInstrumentation):
724         (WebCore::InspectorInstrumentation::didRequestAnimationFrameCallback):
725         * inspector/InspectorTimelineAgent.cpp:
726         (TimelineRecordType):
727         (WebCore::InspectorTimelineAgent::didRequestAnimationFrameCallback):
728         (WebCore::InspectorTimelineAgent::didCancelAnimationFrameCallback):
729         (WebCore::InspectorTimelineAgent::willFireAnimationFrameEvent):
730         (WebCore::InspectorTimelineAgent::didFireAnimationFrameEvent):
731         * inspector/InspectorTimelineAgent.h:
732         (InspectorTimelineAgent):
733         * inspector/front-end/BreakpointsSidebarPane.js:
734         (WebInspector.EventListenerBreakpointsSidebarPane):
735         (WebInspector.EventListenerBreakpointsSidebarPane.eventNameForUI):
736         * inspector/front-end/TimelineAgent.js:
737         * inspector/front-end/TimelinePanel.js:
738         (WebInspector.TimelinePanel):
739         (WebInspector.TimelinePanel.prototype.get _recordStyles):
740         (WebInspector.TimelinePanel.prototype._findParentRecord):
741         (WebInspector.TimelinePanel.prototype._innerAddRecordToTimeline):
742         (WebInspector.TimelinePanel.prototype._onRecordsCleared):
743         (WebInspector.TimelinePanel.FormattedRecord):
744         (WebInspector.TimelinePanel.FormattedRecord.prototype._generatePopupContent):
745         (WebInspector.TimelinePanel.FormattedRecord.prototype._getRecordDetails):
746
747 2012-02-22  Changhun Kang  <temoochin@company100.net>
748
749         Remove unused class declaration in WebCore/page/scrolling/ScrollingCoordinator.h
750         https://bugs.webkit.org/show_bug.cgi?id=79175
751
752         Reviewed by Kentaro Hara.
753
754         * page/scrolling/ScrollingCoordinator.h:
755         Remove PlatformGestureEvent class declaration.
756         (WebCore):
757
758 2012-02-22  Andras Becsi  <andras.becsi@nokia.com>
759
760         [Qt][WK2] Fix the N9 build
761         https://bugs.webkit.org/show_bug.cgi?id=79101
762
763         Reviewed by Simon Hausmann.
764
765         Fixed the include order of the rolled out r108359 not to break
766         the build with CONFIG+=force_static_libs_as_shared.
767
768         * platform/graphics/OpenGLShims.h: Add missing include.
769
770 2012-02-22  Shinya Kawanaka  <shinyak@chromium.org>
771
772         firstRendererOf() should also return a fallback element renderer in NodeRenderingContext.
773         https://bugs.webkit.org/show_bug.cgi?id=79180
774
775         Reviewed by Hajime Morita.
776
777         Currently we have handled AttachingFallback in some special mannger, however if firstRendererOf
778         and lastRendererOf return a fallback element renderer, we don't need to handle it in such a manner.
779
780         We have introduced new attaching phase: AttachingFallbacked, and AttachingNotFallbacked.
781         They are used for fallback elements.
782
783         Added new test cases in:
784           fast/dom/shadow/shadow-contents-fallback.html
785           fast/dom/shadow/shadow-contents-fallback-dynamic.html
786
787         * dom/NodeRenderingContext.cpp:
788         (WebCore::NodeRenderingContext::NodeRenderingContext):
789         (WebCore::firstRendererOf):
790         (WebCore::lastRendererOf):
791         (WebCore::NodeRenderingContext::nextRenderer):
792         (WebCore::NodeRenderingContext::previousRenderer):
793         (WebCore::NodeRenderingContext::shouldCreateRenderer):
794         * dom/NodeRenderingContext.h:
795         * html/shadow/InsertionPoint.h:
796         (WebCore::isInsertionPoint):
797         (WebCore):
798         (WebCore::toInsertionPoint):
799
800 2012-02-22  Csaba Osztrogonác  <ossy@webkit.org>
801
802         [Qt] Unreviewed gardening after r108464.
803
804         * Target.pri:
805
806 2012-02-22  Sheriff Bot  <webkit.review.bot@gmail.com>
807
808         Unreviewed, rolling out r108468.
809         http://trac.webkit.org/changeset/108468
810         https://bugs.webkit.org/show_bug.cgi?id=79219
811
812         Broke Chromium Win release build (Requested by bashi on
813         #webkit).
814
815         * CMakeLists.txt:
816         * GNUmakefile.list.am:
817         * Target.pri:
818         * WebCore.gypi:
819         * WebCore.vcproj/WebCore.vcproj:
820         * WebCore.xcodeproj/project.pbxproj:
821         * websockets/WebSocket.cpp:
822         (WebCore::WebSocket::didConnect):
823         * websockets/WebSocketChannel.cpp:
824         (WebCore::WebSocketChannel::connect):
825         (WebCore::WebSocketChannel::fail):
826         (WebCore::WebSocketChannel::processFrame):
827         (WebCore::WebSocketChannel::sendFrame):
828         * websockets/WebSocketChannel.h:
829         * websockets/WebSocketDeflateFramer.cpp: Removed.
830         * websockets/WebSocketDeflateFramer.h: Removed.
831
832 2012-02-20  Roland Steiner  <rolandsteiner@chromium.org>
833
834         <style scoped>: Add runtime-flag
835         https://bugs.webkit.org/show_bug.cgi?id=79074
836
837         Added runtime-flag.
838         Query runtime flag when (un)registering a <style scoped> element, and when determineing a style sheet's scope.
839
840         Reviewed by Dimitri Glazkov.
841
842         No new tests. (no change in functionality)
843
844         * bindings/generic/RuntimeEnabledFeatures.cpp:
845         (WebCore):
846         * bindings/generic/RuntimeEnabledFeatures.h:
847         (RuntimeEnabledFeatures):
848         (WebCore::RuntimeEnabledFeatures::styleScopedEnabled):
849         (WebCore::RuntimeEnabledFeatures::setStyleScopedEnabled):
850         * css/CSSStyleSelector.cpp:
851         (WebCore::CSSStyleSelector::determineScopingElement):
852         * html/HTMLStyleElement.cpp:
853         (WebCore::HTMLStyleElement::registerWithScopingNode):
854         (WebCore::HTMLStyleElement::unregisterWithScopingNode):
855         * html/HTMLStyleElement.idl:
856
857 2012-02-21  Alexander Pavlov  <apavlov@chromium.org>
858
859         Web Inspector: Audit rules to recommend unprefixing supported CSS properties
860         https://bugs.webkit.org/show_bug.cgi?id=78985
861
862         Reviewed by Pavel Feldman.
863
864         * inspector/front-end/AuditCategories.js:
865         (WebInspector.AuditCategories.PagePerformance.prototype.initialize):
866         * inspector/front-end/AuditRules.js:
867         (WebInspector.AuditRules.CSSRuleBase):
868         (WebInspector.AuditRules.CSSRuleBase.prototype.doRun.sheetsCallback):
869         (WebInspector.AuditRules.CSSRuleBase.prototype.doRun):
870         (WebInspector.AuditRules.CSSRuleBase.prototype._visitStyleSheet.sheetCallback):
871         (WebInspector.AuditRules.CSSRuleBase.prototype._visitStyleSheet):
872         (WebInspector.AuditRules.CSSRuleBase.prototype._visitRule):
873         (WebInspector.AuditRules.CSSRuleBase.prototype.visitStyleSheet):
874         (WebInspector.AuditRules.CSSRuleBase.prototype.didVisitStyleSheet):
875         (WebInspector.AuditRules.CSSRuleBase.prototype.visitRule):
876         (WebInspector.AuditRules.CSSRuleBase.prototype.didVisitRule):
877         (WebInspector.AuditRules.CSSRuleBase.prototype.visitProperty):
878         (WebInspector.AuditRules.VendorPrefixedCSSProperties):
879         (WebInspector.AuditRules.VendorPrefixedCSSProperties.prototype.didVisitStyleSheet):
880         (WebInspector.AuditRules.VendorPrefixedCSSProperties.prototype.visitRule):
881         (WebInspector.AuditRules.VendorPrefixedCSSProperties.prototype.didVisitRule):
882         (WebInspector.AuditRules.VendorPrefixedCSSProperties.prototype.visitProperty):
883         * inspector/front-end/ResourceUtils.js:
884
885 2012-02-22  Shinya Kawanaka  <shinyak@chromium.org>
886
887         Node::attach() should be after attaching children in Element::attach().
888         https://bugs.webkit.org/show_bug.cgi?id=79201
889
890         Reviewed by Hajime Morita.
891
892         In Element::attach(), Node::attach() is called before attaching children if a shaodw root exists.
893         This may cause O(N^2) problem in NodeRenderingContext.
894
895         No new tests. Existing tests should cover this.
896
897         * dom/Element.cpp:
898         (WebCore::Element::attach):
899
900 2012-02-22  Kenichi Ishibashi  <bashi@chromium.org>
901
902         Adding WebSocket per-frame DEFLATE extension
903         https://bugs.webkit.org/show_bug.cgi?id=77522
904
905         Add WebSocketDeflateFramer class which handles deflate-frame extension.
906         This class encapsulates WebSocketDeflater and WebSocketInflater classes,
907         which depend on zlib, so that WebSocketChannel is not necessary to aware
908         zlib dependency.
909
910         Reviewed by Kent Tamura.
911
912         Tests: http/tests/websocket/tests/hybi/compressed-control-frame.html
913                http/tests/websocket/tests/hybi/deflate-frame-comp-bit-onoff.html
914                http/tests/websocket/tests/hybi/deflate-frame-invalid-parameter.html
915                http/tests/websocket/tests/hybi/deflate-frame-parameter.html
916
917         * CMakeLists.txt: Added WebSocketDeflateFramer.(cpp|h)
918         * GNUmakefile.list.am: Ditto.
919         * Target.pri: Ditto.
920         * WebCore.gypi: Ditto.
921         * WebCore.vcproj/WebCore.vcproj: Ditto.
922         * WebCore.xcodeproj/project.pbxproj: Ditto.
923         * websockets/WebSocket.cpp:
924         (WebCore::WebSocket::didConnect): Set m_extensions.
925         * websockets/WebSocketChannel.cpp:
926         (WebCore::WebSocketChannel::connect): Add deflate-frame extension processor to WebSocketHanshake if deflate can use.
927         (WebCore::WebSocketChannel::fail): Call m_deflateFramer.didFail().
928         (WebCore::WebSocketChannel::processFrame): Decompress frames if needed.
929         (WebCore::WebSocketChannel::sendFrame): Compress frames if possible.
930         * websockets/WebSocketChannel.h:
931         * websockets/WebSocketDeflateFramer.cpp: Added.
932         (WebCore):
933         (WebSocketExtensionDeflateFrame):
934         (WebCore::WebSocketExtensionDeflateFrame::create):
935         (WebCore::WebSocketExtensionDeflateFrame::~WebSocketExtensionDeflateFrame):
936         (WebCore::WebSocketExtensionDeflateFrame::WebSocketExtensionDeflateFrame):
937         (WebCore::WebSocketExtensionDeflateFrame::handshakeString):
938         (WebCore::WebSocketExtensionDeflateFrame::processResponse):
939         (WebCore::DeflateResultHolder::DeflateResultHolder):
940         (WebCore::DeflateResultHolder::~DeflateResultHolder):
941         (WebCore::DeflateResultHolder::fail):
942         (WebCore::InflateResultHolder::InflateResultHolder):
943         (WebCore::InflateResultHolder::~InflateResultHolder):
944         (WebCore::InflateResultHolder::fail):
945         (WebCore::WebSocketDeflateFramer::WebSocketDeflateFramer):
946         (WebCore::WebSocketDeflateFramer::createExtensionProcessor):
947         (WebCore::WebSocketDeflateFramer::canDeflate):
948         (WebCore::WebSocketDeflateFramer::enableDeflate):
949         (WebCore::WebSocketDeflateFramer::deflate):
950         (WebCore::WebSocketDeflateFramer::resetDeflateContext):
951         (WebCore::WebSocketDeflateFramer::inflate):
952         (WebCore::WebSocketDeflateFramer::resetInflateContext):
953         (WebCore::WebSocketDeflateFramer::didFail):
954         * websockets/WebSocketDeflateFramer.h: Added.
955         (WebCore):
956         (DeflateResultHolder):
957         (WebCore::DeflateResultHolder::succeeded):
958         (WebCore::DeflateResultHolder::failureReason):
959         (InflateResultHolder):
960         (WebCore::InflateResultHolder::succeeded):
961         (WebCore::InflateResultHolder::failureReason):
962         (WebSocketDeflateFramer):
963         (WebCore::WebSocketDeflateFramer::enabled):
964
965 2012-02-22  Yuta Kitamura  <yutak@chromium.org>
966
967         Unreviewed, rolling out r108453.
968         http://trac.webkit.org/changeset/108453
969         https://bugs.webkit.org/show_bug.cgi?id=78549
970
971         Broke Chromium's webkit_unit_tests.
972
973         * WebCore.gypi:
974         * platform/graphics/chromium/cc/CCOcclusionTracker.cpp: Removed.
975         * platform/graphics/chromium/cc/CCOcclusionTracker.h: Removed.
976
977 2012-02-22  Zoltan Herczeg  <zherczeg@webkit.org>
978
979         [Qt] clipToImageBuffer assertion fix in debug mode on Qt.
980
981         Rubber stamped by Csaba Osztrogonác.
982
983         * platform/graphics/qt/GraphicsContextQt.cpp:
984         (WebCore::GraphicsContext::restorePlatformState):
985
986 2012-02-22  Adam Barth  <abarth@webkit.org>
987
988         [GTK] fast/frames/frame-dead-region.html crash
989         https://bugs.webkit.org/show_bug.cgi?id=79205
990
991         Unreviewed.
992
993         Apparently we're not supposed to call willDetachPage from
994         CachedFrame::destroy.  This call got added in
995         http://trac.webkit.org/changeset/108428, but it seems to cause a crash.
996
997         * loader/FrameLoader.cpp:
998         (WebCore::FrameLoader::closeAndRemoveChild):
999         (WebCore::FrameLoader::detachFromParent):
1000         * page/Frame.h:
1001         (WebCore::Frame::detachFromPage):
1002         * page/Page.cpp:
1003         (WebCore::Page::~Page):
1004
1005 2012-02-22  Adam Barth  <abarth@webkit.org>
1006
1007         Move Geolocation code into Modules/geolocation
1008         https://bugs.webkit.org/show_bug.cgi?id=79204
1009
1010         Reviewed by Hajime Morita.
1011
1012         There are still some dangling references into the Geolocation module,
1013         which I will clean up in a followup patch.
1014
1015         * CMakeLists.txt:
1016         * DerivedSources.make:
1017         * DerivedSources.pri:
1018         * GNUmakefile.list.am:
1019         * Modules/geolocation/Geolocation.cpp: Copied from Source/WebCore/page/Geolocation.cpp.
1020         * Modules/geolocation/Geolocation.h: Copied from Source/WebCore/page/Geolocation.h.
1021         * Modules/geolocation/Geolocation.idl: Copied from Source/WebCore/page/Geolocation.idl.
1022         * Modules/geolocation/GeolocationController.cpp: Copied from Source/WebCore/page/GeolocationController.cpp.
1023         * Modules/geolocation/GeolocationController.h: Copied from Source/WebCore/page/GeolocationController.h.
1024         * Modules/geolocation/GeolocationError.h: Copied from Source/WebCore/page/GeolocationError.h.
1025         * Modules/geolocation/GeolocationPosition.h: Copied from Source/WebCore/page/GeolocationPosition.h.
1026         * Modules/geolocation/Geoposition.h: Copied from Source/WebCore/page/Geoposition.h.
1027         * Modules/geolocation/Geoposition.idl: Copied from Source/WebCore/page/Geoposition.idl.
1028         * Modules/geolocation/PositionCallback.h: Copied from Source/WebCore/page/PositionCallback.h.
1029         * Modules/geolocation/PositionCallback.idl: Copied from Source/WebCore/page/PositionCallback.idl.
1030         * Modules/geolocation/PositionError.h: Copied from Source/WebCore/page/PositionError.h.
1031         * Modules/geolocation/PositionError.idl: Copied from Source/WebCore/page/PositionError.idl.
1032         * Modules/geolocation/PositionErrorCallback.h: Copied from Source/WebCore/page/PositionErrorCallback.h.
1033         * Modules/geolocation/PositionErrorCallback.idl: Copied from Source/WebCore/page/PositionErrorCallback.idl.
1034         * Modules/geolocation/PositionOptions.h: Copied from Source/WebCore/page/PositionOptions.h.
1035         * Target.pri:
1036         * WebCore.gypi:
1037         * WebCore.vcproj/WebCore.vcproj:
1038         * WebCore.xcodeproj/project.pbxproj:
1039         * page/Geolocation.cpp: Removed.
1040         * page/Geolocation.h: Removed.
1041         * page/Geolocation.idl: Removed.
1042         * page/GeolocationController.cpp: Removed.
1043         * page/GeolocationController.h: Removed.
1044         * page/GeolocationError.h: Removed.
1045         * page/GeolocationPosition.h: Removed.
1046         * page/Geoposition.h: Removed.
1047         * page/Geoposition.idl: Removed.
1048         * page/PositionCallback.h: Removed.
1049         * page/PositionCallback.idl: Removed.
1050         * page/PositionError.h: Removed.
1051         * page/PositionError.idl: Removed.
1052         * page/PositionErrorCallback.h: Removed.
1053         * page/PositionErrorCallback.idl: Removed.
1054         * page/PositionOptions.h: Removed.
1055
1056 2012-02-22  Frederik Gladhorn  <frederik.gladhorn@nokia.com>
1057
1058         [gtk] Accessibility: use find funtion in vector instead of for.
1059         https://bugs.webkit.org/show_bug.cgi?id=77878
1060
1061         Reviewed by Hajime Morita.
1062
1063         Minor cleanup, use the find function from vector.
1064
1065         * accessibility/gtk/WebKitAccessibleWrapperAtk.cpp:
1066         (webkitAccessibleGetIndexInParent):
1067
1068 2012-02-22  Ryosuke Niwa  <rniwa@webkit.org>
1069
1070         Remove the remaining uses of CSSStyleDeclaration in Editor
1071         https://bugs.webkit.org/show_bug.cgi?id=78939
1072
1073         Reviewed by Enrica Casucci.
1074
1075         Changed the argument types of shouldApplyStyle, applyParagraphStyle, applyStyleToSelection,
1076         applyParagraphStyleToSelection, and computeAndSetTypingStyle in Editor from CSSStyleDeclaration
1077         to StylePropertySet.
1078
1079         * WebCore.exp.in:
1080         * WebCore.xcodeproj/project.pbxproj:
1081         * editing/Editor.cpp:
1082         (WebCore::Editor::applyStyle):
1083         (WebCore::Editor::shouldApplyStyle):
1084         (WebCore::Editor::applyParagraphStyle):
1085         (WebCore::Editor::applyStyleToSelection):
1086         (WebCore::Editor::applyParagraphStyleToSelection):
1087         (WebCore::Editor::setBaseWritingDirection):
1088         (WebCore::Editor::computeAndSetTypingStyle):
1089         * editing/Editor.h:
1090         (WebCore):
1091         (Editor):
1092         * editing/EditorCommand.cpp:
1093         (WebCore::applyCommandToFrame):
1094         (WebCore::executeApplyParagraphStyle):
1095         (WebCore::executeMakeTextWritingDirectionLeftToRight):
1096         (WebCore::executeMakeTextWritingDirectionNatural):
1097         (WebCore::executeMakeTextWritingDirectionRightToLeft):
1098         * loader/EmptyClients.h:
1099         (WebCore::EmptyEditorClient::shouldApplyStyle):
1100         * page/DragController.cpp:
1101         (WebCore::DragController::concludeEditDrag):
1102         * page/EditorClient.h:
1103         (WebCore):
1104         (EditorClient):
1105
1106 2012-02-22  Dana Jansens  <danakj@chromium.org>
1107
1108         [chromium] Cull quads outside of the scissoring damage rect
1109         https://bugs.webkit.org/show_bug.cgi?id=79181
1110
1111         Reviewed by James Robinson.
1112
1113         Quads outside of the partial swap cause us to execute GL operations
1114         that actually use a fair amount of CPU time (enough to affect power
1115         usage). Here we cull quads by only keeping their intersection
1116         with the damage rect used for partial swap.
1117
1118         Unit test: CCQuadCuller.cpp
1119
1120         * platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
1121         (WebCore::CCLayerTreeHostImpl::optimizeRenderPasses):
1122         * platform/graphics/chromium/cc/CCQuadCuller.cpp:
1123         (WebCore::CCQuadCuller::cullOccludedQuads):
1124         * platform/graphics/chromium/cc/CCQuadCuller.h:
1125         (CCQuadCuller):
1126         * platform/graphics/chromium/cc/CCRenderPass.cpp:
1127         (WebCore::CCRenderPass::optimizeQuads):
1128         * platform/graphics/chromium/cc/CCRenderPass.h:
1129         (CCRenderPass):
1130
1131 2012-02-21  Dana Jansens  <danakj@chromium.org>
1132
1133         [Chromium] New CCOcclusionTracker class with tests
1134         https://bugs.webkit.org/show_bug.cgi?id=78549
1135
1136         Reviewed by James Robinson.
1137
1138         Adds a CCOcclusionTrackerBase template class that is able to track occlusion
1139         of layers while traversing the layer tree from front-to-back, with typedefed
1140         versions for the main and impl threads.
1141
1142         At each step of the front-to-back traversal, the class should be notified of
1143         changes to the current render target, and when done working with a layer, the
1144         layer is added the tracked occlusion.
1145
1146         The class provides tests for checking if a rect in content space
1147         for a layer/surface is occluded by others in front of it.
1148
1149         Unit tests: CCOcclusionTrackerTest.cpp
1150
1151         * WebCore.gypi:
1152         * platform/graphics/chromium/cc/CCOcclusionTracker.cpp: Added.
1153         (WebCore):
1154         (WebCore::::enterTargetRenderSurface):
1155         (WebCore::::finishedTargetRenderSurface):
1156         (WebCore::transformSurfaceOpaqueRegion):
1157         (WebCore::::leaveToTargetRenderSurface):
1158         (WebCore::contentToScreenSpaceTransform):
1159         (WebCore::contentToTargetSurfaceTransform):
1160         (WebCore::computeOcclusionBehindLayer):
1161         (WebCore::::markOccludedBehindLayer):
1162         (WebCore::testContentRectOccluded):
1163         (WebCore::::occluded):
1164         (WebCore::::surfaceOccluded):
1165         (WebCore::rectSubtractRegion):
1166         (WebCore::computeUnoccludedContentRect):
1167         (WebCore::::unoccludedContentRect):
1168         (WebCore::::surfaceUnoccludedContentRect):
1169         (WebCore::::currentOcclusionInScreenSpace):
1170         (WebCore::::currentOcclusionInTargetSurface):
1171         * platform/graphics/chromium/cc/CCOcclusionTracker.h: Added.
1172         (WebCore):
1173         (CCOcclusionTrackerBase):
1174         (WebCore::CCOcclusionTrackerBase::CCOcclusionTrackerBase):
1175         (StackObject):
1176
1177 2012-02-21  Andreas Kling  <awesomekling@apple.com>
1178
1179         Cache <font face> family lists in CSSValuePool.
1180         <http://webkit.org/b/79195>
1181
1182         Reviewed by Antti Koivisto.
1183
1184         HTMLFontElements with "face" attributes are very common in legacy web content.
1185         Add a String->CSSValue cache for these in CSSValuePool and use it to avoid
1186         reparsing and recreating duplicate font face values.
1187
1188         This knocks 20ms (~1.5%) worth of samples off of the Moz page cycler on my system.
1189
1190         * css/CSSParser.cpp:
1191         (WebCore::CSSParser::parseFontFaceValue):
1192         * css/CSSParser.h:
1193         * css/CSSValuePool.cpp:
1194         (WebCore::CSSValuePool::createFontFaceValue):
1195         * css/CSSValuePool.h:
1196         * html/HTMLFontElement.cpp:
1197         (WebCore::HTMLFontElement::collectStyleForAttribute):
1198
1199 2012-02-21  Adam Barth  <abarth@webkit.org>
1200
1201         Separate the implementation of registerProtocolHandler from Navigator.cpp
1202         https://bugs.webkit.org/show_bug.cgi?id=78945
1203
1204         Reviewed by Eric Seidel.
1205
1206         The implementation of registerProtocolHandler needlessly complicates
1207         the implementation of Navigator.cpp.  In principle,
1208         registerProtocolHandler (and possibly registerContentHandler, when we
1209         implement that feature) could be its own module, but that seems like
1210         overkill for one or two files.
1211
1212         * CMakeLists.txt:
1213         * GNUmakefile.list.am:
1214         * Target.pri:
1215         * WebCore.gypi:
1216         * WebCore.vcproj/WebCore.vcproj:
1217         * WebCore.xcodeproj/project.pbxproj:
1218         * page/Navigator.cpp:
1219         (WebCore):
1220         * page/Navigator.h:
1221         (Navigator):
1222         * page/Navigator.idl:
1223
1224 2012-02-21  MORITA Hajime  <morrita@google.com>
1225
1226         HasIDFlag and HasClassFlag can be removed.
1227         https://bugs.webkit.org/show_bug.cgi?id=77861
1228
1229         Reviewed by Andreas Kling.
1230
1231         Replaced HasIDFlag and HasClassFlag with a check against
1232         ElementAttributeData. It looks these flags (originally bitfields)
1233         were legacy of ancient era, where we didn't cache @id and @class
1234         values and needed a hash lookup for each check.
1235
1236         No new tests. No behavioral change.
1237
1238         * dom/Element.cpp:
1239         (WebCore::Element::idAttributeChanged):
1240         * dom/Element.h:
1241         (WebCore::Element::hasID):
1242         (WebCore):
1243         (WebCore::Element::hasClass):
1244         (WebCore::Node::hasID):
1245         (WebCore::Node::hasClass):
1246         * dom/ElementAttributeData.h:
1247         (WebCore::ElementAttributeData::hasID):
1248         (WebCore::ElementAttributeData::hasClass):
1249         (ElementAttributeData):
1250         * dom/Node.h:
1251         (Node):
1252         (WebCore::nodeStyleChangeShift):
1253         * dom/StyledElement.cpp:
1254         (WebCore::StyledElement::classAttributeChanged):
1255
1256 2012-02-21  Matthew Delaney  <mdelaney@apple.com>
1257
1258         2D Canvas setTransform makes unnecessary matrix mults
1259         https://bugs.webkit.org/show_bug.cgi?id=79190
1260
1261         Reviewed by Dan Bernstein.
1262
1263         No new tests - plenty of current tests using setTransform.
1264
1265         * html/canvas/CanvasRenderingContext2D.cpp:
1266         (WebCore::CanvasRenderingContext2D::setTransform):
1267
1268 2012-02-21  MORITA Hajime <morrita@google.com>
1269
1270         INPUT_SPEECH should be implemented as a PageSupplement.
1271         https://bugs.webkit.org/show_bug.cgi?id=79051
1272
1273         Turned SpeechInput to a PageSupplement.
1274
1275         Reviewed by Adam Barth.
1276
1277         No new tests. No behavior change.
1278
1279         * html/shadow/TextControlInnerElements.cpp:
1280         (WebCore::InputFieldSpeechButtonElement::speechInput):
1281         (WebCore::InputFieldSpeechButtonElement::attach):
1282         * page/Page.cpp:
1283         (WebCore::Page::Page):
1284         (WebCore::Page::PageClients::PageClients):
1285         * page/Page.h:
1286         (WebCore):
1287         (PageClients):
1288         (Page):
1289         * page/SpeechInput.cpp:
1290         (WebCore::SpeechInput::supplementName):
1291         (WebCore):
1292         (WebCore::provideSpeechInputTo):
1293         * page/SpeechInput.h:
1294         (SpeechInput):
1295         (WebCore::SpeechInput::from):
1296         * page/SpeechInputClient.h:
1297         (WebCore):
1298
1299 2012-02-21  Alexandre Elias  <aelias@google.com>
1300
1301         [chromium] Add three small zoom gesture features
1302         https://bugs.webkit.org/show_bug.cgi?id=74216
1303
1304         Reviewed by James Robinson.
1305
1306         1. Support panning around with two fingers.
1307         2. When double-tap zooming, issue the commit at final/scroll scale as
1308         early as possible.
1309         3. When pinch zooming out, issue a commit at minimum scale to avoid
1310         showing checkerboard.
1311
1312         Added test for panning to CCLayerTreeHostImplTest::pinchGesture.
1313         (The other features are heuristics whose exact behavior we don't need
1314         to lock in with a test.)
1315
1316         * platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
1317         (WebCore::CCLayerTreeHostImpl::startPageScaleAnimation):
1318         (WebCore::CCLayerTreeHostImpl::pinchGestureBegin):
1319         (WebCore::CCLayerTreeHostImpl::pinchGestureUpdate):
1320         (WebCore::CCLayerTreeHostImpl::computeDoubleTapZoomDeltas):
1321         (WebCore::CCLayerTreeHostImpl::computePinchZoomDeltas):
1322         (WebCore::CCLayerTreeHostImpl::makeScrollAndScaleSet):
1323         (WebCore::CCLayerTreeHostImpl::processScrollDeltas):
1324         * platform/graphics/chromium/cc/CCLayerTreeHostImpl.h:
1325
1326 2012-02-21  Filip Pizlo  <fpizlo@apple.com>
1327
1328         JSC should be a triple-tier VM
1329         https://bugs.webkit.org/show_bug.cgi?id=75812
1330         <rdar://problem/10079694>
1331
1332         Reviewed by Gavin Barraclough.
1333         
1334         No new tests, because there is no change in behavior.
1335
1336         * CMakeLists.txt:
1337
1338 2012-02-21  Kentaro Hara  <haraken@chromium.org>
1339
1340         NavigatorMediaStream.idl defines an interface for NavigatorGamepad
1341         https://bugs.webkit.org/show_bug.cgi?id=79152
1342
1343         Reviewed by Adam Barth.
1344
1345         Fixed a typo: NavigatorGamepad => NavigatorMediaStream
1346
1347         This typo fix just changes the name of generated files:
1348
1349         - V8NavigatorGamepad.h => V8NavigatorMediaStream.h
1350         - V8NavigatorGamepad.cpp => V8NavigatorMediaStream.cpp
1351
1352         The reason why the typo has not caused any serious build issues is that
1353         the generate files for supplemental interfaces are "empty" and not important.
1354         They just exist to control makefile dependencies.
1355
1356         No tests. No change in behavior.
1357
1358         * mediastream/NavigatorMediaStream.idl:
1359
1360 2012-02-21  Daniel Sievers  <sievers@chromium.org>
1361
1362         [Chromium] Fix compositor setting color uniforms incorrectly for solid color quads.
1363         https://bugs.webkit.org/show_bug.cgi?id=76017
1364
1365         Reviewed by James Robinson.
1366
1367         * platform/graphics/chromium/LayerRendererChromium.cpp:
1368         (WebCore::LayerRendererChromium::drawSolidColorQuad):
1369
1370 2012-02-21  Max Vujovic  <mvujovic@adobe.com>
1371
1372         getCTM() on SVG root element with borders, paddings, and viewbox returns incorrect values
1373         https://bugs.webkit.org/show_bug.cgi?id=78631
1374
1375         Reviewed by Eric Seidel.
1376
1377         SVGSVGElement::currentViewportSize was returning the size of the SVG viewport plus CSS
1378         borders and paddings, causing the CTM calculation to be off.
1379
1380         Test: svg/dom/SVGLocatable-getCTM-svg-root.html
1381
1382         * svg/SVGSVGElement.cpp:
1383         (WebCore::SVGSVGElement::currentViewportSize):
1384
1385             SVGSVGElement::currentViewportSize now uses the contentBoxRect instead of the frameRect.
1386             The contentBoxRect corresponds to the SVG viewport and does not include borders and
1387             paddings.
1388
1389 2012-02-21  Robin Cao  <robin.cao@torchmobile.com.cn>
1390
1391         [BlackBerry] Upstream Icon class in platform/graphics/blackberry
1392         https://bugs.webkit.org/show_bug.cgi?id=79088
1393
1394         Reviewed by Antonio Gomes.
1395
1396         Initial upstreaming, no new tests.
1397
1398         * platform/graphics/blackberry/IconBlackBerry.cpp: Added.
1399         (WebCore):
1400         (WebCore::Icon::~Icon):
1401         (WebCore::Icon::paint):
1402         (WebCore::Icon::createIconForFiles):
1403
1404 2012-02-21  Kenichi Ishibashi  <bashi@chromium.org>
1405
1406         Rename "reserved1" flag of WebSocketFrame to compress
1407         https://bugs.webkit.org/show_bug.cgi?id=79187
1408
1409         WebSocket deflate-frame extension draft specification defines COMP bit.
1410         http://tools.ietf.org/html/draft-tyoshino-hybi-websocket-perframe-deflate-05#page-11
1411
1412         Reviewed by Kent Tamura.
1413
1414         No new tests. http/tests/websocket/tests/hybi/reserved-bits.html is revised to follow the change.
1415
1416         * websockets/WebSocketChannel.cpp:
1417         (WebCore):
1418         (WebCore::WebSocketChannel::parseFrame): "reserved1" renamed "compress".
1419         (WebCore::WebSocketChannel::processFrame): Removed reserved1 flag check.
1420         (WebCore::makeFrameData):
1421         (WebCore::WebSocketChannel::sendFrame):
1422         * websockets/WebSocketFrame.h: "reserved1" flag renamed "compress".
1423         (WebCore::WebSocketFrame::WebSocketFrame):
1424         (WebSocketFrame):
1425
1426 2012-02-21  Yael Aharon  <yael.aharon@nokia.com>
1427
1428         [Texmap] Move all TextureMapper related files to graphics/texmap
1429         https://bugs.webkit.org/show_bug.cgi?id=79141
1430
1431         Reviewed by Martin Robinson.
1432
1433         Move TextureMaooerGL and TextureMapperShaderManager files to graphics/texmap.
1434         No new tests. 
1435
1436         * GNUmakefile.list.am:
1437         * Target.pri:
1438         * WebCore.gypi:
1439         * platform/graphics/qt/GraphicsContext3DQt.cpp
1440         * platform/graphics/opengl/TextureMapperGL.cpp: Removed.
1441         * platform/graphics/opengl/TextureMapperGL.h: Removed.
1442         * platform/graphics/opengl/TextureMapperShaderManager.cpp: Removed.
1443         * platform/graphics/opengl/TextureMapperShaderManager.h: Removed.
1444         * platform/graphics/texmap/TextureMapperGL.cpp: Copied from Source/WebCore/platform/graphics/opengl/TextureMapperGL.cpp.
1445         * platform/graphics/texmap/TextureMapperGL.h: Copied from Source/WebCore/platform/graphics/opengl/TextureMapperGL.h.
1446         * platform/graphics/texmap/TextureMapperShaderManager.cpp: Copied from Source/WebCore/platform/graphics/opengl/TextureMapperShaderManager.cpp.
1447         * platform/graphics/texmap/TextureMapperShaderManager.h: Copied from Source/WebCore/platform/graphics/opengl/TextureMapperShaderManager.h.
1448
1449 2012-02-20  MORITA Hajime  <morrita@google.com>
1450
1451         MEDIA_STREAM should be implemented as a PageSupplement.
1452         https://bugs.webkit.org/show_bug.cgi?id=79050
1453
1454         Reviewed by Adam Barth.
1455
1456         Added UserMediaController which implements PageSupplement. This
1457         controller mediates WebCore-to-client communication and lifecycle
1458         management. Then pushed UserMediaController out as a
1459         PageSupplement module.
1460
1461         No new tests. No behavior change.
1462
1463         * WebCore.gypi:
1464         * GNUmakefile.list.am:
1465         * mediastream/NavigatorMediaStream.cpp:
1466         (WebCore::NavigatorMediaStream::webkitGetUserMedia):
1467         * mediastream/UserMediaClient.h:
1468         (WebCore):
1469         * mediastream/UserMediaController.cpp: Added.
1470         (WebCore):
1471         (WebCore::UserMediaController::supplementName):
1472         (WebCore::UserMediaController::UserMediaController):
1473         (WebCore::UserMediaController::~UserMediaController):
1474         (WebCore::UserMediaController::create):
1475         (WebCore::provideUserMediaTo):
1476         * mediastream/UserMediaController.h: Added.
1477         (WebCore):
1478         (UserMediaController):
1479         (WebCore::UserMediaController::client):
1480         (WebCore::UserMediaController::from):
1481         (WebCore::UserMediaController::requestUserMedia):
1482         (WebCore::UserMediaController::cancelUserMediaRequest):
1483         * mediastream/UserMediaRequest.cpp:
1484         (WebCore::UserMediaRequest::create):
1485         (WebCore::UserMediaRequest::UserMediaRequest):
1486         (WebCore::UserMediaRequest::didCompleteQuery):
1487         (WebCore::UserMediaRequest::contextDestroyed):
1488         * mediastream/UserMediaRequest.h:
1489         (WebCore):
1490         (UserMediaRequest):
1491         * page/Page.cpp:
1492         (WebCore::Page::Page):
1493         (WebCore::Page::~Page):
1494         (WebCore::Page::PageClients::PageClients):
1495         * page/Page.h:
1496         (WebCore):
1497         (PageClients):
1498         (Page):
1499
1500 2012-02-21  James Robinson  <jamesr@chromium.org>
1501
1502         Node::isContentEditable should only update styles, not layout
1503         https://bugs.webkit.org/show_bug.cgi?id=78637
1504
1505         Reviewed by Ryosuke Niwa.
1506
1507         isContentEditable depends on knowing the node's current computed style, so it has to update styles if they are
1508         out of date.  It does not depend on knowing any layout-derived properties, however, so updating layout is just a
1509         waste of time.
1510
1511         Behavior is covered by existing layout tests, primarily in editing/
1512
1513         * dom/Node.cpp:
1514         (WebCore::Node::isContentEditable):
1515         (WebCore::Node::isContentRichlyEditable):
1516
1517 2012-02-21  James Robinson  <jamesr@chromium.org>
1518
1519         Partially revert r108418 - move allowEventDispatch() call back to where it used to be.
1520
1521         Rubber-stamped by Ryosuke Niwa.
1522
1523         Tested by fast/text/find-layout-crash.html
1524
1525         * dom/ContainerNode.cpp:
1526         (WebCore::ContainerNode::removeChildren):
1527
1528 2012-02-21  Anders Carlsson  <andersca@apple.com>
1529
1530         Background jitters on pages with background-attachment: fixed
1531         https://bugs.webkit.org/show_bug.cgi?id=79182
1532
1533         Reviewed by Dan Bernstein.
1534
1535         Make sure to update the main frame scroll position before updating the scrolling layer.
1536         This also fixes a (purely theoretical) bug where we wouldn't be updating the main frame
1537         position if the main frame didn't have a scroll layer.
1538
1539         * page/scrolling/ScrollingCoordinator.cpp:
1540         (WebCore::ScrollingCoordinator::updateMainFrameScrollPositionAndScrollLayerPosition):
1541
1542 2012-02-21  Dana Jansens  <danakj@chromium.org>
1543
1544         Early-out in Region::unite() for adding an empty region.
1545         https://bugs.webkit.org/show_bug.cgi?id=79174
1546
1547         Reviewed by Anders Carlsson.
1548
1549         * platform/graphics/Region.cpp:
1550         (WebCore::Region::unite):
1551
1552 2012-02-21  Dana Jansens  <danakj@chromium.org>
1553
1554         [chromium] Painting a layer clears opaque rect in untouched tiles
1555         https://bugs.webkit.org/show_bug.cgi?id=79157
1556
1557         Reviewed by James Robinson.
1558
1559         When painting a tiled layer, we would throw away the saved opaque rect
1560         for any tiles that were not part of the paint. So now we check
1561         if we are able to save the existing saved opaque rect in a more
1562         proper way:
1563         1. If any pixels of the saved rect are painted non-opaque, we replace
1564         the saved rect.
1565         2. If an opaque rect is drawn outside of the saved rect, we replace
1566         the saved rect.
1567
1568         Unit test: TiledLayerChromiumTest.cpp
1569
1570         * platform/graphics/chromium/TiledLayerChromium.cpp:
1571         (WebCore::TiledLayerChromium::prepareToUpdateTiles):
1572         (WebCore::TiledLayerChromium::addSelfToOccludedScreenSpace):
1573
1574 2012-02-21  Raymond Toy  <rtoy@google.com>
1575
1576         Small typo in AudioPannerNode.cpp
1577         https://bugs.webkit.org/show_bug.cgi?id=75890
1578
1579         Change to check elevation as intended instead of azimuth.
1580         
1581         Reviewed by Chris Rogers.
1582
1583         No new tests for correction of typo.
1584
1585         * webaudio/AudioPannerNode.cpp:
1586         (WebCore::AudioPannerNode::getAzimuthElevation):
1587
1588 2012-02-21  Adam Barth  <abarth@webkit.org>
1589
1590         Frame and Navigator shouldn't need to worry about Geolocation
1591         https://bugs.webkit.org/show_bug.cgi?id=78860
1592
1593         Reviewed by Eric Seidel.
1594
1595         This patch removes some Geolocation-specific code from Frame and
1596         Navigator in favor of our new supplemental module mechanism.  We're
1597         still refining the module system, but we seem to be converging on a
1598         simple Observer/Supplement design.
1599
1600         In a future patch, I'll move the remaining Geolocation-related files in
1601         WebCore into Modules/geolocation.  This patch appears to be the first
1602         patch that introduces a module used by all the various build systems,
1603         which is why there's a bit more build system overhead than usual.
1604
1605         * Modules/geolocation: Added.
1606         * Modules/geolocation/NavigatorGeolocation.cpp: Added.
1607         (WebCore):
1608         (WebCore::NavigatorGeolocation::NavigatorGeolocation):
1609         (WebCore::NavigatorGeolocation::~NavigatorGeolocation):
1610         (WebCore::NavigatorGeolocation::pageDestroyed):
1611         (WebCore::NavigatorGeolocation::from):
1612         (WebCore::NavigatorGeolocation::geolocation):
1613         * Modules/geolocation/NavigatorGeolocation.h: Added.
1614         (WebCore):
1615         (NavigatorGeolocation):
1616         * Modules/geolocation/NavigatorGeolocation.idl: Added.
1617             - I've temporarily disabled this API for GObject because it generates
1618               a strange compile error.  Once I land this patch, I'll spend some
1619               more time fixing the compile error.
1620         * page/DOMWindow.cpp:
1621         (WebCore):
1622         * page/DOMWindow.h:
1623         (DOMWindow):
1624         * page/Frame.cpp:
1625         (WebCore::Frame::pageDestroyed):
1626         (WebCore::Frame::transferChildFrameToNewDocument):
1627         * page/FrameDestructionObserver.cpp:
1628         (WebCore::FrameDestructionObserver::pageDestroyed):
1629         (WebCore):
1630         * page/FrameDestructionObserver.h:
1631         (FrameDestructionObserver):
1632         * page/Navigator.cpp:
1633         (WebCore):
1634         * page/Navigator.h:
1635         (WebCore):
1636         (Navigator):
1637         * page/Navigator.idl:
1638
1639 2012-02-21  Shawn Singh  <shawnsingh@chromium.org>
1640
1641         [chromium] Refactor CCLayerTreeHostCommon: merge scattered setTargetRenderSurface logic
1642         https://bugs.webkit.org/show_bug.cgi?id=78936
1643
1644         Reviewed by James Robinson.
1645
1646         No change in behavior, the code moved around already covered by existing tests.
1647
1648         In calculateDrawTransformsAndVisibility(), there are two separate
1649         if-else statements where setTargetRenderSurface logic is
1650         performed, and this makes the code less readable and more error
1651         prone. This patch merges the logic, removing the redundant if-else
1652         statements.
1653
1654         This code also merges one other set of if-statements that are
1655         equivalent, if (layer->parent()) and if (layer!=rootLayer).
1656
1657         * platform/graphics/chromium/LayerChromium.cpp:
1658         (WebCore::LayerChromium::createRenderSurface):
1659         * platform/graphics/chromium/cc/CCLayerImpl.cpp:
1660         (WebCore::CCLayerImpl::createRenderSurface):
1661         * platform/graphics/chromium/cc/CCLayerTreeHostCommon.cpp:
1662         (WebCore::calculateDrawTransformsAndVisibilityInternal):
1663
1664 2012-02-21  Kentaro Hara  <haraken@chromium.org>
1665
1666         Remove FIXME from resolve-supplemental.pl
1667         https://bugs.webkit.org/show_bug.cgi?id=79160
1668
1669         Reviewed by Adam Barth.
1670
1671         The IDL attribute checker has been enabled in all build systems.
1672         This patch removes FIXME in resolve-supplemental.pl.
1673         Also, this patch improves a comment in IDLAttributes.txt.
1674
1675         No tests. No change in behavior.
1676
1677         * bindings/scripts/IDLAttributes.txt:
1678         * bindings/scripts/resolve-supplemental.pl:
1679
1680 2012-02-21  Emil A Eklund  <eae@chromium.org>
1681
1682         Add FractionalLayoutRect for sub-pixel layout
1683         https://bugs.webkit.org/show_bug.cgi?id=78924
1684
1685         Reviewed by Eric Seidel.
1686
1687         Add FractionalLayoutUnit version of Rect class. Uses FractionalLayoutPoint
1688         and FractionalLayoutSize internally.
1689
1690         Also add conversions to int/float versions of same.
1691
1692         No new tests.
1693
1694         * GNUmakefile.list.am:
1695         * WebCore.vcproj/WebCore.vcproj:
1696         * WebCore.xcodeproj/project.pbxproj:
1697         * platform/graphics/FloatRect.cpp:
1698         (WebCore::FloatRect::FloatRect):
1699         (WebCore):
1700         * platform/graphics/FloatRect.h:
1701         (WebCore):
1702         (FloatRect):
1703         * platform/graphics/FractionalLayoutRect.cpp: Added.
1704         (WebCore):
1705         (WebCore::FractionalLayoutRect::FractionalLayoutRect):
1706         (WebCore::FractionalLayoutRect::intersects):
1707         (WebCore::FractionalLayoutRect::contains):
1708         (WebCore::FractionalLayoutRect::intersect):
1709         (WebCore::FractionalLayoutRect::unite):
1710         (WebCore::FractionalLayoutRect::uniteIfNonZero):
1711         (WebCore::FractionalLayoutRect::scale):
1712         (WebCore::unionRect):
1713         (WebCore::enclosingIntRect):
1714         (WebCore::enclosingFractionalLayoutRect):
1715         (WebCore::pixelSnappedIntRect):
1716         * platform/graphics/FractionalLayoutRect.h: Added.
1717         (WebCore):
1718         (FractionalLayoutRect):
1719         (WebCore::FractionalLayoutRect::FractionalLayoutRect):
1720         (WebCore::FractionalLayoutRect::location):
1721         (WebCore::FractionalLayoutRect::size):
1722         (WebCore::FractionalLayoutRect::setLocation):
1723         (WebCore::FractionalLayoutRect::setSize):
1724         (WebCore::FractionalLayoutRect::x):
1725         (WebCore::FractionalLayoutRect::y):
1726         (WebCore::FractionalLayoutRect::maxX):
1727         (WebCore::FractionalLayoutRect::maxY):
1728         (WebCore::FractionalLayoutRect::width):
1729         (WebCore::FractionalLayoutRect::height):
1730         (WebCore::FractionalLayoutRect::setX):
1731         (WebCore::FractionalLayoutRect::setY):
1732         (WebCore::FractionalLayoutRect::setWidth):
1733         (WebCore::FractionalLayoutRect::setHeight):
1734         (WebCore::FractionalLayoutRect::isEmpty):
1735         (WebCore::FractionalLayoutRect::center):
1736         (WebCore::FractionalLayoutRect::move):
1737         (WebCore::FractionalLayoutRect::moveBy):
1738         (WebCore::FractionalLayoutRect::expand):
1739         (WebCore::FractionalLayoutRect::contract):
1740         (WebCore::FractionalLayoutRect::shiftXEdgeTo):
1741         (WebCore::FractionalLayoutRect::shiftMaxXEdgeTo):
1742         (WebCore::FractionalLayoutRect::shiftYEdgeTo):
1743         (WebCore::FractionalLayoutRect::shiftMaxYEdgeTo):
1744         (WebCore::FractionalLayoutRect::minXMinYCorner):
1745         (WebCore::FractionalLayoutRect::maxXMinYCorner):
1746         (WebCore::FractionalLayoutRect::minXMaxYCorner):
1747         (WebCore::FractionalLayoutRect::maxXMaxYCorner):
1748         (WebCore::FractionalLayoutRect::contains):
1749         (WebCore::FractionalLayoutRect::inflateX):
1750         (WebCore::FractionalLayoutRect::inflateY):
1751         (WebCore::FractionalLayoutRect::inflate):
1752         (WebCore::FractionalLayoutRect::transposedRect):
1753         (WebCore::FractionalLayoutRect::infiniteRect):
1754         (WebCore::intersection):
1755         (WebCore::unionRect):
1756         (WebCore::operator==):
1757         (WebCore::operator!=):
1758         * platform/graphics/IntRect.cpp:
1759         (WebCore::IntRect::IntRect):
1760         (WebCore):
1761         * platform/graphics/IntRect.h:
1762         (WebCore):
1763         (IntRect):
1764
1765 2012-02-21  James Robinson  <jamesr@chromium.org>
1766
1767         Enable ScrollingCoordinator in chromium whenever compositing is enabled
1768         https://bugs.webkit.org/show_bug.cgi?id=79165
1769
1770         Reviewed by Adam Barth.
1771
1772         As the title says.
1773
1774         * page/scrolling/chromium/ScrollingCoordinatorChromium.cpp:
1775         (WebCore::ScrollingCoordinator::frameViewHorizontalScrollbarLayerDidChange):
1776         (WebCore::ScrollingCoordinator::frameViewVerticalScrollbarLayerDidChange):
1777         (WebCore::ScrollingCoordinator::setScrollLayer):
1778         (WebCore::ScrollingCoordinator::setNonFastScrollableRegion):
1779         (WebCore::ScrollingCoordinator::setScrollParameters):
1780         (WebCore::ScrollingCoordinator::setWheelEventHandlerCount):
1781         (WebCore::ScrollingCoordinator::setShouldUpdateScrollLayerPositionOnMainThread):
1782             Remove ASSERT_NOT_REACHED()ed from these functions, they are now expected to be called but do nothing.
1783         * rendering/RenderLayerBacking.cpp:
1784         (WebCore::RenderLayerBacking::RenderLayerBacking):
1785             Guard a mac-specific piece of code in #if PLATFORM(MAC). This code already has a FIXME.
1786         * rendering/RenderLayerCompositor.cpp:
1787         (WebCore::shouldCompositeOverflowControls):
1788             Make coordinatesScroll..() sufficient but not necessary for compositing overflow controls. In chromium, we
1789             want to composite overflow controls even for FrameViews that we aren't coordinating via the
1790             ScrollingCoordinator.
1791
1792 2012-02-21  Adam Klein  <adamk@chromium.org>
1793
1794         Setting innerText causes DOMSubtreeModified to be dispatched too early
1795         https://bugs.webkit.org/show_bug.cgi?id=79140
1796
1797         Reviewed by Ryosuke Niwa.
1798
1799         Followup to r108152: move children change notifications later in
1800         ContainerNode::removeChildren(), thus making sure Node::inDocument()
1801         is in the correct state when we call into script.
1802
1803         Tests: fast/dom/getElementById-consistency3.html
1804                fast/dom/getElementById-consistency4.html
1805                fast/dom/getElementById-consistency5.html
1806
1807         * dom/ContainerNode.cpp:
1808         (WebCore::ContainerNode::removeChildren):
1809
1810 2012-02-15  Ryosuke Niwa  <rniwa@webkit.org>
1811
1812         Assertion failure in TextIterator::handleTextBox
1813         https://bugs.webkit.org/show_bug.cgi?id=78530
1814
1815         Reviewed by Eric Seidel.
1816
1817         The assertion failure was caused by handleTextNodeFirstLetter's updating m_text without clearing
1818         m_sortedTextBoxesPosition. Re-structured handleTextNode so that we always reset m_sortedTextBoxesPosition
1819         when we have a first-letter.
1820
1821         Test: editing/text-iterator/rtl-first-letter-text-iterator-crash.html
1822
1823         * editing/TextIterator.cpp:
1824         (WebCore::TextIterator::handleTextNode):
1825         (WebCore::TextIterator::handleTextBox):
1826         (WebCore::TextIterator::handleTextNodeFirstLetter):
1827
1828 2012-02-21  Yael Aharon  <yael.aharon@nokia.com>
1829
1830         Unreviewed build fix.
1831
1832         No new tests.
1833
1834         * platform/graphics/opengl/TextureMapperGL.cpp:
1835
1836 2012-02-21  Adam Klein  <adamk@chromium.org>
1837
1838         ContainerNode::childrenChanged must be called immediately after removing children
1839         https://bugs.webkit.org/show_bug.cgi?id=79162
1840
1841         Reviewed by Ryosuke Niwa.
1842
1843         In r108152, a call to childrenChanged() was erroneously moved
1844         below the call to child->removedFromDocument(). This breaks, at the
1845         least, the behavior of the <title> element. This patch corrects the
1846         mistake and adds a test.
1847
1848         Test: fast/dom/title-directionality-removeChild.html
1849
1850         * dom/ContainerNode.cpp:
1851         (WebCore::ContainerNode::removeChild):
1852
1853 2012-02-21  Luke Macpherson   <macpherson@chromium.org>
1854
1855         Implement many instances of HANDLE_INHERIT_AND_INITIAL_AND_PRIMITIVE in CSSStyleApplyProperty.
1856         https://bugs.webkit.org/show_bug.cgi?id=79067
1857
1858         Reviewed by Andreas Kling.
1859
1860         No new tests / refactoring only.
1861
1862         * css/CSSStyleApplyProperty.cpp:
1863         (WebCore::CSSStyleApplyProperty::CSSStyleApplyProperty):
1864         * css/CSSStyleSelector.cpp:
1865         (WebCore::CSSStyleSelector::collectMatchingRulesForList):
1866         * rendering/style/RenderStyle.h:
1867
1868 2012-02-21  Jon Lee  <jonlee@apple.com>
1869
1870         Bring notifications support to WK1 mac
1871         https://bugs.webkit.org/show_bug.cgi?id=78783
1872         <rdar://problem/10610578>
1873
1874         Reviewed by Anders Carlsson.
1875
1876         * WebCore.exp.in: Expose dispatchErrorEvent on Notification.
1877
1878 2012-02-21  No'am Rosenthal  <noam.rosenthal@nokia.com>
1879
1880         [Qt] Previous web page appears outside content rect
1881         https://bugs.webkit.org/show_bug.cgi?id=78816
1882
1883         Adjust the scissor clipping by -1, as the glScissor() function requires coordinates and
1884         not sizes.
1885
1886         Reviewed by Kenneth Rohde Christiansen.
1887
1888         No new functionality.
1889
1890         * platform/graphics/opengl/TextureMapperGL.cpp:
1891         (WebCore::scissorClip):
1892
1893 2012-02-21  Victor Carbune  <vcarbune@adobe.com>
1894
1895         Added support for pause-on-exit flag on a TextTrackCue.
1896         https://bugs.webkit.org/show_bug.cgi?id=72173
1897
1898         Reviewed by Eric Carlson.
1899
1900         Test: media/track/track-cues-pause-on-exit.html
1901
1902         * html/HTMLMediaElement.cpp:
1903         (WebCore::HTMLMediaElement::updateActiveTextTrackCues): Implemented
1904         support for pausing the video if the pause-on-exit flag is set on
1905         a cue that is currently exiting.
1906
1907 2012-02-21  Kentaro Hara  <haraken@chromium.org>
1908
1909         Enable the IDL attribute checker in all build systems
1910         https://bugs.webkit.org/show_bug.cgi?id=79090
1911
1912         Reviewed by Adam Barth.
1913
1914         We have enabled the IDL attribute checker in Chromium in r108322.
1915         This patch enables the IDL attribute checker in all other
1916         build systems.
1917
1918         No tests. I manually checked that [Custommm], [CallWith=],
1919         [CallWith=ScriptExecutionContext|Foo] cause build failures.
1920
1921         * CMakeLists.txt:
1922         * DerivedSources.make:
1923         * DerivedSources.pri:
1924         * GNUmakefile.am:
1925         * UseJSC.cmake:
1926         * UseV8.cmake:
1927         * WebCore.vcproj/WebCore.vcproj:
1928         * WebCore.xcodeproj/project.pbxproj:
1929         * bindings/scripts/IDLAttributes.txt: Added [ObjCCustomImplementation]
1930         since I forgot to add it in r108322.
1931
1932 2012-02-21  Yael Aharon  <yael.aharon@nokia.com>
1933
1934         [Texmap] Better management of shaders in TextureMapperGL
1935         https://bugs.webkit.org/show_bug.cgi?id=78674
1936  
1937         Reviewed by Noam Rosenthal.
1938  
1939         Split TextureMapperGL.cpp into two files.
1940         Get rid of the enums that we were using to identify shaders and to identify variables.
1941         Switch flip and opaque from using bool to using enums.
1942  
1943         No new tests. This is refactoring only.
1944  
1945         * GNUmakefile.list.am:
1946         * Target.pri:
1947         * WebCore.gypi:
1948         * platform/graphics/OpenGLShims.h:
1949         * platform/graphics/opengl/TextureMapperGL.cpp:
1950         (WebCore):
1951         (SharedGLData):
1952         (WebCore::TextureMapperGLData::SharedGLData::SharedGLData):
1953         (WebCore::TextureMapperGLData::SharedGLData::~SharedGLData):
1954         (WebCore::TextureMapperGLData::TextureMapperGLData):
1955         (TextureMapperGLData):
1956         (WebCore::TextureMapperGL::drawTexture):
1957         (WebCore::TextureMapperGL::drawTextureWithMaskAndOpacity):
1958         (WebCore::TextureMapperGL::drawTextureSimple):
1959         (WebCore::TextureMapperGL::beginClip):
1960         * platform/graphics/opengl/TextureMapperGL.h:
1961         * platform/graphics/opengl/TextureMapperShaderManager.cpp: Added.
1962         (WebCore):
1963         (WebCore::FRAGMENT_SHADER):
1964         (WebCore::TextureMapperShaderProgram::initializeProgram):
1965         (WebCore::TextureMapperShaderProgram::getUniformLocation):
1966         (WebCore::TextureMapperShaderProgram::~TextureMapperShaderProgram):
1967         (WebCore::TextureMapperShaderProgramSimple::create):
1968         (WebCore::TextureMapperShaderProgramSimple::TextureMapperShaderProgramSimple):
1969         (WebCore::TextureMapperShaderProgramSimple::vertexShaderSource):
1970         (WebCore::TextureMapperShaderProgramSimple::fragmentShaderSource):
1971         (WebCore::TextureMapperShaderProgramOpacityAndMask::create):
1972         (WebCore::TextureMapperShaderProgramOpacityAndMask::TextureMapperShaderProgramOpacityAndMask):
1973         (WebCore::TextureMapperShaderProgramOpacityAndMask::vertexShaderSource):
1974         (WebCore::TextureMapperShaderProgramOpacityAndMask::fragmentShaderSource):
1975         (WebCore::TextureMapperShaderProgramClip::create):
1976         (WebCore::TextureMapperShaderProgramClip::TextureMapperShaderProgramClip):
1977         (WebCore::TextureMapperShaderProgramClip::vertexShaderSource):
1978         (WebCore::TextureMapperShaderProgramClip::fragmentShaderSource):
1979         (WebCore::TextureMapperShaderManager::TextureMapperShaderManager):
1980         (WebCore::TextureMapperShaderManager::~TextureMapperShaderManager):
1981         * platform/graphics/opengl/TextureMapperShaderManager.h: Added.
1982         (WebCore):
1983         (WebCore::debugGLCommand):
1984         (TextureMapperShaderProgram):
1985         (WebCore::TextureMapperShaderProgram::id):
1986         (WebCore::TextureMapperShaderProgram::vertexAttrib):
1987         (WebCore::TextureMapperShaderProgram::shaderType):
1988         (TextureMapperShaderProgramSimple):
1989         (WebCore::TextureMapperShaderProgramSimple::matrixVariable):
1990         (WebCore::TextureMapperShaderProgramSimple::sourceMatrixVariable):
1991         (WebCore::TextureMapperShaderProgramSimple::sourceTextureVariable):
1992         (WebCore::TextureMapperShaderProgramSimple::opacityVariable):
1993         (TextureMapperShaderProgramOpacityAndMask):
1994         (WebCore::TextureMapperShaderProgramOpacityAndMask::sourceMatrixVariable):
1995         (WebCore::TextureMapperShaderProgramOpacityAndMask::matrixVariable):
1996         (WebCore::TextureMapperShaderProgramOpacityAndMask::maskMatrixVariable):
1997         (WebCore::TextureMapperShaderProgramOpacityAndMask::sourceTextureVariable):
1998         (WebCore::TextureMapperShaderProgramOpacityAndMask::maskTextureVariable):
1999         (WebCore::TextureMapperShaderProgramOpacityAndMask::opacityVariable):
2000         (TextureMapperShaderProgramClip):
2001         (WebCore::TextureMapperShaderProgramClip::matrixVariable):
2002         (TextureMapperShaderManager):
2003         (WebCore::TextureMapperShaderManager::getShaderProgram):
2004         * platform/graphics/qt/GraphicsContext3DQt.cpp:
2005         (WebCore::GraphicsContext3DPrivate::paintToTextureMapper):
2006         * platform/graphics/texmap/TextureMapper.h:
2007         (WebCore::BitmapTexture::reset):
2008         (WebCore::BitmapTexture::isOpaque):
2009         (BitmapTexture):
2010
2011 2012-02-21  Anders Carlsson  <andersca@apple.com>
2012
2013         The tile cache should keep track of the tile coverage rect
2014         https://bugs.webkit.org/show_bug.cgi?id=79149
2015         <rdar://problem/10877338>
2016
2017         Reviewed by Andreas Kling.
2018
2019         Keep track of the tile coverage rect and use it to avoid trying to iterate over non-existent tiles on large pages.
2020
2021         * platform/graphics/ca/mac/TileCache.h:
2022         (TileCache):
2023         * platform/graphics/ca/mac/TileCache.mm:
2024         (WebCore::TileCache::setNeedsDisplayInRect):
2025         (WebCore::TileCache::revalidateTiles):
2026
2027 2012-02-21  Andreas Kling  <awesomekling@apple.com>
2028
2029         Make WebKitCSSShaderValue inherit directly from CSSValue.
2030         <http://webkit.org/b/79144>
2031
2032         Reviewed by Antti Koivisto.
2033
2034         WebKitCSSShaderValue was inheriting from CSSPrimitiveValue but only used
2035         it for storing the shader URL. Moved that to a String member instead.
2036
2037         WebKitCSSShaderValues didn't even return true for isPrimitiveValue() so
2038         there should be no behavior change whatsoever here.
2039
2040         * css/WebKitCSSShaderValue.cpp:
2041         (WebCore::WebKitCSSShaderValue::WebKitCSSShaderValue):
2042         (WebCore::WebKitCSSShaderValue::cachedShader):
2043         (WebCore::WebKitCSSShaderValue::customCssText):
2044         * css/WebKitCSSShaderValue.h:
2045         (WebKitCSSShaderValue):
2046
2047 2012-02-21  James Robinson  <jamesr@chromium.org>
2048
2049         Unreviewed windows build fix - avoid return statement after return if USE(ACCELERATED_COMPOSITING) is set.
2050
2051         * page/scrolling/ScrollingCoordinator.cpp:
2052         (WebCore::ScrollingCoordinator::coordinatesScrollingForFrameView):
2053
2054 2012-02-21  James Robinson  <jamesr@chromium.org>
2055
2056         ScrollingCoordinator::coordinatesScrollingForFrameView should be conditional on compositing being active
2057         https://bugs.webkit.org/show_bug.cgi?id=79126
2058
2059         Reviewed by Anders Carlsson.
2060
2061         The ScrollingCoordinator should only attempt to coordinate scrolling when compositing is active, since it's all
2062         about manipulating GraphicsLayers. Adds a runtime check.
2063
2064         Also removes some stray #if ENABLE(THREADED_SCROLLING) guards that snuck into FrameView.
2065
2066         * page/FrameView.cpp:
2067         (WebCore::FrameView::addFixedObject):
2068         (WebCore::FrameView::removeFixedObject):
2069         * page/scrolling/ScrollingCoordinator.cpp:
2070         (WebCore::ScrollingCoordinator::coordinatesScrollingForFrameView):
2071         (WebCore::ScrollingCoordinator::frameViewRootLayerDidChange):
2072
2073 2012-02-21  James Robinson  <jamesr@chromium.org>
2074
2075         Chromium build fix. Unreviwed but rubber-stamped by Antti.
2076
2077         * dom/Document.cpp:
2078         * editing/ReplaceSelectionCommand.cpp:
2079         * inspector/InspectorStyleSheet.h:
2080
2081 2012-02-21  Eric Carlson  <eric.carlson@apple.com>
2082
2083         Set Referrer header for media downloads
2084         https://bugs.webkit.org/show_bug.cgi?id=78614
2085
2086         Reviewed by Alexey Proskuryakov.
2087
2088         Test: http/tests/media/video-referer.html was modified to test this change.
2089
2090         * html/HTMLMediaElement.cpp:
2091         (WebCore::HTMLMediaElement::mediaPlayerReferrer): New, return the document's referer.
2092         * html/HTMLMediaElement.h:
2093
2094         * platform/graphics/MediaPlayer.cpp:
2095         (WebCore::MediaPlayer::referrer): New, return the client's mediaPlayerReferrer.
2096         * platform/graphics/MediaPlayer.h:
2097         (WebCore::MediaPlayerClient::mediaPlayerReferrer):
2098
2099         * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.h:
2100         * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
2101         (WebCore::MediaPlayerPrivateAVFoundationObjC::createAVAssetForURL): Tell AVFoundation to add
2102             a referer header.
2103
2104 2012-02-21  Antti Koivisto  <antti@apple.com>
2105
2106         Not reviewed.
2107
2108         Remove some obsolete comments, use consistent name for propertyID.
2109
2110         * css/StylePropertySet.h:
2111         (StylePropertySet):
2112
2113 2012-02-21  Antti Koivisto  <antti@apple.com>
2114
2115         Clean up StylePropertySet included headers
2116         https://bugs.webkit.org/show_bug.cgi?id=79134
2117
2118         Reviewed by Andreas Kling.
2119
2120         Remove unneccesary includes.
2121
2122         * bindings/js/JSDOMBinding.h:
2123         * css/StylePropertySet.cpp:
2124         * css/StylePropertySet.h:
2125         (WebCore):
2126         (StylePropertySet):
2127         * editing/RemoveCSSPropertyCommand.cpp:
2128
2129 2012-02-21  Lin Wei  <wei.a.lin@intel.com>
2130
2131         Fix bug from r107672.
2132         https://bugs.webkit.org/show_bug.cgi?id=78773
2133
2134         Before set MediaStreamTrack disable/enable operation,
2135         checking the status of MediaStream that contains this MediaStreamTrack.
2136         if MediaStream is finished, then skipping operation of 
2137         didSetMediaStreamTrackEnabled().
2138
2139         Reviewed by Adam Barth.
2140         * mediastream/MediaStreamTrack.cpp:
2141         (WebCore::MediaStreamTrack::setEnabled):
2142
2143 2012-02-21  Julien Chaffraix  <jchaffraix@webkit.org>
2144
2145         Move RenderLayer::scrolledContentOffset calls to a common function
2146         https://bugs.webkit.org/show_bug.cgi?id=76971
2147
2148         Reviewed by David Hyatt.
2149
2150         Refactoring without any change in behavior.
2151
2152         This change adds a RenderBox::scrolledContentOffset function to handle all
2153         the calls that goes through the layer(). This indirection will enable us to
2154         add layer() checks without patching a lot of call sites as part of bug 75568.
2155
2156         We also moved down the concept of scroll offset down to RenderBox where it belongs!
2157
2158         * rendering/RenderLayer.h:
2159         (RenderLayer):
2160         (WebCore::RenderLayer::scrolledContentOffset):
2161         Moved scrolledContent to the private section of the class to prevent misuse.
2162
2163         * rendering/RenderBox.cpp:
2164         (WebCore::RenderBox::scrolledContentOffset):
2165         New function to add an indirection with RenderLayer.
2166
2167         * editing/visible_units.cpp:
2168         (WebCore::absoluteLineDirectionPointToLocalPointInBlock):
2169         * rendering/LayoutState.cpp:
2170         (WebCore::LayoutState::LayoutState):
2171         * rendering/RenderBlock.cpp:
2172         (WebCore::RenderBlock::layoutBlock):
2173         (WebCore::RenderBlock::paintObject):
2174         (WebCore::RenderBlock::selectionGapRectsForRepaint):
2175         (WebCore::RenderBlock::paintSelection):
2176         (WebCore::RenderBlock::nodeAtPoint):
2177         (WebCore::RenderBlock::offsetForContents):
2178         * rendering/RenderBox.cpp:
2179         (WebCore::RenderBox::offsetFromContainer):
2180         (WebCore::RenderBox::computeRectForRepaint):
2181         * rendering/RenderBox.h:
2182         (RenderBox):
2183         * rendering/RenderBoxModelObject.cpp:
2184         (WebCore::RenderBoxModelObject::paintFillLayerExtended):
2185         * rendering/RenderInline.cpp:
2186         (WebCore::RenderInline::clippedOverflowRectForRepaint):
2187         (WebCore::RenderInline::computeRectForRepaint):
2188         (WebCore::RenderInline::offsetFromContainer):
2189         * rendering/RenderObject.cpp:
2190         (WebCore::RenderObject::computeRectForRepaint):
2191         (WebCore::RenderObject::mapLocalToContainer):
2192         (WebCore::RenderObject::mapAbsoluteToLocalPoint):
2193         (WebCore::RenderObject::offsetFromContainer):
2194         * rendering/RenderTextControlSingleLine.cpp:
2195         (WebCore::RenderTextControlInnerBlock::positionForPoint):
2196         Patched all those call sites to use the new function.
2197
2198 2012-02-21  Emil A Eklund  <eae@chromium.org>
2199
2200         Remove obsolete float comparison FIXMEs
2201         https://bugs.webkit.org/show_bug.cgi?id=79127
2202
2203         Reviewed by Eric Seidel.
2204
2205         Remove obsolete FIXME comments added back when we were planning to use
2206         floating point units for layout.
2207
2208         No new tests, no code changes.
2209
2210         * page/FrameView.cpp:
2211         (WebCore::FrameView::init):
2212         * rendering/RenderBlock.cpp:
2213         (WebCore::RenderBlock::layoutBlock):
2214         (WebCore::RenderBlock::computeStartPositionDeltaForChildAvoidingFloats):
2215         (WebCore::RenderBlock::getClearDelta):
2216         * rendering/RenderBox.cpp:
2217         (WebCore::RenderBox::computeLogicalHeight):
2218         (WebCore::RenderBox::computeLogicalHeightUsing):
2219         (WebCore::RenderBox::computePercentageLogicalHeight):
2220         * rendering/RenderBoxModelObject.cpp:
2221         (WebCore::ImageQualityController::shouldPaintAtLowQuality):
2222
2223 2012-02-21  Alexander Pavlov  <apavlov@chromium.org>
2224
2225         Web Inspector: it is nearly impossible to select and copy text on the Elements panel.
2226         https://bugs.webkit.org/show_bug.cgi?id=60814
2227
2228         Reviewed by Pavel Feldman.
2229
2230         * inspector/front-end/inspector.js:
2231         (WebInspector.documentClick.followLink):
2232         (WebInspector.documentClick):
2233
2234 2012-02-21  Abhishek Arya  <inferno@chromium.org>
2235
2236         Crash in RenderTableSection::nodeAtPoint.
2237         https://bugs.webkit.org/show_bug.cgi?id=78922
2238
2239         Reviewed by Julien Chaffraix.
2240
2241         Test: fast/table/table-section-node-at-point-crash.html
2242
2243         * rendering/RenderTableSection.cpp:
2244         (WebCore::RenderTableSection::nodeAtPoint): recalc cells if the
2245         m_needsCellRecalc is set. Otherwise, we will end up accessing
2246         removed table cells.
2247
2248 2012-02-21  Antti Koivisto  <antti@apple.com>
2249
2250         Move PropertySetCSSStyleDeclaration to a file of its own
2251         https://bugs.webkit.org/show_bug.cgi?id=79121
2252
2253         Rubber-stamped by Andreas Kling.
2254
2255         This makes StylePropertySet.cpp more readable.
2256
2257         * CMakeLists.txt:
2258         * GNUmakefile.list.am:
2259         * Target.pri:
2260         * WebCore.gypi:
2261         * WebCore.vcproj/WebCore.vcproj:
2262         * WebCore.xcodeproj/project.pbxproj:
2263         * css/PropertySetCSSStyleDeclaration.cpp: Copied from Source/WebCore/css/StylePropertySet.cpp.
2264         (WebCore::PropertySetCSSStyleDeclaration::ref):
2265         (WebCore::PropertySetCSSStyleDeclaration::deref):
2266         (WebCore):
2267         * css/PropertySetCSSStyleDeclaration.h: Added.
2268         (WebCore):
2269         (PropertySetCSSStyleDeclaration):
2270         (WebCore::PropertySetCSSStyleDeclaration::PropertySetCSSStyleDeclaration):
2271         (WebCore::PropertySetCSSStyleDeclaration::parentElement):
2272         (WebCore::PropertySetCSSStyleDeclaration::clearParentRule):
2273         (WebCore::PropertySetCSSStyleDeclaration::clearParentElement):
2274         (WebCore::PropertySetCSSStyleDeclaration::contextStyleSheet):
2275         (WebCore::PropertySetCSSStyleDeclaration::setNeedsStyleRecalc):
2276         (RuleCSSStyleDeclaration):
2277         (WebCore::RuleCSSStyleDeclaration::RuleCSSStyleDeclaration):
2278         (WebCore::RuleCSSStyleDeclaration::parentRule):
2279         (WebCore::RuleCSSStyleDeclaration::clearParentRule):
2280         (InlineCSSStyleDeclaration):
2281         (WebCore::InlineCSSStyleDeclaration::InlineCSSStyleDeclaration):
2282         (WebCore::InlineCSSStyleDeclaration::parentElement):
2283         (WebCore::InlineCSSStyleDeclaration::clearParentElement):
2284         * css/StylePropertySet.cpp:
2285         (WebCore):
2286
2287 2012-02-21  Philippe Normand  <pnormand@igalia.com>
2288
2289         [GTK] WebAudio build is broken
2290         https://bugs.webkit.org/show_bug.cgi?id=79113
2291
2292         Reviewed by Martin Robinson.
2293
2294         * platform/audio/gstreamer/WebKitWebAudioSourceGStreamer.cpp:
2295         (webKitWebAudioGStreamerChannelPosition): Set a default value for
2296         the position variable.
2297         * platform/audio/gtk/AudioBusGtk.cpp: Include CString.h, needed
2298         for sharedResourcesPath().
2299
2300 2012-02-21  Andreas Kling  <awesomekling@apple.com>
2301
2302         Kill FontFamilyValue.
2303         <http://webkit.org/b/79103>
2304
2305         Reviewed by Antti Koivisto.
2306
2307         Remove FontFamilyValue and replace all usage by CSSPrimitiveValue.
2308         The class was only used to filter font family names, removing bracketed
2309         suffixes, e.g "[Xft]".
2310
2311         This was added to KHTML in 2002 to support the use of specific X11 font
2312         families inside KMail: <https://bugs.kde.org/show_bug.cgi?id=38808>
2313
2314         Test: fast/css/font-family-trailing-bracket-gunk.html
2315
2316         * CMakeLists.txt:
2317         * GNUmakefile.list.am:
2318         * Target.pri:
2319         * WebCore.gypi:
2320         * WebCore.order:
2321         * WebCore.vcproj/WebCore.vcproj:
2322         * WebCore.xcodeproj/project.pbxproj:
2323         * css/CSSFontSelector.cpp:
2324         (WebCore::CSSFontSelector::addFontFaceRule):
2325         * css/CSSParser.cpp:
2326         * css/CSSStyleSelector.cpp:
2327         (WebCore::CSSStyleSelector::collectMatchingRulesForList):
2328         * css/CSSValue.cpp:
2329         (WebCore::CSSValue::cssText):
2330         (WebCore::CSSValue::destroy):
2331         * css/CSSValue.h:
2332         * css/CSSValuePool.cpp:
2333         (WebCore::CSSValuePool::createFontFamilyValue):
2334         * css/CSSValuePool.h:
2335         (CSSValuePool):
2336         * css/FontFamilyValue.cpp: Removed.
2337         * css/FontFamilyValue.h: Removed.
2338
2339 2012-02-21  Alexis Menard  <alexis.menard@openbossa.org>
2340
2341         Little optimization for CSSParser::parseFillShorthand.
2342         https://bugs.webkit.org/show_bug.cgi?id=79042
2343
2344         Reviewed by Hajime Morita.
2345
2346         Remove one extra loop that we can combine with the following one
2347         which adds the properties to the parser's list of properties. I also
2348         removed a useless check.
2349         Instruments shows on the css-parser-yui benchmark an improvement
2350         of 13ms (from 77ms spent in the function to 64ms).
2351
2352         No new tests : refactoring, existings tests should cover.
2353
2354         * css/CSSParser.cpp:
2355         (WebCore::CSSParser::parseFillShorthand):
2356
2357 2012-02-20  David Hyatt  <hyatt@apple.com>
2358
2359         https://bugs.webkit.org/show_bug.cgi?id=79046
2360         
2361         width of overflow:hidden blocks is wrong when their margins overlap floats.
2362         
2363         Relevant discussion is here: http://lists.w3.org/Archives/Public/www-style/2012Feb/0954.html
2364         
2365         This patch makes the following changes to how objects shrink when avoiding floats:
2366         (1) The containing block width used for percentage calculations is now constant. This means that
2367         an overflow:hidden block with a margin-left of 10% will no longer change what 10% means depending
2368         on the available line width. From a code perspective, containingBlockLogicalWidthForContent and
2369         containingBlockLogicalWidthForContentInRegion no longer contain any special-case code for
2370         shrinkToAvoidFloats() objects.
2371
2372         (2) Now the computation of the logical width for the shrinking object itself handles the adjustments.
2373         Two kinds of adjustments are made for both the start and end margins. Conceptually what we do is shrink
2374         the object to the available line width minus our margins, and then expand the width back out to the content edge
2375         or to the float edge as necessary. If the float fully fits in the margin, then we expand back out to the
2376         content edge. Otherwise if the float doesn't fit, then we expand only to the float edge, making sure our
2377         margin overlaps with the float. This expansion is not performed for negative margins, since our result is already
2378         correct in that case.
2379         
2380         Reviewed by Dan Bernstein.
2381
2382         Added the new tests from the thread on www-style about this issue (from Alan Gresley and George Talbot)
2383         in fast/block/float.
2384
2385         * rendering/RenderBlock.cpp:
2386         (WebCore::RenderBlock::containsFloat):
2387         * rendering/RenderBlock.h:
2388         (WebCore::RenderBlock::containsFloats):
2389         Changed to be const.
2390
2391         (WebCore::RenderBlock::endOffsetForLine):
2392         (WebCore::RenderBlock::endOffsetForContent):
2393         Added endOffsetForXXX methods to mirror their startOffset counterparts. Used by the width adjustment code.
2394
2395         * rendering/RenderBox.cpp:
2396         (WebCore::RenderBox::shrinkLogicalWidthToAvoidFloats):
2397         New method that handles shrinking the logical width to the line width (and then re-expanding back out to the
2398         float and/or content edges as needed).
2399
2400         (WebCore::RenderBox::containingBlockLogicalWidthForContent):
2401         (WebCore::RenderBox::containingBlockLogicalWidthForContentInRegion):
2402         Patched to no longer do the shrinking of objects to avoid floats.
2403
2404         (WebCore::RenderBox::computeLogicalWidthInRegion):
2405         (WebCore::RenderBox::computeLogicalWidthInRegionUsing):
2406         Patched to handle calling the new shrinking code to adjust our logical width.
2407
2408         * rendering/RenderBox.h:
2409         (RenderBox):
2410         The signature of computeLogicalWithUsing changed to be region-specific and to carry along enough information
2411         to efficiently perform the shrinking.
2412
2413         * rendering/RenderTable.cpp:
2414         (WebCore::RenderTable::computeLogicalWidth):
2415         Patched to handle calling the new shrinking code to adjust our logical width.
2416
2417 2012-02-21  Sam Weinig  <sam@webkit.org>
2418
2419         Attempt to fix the Snow Leopard build.
2420
2421         * Configurations/Base.xcconfig:
2422
2423 2012-02-21  Sam Weinig  <sam@webkit.org>
2424
2425         Use libc++ when building with Clang on Mac
2426         https://bugs.webkit.org/show_bug.cgi?id=78981
2427
2428         Reviewed by Dan Bernstein.
2429
2430         * Configurations/Base.xcconfig:
2431
2432 2012-02-21  Adam Roben  <aroben@apple.com>
2433
2434         Mac build fix
2435
2436         * WebCore.xcodeproj/project.pbxproj: Mark TextTrack.h and TextTrackCue.h private so that
2437         WebKit can include them.
2438
2439 2012-02-21  Andras Becsi  <andras.becsi@nokia.com>
2440
2441         [Qt][WK2] Fix the N9 build
2442         https://bugs.webkit.org/show_bug.cgi?id=79101
2443
2444         Reviewed by Noam Rosenthal.
2445
2446         No new tests needed.
2447
2448         * platform/graphics/opengl/TextureMapperGL.cpp: Add missing include.
2449
2450 2012-02-21  Adam Roben  <aroben@apple.com>
2451
2452         Roll out r108309, r108323, and r108326
2453
2454         They broke the 32-bit Lion build.
2455
2456         Original bugs is <http://webkit.org/b/75812> <rdar://problem/10079694>.
2457
2458         * CMakeLists.txt:
2459
2460 2012-02-21  Alexander Pavlov  <apavlov@chromium.org>
2461
2462         Web Inspector: [SuggestBox] textPrompt.css disablement displays garbled suggest box
2463         https://bugs.webkit.org/show_bug.cgi?id=79107
2464
2465         Reviewed by Pavel Feldman.
2466
2467         * inspector/front-end/TextPrompt.js:
2468         (WebInspector.TextPrompt.SuggestBox):
2469         (WebInspector.TextPrompt.SuggestBox.prototype.get visible):
2470         (WebInspector.TextPrompt.SuggestBox.prototype.hide):
2471         (WebInspector.TextPrompt.SuggestBox.prototype.removeFromElement):
2472         (WebInspector.TextPrompt.SuggestBox.prototype._completionsReady):
2473         * inspector/front-end/textPrompt.css:
2474         (.suggest-box):
2475
2476 2012-02-21  Yury Semikhatsky  <yurys@chromium.org>
2477
2478         Web Inspector: timeline hangs on a page with deep chain of nested events.
2479         https://bugs.webkit.org/show_bug.cgi?id=79106
2480
2481         Use stack of states instead of recursive calls when traversing records tree to
2482         avoid stack overflow.
2483
2484         Reviewed by Pavel Feldman.
2485
2486         * inspector/front-end/TimelineOverviewPane.js:
2487         (WebInspector.TimelineOverviewPane.prototype._forAllRecords):
2488         * inspector/front-end/TimelinePanel.js:
2489         (WebInspector.TimelinePanel.prototype._filterRecords):
2490
2491 2012-02-21  Pavel Feldman  <pfeldman@google.com>
2492
2493         Web Inspector: [crash] upon style modification after navigation
2494         https://bugs.webkit.org/show_bug.cgi?id=79108
2495
2496         Reviewed by Yury Semikhatsky.
2497
2498         * inspector/InspectorHistory.cpp:
2499         (WebCore::InspectorHistory::undo):
2500         (WebCore::InspectorHistory::redo):
2501         (WebCore::InspectorHistory::reset):
2502
2503 2012-02-21  Patrick Gansterer  <paroga@webkit.org>
2504
2505         Use WTF::cryptographicallyRandomValues in FileSystemWin.cpp
2506         https://bugs.webkit.org/show_bug.cgi?id=79089
2507
2508         Reviewed by Adam Roben.
2509
2510         Avoid loading and unloading of the crypto library during every
2511         call to openTemporaryFile() and make the code easier.
2512
2513         * platform/win/FileSystemWin.cpp:
2514         (WebCore::openTemporaryFile):
2515
2516 2012-02-21  Alexander Færøy  <alexander.faeroy@nokia.com>
2517
2518         Remove stylesheet pointer from StylePropertySet
2519         https://bugs.webkit.org/show_bug.cgi?id=79092
2520
2521         Reviewed by Csaba Osztrogonác.
2522
2523         Qt buildfix after r108345.
2524
2525         * css/CSSParser.cpp:
2526         (WebCore::parseColorValue):
2527
2528 2012-02-21  Csaba Osztrogonác  <ossy@webkit.org>
2529
2530         Remove stylesheet pointer from StylePropertySet
2531         https://bugs.webkit.org/show_bug.cgi?id=79092
2532
2533         Reviewed by Antti Koivisto.
2534
2535         Qt buildfix after r108345. We need this workaround because of buggy gcc (4.4.5), which
2536         reported a false warning: 'value$m_ptr' may be used uninitialized in this function
2537
2538         * css/CSSParser.cpp:
2539         (WebCore::parseSimpleLengthValue):
2540
2541 2012-02-21  Andreas Kling  <awesomekling@apple.com>
2542
2543         Shrink attribute style property sets after populating them.
2544         <http://webkit.org/b/78972>
2545
2546         Reviewed by Antti Koivisto.
2547
2548         Add a StylePropertySet::shrinkToFit() and call it at the end of updateStyleAttribute()
2549         to minimize the amount of wasted space.
2550
2551         * css/StylePropertySet.h:
2552         (WebCore::StylePropertySet::shrinkToFit):
2553         * dom/StyledElement.cpp:
2554         (WebCore::StyledElement::updateAttributeStyle):
2555
2556 2012-02-21  Antti Koivisto  <antti@apple.com>
2557
2558         Remove stylesheet pointer from StylePropertySet
2559         https://bugs.webkit.org/show_bug.cgi?id=79092
2560
2561         Reviewed by Andreas Kling.
2562
2563         The context should be passed as an argument for CSS parser invoking setters that actually need it.
2564         
2565         - Remove the context stylesheet pointer.
2566         - Add context stylesheet argument to setters.
2567         - Drop an unnecessary StylePropertySet constructor, pass strict parsing flag directly.
2568         - Adapt to changes by passing in the context stylesheet where needed.
2569         - Add StyledElement::applyPresentationAttributeToStyle helpers for building up the attribute style.
2570
2571         * css/CSSFontFaceRule.cpp:
2572         (WebCore::CSSFontFaceRule::addSubresourceStyleURLs):
2573         * css/CSSParser.cpp:
2574         (WebCore::parseColorValue):
2575         (WebCore::parseSimpleLengthValue):
2576         (WebCore::CSSParser::parseValue):
2577         (WebCore::CSSParser::parseDeclaration):
2578         (WebCore::CSSParser::createStyleRule):
2579         (WebCore::CSSParser::createFontFaceRule):
2580         (WebCore::CSSParser::createPageRule):
2581         (WebCore::CSSParser::createKeyframeRule):
2582         * css/CSSParser.h:
2583         (CSSParser):
2584         * css/CSSStyleRule.cpp:
2585         (WebCore::CSSStyleRule::addSubresourceStyleURLs):
2586         * css/StylePropertySet.cpp:
2587         (WebCore::PropertySetCSSStyleDeclaration::contextStyleSheet):
2588         (WebCore::PropertySetCSSStyleDeclaration::setNeedsStyleRecalc):
2589         (RuleCSSStyleDeclaration):
2590         (InlineCSSStyleDeclaration):
2591         (WebCore):
2592         (WebCore::StylePropertySet::StylePropertySet):
2593         (WebCore::StylePropertySet::setProperty):
2594         (WebCore::StylePropertySet::parseDeclaration):
2595         (WebCore::StylePropertySet::addSubresourceStyleURLs):
2596         (WebCore::StylePropertySet::clearParentRule):
2597         (WebCore::StylePropertySet::clearParentElement):
2598         (WebCore::PropertySetCSSStyleDeclaration::setCssText):
2599         (WebCore::PropertySetCSSStyleDeclaration::setProperty):
2600         (WebCore::PropertySetCSSStyleDeclaration::setPropertyInternal):
2601         (WebCore::PropertySetCSSStyleDeclaration::parentStyleSheet):
2602         (WebCore::RuleCSSStyleDeclaration::setNeedsStyleRecalc):
2603         (WebCore::RuleCSSStyleDeclaration::contextStyleSheet):
2604         (WebCore::InlineCSSStyleDeclaration::contextStyleSheet):
2605         (SameSizeAsStylePropertySet):
2606         * css/StylePropertySet.h:
2607         (WebCore::StylePropertySet::create):
2608         (StylePropertySet):
2609         * css/WebKitCSSMatrix.cpp:
2610         (WebCore::WebKitCSSMatrix::setMatrixValue):
2611         * dom/ElementAttributeData.cpp:
2612         (WebCore::ElementAttributeData::ensureInlineStyleDecl):
2613         * dom/StyledElement.cpp:
2614         (WebCore):
2615         (WebCore::StyledElement::parseAttribute):
2616         (WebCore::StyledElement::setInlineStyleProperty):
2617         (WebCore::StyledElement::addSubresourceAttributeURLs):
2618         (WebCore::StyledElement::updateAttributeStyle):
2619         * dom/StyledElement.h:
2620         (StyledElement):
2621         (WebCore::StyledElement::applyPresentationAttributeToStyle):
2622         (WebCore):
2623         * html/HTMLBRElement.cpp:
2624         (WebCore::HTMLBRElement::collectStyleForAttribute):
2625         * html/HTMLBodyElement.cpp:
2626         (WebCore::HTMLBodyElement::collectStyleForAttribute):
2627         * html/HTMLDivElement.cpp:
2628         (WebCore::HTMLDivElement::collectStyleForAttribute):
2629         * html/HTMLElement.cpp:
2630         (WebCore::HTMLElement::applyBorderAttributeToStyle):
2631         (WebCore::HTMLElement::mapLanguageAttributeToLocale):
2632         (WebCore::HTMLElement::collectStyleForAttribute):
2633         (WebCore::HTMLElement::applyAlignmentAttributeToStyle):
2634         (WebCore::HTMLElement::addHTMLLengthToStyle):
2635         (WebCore::HTMLElement::addHTMLColorToStyle):
2636         * html/HTMLElement.h:
2637         (HTMLElement):
2638         * html/HTMLFontElement.cpp:
2639         (WebCore::HTMLFontElement::collectStyleForAttribute):
2640         * html/HTMLHRElement.cpp:
2641         (WebCore::HTMLHRElement::collectStyleForAttribute):
2642         * html/HTMLImageElement.cpp:
2643         (WebCore::HTMLImageElement::collectStyleForAttribute):
2644         * html/HTMLLIElement.cpp:
2645         (WebCore::HTMLLIElement::collectStyleForAttribute):
2646         * html/HTMLMarqueeElement.cpp:
2647         (WebCore::HTMLMarqueeElement::collectStyleForAttribute):
2648         * html/HTMLOListElement.cpp:
2649         (WebCore::HTMLOListElement::collectStyleForAttribute):
2650         * html/HTMLParagraphElement.cpp:
2651         (WebCore::HTMLParagraphElement::collectStyleForAttribute):
2652         * html/HTMLTableCaptionElement.cpp:
2653         (WebCore::HTMLTableCaptionElement::collectStyleForAttribute):
2654         * html/HTMLTableCellElement.cpp:
2655         (WebCore::HTMLTableCellElement::collectStyleForAttribute):
2656         * html/HTMLTableElement.cpp:
2657         (WebCore::HTMLTableElement::collectStyleForAttribute):
2658         * html/HTMLTablePartElement.cpp:
2659         (WebCore::HTMLTablePartElement::collectStyleForAttribute):
2660         * html/HTMLTextAreaElement.cpp:
2661         (WebCore::HTMLTextAreaElement::collectStyleForAttribute):
2662         * html/HTMLUListElement.cpp:
2663         (WebCore::HTMLUListElement::collectStyleForAttribute):
2664         * html/canvas/CanvasRenderingContext2D.cpp:
2665         (WebCore::CanvasRenderingContext2D::setFont):
2666         * mathml/MathMLElement.cpp:
2667         (WebCore::MathMLElement::collectStyleForAttribute):
2668         * svg/SVGFontFaceElement.cpp:
2669         (WebCore::SVGFontFaceElement::insertedIntoDocument):
2670         (WebCore::SVGFontFaceElement::removedFromDocument):
2671         (WebCore::SVGFontFaceElement::removeFromMappedElementSheet):
2672         * svg/SVGImageElement.cpp:
2673         (WebCore::SVGImageElement::collectStyleForAttribute):
2674         * svg/SVGStyledElement.cpp:
2675         (WebCore::SVGStyledElement::collectStyleForAttribute):
2676         * svg/SVGTextContentElement.cpp:
2677         (WebCore::SVGTextContentElement::collectStyleForAttribute):
2678
2679 2012-02-21  Yury Semikhatsky  <yurys@chromium.org>
2680
2681         [V8] Web Inspector: set breakpoint/pause doesn't work when worker is in a tight loop
2682         https://bugs.webkit.org/show_bug.cgi?id=79097
2683
2684         Worker script will be interrupted to dispatch all arriving inspector commands.
2685         This way debugger will be operable even if worker is in a tight loop.
2686
2687         Reviewed by Pavel Feldman.
2688
2689         * bindings/js/ScriptDebugServer.h:
2690         (Task):
2691         (WebCore::ScriptDebugServer::Task::~Task):
2692         (ScriptDebugServer):
2693         * bindings/js/WorkerScriptDebugServer.cpp:
2694         (WebCore::WorkerScriptDebugServer::interruptAndRunTask):
2695         (WebCore):
2696         * bindings/js/WorkerScriptDebugServer.h:
2697         (WorkerScriptDebugServer):
2698         * bindings/v8/ScriptDebugServer.cpp:
2699         (WebCore::ScriptDebugServer::interruptAndRun):
2700         * bindings/v8/ScriptDebugServer.h:
2701         (ScriptDebugServer):
2702         * bindings/v8/WorkerScriptDebugServer.cpp:
2703         (WebCore::WorkerScriptDebugServer::WorkerScriptDebugServer):
2704         (WebCore::WorkerScriptDebugServer::interruptAndRunTask):
2705         (WebCore):
2706         * bindings/v8/WorkerScriptDebugServer.h:
2707         (v8):
2708         (WebCore):
2709         (WorkerScriptDebugServer):
2710         * inspector/WorkerDebuggerAgent.cpp:
2711         (WebCore::WorkerDebuggerAgent::WorkerDebuggerAgent):
2712         (WebCore::WorkerDebuggerAgent::~WorkerDebuggerAgent):
2713         (WebCore):
2714         (WebCore::WorkerDebuggerAgent::interruptAndDispatchInspectorCommands):
2715         * inspector/WorkerDebuggerAgent.h:
2716         (WebCore):
2717         (WorkerDebuggerAgent):
2718         * workers/WorkerMessagingProxy.cpp:
2719         (WebCore):
2720         (WebCore::WorkerMessagingProxy::sendMessageToInspector):
2721         * workers/WorkerRunLoop.cpp:
2722         (WebCore::WorkerRunLoop::run):
2723         (WebCore::WorkerRunLoop::runInMode):
2724         * workers/WorkerRunLoop.h:
2725         (WorkerRunLoop):
2726
2727 2012-02-21  'Pavel Feldman'  <pfeldman@google.com>
2728
2729         Not reviewed: fixing Mac build (take 2).
2730
2731         * inspector/InspectorPageAgent.cpp:
2732         (WebCore::InspectorPageAgent::setShowPaintRects):
2733
2734 2012-02-21  'Pavel Feldman'  <pfeldman@google.com>
2735
2736         Not reviewed: fixing Mac build.
2737
2738         * inspector/DOMNodeHighlighter.cpp:
2739         (WebCore::DOMNodeHighlighter::drawOutline):
2740         * inspector/DOMNodeHighlighter.h:
2741         (DOMNodeHighlighter):
2742         * inspector/InspectorInstrumentation.cpp:
2743         (WebCore::InspectorInstrumentation::willPaintImpl):
2744         * inspector/InspectorInstrumentation.h:
2745         (InspectorInstrumentation):
2746         (WebCore::InspectorInstrumentation::willPaint):
2747         * inspector/InspectorPageAgent.cpp:
2748         (WebCore::InspectorPageAgent::InspectorPageAgent):
2749         (WebCore::InspectorPageAgent::willPaint):
2750         (WebCore::InspectorPageAgent::didPaint):
2751         * inspector/InspectorPageAgent.h:
2752
2753 2012-02-21  Peter Rybin  <peter.rybin@gmail.com>
2754
2755         Web Inspector: Switch Debugger agent to TypeBuilder
2756         https://bugs.webkit.org/show_bug.cgi?id=78390
2757
2758         Reviewed by Vsevolod Vlasov.
2759
2760         Client code is switched to TypeBuilder.
2761
2762         * inspector/CodeGeneratorInspector.py:
2763         * inspector/InjectedScript.cpp:
2764         (WebCore::InjectedScript::evaluateOnCallFrame):
2765         (WebCore::InjectedScript::getFunctionDetails):
2766         (WebCore::InjectedScript::getProperties):
2767         (WebCore::InjectedScript::wrapCallFrames):
2768         * inspector/InjectedScript.h:
2769         (InjectedScript):
2770         * inspector/InspectorDebuggerAgent.cpp:
2771         (WebCore::InspectorDebuggerAgent::setBreakpointByUrl):
2772         (WebCore::InspectorDebuggerAgent::resolveBreakpoint):
2773         (WebCore::InspectorDebuggerAgent::getFunctionDetails):
2774         (WebCore::InspectorDebuggerAgent::evaluateOnCallFrame):
2775         (WebCore::InspectorDebuggerAgent::currentCallFrames):
2776         (WebCore::InspectorDebuggerAgent::didParseSource):
2777         * inspector/InspectorDebuggerAgent.h:
2778         (InspectorDebuggerAgent):
2779
2780 2012-02-21  'Pavel Feldman'  <pfeldman@google.com>
2781
2782         Not reviewed: fixing poor merge in r108332.
2783
2784         * inspector/front-end/StylesSidebarPane.js:
2785         (WebInspector.StylePropertiesSection.prototype._handleSelectorClick):
2786         * inspector/front-end/externs.js:
2787
2788 2012-02-21  Alexander Pavlov  <apavlov@chromium.org>
2789
2790         Web Inspector: [Styles] Rule source URL tooltip should show line number
2791         https://bugs.webkit.org/show_bug.cgi?id=79087
2792
2793         Reviewed by Pavel Feldman.
2794
2795         * inspector/front-end/StylesSidebarPane.js:
2796         (WebInspector.StylePropertiesSection):
2797         (WebInspector.StylePropertiesSection.prototype._createRuleOriginNode):
2798
2799 2012-02-21  Pavel Feldman  <pfeldman@chomium.org>
2800
2801         Web Inspector: clicking empty space should not re-enter edit mode
2802         https://bugs.webkit.org/show_bug.cgi?id=79024
2803
2804         Reviewed by Vsevolod Vlasov.
2805
2806         * inspector/front-end/StylesSidebarPane.js:
2807         (WebInspector.StylePropertiesSection):
2808         (WebInspector.StylePropertiesSection.prototype._handleEmptySpaceMouseDown):
2809         (WebInspector.StylePropertiesSection.prototype._handleEmptySpaceClick):
2810
2811 2012-02-21  Pavel Feldman  <pfeldman@chomium.org>
2812
2813         Web Inspector: evaluate on hover does not work for large files.
2814         https://bugs.webkit.org/show_bug.cgi?id=79015
2815
2816         Reviewed by Yury Semikhatsky.
2817
2818         * inspector/front-end/JavaScriptSourceFrame.js:
2819         (WebInspector.JavaScriptSourceFrame.prototype._getPopoverAnchor):
2820         (WebInspector.JavaScriptSourceFrame.prototype._highlightExpression):
2821         * inspector/front-end/Popover.js:
2822         (WebInspector.PopoverHelper.prototype._handleMouseAction):
2823         * inspector/front-end/SourceJavaScriptTokenizer.js:
2824         (WebInspector.SourceJavaScriptTokenizer):
2825         (WebInspector.SourceJavaScriptTokenizer.prototype.nextToken):
2826         * inspector/front-end/SourceJavaScriptTokenizer.re2js:
2827
2828 2012-02-21  Pavel Feldman  <pfeldman@google.com>
2829
2830         Web Inspector: add "show paint rectangles" setting.
2831         https://bugs.webkit.org/show_bug.cgi?id=79030
2832
2833         Reviewed by Yury Semikhatsky.
2834
2835         * English.lproj/localizedStrings.js:
2836         * inspector/DOMNodeHighlighter.cpp:
2837         (WebCore::DOMNodeHighlighter::drawOutline):
2838         (DOMNodeHighlighter):
2839         * inspector/DOMNodeHighlighter.h:
2840         (WebCore):
2841         (DOMNodeHighlighter):
2842         * inspector/Inspector.json:
2843         * inspector/InspectorController.cpp:
2844         (WebCore::InspectorController::InspectorController):
2845         * inspector/InspectorInstrumentation.cpp:
2846         (WebCore::InspectorInstrumentation::willPaintImpl):
2847         (WebCore::InspectorInstrumentation::didPaintImpl):
2848         * inspector/InspectorInstrumentation.h:
2849         (WebCore):
2850         (InspectorInstrumentation):
2851         (WebCore::InspectorInstrumentation::willPaint):
2852         * inspector/InspectorPageAgent.cpp:
2853         (PageAgentState):
2854         (WebCore::InspectorPageAgent::create):
2855         (WebCore::InspectorPageAgent::InspectorPageAgent):
2856         (WebCore::InspectorPageAgent::setShowPaintRects):
2857         (WebCore):
2858         (WebCore::InspectorPageAgent::didClearWindowObjectInWorld):
2859         (WebCore::InspectorPageAgent::willPaint):
2860         (WebCore::InspectorPageAgent::didPaint):
2861         (WebCore::InspectorPageAgent::buildObjectForFrame):
2862         * inspector/InspectorPageAgent.h:
2863         (WebCore):
2864         * inspector/front-end/Settings.js:
2865         (WebInspector.Settings):
2866         * inspector/front-end/SettingsScreen.js:
2867         (WebInspector.SettingsScreen):
2868         (WebInspector.SettingsScreen.prototype._showPaintRectsChanged):
2869         * inspector/front-end/inspector.js:
2870         * page/FrameView.cpp:
2871         (WebCore::FrameView::paintContents):
2872         * rendering/RenderLayerBacking.cpp:
2873         (WebCore::RenderLayerBacking::paintContents):
2874
2875 2012-02-21  Andras Becsi  <andras.becsi@nokia.com>
2876
2877         [Qt] Clean-up project file after r108310
2878
2879         Reviewed by Csaba Osztrogonác.
2880
2881         No new tests needed.
2882
2883         * Target.pri: Fix path for TextTrack headers.
2884
2885 2012-02-17  Philippe Normand  <pnormand@igalia.com>
2886
2887         [GStreamer] media/W3C failures
2888         https://bugs.webkit.org/show_bug.cgi?id=75078
2889
2890         Reviewed by Martin Robinson.
2891
2892         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
2893         (WebCore::MediaPlayerPrivateGStreamer::load): Clean out everything
2894         after file:// url path to cope with media/W3C tests loading
2895         file:///path/to/media.ext?some parameters.
2896
2897 2012-02-21  Matt Lilek  <mrl@apple.com>
2898
2899         Not reviewed, build fix for non-client-based Geolocation builds after r107982.
2900
2901         * page/Geolocation.cpp:
2902
2903 2012-02-21  Yury Semikhatsky  <yurys@chromium.org>
2904
2905         [V8] Web Inspector: simplify worker debugger implementation
2906         https://bugs.webkit.org/show_bug.cgi?id=79085
2907
2908         There is one instance of WorkerScriptDebugServer per worker thread. We don't
2909         need to resolve WorkerContext from V8::Context anymore.
2910
2911         Reviewed by Pavel Feldman.
2912
2913         * bindings/v8/WorkerScriptDebugServer.cpp:
2914         (WebCore::WorkerScriptDebugServer::WorkerScriptDebugServer):
2915         (WebCore::WorkerScriptDebugServer::addListener):
2916         (WebCore::WorkerScriptDebugServer::removeListener):
2917         (WebCore::WorkerScriptDebugServer::getDebugListenerForContext):
2918         (WebCore::WorkerScriptDebugServer::runMessageLoopOnPause):
2919         * bindings/v8/WorkerScriptDebugServer.h:
2920         (WorkerScriptDebugServer):
2921         * inspector/WorkerDebuggerAgent.cpp:
2922         (WebCore::WorkerDebuggerAgent::WorkerDebuggerAgent):
2923         (WebCore::WorkerDebuggerAgent::startListeningScriptDebugServer):
2924         (WebCore::WorkerDebuggerAgent::stopListeningScriptDebugServer):
2925
2926 2012-02-21  Kentaro Hara  <haraken@chromium.org>
2927
2928         Enable the IDL attribute checker in Chromium
2929         https://bugs.webkit.org/show_bug.cgi?id=79082
2930
2931         Reviewed by Adam Barth.
2932
2933         We have fixed 10~ bugs caused by typos of IDL attributes.
2934         This patch adds an IDL attribute checker, which checks if all IDL attributes
2935         used in IDL files are implemented by code generators.
2936
2937             - The IDL attribute checker uses IDLAttributes.txt, which lists all
2938               IDL attributes implemented in code generators. If we want to add
2939               a new IDL attribute, we need to add it to IDLAttributes.txt manually.
2940             - The IDL attribute checker checks if all IDL attributes used in IDL files
2941               are listed in IDLAttributes.txt.
2942             - If the IDL attribute checker fails, the build fails with a verbose error message.
2943
2944         No tests. I manually checked that [Custommm], [CallWith=],
2945         [CallWith=ScriptExecutionContext|Foo] cause build failures.
2946
2947         * WebCore.gyp/WebCore.gyp: Modified to enable the IDL attribute checker.
2948
2949         * bindings/scripts/resolve-supplemental.pl:
2950         (loadIDLAttributes): This method loads a list of IDL attributes from IDLAttributes.txt.
2951         (checkIDLAttributes): This method implementes the IDL attribute checker as described above.
2952         (checkIfIDLAttributesExists):
2953
2954         * bindings/scripts/IDLParser.pm: "1" is not good to represent that
2955         the IDL attribute does not have any value. This patch changed it to "VALUE_IS_MISSING".
2956         (parseExtendedAttributes):
2957         (ParseInterface):
2958         * bindings/scripts/CodeGenerator.pm: Ditto.
2959         (ContentAttributeName):
2960         * bindings/scripts/CodeGeneratorV8.pm: Ditto.
2961         (GenerateNormalAttrGetter):
2962         (GenerateNormalAttrSetter):
2963         (GenerateSingleBatchedAttribute):
2964         (GetRuntimeEnableFunctionName):
2965         * bindings/scripts/IDLAttributes.txt: Added. This file lists all IDL attributes implemented
2966         in code generators.
2967
2968 2012-02-21  Patrick Gansterer  <paroga@webkit.org>
2969
2970         Use Win32 API to get file information
2971         https://bugs.webkit.org/show_bug.cgi?id=55336
2972
2973         Reviewed by Adam Roben.
2974
2975         Use FindFirstFile() in favour over _wstat64() to share the code with WinCE.
2976
2977         * platform/win/FileSystemWin.cpp:
2978         (WebCore):
2979         (WebCore::getFindData):
2980         (WebCore::getFileSize):
2981         (WebCore::getFileModificationTime):
2982         (WebCore::fileExists):
2983
2984 2012-02-20  Adam Barth  <abarth@webkit.org>
2985
2986         Invalid cast in WebCore::toElement / WebCore::HTMLElementStack::ElementRecord::element
2987         https://bugs.webkit.org/show_bug.cgi?id=78975
2988
2989         Reviewed by Eric Seidel.
2990
2991         We're supposed to set the action attribute on the form element we just
2992         created.  Previously, we assumed the newly created form element would
2993         be on the top of the stack of open elements, but if we're in the table
2994         body insertion mode, the form element gets treated as self closing and
2995         is therefore popped off the stack of open elements.
2996
2997         Fortunately, we already cache a pointer to the most recently inserted
2998         form element on the HTMLConstructionSite, so we can just grab the
2999         element from there.
3000
3001         Test: html5lib/runner.html
3002
3003         * html/parser/HTMLTreeBuilder.cpp:
3004         (WebCore::HTMLTreeBuilder::processIsindexStartTagForInBody):
3005         (WebCore):
3006
3007 2012-02-20  Adam Barth  <abarth@webkit.org>
3008
3009         Unite TextTrack-related files with their friends in WebCore/html/track
3010         https://bugs.webkit.org/show_bug.cgi?id=78941
3011
3012         Reviewed by Eric Seidel.
3013
3014         The code that supports <track> seems to be split between the
3015         WebCore/html directory and the WebCore/html/track directory.  This
3016         patch unites this code in the WebCore/html/track directory.
3017
3018         * CMakeLists.txt:
3019         * DerivedSources.make:
3020         * DerivedSources.pri:
3021         * GNUmakefile.list.am:
3022         * WebCore.gypi:
3023         * WebCore.xcodeproj/project.pbxproj:
3024         * html/LoadableTextTrack.cpp: Removed.
3025         * html/LoadableTextTrack.h: Removed.
3026         * html/TextTrack.cpp: Removed.
3027         * html/TextTrack.h: Removed.
3028         * html/TextTrack.idl: Removed.
3029         * html/TextTrackCue.cpp: Removed.
3030         * html/TextTrackCue.h: Removed.
3031         * html/TextTrackCue.idl: Removed.
3032         * html/TextTrackCueList.cpp: Removed.
3033         * html/TextTrackCueList.h: Removed.
3034         * html/TextTrackCueList.idl: Removed.
3035         * html/track/LoadableTextTrack.cpp: Copied from Source/WebCore/html/LoadableTextTrack.cpp.
3036         * html/track/LoadableTextTrack.h: Copied from Source/WebCore/html/LoadableTextTrack.h.
3037         * html/track/TextTrack.cpp: Copied from Source/WebCore/html/TextTrack.cpp.
3038         * html/track/TextTrack.h: Copied from Source/WebCore/html/TextTrack.h.
3039         * html/track/TextTrack.idl: Copied from Source/WebCore/html/TextTrack.idl.
3040         * html/track/TextTrackCue.cpp: Copied from Source/WebCore/html/TextTrackCue.cpp.
3041         * html/track/TextTrackCue.h: Copied from Source/WebCore/html/TextTrackCue.h.
3042         * html/track/TextTrackCue.idl: Copied from Source/WebCore/html/TextTrackCue.idl.
3043         * html/track/TextTrackCueList.cpp: Copied from Source/WebCore/html/TextTrackCueList.cpp.
3044         * html/track/TextTrackCueList.h: Copied from Source/WebCore/html/TextTrackCueList.h.
3045         * html/track/TextTrackCueList.idl: Copied from Source/WebCore/html/TextTrackCueList.idl.
3046
3047 2012-02-20  Filip Pizlo  <fpizlo@apple.com>
3048
3049         JSC should be a triple-tier VM
3050         https://bugs.webkit.org/show_bug.cgi?id=75812
3051         <rdar://problem/10079694>
3052
3053         Reviewed by Gavin Barraclough.
3054         
3055         No new tests, because there is no change in behavior.
3056
3057         * CMakeLists.txt:
3058
3059 2012-02-20  Benjamin Poulain  <benjamin@webkit.org>
3060
3061         Get rid of the LocalizationStrategy
3062         https://bugs.webkit.org/show_bug.cgi?id=78324
3063
3064         Reviewed by Sam Weinig.
3065
3066         Remove LocalizationStrategy and unify the localization behind
3067         LocalizedStrings.h and LocalizedStrings.cpp.
3068
3069         * CMakeLists.txt:
3070         * GNUmakefile.list.am:
3071         * Target.pri:
3072         * WebCore.exp.in:
3073         * WebCore.gypi:
3074         * WebCore.order:
3075         * WebCore.vcproj/WebCore.vcproj:
3076         * WebCore.xcodeproj/project.pbxproj:
3077         * platform/DefaultLocalizationStrategy.cpp: Removed.
3078         * platform/DefaultLocalizationStrategy.h: Removed.
3079         * platform/LocalizationStrategy.h: Removed.
3080         * platform/LocalizedStrings.cpp:
3081         * platform/LocalizedStrings.h:
3082         (WebCore):
3083         * platform/PlatformStrategies.cpp:
3084         * platform/PlatformStrategies.h:
3085         (WebCore):
3086         (WebCore::PlatformStrategies::PlatformStrategies):
3087         (PlatformStrategies):
3088         * platform/qt/LocalizedStringsQt.cpp: Copied from Source/WebKit/qt/WebCoreSupport/PlatformStrategiesQt.cpp.
3089
3090 2012-02-20  Kentaro Hara  <haraken@chromium.org>
3091
3092         Remove [TreatReturnedNullStringAsNull] from HTMLMediaElement.mediaGroup
3093         https://bugs.webkit.org/show_bug.cgi?id=79064
3094
3095         Reviewed by Hajime Morita.
3096
3097         [TreatReturnedNullStringAsNull] is a typo of [TreatReturnedNullStringAs=Null].
3098         But as far as I read the spec
3099         (http://www.whatwg.org/specs/web-apps/current-work/multipage/the-video-element.html#attr-media-mediagroup),
3100         there is no statement about what value should be returned when HTMLMediaElement.mediaGroup
3101         is not yet initialized. In particular, there is no statement that says "null should
3102         be returned when HTMLMediaElement.mediaGroup is not initialized". Thus, instead of
3103         fixing the typo, just removing [TreatReturnedNullStringAsNull] would make sense.
3104         Removing [TreatReturnedNullStringAsNull] does not change the current behavior.
3105
3106         Test: media/media-controller.html (No change in the test results.)
3107
3108         * html/HTMLMediaElement.idl:
3109
3110 2012-02-20  Hayato Ito  <hayato@chromium.org>
3111
3112         Use InsertinonPoint instead of HTMLContentElement.
3113         https://bugs.webkit.org/show_bug.cgi?id=78778
3114
3115         Reviewed by Hajime Morita.
3116
3117         Replace HTMLContentElement with InsertionPoint in NodeRenderingContext and HTMLContentSelection.
3118         This is one of followup patches for r108207.
3119
3120         No new tests, no change in behavior.
3121
3122         * dom/NodeRenderingContext.cpp:
3123         (WebCore::nextRendererOf):
3124         (WebCore::previousRendererOf):
3125         (WebCore::firstRendererOf):
3126         (WebCore::lastRendererOf):
3127         * dom/NodeRenderingContext.h:
3128         (WebCore):
3129         (NodeRenderingContext):
3130         (WebCore::NodeRenderingContext::insertionPoint):
3131         * dom/ShadowRoot.cpp:
3132         (WebCore::ShadowRoot::insertionPointFor):
3133         * dom/ShadowRoot.h:
3134         (WebCore):
3135         * html/shadow/HTMLContentElement.cpp:
3136         (WebCore::HTMLContentElement::HTMLContentElement):
3137         (WebCore::HTMLContentElement::attach):
3138         (WebCore::HTMLContentElement::detach):
3139         * html/shadow/HTMLContentElement.h:
3140         (HTMLContentElement):
3141         * html/shadow/HTMLContentSelector.cpp:
3142         (WebCore::HTMLContentSelector::select):
3143         * html/shadow/HTMLContentSelector.h:
3144         (WebCore):
3145         (HTMLContentSelection):
3146         (WebCore::HTMLContentSelection::insertionPoint):
3147         (WebCore::HTMLContentSelection::HTMLContentSelection):
3148         (WebCore::HTMLContentSelection::create):
3149         * html/shadow/InsertionPoint.cpp:
3150         (WebCore::InsertionPoint::InsertionPoint):
3151         * html/shadow/InsertionPoint.h:
3152         (WebCore::InsertionPoint::selections):
3153         (WebCore::InsertionPoint::hasSelection):
3154         (InsertionPoint):
3155
3156 2012-02-20  David Barton  <dbarton@mathscribe.com>
3157
3158         MathML internals - code clean-up for RenderMathMLSubSup
3159         https://bugs.webkit.org/show_bug.cgi?id=79063
3160
3161         Reviewed by Eric Seidel.
3162
3163         In the next patch, I will shrink and revise the <msubsup> formatting code. To make this
3164         easier to follow, I am first doing some simple code clean-up.
3165
3166         No new tests.
3167
3168         * rendering/mathml/RenderMathMLRow.cpp:
3169         (WebCore::RenderMathMLRow::layout):
3170         * rendering/mathml/RenderMathMLRow.h:
3171         (WebCore::RenderMathMLRow::isRenderMathMLRow):
3172         * rendering/mathml/RenderMathMLSubSup.cpp:
3173         (WebCore::RenderMathMLSubSup::stretchToHeight):
3174         (WebCore::RenderMathMLSubSup::layout):
3175             - There is no need to iterate over baseWrapper's children since it should have only
3176               one child, the base of the <msubsup>.
3177
3178 2012-02-20  Kentaro Hara  <haraken@chromium.org>
3179
3180         Replace [V8Custom=DOMWindowNOP] with [V8Custom]
3181         https://bugs.webkit.org/show_bug.cgi?id=79062
3182
3183         Reviewed by Adam Barth.
3184
3185         [V8Custom=DOMWindowNOP] is not implemented by CodeGeneratorV8.pm.
3186         This patch replaces it with [V8Custom].
3187
3188         No new tests. No change in behavior.
3189
3190         * page/DOMWindow.idl:
3191
3192 2012-02-20  Kentaro Hara  <haraken@chromium.org>
3193
3194         [JSGenerateIsReachable=ImplRoot] is not implemented, it should be [JSGenerateIsReachable]
3195         https://bugs.webkit.org/show_bug.cgi?id=79061
3196
3197         Reviewed by Adam Barth.
3198
3199         CSSStyleDeclaration.idl uses [JSGenerateIsReachable=ImplRoot],
3200         but "ImplRoot" is not implemented in CodeGeneratorJS.pm.
3201         This patch replaces [JSGenerateIsReachable=ImplRoot] with [JSGenerateIsReachable].
3202
3203         No tests. No change in behavior.
3204
3205         * css/CSSStyleDeclaration.idl:
3206
3207 2012-02-20  Kentaro Hara  <haraken@chromium.org>
3208
3209         [EnabledAtRuntime] in HTMLShadowElement.idl should be [V8EnabledAtRuntime]
3210         https://bugs.webkit.org/show_bug.cgi?id=79058
3211
3212         Reviewed by Adam Barth.
3213
3214         [EnabledAtRuntime] does not exist any longer. It should be [V8EnabledAtRuntime].
3215
3216         No tests.
3217
3218         * html/shadow/HTMLShadowElement.idl:
3219
3220 2012-02-20  Kentaro Hara  <haraken@chromium.org>
3221
3222         Replace [Callback=FunctionOnly] with [Callback]
3223         https://bugs.webkit.org/show_bug.cgi?id=79060
3224
3225         Reviewed by Adam Barth.
3226
3227         [Callback=FunctionOnly] is not implemented by any code generator.
3228         This patch replaces it with [Callback].
3229
3230         No tests. No change in behavior.
3231
3232         * Modules/intents/IntentResultCallback.idl:
3233         * Modules/intents/NavigatorIntents.idl:
3234         * dom/RequestAnimationFrameCallback.idl:
3235         * mediastream/NavigatorMediaStream.idl:
3236         * mediastream/NavigatorUserMediaErrorCallback.idl:
3237         * mediastream/NavigatorUserMediaSuccessCallback.idl:
3238         * mediastream/PeerConnection.idl:
3239         * mediastream/SignalingCallback.idl:
3240         * page/PositionCallback.idl:
3241         * page/PositionErrorCallback.idl:
3242
3243 2012-02-20  Andy Chen  <andchen@rim.com>
3244
3245         2012-02-17  Andy Chen  <andchen@rim.com>
3246
3247         [BlackBerry] Need to override active/inactive text search highlight color for RenderThemeBlackBerry
3248         https://bugs.webkit.org/show_bug.cgi?id=78920
3249
3250         Override two functions for text search highlight colors so that we can
3251         provide platform specified colors.
3252
3253         Reviewed by Antonio Gomes.
3254
3255         No function change so no new tests.
3256
3257         * platform/blackberry/RenderThemeBlackBerry.cpp:
3258         (WebCore::RenderThemeBlackBerry::platformActiveTextSearchHighlightColor):
3259         (WebCore::RenderThemeBlackBerry::platformInactiveTextSearchHighlightColor):
3260         * platform/blackberry/RenderThemeBlackBerry.h:
3261
3262 2012-02-20  John Knottenbelt  <jknotten@chromium.org>
3263
3264         Default canvas backing store to be 1:1 with specified dimensions.
3265         https://bugs.webkit.org/show_bug.cgi?id=78971
3266
3267         Reviewed by Adam Barth.
3268
3269         Although the canvas specification states that the backing image may
3270         be larger than the user-specified dimensions, there are a number of
3271         philip canvas tests that fail when the backing image data is not
3272         1:1 with the specified canvas dimensions. These failures are
3273         tracked in https://bugs.webkit.org/show_bug.cgi?id=73645
3274
3275         This change defaults the canvas backing store to be 1:1 with the
3276         user-specified dimensions, while also providing an
3277         ENABLE(HIGH_DPI_CANVAS) build option to reinstate the original
3278         behaviour, so that the above bug may be more easily fixed.
3279
3280         * html/HTMLCanvasElement.cpp:
3281         (WebCore::HTMLCanvasElement::HTMLCanvasElement):
3282
3283 2012-02-20  Mary Wu  <mary.wu@torchmobile.com.cn>
3284
3285         Upstream RenderThemeBlackberry.h/.cpp into WebCore/platform/blackberry
3286         https://bugs.webkit.org/show_bug.cgi?id=78785
3287
3288         Main Contributors:
3289         Daniel Bates <dbates@rim.com>
3290         Bryan Gislason <bgislason@rim.com>
3291         Akash Vaswani <akvaswani@rim.com>
3292         Dave Battista <dbattista@rim.com>
3293         Robin Cao  <robin.cao@torchmobile.com.cn>
3294         Genevieve Mak <gmak@rim.com>
3295         Mike Fenton  <mifenton@rim.com>
3296
3297         Reviewed by Antonio Gomes.
3298
3299         Initial upstream, no new tests.
3300
3301         * platform/blackberry/RenderThemeBlackBerry.cpp: Added.
3302         * platform/blackberry/RenderThemeBlackBerry.h: Added.
3303
3304 2012-02-20  Martin Robinson  <mrobinson@igalia.com>
3305
3306         [GTK] [EFL] Collapse duplicate WebGL support code
3307         https://bugs.webkit.org/show_bug.cgi?id=78970
3308
3309         Reviewed by Gustavo Noronha Silva.
3310
3311         No new tests. This just cleans up duplicated code.
3312
3313         Centralize duplicated WebGL code for EFL and GTK+ in the Cairo
3314         directory. This is in preparation for the changes necessary to
3315         connect WebGL to the TextureMapper AC.
3316
3317         * GNUmakefile.list.am: Update source list.
3318         * PlatformEfl.cmake: Update source list.
3319         * platform/graphics/cairo/DrawingBufferCairo.cpp: Renamed from Source/WebCore/platform/graphics/gtk/DrawingBufferGtk.cpp.
3320         * platform/graphics/cairo/GraphicsContext3DCairo.cpp: Integrated the code From GraphicsContext3DGtk.cpp.
3321         * platform/graphics/efl/DrawingBufferEfl.cpp: Removed.
3322         * platform/graphics/efl/GraphicsContext3DEfl.cpp: Removed.
3323         * platform/graphics/gtk/GraphicsContext3DGtk.cpp: Removed.
3324
3325 2012-02-20  Martin Robinson  <mrobinson@igalia.com>
3326
3327         [UNIX] Plugin information fields are not interpreted as UTF-8
3328         https://bugs.webkit.org/show_bug.cgi?id=78635
3329
3330         Reviewed by Gustavo Noronha Silva.
3331
3332         Interpret plugin metadata as UTF8 aways. This matches the behavior
3333         of Chromium and the Totem plugin.
3334
3335         This is tested by a change to TestNetscapePlugin and expectations updates.
3336
3337         * plugins/efl/PluginPackageEfl.cpp:
3338         (WebCore::PluginPackage::fetchInfo): Use String::fromUTF8.
3339         * plugins/gtk/PluginPackageGtk.cpp:
3340         (WebCore::PluginPackage::fetchInfo): Use String::fromUTF8.
3341         * plugins/qt/PluginPackageQt.cpp:
3342         (WebCore::PluginPackage::fetchInfo): Use String::fromUTF8.
3343
3344 2012-02-20  Martin Robinson  <mrobinson@igalia.com>
3345
3346         [GTK] Web content oftens steals focus from other widgets
3347         https://bugs.webkit.org/show_bug.cgi?id=77791
3348
3349         Reviewed by Gustavo Noronha Silva.
3350
3351         * platform/gtk/WidgetGtk.cpp:
3352         (WebCore::Widget::setFocus): No longer do anything special to try
3353         to grab "real" widget focus. This matches the behavior on Qt.
3354         * plugins/gtk/PluginViewGtk.cpp:
3355         (WebCore::PluginView::setFocus): Moved the focus handling to here.
3356         This ensures that behavior for plugins does not change.
3357
3358 2012-02-20  Yael Aharon  <yael.aharon@nokia.com>
3359
3360         Regression (108135) isOpaque() returns uninitialized variable.
3361         https://bugs.webkit.org/show_bug.cgi?id=79049
3362
3363         Reviewed by Noam Rosenthal.
3364
3365         isOpaque() should use the new m_flags instead of the old m_isOpaque.
3366         No new tests. No new functionality.
3367
3368         * platform/graphics/texmap/TextureMapper.h:
3369         (WebCore::BitmapTexture::reset):
3370         (WebCore::BitmapTexture::isOpaque):
3371         (BitmapTexture):
3372
3373 2012-02-20  Kentaro Hara  <haraken@chromium.org>
3374
3375         Unreviewed. Rebaselined run-bindings-tests results.
3376
3377         * bindings/scripts/test/CPP/WebDOMTestInterface.cpp:
3378         * bindings/scripts/test/CPP/WebDOMTestInterface.h:
3379         * bindings/scripts/test/CPP/WebDOMTestObj.cpp:
3380         * bindings/scripts/test/CPP/WebDOMTestObj.h:
3381
3382 2012-02-20  No'am Rosenthal  <noam.rosenthal@nokia.com>
3383
3384         [Qt][WK2] Clipping is broken
3385         https://bugs.webkit.org/show_bug.cgi?id=78677
3386
3387         It's not necessary to add a full-viewport rect to the scissor clip stack.
3388         It creates a situation where if there's a clip in the page, we return to
3389         the viewport clip instead of applying the WebView's clip we got from the
3390         scenegraph.
3391
3392         Also, it's unnecessary to clip before we paint the layer's content, we should
3393         only clip afterwards, before painting the children. 
3394
3395         Reviewed by Kenneth Rohde Christiansen.
3396
3397         No new functionality.
3398
3399         * platform/graphics/opengl/TextureMapperGL.cpp:
3400         (WebCore::BitmapTextureGL::size):
3401         (WebCore::scissorClip):
3402         (WebCore):
3403         (WebCore::TextureMapperGL::beginScissorClip):
3404         (WebCore::TextureMapperGL::endScissorClip):
3405         * platform/graphics/texmap/TextureMapperLayer.cpp:
3406         (WebCore::TextureMapperLayer::paintSelfAndChildren):
3407
3408 2012-02-20  No'am Rosenthal  <noam.rosenthal@nokia.com>
3409
3410         [Texmap] Layers and tiles appear to have missing pixels in their right/bottom borders
3411         https://bugs.webkit.org/show_bug.cgi?id=78961
3412
3413         The relativeSize member should point to one pixel before the edge, since it's used
3414         by glVertexAttribPointer, which takes edge points and not sizes.
3415
3416         Reviewed by Kenneth Rohde Christiansen.
3417
3418         No new funcionality.
3419
3420         * platform/graphics/opengl/TextureMapperGL.cpp:
3421         (WebCore::BitmapTextureGL::didReset):
3422
3423 2012-02-20  Kihong Kwon  <kihong.kwon@samsung.com>
3424
3425         Add a new API for the Vibration API(W3C).
3426         https://bugs.webkit.org/show_bug.cgi?id=72010
3427
3428         http://dev.w3.org/2009/dap/vibration/
3429         This patch implements navigator.webkitvibrate() API.
3430         This API operates differently depending upon a given parameter:
3431         1. It cancels vibration when given 0 or [].
3432         2. It gives a vibration duration in milliseconds when given as a single integer value.
3433         3. It gives a vibration pattern when given as an integer array. For instance, [1000 300 1000] generates a vibration of 1000ms followed by 300ms of idle time, and then creates another vibration of 1000ms.
3434
3435         Reviewed by Hajime Morita.
3436
3437         Test: fast/dom/navigator-vibration.html
3438
3439         * CMakeLists.txt:
3440         * Modules/vibration/NavigatorVibration.cpp: Added.
3441         (WebCore):
3442         (WebCore::NavigatorVibration::NavigatorVibration):
3443         (WebCore::NavigatorVibration::~NavigatorVibration):
3444         (WebCore::NavigatorVibration::webkitVibrate):
3445         Add webkitVibrate method to get an array or single integer parameter for vibrating.
3446         They check vibration is activated in the platform, and then call vibrate() in the Vibration class.
3447         * Modules/vibration/NavigatorVibration.h: Added.
3448         (WebCore):
3449         (NavigatorVibration):
3450         * Modules/vibration/NavigatorVibration.idl: Added.
3451         * Modules/vibration/Vibration.cpp: Added.
3452         This class implements the entire vibration logic.
3453         (WebCore):
3454         (WebCore::Vibration::Vibration):
3455         (WebCore::Vibration::~Vibration):
3456         (WebCore::Vibration::create):
3457         (WebCore::Vibration::vibrate):
3458         (WebCore::Vibration::cancelVibration):
3459         (WebCore::Vibration::suspendVibration):
3460         (WebCore::Vibration::resumeVibration):
3461         (WebCore::Vibration::timerStartFired):
3462         (WebCore::Vibration::timerStopFired):
3463         (WebCore::Vibration::supplementName):
3464         (WebCore::Vibration::isActive):
3465         (WebCore::provideVibrationTo):
3466         * Modules/vibration/Vibration.h: Added.
3467         (WebCore):
3468         (Vibration):
3469         (WebCore::Vibration::from):
3470         * Modules/vibration/VibrationClient.h: Added.
3471         vibrate() and cancelVibrate() need to be implemented in the VibrationClient.
3472         (WebCore):
3473         (VibrationClient):
3474         (WebCore::VibrationClient::~VibrationClient):
3475
3476 2012-02-20  Yuta Kitamura  <yutak@chromium.org>
3477
3478         Unreviewed, rolling out r108263.
3479         http://trac.webkit.org/changeset/108263
3480         https://bugs.webkit.org/show_bug.cgi?id=77856
3481
3482         Broke Chromium Windows build.
3483
3484         * platform/audio/DynamicsCompressor.cpp:
3485         (WebCore::DynamicsCompressor::DynamicsCompressor):
3486         (WebCore::DynamicsCompressor::setEmphasisStageParameters):
3487         (WebCore::DynamicsCompressor::process):
3488         (WebCore::DynamicsCompressor::reset):
3489         * platform/audio/DynamicsCompressor.h:
3490         (WebCore::DynamicsCompressor::isStereo):
3491         (DynamicsCompressor):
3492         * platform/audio/DynamicsCompressorKernel.cpp:
3493         (WebCore::DynamicsCompressorKernel::DynamicsCompressorKernel):
3494         (WebCore::DynamicsCompressorKernel::setPreDelayTime):
3495         (WebCore::DynamicsCompressorKernel::process):
3496         (WebCore::DynamicsCompressorKernel::reset):
3497         * platform/audio/DynamicsCompressorKernel.h:
3498         (DynamicsCompressorKernel):
3499         * webaudio/DynamicsCompressorNode.cpp:
3500         (WebCore::DynamicsCompressorNode::DynamicsCompressorNode):
3501         (WebCore::DynamicsCompressorNode::initialize):
3502
3503 2012-02-20  Raymond Liu  <raymond.liu@intel.com>
3504
3505         Have the DynamicsCompressorNode support multi-channel data
3506         https://bugs.webkit.org/show_bug.cgi?id=77856
3507
3508         Reviewed by Chris Rogers.
3509
3510         * platform/audio/DynamicsCompressor.cpp:
3511         (WebCore::DynamicsCompressor::DynamicsCompressor):
3512         (WebCore::DynamicsCompressor::setEmphasisStageParameters):
3513         (WebCore::DynamicsCompressor::process):
3514         (WebCore::DynamicsCompressor::reset):
3515         (WebCore::DynamicsCompressor::setNumberOfChannels):
3516         (WebCore):
3517         * platform/audio/DynamicsCompressor.h:
3518         (DynamicsCompressor):
3519         * platform/audio/DynamicsCompressorKernel.cpp:
3520         (WebCore::DynamicsCompressorKernel::DynamicsCompressorKernel):
3521         (WebCore::DynamicsCompressorKernel::setNumberOfChannels):
3522         (WebCore):
3523         (WebCore::DynamicsCompressorKernel::setPreDelayTime):
3524         (WebCore::DynamicsCompressorKernel::process):
3525         (WebCore::DynamicsCompressorKernel::reset):
3526         * platform/audio/DynamicsCompressorKernel.h:
3527         (DynamicsCompressorKernel):
3528         * webaudio/DynamicsCompressorNode.cpp:
3529         (WebCore::DynamicsCompressorNode::DynamicsCompressorNode):
3530         (WebCore::DynamicsCompressorNode::initialize):
3531
3532 2012-02-20  David Barton  <dbarton@mathscribe.com>
3533
3534         RenderMathMLRow::baselinePosition() only if linePositionMode == PositionOnContainingLine
3535         https://bugs.webkit.org/show_bug.cgi?id=79039
3536
3537         Reviewed by Eric Seidel.
3538
3539         RenderMathMLRow::baselinePosition() is actually unnecessary, but I am deleting it in two
3540         steps. First we add a guard to restrict it to the intended PositionOnContainingLine
3541         case, leaving PositionOfInteriorLineBoxes to a superclass, RenderBlock. This removes
3542         some randomness, and tightens up the results of four existing test files.
3543
3544         Test: mathml/presentation/row.xhtml, fenced.xhtml, mo.xhtml, and mo-stretch.html
3545
3546         * rendering/mathml/RenderMathMLRow.cpp:
3547         (WebCore::RenderMathMLRow::baselinePosition):
3548
3549 2012-02-18  Jon Lee  <jonlee@apple.com>
3550
3551         HTML input file control "No File Selected" needs more room in some languages
3552         https://bugs.webkit.org/show_bug.cgi?id=32366
3553         <rdar://problem/4481028>
3554
3555         Reviewed by David Hyatt.
3556
3557         The patch exposes a function to return the "no file(s) selected" label text.
3558
3559         * rendering/RenderTheme.cpp:
3560         (WebCore::RenderTheme::fileListDefaultLabel): Added to expose the text for the label in
3561         file upload controls when nothing has been selected.
3562         (WebCore::RenderTheme::fileListNameForWidth): Refactor to use fileListDefaultLabel().
3563         * rendering/RenderTheme.h: Change fileListNameForWidth() to be a const function.
3564
3565         * rendering/RenderThemeMac.h: Update fileListNameForWidth() to be a const function for
3566         platform implementations.
3567         * rendering/RenderThemeMac.mm:
3568         (WebCore::RenderThemeMac::fileListNameForWidth): Refactor to use fileListDefaultLabel().
3569
3570         Update fileListNameForWidth() to be a const function for platform implementations.
3571         * platform/gtk/RenderThemeGtk.h:
3572         * platform/gtk/RenderThemeGtk.cpp:
3573         * platform/qt/RenderThemeQt.h:
3574         * platform/qt/RenderThemeQt.cpp:
3575
3576         * rendering/RenderFileUploadControl.cpp:
3577         (WebCore::RenderFileUploadControl::computePreferredLogicalWidths): Change the calculation
3578         of the max preferred logical width. Calculate the length of the "no file(s) selected" text,
3579         and include the button and after-button margin. Take the max of that and the original
3580         default width, which was a string of 34 (defaultWidthNumChars) "0"'s, in the case that the
3581         label text is too short.
3582
3583 2012-02-20  Gavin Barraclough  <barraclough@apple.com>
3584
3585         Rubber stamped by Sam Weinig.
3586
3587         * bindings/js/JSDOMWindowBase.cpp:
3588         (WebCore::JSDOMWindowBase::allowsAccessFrom):
3589             - Errk, remove dead code from end of function.
3590
3591 2012-02-16  Gavin Barraclough  <barraclough@apple.com>
3592
3593         Move special __proto__ property to Object.prototype
3594         https://bugs.webkit.org/show_bug.cgi?id=78409
3595
3596         Reviewed by Oliver Hunt.
3597
3598         Re-implement this as a regular accessor property.  This has three key benefits:
3599         1) It makes it possible for objects to be given properties named __proto__.
3600         2) Object.prototype.__proto__ can be deleted, preventing object prototypes from being changed.
3601         3) This largely removes the magic used the implement __proto__, it can just be made a regular accessor property.
3602
3603         * bindings/js/JSDOMWindowBase.cpp:
3604         (WebCore::JSDOMWindowBase::allowsAccessFrom):
3605         (WebCore):
3606             - expose allowsAccessFrom check to JSC.
3607         * bindings/js/JSDOMWindowBase.h:
3608         (JSDOMWindowBase):
3609             - expose allowsAccessFrom check to JSC.
3610
3611 2012-02-20  Benjamin Poulain  <benjamin@webkit.org>
3612
3613         Make JSCSSStyleDeclaration work directly with CSS Property ID
3614         https://bugs.webkit.org/show_bug.cgi?id=79014
3615
3616         Reviewed by Geoffrey Garen.
3617
3618         Previously, accessing the CSS property was done by converting from
3619         the JavaScript name to the CSS name, then converting that name to a lowercase
3620         character array, and finally getting the CSS property ID.
3621
3622         This patch cut the indirection and make the code go directly from the
3623         JavaScript name conversion to the CSS property ID.
3624
3625         This improves the performance mainly due to the following:
3626         -avoid dynamic memory allocation
3627         -cut the conversion early when possible
3628         -do not parse the string twice
3629         The previous fast-path optimization was removed because it is no longer
3630         necessary with this change.
3631
3632         The improvement are the following:
3633         -previous fast-path: no change
3634         -previous slow-path: ~3 times faster
3635
3636         Test: fast/dom/CSSStyleDeclaration/access-longest-css-property.html
3637         This just test the edge case of CSSPropertyName.
3638
3639         * bindings/js/JSCSSStyleDeclarationCustom.cpp:
3640         (WebCore::writeWebKitPrefix):
3641         (WebCore::writeEpubPrefix):
3642         (WebCore::cssPropertyIDForJSCSSPropertyName):
3643         (WebCore::isCSSPropertyName):
3644         (WebCore::JSCSSStyleDeclaration::nameGetter):
3645         (WebCore::JSCSSStyleDeclaration::putDelegate):
3646         * css/CSSParser.cpp:
3647         (WebCore::cssPropertyID):
3648         (WebCore):
3649         (WebCore::cssPropertyNameIOSAliasing):
3650         * css/CSSParser.h:
3651         (WebCore):
3652
3653 2012-02-20  Dan Bernstein  <mitz@apple.com>
3654
3655         Updated Localizable.strings after r107440.
3656
3657         Rubber-stamped by Joseph Pecoraro.
3658
3659         * English.lproj/Localizable.strings:
3660
3661 2012-02-20  David Barton  <dbarton@mathscribe.com>
3662
3663         MathML internals - remove nonOperatorHeight(), hasBase()
3664         https://bugs.webkit.org/show_bug.cgi?id=78977
3665
3666         Reviewed by Eric Seidel.
3667
3668         Stretchy operators, including embellished ones, should stretch to the largest height of
3669         the non-stretchy items in the same explicit or implicit <mrow>.
3670         RenderMathMLRow::layout() used to use hasBase(), isRenderMathMLOperator(), and
3671         nonOperatorHeight() to approximate this height. We now use unembellishedOperator() to
3672         improve this approximation, while also simplifying the code. More plainly, the code used
3673         to skip all operators when estimating this height, instead of just the stretchy ones. We
3674         continue to do that for now, but we more accurately skip all embellished operators
3675         (using our currently implemented approximate definition of this), and use the simple and
3676         true height of the remaining items. In case all items in the row are stretchy,
3677         style()->fontSize() is better than using whatever heights these items currently happen
3678         to be stretched to.
3679
3680         Test: mathml/presentation/mo-stretch.html, and many existing tests
3681
3682         * rendering/mathml/RenderMathMLBlock.cpp:
3683         (WebCore):
3684         * rendering/mathml/RenderMathMLBlock.h:
3685         (WebCore::RenderMathMLBlock::unembellishedOperator):
3686         * rendering/mathml/RenderMathMLRow.cpp:
3687         (WebCore):
3688         (WebCore::RenderMathMLRow::layout):
3689         * rendering/mathml/RenderMathMLRow.h:
3690         (WebCore::RenderMathMLRow::isRenderMathMLRow):
3691         * rendering/mathml/RenderMathMLSubSup.cpp:
3692         (WebCore):
3693         * rendering/mathml/RenderMathMLSubSup.h:
3694         (RenderMathMLSubSup):
3695         * rendering/mathml/RenderMathMLUnderOver.cpp:
3696         (WebCore):
3697         * rendering/mathml/RenderMathMLUnderOver.h:
3698         (RenderMathMLUnderOver):
3699
3700 2012-02-17  Anders Carlsson  <andersca@apple.com>
3701
3702         Stop the committer timer when the page is destroyed
3703         https://bugs.webkit.org/show_bug.cgi?id=78907
3704
3705         Reviewed by Adam Roben.
3706
3707         We don't want the committer timer to fire after the scrolling tree has been invalidated,
3708         so stop the committer timer to prevent it from firing and trying to access the scrolling tree.
3709
3710         * page/scrolling/ScrollingCoordinator.cpp:
3711         (WebCore::ScrollingCoordinator::pageDestroyed):
3712
3713 2012-02-20  Patrick Gansterer  <paroga@webkit.org>
3714
3715         [WIN] Allow compiling FileSystem without CoreFoundation.
3716         https://bugs.webkit.org/show_bug.cgi?id=79032
3717
3718         Reviewed by Adam Roben.
3719
3720         Add #if USE(CF) around code using the CoreFoundation functions.
3721
3722         * platform/FileSystem.h:
3723         * platform/win/FileSystemWin.cpp:
3724
3725 2012-02-20  Robin Cao  <robin.cao@torchmobile.com.cn>
3726
3727         [BlackBerry] Upstream the first few files in platform/graphics/blackberry
3728         https://bugs.webkit.org/show_bug.cgi?id=79023
3729
3730         Reviewed by Antonio Gomes.
3731
3732         Initial upstreaming, no new tests.
3733
3734         * platform/graphics/blackberry/FloatPointBlackBerry.cpp: Added.
3735         (WebCore):
3736         (WebCore::FloatPoint::FloatPoint):
3737         (WebCore::FloatPoint::operator BlackBerry::Platform::FloatPoint):
3738         * platform/graphics/blackberry/FloatRectBlackBerry.cpp: Added.
3739         (WebCore):
3740         (WebCore::FloatRect::FloatRect):
3741         (WebCore::FloatRect::operator BlackBerry::Platform::FloatRect):
3742         * platform/graphics/blackberry/FloatSizeBlackBerry.cpp: Added.
3743         (WebCore):
3744         (WebCore::FloatSize::FloatSize):
3745         (WebCore::FloatSize::operator BlackBerry::Platform::FloatSize):
3746         * platform/graphics/blackberry/IntPointBlackBerry.cpp: Added.
3747         (WebCore):
3748         (WebCore::IntPoint::IntPoint):
3749         (WebCore::IntPoint::operator BlackBerry::Platform::IntPoint):
3750         * platform/graphics/blackberry/IntRectBlackBerry.cpp: Added.
3751         (WebCore):
3752         (WebCore::IntRect::IntRect):
3753         (WebCore::IntRect::operator BlackBerry::Platform::IntRect):
3754         * platform/graphics/blackberry/IntSizeBlackBerry.cpp: Added.
3755         (WebCore):
3756         (WebCore::IntSize::IntSize):
3757         (WebCore::IntSize::operator BlackBerry::Platform::IntSize):
3758
3759 2012-02-20  Patrick Gansterer  <paroga@webkit.org>
3760
3761         [WIN] Share openTemporaryFile with WinCE
3762         https://bugs.webkit.org/show_bug.cgi?id=58750
3763
3764         Reviewed by Adam Roben.
3765
3766         Use pathByAppendingComponent instead of PathCombine to share the
3767         code with WinCE. Also use the wide version of Windows functions.
3768
3769         * platform/win/FileSystemWin.cpp:
3770         (WebCore::openTemporaryFile):
3771
3772 2012-02-20  Victor Carbune  <victor@rosedu.org>
3773
3774         Added code to support dispatching of missed cues in case of normal playback
3775         and event sorting in case of simultaneous event triggering.
3776
3777         <track>-related events cuechange, enter, and exit should be sorted and filtered before dispatching
3778         https://bugs.webkit.org/show_bug.cgi?id=72171
3779
3780         Reviewed by Eric Carlson.
3781
3782         Tests: media/track/track-cues-missed.html
3783                media/track/track-cues-sorted-before-dispatch.html
3784
3785         * html/HTMLMediaElement.cpp:
3786         (WebCore::HTMLMediaElement::HTMLMediaElement): Added initialization code
3787         for newly added state variables.
3788         (WebCore::trackIndexCompare): Static boolean compare function between
3789         the index of two tracks.
3790         (WebCore):
3791         (WebCore::eventTimeCueCompare): Static boolean compare function between
3792         events associated with text track cues.
3793         (WebCore::HTMLMediaElement::updateActiveTextTrackCues): Added code to
3794         sort the events associated with text track cues before dispatching.
3795         Each step from the specification is commented within the code.
3796         (WebCore::HTMLMediaElement::finishSeek): Added a boolean variable that
3797         is needed within the text track update function, to know whether a seek
3798         event has occured before or not.
3799         (WebCore::HTMLMediaElement::mediaPlayerTimeChanged): Moved the update
3800         call for text tracks at the beginning of the function instead of the end.
3801         'ended' events for video should be dispatched after track specific events.
3802         * html/HTMLMediaElement.h: Added variables to keep
3803         state information required by the text track update algorithm (last time
3804         the algorithm was run, and whether a seeking event has occured)
3805         (HTMLMediaElement):
3806
3807         * html/LoadableTextTrack.cpp: Refactored fireCueChangeEvent method
3808         (WebCore::LoadableTextTrack::fireCueChangeEvent): The method dispatches a
3809         synchronous cue change event for the track element.
3810         * html/LoadableTextTrack.h:
3811         (LoadableTextTrack):
3812         * html/TextTrack.cpp: Modified the fireCueChange method, cached track index.
3813         (WebCore::TextTrack::TextTrack):
3814         (WebCore::TextTrack::trackIndex): Cached the track index.
3815         (WebCore):
3816         (WebCore::TextTrack::invalidateTrackIndex): Invalidates the track. Used
3817         when a new track is added in a TextTrackList instance.
3818         * html/TextTrack.h:
3819         (TextTrack):
3820         (WebCore::TextTrack::fireCueChangeEvent): The fireCueChangeEvent has been changed,
3821         as events need to be fired asyncronously.
3822         * html/TextTrackCue.cpp: Added internal variables to keep the current index
3823         position in the track cue order. This is invalidated when an element is
3824         inserted before.
3825         (WebCore::TextTrackCue::TextTrackCue):
3826         (WebCore::TextTrackCue::cueIndex): Getter for the cueIndex.
3827         (WebCore):
3828         (WebCore::TextTrackCue::invalidateCueIndex): Invalidates the currently stored
3829         cue index.
3830         (WebCore::TextTrackCue::dispatchEvent): Event dispatching is done asynchronously
3831         now. This should be the only method used for event dispatching.
3832         (WebCore::TextTrackCue::setIsActive): The setIsActive method no longer dispatches
3833         events, but rather just changes the m_isActive variable.
3834         * html/TextTrackCue.h:
3835         (TextTrackCue):
3836
3837         * html/TextTrackCueList.cpp:
3838         (WebCore::TextTrackCueList::getCueIndex): Retrieves the cue index, in the track cue
3839         order, of a given cue.
3840         (WebCore):
3841         (WebCore::TextTrackCueList::add): Modified the add method such that all the next cue
3842         indexes are invalidated.
3843         (WebCore::TextTrackCueList::invalidateCueIndexes): Invalidates all cue indexes starting
3844         with a specific position.
3845         * html/TextTrackCueList.h:
3846         (TextTrackCueList):
3847         * html/track/TextTrackList.cpp:
3848         (TextTrackList::getTrackIndex): Retrieves the track index position.
3849         (TextTrackList::append): Added method for invalidating the text track index in case of
3850         changing the list contents.
3851         * html/track/TextTrackList.h:
3852         (TextTrackList):
3853
3854 2012-02-20  Kenichi Ishibashi  <bashi@chromium.org>
3855
3856         [WebSocket] Move WebSocketChannel::FrameData into a separate header file
3857         https://bugs.webkit.org/show_bug.cgi?id=78682
3858
3859         Extract WebSocketChannel::FrameData as WebSocketFrame. This brings
3860         flexibility to add classes which want to do something for
3861         incoming/outgoing frames (e.g. compression/decompression).
3862
3863         Reviewed by Kent Tamura.
3864
3865         No new tests. No behavior change.
3866
3867         * GNUmakefile.list.am: AddedWebSocketFrame.h
3868         * Target.pri: Ditto.
3869         * WebCore.gypi: Ditto.
3870         * WebCore.vcproj/WebCore.vcproj: Ditto.
3871         * WebCore.xcodeproj/project.pbxproj: Ditto.
3872         * websockets/WebSocketChannel.cpp: Modified to use WebSocketFrame instead of FrameData
3873         (WebCore):
3874         (WebCore::WebSocketChannel::send):
3875         (WebCore::WebSocketChannel::startClosingHandshake):
3876         (WebCore::WebSocketChannel::parseFrame):
3877         (WebCore::WebSocketChannel::processFrame):
3878         (WebCore::WebSocketChannel::enqueueTextFrame):
3879         (WebCore::WebSocketChannel::enqueueRawFrame):
3880         (WebCore::WebSocketChannel::enqueueBlobFrame):
3881         (WebCore::appendMaskedFramePayload): Added.
3882         (WebCore::makeFrameData): Added.
3883         (WebCore::WebSocketChannel::sendFrame):
3884         * websockets/WebSocketChannel.h: Removed FrameData.
3885         (WebSocketChannel):
3886         (QueuedFrame):
3887         * websockets/WebSocketFrame.h: Added.
3888         (WebCore):
3889         (WebSocketFrame):
3890         (WebCore::WebSocketFrame::isNonControlOpCode):
3891         (WebCore::WebSocketFrame::isControlOpCode):
3892         (WebCore::WebSocketFrame::isReservedOpCode):
3893         (WebCore::WebSocketFrame::WebSocketFrame):
3894
3895 2012-02-20  Adam Roben  <aroben@apple.com>
3896
3897         32-bit build fix
3898
3899         * platform/FractionalLayoutUnit.h:
3900         (WebCore::FractionalLayoutUnit::setRawValue): Explicitly cast long long to int, since they
3901         are different widths in 32-bit.
3902
3903 2012-02-20  Adam Roben  <aroben@apple.com>
3904
3905         Clang build fix
3906
3907         * inspector/InspectorDOMAgent.cpp:
3908         (WebCore::InspectorDOMAgent::willModifyDOMAttr): Removed unused parameter.
3909
3910 2012-02-20  Vsevolod Vlasov  <vsevik@chromium.org>
3911
3912         Unreviewed manual rollout of r107970 which breaks table column widths
3913         updates from javascript (e.g. inspector's network panel).
3914
3915         * rendering/FixedTableLayout.cpp:
3916         (WebCore::FixedTableLayout::calcWidthArray):
3917         * rendering/RenderTableCol.h:
3918         (RenderTableCol):
3919
3920 2012-02-20  Alexander Pavlov  <apavlov@chromium.org>
3921
3922         Web Inspector: [Styles] Inconsistent alignment of non-parsed properties (having an exclamation mark)
3923         https://bugs.webkit.org/show_bug.cgi?id=79028
3924
3925         Reviewed by Yury Semikhatsky.
3926
3927         * inspector/front-end/elementsPanel.css:
3928         (.styles-section .properties li.not-parsed-ok img.exclamation-mark):
3929
3930 2012-02-20  Alexander Pavlov  <apavlov@chromium.org>
3931
3932         Web Inspector: DOMAttrModified should not be fired if the attribute value remains the same
3933         https://bugs.webkit.org/show_bug.cgi?id=79025
3934
3935         Reviewed by Pavel Feldman.
3936
3937         * dom/Element.cpp:
3938         (WebCore::Element::willModifyAttribute):
3939         * inspector/InspectorDOMAgent.cpp:
3940         (WebCore::InspectorDOMAgent::InspectorDOMAgent):
3941         (WebCore::InspectorDOMAgent::willModifyDOMAttr):
3942         (WebCore):
3943         (WebCore::InspectorDOMAgent::didModifyDOMAttr):
3944         * inspector/InspectorDOMAgent.h:
3945         (InspectorDOMAgent):
3946         * inspector/InspectorInstrumentation.cpp:
3947         (WebCore::InspectorInstrumentation::willModifyDOMAttrImpl):
3948         * inspector/InspectorInstrumentation.h:
3949         (InspectorInstrumentation):
3950         (WebCore::InspectorInstrumentation::willModifyDOMAttr):
3951
3952 2012-02-20  Kwonjin Jeong  <gram@company100.net>
3953
3954         Correct a typo error in ScrollingCoordinator.h
3955         https://bugs.webkit.org/show_bug.cgi?id=79012
3956
3957         Reviewed by Andreas Kling.
3958
3959         * page/scrolling/ScrollingCoordinator.h:
3960         (ScrollingCoordinator):
3961
3962 2012-02-20  Alexander Pavlov  <apavlov@chromium.org>
3963
3964         Web Inspector: [Styles] box-shadow and -webkit-box-shadow properties are not considered color-aware
3965         https://bugs.webkit.org/show_bug.cgi?id=78988
3966
3967         Reviewed by Yury Semikhatsky.
3968
3969         * inspector/front-end/CSSKeywordCompletions.js:
3970
3971 2012-02-20  Yosifumi Inoue  <yosin@chromium.org>
3972
3973         [Forms] Spin buttons of number input type should fire both input and change event
3974         https://bugs.webkit.org/show_bug.cgi?id=75067
3975
3976         Reviewed by Kent Tamura.
3977
3978         This patch makes spin button in number input field clicks to fire input and change events as described in WHATWG HTML5 specification.
3979         To implement this behavior, this patch introduces new value DispatchInputAndChangeEvent in TextFieldEventBehavior.
3980
3981         Test: fast/forms/number/spin-button-events.html
3982
3983         * html/HTMLInputElement.cpp:
3984         (WebCore::HTMLInputElement::stepUpFromRenderer): Pass DispatchInputAndChangeEvent instead of DispatchChangeEvent to applyStep, setValue, and setValueAsNumber.
3985         * html/HTMLTextFormControlElement.h: Add new enum value DispatchInputAndChangeEvent to TextFieldEventBehavior.
3986         * html/TextFieldInputType.cpp:
3987         (WebCore::TextFieldInputType::setValue): Handle DispatchInputAndChangeEvent and use RefPtr for element to keep reference.
3988
3989 2012-02-20  Shinya Kawanaka  <shinyak@chromium.org>
3990
3991         Attached/Detached state must be testable
3992         https://bugs.webkit.org/show_bug.cgi?id=79010
3993
3994         Reviewed by Hajime Morita.
3995
3996         Added a method to check an element attached or not.
3997
3998         Test: fast/dom/shadow/shadow-root-attached.html
3999
4000         * testing/Internals.cpp:
4001         (WebCore::Internals::attached):
4002         (WebCore):
4003         * testing/Internals.h:
4004         (Internals):
4005         * testing/Internals.idl:
4006
4007 2012-02-20  Kenichi Ishibashi  <bashi@chromium.org>
4008
4009         [WebSocket] Add deflater/inflater classes
4010         https://bugs.webkit.org/show_bug.cgi?id=78449
4011
4012         Add WebSocketDeflater/WebSocketInflater classes which wrap zlib
4013         functions. These classes are not used yet, but will be used for
4014         supporting WebSocket deflate-frame extension.
4015
4016         This patch is second try. The previous patch broke Chromium Win
4017         build. I added dependency of zlib to WebCore.gyp. I think it's
4018         OK because Chromium already depends on zlib.
4019
4020         Reviewed by Kent Tamura.
4021
4022         No new tests except for chromium port. Behavior is unchanged.
4023
4024         * GNUmakefile.list.am: Added WebSocketDeflater.(cpp|h).
4025         * WebCore.gyp/WebCore.gyp: Added zlib dependency.
4026         * WebCore.gypi: Added WebSocketDeflater.(cpp|h).
4027         * WebCore.vcproj/WebCore.vcproj: Ditto.
4028         * WebCore.xcodeproj/project.pbxproj: Ditto.
4029         * websockets/WebSocketDeflater.cpp: Added.
4030         (WebCore):
4031         (WebCore::WebSocketDeflater::create):
4032         (WebCore::WebSocketDeflater::WebSocketDeflater):
4033         (WebCore::WebSocketDeflater::initialize):
4034         (WebCore::WebSocketDeflater::~WebSocketDeflater):
4035         (WebCore::setStreamParameter):
4036         (WebCore::WebSocketDeflater::addBytes):
4037         (WebCore::WebSocketDeflater::finish):
4038         (WebCore::WebSocketDeflater::reset):
4039         (WebCore::WebSocketInflater::create):
4040         (WebCore::WebSocketInflater::WebSocketInflater):
4041         (WebCore::WebSocketInflater::initialize):
4042         (WebCore::WebSocketInflater::~WebSocketInflater):
4043         (WebCore::WebSocketInflater::addBytes):
4044         (WebCore::WebSocketInflater::finish):
4045         (WebCore::WebSocketInflater::reset):
4046         * websockets/WebSocketDeflater.h: Added.
4047         (WebCore):
4048         (WebSocketDeflater):
4049         (WebCore::WebSocketDeflater::data):
4050         (WebCore::WebSocketDeflater::size):
4051         (WebSocketInflater):
4052         (WebCore::WebSocketInflater::data):
4053         (WebCore::WebSocketInflater::size):
4054
4055 2012-02-20  pfeldman@chomium.org  <pavel.feldman@gmail.com>
4056
4057         Web Inspector: consume undo/redo shortcuts.
4058         https://bugs.webkit.org/show_bug.cgi?id=79016
4059
4060         Reviewed by Vsevolod Vlasov.
4061
4062         * inspector/front-end/ElementsPanel.js:
4063         (WebInspector.ElementsPanel.prototype.handleShortcut):
4064
4065 2012-02-20  Philippe Normand  <pnormand@igalia.com>
4066
4067         MediaPlayer: MediaPlayerPrivate registration cleanup
4068         https://bugs.webkit.org/show_bug.cgi?id=78897
4069
4070         Reviewed by Martin Robinson.
4071
4072         * platform/graphics/MediaPlayer.cpp:
4073         (WebCore::installedMediaEngines): Simplified GStreamer Private
4074         player registration by using the PlatformMediaEngineClassName
4075         macro like other players do.
4076
4077 2012-02-17  Yury Semikhatsky  <yurys@chromium.org>
4078
4079         [Chromium] Web Inspector: terminated workers are not removed from dedicated worker list
4080         https://bugs.webkit.org/show_bug.cgi?id=78899
4081
4082         Notify inspector about starting context from WorkerContextProxy not from Worker.
4083
4084         Reviewed by Pavel Feldman.
4085
4086         * workers/Worker.cpp:
4087         (WebCore::Worker::notifyFinished):
4088         * workers/WorkerMessagingProxy.cpp:
4089         (WebCore::WorkerMessagingProxy::startWorkerContext):
4090
4091 2012-02-19  Keishi Hattori  <keishi@webkit.org>
4092
4093         Use shadowRootList for ColorInputType
4094         https://bugs.webkit.org/show_bug.cgi?id=79007
4095
4096         Reviewed by Kent Tamura.
4097
4098         * html/ColorInputType.cpp:
4099         (WebCore::ColorInputType::createShadowSubtree): Changed shadowRoot to shadowRootList.
4100         (WebCore::ColorInputType::shadowColorSwatch): Changed shadowRoot to shadowRootList.
4101
4102 2012-02-19  Shinya Kawanaka  <shinyak@chromium.org>
4103
4104         Introduce InsertionPoint, which will be a common base class of HTMLShadowElement and HTMLContentElement.
4105         https://bugs.webkit.org/show_bug.cgi?id=78771
4106
4107         Reviewed by Hajime Morita.
4108
4109         This patch introduces InsertionPoint, which will be a common base class of HTMLShadowElement and HTMLContentElement.
4110
4111         This is a step for rendering <shadow> correctly, because <shadow> has almost the same function of <content>.
4112         After this patch, we will change NodeRenderingContext and related classes to accept InsertionPoint instead of
4113         HTMLContentElement only.
4114
4115         No new tests, no change in behavior.