[chromium] Remove unused variable (gcc 4.6 complains about this)
[WebKit-https.git] / Source / WebCore / ChangeLog
1 2011-11-29  Tony Chang  <tony@chromium.org>
2
3         [chromium] Remove unused variable (gcc 4.6 complains about this)
4         https://bugs.webkit.org/show_bug.cgi?id=73335
5
6         ../../third_party/WebKit/Source/WebCore/platform/graphics/chromium/cc/CCDamageTracker.cpp:296:19:
7         error: variable 'oldReplicaMaskRect' set but not used [-Werror=unused-but-set-variable]
8
9         * platform/graphics/chromium/cc/CCDamageTracker.cpp:
10         (WebCore::CCDamageTracker::extendDamageForRenderSurface):
11
12 2011-11-29  Oliver Hunt  <oliver@apple.com>
13
14         DOM wrapper cache doesn't need to use JSDOMWrapper
15         https://bugs.webkit.org/show_bug.cgi?id=73333
16
17         Reviewed by Sam Weinig.
18
19         Make JSDOMWrapperCache use JSObject rather than JSDOMWrapper
20         and propagate the type change out. 
21
22         * bindings/js/DOMWrapperWorld.h:
23         * bindings/js/JSArrayBufferViewHelper.h:
24         (WebCore::toJSArrayBufferView):
25         * bindings/js/JSCSSRuleCustom.cpp:
26         (WebCore::toJS):
27         * bindings/js/JSCSSValueCustom.cpp:
28         (WebCore::toJS):
29         * bindings/js/JSDOMBinding.h:
30         (WebCore::setInlineCachedWrapper):
31         (WebCore::clearInlineCachedWrapper):
32         (WebCore::getCachedWrapper):
33         (WebCore::cacheWrapper):
34         (WebCore::wrap):
35         * bindings/js/JSDOMWindowCustom.cpp:
36         (WebCore::JSDOMWindow::history):
37         (WebCore::JSDOMWindow::location):
38         * bindings/js/JSDocumentCustom.cpp:
39         (WebCore::JSDocument::location):
40         (WebCore::toJS):
41         * bindings/js/JSEventCustom.cpp:
42         (WebCore::toJS):
43         * bindings/js/JSHTMLCollectionCustom.cpp:
44         (WebCore::toJS):
45         * bindings/js/JSImageDataCustom.cpp:
46         (WebCore::toJS):
47         * bindings/js/JSSVGPathSegCustom.cpp:
48         (WebCore::toJS):
49         * bindings/js/JSStyleSheetCustom.cpp:
50         (WebCore::toJS):
51         * bindings/js/JSTrackCustom.cpp:
52         (WebCore::toJS):
53
54 2011-11-29  Philippe Normand  <pnormand@igalia.com>
55
56         Unreviewed, GTK build fix after r101392.
57
58         * GNUmakefile.am: USE_WEBAUDIO_FFTW was removed, don't use it anymore.
59
60 2011-11-28  Vsevolod Vlasov  <vsevik@chromium.org>
61
62         Web Inspector: TextPrompt should show suggest above or under so that it has maximal height.
63         https://bugs.webkit.org/show_bug.cgi?id=73239
64
65         Reviewed by Pavel Feldman.
66
67         Fixed suggest box vertical position / height calculation.
68         Added round corners when suggest box is positioned under text prompt.
69
70         * inspector/front-end/TextPrompt.js:
71         (WebInspector.TextPrompt.SuggestBox.prototype._updateBoxPosition):
72         * inspector/front-end/inspector.css:
73         (.suggest-box.generic-suggest.under-anchor):
74
75 2011-11-29  Carlos Garcia Campos  <cgarcia@igalia.com>
76
77         Unreviewed. Fix the GTK+ port build after r101307.
78
79         * GNUmakefile.list.am: Add missing files to compilation.
80
81 2011-11-29  Pavel Feldman  <pfeldman@google.com>
82
83         Web Inspector: split Preferences into Preferences and Capabilities.
84         https://bugs.webkit.org/show_bug.cgi?id=73321
85
86         Part of the Preferences defined in Settings.js are in fact backend capabilities.
87         Split them into two separate objects for further capabilities refactoring.
88
89         Reviewed by Yury Semikhatsky.
90
91         * inspector/front-end/DebuggerModel.js:
92         * inspector/front-end/ElementsPanel.js:
93         (WebInspector.ElementsPanel):
94         (WebInspector.ElementsPanel.prototype.wasShown):
95         (WebInspector.ElementsPanel.prototype._populateContextMenu):
96         * inspector/front-end/NetworkItemView.js:
97         (WebInspector.NetworkItemView):
98         * inspector/front-end/NetworkPanel.js:
99         (WebInspector.NetworkLogView.prototype._createTable):
100         (WebInspector.NetworkLogView.prototype.switchToDetailedView):
101         (WebInspector.NetworkLogView.prototype.switchToBriefView):
102         (WebInspector.NetworkLogView.prototype._contextMenu):
103         (WebInspector.NetworkDataGridNode.prototype.createCells):
104         (WebInspector.NetworkDataGridNode.prototype.refreshResource):
105         * inspector/front-end/ProfileDataGridTree.js:
106         (WebInspector.ProfileDataGridNode.prototype.get data.formatMilliseconds):
107         * inspector/front-end/ProfileView.js:
108         * inspector/front-end/ProfilesPanel.js:
109         (WebInspector.ProfilesPanel.prototype._enableDetailedHeapProfiles):
110         * inspector/front-end/Resource.js:
111         (WebInspector.Resource.prototype.populateImageSource):
112         * inspector/front-end/ScriptsPanel.js:
113         (WebInspector.ScriptsPanel.prototype.wasShown):
114         (WebInspector.ScriptsPanel.prototype._clearInterface):
115         * inspector/front-end/Settings.js:
116         * inspector/front-end/SettingsScreen.js:
117         (WebInspector.SettingsScreen):
118         * inspector/front-end/StylesSidebarPane.js:
119         * inspector/front-end/inspector.js:
120
121 2011-11-29  Simon Hausmann  <simon.hausmann@nokia.com>
122
123         [Qt] Make WebCore compile with Qt 5 and V8
124         https://bugs.webkit.org/show_bug.cgi?id=73313
125
126         Reviewed by Tor Arne Vestbø.
127
128         * DerivedSources.pri: Add missing V8 specific IDL files to the build.
129         * Target.pri: Ditto.
130         * bindings/v8/ScriptController.h: V8 NPAPI bindings don't really support
131         building with ENABLE_NETSCAPE_PLUGIN_API=0. These functions are always
132         defined, so they also need to be declared.
133         * platform/qt/PlatformSupportQt.cpp: 
134         (WebCore::PlatformSupport::pluginScriptableObject): Don't return a
135         scriptable object when compiling without npapi.
136         * storage/StorageAreaImpl.cpp: Add missing Document.h include that is
137         included implicitly with the Chromium build but not with Qt.
138         * xml/XSLTProcessorQt.cpp: Ditto.
139
140 2011-11-29  Pavel Feldman  <pfeldman@google.com>
141
142         Not reviewed: fixing clang build.
143
144         * inspector/InspectorBaseAgent.h:
145         (WebCore::InspectorBaseAgentInterface::getAgentCapabilities):
146         * inspector/InspectorDebuggerAgent.cpp:
147         (WebCore::InspectorDebuggerAgent::getAgentCapabilities):
148         * inspector/InspectorDebuggerAgent.h:
149
150 2011-11-29  Pavel Feldman  <pfeldman@google.com>
151
152         Web Inspector: introduce generic capabilities concept, migrate debugger domain to generic capabilities.
153         https://bugs.webkit.org/show_bug.cgi?id=73311
154
155         This step is necessary for getting rid of the 'capability' aspect in the Preferences. As a result,
156         single front-end will be applicable to multiple backend configurations.
157
158         Reviewed by Yury Semikhatsky.
159
160         * CMakeLists.txt:
161         * GNUmakefile.list.am:
162         * Target.pri:
163         * WebCore.gypi:
164         * WebCore.vcproj/WebCore.vcproj:
165         * WebCore.xcodeproj/project.pbxproj:
166         * inspector/Inspector.json:
167         * inspector/InspectorAgent.cpp:
168         (WebCore::InspectorAgent::InspectorAgent):
169         * inspector/InspectorApplicationCacheAgent.cpp:
170         (WebCore::InspectorApplicationCacheAgent::InspectorApplicationCacheAgent):
171         * inspector/InspectorBaseAgent.cpp:
172         (WebCore::InspectorBaseAgentInterface::InspectorBaseAgentInterface):
173         (WebCore::InspectorBaseAgentInterface::~InspectorBaseAgentInterface):
174         * inspector/InspectorBaseAgent.h:
175         (WebCore::InspectorBaseAgentInterface::getCapabilities):
176         (WebCore::InspectorBaseAgentInterface::name):
177         (WebCore::InspectorBaseAgent::InspectorBaseAgent):
178         * inspector/InspectorCSSAgent.cpp:
179         (WebCore::InspectorCSSAgent::InspectorCSSAgent):
180         * inspector/InspectorConsoleAgent.cpp:
181         (WebCore::InspectorConsoleAgent::InspectorConsoleAgent):
182         * inspector/InspectorController.cpp:
183         (WebCore::InspectorController::InspectorController):
184         * inspector/InspectorController.h:
185         * inspector/InspectorDOMAgent.cpp:
186         (WebCore::InspectorDOMAgent::InspectorDOMAgent):
187         * inspector/InspectorDOMDebuggerAgent.cpp:
188         (WebCore::InspectorDOMDebuggerAgent::InspectorDOMDebuggerAgent):
189         * inspector/InspectorDOMStorageAgent.cpp:
190         (WebCore::InspectorDOMStorageAgent::InspectorDOMStorageAgent):
191         * inspector/InspectorDatabaseAgent.cpp:
192         (WebCore::InspectorDatabaseAgent::InspectorDatabaseAgent):
193         * inspector/InspectorDebuggerAgent.cpp:
194         (WebCore::InspectorDebuggerAgent::InspectorDebuggerAgent):
195         (WebCore::InspectorDebuggerAgent::getCapabilities):
196         * inspector/InspectorDebuggerAgent.h:
197         * inspector/InspectorFileSystemAgent.cpp:
198         (WebCore::InspectorFileSystemAgent::InspectorFileSystemAgent):
199         * inspector/InspectorMetaAgent.cpp: Added.
200         (WebCore::InspectorMetaAgent::~InspectorMetaAgent):
201         (WebCore::InspectorMetaAgent::getCapabilities):
202         (WebCore::InspectorMetaAgent::InspectorMetaAgent):
203         * inspector/InspectorMetaAgent.h: Added.
204         (WebCore::InspectorMetaAgent::create):
205         * inspector/InspectorPageAgent.cpp:
206         (WebCore::InspectorPageAgent::InspectorPageAgent):
207         * inspector/InspectorProfilerAgent.cpp:
208         (WebCore::InspectorProfilerAgent::InspectorProfilerAgent):
209         * inspector/InspectorResourceAgent.cpp:
210         (WebCore::InspectorResourceAgent::InspectorResourceAgent):
211         * inspector/InspectorRuntimeAgent.cpp:
212         (WebCore::InspectorRuntimeAgent::InspectorRuntimeAgent):
213         * inspector/InspectorTimelineAgent.cpp:
214         (WebCore::InspectorTimelineAgent::InspectorTimelineAgent):
215         * inspector/InspectorValues.h:
216         (WebCore::InspectorArray::begin):
217         (WebCore::InspectorArray::end):
218         * inspector/InspectorWorkerAgent.cpp:
219         (WebCore::InspectorWorkerAgent::InspectorWorkerAgent):
220         * inspector/front-end/DebuggerModel.js:
221         (WebInspector.DebuggerModel.prototype.enableDebugger):
222
223 2011-11-29  Simon Hausmann  <simon.hausmann@nokia.com>
224
225         [Qt] Make WebKit/qt build with V8 and Qt 5
226         https://bugs.webkit.org/show_bug.cgi?id=73315
227
228         Reviewed by Kenneth Rohde Christiansen.
229
230         For the Qt 5 / V8 build we use QJSEngine/QJSValue instead of
231         QScriptEngine/QScriptValue.
232
233         * bindings/v8/ScriptController.cpp:
234         * bindings/v8/ScriptController.h:
235         * bindings/v8/ScriptControllerQt.cpp:
236         (WebCore::ScriptController::qtScriptEngine):
237
238 2011-11-29  Simon Hausmann  <simon.hausmann@nokia.com>
239
240         [Qt][V8] Add missing ExceptionCode.h include for SVG bindings
241         https://bugs.webkit.org/show_bug.cgi?id=73314
242
243         Reviewed by Kenneth Rohde Christiansen.
244
245         * bindings/scripts/CodeGeneratorV8.pm:
246         (GenerateNormalAttrSetter): Similarly to other places where we use DOM
247         exceptions, make sure we include ExceptionCode.h here. It appears to be
248         an implicit inclusion in the Chromium build, but it should be explicit
249         like in the rest of the bindings.
250         (GenerateFunctionCallback): Ditto.
251
252 2011-11-29  Andrey Kosyakov  <caseq@chromium.org>
253
254         Web Inspector: remove usage of innerHTML from inspector front-end
255         https://bugs.webkit.org/show_bug.cgi?id=73305
256
257         Reviewed by Yury Semikhatsky.
258
259         * inspector/front-end/FontView.js:
260         (WebInspector.FontView.prototype._createContentIfNeeded):
261         * inspector/front-end/ShortcutsScreen.js:
262         (WebInspector.ShortcutsSection.prototype.addKey):
263         (WebInspector.ShortcutsSection.prototype.addRelatedKeys):
264         (WebInspector.ShortcutsSection.prototype.addAlternateKeys):
265         (WebInspector.ShortcutsSection.prototype._addLine):
266         (WebInspector.ShortcutsSection.prototype.renderSection):
267         (WebInspector.ShortcutsSection.prototype._renderSequence):
268         (WebInspector.ShortcutsSection.prototype._renderKey):
269         (WebInspector.ShortcutsSection.prototype.get _height):
270         (WebInspector.ShortcutsSection.prototype._createSpan):
271         (WebInspector.ShortcutsSection.prototype._joinNodes):
272         * inspector/front-end/WelcomeView.js:
273         (WebInspector.WelcomeView.prototype.addMessage):
274
275 2011-11-29  Zoltan Herczeg  <zherczeg@webkit.org>
276
277         [Qt] Couple of tests have different results on 64 bit and/or in debug mode compared to 32 bit and/or release mode
278         https://bugs.webkit.org/show_bug.cgi?id=52810
279
280         Reviewed by Nikolas Zimmermann.
281
282         This avoids precision loss in getCTM, which is used whenever mapping repaint rects to a parent coordinate system
283         - it affects several DRT results on Mac, all of them are progressions.
284
285         * svg/SVGPreserveAspectRatio.cpp:
286         (WebCore::SVGPreserveAspectRatio::getCTM): Use double-precision internally.
287
288 2011-11-25  Pavel Podivilov  <podivilov@chromium.org>
289
290         Web Inspector: support concatenated source maps.
291         https://bugs.webkit.org/show_bug.cgi?id=73138
292
293         Reviewed by Yury Semikhatsky.
294
295         * inspector/front-end/CompilerSourceMapping.js:
296         (WebInspector.ClosureCompilerSourceMapping):
297         (WebInspector.ClosureCompilerSourceMapping.prototype.loadSourceCode):
298         (WebInspector.ClosureCompilerSourceMapping.prototype._parseMappingPayload):
299         (WebInspector.ClosureCompilerSourceMapping.prototype._parseSections):
300         (WebInspector.ClosureCompilerSourceMapping.prototype._parseMap):
301         (WebInspector.ClosureCompilerSourceMapping.prototype._canonicalizeURL):
302         * inspector/front-end/inspector.js:
303         (WebInspector.installSourceMappingForTest):
304
305 2011-11-29  Mario Sanchez Prada  <msanchez@igalia.com>
306
307         [Gtk] Regression: text-inserted events lack text inserted and current line
308         https://bugs.webkit.org/show_bug.cgi?id=72830
309
310         Reviewed by Chris Fleizach.
311
312         Replace the emission of the old (and now deprecated) AtkObject's
313         'text-changed:insert' and 'text-changed:remove' signals with the
314         new 'text-insert' and 'text-remove' ones, which are better and
315         less fragile since they emit the modified text too, along with the
316         typical 'offset' and 'count' values associated to the change.
317
318         Also, change the signature of the nodeTextChangeNotification() and
319         nodeTextChangePlatformNotification() to allow specifying the text
320         being modified from the place we better know about it, that is,
321         the text editing commands.
322
323         * accessibility/gtk/AXObjectCacheAtk.cpp:
324         (WebCore::emitTextChanged): Emit 'text-insert' and 'text-remove',
325         instead of the old and now deprecated 'text-changed' signal.
326         (WebCore::AXObjectCache::nodeTextChangePlatformNotification):
327         Update this function to receive a String with the text being
328         modified, instead of just the number of characters.
329
330         * accessibility/AXObjectCache.cpp:
331         (WebCore::AXObjectCache::nodeTextChangeNotification): Update this
332         function to receive a String with the text being modified.
333         * accessibility/AXObjectCache.h:
334         (WebCore::AXObjectCache::nodeTextChangeNotification): Ditto.
335         (WebCore::AXObjectCache::nodeTextChangePlatformNotification): Ditto.
336
337         Adapt the text editing commants to pass the whole text string
338         being modified, instead of just its number of characters.
339
340         * editing/AppendNodeCommand.cpp:
341         (WebCore::sendAXTextChangedIgnoringLineBreaks): Adapt to the new
342         signature of nodeTextChangeNotification(), so pass the whole text.
343         * editing/DeleteFromTextNodeCommand.cpp:
344         (WebCore::DeleteFromTextNodeCommand::doApply): Ditto.
345         (WebCore::DeleteFromTextNodeCommand::doUnapply): Ditto.
346         * editing/InsertIntoTextNodeCommand.cpp:
347         (WebCore::InsertIntoTextNodeCommand::doApply): Ditto.
348         (WebCore::InsertIntoTextNodeCommand::doUnapply): Ditto.
349         * editing/InsertNodeBeforeCommand.cpp:
350         (WebCore::InsertNodeBeforeCommand::doApply): Ditto.
351         (WebCore::InsertNodeBeforeCommand::doUnapply): Ditto.
352
353         Update mac, win and chromium's specific parts of AXObjectCache to
354         match the new signature for nodeTextChangePlatformNotification(),
355         which won't affect their behaviour as they were not implementing
356         that method anyway.
357
358         * accessibility/chromium/AXObjectCacheChromium.cpp:
359         (WebCore::AXObjectCache::nodeTextChangePlatformNotification):
360         * accessibility/mac/AXObjectCacheMac.mm:
361         (WebCore::AXObjectCache::nodeTextChangePlatformNotification):
362         * accessibility/win/AXObjectCacheWin.cpp:
363         (WebCore::AXObjectCache::nodeTextChangePlatformNotification):
364
365 2011-11-29  Mario Sanchez Prada  <msanchez@igalia.com>
366
367         [Gtk] Regression: Push buttons no longer expose their displayed text/name
368         https://bugs.webkit.org/show_bug.cgi?id=72804
369
370         Reviewed by Chris Fleizach.
371
372         Use AccessibilityObject::title() as the last fallback in
373         webkit_accessible_get_name() right before relying on the
374         stringValue() method, if no better alternative was found.
375
376         Test: platform/gtk/accessibility/button-accessible-name.html
377
378         * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
379         (webkit_accessible_get_name): Use title() as the last fallback
380         method before using stringValue().
381
382 2011-11-29  Hyowon Kim  <hw1008.kim@samsung.com>
383
384         [Texmap][EFL] Accelerated compositing support using TextureMapper on EFL port
385         https://bugs.webkit.org/show_bug.cgi?id=73111
386
387         This patch adds Texture Mapper related files to PlatformEfl.cmake
388         and removes Qt-specific types in TextureMapperNode.cpp.
389
390         Reviewed by Noam Rosenthal.
391
392         * PlatformEfl.cmake:
393         * platform/graphics/GraphicsLayer.cpp:
394         * platform/graphics/GraphicsLayer.h:
395         * platform/graphics/efl/GraphicsLayerEfl.cpp: Removed.
396         * platform/graphics/efl/GraphicsLayerEfl.h: Removed.
397         * platform/graphics/texmap/TextureMapperNode.cpp:
398         (WebCore::solveCubicBezierFunction):
399         (WebCore::solveStepsFunction):
400
401 2011-11-28  Pavel Feldman  <pfeldman@google.com>
402
403         Web Inspector: put inspector agents into a vector in the InspectorController.
404         https://bugs.webkit.org/show_bug.cgi?id=73225
405
406         Inspector controller should maintain agents in the vector, while accessing
407         them using the same base agent interface. We should not manually call
408         base agent methods on their concrete instances.
409
410         Reviewed by Yury Semikhatsky.
411
412         * inspector/CodeGeneratorInspector.py:
413         (DomainNameFixes.get_fixed_data.Res):
414         (DomainNameFixes):
415         (Generator.go):
416         * inspector/InspectorAgent.cpp:
417         (WebCore::InspectorAgent::InspectorAgent):
418         (WebCore::PostWorkerNotificationToFrontendTask::performTask):
419         * inspector/InspectorAgent.h:
420         (WebCore::InspectorAgent::create):
421         * inspector/InspectorApplicationCacheAgent.cpp:
422         (WebCore::InspectorApplicationCacheAgent::InspectorApplicationCacheAgent):
423         * inspector/InspectorApplicationCacheAgent.h:
424         (WebCore::InspectorApplicationCacheAgent::create):
425         * inspector/InspectorBaseAgent.cpp:
426         * inspector/InspectorBaseAgent.h:
427         (WebCore::InspectorBaseAgentInterface::InspectorBaseAgentInterface):
428         (WebCore::InspectorBaseAgentInterface::~InspectorBaseAgentInterface):
429         (WebCore::InspectorBaseAgentInterface::setFrontend):
430         (WebCore::InspectorBaseAgentInterface::clearFrontend):
431         (WebCore::InspectorBaseAgentInterface::restore):
432         (WebCore::InspectorBaseAgentInterface::inspectedPageDestroyed):
433         (WebCore::InspectorBaseAgent::~InspectorBaseAgent):
434         (WebCore::InspectorBaseAgent::registerDispatcher):
435         (WebCore::InspectorBaseAgent::InspectorBaseAgent):
436         * inspector/InspectorCSSAgent.cpp:
437         (WebCore::InspectorCSSAgent::InspectorCSSAgent):
438         * inspector/InspectorCSSAgent.h:
439         (WebCore::InspectorCSSAgent::create):
440         * inspector/InspectorConsoleAgent.cpp:
441         (WebCore::InspectorConsoleAgent::InspectorConsoleAgent):
442         * inspector/InspectorConsoleAgent.h:
443         * inspector/InspectorController.cpp:
444         (WebCore::InspectorController::InspectorController):
445         (WebCore::InspectorController::inspectedPageDestroyed):
446         (WebCore::InspectorController::connectFrontend):
447         (WebCore::InspectorController::disconnectFrontend):
448         (WebCore::InspectorController::restoreInspectorStateFromCookie):
449         * inspector/InspectorController.h:
450         * inspector/InspectorDOMAgent.cpp:
451         (WebCore::InspectorDOMAgent::InspectorDOMAgent):
452         * inspector/InspectorDOMAgent.h:
453         * inspector/InspectorDOMDebuggerAgent.cpp:
454         (WebCore::InspectorDOMDebuggerAgent::InspectorDOMDebuggerAgent):
455         * inspector/InspectorDOMDebuggerAgent.h:
456         (WebCore::InspectorDOMDebuggerAgent::inspectedPageDestroyed):
457         * inspector/InspectorDOMStorageAgent.cpp:
458         (WebCore::InspectorDOMStorageAgent::InspectorDOMStorageAgent):
459         * inspector/InspectorDOMStorageAgent.h:
460         * inspector/InspectorDatabaseAgent.cpp:
461         (WebCore::InspectorDatabaseAgent::InspectorDatabaseAgent):
462         * inspector/InspectorDatabaseAgent.h:
463         * inspector/InspectorDebuggerAgent.cpp:
464         (WebCore::InspectorDebuggerAgent::InspectorDebuggerAgent):
465         * inspector/InspectorDebuggerAgent.h:
466         (WebCore::InspectorDebuggerAgent::inspectedPageDestroyed):
467         * inspector/InspectorFileSystemAgent.cpp:
468         (WebCore::InspectorFileSystemAgent::InspectorFileSystemAgent):
469         * inspector/InspectorFileSystemAgent.h:
470         * inspector/InspectorPageAgent.cpp:
471         (WebCore::InspectorPageAgent::InspectorPageAgent):
472         * inspector/InspectorPageAgent.h:
473         * inspector/InspectorProfilerAgent.cpp:
474         (WebCore::InspectorProfilerAgent::InspectorProfilerAgent):
475         * inspector/InspectorProfilerAgent.h:
476         * inspector/InspectorResourceAgent.cpp:
477         (WebCore::InspectorResourceAgent::InspectorResourceAgent):
478         * inspector/InspectorResourceAgent.h:
479         (WebCore::InspectorResourceAgent::create):
480         * inspector/InspectorRuntimeAgent.cpp:
481         (WebCore::InspectorRuntimeAgent::InspectorRuntimeAgent):
482         * inspector/InspectorRuntimeAgent.h:
483         * inspector/InspectorTimelineAgent.cpp:
484         (WebCore::InspectorTimelineAgent::InspectorTimelineAgent):
485         * inspector/InspectorTimelineAgent.h:
486         * inspector/InspectorWorkerAgent.cpp:
487         (WebCore::InspectorWorkerAgent::InspectorWorkerAgent):
488         * inspector/InspectorWorkerAgent.h:
489         * inspector/PageConsoleAgent.h:
490         (WebCore::PageConsoleAgent::create):
491         * inspector/PageRuntimeAgent.h:
492         (WebCore::PageRuntimeAgent::create):
493         * inspector/WorkerConsoleAgent.h:
494         (WebCore::WorkerConsoleAgent::create):
495         * inspector/WorkerInspectorController.cpp:
496         (WebCore::WorkerInspectorController::WorkerInspectorController):
497         (WebCore::WorkerInspectorController::connectFrontend):
498         * inspector/WorkerRuntimeAgent.h:
499         (WebCore::WorkerRuntimeAgent::create):
500
501 2011-11-25  Philippe Normand  <pnormand@igalia.com>
502
503         [GTK] Improve FontMetrics accuracy
504         https://bugs.webkit.org/show_bug.cgi?id=72614
505
506         Reviewed by Martin Robinson.
507         Patch by Nikolas Zimmermann.
508
509         * platform/graphics/freetype/FontPlatformDataFreeType.cpp:
510         (WebCore::setCairoFontOptionsFromFontConfigPattern):
511         * platform/graphics/freetype/SimpleFontDataFreeType.cpp:
512         (WebCore::SimpleFontData::platformInit):
513
514 2011-11-29  Nikolas Zimmermann  <nzimmermann@rim.com>
515
516         SVG <path> DRT dumps have rounding problems across platforms
517         https://bugs.webkit.org/show_bug.cgi?id=47467
518
519         Reviewed by Zoltan Herczeg.
520
521         Next step towards fixing rounding differences across 32/64, release/debug builds and various platforms.
522         Switch TextStream::operator<<(double) and SVGPathStringBuilder to use the newly introduced String::number(double, ConversionMode, precision)
523         instead of using snprintf/String::format() directly. This uses wtf/dtoas rounding facilities and has proven to be faster & more precise!
524
525         In order to make use of these new floating-point dumping facilities following work was done:
526         - The InlineBox logicalHeight is still integer based, while logicalWidth switched to float recently, continue that work and switch logicalTop/Bottom
527           to floats as well. This allows us to avoid calling enclosingIntRect() when figuring out the bounds of a RenderSVGText.
528           Instead DRT can ask for the floating point metrics and round on its own to the desired precision. It's not obviously clear why this makes a difference.
529           Consider a rect with width 9.99999999, enclosingIntRect() would yield 10 as width, on this machine, but another may store 10.000000003, yielding 11.
530           That's part of the reason why this is more safe and ultimately should eliminate the rounding error induced by this in the DRT results.
531
532         - absoluteClippedOverflowRectForRepaint(): when figuring out the repaint rect we'd retrieve the repaintRectInLocalCoordinates(), and call
533           enclosingIntRect on it. Instead of doing that, to avoid the error described above, add a computeFloatRectForRepaint() call to RenderObject that's
534           only used in a SVG subtree, just like its done for nodeAtFloatPoint. Do a single final enclosingIntRect() step when crossing the boundary from
535           the SVG subtree in RenderSVGRoot to its parent, thus reducing the rounding instabilities.
536
537         - The new String::number() implementation enforces a unique zero eliminating the 0.0 vs -0.0 issue for free.
538
539         This has been tested on Gtk&Mac - and requires lots of new baseline. The hope is to be able to share a lot more with Mac now, except for obvious
540         font family differences, that influence RenderSVGInlineText/Text results, and thus all containers that contains such objects.
541
542         * platform/text/TextStream.cpp:
543         (WebCore::TextStream::operator<<):
544         * rendering/InlineBox.cpp:
545         (WebCore::InlineBox::logicalHeight):
546         * rendering/InlineBox.h:
547         (WebCore::InlineBox::virtualLogicalHeight):
548         (WebCore::InlineBox::calculateBoundaries):
549         (WebCore::InlineBox::pixelSnappedLogicalTop):
550         (WebCore::InlineBox::pixelSnappedLogicalBottom):
551         (WebCore::InlineBox::logicalTop):
552         (WebCore::InlineBox::logicalBottom):
553         (WebCore::InlineBox::setLogicalTop):
554         * rendering/InlineFlowBox.cpp:
555         (WebCore::InlineFlowBox::placeBoxesInBlockDirection):
556         (WebCore::InlineFlowBox::addBoxShadowVisualOverflow):
557         (WebCore::InlineFlowBox::addBorderOutsetVisualOverflow):
558         (WebCore::InlineFlowBox::addTextBoxVisualOverflow):
559         * rendering/InlineTextBox.h:
560         (WebCore::InlineTextBox::calculateBoundaries):
561         * rendering/RenderInline.cpp:
562         (WebCore::RenderInline::paintOutline):
563         * rendering/RenderObject.cpp:
564         (WebCore::RenderObject::computeFloatRectForRepaint):
565         * rendering/RenderObject.h:
566         * rendering/RenderText.cpp:
567         (WebCore::RenderText::absoluteRectsForRange):
568         (WebCore::RenderText::absoluteQuads):
569         (WebCore::RenderText::absoluteQuadsForRange):
570         * rendering/RenderTreeAsText.cpp:
571         (WebCore::hasFractions):
572         (WebCore::formatNumberRespectingIntegers):
573         (WebCore::operator<<):
574         (WebCore::write):
575         * rendering/RenderTreeAsText.h:
576         * rendering/TrailingFloatsRootInlineBox.h:
577         (WebCore::TrailingFloatsRootInlineBox::virtualLogicalHeight):
578         * rendering/svg/RenderSVGForeignObject.cpp:
579         (WebCore::RenderSVGForeignObject::computeFloatRectForRepaint):
580         * rendering/svg/RenderSVGForeignObject.h:
581         * rendering/svg/RenderSVGInline.cpp:
582         (WebCore::RenderSVGInline::computeFloatRectForRepaint):
583         * rendering/svg/RenderSVGInline.h:
584         * rendering/svg/RenderSVGInlineText.cpp:
585         (WebCore::RenderSVGInlineText::floatLinesBoundingBox):
586         (WebCore::RenderSVGInlineText::linesBoundingBox):
587         (WebCore::RenderSVGInlineText::computeNewScaledFontForStyle):
588         * rendering/svg/RenderSVGInlineText.h:
589         (WebCore::RenderSVGInlineText::objectBoundingBox):
590         * rendering/svg/RenderSVGModelObject.cpp:
591         (WebCore::RenderSVGModelObject::computeFloatRectForRepaint):
592         * rendering/svg/RenderSVGModelObject.h:
593         * rendering/svg/RenderSVGRoot.cpp:
594         (WebCore::RenderSVGRoot::computeFloatRectForRepaint):
595         * rendering/svg/RenderSVGRoot.h:
596         * rendering/svg/RenderSVGText.cpp:
597         (WebCore::RenderSVGText::computeRectForRepaint):
598         (WebCore::RenderSVGText::computeFloatRectForRepaint):
599         * rendering/svg/RenderSVGText.h:
600         * rendering/svg/SVGInlineFlowBox.cpp:
601         (WebCore::SVGInlineFlowBox::calculateBoundaries):
602         * rendering/svg/SVGInlineFlowBox.h:
603         (WebCore::SVGInlineFlowBox::virtualLogicalHeight):
604         (WebCore::SVGInlineFlowBox::setLogicalHeight):
605         * rendering/svg/SVGInlineTextBox.cpp:
606         (WebCore::SVGInlineTextBox::calculateBoundaries):
607         * rendering/svg/SVGInlineTextBox.h:
608         (WebCore::SVGInlineTextBox::virtualLogicalHeight):
609         (WebCore::SVGInlineTextBox::setLogicalHeight):
610         (WebCore::SVGInlineTextBox::selectionHeight):
611         * rendering/svg/SVGRenderSupport.cpp:
612         (WebCore::SVGRenderSupport::clippedOverflowRectForRepaint):
613         (WebCore::SVGRenderSupport::computeFloatRectForRepaint):
614         * rendering/svg/SVGRenderSupport.h:
615         * rendering/svg/SVGRenderTreeAsText.cpp:
616         (WebCore::operator<<):
617         (WebCore::roundedFloatRect):
618         (WebCore::writeRenderSVGTextBox):
619         (WebCore::writeSVGText):
620         (WebCore::writeSVGInlineText):
621         * rendering/svg/SVGRenderTreeAsText.h:
622         * rendering/svg/SVGRootInlineBox.cpp:
623         (WebCore::SVGRootInlineBox::computePerCharacterLayoutInformation):
624         (WebCore::SVGRootInlineBox::layoutChildBoxes):
625         (WebCore::SVGRootInlineBox::layoutRootBox):
626         * rendering/svg/SVGRootInlineBox.h:
627         (WebCore::SVGRootInlineBox::virtualLogicalHeight):
628         (WebCore::SVGRootInlineBox::setLogicalHeight):
629         * svg/SVGPathStringBuilder.cpp:
630         (WebCore::SVGPathStringBuilder::moveTo):
631         (WebCore::SVGPathStringBuilder::lineTo):
632         (WebCore::SVGPathStringBuilder::lineToHorizontal):
633         (WebCore::SVGPathStringBuilder::lineToVertical):
634         (WebCore::SVGPathStringBuilder::curveToCubic):
635         (WebCore::SVGPathStringBuilder::curveToCubicSmooth):
636         (WebCore::SVGPathStringBuilder::curveToQuadratic):
637         (WebCore::SVGPathStringBuilder::curveToQuadraticSmooth):
638         (WebCore::SVGPathStringBuilder::arcTo):
639
640 2011-11-28  Andrey Kosyakov  <caseq@chromium.org>
641
642         Web Inspector: remove WebInspector.linkifyURL and TreeElement.titleHTML
643         https://bugs.webkit.org/show_bug.cgi?id=73217
644
645         Reviewed by Pavel Feldman.
646
647         * inspector/front-end/AuditFormatters.js:
648         (WebInspector.applyFormatters):
649         * inspector/front-end/AuditResultView.js:
650         (WebInspector.AuditCategoryResultPane.prototype._appendResult):
651         * inspector/front-end/AuditRules.js:
652         (WebInspector.AuditRules.GzipRule.prototype.doRun):
653         (WebInspector.AuditRules.UnusedCssRule.prototype.doRun.evalCallback.selectorsCallback):
654         (WebInspector.AuditRules.ImageDimensionsRule.prototype.doRun):
655         (WebInspector.AuditRules.CssInHeadRule.prototype.doRun):
656         * inspector/front-end/AuditsPanel.js:
657         (WebInspector.AuditRuleResult):
658         (WebInspector.AuditRuleResult.linkifyDisplayName):
659         (WebInspector.AuditRuleResult.prototype.addSnippet):
660         (WebInspector.AuditRuleResult.prototype.addFormatted):
661         (WebInspector.AuditRuleResult.prototype._append):
662         * inspector/front-end/ElementsTreeOutline.js:
663         (WebInspector.ElementsTreeElement.prototype.adjustCollapsedRange):
664         * inspector/front-end/ObjectPropertiesSection.js:
665         (WebInspector.ObjectPropertiesSection.prototype.updateProperties):
666         * inspector/front-end/ResourceHeadersView.js:
667         (WebInspector.ResourceHeadersView.prototype._formatHeader):
668         (WebInspector.ResourceHeadersView.prototype._formatParameter):
669         (WebInspector.ResourceHeadersView.prototype._refreshURL):
670         (WebInspector.ResourceHeadersView.prototype._refreshUrlFragment):
671         (WebInspector.ResourceHeadersView.prototype._refreshRequestPayload):
672         (WebInspector.ResourceHeadersView.prototype._refreshParms):
673         (WebInspector.ResourceHeadersView.prototype._refreshHTTPInformation):
674         (WebInspector.ResourceHeadersView.prototype._refreshHeaders):
675         * inspector/front-end/ResourceUtils.js:
676         * inspector/front-end/StylesSidebarPane.js:
677         (WebInspector.ComputedStylePropertiesSection.prototype.rebuildComputedTrace):
678         * inspector/front-end/WorkersSidebarPane.js:
679         (WebInspector.WorkersSidebarPane.prototype.addWorker):
680         * inspector/front-end/treeoutline.js:
681         (TreeElement.prototype._setListItemNodeContent):
682
683 2011-11-29  Sheriff Bot  <webkit.review.bot@gmail.com>
684
685         Unreviewed, rolling out r101302.
686         http://trac.webkit.org/changeset/101302
687         https://bugs.webkit.org/show_bug.cgi?id=73293
688
689         massive crashes on gtk/win bots - m_bytes assertion fires
690         (Requested by WildFox on #webkit).
691
692         * platform/image-decoders/ImageDecoder.cpp:
693         (WebCore::ImageFrame::setSize):
694
695 2011-11-29  Sean Wang  <Xuewen.Wang@torchmobile.com.cn>
696
697         Upstream BlackBerry porting of platform/image-decoders
698         https://bugs.webkit.org/show_bug.cgi?id=73118
699
700         Reviewed by Daniel Bates.
701
702         Initial upstream, can't be built yet, no test cases.
703
704         The initial author is David Tapuska <dtapuska@rim.com>.
705
706         * platform/image-decoders/blackberry/JPEGImageDecoder.cpp: Added.
707         (WebCore::libInit):
708         (WebCore::ImageReader::ImageReader):
709         (WebCore::imgDecodeSetup):
710         (WebCore::ImageReader::updateData):
711         (WebCore::ImageReader::setSize):
712         (WebCore::ImageReader::sizeExtract):
713         (WebCore::ImageReader::decode):
714         (WebCore::JPEGImageDecoder::JPEGImageDecoder):
715         (WebCore::JPEGImageDecoder::setData):
716         (WebCore::JPEGImageDecoder::isSizeAvailable):
717         (WebCore::JPEGImageDecoder::frameBufferAtIndex):
718         * platform/image-decoders/blackberry/JPEGImageDecoder.h: Added.
719         (WebCore::JPEGImageDecoder::filenameExtension):
720         (WebCore::JPEGImageDecoder::supportsAlpha):
721
722 2011-11-28  David Grogan  <dgrogan@chromium.org>
723
724         WebWorkerRunLoop wrapper around WorkerRunLoop
725         https://bugs.webkit.org/show_bug.cgi?id=71757
726
727         Reviewed by Darin Fisher.
728
729         No new tests - IndexedDB tests forthcoming.
730
731         * platform/chromium/PlatformSupport.h: Add two methods that allow
732         WebCore to notify chromium when workers start and stop.
733         * workers/WorkerThread.cpp:
734         (WebCore::WorkerThread::workerThread): Call into PlatformSupport when
735         the worker's runloop is started and stopped.
736
737 2011-11-29  Alexandru Chiculita  <achicu@adobe.com>
738
739         [CSS Filters] Filters do not render correctly when the layer has a transform
740         https://bugs.webkit.org/show_bug.cgi?id=73077
741
742         Reviewed by Dean Jackson.
743
744         Corrected the root layer that was used when no transform was applied.
745         Using PaintLayerAppliedTransform when calling paintLayer again, to avoid
746         applying the transform inside the filter's graphics context. Now we apply that
747         on the result image.
748
749         Tests: css3/filters/filter-with-transform.html
750                css3/filters/nested-filter.html
751
752         * rendering/RenderLayer.cpp:
753         (WebCore::RenderLayer::paintLayer):
754
755 2011-11-28  Wei Charles  <charles.wei@torchmobile.com.cn>
756
757         [blackberry] Upstream BlackBerry porting of plugin framework
758         https://bugs.webkit.org/show_bug.cgi?id=73185
759
760         Reviewed by Daniel Bates.
761
762         No new tests for now.
763
764         * plugins/blackberry: Added.
765         * plugins/blackberry/PluginDataBlackBerry.cpp: Added.
766         * plugins/blackberry/PluginPackageBlackBerry.cpp: Added.
767
768 2011-11-28  Noel Gordon  <noel.gordon@gmail.com>
769
770         [chromium] Remove V8MessagePortCustom.h from the gyp projects
771         https://bugs.webkit.org/show_bug.cgi?id=73281
772
773         Reviewed by David Levin.
774
775         V8MessagePortCustom.h was removed in r101118
776
777         * WebCore.gypi: remove bindings\v8\custom\V8MessagePortCustom.h
778
779 2011-11-28  Leo Yang  <leo.yang@torchmobile.com.cn>
780
781         Upstream the BlackBerry porting of SocketStream
782         https://bugs.webkit.org/show_bug.cgi?id=73283
783
784         Reviewed by Daniel Bates.
785
786         Other main contributors:
787         Joe Mason <jmason@rim.com>
788         Lyon Chen <liachen@rim.com>
789
790         Initial upstream, can't be built yet, no new tests.
791
792         * platform/network/blackberry/SocketStreamError.h: Added.
793         (WebCore::SocketStreamError::SocketStreamError):
794         * platform/network/blackberry/SocketStreamHandle.h: Added.
795         (WebCore::SocketStreamHandle::create):
796         * platform/network/blackberry/SocketStreamHandleBlackBerry.cpp: Added.
797         (WebCore::SocketStreamHandle::SocketStreamHandle):
798         (WebCore::SocketStreamHandle::~SocketStreamHandle):
799         (WebCore::SocketStreamHandle::platformSend):
800         (WebCore::SocketStreamHandle::platformClose):
801         (WebCore::SocketStreamHandle::didReceiveAuthenticationChallenge):
802         (WebCore::SocketStreamHandle::receivedCredential):
803         (WebCore::SocketStreamHandle::receivedRequestToContinueWithoutCredential):
804         (WebCore::SocketStreamHandle::receivedCancellation):
805         (WebCore::SocketStreamHandle::notifyStatusReceived):
806         (WebCore::SocketStreamHandle::notifyDataReceived):
807         (WebCore::SocketStreamHandle::notifyReadyToSendData):
808         (WebCore::SocketStreamHandle::notifyClose):
809
810 2011-11-28  Yongjun Zhang  <yongjun_zhang@apple.com>
811
812         Size of ResourceRequestBase could be reduced by using bitfields.
813         https://bugs.webkit.org/show_bug.cgi?id=73271
814
815         Reviewed by Alexey Proskuryakov.
816
817         Add bitfield for bool members in ResourceRequestBase to reduce its memory size.
818
819         * platform/network/ResourceRequestBase.h:
820
821 2011-11-28  Yuta Kitamura  <yutak@chromium.org>
822
823         WebSocket: Split Hixie76 length-prefixed frames aren't handled correctly
824         https://bugs.webkit.org/show_bug.cgi?id=68522
825
826         Reviewed by Kent Tamura.
827
828         Test: http/tests/websocket/tests/hixie76/split-binary-frame-header.html
829
830         * websockets/WebSocketChannel.cpp:
831         (WebCore::WebSocketChannel::processFrameHixie76):
832         Do not consume the data if the length field is not finished.
833
834 2011-11-28  Stephen White  <senorblanco@chromium.org>
835
836         [chromium] Fix SVG filters when running in accelerated drawing mode.
837         https://bugs.webkit.org/show_bug.cgi?id=73249
838
839         Reviewed by Kenneth Russell.
840
841         Test: platform/chromium/compositing/accelerated-drawing/svg-filters.html
842
843         * platform/graphics/chromium/LayerTextureUpdaterCanvas.cpp:
844         (WebCore::LayerTextureUpdaterSkPicture::prepareToUpdate):
845         When doing accelerated drawing, mark the PlatformContextSkia as
846         deferred.
847         * platform/graphics/skia/ImageBufferSkia.cpp:
848         (WebCore::drawNeedsCopy):
849         When doing a cross-context draw, if the destination context is 
850         deferred, copy the image.  Also refactor conditions under which the
851         image is copied into a new function.
852         (WebCore::ImageBuffer::draw):
853         (WebCore::ImageBuffer::drawPattern):
854         Use the refactored function for conditional copies.
855         * platform/graphics/skia/PlatformContextSkia.cpp:
856         (WebCore::PlatformContextSkia::PlatformContextSkia):
857         * platform/graphics/skia/PlatformContextSkia.h:
858         (WebCore::PlatformContextSkia::isDeferred):
859         (WebCore::PlatformContextSkia::setDeferred):
860         Add m_isDeferred flag, initializer and accessors.
861
862 2011-11-29  Roland Steiner  <rolandsteiner@chromium.org>
863
864         <style scoped>: add ENABLE(STYLE_SCOPED) flag to WebKit
865         https://bugs.webkit.org/show_bug.cgi?id=72848
866
867         Reviewed by Dimitri Glazkov.
868
869         No new tests. (no code)
870
871         * Configurations/FeatureDefines.xcconfig:
872         * GNUmakefile.am:
873
874 2011-11-28  Vangelis Kokkevis  <vangelis@chromium.org>
875
876         [chromium] Disable compositing for RTL pages even in forceCompositingMode
877         https://bugs.webkit.org/show_bug.cgi?id=73195
878
879         Reviewed by James Robinson.
880
881         * rendering/RenderLayerCompositor.cpp:
882         (WebCore::RenderLayerCompositor::cacheAcceleratedCompositingFlags):
883
884 2011-11-29  Roland Steiner  <rolandsteiner@chromium.org>
885
886         From @keyframes rules with the same name, the last rule should be used
887         https://bugs.webkit.org/show_bug.cgi?id=73113
888
889         Have later rules override previously stored rules.
890
891         Reviewed by Simon Fraser.
892
893         Test: animations/duplicated-keyframes-name.html
894
895         * css/CSSStyleSelector.cpp:
896         (WebCore::CSSStyleSelector::addKeyframeStyle):
897
898 2011-11-28  Jacky Jiang  <zhajiang@rim.com>
899
900         Upstream BlackBerry porting of page.
901         https://bugs.webkit.org/show_bug.cgi?id=73143
902
903         Reviewed by Daniel Bates.
904
905         Upstream BlackBerry porting of WebCore/page.
906         Define DragImageRef for BlackBerry platform.
907
908         Initial upstream, can't be built yet, no test cases.
909
910         * page/blackberry/DragControllerBlackBerry.cpp: Added.
911         (WebCore::DragController::isCopyKeyDown):
912         (WebCore::DragController::maxDragImageSize):
913         (WebCore::DragController::cleanupAfterSystemDrag):
914         (WebCore::DragController::dragOperation):
915         * page/blackberry/EventHandlerBlackBerry.cpp: Added.
916         (WebCore::EventHandler::eventActivatedView):
917         (WebCore::EventHandler::passMouseMoveEventToSubframe):
918         (WebCore::EventHandler::passMousePressEventToSubframe):
919         (WebCore::EventHandler::passMouseReleaseEventToSubframe):
920         (WebCore::EventHandler::passWheelEventToWidget):
921         (WebCore::EventHandler::passWidgetMouseDownEventToWidget):
922         (WebCore::EventHandler::tabsToAllFormControls):
923         (WebCore::EventHandler::accessKeyModifiers):
924         (WebCore::EventHandler::focusDocumentView):
925         (WebCore::EventHandler::createDraggingClipboard):
926         * page/blackberry/FrameBlackBerry.cpp: Added.
927         (WebCore::Frame::dragImageForSelection):
928         * platform/DragImage.h:
929
930 2011-11-28  Shawn Singh  <shawnsingh@chromium.org>
931
932         [chromium] Create CCDamageTracker class to determine regions of change for a surface.
933         https://bugs.webkit.org/show_bug.cgi?id=72520
934
935         Reviewed by James Robinson.
936
937         Added CCDamageTrackerTest and updated other tests.
938
939         * WebCore.gypi:
940         * platform/graphics/chromium/LayerRendererChromium.cpp:
941         (WebCore::LayerRendererChromium::drawLayersOntoRenderSurfaces):
942         (WebCore::LayerRendererChromium::drawLayer):
943         * platform/graphics/chromium/cc/CCDamageTracker.cpp: Added.
944         (WebCore::CCDamageTracker::create):
945         (WebCore::CCDamageTracker::CCDamageTracker):
946         (WebCore::CCDamageTracker::~CCDamageTracker):
947         (WebCore::CCDamageTracker::updateDamageRectForNextFrame):
948         (WebCore::CCDamageTracker::removeRectFromCurrentFrame):
949         (WebCore::CCDamageTracker::saveRectForNextFrame):
950         (WebCore::CCDamageTracker::computeDamageFromActiveLayers):
951         (WebCore::CCDamageTracker::computeDamageFromSurfaceMask):
952         (WebCore::CCDamageTracker::computeDamageFromLeftoverRects):
953         (WebCore::CCDamageTracker::extendDamageForLayer):
954         (WebCore::CCDamageTracker::extendDamageForRenderSurface):
955         * platform/graphics/chromium/cc/CCDamageTracker.h: Added.
956         (WebCore::CCDamageTracker::currentDamageRect):
957         * platform/graphics/chromium/cc/CCLayerImpl.cpp:
958         (WebCore::CCLayerImpl::resetAllChangeTrackingForSubtree):
959         * platform/graphics/chromium/cc/CCLayerImpl.h:
960         * platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
961         (WebCore::CCLayerTreeHost::paintLayerContents):
962         (WebCore::CCLayerTreeHost::updateCompositorResources):
963         * platform/graphics/chromium/cc/CCLayerTreeHost.h:
964         (WebCore::CCSettings::CCSettings):
965         * platform/graphics/chromium/cc/CCLayerTreeHostCommon.h:
966         (WebCore::CCLayerTreeHostCommon::renderSurfaceContributesToTarget):
967         * platform/graphics/chromium/cc/CCRenderSurface.cpp:
968         (WebCore::CCRenderSurface::CCRenderSurface):
969         (WebCore::CCRenderSurface::dumpSurface):
970         (WebCore::CCRenderSurface::surfacePropertyChangedOnlyFromDescendant):
971         * platform/graphics/chromium/cc/CCRenderSurface.h:
972         (WebCore::CCRenderSurface::damageTracker):
973
974 2011-11-28  Luke Macpherson   <macpherson@chromium.org>
975
976         Implement CSSPropertySize in CSSStyleApplyProperty.
977         https://bugs.webkit.org/show_bug.cgi?id=73000
978
979         Reviewed by Andreas Kling.
980
981         This refactoring moves the implementation of the page size calculation into CSSStyleApplyProperty
982         and removes the existing code from CSSStyleSelector.
983
984         No new tests / refactoring only.
985
986         * css/CSSStyleApplyProperty.cpp:
987         (WebCore::ApplyPropertyPageSize::mmLength):
988         (WebCore::ApplyPropertyPageSize::inchLength):
989         (WebCore::ApplyPropertyPageSize::pageSizeFromName):
990         (WebCore::ApplyPropertyPageSize::applyInheritValue):
991         (WebCore::ApplyPropertyPageSize::applyInitialValue):
992         (WebCore::ApplyPropertyPageSize::applyValue):
993         (WebCore::ApplyPropertyPageSize::createHandler):
994         (WebCore::CSSStyleApplyProperty::CSSStyleApplyProperty):
995         * css/CSSStyleSelector.cpp:
996         (WebCore::CSSStyleSelector::applyProperty):
997         * css/CSSStyleSelector.h:
998
999 2011-11-28  Timothy Hatcher  <timothy@apple.com>
1000
1001         Add support for knowing when a TreeElement is added or changed anywhere in a TreeOutline.
1002
1003         Reviewed by Brian Weinstein.
1004
1005         * inspector/front-end/treeoutline.js:
1006         (TreeOutline.prototype.appendChild): Call onadd if it exists.
1007         (TreeOutline.prototype.insertChild): Ditto.
1008         (TreeOutline.prototype._treeElementDidChange): Added. Call onchange if it exists.
1009         (TreeElement.prototype.set title): Call didChange.
1010         (TreeElement.prototype.set titleHTML): Ditto.
1011         (TreeElement.prototype.set tooltip): Ditto.
1012         (TreeElement.prototype.set hasChildren): Ditto.
1013         (TreeElement.prototype._fireDidChange): Added. Call TreeOutline._treeElementDidChange.
1014         (TreeElement.prototype.didChange): Added. Schedule a timeout for _fireDidChange.
1015         (TreeElement.prototype.expand): Move the code that sets the expanded flag to the beginning
1016         which is before onpopulate. Since onpopulate can add elements and call onadd, this makes
1017         sure the expanded flag is true before calling those functions.
1018
1019 2011-11-28  Timothy Hatcher  <timothy@apple.com>
1020
1021         Skip selecting TreeElements that are hidden when keyboard navigating.
1022
1023         We already skipped non-selectable tree elements in the common cases, this just makes selectable
1024         take the hidden flag into account.
1025
1026         Reviewed by Brian Weinstein.
1027
1028         * inspector/front-end/treeoutline.js:
1029         (TreeOutline.prototype._treeKeyDown): Skip non-selectable elements when pressing Left or Right,
1030         similar to what we already do when pressing Up and Down.
1031         (TreeElement): Set _selectable to true.
1032         (TreeElement.prototype.get selectable): Added. Return false when hidden.
1033         (TreeElement.prototype.set selectable): Added. Set _selectable.
1034         (TreeElement.prototype.traverseNextTreeElement): Renamed skipHidden to skipUnrevealed to prevent confusion with
1035         the hidden property of TreeElement.
1036         (TreeElement.prototype.traversePreviousTreeElement): Ditto.
1037
1038 2011-11-28  Timothy Hatcher  <timothy@apple.com>
1039
1040         Use classList instead of addStyleClass and removeStyleClass in TreeOutline.
1041
1042         https://webkit.org/b/72803
1043
1044         Reviewed by Dan Bernstein.
1045
1046         * inspector/front-end/treeoutline.js:
1047         (TreeOutline.prototype.appendChild):
1048         (TreeOutline.prototype.insertChild):
1049         (TreeElement.prototype.set hasChildren):
1050         (TreeElement.prototype.set hidden):
1051         (TreeElement.prototype._attach):
1052         (TreeElement.prototype.collapse):
1053         (TreeElement.prototype.expand):
1054         (TreeElement.prototype.select):
1055         (TreeElement.prototype.deselect):
1056
1057 2011-11-28  Leo Yang  <leo.yang@torchmobile.com.cn>
1058
1059         Upstream platform/network/blackberry/AuthenticationChallenge.h
1060         https://bugs.webkit.org/show_bug.cgi?id=73196
1061
1062         Reviewed by Daniel Bates.
1063
1064         This is the BlackBerry implementation of WebCore::AuthenticationChallenge.
1065         Contributed by Torch Team.
1066
1067         Initial upstream, can't be built yet, no new tests.
1068
1069         * platform/network/blackberry/AuthenticationChallenge.h: Added.
1070         (WebCore::AuthenticationChallenge::AuthenticationChallenge):
1071         (WebCore::AuthenticationChallenge::setStored):
1072         (WebCore::AuthenticationChallenge::isStored):
1073
1074 2011-11-28  Dana Jansens  <danakj@chromium.org>
1075
1076         Synchronization problem in Canvas/WebGLRenderingContext when listener asks for image
1077         https://bugs.webkit.org/show_bug.cgi?id=73228
1078
1079         Reviewed by Kenneth Russell.
1080
1081         * html/canvas/WebGLRenderingContext.cpp:
1082         (WebCore::WebGLRenderingContext::markContextChanged):
1083
1084 2011-11-28  Rafael Weinstein  <rafaelw@chromium.org>
1085
1086         [MutationObservers] Fix build breakage after CSSInlineDeclaration refactor
1087         https://bugs.webkit.org/show_bug.cgi?id=73243
1088
1089         Reviewed by Ryosuke Niwa.
1090
1091         No tests needed. This patch only contains compile fixes.
1092
1093         * css/CSSMutableStyleDeclaration.cpp:
1094
1095 2011-11-28  Jon Lee  <jonlee@apple.com>
1096
1097         Fix Chromium bot build error related to b73253.
1098
1099         * WebCore.gypi: Added missing references to NotificationController.
1100
1101 2011-11-28  Jon Lee  <jonlee@apple.com>
1102
1103         Create skeleton framework for notifications support in WK2
1104         https://bugs.webkit.org/show_bug.cgi?id=73253
1105         <rdar://problem/10356943>
1106
1107         Reviewed by Sam Weinig.
1108
1109         Some refactoring was done to make notifications follow a similar pattern to our other clients, like
1110         geolocation and context menu.
1111
1112         * Configurations/FeatureDefines.xcconfig: Split out ENABLE_NOTIFICATIONS based on platform.
1113         * WebCore.xcodeproj/project.pbxproj: Adding new NotificationController class, and exposing
1114         Notification and NotificationController as private headers.
1115         * Target.pri: Ditto.
1116         * WebCore.gypi: Ditto.
1117
1118         * notifications/NotificationContents.h: Converted class to struct. Members need to be accessible
1119         in order to do WK2 argument encoding.
1120         (WebCore::NotificationContents::NotificationContents):
1121
1122         * notifications/Notification.cpp: Update style of entire file.
1123         (WebCore::Notification::Notification): Added default constructor (for WK2), and minor refactoring
1124         with NotificationContents.
1125         * notifications/Notification.h: Added set methods for WK2 serialization. Also, update indenting.
1126         (WebCore::Notification::setHTML): Added.
1127         (WebCore::Notification::setURL): Added.
1128         (WebCore::Notification::contents): Added const version for WK2.
1129         * notifications/NotificationCenter.h: Update style.
1130
1131         * notifications/NotificationController.cpp: Added.
1132         (WebCore::NotificationController::NotificationController):
1133         (WebCore::NotificationController::~NotificationController):
1134         * notifications/NotificationController.h: Added.
1135         (WebCore::NotificationController::client):
1136         * notifications/NotificationPresenter.h: This acts like a client, and should probably be renamed as such.
1137         Removed ifdef for exposure to WK2.
1138         (WebCore::NotificationPresenter::~NotificationPresenter): Moved as protected instead of public.
1139
1140         * page/DOMWindow.cpp:
1141         (WebCore::DOMWindow::webkitNotifications):  We move the request for the notification client from the chrome
1142         to the controller.
1143         * page/Page.cpp:
1144         (WebCore::Page::Page): The page now owns a notification controller.
1145         (WebCore::Page::PageClients::PageClients): Add notification client as a page client.
1146         * page/Page.h:
1147         (WebCore::Page::notificationController): Retrieve the notification controller.
1148
1149         * page/ChromeClient.h: We move the request for the notification client from the chrome to the controller.
1150         Remove notificationPresenter().
1151         * page/Chrome.cpp: Remove notificationPresenter().
1152         * page/Chrome.h: Remove notificationPresenter().
1153         * loader/EmptyClients.h: Remove notificationPresenter().
1154
1155 2011-11-28  Noel Gordon  <noel.gordon@gmail.com>
1156
1157         ImageDecoder setSize() should check for backing store allocation failure
1158         https://bugs.webkit.org/show_bug.cgi?id=72864
1159
1160         Reviewed by Adam Barth.
1161
1162         The backing store of a decoded image is a Vector<PixelData> on the affected
1163         ports. And Vector<> provides a resize capacity member that returns false if
1164         memory allocation fails.
1165
1166         setSize() should be called once only during an image decode - add an ASSERT
1167         for that. Resize the backing store capacity to the requested image size and
1168         return false if memory allocation fails.
1169
1170         ImageDecoder::isOverSize(width, height) is called to check that the decoded
1171         width and height won't overflow 'width x height x sizeof(PixelData)' before
1172         calls to setSize(). Refer to http://webkit.org/b/48634
1173
1174         No new tests. Covered by fast/images/size-failure.html
1175
1176         * platform/image-decoders/ImageDecoder.cpp:
1177         (WebCore::ImageFrame::setSize):
1178
1179 2011-11-28  Oliver Hunt  <oliver@apple.com>
1180
1181         Fix V8 bindings codegen and add yet more tests for the typed
1182         array bindings.
1183
1184         * bindings/scripts/CodeGeneratorV8.pm:
1185         (AddIncludesForType):
1186         * bindings/scripts/test/CPP/WebDOMFloat64Array.cpp:
1187         (WebDOMFloat64Array::foo):
1188         * bindings/scripts/test/CPP/WebDOMFloat64Array.h:
1189         * bindings/scripts/test/GObject/WebKitDOMFloat64Array.cpp:
1190         (webkit_dom_float64array_foo):
1191         * bindings/scripts/test/GObject/WebKitDOMFloat64Array.h:
1192         * bindings/scripts/test/JS/JSFloat64Array.cpp:
1193         (WebCore::jsFloat64ArrayPrototypeFunctionFoo):
1194         * bindings/scripts/test/ObjC/DOMFloat64Array.h:
1195         * bindings/scripts/test/ObjC/DOMFloat64Array.mm:
1196         (-[DOMFloat64Array foo:]):
1197         * bindings/scripts/test/TestTypedArray.idl:
1198         * bindings/scripts/test/V8/V8Float64Array.cpp:
1199         (WebCore::Float64ArrayInternal::fooCallback):
1200
1201 2011-11-28  Dana Jansens  <danakj@chromium.org>
1202
1203         FloatQuad::isRectilinear() returns false for 180degree rotations
1204         https://bugs.webkit.org/show_bug.cgi?id=73040
1205
1206         Reviewed by James Robinson.
1207
1208         Added unit test FloatQuadTest.cpp.
1209
1210         * platform/graphics/FloatQuad.cpp:
1211         (WebCore::withinEpsilon): Check two values are as close as can be represented by floats.
1212         (WebCore::FloatQuad::isRectilinear): Use withinEpsilon().
1213
1214 2011-11-28  Beth Dakin  <bdakin@apple.com>
1215
1216         Speculative Chromium build-fix.
1217
1218         * platform/chromium/ScrollAnimatorChromiumMac.mm:
1219         (WebCore::ScrollAnimatorChromiumMac::updateScrollerStyle):
1220
1221 2011-11-28  Oliver Hunt  <oliver@apple.com>
1222
1223         Move typed array implementations into wtf
1224         https://bugs.webkit.org/show_bug.cgi?id=73248
1225
1226         Reviewed by Sam Weinig.
1227
1228         Removed the typed array implementation files from WebCore and
1229         added forwarding headers.
1230
1231         * CMakeLists.txt:
1232         * ForwardingHeaders/wtf/ArrayBuffer.h: Added.
1233         * ForwardingHeaders/wtf/ArrayBufferView.h: Added.
1234         * ForwardingHeaders/wtf/Float32Array.h: Added.
1235         * ForwardingHeaders/wtf/Float64Array.h: Added.
1236         * ForwardingHeaders/wtf/Int16Array.h: Added.
1237         * ForwardingHeaders/wtf/Int32Array.h: Added.
1238         * ForwardingHeaders/wtf/Int8Array.h: Added.
1239         * ForwardingHeaders/wtf/Uint16Array.h: Added.
1240         * ForwardingHeaders/wtf/Uint32Array.h: Added.
1241         * ForwardingHeaders/wtf/Uint8Array.h: Added.
1242         * GNUmakefile.list.am:
1243         * Target.pri:
1244         * WebCore.vcproj/WebCore.vcproj:
1245         * WebCore.xcodeproj/project.pbxproj:
1246         * bindings/js/JSArrayBufferCustom.cpp:
1247         * bindings/js/JSArrayBufferViewHelper.h:
1248         * bindings/js/JSAudioContextCustom.cpp:
1249         * bindings/js/JSFileReaderCustom.cpp:
1250         * bindings/js/JSFloat32ArrayCustom.cpp:
1251         * bindings/js/JSFloat64ArrayCustom.cpp:
1252         * bindings/js/JSInt16ArrayCustom.cpp:
1253         * bindings/js/JSInt32ArrayCustom.cpp:
1254         * bindings/js/JSInt8ArrayCustom.cpp:
1255         * bindings/js/JSUint16ArrayCustom.cpp:
1256         * bindings/js/JSUint32ArrayCustom.cpp:
1257         * bindings/js/JSUint8ArrayCustom.cpp:
1258         * bindings/js/JSWaveShaperNodeCustom.cpp:
1259         * bindings/js/JSWebGLRenderingContextCustom.cpp:
1260         * bindings/js/JSXMLHttpRequestCustom.cpp:
1261         * bindings/scripts/CodeGeneratorJS.pm:
1262         (AddIncludesForType):
1263         (GenerateHeader):
1264         (NativeToJSValue):
1265         * bindings/scripts/test/JS/JSFloat64Array.cpp:
1266         * bindings/scripts/test/JS/JSFloat64Array.h:
1267         * dom/MessageEvent.h:
1268         * fileapi/FileReader.cpp:
1269         * fileapi/FileReaderLoader.cpp:
1270         * fileapi/FileReaderSync.cpp:
1271         * fileapi/WebKitBlobBuilder.cpp:
1272         * html/HTMLMediaElement.cpp:
1273         * html/canvas/ArrayBuffer.h: Removed.
1274         * html/canvas/ArrayBufferView.cpp: Removed.
1275         * html/canvas/DataView.h:
1276         * html/canvas/Float64Array.cpp: Removed.
1277         * html/canvas/Int16Array.h: Removed.
1278         * html/canvas/Int32Array.h: Removed.
1279         * html/canvas/Int8Array.h: Removed.
1280         * html/canvas/Uint16Array.h: Removed.
1281         * html/canvas/Uint32Array.h: Removed.
1282         * html/canvas/Uint8Array.cpp: Removed.
1283         * html/canvas/WebGLBuffer.cpp:
1284         * html/canvas/WebGLBuffer.h:
1285         * html/canvas/WebGLGetInfo.cpp:
1286         * html/canvas/WebGLGetInfo.h:
1287         * html/canvas/WebGLRenderingContext.cpp:
1288         * html/canvas/WebGLRenderingContext.h:
1289         * page/Crypto.cpp:
1290         * platform/graphics/GraphicsContext3D.cpp:
1291         * platform/graphics/mac/GraphicsContext3DMac.mm:
1292         * platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:
1293         * webaudio/AsyncAudioDecoder.cpp:
1294         * webaudio/AudioBuffer.h:
1295         * webaudio/AudioContext.cpp:
1296         * webaudio/AudioParam.h:
1297         * webaudio/AudioParamTimeline.h:
1298         * webaudio/JavaScriptAudioNode.cpp:
1299         * webaudio/RealtimeAnalyser.cpp:
1300         * webaudio/WaveShaperProcessor.h:
1301         * websockets/WebSocketChannel.cpp:
1302         * websockets/WorkerThreadableWebSocketChannel.cpp:
1303         * xml/XMLHttpRequest.cpp:
1304
1305 2011-11-28  Robert Hogan  <robert@webkit.org>
1306
1307         Unreviewed, rolling out r101202.
1308         http://trac.webkit.org/changeset/101202
1309         https://bugs.webkit.org/show_bug.cgi?id=71244
1310
1311         Caused performance regressions when painting collapsed borders
1312
1313         * rendering/RenderTableCell.cpp:
1314         (WebCore::compareBorders):
1315         (WebCore::RenderTableCell::collapsedStartBorder):
1316         (WebCore::RenderTableCell::collapsedEndBorder):
1317         (WebCore::RenderTableCell::collapsedBeforeBorder):
1318         (WebCore::RenderTableCell::collapsedAfterBorder):
1319         * rendering/style/CollapsedBorderValue.h:
1320         (WebCore::CollapsedBorderValue::CollapsedBorderValue):
1321         (WebCore::CollapsedBorderValue::operator==):
1322         * rendering/style/RenderStyleConstants.h:
1323
1324 2011-11-28  Beth Dakin  <bdakin@apple.com>
1325
1326         https://bugs.webkit.org/show_bug.cgi?id=72551
1327         When the recommended scrollbar style changes, WKView's tracking options should 
1328         adjust accordingly
1329         -and corresponding-
1330         <rdar://problem/10409328>
1331
1332         Reviewed by Darin Adler.
1333
1334         This new ChromeClient function is called when the recommended scrollbar style 
1335         changes. This way, WebKit can respond to the change by adjusting its mouse 
1336         tracking.
1337         * page/ChromeClient.h:
1338         (WebCore::ChromeClient::recommendedScrollbarStyleDidChange):
1339
1340         Existing ScrollableArea function scrollbarStyleChanged() now takes an int 
1341         indicating the new scrollbar style and a bool indicating whether it is necessary 
1342         to force an update. It used to be the case that this function was ONLY used to 
1343         force an update (and only called when an updated was needed), but now that it must 
1344         also call into the ChromeClient, it is necessary to include a bool tracking 
1345         whether we need to force an update. New implementation on FrameView is responsible 
1346         for calling ChromeClient, and then that calls into the pre-existing ScrollView 
1347         function for the forceUpdate part.
1348         * page/FrameView.cpp:
1349         (WebCore::FrameView::scrollbarStyleChanged):
1350         * page/FrameView.h:
1351         * platform/ScrollView.cpp:
1352         (WebCore::ScrollView:: scrollbarStyleChanged):
1353         * platform/ScrollView.h:
1354         * platform/ScrollableArea.h:
1355         (WebCore::ScrollableArea::scrollbarStyleChanged):
1356         * platform/mac/ScrollAnimatorMac.mm:
1357         (WebCore::ScrollAnimatorMac::updateScrollerStyle):
1358
1359 2011-11-28  Julien Chaffraix  <jchaffraix@webkit.org>
1360
1361         Add limited parsing support for grid-columns and grid-rows
1362         https://bugs.webkit.org/show_bug.cgi?id=72531
1363
1364         Reviewed by Tony Chang.
1365
1366         Test: fast/css-grid-layout/grid-columns-rows-get-set.html
1367
1368         Added support for:
1369         <track-list> := <length> | <percentage> | 'none' | 'auto'
1370
1371         * CMakeLists.txt:
1372         * GNUmakefile.list.am:
1373         * Target.pri:
1374         * WebCore.gypi:
1375         * WebCore.vcproj/WebCore.vcproj:
1376         * WebCore.xcodeproj/project.pbxproj:
1377         * rendering/style/StyleAllInOne.cpp:
1378         Updated our build systems.
1379
1380         * css/CSSComputedStyleDeclaration.cpp:
1381         (WebCore::valueForGridTrackList):
1382         Helper function to convert our RenderStyle information to a proper CSSValue.
1383         It doesn't do much now but it will be expanded as we add more support.
1384
1385         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): Call the previous
1386         function.
1387
1388         * css/CSSParser.h:
1389         * css/CSSParser.cpp:
1390         (WebCore::CSSParser::parseValue):
1391         (WebCore::CSSParser::parseGridTrackList):
1392         CSS parsing part of this change. Pretty simple for now.
1393
1394         * css/CSSPropertyNames.in:
1395         Added -webkit-grid-columns and -webkit-grid-rows.
1396
1397         * css/CSSProperty.cpp:
1398         (WebCore::CSSProperty::isInheritedProperty):
1399         * css/CSSStyleApplyProperty.cpp:
1400         (WebCore::CSSStyleApplyProperty::CSSStyleApplyProperty):
1401         * css/CSSStyleSelector.cpp:
1402         (WebCore::CSSStyleSelector::applyProperty):
1403         Style application plumbing.
1404
1405         * rendering/style/RenderStyle.cpp:
1406         (WebCore::RenderStyle::RenderStyle):
1407         (WebCore::RenderStyle::diff):
1408         This change is required for later when we add layout for our grid.
1409
1410         * rendering/style/RenderStyle.h:
1411         (WebCore::InheritedFlags::gridColumns):
1412         (WebCore::InheritedFlags::gridRows):
1413         (WebCore::InheritedFlags::setGridColumns):
1414         (WebCore::InheritedFlags::setGridRows):
1415         (WebCore::InheritedFlags::initialGridColumns):
1416         (WebCore::InheritedFlags::initialGridRows):
1417         Getters / Setters and initial values.
1418
1419         * rendering/style/StyleGridData.cpp: Added.
1420         (WebCore::StyleGridData::StyleGridData):
1421         * rendering/style/StyleGridData.h: Added.
1422         (WebCore::StyleGridData::create):
1423         (WebCore::StyleGridData::copy):
1424         (WebCore::StyleGridData::operator==):
1425         (WebCore::StyleGridData::operator!=):
1426         This class holds the grid element information. For now pretty simple
1427         shell that will be used for the rest of the support.
1428
1429         * rendering/style/StyleRareNonInheritedData.cpp:
1430         (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
1431         (WebCore::StyleRareNonInheritedData::operator==):
1432         * rendering/style/StyleRareNonInheritedData.h:
1433         Added StyleGridElementData to StyleRareNonInheritedData.
1434
1435 2011-11-28  Noel Gordon  <noel.gordon@gmail.com>
1436
1437         [chromium] Use data decoding swizzle for turbo JPEG image decoding.
1438         https://bugs.webkit.org/show_bug.cgi?id=59670
1439
1440         Reviewed by Kenneth Russell.
1441
1442         Add a BGRX row decode data swizzle for the little-endian ports that use libjpeg-turbo
1443         (Chromium win/linux/mac) to reduce JPEG image decoding time by ~2x.
1444
1445         JPEG images of type JSC_GRAYSCALE are excluded since layout regressions were observed
1446         for grayscale images produced by older tools (XV 3.10a 12/19/94). libjpeg decodes the
1447         images without error; libjpeg-turbo caused visible artifacts (see bug for examples).
1448
1449         This patch is based on the work of Hironori Bono. He provided the original patch, and
1450         the quantitative results confirming the significant performance improvement.
1451
1452         No new tests. Covered by many existing tests.
1453
1454         * platform/image-decoders/jpeg/JPEGImageDecoder.cpp:
1455         (rgbOutputColorSpace):  If JCS_EXTENSIONS is defined (libjpeg-turbo), and the port is
1456         little-endian, define a BGRX data swizzle for use when decoding pixel rows.
1457         (turboSwizzled):
1458         (WebCore::JPEGImageReader::decode):  Select a possibly swizzled rgbOutputColorSpace()
1459         for JSC_RGB and JCS_YCbCr input color space images.  Exclude JSC_GRAYSCALE images.
1460         (WebCore::JPEGImageDecoder::outputScanlines):  Swizzle decode, if applicable.
1461
1462 2011-11-28  Fady Samuel  <fsamuel@chromium.org>
1463
1464         Fix Aspect Ratio Property Inheritance And Make the Computed Value Equal the Specified Value
1465         https://bugs.webkit.org/show_bug.cgi?id=73038
1466
1467         Reviewed by Ojan Vafai.
1468
1469         hasAspectRatio was not being set if the -webkit-aspect-ratio property was inherited from the parent.
1470
1471         Additionally, the computed value of -webkit-aspect-ratio was returning a number instead of a ratio.
1472
1473         Test: fast/css/aspect-ratio-inheritance.html
1474
1475         * css/CSSComputedStyleDeclaration.cpp:
1476         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
1477         * css/CSSStyleApplyProperty.cpp:
1478         (WebCore::ApplyPropertyAspectRatio::applyInheritValue):
1479
1480 2011-11-28  Ken Buchanan  <kenrb@chromium.org>
1481
1482         Crash due to bidi style in isolated run
1483         https://bugs.webkit.org/show_bug.cgi?id=72978
1484
1485         Reviewed by Eric Seidel.
1486
1487         Prevent the UBA from changing the embedding level when inside an isolated run.
1488
1489         * rendering/InlineIterator.h:
1490         (WebCore::notifyObserverEnteredObject):
1491         (WebCore::notifyObserverWillExitObject):
1492
1493 2011-11-28  Martin Robinson  <mrobinson@igalia.com>
1494
1495         Fix 'make dist' by adding two missing files to source list.
1496
1497         * GNUmakefile.list.am: Add missing files.
1498
1499 2011-11-25  Ryosuke Niwa  <rniwa@webkit.org>
1500
1501         dir=auto should imply unicode-bidi:isolate by default
1502         https://bugs.webkit.org/show_bug.cgi?id=63903
1503
1504         Reviewed by Dan Bernstein.
1505
1506         Fixed WebKit's implementation of bdo, bdi, and output elements to match HTML5 spec section 10.3.5:
1507         http://dev.w3.org/html5/spec/Overview.html#bidirectional-text
1508
1509         Any element with dir=auto other than bdo, textarea, and pre should use unicode-bidi: -webkit-isolate by default.
1510
1511         We still don't use -webkit-isolate for non-phrasing elements by default and unicode-override -webkit-isolate for
1512         bdo[dir=auto] so these two cases are failing in the added test.
1513
1514         Test: fast/css/default-bidi-css-rules.html
1515
1516         * css/html.css:
1517         (bdi, output): bdi and output should both use -webkit-isolate as the default value for unicode-bidi.
1518         (bdo): bdo should use bidi-override as the default value for unicode-bidi.
1519         * dom/MappedAttributeEntry.h: Add eBDI, which is used by bdi and output elements.
1520         * html/HTMLElement.cpp:
1521         (WebCore::HTMLElement::mapToEntry): Don't share the cache for dir attribute between bdi and other elements
1522         just like we don't share the cache for dir attribute between bdo and other elements.
1523         (WebCore::unicodeBidiAttributeForDirAuto): Don't set bidi-override for bdo element since this is done
1524         in the UA stylesheet now. Set unicode-bidi to -webkit-isolate for elements other than pre and textarea now that
1525         this function is called only when dir=auto.
1526         called when dir=auto as the name implies.
1527         (WebCore::HTMLElement::parseMappedAttribute): Don't call unicodeBidiAttributeForDirAuto when dir is not
1528         auto. Also set unicode-bidi to embed when dir is not auto and the element is neither bdi, bdo, nor output.
1529         * html/HTMLOutputElement.cpp:
1530         (WebCore::HTMLOutputElement::mapToEntry): Don't share the cache for dir between output and other elements.
1531         * html/HTMLOutputElement.h:
1532         * html/HTMLTagNames.in:
1533
1534 2011-11-28  Jer Noble  <jer.noble@apple.com>
1535
1536         WebAudio: AudioContext::uninitialize() can caused AudioContext deletion before deleting marked nodes.
1537         https://bugs.webkit.org/show_bug.cgi?id=72755
1538
1539         Reviewed by Eric Carlson.
1540
1541         No new tests.
1542
1543         Protect AudioContext from being deleted before uninitialize() returns. Fixes an assertion in ~AudioContext() and 
1544         a potential source of leaks.
1545
1546         * webaudio/AudioContext.cpp:
1547         (WebCore::AudioContext::uninitialize):
1548
1549 2011-11-28  Andreas Kling  <kling@webkit.org>
1550
1551         InspectorCSSAgent: Remove unused function inlineStyleElement().
1552         <http://webkit.org/b/73221>
1553
1554         Reviewed by Pavel Feldman.
1555
1556         * inspector/InspectorCSSAgent.cpp:
1557         * inspector/InspectorCSSAgent.h:
1558
1559 2011-11-28  Simon Hausmann  <simon.hausmann@nokia.com>
1560
1561         [Qt] Build system fixes against V8.
1562
1563         Reviewed by Tor Arne Vestbø.
1564
1565         * DerivedSources.pri: Add missing binding files to the build and also added
1566         the regexp table generation needed for Yarr, which is compiled statically into
1567         WebCore to implement WebCore::RegularExpression.
1568         * Target.pri: Adapt to latest v8 binding files.
1569
1570 2011-11-28  Andrey Kosyakov  <caseq@chromium.org>
1571
1572         Web Inspector: resource status image is mis-aligned in the network headers view
1573         https://bugs.webkit.org/show_bug.cgi?id=73211
1574
1575         Reviewed by Pavel Feldman.
1576
1577         * inspector/front-end/ResourceHeadersView.js:
1578         (WebInspector.ResourceHeadersView):
1579
1580 2011-11-28  Pavel Feldman  <pfeldman@google.com>
1581
1582         Web Inspector: console evaluation doesn't work when navigating from a page with several frames to another one
1583         https://bugs.webkit.org/show_bug.cgi?id=73210
1584
1585         Reviewed by Yury Semikhatsky.
1586
1587         Test: http/tests/inspector/resource-tree/resource-tree-events.html
1588
1589         * inspector/Inspector.json:
1590         * inspector/front-end/ResourceTreeModel.js:
1591         (WebInspector.ResourceTreeModel.prototype._frameDetached):
1592         (WebInspector.ResourceTreeFrame.prototype.navigate):
1593         (WebInspector.ResourceTreeFrame.prototype.removeChildFrame):
1594         (WebInspector.ResourceTreeFrame.prototype.removeChildFrames):
1595
1596 2011-11-28  Pavel Feldman  <pfeldman@google.com>
1597
1598         Web Inspector: introduce InspectorBaseAgent.
1599         https://bugs.webkit.org/show_bug.cgi?id=73203
1600
1601         Now that inspector controller does not depend on concrete inspector agent
1602         classes, we can collect agent instances using abstract type.
1603
1604         Reviewed by Yury Semikhatsky.
1605
1606         * CMakeLists.txt:
1607         * GNUmakefile.list.am:
1608         * Target.pri:
1609         * WebCore.gypi:
1610         * WebCore.vcproj/WebCore.vcproj:
1611         * WebCore.xcodeproj/project.pbxproj:
1612         * inspector/InspectorAgent.cpp:
1613         (WebCore::InspectorAgent::InspectorAgent):
1614         * inspector/InspectorAgent.h:
1615         * inspector/InspectorApplicationCacheAgent.cpp:
1616         (WebCore::InspectorApplicationCacheAgent::InspectorApplicationCacheAgent):
1617         * inspector/InspectorApplicationCacheAgent.h:
1618         * inspector/InspectorBaseAgent.cpp: Copied from Source/WebCore/inspector/InspectorFileSystemAgent.h.
1619         (WebCore::InspectorBaseAgent::InspectorBaseAgent):
1620         (WebCore::InspectorBaseAgent::~InspectorBaseAgent):
1621         * inspector/InspectorBaseAgent.h: Copied from Source/WebCore/inspector/InspectorFileSystemAgent.h.
1622         * inspector/InspectorCSSAgent.cpp:
1623         (WebCore::InspectorCSSAgent::InspectorCSSAgent):
1624         * inspector/InspectorCSSAgent.h:
1625         (WebCore::InspectorCSSAgent::setFrontend):
1626         (WebCore::InspectorCSSAgent::restore):
1627         * inspector/InspectorConsoleAgent.cpp:
1628         (WebCore::InspectorConsoleAgent::InspectorConsoleAgent):
1629         (WebCore::InspectorConsoleAgent::~InspectorConsoleAgent):
1630         (WebCore::InspectorConsoleAgent::enable):
1631         (WebCore::InspectorConsoleAgent::disable):
1632         (WebCore::InspectorConsoleAgent::clearMessages):
1633         (WebCore::InspectorConsoleAgent::restore):
1634         (WebCore::InspectorConsoleAgent::clearFrontend):
1635         (WebCore::InspectorConsoleAgent::resourceRetrievedByXMLHttpRequest):
1636         (WebCore::InspectorConsoleAgent::setMonitoringXHREnabled):
1637         (WebCore::InspectorConsoleAgent::addConsoleMessage):
1638         * inspector/InspectorConsoleAgent.h:
1639         * inspector/InspectorController.cpp:
1640         (WebCore::InspectorController::InspectorController):
1641         * inspector/InspectorDOMAgent.cpp:
1642         (WebCore::InspectorDOMAgent::InspectorDOMAgent):
1643         (WebCore::InspectorDOMAgent::clearFrontend):
1644         (WebCore::InspectorDOMAgent::setDocument):
1645         (WebCore::InspectorDOMAgent::getDocument):
1646         (WebCore::InspectorDOMAgent::mainFrameDOMContentLoaded):
1647         * inspector/InspectorDOMAgent.h:
1648         * inspector/InspectorDOMStorageAgent.cpp:
1649         (WebCore::InspectorDOMStorageAgent::InspectorDOMStorageAgent):
1650         (WebCore::InspectorDOMStorageAgent::restore):
1651         (WebCore::InspectorDOMStorageAgent::enable):
1652         (WebCore::InspectorDOMStorageAgent::disable):
1653         * inspector/InspectorDOMStorageAgent.h:
1654         * inspector/InspectorDatabaseAgent.cpp:
1655         (WebCore::InspectorDatabaseAgent::InspectorDatabaseAgent):
1656         (WebCore::InspectorDatabaseAgent::enable):
1657         (WebCore::InspectorDatabaseAgent::disable):
1658         (WebCore::InspectorDatabaseAgent::restore):
1659         * inspector/InspectorDatabaseAgent.h:
1660         * inspector/InspectorDebuggerAgent.cpp:
1661         (WebCore::InspectorDebuggerAgent::InspectorDebuggerAgent):
1662         (WebCore::InspectorDebuggerAgent::disable):
1663         (WebCore::InspectorDebuggerAgent::enabled):
1664         (WebCore::InspectorDebuggerAgent::enable):
1665         (WebCore::InspectorDebuggerAgent::clearFrontend):
1666         (WebCore::InspectorDebuggerAgent::setBreakpointByUrl):
1667         (WebCore::InspectorDebuggerAgent::removeBreakpoint):
1668         (WebCore::InspectorDebuggerAgent::didParseSource):
1669         * inspector/InspectorDebuggerAgent.h:
1670         * inspector/InspectorFileSystemAgent.cpp:
1671         (WebCore::InspectorFileSystemAgent::InspectorFileSystemAgent):
1672         * inspector/InspectorFileSystemAgent.h:
1673         * inspector/InspectorPageAgent.cpp:
1674         (WebCore::InspectorPageAgent::InspectorPageAgent):
1675         * inspector/InspectorPageAgent.h:
1676         * inspector/InspectorProfilerAgent.cpp:
1677         (WebCore::InspectorProfilerAgent::InspectorProfilerAgent):
1678         (WebCore::InspectorProfilerAgent::enable):
1679         (WebCore::InspectorProfilerAgent::disable):
1680         (WebCore::InspectorProfilerAgent::restore):
1681         (WebCore::InspectorProfilerAgent::restoreEnablement):
1682         (WebCore::InspectorProfilerAgent::start):
1683         (WebCore::InspectorProfilerAgent::stop):
1684         * inspector/InspectorProfilerAgent.h:
1685         * inspector/InspectorResourceAgent.cpp:
1686         (WebCore::InspectorResourceAgent::InspectorResourceAgent):
1687         * inspector/InspectorResourceAgent.h:
1688         * inspector/InspectorTimelineAgent.cpp:
1689         (WebCore::InspectorTimelineAgent::InspectorTimelineAgent):
1690         * inspector/InspectorTimelineAgent.h:
1691         * inspector/InspectorWorkerAgent.cpp:
1692         (WebCore::InspectorWorkerAgent::InspectorWorkerAgent):
1693         (WebCore::InspectorWorkerAgent::restore):
1694         (WebCore::InspectorWorkerAgent::clearFrontend):
1695         (WebCore::InspectorWorkerAgent::setWorkerInspectionEnabled):
1696         (WebCore::InspectorWorkerAgent::setAutoconnectToWorkers):
1697         (WebCore::InspectorWorkerAgent::shouldPauseDedicatedWorkerOnStart):
1698         (WebCore::InspectorWorkerAgent::didStartWorkerContext):
1699         (WebCore::InspectorWorkerAgent::createWorkerFrontendChannel):
1700         * inspector/InspectorWorkerAgent.h:
1701
1702 2011-11-28  Ilya Tikhonovsky  <loislo@chromium.org>
1703
1704         Web Inspector: chromium: Unreviewed one-line fix for Summary view filter.
1705
1706         * inspector/front-end/HeapSnapshot.js:
1707         (WebInspector.HeapSnapshot.prototype.createNodesProviderForClass):
1708
1709 2011-11-28  Pavel Feldman  <pfeldman@google.com>
1710
1711         Not reviewed: disable filesystem instrumentation to unbreak Qt tests.
1712
1713         * inspector/front-end/inspector.js:
1714
1715 2011-11-28  Sheriff Bot  <webkit.review.bot@gmail.com>
1716
1717         Unreviewed, rolling out r101249.
1718         http://trac.webkit.org/changeset/101249
1719         https://bugs.webkit.org/show_bug.cgi?id=73205
1720
1721         it broke qt-minimal and wince builds (Requested by loislo on
1722         #webkit).
1723
1724         * inspector/CodeGeneratorInspector.py:
1725         (Capitalizer.upper_camel_case_to_lower):
1726         (RawTypes.get):
1727         (RawTypes.String.get_c_param_type):
1728         (RawTypes.Object.get_c_param_type):
1729         (RawTypes.Object):
1730         (ParamType):
1731         (TypeData.__init__):
1732         (TypeData.get_raw_type):
1733         (TypeMap.__init__):
1734         (InspectorFrontend_h):
1735         (InspectorArray):
1736         (InspectorObject):
1737         (String):
1738         (InspectorBackendDispatcher_h):
1739         (Generator.process_command):
1740         * inspector/InspectorValues.h:
1741
1742 2011-11-28  Andreas Kling  <kling@webkit.org>
1743
1744         CSSStyleDeclaration: Remove ability to have style sheet as parent.
1745         <http://webkit.org/b/73199>
1746
1747         Reviewed by Antti Koivisto.
1748
1749         Refactor so we don't have to support style sheets as parents of style declarations.
1750         The users of this mechanism were mapped attributes and inline styles, which instead
1751         now know how to find the relevant style sheet via their document().
1752
1753         * css/CSSMutableStyleDeclaration.h:
1754         * css/CSSMutableStyleDeclaration.cpp:
1755         (WebCore::CSSElementStyleDeclaration::styleSheet):
1756
1757             Added CSSElementStyleDeclaration::styleSheet(). The default implementation
1758             returns the associated element's document()->elementSheet(). It is virtual
1759             because SVGFontFaceElement needs document()->mappedElementSheet() instead.
1760
1761         * css/CSSStyleDeclaration.h:
1762         (WebCore::CSSStyleDeclaration::parentRule):
1763         (WebCore::CSSStyleDeclaration::setParentRule):
1764         * css/CSSStyleDeclaration.cpp:
1765         (WebCore::CSSStyleDeclaration::CSSStyleDeclaration):
1766
1767             Remove m_parentIsRule and m_parentStyleSheet, leaving only m_parentRule.
1768
1769         * css/CSSStyleDeclaration.cpp:
1770         (WebCore::CSSStyleDeclaration::parentStyleSheet):
1771
1772             Out-of-lined so it can return the CSSElementStyleDeclaration::styleSheet() for
1773             declarations with an associated element.
1774
1775         * css/WebKitCSSKeyframeRule.cpp:
1776         (WebCore::WebKitCSSKeyframeRule::~WebKitCSSKeyframeRule):
1777         (WebCore::WebKitCSSKeyframeRule::setDeclaration):
1778
1779             Use setParentRule() instead of setParentStyleSheet() on the internal
1780             CSSMutableStyleDeclaration in keyframe rules.
1781
1782         * dom/StyledElement.h:
1783
1784             Removed StyledElement::didMoveToNewOwnerDocument() since we no longer need to
1785             manually keep the inline style's parent style sheet pointer up-to-date.
1786
1787         * dom/StyledElement.cpp:
1788         (WebCore::StyledElement::createInlineStyleDecl):
1789         (WebCore::StyledElement::destroyInlineStyleDecl):
1790         (WebCore::StyledElement::attributeChanged):
1791         (WebCore::StyledElement::createMappedDecl):
1792         * html/HTMLTableElement.cpp:
1793         (WebCore::HTMLTableElement::additionalAttributeStyleDecls):
1794         (WebCore::HTMLTableElement::addSharedCellBordersDecl):
1795         (WebCore::HTMLTableElement::addSharedCellPaddingDecl):
1796         (WebCore::HTMLTableElement::addSharedGroupDecls):
1797         * svg/SVGFontFaceElement.cpp:
1798         (WebCore::SVGFontFaceElement::SVGFontFaceElement):
1799
1800             Remove setParentStyleSheet() calls on mapped attributes and inline styles.
1801             They now find the relevant style sheet by following the associated element ptr.
1802
1803         * svg/SVGFontFaceElement.cpp:
1804         (WebCore::FontFaceStyleDeclaration::FontFaceStyleDeclaration):
1805         (WebCore::FontFaceStyleDeclaration::~FontFaceStyleDeclaration):
1806         (WebCore::FontFaceStyleDeclaration::styleSheet):
1807
1808             Subclass CSSElementStyleDeclaration for SVG's font-face elment in order to
1809             override styleSheet(). This is necessary because they operate on the document's
1810             mappedElementSheet() rather than the elementSheet().
1811
1812 2011-11-28  Peter Rybin  <peter.rybin@gmail.com>
1813
1814         Web Inspector: [protocol] generate C++ classes for protocol JSON named types
1815         https://bugs.webkit.org/show_bug.cgi?id=72835
1816
1817         Reviewed by Pavel Feldman.
1818
1819         Extends python generator functionality.
1820         Makes constructor in InspectorObject public.
1821
1822         * inspector/CodeGeneratorInspector.py:
1823         * inspector/InspectorValues.h:
1824
1825 2011-11-28  Simon Hausmann  <simon.hausmann@nokia.com>
1826
1827         [Qt] WTF should be built as separate static library
1828         https://bugs.webkit.org/show_bug.cgi?id=73201
1829
1830         Reviewed by Tor Arne Vestbø.
1831
1832         * Target.pri: Require wtf and don't claim to be building it
1833         with BUILDING_WTF in DEFINES (otherwise we won't link it with
1834         debug-shlib builds).
1835
1836 2011-11-28  Taiju TSUIKI  <tzik@chromium.org>
1837
1838         Fix build error on Chromium/Windows.
1839         https://bugs.webkit.org/show_bug.cgi?id=73200
1840
1841         Unreviewed build fix.
1842
1843         * inspector/InspectorFileSystemAgent.cpp:
1844
1845 2011-11-28  Carlos Garcia Campos  <cgarcia@igalia.com>
1846
1847         Unreviewed. Fix make distcheck issues.
1848
1849         * GNUmakefile.list.am: Add missing files.
1850         * bindings/gobject/GNUmakefile.am: Only build
1851         WebKitDOMHTMLPropertiesCollection when microdate is enabled.
1852
1853 2011-11-28  Luke Macpherson   <macpherson@chromium.org>
1854
1855         Implement CSS border image properties in CSSStyleApplyProperty.
1856         https://bugs.webkit.org/show_bug.cgi?id=72846
1857
1858         Reviewed by Andreas Kling.
1859
1860         Refactoring that implements CSS border image properties in CSSStyleApplyProperty.
1861         Part of the larger refactoring aimed at removing CSSStyleSelector::applyProperty().
1862
1863         Covered by existing tests in fast/css.
1864
1865         * css/CSSStyleApplyProperty.cpp:
1866         Implement property handlers based on existing code.
1867         (WebCore::ApplyPropertyBorderImage::setValue):
1868         (WebCore::ApplyPropertyBorderImage::applyValue):
1869         (WebCore::ApplyPropertyBorderImage::createHandler):
1870         (WebCore::CSSStyleApplyProperty::CSSStyleApplyProperty):
1871         * css/CSSStyleSelector.cpp:
1872         Remove old code.
1873         (WebCore::CSSStyleSelector::applyProperty):
1874
1875 2011-11-28  Luke Macpherson   <macpherson@chromium.org>
1876
1877         Implement CSS hyphenate-limit properties in CSSStyleApplyProperty
1878         https://bugs.webkit.org/show_bug.cgi?id=73107
1879
1880         Reviewed by Andreas Kling.
1881
1882         Covered by existing tests under fast/css (parsing-hyphenate-limit-lines.html, parsing-hyphenate-limit.html, text/hyphenate-limit-lines.html)
1883
1884         * css/CSSStyleApplyProperty.cpp:
1885         (WebCore::ApplyPropertyNumber::setValue):
1886         (WebCore::ApplyPropertyNumber::applyValue):
1887         (WebCore::ApplyPropertyNumber::createHandler):
1888         (WebCore::CSSStyleApplyProperty::CSSStyleApplyProperty):
1889         * css/CSSStyleSelector.cpp:
1890         (WebCore::CSSStyleSelector::applyProperty):
1891
1892 2011-11-28  Taiju TSUIKI  <tzik@chromium.org>
1893
1894         [Inspector][FileSystem]: Capture DOMFileSystem object.
1895         Adding files for FileSystem support to Inspector.
1896         Adding hooks into DOMFileSystem creation and destruction.
1897         https://bugs.webkit.org/show_bug.cgi?id=72456
1898
1899         Reviewed by Pavel Feldman.
1900
1901         Tests should be added in later CL.
1902
1903         * CMakeLists.txt:
1904         * WebCore.gypi:
1905         * WebCore.vcproj/WebCore.vcproj:
1906         * WebCore.xcodeproj/project.pbxproj:
1907         * fileapi/DOMFileSystem.cpp:
1908         (WebCore::DOMFileSystem::create):
1909         * fileapi/DOMFileSystem.h:
1910         * inspector/CodeGeneratorInspector.py:
1911         * inspector/Inspector.json:
1912         * inspector/InspectorController.cpp:
1913         (WebCore::InspectorController::InspectorController):
1914         (WebCore::InspectorController::connectFrontend):
1915         (WebCore::InspectorController::disconnectFrontend):
1916         (WebCore::InspectorController::restoreInspectorStateFromCookie):
1917         * inspector/InspectorController.h:
1918         * inspector/InspectorFileSystemAgent.cpp: Added.
1919         * inspector/InspectorFileSystemAgent.h: Added.
1920         * inspector/InspectorFileSystemInstrumentation.h: Added.
1921         * inspector/InspectorInstrumentation.cpp:
1922         (WebCore::InspectorInstrumentation::didOpenFileSystemImpl):
1923         * inspector/InspectorInstrumentation.h:
1924         * inspector/InstrumentingAgents.h:
1925         (WebCore::InstrumentingAgents::InstrumentingAgents):
1926         (WebCore::InstrumentingAgents::inspectorFileSystemAgent):
1927         (WebCore::InstrumentingAgents::setInspectorFileSystemAgent):
1928         * inspector/WorkerInspectorController.cpp:
1929         (WebCore::WorkerInspectorController::connectFrontend):
1930         * inspector/front-end/inspector.js:
1931
1932 2011-11-28  Luke Macpherson   <macpherson@chromium.org>
1933
1934         Implement CSSPropertyWebkitFlowInto and CSSPropertyWebkitFlowFrom in CSSStyleApplyProperty.
1935         https://bugs.webkit.org/show_bug.cgi?id=73110
1936
1937         Reviewed by Andreas Kling.
1938
1939         Covered by existing tests under fast/regions.
1940
1941         * css/CSSStyleApplyProperty.cpp:
1942         (WebCore::CSSStyleApplyProperty::CSSStyleApplyProperty):
1943         * css/CSSStyleSelector.cpp:
1944         (WebCore::CSSStyleSelector::applyProperty):
1945
1946 2011-11-27  Luke Macpherson   <macpherson@chromium.org>
1947
1948         Implement vertical-align property in CSSStyleApplyProperty.
1949         https://bugs.webkit.org/show_bug.cgi?id=72926
1950
1951         Reviewed by Andreas Kling.
1952
1953         Part of the ongoing refactoring of CSSStyleSelector::applyProperty.
1954
1955         Covered by several tests under fast/css.
1956
1957         * css/CSSPrimitiveValue.h:
1958         (WebCore::CSSPrimitiveValue::isPercent):
1959         * css/CSSStyleApplyProperty.cpp:
1960         (WebCore::ApplyPropertyVerticalAlign::applyValue):
1961         (WebCore::ApplyPropertyVerticalAlign::createHandler):
1962         (WebCore::CSSStyleApplyProperty::CSSStyleApplyProperty):
1963         * css/CSSStyleSelector.cpp:
1964         (WebCore::CSSStyleSelector::applyProperty):
1965         * rendering/style/RenderStyle.h:
1966         (WebCore::InheritedFlags::setVerticalAlignLength):
1967         Calling setVerticalAlignLength now automatically sets verticalAlign to LENGTH.
1968
1969 2011-11-27  Luke Macpherson   <macpherson@chromium.org>
1970
1971         Implement CSSPropertyTextAlign in CSSStyleApplyProperty.
1972         https://bugs.webkit.org/show_bug.cgi?id=73102
1973
1974         Reviewed by Andreas Kling.
1975
1976         Covered by fast/css/text-align*.html
1977
1978         * css/CSSStyleApplyProperty.cpp:
1979         (WebCore::ApplyPropertyTextAlign::applyValue):
1980         (WebCore::ApplyPropertyTextAlign::createHandler):
1981         (WebCore::CSSStyleApplyProperty::CSSStyleApplyProperty):
1982         * css/CSSStyleSelector.cpp:
1983         (WebCore::CSSStyleSelector::applyProperty):
1984
1985 2011-11-27  Andreas Kling  <kling@webkit.org>
1986
1987         CSSStyleRule: Pack m_sourceLine with CSSRule bits.
1988         <http://webkit.org/b/73168>
1989
1990         Reviewed by Antti Koivisto.
1991
1992         Make CSSStyleRule::m_sourceLine a 27-bit integer and pack it with the rest
1993         of the members in CSSRule. This shrinks CSSStyleRule by one CPU word
1994         and reduces memory consumption by 81 kB on the GMail inbox (on 64-bit.)
1995
1996         * css/CSSRule.h:
1997         (WebCore::CSSRule::CSSRule):
1998         * css/CSSStyleRule.cpp:
1999         (WebCore::CSSStyleRule::CSSStyleRule):
2000         * css/CSSStyleRule.h:
2001
2002 2011-11-27  Mark Rowe  <mrowe@apple.com>
2003
2004         <http://webkit.org/b/72665> Switch to a more modern approach to retrieving the OS marketing version
2005
2006         Reviewed by Dan Bernstein.
2007
2008         * WebCore.exp.in: Expose the necessary symbol.
2009         * platform/mac/WebCoreSystemInterface.h: Ditto.
2010         * platform/mac/WebCoreSystemInterface.mm: Ditto.
2011
2012 2011-11-27  Anna Cavender  <annacc@chromium.org>
2013
2014         Move readyState from TextTrack to HTMLTrackElement
2015         https://bugs.webkit.org/show_bug.cgi?id=72553
2016
2017         Fix for r101057 after it was rolled out in r101088
2018
2019         Reviewed by Eric Carlson.
2020
2021         * html/HTMLTrackElement.cpp:
2022         (WebCore::HTMLTrackElement::HTMLTrackElement):
2023             Set initial readyState to NONE.
2024         (WebCore::HTMLTrackElement::didCompleteLoad):
2025             Set readyState based on load completed status.
2026         (WebCore::HTMLTrackElement::setReadyState):
2027             This replaces textTrackReadyStateChanged() because only LoadableTextTrack
2028             needs to notify HTMLTrackElement of readyState changes (i.e.
2029             textTrackReadyStateChanged() is no longer required of TextTrackClient).
2030         * html/HTMLTrackElement.h:
2031             ReadyState enum and m_readyState member variable moved from TextTrack.
2032         (WebCore::HTMLTrackElement::readyState):
2033             New: readyState() getter.
2034         * html/HTMLTrackElement.idl:
2035             Add readyState attribute and associated constants.
2036
2037         * html/LoadableTextTrack.cpp:
2038         (WebCore::LoadableTextTrack::loadTimerFired): Set readyState on HTMLTrackElement.
2039         (WebCore::LoadableTextTrack::cueLoadingStarted): Ditto.
2040         (WebCore::LoadableTextTrack::cueLoadingCompleted): Move code to set readyState
2041             to HTMLTrackElement (it can set it based on loading status).
2042
2043         * html/TextTrack.cpp: Remove readyState from TextTrack.
2044         (WebCore::TextTrack::TextTrack): Ditto.
2045         * html/TextTrack.h: Ditto.
2046         * html/TextTrack.idl: Ditto.
2047
2048 2011-11-27  Anna Cavender  <annacc@chromium.org>
2049
2050         Don't allow attribute changes on <track> if feature is not enabled.
2051         https://bugs.webkit.org/show_bug.cgi?id=73046
2052
2053         Reviewed by Eric Carlson.
2054
2055         No new tests. This fixes a problem when --enable-video-track is not used,
2056         but the tests use this flag.
2057
2058         * html/HTMLTrackElement.cpp:
2059         (WebCore::HTMLTrackElement::attributeChanged):
2060
2061 2011-11-27  Andreas Kling  <kling@webkit.org>
2062
2063         CSSMutableStyleDeclaration: setCssText() mostly duplicates parseDeclaration().
2064         <http://webkit.org/b/73171>
2065
2066         Reviewed by Antti Koivisto.
2067
2068         Let setCssText() call parseDeclaration() instead of duplicating the functionality.
2069
2070         * css/CSSMutableStyleDeclaration.cpp:
2071         (WebCore::CSSMutableStyleDeclaration::setCssText):
2072
2073 2011-11-27  Andreas Kling  <kling@webkit.org>
2074
2075         CSS/XSLStyleSheet: checkLoaded() needn't be virtual.
2076         <http://webkit.org/b/73169>
2077
2078         Reviewed by Antti Koivisto.
2079
2080         Devirtualize checkLoaded() in CSSStyleSheet and XSLStyleSheet as they
2081         are not overriding anything, nor are they ever overridden.
2082
2083         * css/CSSStyleSheet.h:
2084         * xml/XSLStyleSheet.h:
2085
2086 2011-11-27  Andreas Kling  <kling@webkit.org>
2087
2088         Add assertions that CSSMappedAttributeDeclarations aren't using strict parsing.
2089         <http://webkit.org/b/73167>
2090
2091         Reviewed by Antti Koivisto.
2092
2093         * dom/StyledElement.cpp:
2094         (WebCore::StyledElement::createMappedDecl):
2095         * html/HTMLTableElement.cpp:
2096         (WebCore::HTMLTableElement::additionalAttributeStyleDecls):
2097         (WebCore::HTMLTableElement::addSharedCellBordersDecl):
2098         (WebCore::HTMLTableElement::addSharedCellPaddingDecl):
2099         (WebCore::HTMLTableElement::addSharedGroupDecls):
2100
2101 2011-11-27  Andreas Kling  <kling@webkit.org>
2102
2103         CSSStyleSheet: Removed unused create() overload.
2104         <http://webkit.org/b/73170>
2105
2106         Reviewed by Antonio Gomes.
2107
2108         Nobody was using CSSStyleSheet::create(ownerNode, originalURL, finalURL)
2109         so remove it.
2110
2111         * css/CSSStyleSheet.h:
2112         (WebCore::CSSStyleSheet::create):
2113
2114 2011-11-27  Robert Hogan  <robert@webkit.org>
2115
2116         CSS 2.1 failure: border-conflict-element-*
2117         https://bugs.webkit.org/show_bug.cgi?id=71244
2118
2119         Reviewed by Julien Chaffraix.
2120         
2121         From http://www.w3.org/TR/CSS21/tables.html#border-conflict-resolution :
2122           "When two adjacent cells have the same border-width and the same border-style in a 
2123           'border-collapse: collapse' table, then the color of the border from the leftmost cell wins
2124           (if the table's 'direction' is 'ltr'; right, if it is 'rtl') and the color of the border
2125           from the topmost cell wins."
2126
2127         So WebCore::compareBorders needs to account for the position of the cell when 
2128         deciding which border wins the comparison. This will ensure that the winning border is 
2129         sorted to the appropriate position in the sorted list of borders for painting.
2130
2131         When conflicting collapsed borders are in the same cell, the following order of
2132         precedence is used (where 4 has highest precedence):
2133
2134                            __3__
2135                           |     |
2136                         4 |     | 1
2137                           |_____|
2138                              2
2139
2140         This fixes the following failing tests from the border-conflict-element-* set
2141         in the CSS 2.1 test suite:
2142           border-conflict-element-001d.htm
2143           border-conflict-element-0037.htm
2144
2145         One test in the suite is known to be wrong, so a corrected version has been landed outside the 
2146         css2.1 folder:
2147           border-conflict-element-002.htm
2148
2149         This change entails rebaselining quite a few tests, see the LayoutTests ChangeLog for a full
2150         explanation of the rebaselines.
2151
2152         * rendering/RenderTableCell.cpp:
2153         (WebCore::compareBorders): Compare the cells' position from the left (in 'ltr') and right (in 'rtl')
2154                                    of the table and the cells' position from the top of the table when nothing
2155                                    else in the style, width, or grouping of the borders determines precedence.
2156                                    If the conflicting borders are in the same cell, apply the same logic to the position of the borders.
2157         (WebCore::RenderTableCell::collapsedStartBorder): Pass the cell's position and its table's direction to CollapsedBorderValue
2158         (WebCore::RenderTableCell::collapsedEndBorder): ditto
2159         (WebCore::RenderTableCell::collapsedBeforeBorder): ditto
2160         (WebCore::RenderTableCell::collapsedAfterBorder): ditto
2161         * rendering/style/CollapsedBorderValue.h:
2162         (WebCore::CollapsedBorderValue::CollapsedBorderValue): Learn the position of the border's cell and the direction of its table
2163         (WebCore::CollapsedBorderValue::columnOffset): the cell's offset from the top of the table
2164         (WebCore::CollapsedBorderValue::rowOffset): the cell's offset from the start of the table
2165         (WebCore::CollapsedBorderValue::edge): which edge of the cell the border is on
2166         (WebCore::CollapsedBorderValue::operator==): cells with the same position in the table are equal
2167
2168 2011-11-26  Pavel Feldman  <pfeldman@google.com>
2169
2170         Web Inspector: remove disconnectFromBackend from the protocol.
2171         https://bugs.webkit.org/show_bug.cgi?id=73127
2172
2173         Reviewed by Yury Semikhatsky.
2174
2175         * inspector/Inspector.json:
2176         * inspector/InspectorAgent.cpp:
2177         (WebCore::InspectorAgent::inspectedPageDestroyed):
2178         * inspector/InspectorClient.h:
2179         * inspector/InspectorController.cpp:
2180         (WebCore::InspectorController::close):
2181         * inspector/InspectorFrontendClient.h:
2182         * inspector/InspectorFrontendHost.cpp:
2183         * inspector/InspectorFrontendHost.h:
2184         * inspector/InspectorFrontendHost.idl:
2185         * inspector/front-end/InspectorFrontendHostStub.js:
2186         * inspector/front-end/inspector.js:
2187         (WebInspector.disconnectFromWorker):
2188         * loader/EmptyClients.h:
2189         (WebCore::EmptyInspectorClient::closeInspectorFrontend):
2190
2191 2011-11-26  Kevin Ollivier  <kevino@theolliviers.com>
2192
2193         [wx] Unreviewed build fix. Change the order of wx header includes
2194         to avoid a windows.h inclusion order issue, and make sure a stub
2195         method returns a value.
2196
2197         * platform/wx/FileSystemWx.cpp:
2198         (WebCore::openFile):
2199
2200 2011-11-26  Alejandro G. Castro  <alex@igalia.com>
2201
2202         Fix compilation after r101157.
2203
2204         Reviewed by Martin Robinson.
2205
2206         * bindings/scripts/preprocessor.pm:
2207         (applyPreprocessor): In case we have a string with
2208         double-quotations (") we replace it with the empty string.
2209
2210 2011-11-26  Igor Oliveira  <igor.oliveira@openbossa.org>
2211
2212         [TexMapper][WK2][Qt] Simple opacity animations are not working
2213         https://bugs.webkit.org/show_bug.cgi?id=73157
2214
2215         LayerTreeHostQt needs to know what nodes in the TextureMapper are visible, to associate
2216         a tile to it. It is done using TextureMapperNode::collectVisibleContentsRects.
2217
2218         However TextureMapperNode::collectVisibleContentsRects has an optimization to check if
2219         the current tile has opacity greater than 0.01, otherwise it will not create a tile for
2220         the current node.
2221
2222         For opacity animations from 0 to 1, it is a problem because the tile is never created
2223         and the animation never happens.
2224
2225         This patch fixes opacity animations.
2226
2227         Reviewed by Noam Rosenthal.
2228
2229         * platform/graphics/texmap/TextureMapperNode.cpp:
2230         (WebCore::TextureMapperNode::countDescendantsWithContent):
2231         (WebCore::TextureMapperNode::collectVisibleContentsRects):
2232
2233 2011-11-26  Sheriff Bot  <webkit.review.bot@gmail.com>
2234
2235         Unreviewed, rolling out r101193.
2236         http://trac.webkit.org/changeset/101193
2237         https://bugs.webkit.org/show_bug.cgi?id=73158
2238
2239         Breaks Windows and Qt minimal. (Requested by pfeldman on
2240         #webkit).
2241
2242         * inspector/Inspector.json:
2243         * inspector/InspectorAgent.cpp:
2244         (WebCore::InspectorAgent::inspectedPageDestroyed):
2245         * inspector/InspectorClient.h:
2246         * inspector/InspectorController.cpp:
2247         (WebCore::InspectorController::close):
2248         * inspector/InspectorFrontendClient.h:
2249         * inspector/InspectorFrontendHost.cpp:
2250         (WebCore::InspectorFrontendHost::disconnectFromBackend):
2251         * inspector/InspectorFrontendHost.h:
2252         * inspector/InspectorFrontendHost.idl:
2253         * inspector/front-end/InspectorFrontendHostStub.js:
2254         (.WebInspector.InspectorFrontendHostStub.prototype.disconnectFromBackend):
2255         * inspector/front-end/inspector.js:
2256         (WebInspector.disconnectFromBackend):
2257         * loader/EmptyClients.h:
2258
2259 2011-11-26  Pavel Feldman  <pfeldman@google.com>
2260
2261         Web Inspector: remove disconnectFromBackend from the protocol.
2262         https://bugs.webkit.org/show_bug.cgi?id=73127
2263
2264         Reviewed by Yury Semikhatsky.
2265
2266         * inspector/Inspector.json:
2267         * inspector/InspectorAgent.cpp:
2268         (WebCore::InspectorAgent::inspectedPageDestroyed):
2269         * inspector/InspectorClient.h:
2270         * inspector/InspectorController.cpp:
2271         (WebCore::InspectorController::close):
2272         * inspector/InspectorFrontendClient.h:
2273         * inspector/InspectorFrontendHost.cpp:
2274         * inspector/InspectorFrontendHost.h:
2275         * inspector/InspectorFrontendHost.idl:
2276         * inspector/front-end/InspectorFrontendHostStub.js:
2277         * inspector/front-end/inspector.js:
2278         (WebInspector.disconnectFromWorker):
2279         * loader/EmptyClients.h:
2280         (WebCore::EmptyInspectorClient::closeInspectorFrontend):
2281
2282 2011-11-26  Timothy Hatcher  <timothy@apple.com>
2283
2284         Fix a bug in TreeOutline which would cause parent elements to show up as expanded and empty
2285         when removed and added back to the tree.
2286
2287         https://bugs.webkit.org/show_bug.cgi?id=73155
2288
2289         Reviewed by Pavel Feldman.
2290
2291         * inspector/front-end/treeoutline.js:
2292         (TreeElement.prototype.collapse): Set _treeElementsExpandedState to false instead of true.
2293         Only TreeElement.prototype.expand should set it to true, which it does.
2294
2295 2011-11-26  Martin Robinson  <mrobinson@igalia.com>
2296
2297         [GTK] Fix some warnings in WebCore GTK+
2298         https://bugs.webkit.org/show_bug.cgi?id=73137
2299
2300         Reviewed by Philippe Normand.
2301
2302         No new tests. This patch just fixes compilation warnings.
2303
2304         * platform/gtk/CursorGtk.cpp:
2305         (WebCore::createNamedCursor): Remove unused variable.
2306         * platform/gtk/RenderThemeGtk3.cpp:
2307         (WebCore::RenderThemeGtk::paintSliderTrack): ASSERT_UNUSED instead of ASSERT.
2308         * platform/gtk/SharedTimerGtk.cpp: Ditto.
2309         (WebCore::stopSharedTimer):
2310
2311 2011-11-25  Eric Carlson  <eric.carlson@apple.com>
2312
2313         Implement addCue and removeCue in TextTrack
2314         https://bugs.webkit.org/show_bug.cgi?id=72554
2315
2316         Reviewed by Darin Adler.
2317
2318         Test: media/track/track-add-remove-cue.html
2319
2320         * html/HTMLTrackElement.cpp:
2321         (WebCore::HTMLTrackElement::ensureTrack): Go ahead and allocate a Track even if the feature 
2322             is disabled, it just won't load anything.
2323         (WebCore::HTMLTrackElement::scheduleLoad): Early return if the featue is disabled.
2324         (WebCore::HTMLTrackElement::canLoadUrl): Ditto.
2325
2326         * html/LoadableTextTrack.cpp:
2327         (WebCore::LoadableTextTrack::newCuesAvailable): Add new cues one at a time because 
2328             cues->add(Vector<TextTrackCue*>&) is gone.
2329
2330         * html/TextTrack.cpp:
2331         (WebCore::TextTrack::addCue): Implement.
2332         (WebCore::TextTrack::removeCue): Ditto.
2333         * html/TextTrack.h:
2334
2335         (WebCore::TextTrackCue::TextTrackCue): Initialize every member variable.
2336         (WebCore::TextTrackCue::track): m_track is now a RefPtr.
2337         (WebCore::TextTrackCue::setTrack): Ditto.
2338         * html/TextTrackCue.h:
2339
2340         * html/TextTrackCueList.cpp:
2341         (WebCore::TextTrackCueList::add): Don't ignore out of order cues, the spec text is not 
2342             a conformance requirement. Return bool to indicate success or failure.
2343         (WebCore::TextTrackCueList::remove): Return bool to indicate success or failure.
2344         * html/TextTrackCueList.h:
2345
2346         * loader/TextTrackLoader.cpp:
2347         (WebCore::TextTrackLoader::notifyFinished): Don't change m_state once it is set to Failed.
2348
2349 2011-11-25  Kentaro Hara  <haraken@chromium.org>
2350
2351         Refactoring CodeGenerator*.pm for bug 72138
2352         https://bugs.webkit.org/show_bug.cgi?id=73115
2353
2354         Reviewed by Adam Barth.
2355
2356         Tests: bindings/scripts/test/TestObj.idl
2357
2358         * bindings/scripts/CodeGeneratorGObject.pm: Added "1;" at the end since this perl script is loaded as a package.
2359         * bindings/scripts/CodeGeneratorV8.pm: Ditto. Removed unnecessary variable names from method declarations in order to supress style check errors when a new run-bindings-tests IDL is added.
2360         (GenerateHeaderCustomCall):
2361         * bindings/scripts/test/V8/V8TestObj.h: Updated a run-bindings-tests result.
2362
2363 2011-11-25  Kentaro Hara  <haraken@chromium.org>
2364
2365         Implement the WebGLContextEvent constructor
2366         https://bugs.webkit.org/show_bug.cgi?id=72856
2367
2368         Reviewed by Adam Barth.
2369
2370         This patch makes WebGLContextEvent constructable.
2371         The spec: http://www.khronos.org/registry/webgl/specs/latest/#5.14
2372
2373         Test: fast/events/constructors/webgl-context-event-constructor.html
2374
2375         * html/canvas/WebGLContextEvent.cpp: Added an implementation of the WebGLContextEvent constructor.
2376         (WebCore::WebGLContextEventInit::WebGLContextEventInit):
2377         (WebCore::WebGLContextEvent::WebGLContextEvent):
2378         * html/canvas/WebGLContextEvent.h: Added a definition of WebGLContextEventInit.
2379         (WebCore::WebGLContextEvent::create):
2380         * html/canvas/WebGLContextEvent.idl: Added [ConstructorTemplate=Event] IDL.
2381
2382 2011-11-25  Jeff Timanus  <twiz@chromium.org>
2383
2384         [Chromium] The DrawingBuffer::bind method was incorrectly resetting the
2385         GL viewport parameters. This was unnecessary, and resulted in the corruption
2386         of the WebGL context's state.
2387         https://bugs.webkit.org/show_bug.cgi?id=73091
2388
2389         Reviewed by Stephen White.
2390
2391         Tests: fast/canvas/webgl/webgl-viewport-parameters-preserved.html
2392
2393         * platform/graphics/gpu/DrawingBuffer.cpp:
2394         (WebCore::DrawingBuffer::bind):
2395
2396 2011-11-25  Ryosuke Niwa  <rniwa@webkit.org>
2397
2398         Crash in BidiRunList<Run>::replaceRunWithRuns with an empty bdi element
2399         https://bugs.webkit.org/show_bug.cgi?id=73116
2400
2401         Reviewed by Eric Seidel.
2402
2403         The assertion failure was caused because isolatedResolver is initialized with
2404         null start object due to the isolated run being empty.
2405
2406         Fixed the failure by skipping empty isolated runs.
2407
2408         Test: fast/text/empty-bdi-crash.html
2409
2410         * rendering/RenderBlockLineLayout.cpp:
2411         (WebCore::constructBidiRuns):
2412
2413 2011-11-25  Antti Koivisto  <antti@apple.com>
2414
2415         StyleGeneratedImage should ref CSSImageGeneratorValue
2416         https://bugs.webkit.org/show_bug.cgi?id=73074
2417
2418         Reviewed by Andreas Kling and Nikolas Zimmermann.
2419         
2420         RenderStyle owns a bunch of StyleImage objects. However StyleGeneratedImage does not ref the
2421         CSSImageGeneratorValue it holds so we currently rely on the stylesheet to keep the CSSImageGeneratorValues
2422         alive as long as RenderStyle stays alive. While this works (RenderStyles are thrown away if stylesheets
2423         change) it is not particularly robust or nice.
2424
2425         - Use RefPtr<CSSImageGeneratorValue> in StyleGeneratedImage
2426         - Remove the RefPtr<StyleGeneratedImage> from CSSImageGeneratorValue.
2427           There is no good reason to cache StyleGeneratedImage as it is a small and
2428           uncommon object. With that the whole back-reference becomes unnecessary.
2429         - Switch more places to use (Pass)RefPtr<StyleImage> for consistency.
2430
2431         * css/CSSImageGeneratorValue.cpp:
2432         (WebCore::CSSImageGeneratorValue::CSSImageGeneratorValue):
2433         * css/CSSImageGeneratorValue.h:
2434         * css/CSSStyleApplyProperty.cpp:
2435         * css/CSSStyleSelector.cpp:
2436         (WebCore::CSSStyleSelector::applyProperty):
2437         (WebCore::CSSStyleSelector::styleImage):
2438         (WebCore::CSSStyleSelector::cachedOrPendingFromValue):
2439         (WebCore::CSSStyleSelector::generatedOrPendingFromValue):
2440         (WebCore::CSSStyleSelector::loadPendingImage):
2441         (WebCore::CSSStyleSelector::loadPendingImages):
2442         * css/CSSStyleSelector.h:
2443         * rendering/style/FillLayer.h:
2444         (WebCore::FillLayer::setImage):
2445         * rendering/style/NinePieceImage.h:
2446         (WebCore::NinePieceImage::NinePieceImage):
2447         * rendering/style/StyleGeneratedImage.cpp:
2448         (WebCore::StyleGeneratedImage::StyleGeneratedImage):
2449         (WebCore::StyleGeneratedImage::cssValue):
2450         (WebCore::StyleGeneratedImage::imageSize):
2451         (WebCore::StyleGeneratedImage::addClient):
2452         (WebCore::StyleGeneratedImage::removeClient):
2453         (WebCore::StyleGeneratedImage::image):
2454         * rendering/style/StyleGeneratedImage.h:
2455         (WebCore::StyleGeneratedImage::create):
2456         (WebCore::StyleGeneratedImage::data):
2457
2458 2011-11-25  Andreas Kling  <kling@webkit.org>
2459
2460         Remove redundant setStrictParsing(false) calls on CSSMappedAttributeDeclarations.
2461         <http://webkit.org/b/73134>
2462
2463         Reviewed by Antti Koivisto.
2464
2465         CSSMappedAttributeDeclarations always use non-strict parsing since they use
2466         the argument-less CSSMutableStyleDeclaration constructor.
2467
2468         * dom/StyledElement.cpp:
2469         (WebCore::StyledElement::createMappedDecl):
2470         * html/HTMLTableElement.cpp:
2471         (WebCore::HTMLTableElement::additionalAttributeStyleDecls):
2472         (WebCore::HTMLTableElement::addSharedCellBordersDecl):
2473         (WebCore::HTMLTableElement::addSharedCellPaddingDecl):
2474         (WebCore::HTMLTableElement::addSharedGroupDecls):
2475
2476 2011-11-25  Andreas Kling  <kling@webkit.org>
2477
2478         Factor element pointer out of CSSMutableStyleDeclaration.
2479         <http://webkit.org/b/73121>
2480
2481         Reviewed by Antti Koivisto.
2482
2483         Move the StyledElement pointer out of CSSMutableStyleDeclaration and into a subclass
2484         for the cases where it's needed. This reduces the size of vanilla style declarations
2485         by one CPU word (4 or 8 bytes, depending on architecture.)
2486
2487         * css/CSSMutableStyleDeclaration.h:
2488         (WebCore::CSSElementStyleDeclaration::element):
2489         (WebCore::CSSElementStyleDeclaration::setElement):
2490         (WebCore::CSSElementStyleDeclaration::CSSElementStyleDeclaration):
2491         (WebCore::CSSElementStyleDeclaration::~CSSElementStyleDeclaration):
2492
2493             Added CSSElementStyleDeclaration, a common parent class for inline styles
2494             and mapped attributes. It extends CSSMutableStyleDeclaration by adding a backpointer
2495             to the StyledElement that owns it.
2496
2497         * GNUmakefile.list.am:
2498         * Target.pri:
2499         * WebCore.gypi:
2500         * WebCore.vcproj/WebCore.vcproj:
2501         * WebCore.xcodeproj/project.pbxproj:
2502         * css/CSSInlineStyleDeclaration.h: Added.
2503         (WebCore::CSSInlineStyleDeclaration::~CSSInlineStyleDeclaration):
2504         (WebCore::CSSInlineStyleDeclaration::create):
2505         (WebCore::CSSInlineStyleDeclaration::CSSInlineStyleDeclaration):
2506
2507             Added CSSInlineStyleDeclaration.
2508
2509         * bindings/js/JSDOMBinding.h:
2510         (WebCore::root):
2511         * css/CSSMutableStyleDeclaration.cpp:
2512         (WebCore::CSSMutableStyleDeclaration::setNeedsStyleRecalc):
2513         * css/CSSStyleRule.cpp:
2514         (WebCore::CSSStyleRule::setSelectorText):
2515
2516             Only follow the associated element on CSSElementStyleDeclarations.
2517
2518         * css/CSSMutableStyleDeclaration.cpp:
2519         (WebCore::CSSMutableStyleDeclaration::CSSMutableStyleDeclaration):
2520         (WebCore::CSSMutableStyleDeclaration::operator=):
2521
2522             Remove comment about m_element since the field was moved to a subclass.
2523
2524         * css/CSSStyleDeclaration.cpp:
2525         (WebCore::CSSStyleDeclaration::CSSStyleDeclaration):
2526         * css/CSSStyleDeclaration.h:
2527         (WebCore::CSSStyleDeclaration::isElementStyleDeclaration):
2528         (WebCore::CSSStyleDeclaration::isInlineStyleDeclaration):
2529
2530             We no longer need to track whether a style declaration is mutable or not,
2531             so the constructors are slightly simplified.
2532             Added two bits (isElementStyleDeclaration and isInlineStyleDeclaration) for
2533             runtime type checking. These are protected and set by the CSSElementStyleDeclaration
2534             constructor.
2535
2536         * dom/CSSMappedAttributeDeclaration.h:
2537         (WebCore::CSSMappedAttributeDeclaration::create):
2538         (WebCore::CSSMappedAttributeDeclaration::CSSMappedAttributeDeclaration):
2539
2540             Remove pointless CSSRule* argument to constructor since we always passed 0.
2541
2542         * dom/StyledElement.h:
2543         (WebCore::StyledElement::inlineStyleDecl):
2544         * dom/StyledElement.cpp:
2545         (WebCore::StyledElement::createInlineStyleDecl):
2546         (WebCore::StyledElement::getInlineStyleDecl):
2547         (WebCore::StyledElement::addSubresourceAttributeURLs):
2548
2549             Make the inline style on StyledElement a CSSInlineStyleDeclaration.
2550
2551         * inspector/InspectorCSSAgent.cpp:
2552         (WebCore::InspectorCSSAgent::inlineStyleElement):
2553
2554             Slightly simplified by having CSSInlineStyleDeclaration.
2555
2556 2011-11-25  Pavel Feldman  <pfeldman@google.com>
2557
2558         Web Inspector: unflake timeline-network tests
2559         https://bugs.webkit.org/show_bug.cgi?id=73123
2560
2561         We should capture stack only when it makes sense. Otherwise loading from cache
2562         results in different data sets (stacks) than regular load.
2563
2564         Reviewed by Yury Semikhatsky.
2565
2566         * inspector/InspectorTimelineAgent.cpp:
2567         (WebCore::InspectorTimelineAgent::willCallFunction):
2568         (WebCore::InspectorTimelineAgent::willDispatchEvent):
2569         (WebCore::InspectorTimelineAgent::willLayout):
2570         (WebCore::InspectorTimelineAgent::willRecalculateStyle):
2571         (WebCore::InspectorTimelineAgent::willPaint):
2572         (WebCore::InspectorTimelineAgent::willWriteHTML):
2573         (WebCore::InspectorTimelineAgent::didInstallTimer):
2574         (WebCore::InspectorTimelineAgent::didRemoveTimer):
2575         (WebCore::InspectorTimelineAgent::willFireTimer):
2576         (WebCore::InspectorTimelineAgent::willChangeXHRReadyState):
2577         (WebCore::InspectorTimelineAgent::willLoadXHR):
2578         (WebCore::InspectorTimelineAgent::willEvaluateScript):
2579         (WebCore::InspectorTimelineAgent::didScheduleResourceRequest):
2580         (WebCore::InspectorTimelineAgent::willReceiveResourceData):
2581         (WebCore::InspectorTimelineAgent::willReceiveResourceResponse):
2582         (WebCore::InspectorTimelineAgent::didFinishLoadingResource):
2583         (WebCore::InspectorTimelineAgent::didTimeStamp):
2584         (WebCore::InspectorTimelineAgent::didMarkDOMContentEvent):
2585         (WebCore::InspectorTimelineAgent::didMarkLoadEvent):
2586         (WebCore::InspectorTimelineAgent::didRegisterAnimationFrameCallback):
2587         (WebCore::InspectorTimelineAgent::didCancelAnimationFrameCallback):
2588         (WebCore::InspectorTimelineAgent::willFireAnimationFrameEvent):
2589         (WebCore::InspectorTimelineAgent::appendRecord):
2590         (WebCore::InspectorTimelineAgent::pushCurrentRecord):
2591         * inspector/InspectorTimelineAgent.h:
2592         * inspector/TimelineRecordFactory.cpp:
2593         (WebCore::TimelineRecordFactory::createGenericRecord):
2594
2595 2011-11-25  Yury Semikhatsky  <yurys@chromium.org>
2596
2597         [Chromium] Web Inspector: get rid of WebDevToolsFrontendClient::sendFrontendLoaded method
2598         https://bugs.webkit.org/show_bug.cgi?id=73126
2599
2600         Notify embedder that front-end is loadded only when all dispatchers, panels and models
2601         have been created so that it could dispatch messages synchronously in the loaded handler.
2602
2603         Reviewed by Pavel Feldman.
2604
2605         * inspector/front-end/inspector.js:
2606
2607 2011-11-25  Yury Semikhatsky  <yurys@chromium.org>
2608
2609         Web Inspector: don't send Console.messagesCleared on front-end connection if console agent is not enabled
2610         https://bugs.webkit.org/show_bug.cgi?id=73122
2611
2612         Console agent should stay silent if it is not enabled.
2613
2614         Reviewed by Pavel Feldman.
2615
2616         * inspector/InspectorConsoleAgent.cpp:
2617         (WebCore::InspectorConsoleAgent::clearMessages):
2618         (WebCore::InspectorConsoleAgent::addConsoleMessage):
2619
2620 2011-11-25  Wei Charles  <charles.wei@torchmobile.com.cn>
2621
2622         Upstream the QNX/RIM specific HistoryItemViewState
2623         https://bugs.webkit.org/show_bug.cgi?id=73114
2624
2625         Reviewed by Daniel Bates.
2626
2627         This patch is to upstream RIM/QNX specific HistoryItemViewState extension
2628         to store some extra view state.
2629
2630         No new tests. It's not built yet.
2631
2632         * history/blackberry: Added.
2633         * history/blackberry/HistoryItemViewState.h: Added.
2634         (WebCore::HistoryItemViewState::HistoryItemViewState):
2635
2636 2011-11-25  Vsevolod Vlasov  <vsevik@chromium.org>
2637
2638         Web Inspector: Split scripts panel top status bar into debug toolbar and editor toolbar.
2639         https://bugs.webkit.org/show_bug.cgi?id=73087
2640
2641         Reviewed by Pavel Feldman.
2642
2643         * inspector/front-end/ScriptsPanel.js:
2644         (WebInspector.ScriptsPanel.prototype._reset):
2645         (WebInspector.ScriptsPanel.prototype._createEditorToolbar):
2646         (WebInspector.ScriptsPanel.prototype._createDebugToolbar):
2647         (WebInspector.ScriptsPanel.prototype._createButtonAndRegisterShortcuts):
2648         * inspector/front-end/scriptsPanel.css:
2649         (#scripts-debug-toolbar):
2650         (#scripts-editor-toolbar):
2651         (#scripts-debug-sidebar-resizer-widget):
2652         (.script-view):
2653
2654 2011-11-25  Leo Yang  <leo.yang@torchmobile.com.cn>
2655
2656         Upstream BlackBerry porting of platform/text
2657         https://bugs.webkit.org/show_bug.cgi?id=73117
2658
2659         Reviewed by Daniel Bates.
2660
2661         Initial upstream, can't be built yet, no test cases.
2662
2663         * platform/text/blackberry/StringBlackBerry.cpp: Added.
2664         (WTF::String::String):
2665         (WTF::String::operator WebString):
2666         * platform/text/blackberry/TextBreakIteratorInternalICUBlackBerry.cpp: Added.
2667         (WebCore::currentSearchLocaleID):
2668         (WebCore::currentTextBreakLocaleID):
2669
2670 2011-11-25  Kentaro Hara  <haraken@chromium.org>
2671
2672         Remove WebCore.gyp/scripts/rule_binding.py
2673         https://bugs.webkit.org/show_bug.cgi?id=73109
2674
2675         Reviewed by Adam Barth.
2676
2677         rule_binding.py is used by WebCore.gyp only. rule_binding.py is just a wrapper
2678         of generate-bindings.pl and thus we can remove it.
2679
2680         No new tests. No change in behavior.
2681
2682         * WebCore.gyp/WebCore.gyp: Replaces rule_binding.py with generate-bindings.pl.
2683         * WebCore.gyp/scripts/rule_binding.py: Removed.
2684         * bindings/scripts/preprocessor.pm: When '"ENABLE_SOMETHING=1" "ENABLE_OTHERS=0"' is passed as a define macro, the string is passed to our perl scripts without the double-quotations (") omitted. We need to omit the double quatations here.
2685         (applyPreprocessor):
2686
2687 2011-11-24  Yury Semikhatsky  <yurys@chromium.org>
2688
2689         [Chromium] Web Inspector: remove legacy debugger support
2690         https://bugs.webkit.org/show_bug.cgi?id=73081
2691
2692         Removed classed providing access to V8 debugging protocol. Clients should
2693         use Web Inspector protocol instead.
2694
2695         Reviewed by Pavel Feldman.
2696
2697         * bindings/v8/PageScriptDebugServer.cpp:
2698         (WebCore::PageScriptDebugServer::PageScriptDebugServer):
2699         (WebCore::PageScriptDebugServer::addListener):
2700         * bindings/v8/PageScriptDebugServer.h:
2701
2702 2011-11-24  Pavel Feldman  <pfeldman@google.com>
2703
2704         Web Inspector: refactor resource tree model and introduce explicit class for ResourceTreeFrame.
2705         https://bugs.webkit.org/show_bug.cgi?id=73078
2706
2707         Otherwise we are managing frames and their resources using too many maps.
2708
2709         Reviewed by Yury Semikhatsky.
2710
2711         * inspector/Inspector.json:
2712         * inspector/InspectorAgent.cpp:
2713         (WebCore::InspectorAgent::restore):
2714         * inspector/InspectorResourceAgent.cpp:
2715         (WebCore::InspectorResourceAgent::didReceiveResponse):
2716         * inspector/front-end/ApplicationCacheModel.js:
2717         (WebInspector.ApplicationCacheModel.prototype._frameNavigated):
2718         (WebInspector.ApplicationCacheModel.prototype._frameDetached):
2719         * inspector/front-end/JavaScriptContextManager.js:
2720         (WebInspector.JavaScriptContextManager.prototype._frameAdded):
2721         (WebInspector.JavaScriptContextManager.prototype._frameNavigated):
2722         (WebInspector.FrameEvaluationContext.prototype.get displayName):
2723         * inspector/front-end/NetworkManager.js:
2724         (WebInspector.NetworkDispatcher.prototype.requestWillBeSent):
2725         (WebInspector.NetworkDispatcher.prototype.responseReceived):
2726         (WebInspector.NetworkDispatcher.prototype.loadingFinished):
2727         * inspector/front-end/NetworkPanel.js:
2728         (WebInspector.NetworkLogView.prototype._mainFrameNavigated):
2729         * inspector/front-end/ResourceTreeModel.js:
2730         (WebInspector.ResourceTreeModel):
2731         (WebInspector.ResourceTreeModel.prototype._fetchResourceTree):
2732         (WebInspector.ResourceTreeModel.prototype._processCachedResources):
2733         (WebInspector.ResourceTreeModel.prototype._addFrame):
2734         (WebInspector.ResourceTreeModel.prototype._frameNavigated):
2735         (WebInspector.ResourceTreeModel.prototype._frontendReused):
2736         (WebInspector.ResourceTreeModel.prototype._frameDetached):
2737         (WebInspector.ResourceTreeModel.prototype._onResourceUpdated):
2738         (WebInspector.ResourceTreeModel.prototype._onResourceUpdateDropped):
2739         (WebInspector.ResourceTreeModel.prototype.frameForId):
2740         (WebInspector.ResourceTreeModel.prototype.forAllResources):
2741         (WebInspector.ResourceTreeModel.prototype.resourceForURL):
2742         (WebInspector.ResourceTreeModel.prototype._addFramesRecursively):
2743         (WebInspector.ResourceTreeModel.prototype._createResourceFromFramePayload):
2744         (WebInspector.ResourceTreeModel.prototype._createResource):
2745         (WebInspector.ResourceTreeFrame):
2746         (WebInspector.ResourceTreeFrame.prototype.get id):
2747         (WebInspector.ResourceTreeFrame.prototype.get name):
2748         (WebInspector.ResourceTreeFrame.prototype.get url):
2749         (WebInspector.ResourceTreeFrame.prototype.get loaderId):
2750         (WebInspector.ResourceTreeFrame.prototype.get parentFrame):
2751         (WebInspector.ResourceTreeFrame.prototype.get childFrames):
2752         (WebInspector.ResourceTreeFrame.prototype.isMainFrame):
2753         (WebInspector.ResourceTreeFrame.prototype.navigate):
2754         (WebInspector.ResourceTreeFrame.prototype.get mainResource):
2755         (WebInspector.ResourceTreeFrame.prototype.addChildFrame):
2756         (WebInspector.ResourceTreeFrame.prototype.removeChildFrame):
2757         (WebInspector.ResourceTreeFrame.prototype._addResource):
2758         (WebInspector.ResourceTreeFrame.prototype.resources):
2759         (WebInspector.ResourceTreeFrame.prototype.resourceForURL.filter):
2760         (WebInspector.ResourceTreeFrame.prototype.resourceForURL):
2761         (WebInspector.ResourceTreeFrame.prototype._callForFrameResources):
2762         (WebInspector.PageDispatcher.prototype.frameNavigated):
2763         * inspector/front-end/ResourcesPanel.js:
2764         (WebInspector.ResourcesPanel):
2765         (WebInspector.ResourcesPanel.prototype.wasShown):
2766         (WebInspector.ResourcesPanel.prototype._initialize):
2767         (WebInspector.ResourcesPanel.prototype._resetWithFrames):
2768         (WebInspector.ResourcesPanel.prototype._reset):
2769         (WebInspector.ResourcesPanel.prototype._populateResourceTree.populateFrame):
2770         (WebInspector.ResourcesPanel.prototype._populateResourceTree):
2771         (WebInspector.ResourcesPanel.prototype._frameAdded):
2772         (WebInspector.ResourcesPanel.prototype._frameDetached):
2773         (WebInspector.ResourcesPanel.prototype._frameNavigated):
2774         (WebInspector.ResourcesPanel.prototype._cachedResourcesLoaded):
2775         * inspector/front-end/ScriptFormatter.js:
2776         (WebInspector.ScriptFormatter.prototype.formatContent):
2777         * loader/cache/CachedResourceLoader.cpp:
2778         (WebCore::CachedResourceLoader::requestResource):
2779
2780 2011-11-24  Kentaro Hara  <haraken@chromium.org>
2781
2782         Initialize global variables during IDLParser object creation
2783         https://bugs.webkit.org/show_bug.cgi?id=73108
2784
2785         Reviewed by Adam Barth.
2786
2787         Currently, IDLParser.pm initializes global variables in a global scope,
2788         which means that the global variables are initialized just once at the beginning.
2789         On the other hand, implementing [Supplemental] IDL (bug 72138) requires a change
2790         on generate-bindings.pl that initializes the global variables whenever a new IDLParser
2791         object is created. Thus, this patch initializes the global variables during
2792         the IDLParser object creation.
2793
2794         No new tests. No change in behavior.
2795
2796         * bindings/scripts/IDLParser.pm:
2797         (InitializeGlobalData):
2798         (new):
2799
2800 2011-11-24  Patrick Gansterer  <paroga@webkit.org>
2801
2802         [CMake] Build fix for NOT ENABLE_WEB_SOCKETS.
2803
2804         * CMakeLists.txt: Move CloseEvent.idl to the unconditional files.
2805
2806 2011-11-24  Patrick Gansterer  <paroga@webkit.org>
2807
2808         Build fix for C++ bindings.
2809
2810         * bindings/cpp/WebDOMEventTarget.cpp: Added #if ENABLE() guards.
2811
2812 2011-11-24  Arko Saha  <arko@motorola.com>
2813
2814         Microdata: Support for properties attribute.
2815         https://bugs.webkit.org/show_bug.cgi?id=71050
2816
2817         Reviewed by Adam Barth.
2818
2819         The properties attribute returns an HTMLPropertiesCollection object with all the element's
2820         properties. Otherwise, an empty HTMLPropertiesCollection object.
2821
2822         Tests: fast/dom/MicroData/itemref-refers-first-element-with-given-id.html
2823                fast/dom/MicroData/names-property-must-be-correct.html
2824                fast/dom/MicroData/names-property-test.html
2825                fast/dom/MicroData/properties-collection-add-remove-itemref.html
2826                fast/dom/MicroData/properties-collection-add-remove-property.html
2827                fast/dom/MicroData/properties-collection-behavior-add-remove-itemscope-attr.html
2828                fast/dom/MicroData/properties-collection-must-be-correct.html
2829                fast/dom/MicroData/properties-collection-must-ignore-properties-of-nested-items.html
2830                fast/dom/MicroData/properties-collection-must-see-the-properties-added-in-itemref.html
2831                fast/dom/MicroData/properties-collection-test.html
2832
2833         * CMakeLists.txt:
2834         * DerivedSources.cpp:
2835         * DerivedSources.make:
2836         * DerivedSources.pri:
2837         * GNUmakefile.list.am:
2838         * Target.pri:
2839         * WebCore.gypi:
2840         * WebCore.vcproj/WebCore.vcproj:
2841         * WebCore.xcodeproj/project.pbxproj:
2842         * bindings/gobject/GNUmakefile.am:
2843         * bindings/js/JSHTMLCollectionCustom.cpp:
2844         (WebCore::toJS):
2845         * dom/MicroDataItemList.cpp:
2846         * dom/Node.cpp:
2847         (WebCore::Node::itemProp):
2848         (WebCore::Node::setItemProp):
2849         (WebCore::Node::itemRef):
2850         (WebCore::Node::setItemRef):
2851         (WebCore::Node::itemType):
2852         (WebCore::Node::setItemType):
2853         (WebCore::Node::properties):
2854         * dom/Node.h:
2855         * dom/NodeRareData.h:
2856         (WebCore::NodeRareData::itemProp):
2857         (WebCore::NodeRareData::setItemProp):
2858         (WebCore::NodeRareData::itemRef):
2859         (WebCore::NodeRareData::setItemRef):
2860         (WebCore::NodeRareData::itemType):
2861         (WebCore::NodeRareData::setItemType):
2862         (WebCore::NodeRareData::properties):
2863         * html/CollectionType.h:
2864         * html/HTMLCollection.cpp:
2865         (WebCore::HTMLCollection::itemAfter):
2866         * html/HTMLElement.cpp:
2867         (WebCore::HTMLElement::setItemValueText):
2868         * html/HTMLElement.h:
2869         * html/HTMLElement.idl:
2870         * html/HTMLPropertiesCollection.cpp: Added.
2871         (WebCore::compareTreeOrder):
2872         (WebCore::HTMLPropertiesCollection::create):
2873         (WebCore::HTMLPropertiesCollection::HTMLPropertiesCollection):
2874         (WebCore::HTMLPropertiesCollection::~HTMLPropertiesCollection):
2875         (WebCore::HTMLPropertiesCollection::findPropetiesOfAnItem): Finds the properties of an item.
2876         (WebCore::HTMLPropertiesCollection::length): Returns the number of elements in the properties collection.
2877         (WebCore::HTMLPropertiesCollection::item): Returns the element with index 'index' from the collection. The items are sorted in tree order.
2878         (WebCore::HTMLPropertiesCollection::names): Returns a DOMStringList with the property names of the elements in the collection with the order preserved but with duplicates removed.
2879         * html/HTMLPropertiesCollection.h: Added.
2880         * html/HTMLPropertiesCollection.idl: Added.
2881         * page/DOMWindow.idl:
2882
2883 2011-11-24  Joshua Bell  <jsbell@chromium.org>
2884
2885         IndexedDB: Indexes should be secondarily sorted on primary key
2886         https://bugs.webkit.org/show_bug.cgi?id=72567
2887
2888         Reviewed by Tony Chang.
2889
2890         Implemented by adding the primary key (i.e. unique key in the
2891         object store) to the IndexDataKey (i.e. the composite key used
2892         in the index. Previously, non-unique entries in the index were
2893         stored with a unique (and hidden) sequenceNumber, so ordering was
2894         not predictable by scripts (or per spec). The sequenceNumber
2895         is now deprecated but still present in the LevelDB backing store
2896         to avoid having to do a data migration.
2897
2898         Test: storage/indexeddb/cursor-primary-key-order.html
2899
2900         * storage/IDBLevelDBBackingStore.cpp:
2901         (WebCore::IDBLevelDBBackingStore::putIndexDataForRecord):
2902         * storage/IDBLevelDBCoding.cpp:
2903         (WebCore::IDBLevelDBCoding::compare):
2904         (WebCore::IDBLevelDBCoding::IndexDataKey::decode):
2905         (WebCore::IDBLevelDBCoding::IndexDataKey::encode):
2906         (WebCore::IDBLevelDBCoding::IndexDataKey::compare):
2907         (WebCore::IDBLevelDBCoding::IndexDataKey::primaryKey):
2908         * storage/IDBLevelDBCoding.h:
2909
2910 2011-11-24  Pavel Feldman  <pfeldman@google.com>
2911
2912         Web Inspector: WebInspector.inspectedPageDomain is not calculated for about:blank
2913         https://bugs.webkit.org/show_bug.cgi?id=73082
2914
2915         Reviewed by Timothy Hatcher.
2916
2917         * inspector/front-end/ResourceTreeModel.js:
2918         (WebInspector.ResourceTreeModel.prototype._processCachedResources):
2919         (WebInspector.ResourceTreeModel.prototype._frameNavigated):
2920         (WebInspector.ResourceTreeModel.prototype._addFramesRecursively):
2921         * inspector/front-end/inspector.js:
2922         (WebInspector.networkResourceById):
2923         (WebInspector.get inspectedPageDomain):
2924
2925 2011-11-24  Andrey Kosyakov  <caseq@chromium.org>
2926
2927         Web Inspector: provide context menu items to open resources using extensions
2928         https://bugs.webkit.org/show_bug.cgi?id=73076
2929
2930         Reviewed by Yury Semikhatsky.
2931
2932         * English.lproj/localizedStrings.js:
2933         * inspector/front-end/ExtensionServer.js:
2934         (WebInspector.ExtensionServer.prototype._onSetOpenResourceHandler):
2935         (WebInspector.ExtensionServer.prototype._handleOpenURL):
2936         * inspector/front-end/HandlerRegistry.js:
2937         (get WebInspector.HandlerRegistry.prototype.set dispatch):
2938         (get WebInspector.HandlerRegistry.prototype.dispatchToHandler):
2939         * inspector/front-end/JavaScriptSourceFrame.js:
2940         (WebInspector.JavaScriptSourceFrame.prototype.populateTextAreaContextMenu):
2941         * inspector/front-end/ResourcesPanel.js:
2942         (WebInspector.FrameResourceTreeElement.prototype._handleContextMenuEvent):
2943         * inspector/front-end/SourceFrame.js:
2944         (WebInspector.SourceFrame.prototype.populateTextAreaContextMenu):
2945         * inspector/front-end/externs.js:
2946         (WebInspector.populateResourceContextMenu):
2947         * inspector/front-end/inspector.js:
2948         (WebInspector.populateResourceContextMenu):
2949         (WebInspector._showAnchorLocation):
2950
2951 2011-10-27  Philippe Normand  <pnormand@igalia.com>
2952
2953         [GStreamer] WebAudio AudioDestination
2954         https://bugs.webkit.org/show_bug.cgi?id=69835
2955
2956         Reviewed by Martin Robinson.
2957
2958         New GStreamer source element pulling data from the AudioBus and
2959         outputing audio interleaved GstBuffers suitable for playback.
2960
2961         * GNUmakefile.list.am: Added the new GStreamer WebAudio element
2962         source files to the build.
2963         * platform/audio/gstreamer/AudioDestinationGStreamer.cpp:
2964         (WebCore::onGStreamerWavparsePadAddedCallback): Function called
2965         when the playback pipeline successfully parsed the audio source
2966         into a WAV stream.
2967         (WebCore::AudioDestinationGStreamer::AudioDestinationGStreamer):
2968         Configure the initial playback pipeline up to the WAV parser. The
2969         audio sink is added only after the WAV parser was configured.
2970         (WebCore::AudioDestinationGStreamer::~AudioDestinationGStreamer):
2971         Reset the playback pipeline and delete it.
2972         (WebCore::AudioDestinationGStreamer::finishBuildingPipelineAfterWavParserPadReady):
2973         Method to add the audio sink to the pipeline and link it to the
2974         WAV parser.
2975         (WebCore::AudioDestinationGStreamer::start): Set pipeline to
2976         PLAYING, at the first run it will trigger the WAV parser and hence
2977         the audio-sink plugging.
2978         (WebCore::AudioDestinationGStreamer::stop): Pause the pipeline.
2979         * platform/audio/gstreamer/AudioDestinationGStreamer.h:
2980         * platform/audio/gstreamer/WebKitWebAudioSourceGStreamer.cpp: Added.
2981         (getGStreamerMonoAudioCaps): Utility function to generate
2982         GStreamer caps representing a single audio channel for a given
2983         sample rate.
2984         (webKitWebAudioGStreamerChannelPosition): Utility function to
2985         convert AudioBus channel representations to GStreamer positional
2986         audio channel values.
2987         (webkit_web_audio_src_class_init): GObject configuration of the
2988         GStreamer source element.
2989         (webkit_web_audio_src_init): Initialization of the private data of
2990         the element.
2991         (webKitWebAudioSourceConstructed): Configure the GstBin elements
2992         depending on the AudioBus layout.
2993         (webKitWebAudioSourceFinalize): Clean up the GstBin and free private
2994         data of the element.
2995         (webKitWebAudioSourceSetProperty): GObject property setter.
2996         (webKitWebAudioSourceGetProperty): GObject property getter.
2997         (webKitWebAudioSourceLoop): GstTask used to pull data from the
2998         AudioBus and push it as GstBuffers to the src pad of the element.
2999         (webKitWebAudioSourceChangeState): Start or stop the above GstTask
3000         depending on the asked state transition.
3001         * platform/audio/gstreamer/WebKitWebAudioSourceGStreamer.h: Added.
3002         * platform/graphics/gstreamer/GRefPtrGStreamer.cpp: GstTask support in GRefPtr.
3003         (WTF::adoptGRef):
3004         (WTF::GstTask):
3005         * platform/graphics/gstreamer/GRefPtrGStreamer.h:
3006
3007 2011-11-24  Tor Arne Vestbø  <tor.arne.vestbo@nokia.com>
3008
3009         [Qt] Get rid of the buildDirForSource() function in the build system
3010
3011         At some point the plan was to allow for running qmake on sub-trees
3012         of the sources, into the top level build directory, but this is no
3013         longer possible, so no reason to keep the convenience function around.
3014
3015         Reviewed by Simon Hausmann.
3016
3017         * DerivedSources.pri:
3018
3019 2011-11-24  Patrick Gansterer  <paroga@webkit.org>
3020
3021         [CMake] Add missing source files
3022         https://bugs.webkit.org/show_bug.cgi?id=73052
3023
3024         Reviewed by Andreas Kling.
3025
3026         * CMakeLists.txt:
3027
3028 2011-11-24  Philippe Normand  <pnormand@igalia.com>
3029
3030         Fix ASSERTs added in r101082.
3031
3032         Rubber-Stamped by Martin Robinson.
3033
3034         * platform/graphics/gstreamer/GRefPtrGStreamer.cpp:
3035         (WTF::adoptGRef): Check for valid pointer before
3036         GST_OBJECT_IS_FLOATING().
3037
3038 2011-11-23  Alexander Pavlov  <apavlov@chromium.org>
3039
3040         Web Inspector: shift focus to the source view when a resource is selected in the Scripts panel
3041         https://bugs.webkit.org/show_bug.cgi?id=69738
3042
3043         Reviewed by Timothy Hatcher.
3044
3045         The source viewer is focused whenever a file name option is clicked, and is NOT focused when the script list
3046         is traversed with the Up/Down keys.
3047
3048         * inspector/front-end/ScriptsPanel.js:
3049         (WebInspector.ScriptsPanel.prototype._filesSelectChanged):
3050         * inspector/front-end/SourceFrame.js:
3051         (WebInspector.SourceFrame.prototype.focus):
3052         * inspector/front-end/TextViewer.js:
3053         (WebInspector.TextViewer.prototype.focus):
3054
3055 2011-11-23  Pavel Podivilov  <podivilov@chromium.org>
3056
3057         Web Inspector: add integration test for compiler source maps.
3058         https://bugs.webkit.org/show_bug.cgi?id=72730
3059
3060         Reviewed by Pavel Feldman.
3061
3062         Test: http/tests/inspector/compiler-source-mapping-debug.html
3063
3064         * inspector/front-end/DebuggerPresentationModel.js:
3065         (WebInspector.DebuggerPresentationModel.prototype._bindScriptToRawSourceCode):
3066         (WebInspector.DebuggerPresentationModel.prototype.setCompilerSourceMapping):
3067         (WebInspector.DebuggerPresentationModel.prototype.evaluateInSelectedCallFrame):
3068         (WebInspector.DebuggerPresentationModel.prototype.get executionLineLocation):
3069         (WebInspector.DebuggerPresentationModel.DefaultLinkifierFormatter.prototype.formatRawSourceCodeAnchor):
3070         (WebInspector.DebuggerPresentationModel.Linkifier.prototype.linkifyLocation):
3071         (WebInspector.DebuggerPresentationModel.Linkifier.prototype._updateAnchor):
3072
3073 2011-11-23  Pavel Feldman  <pfeldman@google.com>
3074
3075         Web Inspector: get rid of the WebInspector.mainResource, use WebInspector.inspectedPageURL instead.
3076         https://bugs.webkit.org/show_bug.cgi?id=73024
3077
3078         We use it for the URL mostly, no need to create artificial resource for that upon
3079         attaching to the existing page.
3080
3081         Reviewed by Yury Semikhatsky.
3082
3083         * inspector/front-end/AuditsPanel.js:
3084         * inspector/front-end/HAREntry.js:
3085         (WebInspector.HARLog.prototype._buildPages):
3086         (WebInspector.HARLog.prototype._pageEventTime):
3087         * inspector/front-end/NetworkPanel.js:
3088         (WebInspector.NetworkLogView.prototype._updateSummaryBar):
3089         (WebInspector.NetworkLogView.prototype._exportAll):
3090         * inspector/front-end/Resource.js:
3091         (WebInspector.Resource.prototype.set url):
3092         (WebInspector.Resource.prototype.get displayName):
3093         (WebInspector.Resource.prototype.get displayDomain):
3094         * inspector/front-end/ResourceTreeModel.js:
3095         (WebInspector.ResourceTreeModel.prototype._processCachedResources):
3096         (WebInspector.ResourceTreeModel.prototype._dispatchInspectedURLChanged):
3097         (WebInspector.ResourceTreeModel.prototype._frameNavigated):
3098         (WebInspector.ResourceTreeModel.prototype._addFramesRecursively):
3099         * inspector/front-end/ResourceUtils.js:
3100         (WebInspector.displayNameForURL):
3101         * inspector/front-end/ResourcesPanel.js:
3102         (WebInspector.ResourcesPanel.prototype._initDefaultSelection):
3103         * inspector/front-end/TimelinePanel.js:
3104         (WebInspector.TimelinePanel.prototype._addRecordToTimeline):
3105         * inspector/front-end/utilities.js:
3106         (String.prototype.asParsedURL):
3107
3108 2011-11-23  Yury Semikhatsky  <yurys@chromium.org>
3109
3110         Web Inspector: exceptions in shared workers should be logged to web inspector console
3111         https://bugs.webkit.org/show_bug.cgi?id=73022
3112
3113         According to section "4.7 Runtime script errors" of Web Workers spec "For shared
3114         workers, if the error is still not handled afterwards, or if the error occurred
3115         while handling a previous script error, the error may be reported to the user."
3116
3117         This change adds uncaugh exceptions to the shared worker web inspector console.
3118
3119         Reviewed by Pavel Feldman.
3120
3121         * inspector/InspectorConsoleAgent.cpp:
3122         (WebCore::InspectorConsoleAgent::restore):
3123         * inspector/InspectorConsoleInstrumentation.h:
3124         (WebCore::InspectorInstrumentation::addMessageToConsole):
3125         * inspector/InspectorDebuggerAgent.cpp:
3126         (WebCore::InspectorDebuggerAgent::restore):
3127         * inspector/InspectorInstrumentation.cpp:
3128         (WebCore::InspectorInstrumentation::instrumentingAgentsForWorkerContext):
3129         * inspector/InspectorInstrumentation.h:
3130         * inspector/WorkerInspectorController.cpp:
3131         (WebCore::WorkerInspectorController::connectFrontend):
3132         (WebCore::WorkerInspectorController::disconnectFrontend):
3133         (WebCore::WorkerInspectorController::restoreInspectorStateFromCookie):
3134         * inspector/WorkerInspectorController.h:
3135         * inspector/front-end/WorkerManager.js:
3136         (WebInspector.WorkerManager.showWorkerTerminatedScreen):
3137         * inspector/front-end/inspector.js:
3138         * workers/SharedWorkerContext.cpp:
3139         (WebCore::SharedWorkerContext::logExceptionToConsole):
3140         * workers/SharedWorkerContext.h:
3141         * workers/WorkerContext.cpp:
3142         (WebCore::WorkerContext::addMessage): console messages are now added to
3143         the worker console agent.
3144         (WebCore::WorkerContext::addMessageToWorkerConsole):
3145         * workers/WorkerContext.h:
3146
3147 2011-11-23  Jeff Timanus  <twiz@chromium.org>
3148
3149         [Chromium]  Prevent DrawingBuffer instances from corrupting the active
3150         texture state of the WebGL contexts. The DrawingBuffer now tracks the
3151         state of texture unit 0, and the active texture unit, so that state can
3152         be restored.
3153         https://bugs.webkit.org/show_bug.cgi?id=73033
3154
3155         Reviewed by Kenneth Russell.
3156
3157         Test: fast/canvas/webgl/webgl-texture-binding-preserved.html
3158
3159         * html/canvas/WebGLRenderingContext.cpp:
3160         (WebCore::WebGLRenderingContext::activeTexture):
3161         (WebCore::WebGLRenderingContext::bindTexture):
3162         * platform/graphics/chromium/DrawingBufferChromium.cpp:
3163         (WebCore::DrawingBuffer::DrawingBuffer):
3164         (WebCore::DrawingBuffer::publishToPlatformLayer):
3165         * platform/graphics/gpu/DrawingBuffer.h:
3166         (WebCore::DrawingBuffer::setTexture2DBinding):
3167         (WebCore::DrawingBuffer::setActiveTextureUnit):
3168         * platform/graphics/gpu/mac/DrawingBufferMac.mm:
3169         (WebCore::DrawingBuffer::DrawingBuffer):
3170         * platform/graphics/gpu/qt/DrawingBufferQt.cpp:
3171         (WebCore::DrawingBuffer::DrawingBuffer):
3172         * platform/graphics/gtk/DrawingBufferGtk.cpp:
3173         (WebCore::DrawingBuffer::DrawingBuffer):
3174
3175 2011-11-23  Luke Macpherson   <macpherson@chromium.org>
3176
3177         CSSValue: reorder ClassType enum to allow faster comparisons, add COMPILE_ASSERT on class size.
3178         https://bugs.webkit.org/show_bug.cgi?id=72924
3179
3180         Reviewed by Andreas Kling.
3181
3182         Note that the change from unsigned to unsigned char is to improve bit packing when using MSVC.
3183
3184         Covered by existing CSS tests.
3185
3186         * css/CSSValue.h:
3187         (WebCore::CSSValue::isPrimitiveValue):
3188         (WebCore::CSSValue::isValueList):
3189         (WebCore::CSSValue::isImageGeneratorValue):
3190         (WebCore::CSSValue::isTimingFunctionValue):
3191         (WebCore::CSSValue::CSSValue):
3192
3193 2011-11-23  Dmitry Lomov  <dslomov@google.com>
3194
3195         https://bugs.webkit.org/show_bug.cgi?id=73054
3196         [V8][Chromium] Add list of transferred ArrayBuffers to SerializedScriptValue::create.
3197
3198         Reviewed by David Levin.
3199
3200         * bindings/scripts/CodeGeneratorV8.pm:
3201         (GenerateParametersCheck):
3202         * bindings/scripts/test/V8/V8TestObj.cpp:
3203         (WebCore::TestObjInternal::serializedValueCallback):
3204        * bindings/v8/OptionsObject.cpp:
3205         * bindings/v8/SerializedScriptValue.cpp:
3206         (WebCore::SerializedScriptValue::create):
3207         * bindings/v8/SerializedScriptValue.h:
3208         * bindings/v8/V8Utilities.cpp:
3209         (WebCore::extractTransferables):
3210         (WebCore::getMessagePortArray):
3211         * bindings/v8/V8Utilities.h:
3212         * bindings/v8/custom/V8DOMWindowCustom.cpp:
3213         (WebCore::handlePostMessageCallback):
3214         * bindings/v8/custom/V8DedicatedWorkerContextCustom.cpp:
3215         (WebCore::handlePostMessageCallback):
3216         * bindings/v8/custom/V8HistoryCustom.cpp:
3217         (WebCore::V8History::pushStateCallback):
3218         (WebCore::V8History::replaceStateCallback):
3219         * bindings/v8/custom/V8MessageEventCustom.cpp:
3220         * bindings/v8/custom/V8MessagePortCustom.cpp:
3221         (WebCore::handlePostMessageCallback):
3222         * bindings/v8/custom/V8MessagePortCustom.h: Removed.
3223         * bindings/v8/custom/V8WorkerCustom.cpp:
3224         (WebCore::handlePostMessageCallback):
3225
3226 2011-11-23  Rafael Weinstein  <rafaelw@chromium.org>
3227
3228         Cleanup #if usage in V8GCController
3229         https://bugs.webkit.org/show_bug.cgi?id=73060
3230
3231         Reviewed by Ojan Vafai.
3232
3233         No tests needed. Just code cleanup
3234
3235         * bindings/v8/V8GCController.cpp:
3236         (WebCore::V8GCController::checkMemoryUsage):
3237
3238 2011-11-23  Rafael Weinstein  <rafaelw@chromium.org>
3239
3240         Change CSSMutableStyleDeclaration::m_node to m_element (along with getter/setter)
3241         https://bugs.webkit.org/show_bug.cgi?id=73050
3242
3243         Reviewed by Ojan Vafai.
3244
3245         No tests needed. This is just a refactor.
3246
3247         * css/CSSMutableStyleDeclaration.cpp:
3248         (WebCore::CSSMutableStyleDeclaration::CSSMutableStyleDeclaration):
3249         (WebCore::CSSMutableStyleDeclaration::operator=):
3250         (WebCore::CSSMutableStyleDeclaration::isInlineStyleDeclaration):
3251         (WebCore::CSSMutableStyleDeclaration::setNeedsStyleRecalc):
3252         * css/CSSMutableStyleDeclaration.h:
3253         (WebCore::CSSMutableStyleDeclaration::setElement):
3254         (WebCore::CSSMutableStyleDeclaration::element):
3255         * css/CSSStyleRule.cpp:
3256         (WebCore::CSSStyleRule::setSelectorText):
3257         * dom/StyledElement.cpp:
3258         (WebCore::StyledElement::createInlineStyleDecl):
3259         (WebCore::StyledElement::destroyInlineStyleDecl):
3260         (WebCore::StyledElement::attributeChanged):
3261         (WebCore::StyledElement::createMappedDecl):
3262         * html/HTMLTableElement.cpp:
3263         (WebCore::HTMLTableElement::additionalAttributeStyleDecls):
3264         (WebCore::HTMLTableElement::addSharedCellBordersDecl):
3265         (WebCore::HTMLTableElement::addSharedCellPaddingDecl):
3266         (WebCore::HTMLTableElement::addSharedGroupDecls):
3267         * inspector/InspectorCSSAgent.cpp:
3268         (WebCore::InspectorCSSAgent::inlineStyleElement):
3269
3270 2011-11-23  Ami Fischman  <fischman@chromium.org>
3271
3272         Teach VideoLayerChromium how to render native texture (to support HW video decode).
3273         https://bugs.webkit.org/show_bug.cgi?id=73043
3274
3275         Reviewed by Kenneth Russell.
3276
3277         No new tests. (depends on chromium support landing, and supporting HW being available)
3278
3279         * platform/graphics/chromium/LayerRendererChromium.cpp:
3280         (WebCore::LayerRendererChromium::drawLayersOntoRenderSurfaces):
3281         (WebCore::LayerRendererChromium::videoLayerNativeTextureProgram):
3282         * platform/graphics/chromium/LayerRendererChromium.h:
3283         * platform/graphics/chromium/VideoFrameChromium.h:
3284         * platform/graphics/chromium/VideoLayerChromium.cpp:
3285         (WebCore::VideoLayerChromium::VideoLayerChromium):
3286         (WebCore::VideoLayerChromium::updateCompositorResources):
3287         (WebCore::VideoLayerChromium::pushPropertiesTo):
3288         (WebCore::VideoLayerChromium::determineTextureFormat):
3289         * platform/graphics/chromium/VideoLayerChromium.h:
3290         * platform/graphics/chromium/cc/CCVideoLayerImpl.cpp:
3291         (WebCore::CCVideoLayerImpl::setNativeTexture):
3292         (WebCore::CCVideoLayerImpl::draw):
3293         (WebCore::CCVideoLayerImpl::drawNativeTexture):
3294         * platform/graphics/chromium/cc/CCVideoLayerImpl.h:
3295
3296 2011-11-23  Vincent Scheib  <scheib@chromium.org>
3297
3298         Pointer Lock: Plumb movement coordinates from PlatformMouseEvent to MouseEvents.
3299         https://bugs.webkit.org/show_bug.cgi?id=73031
3300
3301         Reviewed by Dimitri Glazkov.
3302
3303         No tests for now, but this patch gets us closer to being able to write layout tests for pointer lock.
3304
3305         * dom/MouseEvent.cpp:
3306         (WebCore::MouseEvent::create):
3307         (WebCore::MouseEvent::MouseEvent):
3308         (WebCore::SimulatedMouseEvent::SimulatedMouseEvent):
3309         * dom/MouseEvent.h:
3310         (WebCore::MouseEvent::create):
3311         * dom/MouseRelatedEvent.cpp:
3312         (WebCore::MouseRelatedEvent::MouseRelatedEvent):
3313         * dom/MouseRelatedEvent.h:
3314         * dom/TouchEvent.cpp:
3315         (WebCore::TouchEvent::TouchEvent):
3316         * dom/WheelEvent.cpp:
3317         (WebCore::WheelEvent::WheelEvent):
3318         * page/EventHandler.cpp:
3319         (WebCore::EventHandler::dispatchDragEvent):
3320         * platform/PlatformMouseEvent.h:
3321         (WebCore::PlatformMouseEvent::movementX):
3322         (WebCore::PlatformMouseEvent::movementY):
3323
3324 2011-11-23  Nico Weber  <thakis@chromium.org>
3325
3326         Remove one static initializer (for kTickTime)
3327         https://bugs.webkit.org/show_bug.cgi?id=73049
3328
3329         Reviewed by Adam Barth.
3330
3331         * platform/ScrollAnimatorNone.cpp:
3332
3333 2011-11-23  Jonathan Backer  <backer@chromium.org>
3334
3335         [chromium] Drop root layer tiles on platforms that cache the front buffer
3336         https://bugs.webkit.org/show_bug.cgi?id=72956
3337
3338         Reviewed by Kenneth Russell.
3339
3340         * platform/graphics/chromium/LayerRendererChromium.cpp:
3341         (WebCore::LayerRendererChromium::initialize):
3342         * platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
3343         (WebCore::CCLayerTreeHost::initialize):
3344         (WebCore::CCLayerTreeHost::didBecomeInvisibleOnImplThread):
3345         * platform/graphics/chromium/cc/CCLayerTreeHost.h:
3346         (WebCore::CCSettings::CCSettings):
3347         (WebCore::LayerRendererCapabilities::LayerRendererCapabilities):
3348
3349 2011-11-23  Erik Arvidsson  <arv@chromium.org>
3350
3351         Binding CodeGenerators don't support Conditional= on constants
3352         https://bugs.webkit.org/show_bug.cgi?id=67666
3353
3354         Reviewed by Adam Barth.
3355
3356         Adds support for [Conditional=LABEL] to const IDL fields.
3357
3358         * bindings/scripts/CodeGenerator.pm:
3359         (GenerateConditionalStringFromAttributeValue): Moved out of CodeGenerator{CPP,JS,V8}.pm.
3360         (GenerateCompileTimeCheckForEnumsIfNeeded): Wrap in conditional #if.
3361         * bindings/scripts/CodeGeneratorCPP.pm:
3362         (GenerateConditionalString):
3363         (GenerateHeader): Ditto.
3364         * bindings/scripts/CodeGeneratorJS.pm:
3365         (GenerateConditionalString):
3366         (GenerateHeader): Ditto.
3367         (GenerateImplementation): Ditto.
3368         (GenerateHashTable):
3369         (WriteData):
3370         * bindings/scripts/CodeGeneratorObjC.pm:
3371         (GenerateHeader): Ditto.
3372         * bindings/scripts/CodeGeneratorV8.pm:
3373         (GenerateConditionalString): Ditto.
3374         (GenerateImplementation):
3375         (WriteData):
3376         * bindings/scripts/test/CPP/WebDOMTestObj.h: Generated code now wraps conditional const in #if.
3377         * bindings/scripts/test/JS/JSTestObj.cpp:
3378         (WebCore::jsTestObjCONDITIONAL_CONST): Ditto
3379         * bindings/scripts/test/JS/JSTestObj.h: Ditto
3380         * bindings/scripts/test/ObjC/DOMTestObj.h: Ditto
3381         * bindings/scripts/test/TestObj.idl: Added a conditional const.
3382         * bindings/scripts/test/V8/V8TestObj.cpp: Generated code now wraps conditional const in #if.
3383
3384 2011-11-23  Rafael Weinstein  <rafaelw@chromium.org>
3385
3386         [MutationObservers] Modifications to the style property don't dispatch "attributes" Mutation Records
3387         https://bugs.webkit.org/show_bug.cgi?id=70137
3388
3389         Reviewed by Ryosuke Niwa.
3390
3391         This patch adds a private AttributesMutationScope mechanism to CSSMutableStyleDeclaration (which uses
3392         the RAII pattern similar to the public ChildListMutationScope). This manages the (sometimes conditional)
3393         pre-change serialization of the style attribute (if an observer has requested oldValue), creation of
3394         the mutation record, and dispatch if the declaration was actual affected.
3395
3396         * css/CSSMutableStyleDeclaration.cpp:
3397         (WebCore::CSSMutableStyleDeclaration::removeProperty):
3398         (WebCore::CSSMutableStyleDeclaration::setProperty):
3399         (WebCore::CSSMutableStyleDeclaration::setPropertyInternal):
3400         (WebCore::CSSMutableStyleDeclaration::parseDeclaration):
3401         (WebCore::CSSMutableStyleDeclaration::addParsedProperties):
3402         (WebCore::CSSMutableStyleDeclaration::addParsedProperty):
3403         (WebCore::CSSMutableStyleDeclaration::setCssText):
3404         (WebCore::CSSMutableStyleDeclaration::merge):
3405         (WebCore::CSSMutableStyleDeclaration::removePropertiesInSet):
3406         * dom/Element.cpp:
3407         (WebCore::Element::setAttribute):
3408
3409 2011-11-23  Dmitry Lomov  <dslomov@google.com>
3410
3411         Unreviewed, rebaseline binding tests after http://trac.webkit.org/changeset/101064.
3412
3413         * bindings/scripts/test/JS/JSFloat64Array.cpp:
3414         (WebCore::toFloat64Array):
3415         * bindings/scripts/test/V8/V8Float64Array.cpp:
3416         (WebCore::V8Float64Array::wrapSlow):
3417
3418 2011-11-23  Sheriff Bot  <webkit.review.bot@gmail.com>
3419
3420         Unreviewed, rolling out r101069.
3421         http://trac.webkit.org/changeset/101069
3422         https://bugs.webkit.org/show_bug.cgi?id=73032
3423
3424         New test always times out (Requested by aklein on #webkit).
3425
3426         * inspector/front-end/DebuggerPresentationModel.js:
3427         (WebInspector.DebuggerPresentationModel.prototype._bindScriptToRawSourceCode):
3428         (WebInspector.DebuggerPresentationModel.prototype.evaluateInSelectedCallFrame):
3429         (WebInspector.DebuggerPresentationModel.prototype.get executionLineLocation):
3430         (WebInspector.DebuggerPresentationModel.DefaultLinkifierFormatter.prototype.formatRawSourceCodeAnchor):
3431         (WebInspector.DebuggerPresentationModel.Linkifier.prototype.linkifyLocation):
3432         (WebInspector.DebuggerPresentationModel.Linkifier.prototype._updateAnchor):
3433
3434 2011-11-23  Antti Koivisto  <antti@apple.com>
3435
3436         https://bugs.webkit.org/show_bug.cgi?id=72354
3437         Image pointer in FillLayer not cleared correctly
3438
3439         Reviewed by Dan Bernstein.
3440
3441         Test: fast/css/fill-layer-crash.html
3442         
3443         We should clear the image pointer too, not just the m_imageSet bit.
3444
3445         * rendering/style/FillLayer.h:
3446         (WebCore::FillLayer::clearImage):
3447
3448 2011-11-23  Sheriff Bot  <webkit.review.bot@gmail.com>
3449
3450         Unreviewed, rolling out r101057.
3451         http://trac.webkit.org/changeset/101057
3452         https://bugs.webkit.org/show_bug.cgi?id=73027
3453
3454         Broke Chromium Windows build (Requested by aklein on #webkit).
3455
3456         * html/HTMLTrackElement.cpp:
3457         (WebCore::HTMLTrackElement::HTMLTrackElement):
3458         (WebCore::HTMLTrackElement::didCompleteLoad):
3459         (WebCore::HTMLTrackElement::textTrackReadyStateChanged):
3460         * html/HTMLTrackElement.h:
3461         * html/HTMLTrackElement.idl:
3462         * html/LoadableTextTrack.cpp:
3463         (WebCore::LoadableTextTrack::loadTimerFired):
3464         (WebCore::LoadableTextTrack::cueLoadingStarted):
3465         (WebCore::LoadableTextTrack::cueLoadingCompleted):
3466         * html/TextTrack.cpp:
3467         (WebCore::TextTrack::TextTrack):
3468         (WebCore::TextTrack::setReadyState):