2011-02-22 Sheriff Bot <webkit.review.bot@gmail.com>
[WebKit-https.git] / Source / WebCore / ChangeLog
1 2011-02-22  Yury Semikhatsky  <yurys@chromium.org>
2
3         Reviewed by Pavel Feldman.
4
5         Web Inspector: Timeline agent should have same lifetime as InspectorAgent
6         https://bugs.webkit.org/show_bug.cgi?id=54951
7
8         * inspector/CodeGeneratorInspector.pm:
9         * inspector/Inspector.idl:
10         * inspector/InspectorAgent.cpp:
11         (WebCore::InspectorAgent::InspectorAgent):
12         (WebCore::InspectorAgent::restoreInspectorStateFromCookie):
13         (WebCore::InspectorAgent::setFrontend):
14         (WebCore::InspectorAgent::disconnectFrontend):
15         (WebCore::InspectorAgent::releaseFrontendLifetimeAgents):
16         (WebCore::InspectorAgent::didCommitLoad):
17         (WebCore::InspectorAgent::domContentLoadedEventFired):
18         (WebCore::InspectorAgent::loadEventFired):
19         * inspector/InspectorAgent.h:
20         * inspector/InspectorController.cpp:
21         (WebCore::InspectorController::startTimelineProfiler):
22         (WebCore::InspectorController::stopTimelineProfiler):
23         (WebCore::InspectorController::timelineProfilerEnabled):
24         * inspector/InspectorInstrumentation.cpp:
25         (WebCore::InspectorInstrumentation::retrieveTimelineAgent):
26         * inspector/InspectorTimelineAgent.cpp:
27         (WebCore::InspectorTimelineAgent::~InspectorTimelineAgent):
28         (WebCore::InspectorTimelineAgent::setFrontend):
29         (WebCore::InspectorTimelineAgent::clearFrontend):
30         (WebCore::InspectorTimelineAgent::restore):
31         (WebCore::InspectorTimelineAgent::startTimelineProfiler):
32         (WebCore::InspectorTimelineAgent::stopTimelineProfiler):
33         (WebCore::InspectorTimelineAgent::timelineProfilerStarted):
34         (WebCore::InspectorTimelineAgent::didCommitLoad):
35         (WebCore::InspectorTimelineAgent::InspectorTimelineAgent):
36         (WebCore::InspectorTimelineAgent::clearRecordStack):
37         * inspector/InspectorTimelineAgent.h:
38         (WebCore::InspectorTimelineAgent::create):
39         * inspector/front-end/TimelinePanel.js:
40         (WebInspector.TimelinePanel.prototype._toggleTimelineButtonClicked):
41
42 2011-02-22  Ilya Tikhonovsky  <loislo@chromium.org>
43
44         Reviewed by Pavel Feldman.
45
46         Web Inspector: flakyness of inspector tests.
47         https://bugs.webkit.org/show_bug.cgi?id=54729
48
49         As far as we have the protocol with sequence numbers we can simplify test harness support
50         and drop out chomium specific methods.
51
52         * inspector/CodeGeneratorInspector.pm:
53         * inspector/front-end/TestController.js:
54         (WebInspector.TestController):
55         (WebInspector.TestController.prototype.notifyDone):
56         (WebInspector.TestController.prototype.runAfterPendingDispatches):
57         (WebInspector.TestController.prototype._evaluateForTestInFrontend):
58         * inspector/front-end/inspector.js:
59         (WebInspector.dispatch):
60
61 2011-02-22  Mario Sanchez Prada  <msanchez@igalia.com>
62
63         Reviewed by Martin Robinson.
64
65         [GTK] Combo boxes should emit object:selection-changed even when collapsed
66         https://bugs.webkit.org/show_bug.cgi?id=53146
67
68         Emit the selection-changed signals when the menu list value has changed
69
70         Test: platform/gtk/accessibility/combo-box-collapsed-selection-changed.html
71
72         * accessibility/gtk/AXObjectCacheAtk.cpp:
73         (WebCore::getListObject): New, return the right list object for
74         menu lists and list boxes.
75         (WebCore::notifyChildrenSelectionChange): Support menu lists.
76         (WebCore::AXObjectCache::postPlatformNotification): Call function
77         notifyChildrenSelectionChange for AXMenuListValueChanged.
78
79 2011-02-22  Andras Becsi  <abecsi@webkit.org>
80
81         Reviewed by Laszlo Gombos.
82
83         [Qt] Redesign the build system
84         https://bugs.webkit.org/show_bug.cgi?id=51339
85
86         Part 2.
87
88         Build WebCore as a static library, compile the WebKit API and WebKit2 API
89         in a final step and link to WebKit2, WebCore and JSC libraries to fix
90         linking issues resulting from stripped away symbols.
91
92         No new tests needed.
93
94         * WebCore.pri: Add needed rules for handling the static library.
95         * WebCore.pro: Reorganize API and linker options to QtWebKit.pro.
96
97 2011-02-22  Pavel Podivilov  <podivilov@chromium.org>
98
99         Reviewed by Pavel Feldman.
100
101         Web Inspector: [REGRESSION] navigation does not work when inspector is opened.
102         https://bugs.webkit.org/show_bug.cgi?id=54947
103
104         * inspector/InspectorAgent.cpp:
105         (WebCore::InspectorAgent::restoreInspectorStateFromCookie):
106         * inspector/InspectorState.cpp:
107         (WebCore::InspectorState::loadFromCookie):
108         * inspector/InspectorState.h:
109
110 2011-02-15  Jer Noble  <jer.noble@apple.com>
111
112         Reviewed by Darin Adler.
113
114         Built-in HTML5 <audio> (and sometimes <video>) UI doesn't update playhead location or time displays
115         https://bugs.webkit.org/show_bug.cgi?id=46142
116
117         Push a LayoutStateMaintainer in RenderMedia::layout() before calling layout() on the
118         container elements.  This is necessary because, during layout(), the child renderers
119         query the current LayoutState to determine where they will be repainting.  If a new
120         LayoutState is not pushed here, child renderers will attempt to repaint relative to
121         their grandparent's origin instead of their parents', and repaint operations will fail.
122
123         * rendering/RenderMedia.cpp:
124         (WebCore::RenderMedia::layout):
125
126 2011-02-22  Benjamin Poulain  <benjamin.poulain@nokia.com>
127
128         Reviewed by Kenneth Rohde Christiansen.
129
130         Cleaning: remove a overzealous check for the pointer "files" from Chrome::setToolTip()
131         https://bugs.webkit.org/show_bug.cgi?id=54952
132
133         Remove the unnecessary condition from the if(), HTMLInputElement::files() always return
134         a valid reference for the input type FileInputType. 
135
136         * page/Chrome.cpp:
137         (WebCore::Chrome::setToolTip):
138
139 2011-02-22  Philippe Normand  <pnormand@igalia.com>
140
141         Reviewed by Xan Lopez.
142
143         [GTK] make distcheck fails
144         https://bugs.webkit.org/show_bug.cgi?id=54943
145
146         Added new headers and removed references to deleted files.
147
148         * GNUmakefile.am:
149
150 2011-02-21  Yury Semikhatsky  <yurys@chromium.org>
151
152         Reviewed by Pavel Feldman.
153
154         Web Inspector: make DOM storage and Database agents have the same lifetime as InspectorAgent
155         https://bugs.webkit.org/show_bug.cgi?id=54891
156
157         * inspector/InspectorAgent.cpp:
158         (WebCore::InspectorAgent::InspectorAgent):
159         (WebCore::InspectorAgent::setFrontend):
160         (WebCore::InspectorAgent::disconnectFrontend):
161         (WebCore::InspectorAgent::createFrontendLifetimeAgents):
162         (WebCore::InspectorAgent::releaseFrontendLifetimeAgents):
163         (WebCore::InspectorAgent::didCommitLoad):
164         * inspector/InspectorAgent.h:
165         (WebCore::InspectorAgent::instrumentingAgents):
166         * inspector/InspectorDOMStorageAgent.cpp:
167         (WebCore::InspectorDOMStorageAgent::InspectorDOMStorageAgent):
168         (WebCore::InspectorDOMStorageAgent::~InspectorDOMStorageAgent):
169         (WebCore::InspectorDOMStorageAgent::setFrontend):
170         (WebCore::InspectorDOMStorageAgent::clearFrontend):
171         (WebCore::InspectorDOMStorageAgent::selectDOMStorage):
172         (WebCore::InspectorDOMStorageAgent::getDOMStorageResourceForId):
173         (WebCore::InspectorDOMStorageAgent::didUseDOMStorage):
174         (WebCore::InspectorDOMStorageAgent::clearResources):
175         * inspector/InspectorDOMStorageAgent.h:
176         (WebCore::InspectorDOMStorageAgent::create):
177         * inspector/InspectorDatabaseAgent.cpp:
178         (WebCore::InspectorDatabaseAgent::didOpenDatabase):
179         (WebCore::InspectorDatabaseAgent::clearResources):
180         (WebCore::InspectorDatabaseAgent::InspectorDatabaseAgent):
181         (WebCore::InspectorDatabaseAgent::~InspectorDatabaseAgent):
182         (WebCore::InspectorDatabaseAgent::setFrontend):
183         (WebCore::InspectorDatabaseAgent::clearFrontend):
184         (WebCore::InspectorDatabaseAgent::databaseForId):
185         (WebCore::InspectorDatabaseAgent::selectDatabase):
186         * inspector/InspectorDatabaseAgent.h:
187         (WebCore::InspectorDatabaseAgent::create):
188         * inspector/InspectorInstrumentation.cpp:
189         (WebCore::InspectorInstrumentation::didOpenDatabaseImpl):
190         (WebCore::InspectorInstrumentation::didUseDOMStorageImpl):
191
192 2011-02-22  Andrey Kosyakov  <caseq@chromium.org>
193
194         Reviewed by Pavel Feldman.
195
196         Web Inspector: provide a button to expand inspector toolbar when not all panel buttons fit
197         https://bugs.webkit.org/show_bug.cgi?id=54671
198
199         - factored toolbar handling out of inspector.js
200         - added toolbar dropdown
201
202         * WebCore.gypi:
203         * WebCore.vcproj/WebCore.vcproj:
204         * inspector/front-end/ExtensionServer.js:
205         (WebInspector.ExtensionServer.prototype._onCreatePanel):
206         * inspector/front-end/Panel.js:
207         (WebInspector.Panel.prototype.get toolbarItem):
208         * inspector/front-end/Toolbar.js: Added.
209         (WebInspector.Toolbar):
210         (WebInspector.Toolbar.prototype.resize):
211         (WebInspector.Toolbar.prototype.addPanel):
212         (WebInspector.Toolbar.prototype._toolbarDragStart):
213         (WebInspector.Toolbar.prototype._toolbarDragEnd):
214         (WebInspector.Toolbar.prototype._toolbarDrag):
215         (WebInspector.Toolbar.prototype._onClose):
216         (WebInspector.Toolbar.prototype._setDropdownVisible):
217         (WebInspector.Toolbar.prototype._toggleDropdown):
218         (WebInspector.Toolbar.prototype._updateDropdownButtonAndHideDropdown):
219         (WebInspector.Toolbar.createPanelToolbarItem.onToolbarItemClicked):
220         (WebInspector.Toolbar.createPanelToolbarItem):
221         (WebInspector.ToolbarDropdown):
222         (WebInspector.ToolbarDropdown.prototype.show):
223         (WebInspector.ToolbarDropdown.prototype.hide):
224         (WebInspector.ToolbarDropdown.prototype.get visible):
225         (WebInspector.ToolbarDropdown.prototype._populate):
226         (WebInspector.ToolbarDropdown.prototype._onKeyDown):
227         * inspector/front-end/WebKit.qrc:
228         * inspector/front-end/inspector.css:
229         (#toolbar):
230         (.toolbar-item):
231         (.toolbar-item.toggleable):
232         (.toolbar-item.toggleable.toggled-on):
233         (#toolbar-dropdown .toolbar-icon):
234         (#toolbar-dropdown .toolbar-label):
235         (#toolbar-controls):
236         (#toolbar-dropdown-arrow):
237         (body.attached #toolbar-dropdown-arrow):
238         (#toolbar-dropdown-arrow.dropdown-visible):
239         (#toolbar-dropdown-arrow:hover):
240         (#toolbar-dropdown-arrow:active):
241         (#toolbar-dropdown):
242         (body.detached.platform-mac-snowleopard #toolbar-dropdown):
243         (#toolbar-dropdown .scrollable-content):
244         (#toolbar-dropdown .toolbar-item):
245         (#toolbar-dropdown .toolbar-item.toggleable.toggled-on):
246         (#toolbar-dropdown .toolbar-item:hover):
247         (#toolbar-dropdown .toolbar-item.toggleable.toggled-on:hover):
248         (#toolbar-dropdown .toolbar-item:active .toolbar-icon):
249         (.scrollable-content):
250         (.scrollable-content::-webkit-scrollbar):
251         (.scrollable-content::-webkit-resizer):
252         (.scrollable-content::-webkit-scrollbar-thumb:vertical):
253         (.scrollable-content::-webkit-scrollbar-thumb:vertical:active):
254         (.scrollable-content::-webkit-scrollbar-track:vertical):
255         (.toolbar-search-item):
256         (#search):
257         (body.attached #search):
258         (#search-results-matches):
259         (#close-button-left, #close-button-right):
260         (.close-left):
261         * inspector/front-end/inspector.html:
262         * inspector/front-end/inspector.js:
263         (WebInspector.set attached):
264         (WebInspector.addPanel):
265         (WebInspector.windowResize):
266
267 2011-02-22  Philippe Normand  <pnormand@igalia.com>
268
269         Reviewed by Xan Lopez.
270
271         [GTK] make distcheck fails
272         https://bugs.webkit.org/show_bug.cgi?id=54943
273
274         Added new headers and removed references to deleted files.
275
276         * GNUmakefile.am:
277
278 2011-02-21  Yury Semikhatsky  <yurys@chromium.org>
279
280         Reviewed by Pavel Feldman.
281
282         Web Inspector: make DOM storage and Database agents have the same lifetime as InspectorAgent
283         https://bugs.webkit.org/show_bug.cgi?id=54891
284
285         * inspector/InspectorAgent.cpp:
286         (WebCore::InspectorAgent::InspectorAgent):
287         (WebCore::InspectorAgent::setFrontend):
288         (WebCore::InspectorAgent::disconnectFrontend):
289         (WebCore::InspectorAgent::createFrontendLifetimeAgents):
290         (WebCore::InspectorAgent::releaseFrontendLifetimeAgents):
291         (WebCore::InspectorAgent::didCommitLoad):
292         * inspector/InspectorAgent.h:
293         (WebCore::InspectorAgent::instrumentingAgents):
294         * inspector/InspectorDOMStorageAgent.cpp:
295         (WebCore::InspectorDOMStorageAgent::InspectorDOMStorageAgent):
296         (WebCore::InspectorDOMStorageAgent::~InspectorDOMStorageAgent):
297         (WebCore::InspectorDOMStorageAgent::setFrontend):
298         (WebCore::InspectorDOMStorageAgent::clearFrontend):
299         (WebCore::InspectorDOMStorageAgent::selectDOMStorage):
300         (WebCore::InspectorDOMStorageAgent::getDOMStorageResourceForId):
301         (WebCore::InspectorDOMStorageAgent::didUseDOMStorage):
302         (WebCore::InspectorDOMStorageAgent::clearResources):
303         * inspector/InspectorDOMStorageAgent.h:
304         (WebCore::InspectorDOMStorageAgent::create):
305         * inspector/InspectorDatabaseAgent.cpp:
306         (WebCore::InspectorDatabaseAgent::didOpenDatabase):
307         (WebCore::InspectorDatabaseAgent::clearResources):
308         (WebCore::InspectorDatabaseAgent::InspectorDatabaseAgent):
309         (WebCore::InspectorDatabaseAgent::~InspectorDatabaseAgent):
310         (WebCore::InspectorDatabaseAgent::setFrontend):
311         (WebCore::InspectorDatabaseAgent::clearFrontend):
312         (WebCore::InspectorDatabaseAgent::databaseForId):
313         (WebCore::InspectorDatabaseAgent::selectDatabase):
314         * inspector/InspectorDatabaseAgent.h:
315         (WebCore::InspectorDatabaseAgent::create):
316         * inspector/InspectorInstrumentation.cpp:
317         (WebCore::InspectorInstrumentation::didOpenDatabaseImpl):
318         (WebCore::InspectorInstrumentation::didUseDOMStorageImpl):
319
320 2011-02-21  Pavel Podivilov  <podivilov@chromium.org>
321
322         Reviewed by Pavel Feldman.
323
324         Web Inspector: extract source mapping from SourceFrame to DebuggerPresentationModel.
325         https://bugs.webkit.org/show_bug.cgi?id=54645
326
327         This is needed to map one script to several source files.
328
329         Test: inspector/debugger/source-frame.html
330
331         * WebCore.gypi:
332         * WebCore.vcproj/WebCore.vcproj:
333         * inspector/front-end/DebuggerPresentationModel.js: Added.
334         (WebInspector.DebuggerPresentationModel):
335         (WebInspector.DebuggerPresentationModel.prototype.breakpointsForSourceName):
336         (WebInspector.DebuggerPresentationModel.prototype._breakpointAdded):
337         (WebInspector.DebuggerPresentationModel.prototype._breakpointRemoved):
338         (WebInspector.DebuggerPresentationModel.prototype._breakpointResolved):
339         (WebInspector.DebuggerPresentationModel.prototype._encodeSourceLocation):
340         (WebInspector.DebuggerPresentationModel.prototype._actualLocationToSourceLocation):
341         * inspector/front-end/ScriptsPanel.js:
342         (WebInspector.ScriptsPanel):
343         (WebInspector.ScriptsPanel.prototype._breakpointAdded):
344         (WebInspector.ScriptsPanel.prototype._breakpointRemoved):
345         (WebInspector.ScriptsPanel.prototype._sourceFrameForResource):
346         (WebInspector.ScriptsPanel.prototype._sourceFrameForScript):
347         (WebInspector.ScriptsPanel.prototype._addSourceFrame):
348         (WebInspector.ScriptsPanel.prototype._removeSourceFrame):
349         (WebInspector.ScriptsPanel.prototype._sourceFrameLoaded):
350         (WebInspector.ScriptsPanel.prototype._clearCurrentExecutionLine):
351         (WebInspector.ScriptsPanel.prototype._callFrameSelected):
352         (WebInspector.SourceFrameContentProviderForScript.prototype._buildSource):
353         * inspector/front-end/SourceFrame.js:
354         (WebInspector.SourceFrame.prototype.get loaded):
355         (WebInspector.SourceFrame.prototype._createTextViewer):
356         (WebInspector.SourceFrame.prototype._setTextViewerDecorations):
357         (WebInspector.SourceFrame.prototype.setExecutionLine):
358         (WebInspector.SourceFrame.prototype.clearExecutionLine):
359         (WebInspector.SourceFrame.prototype.addBreakpoint):
360         (WebInspector.SourceFrame.prototype.removeBreakpoint):
361         (WebInspector.SourceFrame.prototype._contextMenu.addConditionalBreakpoint.didEditBreakpointCondition):
362         (WebInspector.SourceFrame.prototype._contextMenu.addConditionalBreakpoint):
363         (WebInspector.SourceFrame.prototype._findBreakpoint.filter):
364         (WebInspector.SourceFrame.prototype._findBreakpoint):
365         * inspector/front-end/WebKit.qrc:
366         * inspector/front-end/inspector.html:
367
368 2011-02-22  Philippe Normand  <pnormand@igalia.com>
369
370         Reviewed by Xan Lopez.
371
372         [GTK] make distcheck fails
373         https://bugs.webkit.org/show_bug.cgi?id=54943
374
375         Added new headers and removed references to deleted files.
376
377         * GNUmakefile.am:
378
379 2011-02-21  Yury Semikhatsky  <yurys@chromium.org>
380
381         Reviewed by Pavel Feldman.
382
383         Web Inspector: make DOM storage and Database agents have the same lifetime as InspectorAgent
384         https://bugs.webkit.org/show_bug.cgi?id=54891
385
386         * inspector/InspectorAgent.cpp:
387         (WebCore::InspectorAgent::InspectorAgent):
388         (WebCore::InspectorAgent::setFrontend):
389         (WebCore::InspectorAgent::disconnectFrontend):
390         (WebCore::InspectorAgent::createFrontendLifetimeAgents):
391         (WebCore::InspectorAgent::releaseFrontendLifetimeAgents):
392         (WebCore::InspectorAgent::didCommitLoad):
393         * inspector/InspectorAgent.h:
394         (WebCore::InspectorAgent::instrumentingAgents):
395         * inspector/InspectorDOMStorageAgent.cpp:
396         (WebCore::InspectorDOMStorageAgent::InspectorDOMStorageAgent):
397         (WebCore::InspectorDOMStorageAgent::~InspectorDOMStorageAgent):
398         (WebCore::InspectorDOMStorageAgent::setFrontend):
399         (WebCore::InspectorDOMStorageAgent::clearFrontend):
400         (WebCore::InspectorDOMStorageAgent::selectDOMStorage):
401         (WebCore::InspectorDOMStorageAgent::getDOMStorageResourceForId):
402         (WebCore::InspectorDOMStorageAgent::didUseDOMStorage):
403         (WebCore::InspectorDOMStorageAgent::clearResources):
404         * inspector/InspectorDOMStorageAgent.h:
405         (WebCore::InspectorDOMStorageAgent::create):
406         * inspector/InspectorDatabaseAgent.cpp:
407         (WebCore::InspectorDatabaseAgent::didOpenDatabase):
408         (WebCore::InspectorDatabaseAgent::clearResources):
409         (WebCore::InspectorDatabaseAgent::InspectorDatabaseAgent):
410         (WebCore::InspectorDatabaseAgent::~InspectorDatabaseAgent):
411         (WebCore::InspectorDatabaseAgent::setFrontend):
412         (WebCore::InspectorDatabaseAgent::clearFrontend):
413         (WebCore::InspectorDatabaseAgent::databaseForId):
414         (WebCore::InspectorDatabaseAgent::selectDatabase):
415         * inspector/InspectorDatabaseAgent.h:
416         (WebCore::InspectorDatabaseAgent::create):
417         * inspector/InspectorInstrumentation.cpp:
418         (WebCore::InspectorInstrumentation::didOpenDatabaseImpl):
419         (WebCore::InspectorInstrumentation::didUseDOMStorageImpl):
420
421 2011-02-22  Andrey Kosyakov  <caseq@chromium.org>
422
423         Reviewed by Pavel Feldman.
424
425         Web Inspector: provide a button to expand inspector toolbar when not all panel buttons fit
426         https://bugs.webkit.org/show_bug.cgi?id=54671
427
428         - factored toolbar handling out of inspector.js
429         - added toolbar dropdown
430
431         * WebCore.gypi:
432         * WebCore.vcproj/WebCore.vcproj:
433         * inspector/front-end/ExtensionServer.js:
434         (WebInspector.ExtensionServer.prototype._onCreatePanel):
435         * inspector/front-end/Panel.js:
436         (WebInspector.Panel.prototype.get toolbarItem):
437         * inspector/front-end/Toolbar.js: Added.
438         (WebInspector.Toolbar):
439         (WebInspector.Toolbar.prototype.resize):
440         (WebInspector.Toolbar.prototype.addPanel):
441         (WebInspector.Toolbar.prototype._toolbarDragStart):
442         (WebInspector.Toolbar.prototype._toolbarDragEnd):
443         (WebInspector.Toolbar.prototype._toolbarDrag):
444         (WebInspector.Toolbar.prototype._onClose):
445         (WebInspector.Toolbar.prototype._setDropdownVisible):
446         (WebInspector.Toolbar.prototype._toggleDropdown):
447         (WebInspector.Toolbar.prototype._updateDropdownButtonAndHideDropdown):
448         (WebInspector.Toolbar.createPanelToolbarItem.onToolbarItemClicked):
449         (WebInspector.Toolbar.createPanelToolbarItem):
450         (WebInspector.ToolbarDropdown):
451         (WebInspector.ToolbarDropdown.prototype.show):
452         (WebInspector.ToolbarDropdown.prototype.hide):
453         (WebInspector.ToolbarDropdown.prototype.get visible):
454         (WebInspector.ToolbarDropdown.prototype._populate):
455         (WebInspector.ToolbarDropdown.prototype._onKeyDown):
456         * inspector/front-end/WebKit.qrc:
457         * inspector/front-end/inspector.css:
458         (#toolbar):
459         (.toolbar-item):
460         (.toolbar-item.toggleable):
461         (.toolbar-item.toggleable.toggled-on):
462         (#toolbar-dropdown .toolbar-icon):
463         (#toolbar-dropdown .toolbar-label):
464         (#toolbar-controls):
465         (#toolbar-dropdown-arrow):
466         (body.attached #toolbar-dropdown-arrow):
467         (#toolbar-dropdown-arrow.dropdown-visible):
468         (#toolbar-dropdown-arrow:hover):
469         (#toolbar-dropdown-arrow:active):
470         (#toolbar-dropdown):
471         (body.detached.platform-mac-snowleopard #toolbar-dropdown):
472         (#toolbar-dropdown .scrollable-content):
473         (#toolbar-dropdown .toolbar-item):
474         (#toolbar-dropdown .toolbar-item.toggleable.toggled-on):
475         (#toolbar-dropdown .toolbar-item:hover):
476         (#toolbar-dropdown .toolbar-item.toggleable.toggled-on:hover):
477         (#toolbar-dropdown .toolbar-item:active .toolbar-icon):
478         (.scrollable-content):
479         (.scrollable-content::-webkit-scrollbar):
480         (.scrollable-content::-webkit-resizer):
481         (.scrollable-content::-webkit-scrollbar-thumb:vertical):
482         (.scrollable-content::-webkit-scrollbar-thumb:vertical:active):
483         (.scrollable-content::-webkit-scrollbar-track:vertical):
484         (.toolbar-search-item):
485         (#search):
486         (body.attached #search):
487         (#search-results-matches):
488         (#close-button-left, #close-button-right):
489         (.close-left):
490         * inspector/front-end/inspector.html:
491         * inspector/front-end/inspector.js:
492         (WebInspector.set attached):
493         (WebInspector.addPanel):
494         (WebInspector.windowResize):
495
496 2011-02-22  Philippe Normand  <pnormand@igalia.com>
497
498         Reviewed by Xan Lopez.
499
500         [GTK] make distcheck fails
501         https://bugs.webkit.org/show_bug.cgi?id=54943
502
503         Added new headers and removed references to deleted files.
504
505         * GNUmakefile.am:
506
507 2011-02-21  Yury Semikhatsky  <yurys@chromium.org>
508
509         Reviewed by Pavel Feldman.
510
511         Web Inspector: make DOM storage and Database agents have the same lifetime as InspectorAgent
512         https://bugs.webkit.org/show_bug.cgi?id=54891
513
514         * inspector/InspectorAgent.cpp:
515         (WebCore::InspectorAgent::InspectorAgent):
516         (WebCore::InspectorAgent::setFrontend):
517         (WebCore::InspectorAgent::disconnectFrontend):
518         (WebCore::InspectorAgent::createFrontendLifetimeAgents):
519         (WebCore::InspectorAgent::releaseFrontendLifetimeAgents):
520         (WebCore::InspectorAgent::didCommitLoad):
521         * inspector/InspectorAgent.h:
522         (WebCore::InspectorAgent::instrumentingAgents):
523         * inspector/InspectorDOMStorageAgent.cpp:
524         (WebCore::InspectorDOMStorageAgent::InspectorDOMStorageAgent):
525         (WebCore::InspectorDOMStorageAgent::~InspectorDOMStorageAgent):
526         (WebCore::InspectorDOMStorageAgent::setFrontend):
527         (WebCore::InspectorDOMStorageAgent::clearFrontend):
528         (WebCore::InspectorDOMStorageAgent::selectDOMStorage):
529         (WebCore::InspectorDOMStorageAgent::getDOMStorageResourceForId):
530         (WebCore::InspectorDOMStorageAgent::didUseDOMStorage):
531         (WebCore::InspectorDOMStorageAgent::clearResources):
532         * inspector/InspectorDOMStorageAgent.h:
533         (WebCore::InspectorDOMStorageAgent::create):
534         * inspector/InspectorDatabaseAgent.cpp:
535         (WebCore::InspectorDatabaseAgent::didOpenDatabase):
536         (WebCore::InspectorDatabaseAgent::clearResources):
537         (WebCore::InspectorDatabaseAgent::InspectorDatabaseAgent):
538         (WebCore::InspectorDatabaseAgent::~InspectorDatabaseAgent):
539         (WebCore::InspectorDatabaseAgent::setFrontend):
540         (WebCore::InspectorDatabaseAgent::clearFrontend):
541         (WebCore::InspectorDatabaseAgent::databaseForId):
542         (WebCore::InspectorDatabaseAgent::selectDatabase):
543         * inspector/InspectorDatabaseAgent.h:
544         (WebCore::InspectorDatabaseAgent::create):
545         * inspector/InspectorInstrumentation.cpp:
546         (WebCore::InspectorInstrumentation::didOpenDatabaseImpl):
547         (WebCore::InspectorInstrumentation::didUseDOMStorageImpl):
548
549 2011-02-22  Steve Lacey  <sjl@chromium.org>
550
551         Reviewed by Darin Fisher.
552
553         Rename new media statistics apis to better names
554
555         https://bugs.webkit.org/show_bug.cgi?id=54784
556
557         * html/HTMLMediaElement.cpp:
558         (WebCore::HTMLMediaElement::webkitAudioDecodedByteCount):
559         (WebCore::HTMLMediaElement::webkitVideoDecodedByteCount):
560         * html/HTMLMediaElement.h:
561         * html/HTMLMediaElement.idl:
562         * html/HTMLVideoElement.cpp:
563         (WebCore::HTMLVideoElement::webkitDecodedFrameCount):
564         (WebCore::HTMLVideoElement::webkitDroppedFrameCount):
565         * html/HTMLVideoElement.h:
566         * html/HTMLVideoElement.idl:
567         * platform/graphics/MediaPlayer.cpp:
568         (WebCore::MediaPlayer::decodedFrameCount):
569         (WebCore::MediaPlayer::droppedFrameCount):
570         (WebCore::MediaPlayer::audioDecodedByteCount):
571         (WebCore::MediaPlayer::videoDecodedByteCount):
572         * platform/graphics/MediaPlayer.h:
573         * platform/graphics/MediaPlayerPrivate.h:
574         (WebCore::MediaPlayerPrivateInterface::decodedFrameCount):
575         (WebCore::MediaPlayerPrivateInterface::droppedFrameCount):
576         (WebCore::MediaPlayerPrivateInterface::audioDecodedByteCount):
577         (WebCore::MediaPlayerPrivateInterface::videoDecodedByteCount):
578
579 2011-02-21  Roland Steiner  <rolandsteiner@chromium.org>
580
581         Reviewed by Kent Tamura.
582
583         Bug 54435 - Simplify CSSStyleSelector::canShareStyleWithElement
584         https://bugs.webkit.org/show_bug.cgi?id=54435
585
586         Changed the function to a series of early-exit 'if's,
587         removed most temporary variables.
588
589         No new tests. (refactoring)
590
591         * css/CSSStyleSelector.cpp:
592         (WebCore::CSSStyleSelector::canShareStyleWithElement):
593
594 2011-02-21  Nico Weber  <thakis@chromium.org>
595
596         Reviewed by James Robinson.
597
598         [chromium] PopupContainer::show() confuses clang's -Woverloaded-virtual
599         https://bugs.webkit.org/show_bug.cgi?id=54923
600
601         Rename PopupContainer::show() to showInRect(), to make it obvious it's
602         not an override of ScrollView::show().
603
604         No intended functionality change.
605
606         * platform/chromium/PopupMenuChromium.cpp:
607         (WebCore::PopupContainer::showInRect):
608         (WebCore::PopupMenuChromium::show):
609         * platform/chromium/PopupMenuChromium.h:
610
611 2011-02-21  Julien Chaffraix  <jchaffraix@codeaurora.org>
612
613         Reviewed by Antti Koivisto.
614
615         Improve the local{SharedStyle,CousinList} algorithm
616         https://bugs.webkit.org/show_bug.cgi?id=45507
617
618         This change improves the algorithm to find shared styles: the old
619         algorithm would stop the search after the first cousin, even if
620         the search threshold is not met. As such, the algorithm would
621         systematically miss sharings across second cousins and beyond.
622         The new algorithm continues the search, as long as threshold is
623         not met. It also separates the threshold for sibling/cousins
624         search, from that on the levels of search, which is easier to
625         optimize.
626         The new algorithm finds up to 30% more sharings on some sites
627         (e.g. amazon.com and rakuten.co.jp) with no noticeable slowdown.
628
629         No new test, refactoring only.
630
631         * css/CSSStyleSelector.cpp:
632         (WebCore::CSSStyleSelector::locateCousinList):
633         (WebCore::CSSStyleSelector::locateSharedStyle):
634         While changing the algorithm, cleaned up the style of those 2 methods
635         (use early return, renamed some variables).
636
637         * css/CSSStyleSelector.h:
638
639 2011-02-21  Nico Weber  <thakis@chromium.org>
640
641         Reviewed by Adam Barth.
642
643         RenderTableCell::baselinePosition() confuses clang's -Woverloaded-virtual
644         https://bugs.webkit.org/show_bug.cgi?id=54922
645
646         RenderTableCell::baselinePosition() has the same name as a virtual
647         method in superclass RenderBlock. Rename the subclass method to make
648         it clear it's not an attempted override.
649
650         No intended functionality change.
651
652         * rendering/RenderTableCell.cpp:
653         (WebCore::RenderTableCell::cellBaselinePosition):
654         * rendering/RenderTableCell.h:
655         * rendering/RenderTableSection.cpp:
656         (WebCore::RenderTableSection::calcRowLogicalHeight):
657         (WebCore::RenderTableSection::layoutRows):
658
659 2011-02-21  Benjamin Kalman  <kalman@chromium.org>
660
661         Reviewed by Ryosuke Niwa.
662
663         Extending selection by a boundary granularity (LineBoundary/ParagraphBoundary/DocumentBoundary) sets incorrect
664         start/end of selection for RTL
665         https://bugs.webkit.org/show_bug.cgi?id=54724
666
667         On mac, the selection should always grow when extending by a boundary granularity (line/paragraph/document).
668         This is achieved by extending from the start for the "left" direction (e.g. pressing left arrow key), or
669         extending from the end when for the "right" direction (e.g. pressing right arrow key).
670
671         However, this has a bug for RTL text, which should actually extend from the *end* when extending left (since
672         direction is obviously reversed) and likewise extend from the start when extending right.
673
674         * editing/SelectionController.cpp:
675         (WebCore::SelectionController::modify):
676
677 2011-02-21  Nico Weber  <thakis@chromium.org>
678
679         Reviewed by Adam Barth.
680
681         ImageDocument::imageChanged() confuses clang's -Woverride-virtual
682         https://bugs.webkit.org/show_bug.cgi?id=54924
683
684         Rename ImageDocument::imageChanged() to imageUpdated() to make clear
685         that it's not an override of CachedResourceClient::imageChanged().
686
687         * html/ImageDocument.cpp:
688         (WebCore::ImageDocumentParser::appendBytes):
689         (WebCore::ImageDocumentParser::finish):
690         (WebCore::ImageDocument::imageUpdated):
691         * html/ImageDocument.h:
692
693 2011-02-21  Roland Steiner  <rolandsteiner@chromium.org>
694
695         Reviewed by Kent Tamura.
696
697         Bug 54934 - Sort the WebCore project file(s)
698         https://bugs.webkit.org/show_bug.cgi?id=54934
699
700         No new tests. (no code affected)
701
702         * GNUmakefile.am:
703         * WebCore.xcodeproj/project.pbxproj:
704
705 2011-02-21  Nico Weber  <thakis@chromium.org>
706
707         Reviewed by Adam Barth.
708
709         canAccommodateEllipsis() confuses clang's -Woverloaded-virtual
710         https://bugs.webkit.org/show_bug.cgi?id=54909
711
712         Rename the overload in RootInlineBox to lineCanAccomodateEllipsis() to
713         unconfuse clang. No intended functionality change.
714
715         * rendering/RenderBlockLineLayout.cpp:
716         (WebCore::RenderBlock::checkLinesForTextOverflow):
717         * rendering/RenderFlexibleBox.cpp:
718         (WebCore::RenderFlexibleBox::applyLineClamp):
719         * rendering/RootInlineBox.cpp:
720         (WebCore::RootInlineBox::lineCanAccommodateEllipsis):
721         * rendering/RootInlineBox.h:
722
723 2011-02-21  Adele Peterson  <adele@apple.com>
724
725         Reviewed by Dan Bernstein.
726
727         Fix for for https://bugs.webkit.org/show_bug.cgi?id=54402
728         REGRESSION (r72052): Placeholder text doesn't have the right padding for search fields on Windows
729
730         Test: updated fast/forms/placeholder-position.html and tested manually
731
732         Consider padding and margin for the results and cancel buttons.  This is important for the Windows 
733         theme which uses padding to correctly position those buttons.  This change fixes the placeholder 
734         position, and also better aligns the results popup list with the actual text you type.
735
736         * rendering/RenderTextControlSingleLine.cpp:
737         (WebCore::RenderTextControlSingleLine::clientPaddingLeft):
738         (WebCore::RenderTextControlSingleLine::clientPaddingRight):
739
740 2011-02-21  Nico Weber  <thakis@chromium.org>
741
742         Reviewed by Kent Tamura.
743
744         GIFImageDecoder::setSize() tries to override the superclass method but fails
745         https://bugs.webkit.org/show_bug.cgi?id=54305
746
747         The superclass uses unsigned instead of int for its parameters, so
748         GIFImageDecoder::setSize() was an overload, not an override.
749
750         * platform/image-decoders/gif/GIFImageDecoder.cpp:
751         (WebCore::GIFImageDecoder::setSize):
752         * platform/image-decoders/gif/GIFImageDecoder.h:
753
754 2011-02-21  Ryosuke Niwa  <rniwa@webkit.org>
755
756         Reviewed by Darin Adler.
757
758         Deploy EditingStyle more in ApplyStyleCommand and do some cleanup
759         https://bugs.webkit.org/show_bug.cgi?id=54528
760
761         * editing/ApplyStyleCommand.cpp:
762         (WebCore::StyleChange::init): Allows style to be a null pointer.
763         (WebCore::ApplyStyleCommand::applyInlineStyle): Overrides the value of text-decoration property by that of
764         -webkit-text-decorations-in-effect and remove the latter property when present. This allows removeImplicitlyStyledElement
765         to ignore -webkit-text-decorations-in-effect. Also uses the return value of EditingStyle::textDirection to determine
766         whether or not we need to apply unicode-bidi / direction instead of directly checking the value of unicode-bidi property.
767         (WebCore::ApplyStyleCommand::fixRangeAndApplyInlineStyle): Takes EditingStyle* instead of CSSMutableStyleDeclaration*.
768         (WebCore::ApplyStyleCommand::applyInlineStyleToNodeRange): Ditto.
769         (WebCore::ApplyStyleCommand::removeStyleFromRunBeforeApplyingStyle): Ditto.
770         (WebCore::ApplyStyleCommand::removeCSSStyle): Ditto.
771         (WebCore::ApplyStyleCommand::highestAncestorWithConflictingInlineStyle): Ditto.
772         (WebCore::ApplyStyleCommand::pushDownInlineStyleAroundNode): Ditto.
773         (WebCore::ApplyStyleCommand::removeInlineStyle): Ditto; no longer collapse text decoration properties because
774         ApplyStyleCommand::applyInlineStyle already does it.
775         * editing/ApplyStyleCommand.h:
776         * editing/EditingStyle.cpp:
777         (WebCore::EditingStyle::textDirection): Exits early when m_mutableStyle is null.
778         (WebCore::EditingStyle::collapseTextDecorationProperties): Extracted from ApplyStyleCommand::removeInlineStyle.
779         * editing/EditingStyle.h:
780
781 2011-02-21  Mark Rowe  <mrowe@apple.com>
782
783         Reviewed by Darin Adler and Alexey Proskuryakov.
784
785         <http://webkit.org/b/54919> / <rdar://problem/7689300> WebCore should retrieve unclamped frame delays from ImageIO
786
787         * platform/graphics/cg/ImageSourceCG.cpp:
788         (WebCore::ImageSource::frameDurationAtIndex): Look for the unclamped frame delay in the
789         frame properties dictionary and use that if it exists. If it does not exist in the
790         dictionary then fall back to using the clamped frame delay.
791
792 2011-02-21  James Kozianski  <koz@chromium.org>
793
794         Reviewed by Kent Tamura.
795
796         Causes elements to be unfocusable after tabindex property is removed.
797         https://bugs.webkit.org/show_bug.cgi?id=54727
798
799         Test: fast/html/tabindex-removal.html
800
801         * dom/Node.cpp:
802         (WebCore::Node::clearTabIndexExplicitly):
803         * dom/Node.h:
804         * dom/NodeRareData.h:
805         (WebCore::NodeRareData::clearTabIndexExplicitly):
806         * html/HTMLElement.cpp:
807         (WebCore::HTMLElement::parseMappedAttribute):
808
809 2011-02-21  Alexey Proskuryakov  <ap@apple.com>
810
811         Reviewed by Mark Rowe.
812
813         <rdar://problem/8995483> Remove stubs of unneeded NSURLAuthenticationChallengeSender methods
814
815         * platform/network/mac/AuthenticationMac.mm: Remove the stubs that are no longer needed.
816
817 2011-02-21  Sam Weinig  <sam@webkit.org>
818
819         Reviewed by Dan Bernstein.
820
821         Overhang areas need to be invalidated on scroll
822         <rdar://problem/9032194>
823         https://bugs.webkit.org/show_bug.cgi?id=54917
824
825         * platform/ScrollView.cpp:
826         (WebCore::ScrollView::scrollContents):
827         We need to explicitly invalidate the overhang areas when we scroll the contents
828         of a ScrollView, since they could contain arbitrary content that cannot be blitted.
829
830 2011-02-21  Lucas Forschler  <lforschler@apple.com>
831
832         Reviewed by Stephanie Lewis.
833
834         Fix the Leopard Debug build by incorporating the RenderSVGAllInOne.cpp
835
836         No new tests required.
837
838         * WebCore.xcodeproj/project.pbxproj:
839
840 2011-02-21  Pratik Solanki  <psolanki@apple.com>
841
842         Reviewed by Darin Adler.
843
844         Remove global initializer in CookieStorageCFNet.cpp
845         https://bugs.webkit.org/show_bug.cgi?id=54905
846
847         * platform/network/cf/CookieStorageCFNet.cpp:
848         (WebCore::currentCookieStorage):
849         (WebCore::setCurrentCookieStorage):
850         (WebCore::setCookieStoragePrivateBrowsingEnabled):
851
852 2011-02-18  Jer Noble  <jer.noble@apple.com>
853
854         Reviewed by Sam Weinig.
855
856         WebKit2: Media document videos play only sound, no video (affects trailers.apple.com)
857         https://bugs.webkit.org/show_bug.cgi?id=54771
858
859         Now that video is accelerated, we no longer need to special case
860         video playing within a media document.
861
862         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
863         (WebCore::MediaPlayerPrivateQTKit::preferredRenderingMode):
864         (WebCore::MediaPlayerPrivateQTKit::supportsAcceleratedRendering):
865
866 2011-02-21  Alexey Proskuryakov  <ap@apple.com>
867
868         Reviewed by Adam Roben.
869
870         REGRESSION (WebKit2): HTTP requests time out after 60 seconds
871         https://bugs.webkit.org/show_bug.cgi?id=54755
872         <rdar://problem/9006592>
873
874         No new tests - it won't be great to have a test that runs for a minute.
875
876         It's now possible to set a default timeout to be used at ResourceRequest creation. If one
877         hasn't been set, ResourceRequest will behave as before (use NSURLRequest default on Mac,
878         or use INT_MAX on other platforms).
879
880         * WebCore.exp.in:
881         * platform/network/ResourceRequestBase.cpp:
882         (WebCore::ResourceRequestBase::defaultTimeoutInterval): Get the ResourceRequest notion of
883         default timeout interval (may be 0 if using NSURLRequest default).
884         (WebCore::ResourceRequestBase::setDefaultTimeoutInterval): Set the static member variable.
885         (WebCore::ResourceRequestBase::updatePlatformRequest): Added an assertion that resource
886         request is updated. Plaform code often calls updateResourceRequest() indirectly from this
887         function, and that must obviously be a no-op.
888         (WebCore::ResourceRequestBase::updateResourceRequest): Added an assertion in the opposite
889         direction.
890         * platform/network/ResourceRequestBase.h: Changed "unspecifiedTimeoutInterval" to
891         "defaultTimeoutInterval". It has been used as default by most platforms anyway.
892         (WebCore::ResourceRequestBase::ResourceRequestBase):
893
894         * platform/network/mac/ResourceRequestMac.mm: (WebCore::ResourceRequest::doUpdatePlatformRequest):
895         Now zero is the magic value, not INT_MAX. We'll use NSURLRequest default if neither
896         setTimeoutInterval() nor setDefaultTimeoutInterval() has been called.
897
898 2011-02-21  Martin Robinson  <mrobinson@igalia.com>
899
900         Reviewed by Xan Lopez.
901
902         [GTK] editing/pasteboard/dataTransfer-setData-getData.html fails
903         https://bugs.webkit.org/show_bug.cgi?id=54895
904
905         Correct the GTK+ clipboard implementation to know that "text" is an alias
906         for "text/html" data. This corrects the failing test.
907
908         * platform/gtk/ClipboardGtk.cpp:
909         (WebCore::dataObjectTypeFromHTMLClipboardType): Accept "text" as well as "Text".
910         (WebCore::ClipboardGtk::types): Advertise "text" as well as "Text".
911
912 2011-02-21  Vsevolod Vlasov  <vsevik@chromium.org>
913
914         Reviewed by Pavel Feldman.
915
916         ProcessingInstruction should provide a way to know if it is of CSS type.
917         https://bugs.webkit.org/show_bug.cgi?id=54868
918
919         * dom/ProcessingInstruction.cpp:
920         (WebCore::ProcessingInstruction::ProcessingInstruction):
921         (WebCore::ProcessingInstruction::checkStyleSheet):
922         (WebCore::ProcessingInstruction::setCSSStyleSheet):
923         * dom/ProcessingInstruction.h:
924         (WebCore::ProcessingInstruction::isCSS):
925
926 2011-02-21  Simon Fraser  <simon.fraser@apple.com>
927
928         Put JSDOMImplementationCustom.cpp where it belongs in the project.
929
930         * WebCore.xcodeproj/project.pbxproj:
931
932 2011-02-21  Gavin Barraclough  <barraclough@apple.com>
933
934         Reviewed by Sam Weinig.
935
936         Bug 54894 - Make inheritance structure described by ClassInfo match C++ class hierarchy.
937
938         The ClassInfo objects describe an inheritance hierarchy, with each ClassInfo instance
939         containing a pointer to its parent class. These links should reflect the inheritance
940         hierarchy of C++ classes below JSObject. For the large part it does, but in some cases
941         entries in the C++ hierarchy are skipped over. This presently likely doesn't matter,
942         since intervening C++ classes may not have ClassInfo - but would be a potential bug
943         were ClassInfo were to be added.
944
945         * bindings/js/JSAudioConstructor.cpp:
946         * bindings/js/JSDOMGlobalObject.cpp:
947         * bindings/js/JSImageConstructor.cpp:
948         * bindings/js/JSOptionConstructor.cpp:
949         * bindings/scripts/CodeGeneratorJS.pm:
950         * bridge/objc/objc_runtime.mm:
951         * bridge/runtime_object.cpp:
952
953 2011-02-21  Pavel Feldman  <pfeldman@chromium.org>
954
955         Reviewed by Yury Semikhatsky.
956
957         Web Inspector: navigation does not work after reopening frontend.
958         https://bugs.webkit.org/show_bug.cgi?id=54879
959
960         Test: http/tests/inspector-enabled/open-close-open.html
961
962         * inspector/InspectorAgent.cpp:
963         (WebCore::InspectorAgent::setFrontend):
964         * inspector/InspectorState.cpp:
965         (WebCore::InspectorState::unmute):
966         * inspector/InspectorState.h:
967
968 2011-02-21  Adam Roben  <aroben@apple.com>
969
970         Protect the PluginView when evaluating javascript: URLs
971
972         Fixes <http://webkit.org/b/54884> <rdar://problem/9030864>
973         plugins/get-url-with-javascript-destroying-plugin.html crashing on Windows since it was
974         added
975
976         Reviewed by Sam Weinig.
977
978         * plugins/PluginView.cpp:
979         (WebCore::PluginView::performRequest): Protect the PluginView, not just its parent frame,
980         when evaluating javascript: URLs.
981
982 2011-02-21  Martin Robinson  <mrobinson@igalia.com>
983
984         Fix GTK+ build after r79223.
985
986         * GNUmakefile.am: Add file missing from the source list.
987
988 2011-02-14  Alexander Pavlov  <apavlov@chromium.org>
989
990         Reviewed by Yury Semikhatsky.
991
992         Web Inspector: audits should not warn about gzip compression for 304s
993         https://bugs.webkit.org/show_bug.cgi?id=54343
994
995         Do not run compression-related audits on 304 resources.
996         Drive-by: handle multi-encoding resources (Content-Encoding: sdhc,gzip) correctly.
997
998         * inspector/front-end/AuditRules.js:
999         (WebInspector.AuditRules.GzipRule.prototype.doRun):
1000         (WebInspector.AuditRules.GzipRule.prototype._isCompressed):
1001
1002 2011-02-08  Anton Muhin  <antonm@chromium.org>
1003
1004        Reviewed by Adam Barth and Alexey Proskuryakov.
1005
1006        Propagate security origin of parent document into HTML documents created with DOMImplementation
1007        https://bugs.webkit.org/show_bug.cgi?id=53611
1008
1009        This restores invariant that JS wrappers residing in the same JS context should come
1010        from the same security origin.
1011
1012        Absence of regressions is covered by the current tests.  Different security origin of
1013        DOMImplementation is difficult to check with layout tests as DOMImplementation
1014        resides in the same JS context as parent document and therefore there are no security origin checks.
1015        This is observable however in C++.
1016
1017        * Android.jscbindings.mk:
1018        * CMakeLists.txt:
1019        * WebCore.gypi:
1020        * WebCore.pro:
1021        * WebCore.vcproj/WebCore.vcproj:
1022        * WebCore.xcodeproj/project.pbxproj:
1023        * bindings/v8/V8GCController.cpp:
1024        (WebCore::NodeGrouperVisitor::visitDOMWrapper):
1025        * dom/DOMImplementation.cpp:
1026        (WebCore::DOMImplementation::DOMImplementation):
1027        (WebCore::DOMImplementation::createDocument):
1028        * dom/DOMImplementation.h:
1029        (WebCore::DOMImplementation::create):
1030        (WebCore::DOMImplementation::documentDestroyed):
1031        (WebCore::DOMImplementation::parentDocument):
1032        * dom/DOMImplementation.idl:
1033        * dom/Document.cpp:
1034        (WebCore::Document::~Document):
1035        (WebCore::Document::implementation):
1036        * dom/Document.h:
1037
1038 2011-02-21  Andrey Adaikin  <aandrey@google.com>
1039
1040         Reviewed by Pavel Feldman.
1041
1042         Web Inspector: [Text editor] Optimize editing updates in gutter panel
1043         https://bugs.webkit.org/show_bug.cgi?id=54866
1044
1045         * inspector/front-end/TextViewer.js:
1046         (WebInspector.TextViewer.prototype.set startEditingListener):
1047         (WebInspector.TextViewer.prototype.set endEditingListener):
1048         (WebInspector.TextViewer.prototype.endUpdates):
1049         (WebInspector.TextViewer.prototype._enterInternalTextChangeMode):
1050         (WebInspector.TextViewer.prototype._exitInternalTextChangeMode):
1051         (WebInspector.TextEditorChunkedPanel.prototype._chunkNumberForLine):
1052         (WebInspector.TextEditorGutterPanel.prototype._expandChunks):
1053         (WebInspector.TextEditorGutterPanel.prototype.textChanged):
1054         (WebInspector.TextEditorMainPanel.prototype._updateChunksForRanges):
1055
1056 2011-02-21  Alexander Pavlov  <apavlov@chromium.org>
1057
1058         Reviewed by Yury Semikhatsky.
1059
1060         Web Inspector: [Audits] Image dimensions in inline style not checked
1061         https://bugs.webkit.org/show_bug.cgi?id=54738
1062
1063         * inspector/front-end/AuditRules.js:
1064         (WebInspector.AuditRules.ImageDimensionsRule.prototype.doRun):
1065
1066 2011-02-21  Yury Semikhatsky  <yurys@chromium.org>
1067
1068         Reviewed by Pavel Feldman.
1069
1070         Web Inspector: create and destroy DOM agent along with InspectorAgent
1071         https://bugs.webkit.org/show_bug.cgi?id=54875
1072
1073         * GNUmakefile.am:
1074         * WebCore.gypi:
1075         * WebCore.pro:
1076         * WebCore.vcproj/WebCore.vcproj:
1077         * WebCore.xcodeproj/project.pbxproj:
1078         * inspector/InstrumentingAgents.h: Added. Agents that want to instrument WebCore should register themselve
1079         on this object.
1080         (WebCore::InstrumentingAgents::InstrumentingAgents):
1081         (WebCore::InstrumentingAgents::~InstrumentingAgents):
1082         (WebCore::InstrumentingAgents::inspectorBrowserDebuggerAgent):
1083         (WebCore::InstrumentingAgents::setInspectorBrowserDebuggerAgent):
1084         (WebCore::InstrumentingAgents::inspectorConsoleAgent):
1085         (WebCore::InstrumentingAgents::setInspectorConsoleAgent):
1086         (WebCore::InstrumentingAgents::inspectorDOMAgent):
1087         (WebCore::InstrumentingAgents::setInspectorDOMAgent):
1088         (WebCore::InstrumentingAgents::inspectorDOMStorageAgent):
1089         (WebCore::InstrumentingAgents::setInspectorDOMStorageAgent):
1090         (WebCore::InstrumentingAgents::inspectorDatabaseAgent):
1091         (WebCore::InstrumentingAgents::setInspectorDatabaseAgent):
1092         (WebCore::InstrumentingAgents::inspectorDebuggerAgent):
1093         (WebCore::InstrumentingAgents::setInspectorDebuggerAgent):
1094         (WebCore::InstrumentingAgents::inspectorProfilerAgent):
1095         (WebCore::InstrumentingAgents::setInspectorProfilerAgent):
1096         (WebCore::InstrumentingAgents::inspectorResourceAgent):
1097         (WebCore::InstrumentingAgents::setInspectorResourceAgent):
1098         (WebCore::InstrumentingAgents::inspectorRuntimeAgent):
1099         (WebCore::InstrumentingAgents::setInspectorRuntimeAgent):
1100         (WebCore::InstrumentingAgents::inspectorStorageAgent):
1101         (WebCore::InstrumentingAgents::setInspectorStorageAgent):
1102         (WebCore::InstrumentingAgents::inspectorTimelineAgent):
1103         (WebCore::InstrumentingAgents::setInspectorTimelineAgent):
1104         * inspector/InspectorAgent.cpp:
1105         (WebCore::InspectorAgent::InspectorAgent):
1106         (WebCore::InspectorAgent::setFrontend):
1107         (WebCore::InspectorAgent::disconnectFrontend):
1108         (WebCore::InspectorAgent::createFrontendLifetimeAgents):
1109         (WebCore::InspectorAgent::releaseFrontendLifetimeAgents):
1110         (WebCore::InspectorAgent::didCommitLoad):
1111         (WebCore::InspectorAgent::domContentLoadedEventFired):
1112         (WebCore::InspectorAgent::loadEventFired):
1113         * inspector/InspectorAgent.h:
1114         * inspector/InspectorCSSAgent.cpp:
1115         (WebCore::InspectorCSSAgent::InspectorCSSAgent):
1116         (WebCore::InspectorCSSAgent::~InspectorCSSAgent):
1117         * inspector/InspectorCSSAgent.h:
1118         * inspector/InspectorConsoleAgent.cpp:
1119         (WebCore::InspectorConsoleAgent::InspectorConsoleAgent):
1120         (WebCore::InspectorConsoleAgent::~InspectorConsoleAgent):
1121         (WebCore::InspectorConsoleAgent::clearConsoleMessages):
1122         (WebCore::InspectorConsoleAgent::clearFrontend):
1123         (WebCore::InspectorConsoleAgent::resourceRetrievedByXMLHttpRequest):
1124         (WebCore::InspectorConsoleAgent::setMonitoringXHREnabled):
1125         (WebCore::InspectorConsoleAgent::setConsoleMessagesEnabled):
1126         (WebCore::InspectorConsoleAgent::addConsoleMessage):
1127         * inspector/InspectorConsoleAgent.h:
1128         * inspector/InspectorDOMAgent.cpp: DOM agent now lives even when the front-end is not attached.
1129         (WebCore::InspectorDOMAgent::InspectorDOMAgent):
1130         (WebCore::InspectorDOMAgent::setFrontend): Add DOM agent to the set of active agents when the front-end
1131         is attached.
1132         (WebCore::InspectorDOMAgent::clearFrontend):
1133         * inspector/InspectorDOMAgent.h:
1134         (WebCore::InspectorDOMAgent::create):
1135
1136 2011-02-21  Csaba Osztrogonác  <ossy@webkit.org>
1137
1138         Reviewed by Andreas Kling.
1139
1140         [Qt][V8]REGRESSION(r79157): Fix build
1141         https://bugs.webkit.org/show_bug.cgi?id=54871
1142
1143         * bridge/npruntime_internal.h: Add one more undef because of evil X11 macro.
1144
1145 2011-02-16  Vitaly Repeshko  <vitalyr@chromium.org>
1146
1147         Reviewed by Mihai Parparita.
1148
1149         [V8] SerializedScriptValue: fix JS exception handling.
1150         https://bugs.webkit.org/show_bug.cgi?id=54555
1151
1152         Added checks for exceptions and empty handles:
1153         * bindings/v8/SerializedScriptValue.cpp:
1154         (WebCore::Serializer::Serializer):
1155         (WebCore::Serializer::serialize):
1156         (WebCore::Serializer::checkException):
1157         (WebCore::Serializer::reportFailure):
1158         (WebCore::Serializer::ArrayState::advance):
1159         (WebCore::Serializer::AbstractObjectState::AbstractObjectState):
1160         (WebCore::Serializer::AbstractObjectState::advance):
1161         (WebCore::Serializer::push):
1162         (WebCore::Serializer::handleError):
1163         (WebCore::Serializer::newObjectState):
1164         (WebCore::Serializer::doSerialize):
1165         (WebCore::SerializedScriptValue::SerializedScriptValue):
1166
1167 2011-02-21  Ryosuke Niwa  <rniwa@webkit.org>
1168
1169         Reviewed by Kent Tamura.
1170
1171         Add selectionchange event
1172         https://bugs.webkit.org/show_bug.cgi?id=45712
1173
1174         Added the support for asynchronous selectionchange event, which is fired whenever selection is changed.
1175         This event is not cancelable and does not bubble. An event listener can be attached to a document by
1176         body element's onselectionchange attribute or via document's onselectionchange property.
1177
1178         Note that WebKit's implementation fires the event asynchronously whereas Internet Explorer's implementation
1179         fires it synchronously. This implies that a script that modify selection (e.g. via selection's addRange)
1180         will not observe the event before the control returns to JavaScript.
1181
1182         See also: http://msdn.microsoft.com/en-us/library/ms536968(VS.85).aspx
1183
1184         Tests: fast/events/selectionchange-iframe.html
1185                fast/events/selectionchange-user-initiated.html
1186
1187         * dom/Document.cpp:
1188         (WebCore::Document::enqueueDocumentEvent): Added.
1189         * dom/Document.h: Added selectionchange event listener.
1190         * dom/Document.idl: Added onselectionchagne attribute.
1191         * dom/EventNames.h: Added selectionchange
1192         * editing/SelectionController.cpp:
1193         (WebCore::SelectionController::setSelection): Fires selectionchange event.
1194         * html/HTMLAttributeNames.in: Added onselectionchange.
1195         * html/HTMLBodyElement.cpp:
1196         (WebCore::HTMLBodyElement::parseMappedAttribute): Handles onselectionchange attribute.
1197
1198 2011-02-21  Ilya Tikhonovsky  <loislo@chromium.org>
1199
1200         Reviewed by Pavel Feldman.
1201
1202         Web Inspector: protocol error messages are dumping incorrectly in Layout tests.
1203         https://bugs.webkit.org/show_bug.cgi?id=54859
1204
1205         * inspector/CodeGeneratorInspector.pm:
1206
1207 2011-02-21  Pavel Feldman  <pfeldman@chromium.org>
1208
1209         Reviewed by Yury Semikhatsky.
1210
1211         Web Inspector: generate protocol documentation based on IDL.
1212         https://bugs.webkit.org/show_bug.cgi?id=54822
1213
1214         * inspector/CodeGeneratorInspector.pm:
1215
1216 2011-02-21  Andoni Morales Alastruey  <amorales@flumotion.com>
1217
1218         Reviewed by Martin Robinson.
1219
1220         [GStreamer] Add URI queries support in webkitwebsrc
1221         https://bugs.webkit.org/show_bug.cgi?id=54627
1222
1223         This allow replying to URI queries from downstream elements
1224         with the uri currently set in the source element.
1225
1226         No new tests, this feature is dedicated to internal GStreamer use,
1227         such as the upcoming HTTP Live Streaming element.
1228
1229         * platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
1230         (webKitWebSrcQuery):
1231
1232 2011-02-21  Andoni Morales Alastruey  <amorales@flumotion.com>
1233
1234         Reviewed by Martin Robinson.
1235
1236         [GStreamer] Add 'location' property in webkitwebsrc
1237         https://bugs.webkit.org/show_bug.cgi?id=54628
1238
1239         No new tests, this feature is dedicated to internal GStreamer use,
1240         such as the upcoming HTTP Live Streaming element.
1241
1242         * platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
1243         (webkit_web_src_class_init):
1244         (webKitWebSrcSetProperty):
1245         (webKitWebSrcGetProperty):
1246
1247 2011-02-17  Ryosuke Niwa  <rniwa@webkit.org>
1248
1249         Reviewed by Kent Tamura.
1250
1251         Rename Position::node() to Position::deprecatedNode()
1252         https://bugs.webkit.org/show_bug.cgi?id=54622
1253
1254         Done the rename. All calls to node() are replaced by calls to deprecatedNode() except when
1255         calls were of the form node()->document() and node()->inDocument() in which case they were
1256         replaced by anchorNode()->document() and anchorNode()->inDocument() respectively.
1257
1258         * WebCore.exp.in: Added Position::containerNode.
1259
1260         The rest abbreviated for simplicity. Please see svn log.
1261
1262 2011-02-20  Gavin Barraclough  <barraclough@apple.com>
1263
1264         Build fix (remove includes).
1265
1266         * bindings/js/JSDOMBinding.cpp:
1267         * bindings/js/JSDOMWindowCustom.cpp:
1268         * bindings/js/JSHistoryCustom.cpp:
1269         * bindings/js/JSLocationCustom.cpp:
1270
1271 2011-02-20  Gavin Barraclough  <barraclough@apple.com>
1272
1273         Reviewed by Oliver Hunt.
1274
1275         https://bugs.webkit.org/show_bug.cgi?id=54839
1276         Remove PrototypeFunction, NativeFunctionWrapper, and GlobalEvalFunction.
1277
1278         Historically, Native functions used to be represented by PrototypeFunctions, however
1279         since introducing call optimizations to the JIT this has used JSFunctions for host
1280         calls too. At the point this change was made, the interpreter continued to use
1281         PrototypeFunctions, however since fallback from the JIT to interpreter was introduced
1282         the interpreter has had to be able to run using host functions represented using
1283         JSFunctions - leading to an unnecessary and redundant divergence in behaviour between 
1284         interpreter only builds, and situations where the JIT has fallen back to interpreting.
1285
1286         NativeFunctionWrapper only existed to select between PrototypeFunction and JSFunction
1287         for wrappers for host functions, and as such can also be removed.
1288
1289         GlobalEvalFunction is a redundant wrapper that happens to be derived from
1290         PrototypeFunction. It existed to hold a reference to the global object - but since all
1291         functions how derive from JSObjectWithGlobalObject, this no longer requires an
1292         additional class to provide this functionality.
1293
1294         * bindings/js/JSDOMBinding.cpp:
1295         * bindings/js/JSDOMWindowCustom.cpp:
1296         * bindings/js/JSHistoryCustom.cpp:
1297         * bindings/js/JSLocationCustom.cpp:
1298             Removed use of redundant classes.
1299
1300 2011-02-20  Sheriff Bot  <webkit.review.bot@gmail.com>
1301
1302         Unreviewed, rolling out r79169.
1303         http://trac.webkit.org/changeset/79169
1304         https://bugs.webkit.org/show_bug.cgi?id=54846
1305
1306         Made unexpected results for tests without CJK characters
1307         (Requested by tkent on #webkit).
1308
1309         * platform/graphics/chromium/FontCacheChromiumWin.cpp:
1310         (WebCore::FontCache::createFontPlatformData):
1311         * platform/graphics/chromium/FontPlatformDataChromiumWin.cpp:
1312         (WebCore::FontPlatformData::FontPlatformData):
1313         (WebCore::FontPlatformData::operator=):
1314         * platform/graphics/chromium/FontPlatformDataChromiumWin.h:
1315         (WebCore::FontPlatformData::orientation):
1316         * platform/graphics/skia/FontCustomPlatformData.cpp:
1317         (WebCore::FontCustomPlatformData::fontPlatformData):
1318
1319 2011-02-20  Chun-Lung Huang  <alvincl.huang@gmail.com>
1320
1321         Reviewed by Kent Tamura.
1322
1323         On Chromium Windows, glyphs in vertical text tests are rotated 90
1324         degrees clockwise. https://bugs.webkit.org/show_bug.cgi?id=51450
1325
1326         This platform dependent patch makes Chromium Windows show the
1327         vertical writing text correctly. Job was done by adding a prefix '@'
1328         in front of the font family name (Windows Only). No new tests added.
1329
1330         * platform/graphics/chromium/FontCacheChromiumWin.cpp:
1331         (WebCore::FontCache::createFontPlatformData):
1332         * platform/graphics/chromium/FontPlatformDataChromiumWin.cpp:
1333         (WebCore::FontPlatformData::FontPlatformData):
1334         (WebCore::FontPlatformData::operator=):
1335         * platform/graphics/chromium/FontPlatformDataChromiumWin.h:
1336         (WebCore::FontPlatformData::orientation):
1337         * platform/graphics/skia/FontCustomPlatformData.cpp:
1338         (WebCore::FontCustomPlatformData::fontPlatformData):
1339
1340 2011-02-20  Simon Fraser  <simon.fraser@apple.com>
1341
1342         Reviewed by Dirk Schulze.
1343
1344         REGRESSION (r73369-r73405): transform animation interpolates incorrectly
1345         https://bugs.webkit.org/show_bug.cgi?id=54793
1346         
1347         After the refactoring in r73380, the ending state for some types of
1348         accelerated animations was computed incorrectly, because the TransformationMatrix
1349         wasn't reset to identity before the ending value transformations were applied.
1350         
1351         Fix by cleaning up the code to use explicit, separate values for
1352         starting and ending values. Only matrix-type animations had this
1353         issue, but cleaned up other clauses similarly.
1354
1355         Test: animations/3d/matrix-transform-type-animation.html
1356
1357         * platform/graphics/ca/GraphicsLayerCA.cpp:
1358         (WebCore::GraphicsLayerCA::setTransformAnimationEndpoints):
1359
1360 2011-02-20  Dan Bernstein  <mitz@apple.com>
1361
1362         Reviewed by Maciej Stachowiak.
1363
1364         <rdar://problem/9028929> REGRESSION (r75897): Scaling applied twice to an iframe with a transformed ancestor
1365
1366         Test: fast/frames/iframe-scale-applied-twice.html
1367
1368         * page/FrameView.cpp:
1369         (WebCore::FrameView::create): Set the initial bounds of the view to match the
1370         frame size.
1371         * platform/ScrollView.cpp:
1372         (WebCore::ScrollView::visibleContentRect): Based on bounds, not frame size.
1373         (WebCore::ScrollView::updateScrollbars): Ditto.
1374         (WebCore::ScrollView::setFrameRect): Moved code that really handles bounds size
1375         change to setBoundsSize().
1376         (WebCore::ScrollView::setBoundsSize): Added.
1377         (WebCore::ScrollView::setInitialBoundsSize): Added. Sets the bounds size but does
1378         not update anything.
1379         (WebCore::ScrollView::frameRectsChanged): Based on bounds, not frame size.
1380         (WebCore::ScrollView::scrollbarCornerPresent): Ditto.
1381         * platform/ScrollView.h:
1382         (WebCore::ScrollView::boundsSize): Added this getter.
1383         * platform/Widget.h:
1384         (WebCore::Widget::resize): Set the bounds size to the frame size.
1385         * platform/mac/ScrollbarThemeMac.mm:
1386         (WebCore::ScrollbarThemeMac::paint): Fixed an error in the indirect drawing code
1387         path where the buffer rect was resized to capture only the damaged part, but was
1388         still drawn in the original location.
1389
1390 2011-02-20  Alexey Proskuryakov  <ap@apple.com>
1391
1392         Reviewed by Eric Seidel.
1393
1394         Tighten up access permissions by using libxslt API
1395         https://bugs.webkit.org/show_bug.cgi?id=52688
1396         <rdar://problem/8909191> 
1397
1398         * xml/XSLTProcessorLibxslt.cpp: (WebCore::XSLTProcessor::transformToString): We are only
1399         interested in a string result, so let libxslt know about that.
1400
1401 2011-02-20  Sheriff Bot  <webkit.review.bot@gmail.com>
1402
1403         Unreviewed, rolling out r79104.
1404         http://trac.webkit.org/changeset/79104
1405         https://bugs.webkit.org/show_bug.cgi?id=54835
1406
1407         Might have caused flaky canaries (Requested by tonyg-cr on
1408         #webkit).
1409
1410         * html/parser/HTMLDocumentParser.cpp:
1411         (WebCore::HTMLDocumentParser::canTakeNextToken):
1412         (WebCore::HTMLDocumentParser::pumpTokenizer):
1413         * html/parser/HTMLParserScheduler.cpp:
1414         (WebCore::isLayoutTimerActive):
1415         * html/parser/HTMLParserScheduler.h:
1416         (WebCore::HTMLParserScheduler::checkForYieldBeforeToken):
1417         * page/FrameView.h:
1418
1419 2011-02-20  Dirk Schulze  <krit@webkit.org>
1420
1421         Reviewed by Nikolas Zimmermann.
1422
1423         SVG animation - analyze attribute type for animation
1424         https://bugs.webkit.org/show_bug.cgi?id=54542
1425
1426         Analyze animated attribute type to determine the kind of animation. Removed enum PropertyType and replace it
1427         with AnimatedAttributeType instead. More cleanup of the animation code.
1428         Added missing fillAttributeToPropertyTypeMap() for SVGGElement.
1429
1430         Use QualifiedName instead of AtomicStrings for attribute names. This makes it easier to handle animated attributes
1431         from a different namespace like xlink:href. The rest of the SVG code is using QualifiedNames as well.
1432
1433         No change of functionality on the animation code. The changes for the <g>-element affect animateTransform. Sadly
1434         animateTransform is not supported by our SVG animation test script at the moment. Can still be tested manually
1435         with the W3C test suite in trunk.
1436
1437         The change on SVGUseElement gets covered by animate-elem-39-t.svg
1438
1439         Test: svg/animations/animate-dynamic-update-attributeName.html
1440
1441         * svg/SVGAnimateElement.cpp:
1442         (WebCore::SVGAnimateElement::SVGAnimateElement):
1443         (WebCore::SVGAnimateElement::hasValidAttributeType):
1444         (WebCore::SVGAnimateElement::determineAnimatedAttributeType):
1445         (WebCore::SVGAnimateElement::calculateAnimatedValue):
1446         (WebCore::inheritsFromProperty):
1447         (WebCore::SVGAnimateElement::calculateFromAndToValues):
1448         (WebCore::SVGAnimateElement::calculateFromAndByValues):
1449         (WebCore::SVGAnimateElement::resetToBaseValue):
1450         (WebCore::SVGAnimateElement::applyResultsToTarget):
1451         (WebCore::SVGAnimateElement::calculateDistance):
1452         * svg/SVGAnimateElement.h:
1453         * svg/SVGAnimateMotionElement.cpp:
1454         (WebCore::SVGAnimateMotionElement::hasValidAttributeType):
1455         (WebCore::parsePoint):
1456         (WebCore::SVGAnimateMotionElement::resetToBaseValue):
1457         (WebCore::SVGAnimateMotionElement::calculateAnimatedValue):
1458         (WebCore::SVGAnimateMotionElement::calculateDistance):
1459         * svg/SVGAnimateMotionElement.h:
1460         * svg/SVGAnimateTransformElement.cpp:
1461         (WebCore::SVGAnimateTransformElement::hasValidAttributeType):
1462         (WebCore::SVGAnimateTransformElement::determineAnimatedAttributeType):
1463         (WebCore::SVGAnimateTransformElement::resetToBaseValue):
1464         (WebCore::SVGAnimateTransformElement::calculateAnimatedValue):
1465         (WebCore::SVGAnimateTransformElement::calculateFromAndByValues):
1466         (WebCore::SVGAnimateTransformElement::applyResultsToTarget):
1467         (WebCore::SVGAnimateTransformElement::calculateDistance):
1468         * svg/SVGAnimateTransformElement.h:
1469         * svg/SVGAnimationElement.cpp:
1470         (WebCore::parseKeyTimes):
1471         (WebCore::parseKeySplines):
1472         (WebCore::SVGAnimationElement::isTargetAttributeCSSProperty):
1473         (WebCore::SVGAnimationElement::setTargetAttributeAnimatedValue):
1474         (WebCore::SVGAnimationElement::calculateKeyTimesForCalcModePaced):
1475         (WebCore::solveEpsilon):
1476         (WebCore::SVGAnimationElement::calculatePercentFromKeyPoints):
1477         (WebCore::SVGAnimationElement::currentValuesFromKeyPoints):
1478         (WebCore::SVGAnimationElement::currentValuesForValuesAnimation):
1479         (WebCore::SVGAnimationElement::startedActiveInterval):
1480         * svg/SVGAnimationElement.h:
1481         * svg/SVGFilterElement.cpp:
1482         (WebCore::SVGFilterElement::fillAttributeToPropertyTypeMap):
1483         * svg/SVGGElement.cpp:
1484         (WebCore::SVGGElement::attributeToPropertyTypeMap):
1485         (WebCore::SVGGElement::fillAttributeToPropertyTypeMap): Added to fill the animated attribute map for this element.
1486         * svg/SVGGElement.h:
1487         * svg/SVGUseElement.cpp:
1488         (WebCore::SVGUseElement::fillAttributeToPropertyTypeMap): Changed attribute type to AnimatedString for xlink:href.
1489         * svg/animation/SMILTimeContainer.cpp:
1490         (WebCore::SMILTimeContainer::baseValueFor):
1491         (WebCore::SMILTimeContainer::updateAnimations):
1492         * svg/animation/SMILTimeContainer.h:
1493         * svg/animation/SVGSMILElement.cpp:
1494         (WebCore::SVGSMILElement::SVGSMILElement):
1495         (WebCore::constructQualifiedName): Create a QualifiedName from a attribute name.
1496         (WebCore::SVGSMILElement::insertedIntoDocument): Update local varaible of attribute name.
1497         (WebCore::SVGSMILElement::removedFromDocument): Ditto.
1498         (WebCore::SVGSMILElement::attributeChanged): Ditto.
1499         * svg/animation/SVGSMILElement.h:
1500         (WebCore::SVGSMILElement::attributeName):
1501
1502 2011-02-20  David Kilzer  <ddkilzer@apple.com>
1503
1504         BUILD FIX: Add missing UNUSED_PARAM() when !ENABLE(FULLSCREEN_API)
1505
1506         Not reviewed.
1507
1508         * rendering/RenderLayerCompositor.cpp:
1509         (WebCore::RenderLayerCompositor::requiresCompositingForFullScreen):
1510
1511 2011-02-20  Carlos Garcia Campos  <cgarcia@igalia.com>
1512
1513         Reviewed by Martin Robinson.
1514
1515         [GTK] Implement PlatformKeyboardEvent::getCurrentModifierState()
1516         https://bugs.webkit.org/show_bug.cgi?id=52880
1517
1518         * platform/gtk/KeyEventGtk.cpp:
1519         (WebCore::PlatformKeyboardEvent::getCurrentModifierState):
1520
1521 2011-02-19  Andreas Kling  <kling@webkit.org>
1522
1523         Reviewed by Oliver Hunt.
1524
1525         DragController should use Color::serialized() when passing colors to CSSStyleDeclaration
1526         https://bugs.webkit.org/show_bug.cgi?id=54545
1527
1528         * page/DragController.cpp:
1529         (WebCore::DragController::concludeEditDrag):
1530
1531 2011-02-19  Sam Weinig  <sam@webkit.org>
1532
1533         Reviewed by Anders Carlsson.
1534
1535         Add phase in addition to momentumPhase to platform wheel events
1536         Part of <rdar://problem/8945362>
1537
1538         Rename existing phase to momentumPhase.
1539
1540         * platform/PlatformWheelEvent.h:
1541         (WebCore::PlatformWheelEvent::PlatformWheelEvent):
1542         (WebCore::PlatformWheelEvent::momentumPhase):
1543         * platform/mac/ScrollAnimatorMac.mm:
1544         (WebCore::ScrollAnimatorMac::handleWheelEvent):
1545         (WebCore::ScrollAnimatorMac::smoothScrollWithEvent):
1546         * platform/mac/WheelEventMac.mm:
1547         (WebCore::momentumPhaseForEvent):
1548         (WebCore::phaseForEvent):
1549         (WebCore::PlatformWheelEvent::PlatformWheelEvent):
1550
1551 2011-02-19  Gavin Barraclough  <barraclough@apple.com>
1552
1553         Qt build fix.
1554
1555         * bridge/runtime_method.h:
1556         (JSC::RuntimeMethod::createStructure):
1557
1558 2011-02-19  Gavin Barraclough  <barraclough@apple.com>
1559
1560         Qt build fix.
1561
1562         * bridge/qt/qt_instance.cpp:
1563         * bridge/qt/qt_pixmapruntime.cpp:
1564
1565 2011-02-19  Gavin Barraclough  <barraclough@apple.com>
1566
1567         Qt build fix.
1568
1569         * bridge/qt/qt_instance.cpp:
1570         (JSC::Bindings::QtInstance::getMethod):
1571         * bridge/qt/qt_pixmapruntime.cpp:
1572         (JSC::Bindings::QtPixmapInstance::getMethod):
1573
1574 2011-02-18  Gavin Barraclough  <barraclough@apple.com>
1575
1576         Reviewed by Sam Weinig.
1577
1578         Bug 54786 - Devirtualize JSCell::classInfo()
1579
1580         Instead of making a virtual function call, add a pointer to the ClassInfo
1581         onto Structure.
1582
1583         This removes a virtual function call, and paves the way towards removing all
1584         the createStructure methods, and StructureFlags/AnonymousSlotCount properties
1585         (these should be able to move onto ClassInfo).
1586
1587         Calls to Structure::create must now pass a pointer to the ClassInfo for the
1588         structure. All objects now have a ClassInfo pointer, non-object cell types
1589         still do not.
1590
1591         Changes are most mechanical, involving three steps:
1592             * Remove virtual classInfo() methods.
1593             * Add &s_info parameter to calls to Structure::create.
1594             * Rename ClassInfo static members on classes from 'info' to 's_info',
1595               for consistency.
1596
1597         * WebCore.exp.in:
1598         * bindings/js/JSAudioConstructor.cpp:
1599         * bindings/js/JSAudioConstructor.h:
1600         * bindings/js/JSDOMBinding.cpp:
1601         * bindings/js/JSDOMBinding.h:
1602         * bindings/js/JSDOMGlobalObject.cpp:
1603         * bindings/js/JSDOMGlobalObject.h:
1604         * bindings/js/JSDOMWindowBase.cpp:
1605         * bindings/js/JSDOMWindowBase.h:
1606         * bindings/js/JSDOMWindowShell.cpp:
1607         * bindings/js/JSDOMWindowShell.h:
1608         * bindings/js/JSGeolocationCustom.cpp:
1609         * bindings/js/JSImageConstructor.cpp:
1610         * bindings/js/JSImageConstructor.h:
1611         * bindings/js/JSImageDataCustom.cpp:
1612         * bindings/js/JSOptionConstructor.cpp:
1613         * bindings/js/JSOptionConstructor.h:
1614         * bindings/js/JSWorkerContextBase.cpp:
1615         * bindings/js/JSWorkerContextBase.h:
1616         * bindings/js/SerializedScriptValue.cpp:
1617         * bindings/scripts/CodeGeneratorJS.pm:
1618         * bridge/c/CRuntimeObject.cpp:
1619         * bridge/c/CRuntimeObject.h:
1620         * bridge/c/c_instance.cpp:
1621         * bridge/jni/jsc/JNIUtilityPrivate.cpp:
1622         * bridge/jni/jsc/JavaInstanceJSC.cpp:
1623         * bridge/jni/jsc/JavaRuntimeObject.cpp:
1624         * bridge/jni/jsc/JavaRuntimeObject.h:
1625         * bridge/jsc/BridgeJSC.cpp:
1626         * bridge/objc/ObjCRuntimeObject.h:
1627         * bridge/objc/ObjCRuntimeObject.mm:
1628         * bridge/objc/objc_instance.mm:
1629         * bridge/objc/objc_runtime.h:
1630         * bridge/objc/objc_runtime.mm:
1631         * bridge/runtime_array.cpp:
1632         * bridge/runtime_array.h:
1633         * bridge/runtime_method.cpp:
1634         * bridge/runtime_method.h:
1635         * bridge/runtime_object.cpp:
1636         * bridge/runtime_object.h:
1637
1638 2011-02-19  Zan Dobersek  <zandobersek@gmail.com>
1639
1640         Reviewed by Martin Robinson.
1641
1642         [cairo][canvas] Drawing from/into float rectangles with width or height in range 0 to 1 fails
1643         https://bugs.webkit.org/show_bug.cgi?id=54491
1644
1645         When width or height in float rectangle are in range (0, 0.5) or (-0.5, 0)
1646         and would round to 0, alter the behaviour to ensure that width or height are
1647         at least 1 pixel in size in these cases.
1648
1649         * platform/graphics/cairo/GraphicsContextCairo.cpp:
1650         (WebCore::GraphicsContext::roundToDevicePixels):
1651
1652 2011-02-19  Dan Bernstein  <mitz@apple.com>
1653
1654         LLVM Compiler build fix.
1655
1656         * platform/graphics/ShadowBlur.cpp:
1657         (WebCore::ShadowBlur::blurLayerImage): Eliminated a file static that generated
1658         a global initializer since the compiler does not evaluate sqrtf at compile time.
1659
1660 2011-02-19  Brian Ryner  <bryner@chromium.org>
1661
1662         Reviewed by Adam Barth.
1663
1664         Replace the #include of DocumentLoader.h in Document.h with a
1665         forward declaration, and add a missing #include now that this
1666         transitive include is gone.
1667         https://bugs.webkit.org/show_bug.cgi?id=50489
1668
1669         No new tests required.
1670
1671         * bindings/ScriptControllerBase.cpp:
1672         * dom/Document.h:
1673
1674 2011-02-19 Patrick Gansterer <paroga@webkit.org>
1675
1676         Reviewed by Antonio Gomes.
1677
1678         [EFL] Remove WebCore::currentTime()
1679         https://bugs.webkit.org/show_bug.cgi?id=53886
1680
1681         There is no declaration for it and we use WTF::currentTime() everywhere.
1682
1683         * platform/efl/SystemTimeEfl.cpp:
1684
1685 2011-02-19 Patrick Gansterer <paroga@webkit.org>
1686
1687         Reviewed by Andreas Kling.
1688
1689         Move KeygenWinCE from wince into win directory
1690         https://bugs.webkit.org/show_bug.cgi?id=54804
1691
1692         Move this file into the win directory, since it can be used on all windows platforms.
1693
1694         * CMakeListsWinCE.txt:
1695         * platform/win/SSLKeyGeneratorWin.cpp: Renamed from platform/wince/KeygenWinCE.cpp.
1696
1697 2011-02-19  Patrick Gansterer  <paroga@webkit.org>
1698
1699         Reviewed by Andreas Kling.
1700
1701         Make FileChooserWin.cpp more portable and use it on WinCE
1702         https://bugs.webkit.org/show_bug.cgi?id=54803
1703
1704         * CMakeListsWinCE.txt:
1705         * platform/win/FileChooserWin.cpp:
1706         (WebCore::FileChooser::basenameForWidth):
1707         * platform/wince/FileChooserWinCE.cpp: Removed.
1708
1709 2011-02-19  James Simonsen  <simonjam@chromium.org>
1710
1711         Reviewed by Adam Barth.
1712
1713         Make ScriptElement match the HTML5 spec
1714         https://bugs.webkit.org/show_bug.cgi?id=54676
1715
1716         This implements the "prepare a script" section of the HTML5 spec in ScriptElement::prepareScript().
1717         http://www.whatwg.org/specs/web-apps/current-work/multipage/scripting-1.html#prepare-a-script
1718
1719         There are a couple of things missing from the spec that would be new functionality. These will be added later.
1720         - Support for async=false
1721         - Empty src attribute should dispatch an error.
1722
1723         There are a couple of slight behavioral changes to match the spec.
1724         - An XHTML script that is loaded then copied will not fire load on the copy.
1725         - If onbeforeload moves the script to a different document, then it will not try to execute again because wasAlreadyStarted is true.
1726
1727         The parsers were updated to use the new API, but not rewritten to look like the spec. That will be done separately.
1728
1729         Test: All existing tests.
1730
1731         * dom/ScriptElement.cpp: Rewritten to match HTML5 spec.
1732         (WebCore::ScriptElement::ScriptElement):
1733         (WebCore::ScriptElement::insertedIntoDocument): Logic moved to prepareScript.
1734         (WebCore::ScriptElement::childrenChanged): Logic moved to prepareScript.
1735         (WebCore::ScriptElement::handleSourceAttribute): Logic moved to prepareScript.
1736         (WebCore::isLegacySupportedJavaScriptLanguage): Added to support old script types in layout tests.
1737         (WebCore::ScriptElement::isScriptTypeSupported): Derived from old shouldExecuteAsJavaScript().
1738         (WebCore::ScriptElement::prepareScript): START HERE. Main change. Should read exactly like HTML5's "prepare a script." Legacy type support needed for layout tests using XML parser.
1739         (WebCore::ScriptElement::requestScript): Most logic moved to prepareScript. Check security settings here.
1740         (WebCore::ScriptElement::executeScript): Combined evaluateScript() and executeScript() from old code. Logic moved to prepareScript.
1741         (WebCore::ScriptElement::stopLoadRequest): Ignore parser executed scripts.
1742         (WebCore::ScriptElement::execute): Renamed executeScript.
1743         (WebCore::ScriptElement::notifyFinished): We should only listen for non-parser executed scripts.
1744         (WebCore::ScriptElement::ignoresLoadRequest): New variable names.
1745         (WebCore::ScriptElement::childrenAreCommentsOrEmptyText): Added for HTML5 compliance.
1746         (WebCore::ScriptElement::scriptCharset): Use HTML5 variables.
1747         * dom/ScriptElement.h:
1748         (WebCore::ScriptElement::willBeParserExecuted): Added.
1749         (WebCore::ScriptElement::readyToBeParserExecuted): Added.
1750         (WebCore::ScriptElement::willExecuteWhenDocumentFinishedParsing): Added.
1751         (WebCore::ScriptElement::cachedScript): prepareScript() is the only place that should load scripts. This accessor lets the parsers listen for when loads finish.
1752         (WebCore::ScriptElement::isParserInserted): Added.
1753         * dom/XMLDocumentParserLibxml2.cpp:
1754         (WebCore::XMLDocumentParser::endElementNs): Should behave the same. Offloads much of its work to prepareScript().
1755         * dom/XMLDocumentParserQt.cpp:
1756         (WebCore::XMLDocumentParser::parseEndElement): Identical to libxml2 changes.
1757         * html/HTMLScriptElement.cpp:
1758         (WebCore::HTMLScriptElement::insertedIntoDocument): No longer needs url.
1759         (WebCore::HTMLScriptElement::hasSourceAttribute): Added.
1760         * html/HTMLScriptElement.h:
1761         * html/parser/HTMLScriptRunner.cpp:
1762         (WebCore::HTMLScriptRunner::requestPendingScript): Requesting scripts offloaded to ScriptElement.
1763         (WebCore::HTMLScriptRunner::runScript): Should behave the same. Offloads much of its work to prepareScript().
1764         * svg/SVGScriptElement.cpp:
1765         (WebCore::SVGScriptElement::svgAttributeChanged): New ScriptElement function names.
1766         (WebCore::SVGScriptElement::insertedIntoDocument): No longer needs url.
1767         (WebCore::SVGScriptElement::finishParsingChildren): ScriptElement::finishParsingChildren is gone.
1768         (WebCore::SVGScriptElement::hasSourceAttribute): Added.
1769         (WebCore::SVGScriptElement::dispatchLoadEvent): New ScriptElement function names.
1770         * svg/SVGScriptElement.h:
1771
1772 2011-02-19  Marc-Antoine Ruel  <maruel@chromium.org>
1773
1774         Reviewed by James Robinson.
1775
1776         Split webcore_rendering off webcore_remaining to reduce its size for WPO builds
1777         https://bugs.webkit.org/show_bug.cgi?id=54789
1778
1779         * WebCore.gyp/WebCore.gyp:
1780
1781 2011-02-19  Bill Budge  <bbudge@chromium.org>
1782
1783         Reviewed by David Levin.
1784
1785         ThreadableLoaderClient needs willSendRequest method
1786         https://bugs.webkit.org/show_bug.cgi?id=54688
1787
1788         No new tests. Exposes no new functionality
1789
1790         * WebCore.gypi:
1791         * loader/DocumentThreadableLoader.cpp:
1792         (WebCore::DocumentThreadableLoader::willSendRequest):
1793         (WebCore::DocumentThreadableLoader::didReceiveData):
1794         (WebCore::DocumentThreadableLoader::didReceiveCachedMetadata):
1795         * loader/DocumentThreadableLoaderClient.h: Added.
1796         (WebCore::DocumentThreadableLoaderClient::isDocumentThreadableLoaderClient):
1797         (WebCore::DocumentThreadableLoaderClient::willSendRequest):
1798         * loader/ThreadableLoaderClient.h:
1799         (WebCore::ThreadableLoaderClient::isDocumentThreadableLoaderClient):
1800
1801 2011-02-19  Charlie Reis  <creis@chromium.org>
1802
1803         Reviewed by Mihai Parparita.
1804
1805         Ensure loading has stopped in HistoryController::goToItem
1806         https://bugs.webkit.org/show_bug.cgi?id=54517
1807
1808         Avoid stopping all loaders in goToItem for same document navigations
1809         or pseudo-back-forward URLs.  Make HistoryController::goToItem private
1810         to force callers to go through Page::goToItem.  Also add a callback to
1811         FrameLoaderClient to let clients decide whether to stop loading first.
1812
1813         Test: http/tests/navigation/forward-to-fragment-fires-onload.html
1814
1815         * loader/EmptyClients.h:
1816         * loader/FrameLoader.h:
1817         * loader/FrameLoaderClient.h:
1818         * loader/HistoryController.cpp:
1819         * loader/HistoryController.h:
1820         * page/Page.cpp:
1821
1822 2011-02-19  Adam Barth  <abarth@webkit.org>
1823
1824         Reviewed by Daniel Bates.
1825
1826         Fix xssAuditor/iframe-injection.html
1827         https://bugs.webkit.org/show_bug.cgi?id=54591
1828
1829         We should block the iframe src attribute.  Although this technically
1830         can't be used to run script, it's a pretty easy vector for stealing
1831         passwords.
1832
1833         * html/parser/XSSFilter.cpp:
1834         (WebCore::XSSFilter::filterTokenInitial):
1835         (WebCore::XSSFilter::filterIframeToken):
1836         * html/parser/XSSFilter.h:
1837
1838 2011-02-18  Tony Gentilcore  <tonyg@chromium.org>
1839
1840         Reviewed by Eric Seidel.
1841
1842         Let the parser yield for layout before running scripts
1843         https://bugs.webkit.org/show_bug.cgi?id=54355
1844
1845         Prior to this patch, the parser would yield to perform a layout/paint before running a
1846         script only if the script or a stylesheet blocking the script is not loaded yet. Since we
1847         don't preload scan into the body while parsing the head, typically we'll block on a script
1848         early in the body that causes us to yield to do the first paint within a reasonable time.
1849
1850         However, I'm planning to change the PreloadScanner to scan into the body from the head.
1851         That significantly improves overall load time, but would hurt first paint time because
1852         fewer scripts would be blocked during parsing and thus wouldn't yield.
1853
1854         This change causes us to yield before running scripts if we haven't painted yet (regardless
1855         of whether or not the script is loaded). In addition to allowing the above mentioned
1856         PreloadScanner change to be implemented without regressing first paint time, this also
1857         improves first paint time by itself.
1858
1859         I tested Alexa's top 45 websites using Web Page Replay to control the content and simulate
1860         bandwidth. This patch improved average first paint time by 1% over an unlimited connection,
1861         6% over a 1Mbps connection and 11% over a 5Mbps connection. There was no statistically
1862         signifcant change in page load time.
1863
1864         Within the pages tested, 33 had no statistically significant change in time to first paint,
1865         12 improved, and none regressed. Of the improved, some of the standouts from the 1Mbps set
1866         are: 20% on youtube, 37% on wiki, 27% on ebay, 13% on cnn, 16% on espn, 74% on sohu.
1867
1868         * html/parser/HTMLDocumentParser.cpp:
1869         (WebCore::HTMLDocumentParser::canTakeNextToken): This is the new yield point.
1870         (WebCore::HTMLDocumentParser::pumpTokenizer): Remove ASSERT that we are not paused. isPaused
1871         means that we are waiting for a script. Bug 54574 changed pumpTokenizer() so that it does
1872         the right thing whether we are just before a token or waiting for a script. Now that we may
1873         yield before a token or before a script, this may be called while paused.
1874         * html/parser/HTMLParserScheduler.cpp:
1875         (WebCore::isLayoutTimerActive): Added a FIXME because r52919 changed minimumLayoutDelay()
1876         to return m_extraLayoutDelay instead of 0 as a minimum. So checking !minimumLayoutDelay()
1877         no longer works. The fix is to change it to check minimumLayoutDelay() ==
1878         m_extraLayoutDelay. But this is all the more reason to move this method onto Document. I'll
1879         do this in a follow up.
1880         (WebCore::HTMLParserScheduler::checkForYieldBeforeScript): Added.
1881         * page/FrameView.h:
1882         (WebCore::FrameView::hasEverPainted): Added.
1883
1884 2011-02-18  Dawit Alemayehu  <adawit@kde.org>
1885
1886         Reviewed by Andreas Kling.
1887
1888         [Qt]  Button Element is rendered w/ text off-center.
1889         https://bugs.webkit.org/show_bug.cgi?id=53373
1890
1891         Test: LayoutTests/fast/forms/button-white-space.html 
1892
1893         * platform/qt/RenderThemeQt.cpp:
1894         (WebCore::RenderThemeQt::adjustButtonStyle):
1895
1896 2011-02-18  Jonathan Backer  <backer@chromium.org>
1897
1898         Reviewed by Eric Seidel.
1899
1900         [chromium] Fix leak of texture IDs in compositor.
1901         https://bugs.webkit.org/show_bug.cgi?id=54750
1902
1903         No new tests. It is extremely unlikely that this leak would have
1904         any user visible impact because only a few bytes of space are wasted
1905         (we're leaking texture IDs, not actual textures) and the space of
1906         texture IDs is large (32 bits).
1907
1908        * platform/graphics/chromium/TextureManager.cpp:
1909         (WebCore::TextureManager::requestTexture):
1910
1911 2011-02-18  Yi Shen  <yi.4.shen@nokia.com>
1912
1913         Reviewed by Tor Arne Vestbø.
1914
1915         Always display the media controls when requiresFullscreenForVideoPlayback() is true
1916         https://bugs.webkit.org/show_bug.cgi?id=54308
1917
1918         For video element, it should have controls when 
1919         Chrome::requiresFullscreenForVideoPlayback() is true.
1920
1921         * html/HTMLMediaElement.cpp:
1922         (WebCore::HTMLMediaElement::controls):
1923
1924 2011-02-18  Adrienne Walker  <enne@google.com>
1925
1926         Reviewed by Kenneth Russell.
1927
1928         [chromium] Use nearest-neighbor filtering for root layer.
1929         https://bugs.webkit.org/show_bug.cgi?id=54409
1930         https://bugs.webkit.org/show_bug.cgi?id=54509
1931
1932         This setting creates more consistent images for LayoutTests and
1933         prevents small floating point errors in texture coordinates from
1934         creating off-by-one pixel color differences.
1935
1936         * platform/graphics/chromium/LayerTilerChromium.cpp:
1937         (WebCore::LayerTilerChromium::update):
1938
1939 2011-02-18  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
1940
1941         Reviewed by Kent Tamura.
1942
1943         [EFL] Fix coding style errors in RenderThemeEfl.h
1944         https://bugs.webkit.org/show_bug.cgi?id=54693
1945
1946         Fix style errors in RenderThemeEfl.h
1947
1948         * platform/efl/RenderThemeEfl.h:
1949
1950 2011-02-18  Ademar de Souza Reis Jr  <ademar.reis@openbossa.org>
1951
1952         Reviewed by Andreas Kling.
1953
1954         [Qt] The localized vendor name for Qt SIS packages should be "Nokia"
1955         https://bugs.webkit.org/show_bug.cgi?id=54742
1956
1957         This change was applied in the Qt repository (qt/src/3rdparty/webkit),
1958         so we should do the same here in QtWebKit.
1959
1960         Patch by Eckhart Koppen <eckhart.koppen@nokia.com>
1961         a8a84f1667966acfa093c4be0b7d4b0900ddd3d9:
1962
1963         The previously used name "Nokia, Qt" was not usable for Nokia
1964         Content Signing, which only allows "Nokia" as the visible vendor
1965         name. The unique vendor ID remains as "Nokia, Qt"
1966
1967         * WebCore.pro:
1968
1969 2011-02-18  Alexis Menard  <alexis.menard@openbossa.org>
1970
1971         Reviewed by Andreas Kling.
1972
1973         [Qt] REGRESSION(r67516) : on www.gmail.com a strange rendering issue appears on the
1974         menu bar due to flash.
1975         https://bugs.webkit.org/show_bug.cgi?id=54741
1976
1977         Only show plugins with a valid size. We then don't involve X11 if there is
1978         nothing to see anyway.
1979
1980         * plugins/qt/PluginViewQt.cpp:
1981         (WebCore::PluginView::updatePluginWidget):
1982         (WebCore::PluginView::platformStart):
1983
1984 2011-02-18  Ryuan Choi  <ryuan.choi@samsung.com>
1985
1986         Reviewed by Kent Tamura.
1987
1988         [EFL] Remove GDK dependency.
1989         https://bugs.webkit.org/show_bug.cgi?id=53978
1990
1991         Remove GLIB_SUPPORT macro in GDK related code.
1992         Regardless of GLIB_SUPPORT, getDefaultFontOptions() will works same way.
1993
1994         * CMakeListsEfl.txt:
1995         * platform/graphics/freetype/FontPlatformDataFreeType.cpp:
1996         (WebCore::getDefaultFontOptions):
1997
1998 2011-02-18  Noel Gordon  <noel.gordon@gmail.com>
1999
2000         Reviewed by James Robinson.
2001
2002         [Chromium] Add elliptical gradient support to GradientSkia
2003         https://bugs.webkit.org/show_bug.cgi?id=51841
2004
2005         Covered by existing tests, these need new rebaselines once this patch
2006         lands for chrome linux, win32
2007
2008         fast/gradients/css3-color-stop-units.html
2009         fast/gradients/css3-color-stops.html
2010         fast/gradients/css3-linear-angle-gradients.html
2011         fast/gradients/css3-radial-gradients.html
2012         fast/gradients/css3-radial-gradients2.html
2013         fast/gradients/css3-radial-gradients3.html
2014         fast/gradients/css3-repeating-radial-gradients.html
2015
2016         * platform/graphics/skia/GradientSkia.cpp:
2017         (WebCore::Gradient::platformGradient):
2018
2019 2011-02-18  James Robinson  <jamesr@chromium.org>
2020
2021         Fix typo in boundary test in ASSERT() - test is for an inclusive range, not exclusive.
2022
2023         * platform/graphics/chromium/ContentLayerChromium.cpp:
2024         (WebCore::ContentLayerChromium::updateTextureIfNeeded):
2025
2026 2011-02-18  Viatcheslav Ostapenko  <ostapenko.viatcheslav@nokia.com>
2027
2028         Reviewed by Kenneth Rohde Christiansen.
2029
2030         Tiled backing store area is too big.
2031         Error in area calculcation causes size of backing store
2032         up to 6 times bigger than viewport with default multipliers.
2033         https://bugs.webkit.org/show_bug.cgi?id=54587
2034
2035         * platform/graphics/TiledBackingStore.cpp:
2036         (WebCore::TiledBackingStore::createTiles):
2037
2038 2011-02-18  Beth Dakin  <bdakin@apple.com>
2039
2040         Reviewed by Sam Weinig.
2041
2042         Fix for <rdar://problem/9018729> Horizontal scroller doesn't 
2043         appear when loading a page with a Horizontal scrollbar from 
2044         the back/forward cache.
2045
2046         This patch adds a new  bool member variable to FrameView to 
2047         keep track of whether we are loading a page from the back/
2048         forward cache. If we are, don't suppress scrollbars on 
2049         first layout.
2050         * history/CachedFrame.cpp:
2051         (WebCore::CachedFrameBase::restore):
2052         * page/FrameView.cpp:
2053         (WebCore::FrameView::FrameView):
2054         (WebCore::FrameView::reset):
2055         (WebCore::FrameView::layout):
2056         * page/FrameView.h:
2057         (WebCore::FrameView::setIsRestoringFromBackForward):
2058         (WebCore::FrameView::isRestoringFromBackForward):
2059
2060 2011-02-18  Patrick Gansterer  <paroga@webkit.org>
2061
2062         Unreviewed WinCE build fix for r78846.
2063
2064         * platform/graphics/wince/FontWinCE.cpp:
2065         (WebCore::TextRunComponent::TextRunComponent):
2066         * platform/graphics/wince/GraphicsContextWinCE.cpp:
2067         (WebCore::GraphicsContext::drawLineForText):
2068         (WebCore::GraphicsContext::drawLineForTextChecking):
2069         (WebCore::GraphicsContext::drawText):
2070         * platform/wince/FileChooserWinCE.cpp:
2071         (WebCore::FileChooser::basenameForWidth):
2072
2073 2011-02-18  Emil A Eklund  <eae@chromium.org>
2074
2075         Reviewed by Darin Adler.
2076
2077         Crash in EventHandler::sendContextMenuEventForKey
2078         https://bugs.webkit.org/show_bug.cgi?id=54495
2079
2080         Test: fast/events/menu-keydown-on-hidden-element.html
2081
2082         * page/EventHandler.cpp:
2083         (WebCore::EventHandler::sendContextMenuEventForKey): Add null check.
2084
2085 2011-02-15  Adrienne Walker  <enne@google.com>
2086
2087         Reviewed by James Robinson.
2088
2089         [chromium] Clean up shader code from LayerChromium classes
2090         https://bugs.webkit.org/show_bug.cgi?id=54484
2091
2092         This is a refactoring and there should be no change in functionality.
2093         All shader code is pulled out into classes in ShaderChromium.
2094         The SharedValues classes are now turned into ProgramBinding, one per
2095         shader program.  These contain shader classes that know about what
2096         variables they can bind.
2097
2098         * WebCore.gypi:
2099         * platform/graphics/chromium/CanvasLayerChromium.cpp:
2100         (WebCore::CanvasLayerChromium::draw):
2101         * platform/graphics/chromium/CanvasLayerChromium.h:
2102         * platform/graphics/chromium/ContentLayerChromium.cpp:
2103         (WebCore::ContentLayerChromium::draw):
2104         * platform/graphics/chromium/ContentLayerChromium.h:
2105         * platform/graphics/chromium/GeometryBinding.cpp: Added.
2106         (WebCore::GeometryBinding::GeometryBinding):
2107         (WebCore::GeometryBinding::~GeometryBinding):
2108         (WebCore::GeometryBinding::prepareForDraw):
2109         * platform/graphics/chromium/GeometryBinding.h: Copied from Source/WebCore/platform/graphics/chromium/PluginLayerChromium.h.
2110         (WebCore::GeometryBinding::initialized):
2111         (WebCore::GeometryBinding::context):
2112         (WebCore::GeometryBinding::quadVerticesVbo):
2113         (WebCore::GeometryBinding::quadElementsVbo):
2114         (WebCore::GeometryBinding::positionAttribLocation):
2115         (WebCore::GeometryBinding::texCoordAttribLocation):
2116         * platform/graphics/chromium/LayerChromium.cpp:
2117         (WebCore::LayerChromium::drawDebugBorder):
2118         * platform/graphics/chromium/LayerChromium.h:
2119         * platform/graphics/chromium/LayerRendererChromium.cpp:
2120         (WebCore::LayerRendererChromium::drawLayers):
2121         (WebCore::LayerRendererChromium::initializeSharedObjects):
2122         (WebCore::LayerRendererChromium::cleanupSharedObjects):
2123         * platform/graphics/chromium/LayerRendererChromium.h:
2124         (WebCore::LayerRendererChromium::sharedGeometry):
2125         (WebCore::LayerRendererChromium::borderProgram):
2126         (WebCore::LayerRendererChromium::contentLayerProgram):
2127         (WebCore::LayerRendererChromium::canvasLayerProgram):
2128         (WebCore::LayerRendererChromium::videoLayerRGBAProgram):
2129         (WebCore::LayerRendererChromium::videoLayerYUVProgram):
2130         (WebCore::LayerRendererChromium::pluginLayerProgram):
2131         (WebCore::LayerRendererChromium::renderSurfaceProgram):
2132         (WebCore::LayerRendererChromium::renderSurfaceMaskProgram):
2133         (WebCore::LayerRendererChromium::tilerProgram):
2134         * platform/graphics/chromium/LayerTilerChromium.cpp:
2135         (WebCore::LayerTilerChromium::draw):
2136         (WebCore::LayerTilerChromium::drawTexturedQuad):
2137         * platform/graphics/chromium/LayerTilerChromium.h:
2138         * platform/graphics/chromium/PluginLayerChromium.cpp:
2139         (WebCore::PluginLayerChromium::draw):
2140         * platform/graphics/chromium/PluginLayerChromium.h:
2141         * platform/graphics/chromium/ProgramBinding.cpp: Added.
2142         (WebCore::ProgramBindingBase::ProgramBindingBase):
2143         (WebCore::ProgramBindingBase::~ProgramBindingBase):
2144         (WebCore::ProgramBindingBase::init):
2145         (WebCore::ProgramBindingBase::loadShader):
2146         (WebCore::ProgramBindingBase::createShaderProgram):
2147         * platform/graphics/chromium/ProgramBinding.h: Added.
2148         (WebCore::ProgramBindingBase::program):
2149         (WebCore::ProgramBindingBase::initialized):
2150         (WebCore::ProgramBinding::ProgramBinding):
2151         (WebCore::ProgramBinding::vertexShader):
2152         (WebCore::ProgramBinding::fragmentShader):
2153         * platform/graphics/chromium/RenderSurfaceChromium.cpp:
2154         (WebCore::RenderSurfaceChromium::drawSurface):
2155         * platform/graphics/chromium/RenderSurfaceChromium.h:
2156         * platform/graphics/chromium/ShaderChromium.cpp: Added.
2157         (WebCore::VertexShaderPosTex::VertexShaderPosTex):
2158         (WebCore::VertexShaderPosTex::init):
2159         (WebCore::VertexShaderPosTex::getShaderString):
2160         (WebCore::VertexShaderPosTexYUVStretch::VertexShaderPosTexYUVStretch):
2161         (WebCore::VertexShaderPosTexYUVStretch::init):
2162         (WebCore::VertexShaderPosTexYUVStretch::getShaderString):
2163         (WebCore::VertexShaderPos::VertexShaderPos):
2164         (WebCore::VertexShaderPos::init):
2165         (WebCore::VertexShaderPos::getShaderString):
2166         (WebCore::VertexShaderPosTexTransform::VertexShaderPosTexTransform):
2167         (WebCore::VertexShaderPosTexTransform::init):
2168         (WebCore::VertexShaderPosTexTransform::getShaderString):
2169         (WebCore::FragmentTexAlphaBinding::FragmentTexAlphaBinding):
2170         (WebCore::FragmentTexAlphaBinding::init):
2171         (WebCore::FragmentShaderRGBATexFlipAlpha::getShaderString):
2172         (WebCore::FragmentShaderRGBATexAlpha::getShaderString):
2173         (WebCore::FragmentShaderBGRATexAlpha::getShaderString):
2174         (WebCore::FragmentShaderRGBATexAlphaMask::FragmentShaderRGBATexAlphaMask):
2175         (WebCore::FragmentShaderRGBATexAlphaMask::init):
2176         (WebCore::FragmentShaderRGBATexAlphaMask::getShaderString):
2177         (WebCore::FragmentShaderYUVVideo::FragmentShaderYUVVideo):
2178         (WebCore::FragmentShaderYUVVideo::init):
2179         (WebCore::FragmentShaderYUVVideo::getShaderString):
2180         (WebCore::FragmentShaderColor::FragmentShaderColor):
2181         (WebCore::FragmentShaderColor::init):
2182         (WebCore::FragmentShaderColor::getShaderString):
2183         * platform/graphics/chromium/ShaderChromium.h: Added.
2184         (WebCore::VertexShaderPosTex::matrixLocation):
2185         (WebCore::VertexShaderPosTexYUVStretch::matrixLocation):
2186         (WebCore::VertexShaderPosTexYUVStretch::yWidthScaleFactorLocation):
2187         (WebCore::VertexShaderPosTexYUVStretch::uvWidthScaleFactorLocation):
2188         (WebCore::VertexShaderPos::matrixLocation):
2189         (WebCore::VertexShaderPosTexTransform::matrixLocation):
2190         (WebCore::VertexShaderPosTexTransform::texTransformLocation):
2191         (WebCore::FragmentTexAlphaBinding::alphaLocation):
2192         (WebCore::FragmentTexAlphaBinding::samplerLocation):
2193         (WebCore::FragmentShaderRGBATexAlphaMask::alphaLocation):
2194         (WebCore::FragmentShaderRGBATexAlphaMask::samplerLocation):
2195         (WebCore::FragmentShaderRGBATexAlphaMask::maskSamplerLocation):
2196         (WebCore::FragmentShaderYUVVideo::yTextureLocation):
2197         (WebCore::FragmentShaderYUVVideo::uTextureLocation):
2198         (WebCore::FragmentShaderYUVVideo::vTextureLocation):
2199         (WebCore::FragmentShaderYUVVideo::alphaLocation):
2200         (WebCore::FragmentShaderYUVVideo::ccMatrixLocation):
2201         (WebCore::FragmentShaderYUVVideo::signAdjLocation):
2202         (WebCore::FragmentShaderColor::colorLocation):
2203         * platform/graphics/chromium/VideoLayerChromium.cpp:
2204         (WebCore::VideoLayerChromium::draw):
2205         (WebCore::VideoLayerChromium::drawYUV):
2206         (WebCore::VideoLayerChromium::drawRGBA):
2207         * platform/graphics/chromium/VideoLayerChromium.h:
2208
2209 2011-02-18  James Robinson  <jamesr@chromium.org>
2210
2211         Reviewed by Kenneth Russell.
2212
2213         [chromium] Update texture for ContentLayerChromiums in draw() call instead of updateContents..() call
2214         https://bugs.webkit.org/show_bug.cgi?id=54315
2215
2216         This defers all operations on the compositor's GL context until the
2217         draw() call which is a prerequisite for moving the draw() off-thread.
2218         Also cleans up the update cycle a bit - there were some unused local
2219         variables and whatnot.
2220
2221         One consequence of this change is that the upload buffer is retained
2222         across updates now instead of allocated by each paint.  This is
2223         necessary so that the full layer contents can be uploaded if the
2224         texture manager evicts the layer's backing texture.  This costs more
2225         persistent memory but avoids lots of allocator churn on updates.
2226         Another nonobvious detail is that I have to update the texture for
2227         ContentLayerChromiums in bindContentsTexture() because mask layers
2228         never draw(), they are instead bound to the secondary texture unit.
2229
2230         * platform/graphics/chromium/ContentLayerChromium.cpp:
2231         (WebCore::ContentLayerChromium::requiresClippedUpdateRect):
2232         (WebCore::ContentLayerChromium::updateContentsIfDirty):
2233         (WebCore::ContentLayerChromium::resizeUploadBufferForImage):
2234         (WebCore::ContentLayerChromium::resizeUploadBuffer):
2235         (WebCore::SkBitmapConditionalAutoLockerPixels::SkBitmapConditionalAutoLockerPixels):
2236         (WebCore::SkBitmapConditionalAutoLockerPixels::~SkBitmapConditionalAutoLockerPixels):
2237         (WebCore::SkBitmapConditionalAutoLockerPixels::lockPixels):
2238         (WebCore::ContentLayerChromium::updateTextureIfNeeded):
2239         (WebCore::ContentLayerChromium::draw):
2240         (WebCore::ContentLayerChromium::unreserveContentsTexture):
2241         (WebCore::ContentLayerChromium::bindContentsTexture):
2242         * platform/graphics/chromium/ContentLayerChromium.h:
2243         * platform/graphics/chromium/ImageLayerChromium.cpp:
2244         (WebCore::ImageLayerChromium::updateContentsIfDirty):
2245         * platform/graphics/chromium/LayerChromium.cpp:
2246         (WebCore::LayerChromium::setBounds):
2247         * platform/graphics/chromium/LayerChromium.h:
2248
2249 2011-02-18  Kenneth Russell  <kbr@google.com>
2250
2251         Unreviewed, Chromium build fix on certain Linux platforms.
2252
2253         * platform/graphics/gpu/LoopBlinnSolidFillShader.cpp:
2254
2255 2011-02-18  Mahesh Kulkarni  <mahesh.kulkarni@nokia.com>
2256
2257         Reviewed by Kenneth Rohde Christiansen.
2258
2259         [Qt] Implement client based geolocation for qtport
2260         https://bugs.webkit.org/show_bug.cgi?id=42629
2261
2262         Implements client based geolocation for qtwebkit. Removed old code related to non-client based geolocation
2263
2264         No tests as yet. This will be raised as different bug as new mock client implementation need to be done.
2265
2266         * WebCore.pro:
2267         * features.pri:
2268         * platform/qt/GeolocationServiceQt.cpp: Removed.
2269         * platform/qt/GeolocationServiceQt.h: Removed.
2270
2271 2011-02-18  Yael Aharon  <yael.aharon@nokia.com>
2272
2273         Reviewed by Dave Hyatt.
2274
2275         Add support for dir=auto
2276         https://bugs.webkit.org/show_bug.cgi?id=50916
2277
2278         When an element has dir attribute with value "auto", call defaultWritingMode
2279         to find its directionality.
2280         Added a flag SelfOrAncestorHasDirAutoFlag, and added hooks in the DOM to set
2281         and check this flag. This flag is set on every node between an element with
2282         dir=auto attribute and its first text node. Changes in the DOM between those
2283         elements will trigger re-evaluating the directionality, but changes not
2284         between those element do not need to be concerned.
2285         The DOM hooks were added to childrenChanged, and to parseMappedAttribute.
2286         The directionality is evaluated when children are added, and cleared when they are
2287         removed. Directionality flag is also cleared on a child that is no longer determining
2288         the directionality due to a sibling being added before that child.
2289
2290         Added 2 static CSSMutableStyleDeclarations to be used for elements with dir=auto.
2291         We cannot used the mapped declaration, because it can take only one value.
2292
2293         Tests: fast/dom/HTMLElement/attr-dir-auto-change-before-text-node.html
2294                fast/dom/HTMLElement/attr-dir-auto-change-child-node.html
2295                fast/dom/HTMLElement/attr-dir-auto-change-text.html
2296                fast/dom/HTMLElement/attr-dir-auto-children.html
2297                fast/dom/HTMLElement/attr-dir-auto-remove-add-children.html
2298                fast/dom/HTMLElement/attr-dir-auto.html
2299                fast/dom/HTMLElement/attr-dir-value-change.html
2300
2301         * css/CSSStyleSelector.cpp:
2302         (WebCore::leftToRightDeclaration):
2303         (WebCore::rightToLeftDeclaration):
2304         (WebCore::CSSStyleSelector::canShareStyleWithElement):
2305         (WebCore::CSSStyleSelector::styleForElement):
2306         * dom/Node.h:
2307         (WebCore::Node::selfOrAncestorHasDirAutoAttribute):
2308         (WebCore::Node::setSelfOrAncestorHasDirAutoAttribute):
2309         * html/HTMLElement.cpp:
2310         (WebCore::HTMLElement::mapToEntry):
2311         (WebCore::HTMLElement::parseMappedAttribute):
2312         (WebCore::setHasDirAutoFlagRecursively):
2313         (WebCore::HTMLElement::childrenChanged):
2314         (WebCore::HTMLElement::directionalityIfhasDirAutoAttribute):
2315         (WebCore::HTMLElement::directionality):
2316         (WebCore::HTMLElement::dirAttributeChanged):
2317         (WebCore::HTMLElement::adjustDirectionalityIfNeededAfterChildAttributeChanged):
2318         (WebCore::HTMLElement::calculateAndAdjustDirectionality):
2319         (WebCore::HTMLElement::adjustDirectionalityIfNeededAfterChildrenChanged):
2320         * html/HTMLElement.h:
2321
2322 2011-02-18  Yael Aharon  <yael.aharon@nokia.com>
2323
2324         Reviewed by Antonio Gomes.
2325
2326         Navigating downwards / upwards does not focus on the links spread across more than one line.
2327         https://bugs.webkit.org/show_bug.cgi?id=54639
2328
2329         When 2 anchor elements span more than one line each, and one ends on the same line that the
2330         second starts on, the rects reported by their renderers are overlapping. When handling
2331         2 overlapping nodes, check for this case, and don't assume that one of the nodes is on a higher layer.   
2332
2333         Test: fast/spatial-navigation/snav-two-elements-one-line.html
2334
2335         * page/FocusController.cpp:
2336         (WebCore::updateFocusCandidateIfNeeded):
2337         (WebCore::FocusController::findFocusCandidateInContainer):
2338         * page/SpatialNavigation.cpp:
2339         (WebCore::areElementsOnSameLine):
2340         (WebCore::distanceDataForNode):
2341         * page/SpatialNavigation.h:
2342
2343 2011-02-18  Ben Vanik  <benvanik@google.com>
2344
2345         Reviewed by Kenneth Russell.
2346
2347         Bug 53940: Implement the OES_vertex_array_object WebGL extension
2348         https://bugs.webkit.org/show_bug.cgi?id=53940
2349
2350         Initial implementation of the OES_vertex_array_object extension adding the OESVertexArrayObject
2351         extension container and WebGLVertexArrayObjectOES VAO object. The extension is plumbed through
2352         the Extensions3D interface and implemented in the Extensions3DOpenGL (WebKit/OSX) version when
2353         it is available.
2354         Two big changes touching code outside of the extension files:
2355         * Moved the typedefs at the top of GraphicsContext3D.h to GraphicsTypes3D.h (modeled after
2356           GraphicsTypes.h). They are not namespaced as they weren't before.
2357         * To make the code cleaner/clearer all vertex attribute state has been moved to the
2358           WebGLVertexArrayObjectOES type (struct VertexAttribState) except for values which are still
2359           on the WebGLRenderingContext. A default VAO is now used to store the existing attribute
2360           states for when no other VAO is used. Code in WebGLRenderingContext dealing with buffers and
2361           vertex attributes now defers to or stores values in the bound array object.
2362
2363         Tested against the WebGL conformance suite and the new
2364         oes-vertex-array-object test:
2365         https://cvs.khronos.org/svn/repos/registry/trunk/public/webgl/sdk/tests/conformance/oes-vertex-array-object.html
2366
2367         * CMakeLists.txt:
2368         * CodeGenerators.pri:
2369         * DerivedSources.make:
2370         * GNUmakefile.am:
2371         * WebCore.gyp: Modified property svn:ignore.
2372         * WebCore.gypi:
2373         * WebCore.pro:
2374         * WebCore.xcodeproj/project.pbxproj:
2375         * bindings/js/JSWebGLRenderingContextCustom.cpp:
2376         (WebCore::toJS):
2377         * bindings/v8/custom/V8WebGLRenderingContextCustom.cpp:
2378         (WebCore::toV8Object):
2379         * html/canvas/OESVertexArrayObject.cpp: Added.
2380         (WebCore::OESVertexArrayObject::OESVertexArrayObject):
2381         (WebCore::OESVertexArrayObject::~OESVertexArrayObject):
2382         (WebCore::OESVertexArrayObject::getName):
2383         (WebCore::OESVertexArrayObject::create):
2384         (WebCore::OESVertexArrayObject::createVertexArrayOES):
2385         (WebCore::OESVertexArrayObject::deleteVertexArrayOES):
2386         (WebCore::OESVertexArrayObject::isVertexArrayOES):
2387         (WebCore::OESVertexArrayObject::bindVertexArrayOES):
2388         * html/canvas/OESVertexArrayObject.h: Added.
2389         * html/canvas/OESVertexArrayObject.idl: Added.
2390         * html/canvas/WebGLExtension.h:
2391         * html/canvas/WebGLGetInfo.cpp:
2392         (WebCore::WebGLGetInfo::WebGLGetInfo):
2393         (WebCore::WebGLGetInfo::getWebGLVertexArrayObjectOES):
2394         * html/canvas/WebGLGetInfo.h:
2395         * html/canvas/WebGLRenderingContext.cpp:
2396         (WebCore::WebGLRenderingContext::initializeNewContext):
2397         (WebCore::WebGLRenderingContext::bindBuffer):
2398         (WebCore::WebGLRenderingContext::deleteBuffer):
2399         (WebCore::WebGLRenderingContext::disableVertexAttribArray):
2400         (WebCore::WebGLRenderingContext::validateElementArraySize):
2401         (WebCore::WebGLRenderingContext::validateIndexArrayConservative):
2402         (WebCore::WebGLRenderingContext::validateIndexArrayPrecise):
2403         (WebCore::WebGLRenderingContext::validateRenderingState):
2404         (WebCore::WebGLRenderingContext::drawElements):
2405         (WebCore::WebGLRenderingContext::enableVertexAttribArray):
2406         (WebCore::WebGLRenderingContext::getExtension):
2407         (WebCore::WebGLRenderingContext::getParameter):
2408         (WebCore::WebGLRenderingContext::getSupportedExtensions):
2409         (WebCore::WebGLRenderingContext::getVertexAttrib):
2410         (WebCore::WebGLRenderingContext::vertexAttribPointer):
2411         (WebCore::WebGLRenderingContext::validateBufferDataParameters):
2412         (WebCore::WebGLRenderingContext::vertexAttribfImpl):
2413         (WebCore::WebGLRenderingContext::vertexAttribfvImpl):
2414         (WebCore::WebGLRenderingContext::initVertexAttrib0):
2415         (WebCore::WebGLRenderingContext::simulateVertexAttrib0):
2416         (WebCore::WebGLRenderingContext::restoreStatesAfterVertexAttrib0Simulation):
2417         (WebCore::WebGLRenderingContext::getNumberOfExtensions):
2418         (WebCore::WebGLRenderingContext::getExtensionNumber):
2419         * html/canvas/WebGLRenderingContext.h:
2420         (WebCore::WebGLRenderingContext::getMaxVertexAttribs):
2421         (WebCore::WebGLRenderingContext::setBoundVertexArrayObject):
2422         (WebCore::WebGLRenderingContext::VertexAttribValue::VertexAttribValue):
2423         * html/canvas/WebGLVertexArrayObjectOES.cpp: Added.
2424         (WebCore::WebGLVertexArrayObjectOES::create):
2425         (WebCore::WebGLVertexArrayObjectOES::WebGLVertexArrayObjectOES):
2426         (WebCore::WebGLVertexArrayObjectOES::deleteObjectImpl):
2427         * html/canvas/WebGLVertexArrayObjectOES.h: Added.
2428         (WebCore::WebGLVertexArrayObjectOES::~WebGLVertexArrayObjectOES):
2429         (WebCore::WebGLVertexArrayObjectOES::VertexAttribState::VertexAttribState):
2430         (WebCore::WebGLVertexArrayObjectOES::isDefaultObject):
2431         (WebCore::WebGLVertexArrayObjectOES::hasEverBeenBound):
2432         (WebCore::WebGLVertexArrayObjectOES::setHasEverBeenBound):
2433         (WebCore::WebGLVertexArrayObjectOES::getElementArrayBuffer):
2434         (WebCore::WebGLVertexArrayObjectOES::setElementArrayBuffer):
2435         (WebCore::WebGLVertexArrayObjectOES::getVertexAttribState):
2436         (WebCore::WebGLVertexArrayObjectOES::isVertexArray):
2437         * html/canvas/WebGLVertexArrayObjectOES.idl: Added.
2438         * platform/graphics/Extensions3D.h:
2439         * platform/graphics/GraphicsContext3D.h:
2440         * platform/graphics/GraphicsTypes3D.h: Added.
2441         * platform/graphics/chromium/Extensions3DChromium.h:
2442         * platform/graphics/opengl/Extensions3DOpenGL.cpp:
2443         (WebCore::Extensions3DOpenGL::supports):
2444         (WebCore::Extensions3DOpenGL::createVertexArrayOES):
2445         (WebCore::Extensions3DOpenGL::deleteVertexArrayOES):
2446         (WebCore::Extensions3DOpenGL::isVertexArrayOES):
2447         (WebCore::Extensions3DOpenGL::bindVertexArrayOES):
2448         * platform/graphics/opengl/Extensions3DOpenGL.h:
2449         * platform/graphics/qt/Extensions3DQt.cpp:
2450         (WebCore::Extensions3DQt::createVertexArrayOES):
2451         (WebCore::Extensions3DQt::deleteVertexArrayOES):
2452         (WebCore::Extensions3DQt::isVertexArrayOES):
2453         (WebCore::Extensions3DQt::bindVertexArrayOES):
2454         * platform/graphics/qt/Extensions3DQt.h:
2455
2456 2011-02-17  Alexander Pavlov  <apavlov@chromium.org>
2457
2458         Reviewed by Pavel Feldman.
2459
2460         Web Inspector: reflect changes to styles when they happen outside inspector.
2461         https://bugs.webkit.org/show_bug.cgi?id=44620
2462
2463         Notify InspectorInstrumentation of inline style changes from CSSMutableStyleDeclaration
2464         whenever the style change does not come from a direct "style" attribute modification.
2465         The performance regression occurs only with the Web Inspector opened, when inline styles
2466         are modified through setting style.cssText or style.<styleAttribute>: according to the Web Inspector protocol,
2467         an attribute change requires that all attributes for the node in question be pushed into the frontend.
2468
2469         Test: inspector/styles/styles-update-from-js.html
2470
2471         * css/CSSMutableStyleDeclaration.cpp:
2472         (WebCore::CSSMutableStyleDeclaration::setNeedsStyleRecalc):
2473         * inspector/InspectorDOMAgent.cpp:
2474         (WebCore::RevalidateStyleAttributeTask::reset):
2475         (WebCore::RevalidateStyleAttributeTask::RevalidateStyleAttributeTask):
2476         (WebCore::RevalidateStyleAttributeTask::scheduleFor):
2477         (WebCore::RevalidateStyleAttributeTask::onTimer):
2478         (WebCore::InspectorDOMAgent::reset):
2479         (WebCore::InspectorDOMAgent::didInvalidateStyleAttr):
2480         * inspector/InspectorDOMAgent.h:
2481         * inspector/InspectorInstrumentation.cpp:
2482         (WebCore::InspectorInstrumentation::didInvalidateStyleAttrImpl):
2483         * inspector/InspectorInstrumentation.h:
2484         (WebCore::InspectorInstrumentation::didInvalidateStyleAttr):
2485         * inspector/InspectorStyleSheet.cpp:
2486         (WebCore::InspectorStyleSheetForInlineStyle::didModifyElementAttribute):
2487         (WebCore::InspectorStyleSheetForInlineStyle::ensureParsedDataReady):
2488         (WebCore::InspectorStyleSheetForInlineStyle::elementStyleText):
2489         * inspector/InspectorStyleSheet.h:
2490         * inspector/front-end/ElementsPanel.js:
2491         (WebInspector.ElementsPanel.prototype._attributesUpdated):
2492         * inspector/front-end/StylesSidebarPane.js:
2493         (WebInspector.StylesSidebarPane.prototype._rebuildSectionsForStyleRules):
2494         (WebInspector.StylesSidebarPane.prototype.addBlankSection):
2495         (WebInspector.StylePropertiesSection.prototype.onpopulate):
2496         (WebInspector.StylePropertiesSection.prototype.addNewBlankProperty):
2497         (WebInspector.ComputedStylePropertiesSection.prototype.onpopulate):
2498         (WebInspector.BlankStylePropertiesSection):
2499         (WebInspector.StylePropertyTreeElement):
2500         (WebInspector.StylePropertyTreeElement.prototype):
2501         (WebInspector.StylePropertyTreeElement.prototype.element.userInput.previousContent.context.moveDirection):
2502
2503 2011-02-16  Tony Gentilcore  <tonyg@chromium.org>
2504
2505         Reviewed by Eric Seidel.
2506
2507         Refactor pumpTokenizer loop
2508         https://bugs.webkit.org/show_bug.cgi?id=54574
2509
2510         1. This makes pumpTokenizer() safe to call when waiting for a script or when about to get
2511            the next token, although ASSERTs still enforce that we aren't waiting for a script. This
2512            enables resumeParsingAfterYield() to call pumpTokenizer with no modifications even if we
2513            yield before running a script rather than before taking a token (see bug 54355).
2514         2. This also picks up the refCount >= 1 assert when stopped.
2515
2516         Tested PerformanceTests/Parser to verify no regression. If anything it got faster.
2517         Before:
2518           avg 985.05
2519           median 985.5
2520           stdev 3.007906248539007
2521           min 980
2522           max 990
2523         After:
2524           avg 980.05
2525           median 981
2526           stdev 3.122098653149833
2527           min 974
2528           max 985
2529
2530         No new tests because no new functionality.
2531
2532         * html/parser/HTMLDocumentParser.cpp:
2533         (WebCore::HTMLDocumentParser::canTakeNextToken): Added.
2534         (WebCore::HTMLDocumentParser::pumpTokenizer):
2535         * html/parser/HTMLDocumentParser.h:
2536
2537 2011-02-18  Sheriff Bot  <webkit.review.bot@gmail.com>
2538
2539         Unreviewed, rolling out r79003.
2540         http://trac.webkit.org/changeset/79003
2541         https://bugs.webkit.org/show_bug.cgi?id=54753
2542
2543         It broke tests on GTK bots (Requested by Ossy on #webkit).
2544
2545         * accessibility/AccessibilityRenderObject.cpp:
2546         (WebCore::lastChildConsideringContinuation):
2547         * dom/Node.cpp:
2548         (WebCore::Node::removeEventListener):
2549         * html/DateComponents.cpp:
2550         (WebCore::DateComponents::parseTime):
2551
2552 2011-02-18  Csaba Osztrogonác  <ossy@webkit.org>
2553
2554         Rubber-stamped by Andreas Kling.
2555
2556         Warning fix. Use ASSERT_UNUSED() instead of ASSERT().
2557
2558         * accessibility/AccessibilityRenderObject.cpp:
2559         (WebCore::lastChildConsideringContinuation):
2560         * dom/Node.cpp:
2561         (WebCore::Node::removeEventListener):
2562         * html/DateComponents.cpp:
2563         (WebCore::DateComponents::parseTime):
2564
2565 2011-02-18  Andrey Adaikin  <aandrey@google.com>
2566
2567         Reviewed by Pavel Feldman.
2568
2569         Web Inspector: [Text editor] Optimize editing updates in main panel
2570         https://bugs.webkit.org/show_bug.cgi?id=54661
2571
2572         * inspector/front-end/TextViewer.js:
2573         (WebInspector.TextViewer):
2574         (WebInspector.TextViewer.prototype._textChanged):
2575         (WebInspector.TextViewer.prototype._enterInternalTextChangeMode):
2576         (WebInspector.TextViewer.prototype._exitInternalTextChangeMode):
2577         (WebInspector.TextViewer.prototype._syncDecorationsForLine):
2578         (WebInspector.TextEditorChunkedPanel.prototype.textChanged):
2579         (WebInspector.TextEditorChunkedPanel.prototype._scroll):
2580         (WebInspector.TextEditorChunkedPanel.prototype.chunkForLine):
2581         (WebInspector.TextEditorChunkedPanel.prototype._totalHeight):
2582         (WebInspector.TextEditorGutterPanel.prototype._expandChunks):
2583         (WebInspector.TextEditorGutterChunk):
2584         (WebInspector.TextEditorGutterChunk.prototype.addDecoration):
2585         (WebInspector.TextEditorGutterChunk.prototype.removeDecoration):
2586         (WebInspector.TextEditorMainPanel):
2587         (WebInspector.TextEditorMainPanel.prototype._expandChunks):
2588         (WebInspector.TextEditorMainPanel.prototype._highlightDataReady):
2589         (WebInspector.TextEditorMainPanel.prototype._markSkippedPaintLines):
2590         (WebInspector.TextEditorMainPanel.prototype._paintSkippedLines):
2591         (WebInspector.TextEditorMainPanel.prototype._paintLines):
2592         (WebInspector.TextEditorMainPanel.prototype._paintLine):
2593         (WebInspector.TextEditorMainPanel.prototype._positionToSelection):
2594         (WebInspector.TextEditorMainPanel.prototype._applyDomUpdates):
2595         (WebInspector.TextEditorMainPanel.prototype._updateChunksForRanges):
2596         (WebInspector.TextEditorMainPanel.prototype._updateHighlightsForRange):
2597         (WebInspector.TextEditorMainPanel.prototype._collectLinesFromDiv):
2598         (WebInspector.TextEditorMainChunk):
2599         (WebInspector.TextEditorMainChunk.prototype.get startLine):
2600         (WebInspector.TextEditorMainChunk.prototype.set startLine):
2601         (WebInspector.TextEditorMainChunk.prototype.getExpandedLineRow):
2602         (WebInspector.TextEditorMainChunk.prototype.updateCollapsedLineRow):
2603
2604 2011-02-18  Steve Block  <steveblock@google.com>
2605
2606         Reviewed by Andreas Kling
2607
2608         Memory allocation error in convertV8ObjectToNPVariant() for strings
2609         https://bugs.webkit.org/show_bug.cgi?id=54737
2610
2611         Include the termination character in the length when allocating memory
2612         and copying the string. This fixes a crashing bug on Android.
2613
2614         This should be tested by the java/ tests on Chromium, but these
2615         tests are currently skipped.
2616
2617         * bindings/v8/V8NPUtils.cpp:
2618         (WebCore::convertV8ObjectToNPVariant):
2619
2620 2011-02-18  Philippe Normand  <pnormand@igalia.com>
2621
2622         Unreviewed, rolling out r78979.
2623         http://trac.webkit.org/changeset/78979
2624         https://bugs.webkit.org/show_bug.cgi?id=53146
2625
2626         causes multiple crashes on GTK
2627
2628         * accessibility/gtk/AXObjectCacheAtk.cpp:
2629         (WebCore::notifyChildrenSelectionChange):
2630         (WebCore::AXObjectCache::postPlatformNotification):
2631
2632 2011-02-18  Philippe Normand  <pnormand@igalia.com>
2633
2634         Reviewed by Martin Robinson.
2635
2636         [GTK] minimal build unrecognized options
2637         https://bugs.webkit.org/show_bug.cgi?id=50890
2638
2639         * GNUmakefile.am: new feature defines for optional features build.
2640
2641 2011-02-17  Hans Wennborg  <hans@chromium.org>
2642
2643         Reviewed by Jeremy Orlow.
2644
2645         IndexedDB: Populate indexes created for object stores with data
2646         https://bugs.webkit.org/show_bug.cgi?id=54669
2647
2648         Make sure that indices for object stores that already hold data get
2649         populated.
2650
2651         * storage/IDBIndexBackendImpl.h:
2652         (WebCore::IDBIndexBackendImpl::hasValidId):
2653         * storage/IDBObjectStoreBackendImpl.cpp:
2654         (WebCore::IDBObjectStoreBackendImpl::putInternal):
2655         (WebCore::populateIndex):
2656         (WebCore::IDBObjectStoreBackendImpl::createIndexInternal):
2657
2658 2011-02-18  Mario Sanchez Prada  <msanchez@igalia.com>
2659
2660         Reviewed by Martin Robinson.
2661
2662         [GTK] Combo boxes should emit object:selection-changed even when collapsed
2663         https://bugs.webkit.org/show_bug.cgi?id=53146
2664
2665         Emit the selection-changed signals when the menu list value has changed
2666
2667         Test: platform/gtk/accessibility/combo-box-collapsed-selection-changed.html
2668
2669         * accessibility/gtk/AXObjectCacheAtk.cpp:
2670         (WebCore::getListObject): New, return the right list object for
2671         menu lists and list boxes.
2672         (WebCore::notifyChildrenSelectionChange): Support menu lists.
2673         (WebCore::AXObjectCache::postPlatformNotification): Call function
2674         notifyChildrenSelectionChange for AXMenuListValueChanged.
2675
2676 2011-02-18  Mario Sanchez Prada  <msanchez@igalia.com>
2677
2678         Reviewed by Martin Robinson.
2679
2680         [Gtk] atk_text_get_selection/atk_text_set_selection fails for list items
2681         https://bugs.webkit.org/show_bug.cgi?id=53453
2682
2683         Ensure that atk_text_{get|set}_selection() work with list items.
2684
2685         * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
2686         (webkit_accessible_text_get_text): Properly handle list item
2687         markers when returning the text for an object for a given interval
2688         specified through the startOffset and endOffset parameters.
2689         (getSelectionOffsetsForObject): Bear in mind list item markers
2690         when returning the offsets for a selection over a list item.
2691         (webkit_accessible_text_set_selection): Adjust offsets if needed
2692         for list items with item markers. Ensure that it returns TRUE only
2693         when everything went fine setting the text selection.
2694
2695 2011-02-18  Antti Koivisto  <antti@apple.com>
2696
2697         Reviewed by Maciej Stachowiak.
2698
2699         https://bugs.webkit.org/show_bug.cgi?id=54728
2700         checkSelector*Value functions used in fastCheckSelector fail to inline
2701         
2702         Wrap the functions used as template arguments to classes.
2703
2704         * css/CSSStyleSelector.cpp:
2705         (WebCore::fastCheckSingleSelector):
2706         (WebCore::ClassCheck::checkValue):
2707         (WebCore::IdCheck::checkValue):
2708         (WebCore::TagCheck::checkValue):
2709         (WebCore::CSSStyleSelector::SelectorChecker::fastCheckSelector):
2710
2711 2011-02-17  Simon Fraser  <simon.fraser@apple.com>
2712
2713         Reviewed by Sam Weinig.
2714
2715         Composited iframe content is missing from snapshots in WebKit2
2716         https://bugs.webkit.org/show_bug.cgi?id=54696
2717
2718         We need to propagate the 'flattening' paint behavior flag
2719         down to subviews while painting. WebKit1 does this via
2720         code in WebFrameView, but this is a more general fix
2721         that works in WebKit2 as well.
2722         
2723         Made a utility method, parentFrameView(), which I changed
2724         some other methods to use as well.
2725         
2726         * page/FrameView.cpp:
2727         (WebCore::FrameView::isEnclosedInCompositingLayer):
2728         (WebCore::FrameView::useSlowRepaints):
2729         (WebCore::FrameView::useSlowRepaintsIfNotOverlapped):
2730         (WebCore::FrameView::isOverlappedIncludingAncestors):
2731         (WebCore::FrameView::parentFrameView):
2732         (WebCore::FrameView::paintContents):
2733         * page/FrameView.h:
2734
2735 2011-02-17  Dan Bernstein  <mitz@apple.com>
2736
2737         Reviewed by Simon Fraser.
2738
2739         <rdar://problem/8898595> Pages that use fixed positioning display poorly when scaled
2740
2741         * html/HTMLBodyElement.cpp:
2742         (WebCore::adjustForZoom): Account for page scale.
2743         (WebCore::HTMLBodyElement::setScrollLeft): Ditto.
2744         (WebCore::HTMLBodyElement::setScrollTop): Ditto.
2745         * page/FrameView.cpp:
2746         (WebCore::FrameView::scrollXForFixedPosition): Moved from ScrollView here and changed to
2747         account for page scale: when the page is scaled, the “viewport” with respect to which fixed
2748         objects are positioned is scaled as well. Since it’s now bigger than the real viewport (that is,
2749         the frame view), we move it around in proportion to the document scroll, so that when the document
2750         is fully scrolled to the bottom-right, the bottom right of the scaled viewport is visible.
2751         (WebCore::FrameView::scrollYForFixedPosition): Ditto.
2752         (WebCore::FrameView::scrollOffsetForFixedPosition): Moved from ScrollView here.
2753         * page/FrameView.h:
2754         * platform/ScrollView.cpp: Moved functions to FrameView.
2755         * platform/ScrollView.h:
2756         * rendering/RenderLayer.cpp:
2757         (WebCore::RenderLayer::updateRepaintRectsAfterScroll): Account for the RenderView being transformed.
2758         (WebCore::RenderLayer::calculateClipRects): Used scrollOffsetForFixedPosition().
2759         (WebCore::RenderLayer::backgroundClipRect): Ditto.
2760
2761 2011-02-17  Kenneth Russell  <kbr@google.com>
2762
2763         Reviewed by James Robinson.
2764
2765         Add support for GPU accelerated path rendering
2766         https://bugs.webkit.org/show_bug.cgi?id=44729
2767
2768         Incorporates the Loop and Blinn path rendering algorithm as an
2769         option to the GPU-accelerated canvas code, currently only compiled
2770         in to the Chromium port. Currently it's toggled by changing a
2771         hardcoded constant in
2772         SharedGraphicsContext3D::useLoopBlinnForPathRendering() and is
2773         disabled by default. This mechanism can be improved once we've
2774         gained more confidence in the implementation. There are some known
2775         bugs that need to be fixed first.
2776
2777         No new tests; ran some 2D Canvas tests manually with the new flag
2778         both enabled and disabled.
2779
2780         * WebCore.gypi:
2781         * platform/graphics/chromium/GLES2Canvas.cpp:
2782         (WebCore::GLES2Canvas::GLES2Canvas):
2783         (WebCore::GLES2Canvas::fillPath):
2784         * platform/graphics/chromium/GLES2Canvas.h:
2785         * platform/graphics/gpu/LoopBlinnClassifier.h:
2786         * platform/graphics/gpu/LoopBlinnLocalTriangulator.h:
2787         * platform/graphics/gpu/SharedGraphicsContext3D.cpp:
2788         (WebCore::SharedGraphicsContext3D::create):
2789         (WebCore::SharedGraphicsContext3D::SharedGraphicsContext3D):
2790         (WebCore::SharedGraphicsContext3D::createBuffer):
2791         (WebCore::SharedGraphicsContext3D::bindBuffer):
2792         (WebCore::SharedGraphicsContext3D::bufferData):
2793         (WebCore::SharedGraphicsContext3D::bufferSubData):
2794         (WebCore::SharedGraphicsContext3D::useLoopBlinnForPathRendering):
2795         (WebCore::SharedGraphicsContext3D::useLoopBlinnInteriorProgram):
2796         (WebCore::SharedGraphicsContext3D::useLoopBlinnExteriorProgram):
2797         * platform/graphics/gpu/SharedGraphicsContext3D.h:
2798         * platform/graphics/skia/GraphicsContextSkia.cpp:
2799         (WebCore::GraphicsContext::fillPath):
2800
2801 2011-02-16  Stephen White  <senorblanco@chromium.org>
2802
2803         Reviewed by James Robinson.
2804
2805         Layout Test fast/canvas/setWidthResetAfterForcedRender.html fails on
2806         accelerated 2D canvas w/compositor enabled.
2807         https://bugs.webkit.org/show_bug.cgi?id=54561
2808
2809         When resetting the CanvasRenderingContext2D, we also need to send a
2810         contentChanged() to the relevant RenderLayer.  This is similar to what
2811         is done in didDraw().
2812
2813         Covered by fast/canvas/setWidthResetAfterForcedRender.html, but note 
2814         that this test will still fail pixel tests because the compositor
2815         is not compatible with repaint tests (the green square is now white,
2816         but the half-transparent grey repaint rect does not appear).
2817
2818         * html/canvas/CanvasRenderingContext2D.cpp:
2819         (WebCore::CanvasRenderingContext2D::reset):
2820
2821 2011-02-17  Sergey Glazunov  <serg.glazunov@gmail.com>
2822
2823         Reviewed by Kenneth Russell.
2824
2825         Null out the WEBKIT_lose_context WebGL extension's context pointer when
2826         the WebGL rendering context is removed.
2827         https://bugs.webkit.org/show_bug.cgi?id=54679
2828
2829         Test: fast/canvas/webgl/context-destroyed-crash.html
2830
2831         * html/canvas/WebGLRenderingContext.cpp:
2832         (WebCore::WebGLRenderingContext::~WebGLRenderingContext):
2833         * html/canvas/WebKitLoseContext.cpp:
2834         (WebCore::WebKitLoseContext::loseContext): Add null-check for m_context.
2835         * html/canvas/WebKitLoseContext.h:
2836         (WebCore::WebKitLoseContext::contextDestroyed):
2837
2838 2011-02-17  Kenneth Russell  <kbr@google.com>
2839
2840         Reviewed by Chris Marrin.
2841
2842         Construction of Uint8Array from JS Array (and possibly others) incorrectly clamps values
2843         https://bugs.webkit.org/show_bug.cgi?id=52768
2844
2845         Removed incorrect clamping code from IntegralTypedArrayBase. Fixed
2846         code which casts from incoming double to the destination type.
2847         Changed the JSC bindings to use this code, rather than a copy of
2848         the casting code and a different constructor, in order to reuse
2849         the fix.
2850
2851         * bindings/js/JSArrayBufferViewHelper.h:
2852         (WebCore::constructArrayBufferView):
2853         * html/canvas/Int32Array.h:
2854         (WebCore::Int32Array::set):
2855         * html/canvas/Int8Array.h:
2856         (WebCore::Int8Array::set):
2857         * html/canvas/IntegralTypedArrayBase.h:
2858         (WebCore::IntegralTypedArrayBase::set):
2859         * html/canvas/Uint16Array.h:
2860         (WebCore::Uint16Array::set):
2861         * html/canvas/Uint32Array.h:
2862         (WebCore::Uint32Array::set):
2863         * html/canvas/Uint8Array.h:
2864         (WebCore::Uint8Array::set):
2865
2866 2011-02-17  Sam Weinig  <sam@webkit.org>
2867
2868         Reviewed by Dan Bernstein.
2869
2870         Knob proportion not quite right during rubber-band.
2871         <rdar://problem/9015201>
2872
2873         Change knob proportion algorithm to treat overhang as making the view smaller,
2874         rather than document bigger.
2875
2876         * platform/mac/ScrollbarThemeMac.mm:
2877         (WebCore::ScrollbarThemeMac::paint):
2878
2879 2011-02-16  Luiz Agostini  <luiz.agostini@openbossa.org>
2880
2881         Reviewed by Andreas Kling.
2882
2883         Summary: HTML5 <details> and <summary>: HTMLSummaryElement
2884         https://bugs.webkit.org/show_bug.cgi?id=54584
2885
2886         Adding class HTMLSummaryElement to build systems. This class will be used in
2887         the implementation of new HTML5 tag <summary>.
2888
2889         * CMakeLists.txt:
2890         * GNUmakefile.am:
2891         * WebCore.gypi:
2892         * WebCore.pro:
2893         * WebCore.vcproj/WebCore.vcproj:
2894         * WebCore.xcodeproj/project.pbxproj:
2895         * html/HTMLElementsAllInOne.cpp:
2896         * html/HTMLSummaryElement.cpp: Added.
2897         (WebCore::HTMLSummaryElement::create):
2898         (WebCore::HTMLSummaryElement::HTMLSummaryElement):
2899         * html/HTMLSummaryElement.h: Added.
2900         * html/HTMLTagNames.in:
2901
2902 2011-02-17  Jeremy Orlow  <jorlow@chromium.org>
2903
2904         Reviewed by Nate Chapin.
2905
2906         Throwing in an IndexedDB error or success event should lead to the transaction aborting
2907         https://bugs.webkit.org/show_bug.cgi?id=54249
2908
2909         When an exception is thrown but not handled  within an IDBRequests success/error event,
2910         we should abort the transaction.
2911
2912         Test: storage/indexeddb/exception-in-event-aborts.html
2913
2914         * bindings/js/JSEventListener.cpp:
2915         (WebCore::JSEventListener::handleEvent):
2916         * bindings/js/JSEventTarget.cpp:
2917         (WebCore::toJS):
2918         * bindings/v8/V8AbstractEventListener.cpp:
2919         (WebCore::V8AbstractEventListener::invokeEventHandler):
2920         * dom/EventTarget.cpp:
2921         (WebCore::EventTarget::uncaughtExceptionInEventHandler):
2922         * dom/EventTarget.h:
2923         * storage/IDBRequest.cpp:
2924         (WebCore::IDBRequest::uncaughtExceptionInEventHandler):
2925         * storage/IDBRequest.h:
2926
2927 2011-02-17  Sam Weinig  <sam@webkit.org>
2928
2929         Reviewed by Maciej Stachowiak.
2930
2931         WebKit2: Support Dictionary popup
2932         <rdar://problem/7660670>
2933
2934         Add some necessary exports.
2935
2936         * WebCore.exp.in:
2937
2938 2011-02-17  W. James MacLean  <wjmaclean@chromium.org>
2939
2940         Reviewed by James Robinson.
2941
2942         [chromium] Add command-line flag to enable composite to offscreen texture.
2943         https://bugs.webkit.org/show_bug.cgi?id=52311
2944
2945         Add plumbing to allow command-line switch to enable offscreen compositing. Function
2946         LayerRendererChromium::copyOffscreenTextureToDisplay used for now to mimic
2947         normal renderer operation.
2948
2949         Existing functionality not changed; offscreen compositing will be tested via GPU test framework.
2950
2951         * platform/graphics/chromium/LayerRendererChromium.cpp:
2952         (WebCore::LayerRendererChromium::setRootLayer):
2953         (WebCore::LayerRendererChromium::setCompositeOffscreen):
2954         (WebCore::LayerRendererChromium::copyOffscreenTextureToDisplay):
2955         (WebCore::LayerRendererChromium::useRenderSurface):
2956         (WebCore::LayerRendererChromium::setScissorToRect):
2957         * platform/graphics/chromium/LayerRendererChromium.h:
2958         (WebCore::LayerRendererChromium::isCompositingOffscreen):
2959
2960 2011-02-17  Kevin Ollivier  <kevino@theolliviers.com>
2961
2962         [wx] Build fixes after recent changes.
2963
2964         * dom/ScriptedAnimationController.h:
2965         * platform/graphics/wx/FontWx.cpp:
2966         (WebCore::Font::drawComplexText):
2967         * platform/graphics/wx/GraphicsContextWx.cpp:
2968         (WebCore::GraphicsContext::drawLineForText):
2969         (WebCore::GraphicsContext::drawLineForTextChecking):
2970         * platform/wx/WidgetWx.cpp:
2971         (WebCore::Widget::setFrameRect):
2972
2973 2011-02-16  Brian Weinstein  <bweinstein@apple.com>
2974
2975         Reviewed by Brady Eidson.
2976
2977         WebKit2: Need a way to manage the WebCore Cache
2978         https://bugs.webkit.org/show_bug.cgi?id=54501
2979         
2980         Add a way to get a set of all of the origins that have entries in the
2981         WebCore memory cache, and a method to remove all resources from the memory
2982         cache from a given security origin.
2983
2984         No change in behavior.
2985
2986         * WebCore.exp.in: Add functions that need to be exported.
2987         * loader/cache/MemoryCache.cpp:
2988         (WebCore::MemoryCache::removeResourcesWithOrigin):
2989         (WebCore::MemoryCache::getOriginsWithCache):
2990         * loader/cache/MemoryCache.h:
2991
2992 2011-02-16  David Hyatt  <hyatt@apple.com>
2993
2994         Reviewed by Dan Bernstein.
2995
2996         https://bugs.webkit.org/show_bug.cgi?id=54244
2997         
2998         Convert the line box tree to floating point and eliminate font rounding hacks.  This patch removes all of the rounding
2999         hacks from the Font code and makes sure all Font APIs involving width measurement and width offsets use floats.
3000         
3001         The line box tree's x, y and logicalWidth members have all been converted to floats and all of the line box APIs have
3002         been changed as well.
3003         
3004         In terms of pixel adjustments, overflow is using an enclosing model (so it will be enclosingIntRect of a line box's x/y/width/height).
3005         
3006         Background and border painting is using a rounding model, so borders and backgrounds will round to the nearest pixel when painting.
3007         
3008         Replaced elements still snap to integer positions on lines, and they use a rounding model as well, although their underlying line boxes
3009         still have a precise floating point position.
3010
3011         Justification will now allow subpixel positioning to occur as well.  Platforms that don't support subpixel positioning should already
3012         be rounding justification spacing in their font code.
3013
3014         Many layout test results change on Mac, since rounding hacks were used there and are now gone.
3015
3016         * WebCore.exp.in:
3017         * html/canvas/CanvasRenderingContext2D.cpp:
3018         (WebCore::CanvasRenderingContext2D::drawTextInternal):
3019         * platform/chromium/FileChooserChromium.cpp:
3020         (WebCore::FileChooser::basenameForWidth):
3021         * platform/graphics/Font.cpp:
3022         (WebCore::Font::width):
3023         * platform/graphics/Font.h:
3024         (WebCore::Font::spaceWidth):
3025         (WebCore::Font::tabWidth):
3026         * platform/graphics/FontFastPath.cpp:
3027         (WebCore::Font::getGlyphsAndAdvancesForSimpleText):
3028         * platform/graphics/GraphicsContext.cpp:
3029         (WebCore::GraphicsContext::drawText):
3030         (WebCore::GraphicsContext::drawEmphasisMarks):
3031         (WebCore::GraphicsContext::drawBidiText):
3032         (WebCore::GraphicsContext::drawHighlightForText):
3033         * platform/graphics/GraphicsContext.h:
3034         * platform/graphics/SimpleFontData.cpp:
3035         (WebCore::SimpleFontData::SimpleFontData):
3036         (WebCore::SimpleFontData::platformGlyphInit):
3037         * platform/graphics/SimpleFontData.h:
3038         (WebCore::SimpleFontData::spaceWidth):
3039         * platform/graphics/StringTruncator.cpp:
3040         (WebCore::stringWidth):
3041         (WebCore::truncateString):
3042         (WebCore::StringTruncator::centerTruncate):
3043         (WebCore::StringTruncator::rightTruncate):
3044         (WebCore::StringTruncator::width):
3045         * platform/graphics/StringTruncator.h:
3046         * platform/graphics/TextRun.h:
3047         (WebCore::TextRun::TextRun):
3048         (WebCore::TextRun::xPos):
3049         (WebCore::TextRun::expansion):
3050         (WebCore::TextRun::directionalOverride):
3051         (WebCore::TextRun::disableSpacing):
3052         * platform/graphics/WidthIterator.cpp:
3053         (WebCore::WidthIterator::WidthIterator):
3054         (WebCore::WidthIterator::advance):
3055         * platform/graphics/WidthIterator.h:
3056         * platform/graphics/cairo/GraphicsContextCairo.cpp:
3057         (WebCore::GraphicsContext::drawLineForText):
3058         (WebCore::GraphicsContext::drawLineForTextChecking):
3059         * platform/graphics/cg/GraphicsContextCG.cpp:
3060         (WebCore::GraphicsContext::drawLineForText):
3061         * platform/graphics/mac/ComplexTextController.cpp:
3062         (WebCore::ComplexTextController::ComplexTextController):
3063         (WebCore::ComplexTextController::advance):
3064         (WebCore::ComplexTextController::adjustGlyphsAndAdvances):
3065         * platform/graphics/mac/ComplexTextController.h:
3066         * platform/graphics/mac/FontComplexTextMac.cpp:
3067         (WebCore::Font::getGlyphsAndAdvancesForComplexText):
3068         * platform/graphics/mac/GraphicsContextMac.mm:
3069         (WebCore::GraphicsContext::drawLineForTextChecking):
3070         * platform/graphics/qt/GraphicsContextQt.cpp:
3071         (WebCore::GraphicsContext::drawLineForText):
3072         (WebCore::GraphicsContext::drawLineForTextChecking):
3073         * platform/graphics/qt/SimpleFontDataQt.cpp:
3074         (WebCore::SimpleFontData::platformGlyphInit):
3075         * platform/graphics/skia/GraphicsContextSkia.cpp:
3076         (WebCore::GraphicsContext::drawLineForTextChecking):
3077         (WebCore::GraphicsContext::drawLineForText):
3078         * platform/graphics/win/GraphicsContextCGWin.cpp:
3079         (WebCore::GraphicsContext::drawLineForTextChecking):
3080         * platform/graphics/win/UniscribeController.cpp:
3081         (WebCore::UniscribeController::shapeAndPlaceItem):
3082         * platform/gtk/FileChooserGtk.cpp:
3083         (WebCore::FileChooser::basenameForWidth):
3084         * platform/mac/DragImageMac.mm:
3085         (WebCore::widthWithFont):
3086         (WebCore::drawAtPoint):
3087         * platform/mac/FileChooserMac.mm:
3088         (WebCore::FileChooser::basenameForWidth):
3089         * platform/win/DragImageWin.cpp:
3090         (WebCore::createDragImageForLink):
3091         * platform/win/FileChooserWin.cpp:
3092         (WebCore::FileChooser::basenameForWidth):
3093         * platform/win/PopupMenuWin.cpp:
3094         (WebCore::PopupMenuWin::calculatePositionAndSize):
3095         * platform/win/WebCoreTextRenderer.cpp:
3096         (WebCore::WebCoreTextFloatWidth):
3097         * rendering/HitTestResult.cpp:
3098         (WebCore::HitTestResult::addNodeToRectBasedTestResult):
3099         * rendering/HitTestResult.h:
3100         * rendering/InlineBox.cpp:
3101         (WebCore::InlineBox::adjustPosition):
3102         (WebCore::InlineBox::placeEllipsisBox):
3103         (WebCore::InlineBox::locationIncludingFlipping):
3104         (WebCore::InlineBox::flipForWritingMode):
3105         * rendering/InlineBox.h:
3106         (WebCore::InlineBox::InlineBox):
3107         (WebCore::InlineBox::adjustLineDirectionPosition):
3108         (WebCore::InlineBox::adjustBlockDirectionPosition):
3109         (WebCore::InlineBox::setX):
3110         (WebCore::InlineBox::x):
3111         (WebCore::InlineBox::setY):
3112         (WebCore::InlineBox::y):
3113         (WebCore::InlineBox::width):
3114         (WebCore::InlineBox::height):
3115         (WebCore::InlineBox::logicalLeft):
3116         (WebCore::InlineBox::logicalRight):
3117         (WebCore::InlineBox::setLogicalLeft):
3118         (WebCore::InlineBox::pixelSnappedLogicalLeft):
3119         (WebCore::InlineBox::pixelSnappedLogicalRight):
3120         (WebCore::InlineBox::setLogicalWidth):
3121         (WebCore::InlineBox::logicalWidth):
3122         (WebCore::InlineBox::verticalAlign):
3123         * rendering/InlineFlowBox.cpp:
3124         (WebCore::InlineFlowBox::roundedFrameRect):
3125         (WebCore::InlineFlowBox::adjustPosition):
3126         (WebCore::InlineFlowBox::placeBoxesInInlineDirection):
3127         (WebCore::InlineFlowBox::adjustMaxAscentAndDescent):
3128         (WebCore::verticalPositionForBox):
3129         (WebCore::InlineFlowBox::computeLogicalBoxHeights):
3130         (WebCore::InlineFlowBox::placeBoxesInBlockDirection):
3131         (WebCore::InlineFlowBox::addBoxShadowVisualOverflow):
3132         (WebCore::InlineFlowBox::addTextBoxVisualOverflow):
3133         (WebCore::InlineFlowBox::computeOverflow):
3134         (WebCore::InlineFlowBox::setLayoutOverflow):
3135         (WebCore::InlineFlowBox::setVisualOverflow):
3136         (WebCore::InlineFlowBox::nodeAtPoint):
3137         (WebCore::InlineFlowBox::paintBoxDecorations):
3138         (WebCore::InlineFlowBox::paintMask):
3139         (WebCore::InlineFlowBox::placeEllipsisBox):
3140         * rendering/InlineFlowBox.h:
3141         (WebCore::InlineFlowBox::maxYLayoutOverflow):
3142         (WebCore::InlineFlowBox::maxXLayoutOverflow):
3143         (WebCore::InlineFlowBox::layoutOverflowRect):
3144         (WebCore::InlineFlowBox::maxYVisualOverflow):
3145         (WebCore::InlineFlowBox::maxXVisualOverflow):
3146         (WebCore::InlineFlowBox::visualOverflowRect):
3147         * rendering/InlineTextBox.cpp:
3148         (WebCore::InlineTextBox::placeEllipsisBox):
3149         (WebCore::InlineTextBox::nodeAtPoint):
3150         (WebCore::paintTextWithShadows):
3151         (WebCore::InlineTextBox::paint):
3152         (WebCore::InlineTextBox::paintSelection):
3153         (WebCore::InlineTextBox::paintCompositionBackground):
3154         (WebCore::InlineTextBox::paintDecoration):
3155         (WebCore::InlineTextBox::paintSpellingOrGrammarMarker):
3156         (WebCore::InlineTextBox::paintTextMatchMarker):
3157         (WebCore::InlineTextBox::paintDocumentMarkers):
3158         (WebCore::InlineTextBox::paintCompositionUnderline):
3159         (WebCore::InlineTextBox::textPos):
3160         (WebCore::InlineTextBox::offsetForPosition):
3161         (WebCore::InlineTextBox::positionForOffset):
3162         * rendering/InlineTextBox.h:
3163         (WebCore::InlineTextBox::setExpansion):
3164         * rendering/RenderBR.h:
3165         (WebCore::RenderBR::width):
3166         * rendering/RenderBlock.cpp:
3167         (WebCore::stripTrailingSpace):
3168         (WebCore::updatePreferredWidth):
3169         (WebCore::RenderBlock::computeInlinePreferredLogicalWidths):
3170         (WebCore::RenderBlock::adjustForBorderFit):
3171         (WebCore::RenderBlock::addFocusRingRects):
3172         * rendering/RenderBlock.h:
3173         * rendering/RenderBlockLineLayout.cpp:
3174         (WebCore::RenderBlock::computeInlineDirectionPositionsForLine):
3175         (WebCore::RenderBlock::fitBelowFloats):
3176         (WebCore::textWidth):
3177         (WebCore::tryHyphenating):
3178         (WebCore::RenderBlock::findNextLineBreak):
3179         * rendering/RenderBox.cpp:
3180         (WebCore::RenderBox::positionLineBox):
3181         (WebCore::RenderBox::flipForWritingMode):
3182         * rendering/RenderBox.h:
3183         * rendering/RenderCombineText.cpp:
3184         (WebCore::RenderCombineText::width):
3185         (WebCore::RenderCombineText::adjustTextOrigin):
3186         (WebCore::RenderCombineText::combineText):
3187         * rendering/RenderCombineText.h:
3188         (WebCore::RenderCombineText::combinedTextWidth):
3189         * rendering/RenderCounter.cpp:
3190         (WebCore::RenderCounter::computePreferredLogicalWidths):
3191         * rendering/RenderCounter.h:
3192         * rendering/RenderEmbeddedObject.cpp:
3193         (WebCore::RenderEmbeddedObject::getReplacementTextGeometry):
3194         * rendering/RenderFileUploadControl.cpp:
3195         (WebCore::RenderFileUploadControl::computePreferredLogicalWidths):
3196         * rendering/RenderImage.cpp:
3197         * rendering/RenderInline.cpp:
3198         (WebCore::RenderInline::linesBoundingBox):
3199         (WebCore::RenderInline::linesVisualOverflowBoundingBox):
3200         (WebCore::RenderInline::addFocusRingRects):
3201         (WebCore::RenderInline::paintOutline):
3202         * rendering/RenderListBox.cpp:
3203         (WebCore::RenderListBox::updateFromElement):
3204         (WebCore::RenderListBox::paintItemForeground):
3205         * rendering/RenderMenuList.cpp:
3206         (WebCore::RenderMenuList::updateOptionsWidth):
3207         * rendering/RenderText.cpp:
3208         (WebCore::RenderText::localCaretRect):
3209         (WebCore::RenderText::widthFromCache):
3210         (WebCore::RenderText::trimmedPrefWidths):
3211         (WebCore::RenderText::minLogicalWidth):
3212         (WebCore::RenderText::maxLogicalWidth):
3213         (WebCore::RenderText::computePreferredLogicalWidths):
3214         (WebCore::RenderText::firstRunOrigin):
3215         (WebCore::RenderText::firstRunX):
3216         (WebCore::RenderText::firstRunY):
3217         (WebCore::RenderText::width):
3218         (WebCore::RenderText::linesBoundingBox):
3219         * rendering/RenderText.h:
3220         * rendering/RenderTextControl.cpp:
3221         (WebCore::RenderTextControl::getAvgCharWidth):
3222         (WebCore::RenderTextControl::paintPlaceholder):
3223         * rendering/RenderTreeAsText.cpp:
3224         (WebCore::writeTextRun):
3225         * rendering/RootInlineBox.cpp:
3226         (WebCore::RootInlineBox::placeEllipsis):
3227         (WebCore::RootInlineBox::placeEllipsisBox):
3228         (WebCore::RootInlineBox::adjustPosition):
3229         (WebCore::RootInlineBox::beforeAnnotationsAdjustment):
3230         (WebCore::RootInlineBox::paddedLayoutOverflowRect):
3231         * rendering/RootInlineBox.h:
3232         * rendering/VerticalPositionCache.h:
3233         * rendering/svg/SVGInlineTextBox.cpp:
3234         (WebCore::SVGInlineTextBox::offsetForPosition):
3235         (WebCore::SVGInlineTextBox::positionForOffset):
3236         (WebCore::SVGInlineTextBox::constructTextRun):
3237         * rendering/svg/SVGInlineTextBox.h:
3238         * rendering/svg/SVGRenderTreeAsText.cpp:
3239         (WebCore::writeRenderSVGTextBox):
3240         * rendering/svg/SVGTextMetrics.cpp:
3241         (WebCore::SVGTextMetrics::SVGTextMetrics):
3242         (WebCore::constructTextRun):
3243         * svg/SVGFont.cpp:
3244         (WebCore::floatWidthMissingGlyphCallback):
3245         (WebCore::Font::drawTextUsingSVGFont):
3246
3247 2011-02-17  Nikolas Zimmermann  <nzimmermann@rim.com>
3248
3249         Reviewed by Dirk Schulze.
3250
3251         'ex' coordinates fail, when SVGFont doesn't provide an explicit xHeight attribute
3252         https://bugs.webkit.org/show_bug.cgi?id=54672
3253
3254         Measure the xHeight from the 'x' glyph of a SVGFont, if the font itself doesn't explicitely specify an x-height attribute.
3255         Fixes the modern version of SVG 1.1 2nd Edition coords-units-03-b.svg.
3256
3257         Test: svg/W3C-SVG-1.1-SE/coords-units-03-b.svg
3258
3259         * platform/graphics/SimpleFontData.cpp:
3260         (WebCore::SimpleFontData::SimpleFontData):
3261
3262 2011-02-10  Luiz Agostini  <luiz.agostini@openbossa.org>
3263
3264         Reviewed by Adam Roben.
3265
3266         HTML5 <details> and <summary>: localized text
3267         https://bugs.webkit.org/show_bug.cgi?id=54260
3268
3269         The method defaultDetailsSummaryText was added to LocalizationStrategy class and to
3270         platform/LocalizedStrings. It is used to provide the default label to be used by a
3271         <details> tag that has no <summary> child.
3272
3273         * platform/LocalizationStrategy.h:
3274         * platform/LocalizedStrings.cpp:
3275         (WebCore::fileButtonNoFileSelectedLabel):
3276         (WebCore::defaultDetailsSummaryText):
3277         * platform/LocalizedStrings.h:
3278         * platform/android/LocalizedStringsAndroid.cpp:
3279         (WebCore::defaultDetailsSummaryText):
3280         * platform/brew/LocalizedStringsBrew.cpp:
3281         (WebCore::defaultDetailsSummaryText):
3282         * platform/efl/LocalizedStringsEfl.cpp:
3283         (WebCore::defaultDetailsSummaryText):
3284         * platform/gtk/LocalizedStringsGtk.cpp:
3285         (WebCore::defaultDetailsSummaryText):
3286         * platform/haiku/LocalizedStringsHaiku.cpp:
3287         (WebCore::defaultDetailsSummaryText):
3288         * platform/wx/LocalizedStringsWx.cpp:
3289         (WebCore::defaultDetailsSummaryText):
3290
3291 2011-02-17  Kristian Amlie  <kristian.amlie@nokia.com>
3292
3293         Reviewed by Laszlo Gombos.
3294
3295         Updated include paths for phonon.
3296
3297         [Qt] WebKit patches required to work with a modularized version of Qt
3298         https://bugs.webkit.org/show_bug.cgi?id=53916
3299
3300         Build fix. No tests.
3301
3302         * WebCore.pro:
3303
3304 2011-02-17  Hui Huang  <hui.2.huang@nokia.com>
3305
3306         Reviewed by Laszlo Gombos.
3307
3308         The URL of HTML5 Video Element is percent encoded at websites such as youtube.
3309         It is percent encoded again by QUrl constructor QUrl::QUrl(QString). This causes
3310         the HTTP GET request for the video to be rejected by the service provider. 
3311         https://bugs.webkit.org/show_bug.cgi?id=53973.
3312
3313         The bug is fixed by constructing QUrl from the encoded URL.
3314
3315         New test function tst_QWebPage::loadHtml5Video() is added in 
3316         Source/WebKit/qt/tests/qwebpage/tst_qwebpage.cpp
3317
3318         * platform/graphics/qt/MediaPlayerPrivateQt.cpp:
3319         (WebCore::MediaPlayerPrivateQt::commitLoad):
3320
3321 2011-02-17  Andreas Kling  <kling@webkit.org>
3322
3323         Reviewed by Antti Koivisto.
3324
3325         [Qt] Crash when calling QWebFrame::setUrl() while a previous load has pending requests
3326         https://bugs.webkit.org/show_bug.cgi?id=49216
3327
3328         CachedResourceRequest::didFail() will protect the CachedResourceLoader's
3329         document() while it runs, but if we're being called from the Document destructor,
3330         the protecting RefPtr<Document> will cause a double-delete instead.
3331
3332         * loader/cache/CachedResourceLoader.cpp:
3333         (WebCore::CachedResourceLoader::~CachedResourceLoader): Clear the m_document
3334         pointer so CachedResourceRequest::didFail() won't try to protect it.
3335         (WebCore::CachedResourceLoader::frame): Add null-check for m_document.
3336
3337 2011-02-17  Andrey Adaikin  <aandrey@google.com>
3338
3339         Reviewed by Pavel Feldman.
3340
3341         Web Inspector: [Text editor] Add updateHighlight method to the highlighter
3342         https://bugs.webkit.org/show_bug.cgi?id=54448
3343
3344         * inspector/front-end/SourceTokenizer.js:
3345         * inspector/front-end/TextEditorHighlighter.js:
3346         (WebInspector.TextEditorHighlighter.prototype.set mimeType):
3347         (WebInspector.TextEditorHighlighter.prototype.reset):
3348         (WebInspector.TextEditorHighlighter.prototype.updateHighlight):
3349         (WebInspector.TextEditorHighlighter.prototype._highlightInChunks):
3350         (WebInspector.TextEditorHighlighter.prototype._highlightLines):
3351
3352 2011-02-16  Pavel Podivilov  <podivilov@chromium.org>
3353
3354         Reviewed by Yury Semikhatsky.
3355
3356         Web Inspector: show all inlined scripts from single document in the same source frame.
3357         https://bugs.webkit.org/show_bug.cgi?id=54544
3358
3359         Currently when debugging synchronously executed inlined scripts each script is shown in it's own source frame ("example.html:24").
3360         We should show such scripts in the same source frame "example.html" with <script></script> framing.
3361
3362         Test: inspector/debugger/debug-inlined-scripts.html
3363
3364         * inspector/front-end/ScriptsPanel.js:
3365         (WebInspector.ScriptsPanel.prototype._scriptSourceChanged):
3366         (WebInspector.ScriptsPanel.prototype._addScript):
3367         (WebInspector.ScriptsPanel.prototype._resourceForURL):
3368         (WebInspector.ScriptsPanel.prototype._resourceLoadingFinished):
3369         (WebInspector.ScriptsPanel.prototype.addConsoleMessage):
3370         (WebInspector.ScriptsPanel.prototype.clearConsoleMessages):
3371         (WebInspector.ScriptsPanel.prototype.reset):
3372         (WebInspector.ScriptsPanel.prototype._sourceFrameForResource):
3373         (WebInspector.ScriptsPanel.prototype._sourceFrameForScript):
3374         (WebInspector.ScriptsPanel.prototype._recreateSourceFrame):
3375         (WebInspector.ScriptsPanel.prototype._showScriptOrResource):
3376         (WebInspector.ScriptsPanel.prototype._addScriptToFilesMenu.optionCompare):
3377         (WebInspector.ScriptsPanel.prototype._addScriptToFilesMenu):
3378         (WebInspector.SourceFrameContentProviderForScript.prototype.requestContent):
3379         (WebInspector.SourceFrameContentProviderForScript.prototype._buildSource):
3380
3381 2011-02-17  Nikolas Zimmermann  <nzimmermann@rim.com>
3382
3383         Reviewed by Dirk Schulze.
3384
3385         svg/batik/paints/patternRegions-positioned-objects.svg fails on Windows
3386         https://bugs.webkit.org/show_bug.cgi?id=44484
3387
3388         Pattern of pattern defined with objectBoundingBox does not render correctly
3389         https://bugs.webkit.org/show_bug.cgi?id=53463
3390
3391         Fix <pattern> + patternContentUnits="objectBoundingBox" support.
3392         We were incorrrectly translating the tile image transform, by the target objects bbox.x()/y().
3393         RenderSVGResourceMask/Clipper don't have this error.
3394         
3395         Fix nesting <patterns> in objectBoundingBox mode, propagate the tileImageTransform as new user-space
3396         when drawing the pattern children. <mask> + <clipPath> don't have the problem.
3397
3398         Test: svg/custom/nested-pattern-boundingBoxModeContent.svg
3399
3400         * rendering/svg/RenderSVGResourcePattern.cpp:
3401         (WebCore::RenderSVGResourcePattern::buildTileImageTransform):
3402         (WebCore::RenderSVGResourcePattern::createTileImage):
3403
3404 2011-02-17  Csaba Osztrogonác  <ossy@webkit.org>
3405
3406         Unreviewed.
3407
3408         [Qt][V8] Buildfix after r78752.
3409
3410         * CodeGenerators.pri: Add missing IDL files.
3411
3412 2011-02-17  Benjamin Kalman  <kalman@chromium.org>
3413
3414         Reviewed by Ryosuke Niwa.
3415
3416         RTL lineboundary left/right is reversed when cursor is at start of RTL container
3417         https://bugs.webkit.org/show_bug.cgi?id=54534
3418
3419         Test: editing/selection/extend-left-right-by-lineboundary.html
3420
3421         Add missing cases for extending left/right by lineboundary.
3422
3423         * editing/SelectionController.cpp:
3424         (WebCore::SelectionController::modifyExtendingRight):
3425         (WebCore::SelectionController::modifyExtendingLeft):
3426
3427 2011-02-16  Philippe Normand  <pnormand@igalia.com>
3428
3429         Reviewed by Martin Robinson.
3430
3431         [GTK] libsoup critical warnings
3432         https://bugs.webkit.org/show_bug.cgi?id=54557
3433
3434         Avoid pausing a soup message for already downloaded resources.
3435
3436         * platform/network/soup/ResourceHandleSoup.cpp:
3437         (WebCore::ResourceHandle::platformSetDefersLoading):
3438
3439 2011-02-16  Brian Ryner  <bryner@chromium.org>
3440
3441         Reviewed by Darin Fisher.
3442
3443         Split the socket address field into separate IP address and port fields.
3444         This will make the field less error-prone to parse, for example when
3445         dealing with IPv6 literals.
3446         https://bugs.webkit.org/show_bug.cgi?id=54607
3447
3448         No new tests required.
3449
3450         * platform/network/chromium/ResourceResponse.cpp:
3451         (WebCore::ResourceResponse::doPlatformCopyData):
3452         (WebCore::ResourceResponse::doPlatformAdopt):
3453         * platform/network/chromium/ResourceResponse.h:
3454         (WebCore::ResourceResponse::ResourceResponse):
3455         (WebCore::ResourceResponse::remoteIPAddress):
3456         (WebCore::ResourceResponse::setRemoteIPAddress):
3457         (WebCore::ResourceResponse::remotePort):
3458         (WebCore::ResourceResponse::setRemotePort):
3459
3460 2011-02-16  Dominic Mazzoni  <dmazzoni@google.com>
3461
3462         Reviewed by Chris Fleizach.
3463