c3226be222c9dde464213726fb0ae2ebc6c6f4f1
[WebKit.git] / Source / WebCore / ChangeLog
1 2011-01-17  Alexey Proskuryakov  <ap@apple.com>
2
3         Leopard build fix.
4
5         * page/PrintContext.cpp: GCC complained about shortening a double value to float.
6
7 2011-01-17  Alexey Proskuryakov  <ap@apple.com>
8
9         Reviewed by Dan Bernstein.
10
11         https://bugs.webkit.org/show_bug.cgi?id=52495
12
13         No change in behavior, so no tests.
14
15         * WebCore.exp.in: Export additional methods, as I'm going to use more code from PrintContext.
16
17         * page/PrintContext.cpp:
18         (WebCore::PrintContext::~PrintContext): No need to clear m_pageRects, the object is being
19         destroyed already.
20         (WebCore::PrintContext::pageCount): Changed page count from int to size_t.
21         (WebCore::PrintContext::pageRect): Ditto.
22         (WebCore::PrintContext::computePageRects): Pass allowHorizontalTiling as an argument.
23         PrintContext already has code to calculate scale factor, so it makes sense to make methods
24         that contain it universal (allowHorizontalTiling is always true for Safari).
25         Round page height to an integer, because Mac code does that, and because page height is
26         treated as integer almost everywhere else in code.
27         (WebCore::PrintContext::begin): Allow calling this function multiple times. There is no need
28         to return to screen mode if e.g. "print backgounds" option changes.
29         (WebCore::PrintContext::computeAutomaticScaleFactor): Expose scale factor computation, so
30         that clients don't have to copy it.
31         (WebCore::PrintContext::spoolRect): Add a way to spool a precomputed rect - handy if a request
32         comes from code that doesn't have page number.
33         (WebCore::PrintContext::pageNumberForElement): Page number int -> size_t.
34
35         * page/PrintContext.h: Added comments and FIXMEs. PrintContext needs cleanup, but that
36         depends on deciding how it really needs to work (e.g. whether computePageRects() should
37         cause relayout).
38
39 2011-01-17  Pavel Feldman  <pfeldman@chromium.org>
40
41         Reviewed by Yury Semikhatsky.
42
43         Web Inspector: unify image data source assignment, add image url
44         to the image view properties list.
45         https://bugs.webkit.org/show_bug.cgi?id=52584
46
47         * English.lproj/localizedStrings.js:
48         * inspector/front-end/ImageView.js:
49         (WebInspector.ImageView.prototype._createContentIfNeeded.onImageLoad):
50         (WebInspector.ImageView.prototype._createContentIfNeeded):
51         * inspector/front-end/NetworkPanel.js:
52         (WebInspector.NetworkDataGridNode.prototype._refreshNameCell):
53         * inspector/front-end/Resource.js:
54         (WebInspector.Resource.prototype.populateImageSource):
55         (WebInspector.Resource.prototype._contentURL):
56         * inspector/front-end/ResourcesPanel.js:
57         (WebInspector.FrameResourceTreeElement.prototype.onattach):
58
59 2011-01-17  Andrey Kosyakov  <caseq@chromium.org>
60
61         Reviewed by Pavel Feldman.
62
63         Web Inspector: [Extensions API] webInspector.resources.onFinished is not fired for redirected resources
64         Make resource start/finish hanlding more consistent.
65         https://bugs.webkit.org/show_bug.cgi?id=52452
66
67         * inspector/front-end/AuditLauncherView.js: Ignore WebSocket resources when displaying progress indicator
68         (WebInspector.AuditLauncherView.prototype._resetResourceCount):
69         (WebInspector.AuditLauncherView.prototype.resourceStarted):
70         (WebInspector.AuditLauncherView.prototype.resourceFinished):
71         * inspector/front-end/NetworkManager.js:
72         (WebInspector.NetworkManager): Factor out resource start/finish logic to _startResource()/_finishResource()
73         (WebInspector.NetworkManager.prototype.identifierForInitialRequest):
74         (WebInspector.NetworkManager.prototype.willSendRequest):
75         (WebInspector.NetworkManager.prototype.markResourceAsCached):
76         (WebInspector.NetworkManager.prototype.didReceiveResponse):
77         (WebInspector.NetworkManager.prototype.didReceiveContentLength):
78         (WebInspector.NetworkManager.prototype.didFinishLoading):
79         (WebInspector.NetworkManager.prototype.didFailLoading):
80         (WebInspector.NetworkManager.prototype.didLoadResourceFromMemoryCache):
81         (WebInspector.NetworkManager.prototype.didCreateWebSocket):
82         (WebInspector.NetworkManager.prototype.willSendWebSocketHandshakeRequest):
83         (WebInspector.NetworkManager.prototype.didReceiveWebSocketHandshakeResponse):
84         (WebInspector.NetworkManager.prototype.didCloseWebSocket):
85         (WebInspector.NetworkManager.prototype._appendRedirect):
86         (WebInspector.NetworkManager.prototype._startResource):
87         (WebInspector.NetworkManager.prototype._finishResource):
88
89 2011-01-17  Pavel Feldman  <pfeldman@chromium.org>
90
91         Reviewed by Yury Semikhatsky.
92
93         Web Inspector: restore dom and network state upon frontend reuse.
94         https://bugs.webkit.org/show_bug.cgi?id=52574
95
96         * inspector/Inspector.idl:
97         * inspector/InspectorController.cpp:
98         (WebCore::InspectorController::restoreInspectorStateFromCookie):
99         (WebCore::InspectorController::populateScriptObjects):
100         (WebCore::InspectorController::pushDataCollectedOffline):
101         (WebCore::InspectorController::didCommitLoad):
102         * inspector/InspectorController.h:
103         * inspector/front-end/NetworkManager.js:
104         (WebInspector.NetworkManager.prototype.reset):
105         * inspector/front-end/NetworkPanel.js:
106         (WebInspector.NetworkPanel.prototype.clear):
107         (WebInspector.NetworkPanel.prototype.mainResourceChanged):
108         * inspector/front-end/ResourceTreeModel.js:
109         (WebInspector.ResourceTreeModel):
110         (WebInspector.ResourceTreeModel.prototype.reloadCachedResources):
111         * inspector/front-end/ResourcesPanel.js:
112         (WebInspector.ResourcesPanel.prototype.clear):
113         * inspector/front-end/inspector.js:
114         (WebInspector.frontendReused):
115
116 2011-01-17  Csaba Osztrogonác  <ossy@webkit.org>
117
118         Unreviewed buildfix after r75944.
119
120         * WebCore.pro:
121
122 2011-01-17  Yi Shen  <yi.4.shen@nokia.com>
123
124         Reviewed by Andreas Kling.
125
126         [Qt] Extend the Platform Plugin to support full screen video handler
127         https://bugs.webkit.org/show_bug.cgi?id=51249
128
129         Make MediaPlayerPrivateQt support a fullscreen player.
130
131         No new tests because LayoutTests/media/media-fullscreen-inline.html already exists.
132         However, this test failed for Qt (QtMediaPlayer) due to durationchange event getting fired twice.
133         So, still skip it for Qt.
134
135         * WebCore.pro:
136         * features.pri:
137         * platform/graphics/qt/MediaPlayerPrivateQt.cpp:
138         (WebCore::MediaPlayerPrivateQt::MediaPlayerPrivateQt):
139         (WebCore::MediaPlayerPrivateQt::removeVideoItem):
140         (WebCore::MediaPlayerPrivateQt::restoreVideoItem):
141         * platform/graphics/qt/MediaPlayerPrivateQt.h:
142         (WebCore::MediaPlayerPrivateQt::supportsFullscreen):
143         (WebCore::MediaPlayerPrivateQt::mediaPlayer):
144
145 2011-01-17  Anthony Ricaud  <rik@webkit.org>
146
147         Reviewed by Kent Tamura.
148
149         [HTML5] Revert display:none on datalist
150         https://bugs.webkit.org/show_bug.cgi?id=52214
151
152         * css/html.css:
153
154 2011-01-17  Pavel Feldman  <pfeldman@chromium.org>
155
156         Reviewed by Yury Semikhatsky.
157
158         Web Inspector: simplify debugger enabling routine.
159         https://bugs.webkit.org/show_bug.cgi?id=52472
160
161         * inspector/Inspector.idl:
162         * inspector/InspectorController.cpp:
163         (WebCore::InspectorController::restoreDebugger):
164         (WebCore::InspectorController::showAndEnableDebugger):
165         (WebCore::InspectorController::enableDebugger):
166         * inspector/InspectorController.h:
167         * inspector/front-end/DebuggerModel.js:
168         * inspector/front-end/ScriptsPanel.js:
169         (WebInspector.ScriptsPanel.prototype.show):
170         (WebInspector.ScriptsPanel.prototype._toggleDebugging):
171
172 2011-01-17  Pavel Podivilov  <podivilov@chromium.org>
173
174         Reviewed by Pavel Feldman.
175
176         Web Inspector: refactoring: encapsulate lazy initialization of SourceFrame.
177         https://bugs.webkit.org/show_bug.cgi?id=51738
178
179         Extract content loading logic from SourceView and ScriptView to ContentProvider implementations.
180         Pass ContentProvider in SourceFrame constructor to allow SourceFrame manage it's lazy initialization.
181
182         * inspector/front-end/ScriptView.js:
183         (WebInspector.ScriptView):
184         (WebInspector.SourceFrameContentProviderForScript):
185         (WebInspector.SourceFrameContentProviderForScript.prototype.requestContent.didRequestSource):
186         (WebInspector.SourceFrameContentProviderForScript.prototype.requestContent):
187         (WebInspector.SourceFrameContentProviderForScript.prototype.scripts):
188         * inspector/front-end/ScriptsPanel.js:
189         (WebInspector.ScriptsPanel.prototype._addScript):
190         (WebInspector.ScriptsPanel.prototype.sourceFrameForScript):
191         (WebInspector.ScriptsPanel.prototype._sourceFrameForResource):
192         * inspector/front-end/SourceFrame.js:
193         (WebInspector.SourceFrame):
194         (WebInspector.SourceFrame.prototype.set visible):
195         (WebInspector.SourceFrame.prototype._createTextViewer):
196         (WebInspector.SourceFrame.prototype._breakpointAdded):
197         (WebInspector.SourceFrame.prototype._breakpoints):
198         (WebInspector.SourceFrame.prototype._sourceIDForLine):
199         (WebInspector.SourceFrame.prototype._sourceIDSet):
200         (WebInspector.SourceFrameContentProvider):
201         (WebInspector.SourceFrameContentProvider.prototype.requestContent):
202         (WebInspector.SourceFrameContentProvider.prototype.scripts):
203         * inspector/front-end/SourceView.js:
204         (WebInspector.SourceView):
205         (WebInspector.SourceView.prototype.show):
206         (WebInspector.SourceView.prototype.resize):
207         (WebInspector.SourceView.prototype.performSearch.didFindSearchMatches):
208         (WebInspector.SourceView.prototype.performSearch):
209         (WebInspector.SourceView.prototype.revealLine):
210         (WebInspector.SourceView.prototype.highlightLine):
211         (WebInspector.SourceView.prototype._jumpToSearchResult):
212         (WebInspector.SourceFrameContentProviderForResource):
213         (WebInspector.SourceFrameContentProviderForResource.prototype.requestContent):
214         (WebInspector.SourceFrameContentProviderForResource.prototype.scripts):
215
216 2011-01-17  John Knottenbelt  <jknotten@chromium.org>
217
218         Reviewed by Jeremy Orlow.
219
220         GeolocationController should call stopUpdating on destruction
221         https://bugs.webkit.org/show_bug.cgi?id=52216
222
223         Test: fast/dom/Geolocation/window-close-crash.html
224
225         * page/GeolocationController.cpp:
226         (WebCore::GeolocationController::~GeolocationController):
227
228 2011-01-17  Pavel Feldman  <pfeldman@chromium.org>
229
230         Not reviewed: Qt build fix.
231
232         * inspector/InspectorInstrumentation.h:
233
234 2011-01-16  Pavel Feldman  <pfeldman@chromium.org>
235
236         Reviewed by Yury Semikhatsky.
237
238         Web Inspector: make WebCore use InspectorInstrumentation
239         for instrumentation calls.
240         https://bugs.webkit.org/show_bug.cgi?id=52532
241
242         This change makes WebCore classes issue instrumentation signals
243         by means of InspectorInstrumentation interface. It covered migration
244         for Document, FrameLoader, Database, DOMStorage, etc. It fixed
245         instrumentation handling for Console as well. This all is a part
246         of story described in the bug 52510.
247
248         * dom/Document.cpp:
249         (WebCore::Document::finishedParsing):
250         * dom/Document.h:
251         * dom/ScriptExecutionContext.h:
252         * inspector/InspectorBrowserDebuggerAgent.cpp:
253         (WebCore::InspectorBrowserDebuggerAgent::InspectorBrowserDebuggerAgent):
254         (WebCore::InspectorBrowserDebuggerAgent::setDOMBreakpoint):
255         (WebCore::InspectorBrowserDebuggerAgent::removeDOMBreakpoint):
256         (WebCore::InspectorBrowserDebuggerAgent::willInsertDOMNode):
257         (WebCore::InspectorBrowserDebuggerAgent::willRemoveDOMNode):
258         (WebCore::InspectorBrowserDebuggerAgent::willModifyDOMAttr):
259         (WebCore::InspectorBrowserDebuggerAgent::descriptionForDOMEvent):
260         (WebCore::InspectorBrowserDebuggerAgent::pauseOnNativeEventIfNeeded):
261         (WebCore::InspectorBrowserDebuggerAgent::willSendXMLHttpRequest):
262         * inspector/InspectorBrowserDebuggerAgent.h:
263         (WebCore::InspectorBrowserDebuggerAgent::create):
264         * inspector/InspectorConsoleAgent.cpp:
265         (WebCore::InspectorConsoleAgent::stopTiming):
266         (WebCore::InspectorConsoleAgent::count):
267         * inspector/InspectorConsoleAgent.h:
268         * inspector/InspectorController.cpp:
269         (WebCore::InspectorController::InspectorController):
270         (WebCore::InspectorController::~InspectorController):
271         (WebCore::InspectorController::handleMousePress):
272         (WebCore::InspectorController::didClearWindowObjectInWorld):
273         (WebCore::PostWorkerNotificationToFrontendTask::performTask):
274         * inspector/InspectorController.h:
275         * inspector/InspectorDOMAgent.h:
276         * inspector/InspectorDOMStorageAgent.h:
277         * inspector/InspectorDatabaseAgent.cpp:
278         * inspector/InspectorDatabaseAgent.h:
279         * inspector/InspectorFrontendHost.cpp:
280         * inspector/InspectorFrontendHost.h:
281         * inspector/InspectorInstrumentation.cpp:
282         (WebCore::InspectorInstrumentation::didClearWindowObjectInWorldImpl):
283         (WebCore::InspectorInstrumentation::inspectedPageDestroyedImpl):
284         (WebCore::InspectorInstrumentation::mouseDidMoveOverElementImpl):
285         (WebCore::InspectorInstrumentation::handleMousePressImpl):
286         (WebCore::InspectorInstrumentation::mainResourceFiredLoadEventImpl):
287         (WebCore::InspectorInstrumentation::mainResourceFiredDOMContentEventImpl):
288         (WebCore::InspectorInstrumentation::frameDetachedFromParentImpl):
289         (WebCore::InspectorInstrumentation::didCommitLoadImpl):
290         (WebCore::InspectorInstrumentation::addMessageToConsoleImpl):
291         (WebCore::InspectorInstrumentation::consoleCountImpl):
292         (WebCore::InspectorInstrumentation::startConsoleTimingImpl):
293         (WebCore::InspectorInstrumentation::stopConsoleTimingImpl):
294         (WebCore::InspectorInstrumentation::consoleMarkTimelineImpl):
295         (WebCore::InspectorInstrumentation::addStartProfilingMessageToConsoleImpl):
296         (WebCore::InspectorInstrumentation::didOpenDatabaseImpl):
297         (WebCore::InspectorInstrumentation::didUseDOMStorageImpl):
298         (WebCore::InspectorInstrumentation::didCreateWorkerImpl):
299         (WebCore::InspectorInstrumentation::didDestroyWorkerImpl):
300         (WebCore::InspectorInstrumentation::didCreateWebSocketImpl):
301         (WebCore::InspectorInstrumentation::willSendWebSocketHandshakeRequestImpl):
302         (WebCore::InspectorInstrumentation::didReceiveWebSocketHandshakeResponseImpl):
303         (WebCore::InspectorInstrumentation::didCloseWebSocketImpl):
304         (WebCore::InspectorInstrumentation::networkStateChangedImpl):
305         (WebCore::InspectorInstrumentation::updateApplicationCacheStatusImpl):
306         * inspector/InspectorInstrumentation.h:
307         (WebCore::InspectorInstrumentation::inspectorControllerCreated):
308         (WebCore::InspectorInstrumentation::inspectorControllerDeleted):
309         (WebCore::InspectorInstrumentation::didClearWindowObjectInWorld):
310         (WebCore::InspectorInstrumentation::inspectedPageDestroyed):
311         (WebCore::InspectorInstrumentation::willInsertDOMNode):
312         (WebCore::InspectorInstrumentation::didInsertDOMNode):
313         (WebCore::InspectorInstrumentation::willRemoveDOMNode):
314         (WebCore::InspectorInstrumentation::willModifyDOMAttr):
315         (WebCore::InspectorInstrumentation::didModifyDOMAttr):
316         (WebCore::InspectorInstrumentation::mouseDidMoveOverElement):
317         (WebCore::InspectorInstrumentation::handleMousePress):
318         (WebCore::InspectorInstrumentation::characterDataModified):
319         (WebCore::InspectorInstrumentation::willSendXMLHttpRequest):
320         (WebCore::InspectorInstrumentation::didScheduleResourceRequest):
321         (WebCore::InspectorInstrumentation::didInstallTimer):
322         (WebCore::InspectorInstrumentation::didRemoveTimer):
323         (WebCore::InspectorInstrumentation::willCallFunction):
324         (WebCore::InspectorInstrumentation::willChangeXHRReadyState):
325         (WebCore::InspectorInstrumentation::willDispatchEvent):
326         (WebCore::InspectorInstrumentation::willDispatchEventOnWindow):
327         (WebCore::InspectorInstrumentation::willEvaluateScript):
328         (WebCore::InspectorInstrumentation::willFireTimer):
329         (WebCore::InspectorInstrumentation::willLayout):
330         (WebCore::InspectorInstrumentation::willLoadXHR):
331         (WebCore::InspectorInstrumentation::willPaint):
332         (WebCore::InspectorInstrumentation::willRecalculateStyle):
333         (WebCore::InspectorInstrumentation::identifierForInitialRequest):
334         (WebCore::InspectorInstrumentation::willSendRequest):
335         (WebCore::InspectorInstrumentation::markResourceAsCached):
336         (WebCore::InspectorInstrumentation::didLoadResourceFromMemoryCache):
337         (WebCore::InspectorInstrumentation::willReceiveResourceData):
338         (WebCore::InspectorInstrumentation::willReceiveResourceResponse):
339         (WebCore::InspectorInstrumentation::didReceiveContentLength):
340         (WebCore::InspectorInstrumentation::didFinishLoading):
341         (WebCore::InspectorInstrumentation::didFailLoading):
342         (WebCore::InspectorInstrumentation::resourceRetrievedByXMLHttpRequest):
343         (WebCore::InspectorInstrumentation::scriptImported):
344         (WebCore::InspectorInstrumentation::mainResourceFiredLoadEvent):
345         (WebCore::InspectorInstrumentation::mainResourceFiredDOMContentEvent):
346         (WebCore::InspectorInstrumentation::frameDetachedFromParent):
347         (WebCore::InspectorInstrumentation::didCommitLoad):
348         (WebCore::InspectorInstrumentation::willWriteHTML):
349         (WebCore::InspectorInstrumentation::didOpenDatabase):
350         (WebCore::InspectorInstrumentation::didUseDOMStorage):
351         (WebCore::InspectorInstrumentation::didCreateWorker):
352         (WebCore::InspectorInstrumentation::didDestroyWorker):
353         (WebCore::InspectorInstrumentation::didCreateWebSocket):
354         (WebCore::InspectorInstrumentation::willSendWebSocketHandshakeRequest):
355         (WebCore::InspectorInstrumentation::didReceiveWebSocketHandshakeResponse):
356         (WebCore::InspectorInstrumentation::didCloseWebSocket):
357         (WebCore::InspectorInstrumentation::networkStateChanged):
358         (WebCore::InspectorInstrumentation::updateApplicationCacheStatus):
359         (WebCore::InspectorInstrumentation::addMessageToConsole):
360         (WebCore::InspectorInstrumentation::consoleCount):
361         (WebCore::InspectorInstrumentation::startConsoleTiming):
362         (WebCore::InspectorInstrumentation::stopConsoleTiming):
363         (WebCore::InspectorInstrumentation::consoleMarkTimeline):
364         (WebCore::InspectorInstrumentation::addStartProfilingMessageToConsole):
365         (WebCore::InspectorInstrumentation::inspectorControllerForContext):
366         (WebCore::InspectorInstrumentation::inspectorControllerForFrame):
367         (WebCore::InspectorInstrumentation::inspectorControllerForPage):
368         (WebCore::InspectorInstrumentation::inspectorControllerWithFrontendForContext):
369         (WebCore::InspectorInstrumentation::inspectorControllerWithFrontendForDocument):
370         (WebCore::InspectorInstrumentation::inspectorControllerWithFrontendForFrame):
371         (WebCore::InspectorInstrumentation::inspectorControllerWithFrontendForPage):
372         * inspector/InspectorState.cpp:
373         * loader/FrameLoader.cpp:
374         (WebCore::FrameLoader::detachFromParent):
375         (WebCore::FrameLoader::dispatchDidClearWindowObjectInWorld):
376         (WebCore::FrameLoader::dispatchDidCommitLoad):
377         * page/Chrome.cpp:
378         (WebCore::Chrome::mouseDidMoveOverElement):
379         * page/Console.cpp:
380         (WebCore::Console::addMessage):
381         (WebCore::Console::count):
382         (WebCore::Console::markTimeline):
383         (WebCore::Console::profile):
384         (WebCore::Console::time):
385         (WebCore::Console::timeEnd):
386         (WebCore::Console::group):
387         (WebCore::Console::groupCollapsed):
388         (WebCore::Console::groupEnd):
389         * page/DOMWindow.cpp:
390         (WebCore::DOMWindow::sessionStorage):
391         (WebCore::DOMWindow::localStorage):
392         (WebCore::DOMWindow::dispatchLoadEvent):
393         * page/EventHandler.cpp:
394         (WebCore::EventHandler::handleMousePressEvent):
395         * page/Page.cpp:
396         (WebCore::Page::~Page):
397         * storage/Database.cpp:
398         (WebCore::Database::openDatabase):
399         * workers/AbstractWorker.cpp:
400         (WebCore::AbstractWorker::onDestroyWorker):
401         * workers/SharedWorker.cpp:
402         (WebCore::SharedWorker::create):
403         * workers/Worker.cpp:
404         (WebCore::Worker::create):
405         * workers/WorkerMessagingProxy.cpp:
406
407 2011-01-17  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
408
409         Unreviewed, rolling out r75923.
410
411         GTK guy rolls out the r75914.
412
413         * platform/efl/ScrollViewEfl.cpp:
414         (WebCore::ScrollView::platformInit):
415
416 2011-01-17  Helder Correia  <helder@sencha.com>
417
418         Reviewed by Kenneth Rohde Christiansen.
419
420         [Qt] fast/canvas/canvas-fillPath-gradient-shadow.html does not pass
421         https://bugs.webkit.org/show_bug.cgi?id=52556
422
423         The shadow color opacity needs to be set on the shadow painter.
424         Additionally, the gradient brush should be transformed.
425
426         * platform/graphics/qt/GraphicsContextQt.cpp:
427         (WebCore::GraphicsContext::fillPath):
428
429 2011-01-17  No'am Rosenthal  <noam.rosenthal@nokia.com>
430
431         Reviewed by Kenneth Rohde Christiansen.
432
433         [Qt] Background image rendering is slow
434         https://bugs.webkit.org/show_bug.cgi?id=50527
435
436         When tiling a scaled pixmap in Image::drawPattern, scale the tile
437         first and only then draw it to the target. Do so only when drawing
438         more than one tile.
439
440         Tests in fast/backgrounds/size cover this.
441
442         * platform/graphics/qt/ImageQt.cpp:
443         (WebCore::Image::drawPattern):
444
445 2011-01-17  Laszlo Gombos  <laszlo.1.gombos@nokia.com>
446
447         Reviewed by Simon Hausmann.
448
449         [Qt] [Symbian] Fix building NPAPI support
450         https://bugs.webkit.org/show_bug.cgi?id=51981
451
452         Make sure that npapi.h is always included outside of the extern "C"
453         linkage declaration block.
454
455         No new tests as there is no new functionality.
456
457         * bridge/npruntime.h:
458
459 2011-01-17  Philippe Normand  <pnormand@igalia.com>
460
461         Unreviewed, rolling out r75914.
462         http://trac.webkit.org/changeset/75914
463         https://bugs.webkit.org/show_bug.cgi?id=49177
464
465         multiple crashes on GTK
466
467         * platform/ScrollView.cpp:
468         (WebCore::ScrollView::removeChild):
469         (WebCore::ScrollView::wheelEvent):
470         * platform/gtk/MainFrameScrollbarGtk.cpp:
471         (MainFrameScrollbarGtk::attachAdjustment):
472         (MainFrameScrollbarGtk::gtkValueChanged):
473         * platform/gtk/ScrollViewGtk.cpp:
474         (WebCore::ScrollView::platformInit):
475         (WebCore::ScrollView::platformAddChild):
476         (WebCore::ScrollView::platformRemoveChild):
477
478 2011-01-17  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
479
480         Unreviewed build fix.
481
482         Bug 49177's patch enabled platformInit() in super class(ScrollView).
483         But, it didn't removed the function in ScrollViewEfl.cpp.
484
485         * platform/efl/ScrollViewEfl.cpp:
486
487 2011-01-16  Dan Bernstein  <mitz@apple.com>
488
489         Reviewed by Sam Weinig.
490
491         <rdar://problem/8871903> REGRESSION (r75897): Crash with 0-by-0 iframe in scaled WebView
492
493         Avoid use of FloatRect::enclosingBoundingBox(), which can stretch an empty
494         quad to a non-empty rect.
495
496         * rendering/RenderWidget.cpp:
497         (WebCore::RenderWidget::setWidget):
498         (WebCore::RenderWidget::updateWidgetPosition):
499
500 2011-01-16  Martin Robinson  <mrobinson@igalia.com>
501
502         Reviewed by Xan Lopez.
503
504         [GTK] fast/events/scroll-after-click-on-tab-index has been failing on the bots
505         https://bugs.webkit.org/show_bug.cgi?id=49177
506
507         * platform/ScrollView.cpp: Move the platform guards around a little. GTK+
508         now shares the implementation of platformAddChild and platformRemoveChild,
509         but has its own implementation of removeChild, which knows how to inform
510         main frame scrollbars that they no longer control the WebCore scrollbar.
511         * platform/gtk/MainFrameScrollbarGtk.cpp:
512         (MainFrameScrollbarGtk::attachAdjustment): If we are attaching the same adjustment
513         that we already have, bail out early. Apply the value changed signal handler
514         after configuring the adjustment. We don't want our reset of the adjustment to
515         stomp on WebCore values.
516         (MainFrameScrollbarGtk::gtkValueChanged): Do not adjust the value if the WebCore
517         state already matches ours. This prevents some unnecessary recursion
518         * platform/gtk/ScrollViewGtk.cpp:
519         (WebCore::ScrollView::removeChild): Added, special cases main frame scrollbars
520         which need their adjustments detached.
521
522 2011-01-13  Yuzo Fujishima  <yuzo@google.com>
523
524         Reviewed by Antti Koivisto.
525
526         Fix for Bug 52427 - Inconsistent use of m_cache in CachedResourceLoader
527         https://bugs.webkit.org/show_bug.cgi?id=52427
528
529         In constructor/destructor of CachedResourceLoader, m_cache has been
530         used to call MemoryCache::addCachedResourceLoader/removeCachedResourceLoader
531         while cache() is used everywhere else.
532
533         Actually addCachedResourceLoader/removeCachedResourceLoader need not be called at all.
534         Remove the call sites and make MemoryCache non-friend of CachedResourceLoader.
535
536         No new tests because the behavior remains the same.
537
538         * loader/cache/CachedResourceLoader.cpp:
539         (WebCore::CachedResourceLoader::CachedResourceLoader):
540         (WebCore::CachedResourceLoader::~CachedResourceLoader):
541         * loader/cache/CachedResourceLoader.h:
542         * loader/cache/MemoryCache.cpp:
543         * loader/cache/MemoryCache.h:
544
545 2011-01-16  Adam Barth  <abarth@webkit.org>
546
547         Rubber-stamped by Eric Seidel.
548
549         Move WebKit into Source
550         https://bugs.webkit.org/show_bug.cgi?id=52530
551
552         * WebCore.gyp/WebCore.gyp:
553         * WebCore.pri:
554         * WebCore.pro:
555
556 2011-01-16  Simon Fraser  <simon.fraser@apple.com>
557
558         Reviewed by Dan Bernstein.
559
560         frame-removed-during-resize.html test crashes (shows up as image-map-2.html crash)
561         https://bugs.webkit.org/show_bug.cgi?id=52549
562
563         Fix regression from r75900; m_widget->setFrameRect() can run script that
564         clears m_widget, so null-check it before calling setBoundsSize().
565         
566         Tested by fast/replaced/frame-removed-during-resize.html
567
568         * rendering/RenderWidget.cpp:
569         (WebCore::RenderWidget::setWidgetGeometry):
570
571 2011-01-16  Simon Fraser  <simon.fraser@apple.com>
572
573         Keep Leopard build happy.
574
575         * platform/mac/WidgetMac.mm:
576         (WebCore::Widget::setBoundsSize):
577
578 2011-01-16  Robert Hogan  <robert@webkit.org>
579
580         Reviewed by Andreas Kling.
581
582         [Qt] plugins/keyboard-events.html fails after r72717
583         https://bugs.webkit.org/show_bug.cgi?id=50050
584
585         * plugins/qt/PluginViewQt.cpp:
586         (WebCore::setXKeyEventSpecificFields): map event text to keycode
587
588 2011-01-16  Simon Fraser  <simon.fraser@apple.com>
589
590         Reviewed by Dan Bernstein.
591
592         Issues with iframes and plugins when the WebView is scaled.
593         <rdar://problem/6213380>
594         
595         When _scaleWebView has been called on a WebView, iframes
596         in WebKit1 render and hit-test incorrectly, and plug-ins don't scale up.
597         This is caused by AppKit NSViews not playing nicely with the scale
598         applied through style.
599         
600         Work around most of these issues by adjusting the bounds size
601         of widgets to allow iframe contents to paint with the correct scale,
602         and fix various places in the code where we relied on coordinate
603         transforms via NSViews (which ignore CSS transforms).
604
605         * WebCore.exp.in:
606         * platform/Widget.cpp:
607         (WebCore::Widget::setBoundsSize):
608         * platform/Widget.h:
609         * platform/mac/WidgetMac.mm:
610         (WebCore::Widget::setBoundsSize):
611         (WebCore::Widget::paint):
612         * rendering/RenderLayerCompositor.cpp:
613         (WebCore::RenderLayerCompositor::shouldPropagateCompositingToEnclosingIFrame):
614         * rendering/RenderWidget.cpp:
615         (WebCore::RenderWidget::setWidgetGeometry):
616         (WebCore::RenderWidget::setWidget):
617         (WebCore::RenderWidget::updateWidgetPosition):
618         * rendering/RenderWidget.h:
619
620 2011-01-16  Simon Fraser  <simon.fraser@apple.com>
621
622         Reviewed by Dan Bernstein.
623
624         RenderView needs to take transforms on its layer into account
625         https://bugs.webkit.org/show_bug.cgi?id=52536
626         
627         The RenderView's coordinate mapping methods failed to
628         take into account a transform on the RenderView's layer.
629
630         No tests because it's not possible to get a transform
631         on the RenderView's layer through content.
632
633         * rendering/RenderView.cpp:
634         (WebCore::RenderView::mapLocalToContainer):
635         (WebCore::RenderView::mapAbsoluteToLocalPoint):
636
637 2011-01-15  Sheriff Bot  <webkit.review.bot@gmail.com>
638
639         Unreviewed, rolling out r75708.
640         http://trac.webkit.org/changeset/75708
641         https://bugs.webkit.org/show_bug.cgi?id=52521
642
643         Breaks Qt build if mobility is not installed. (Requested by
644         benjaminp on #webkit).
645
646         * WebCore.pro:
647         * platform/graphics/qt/MediaPlayerPrivateQt.cpp:
648         (WebCore::MediaPlayerPrivateQt::MediaPlayerPrivateQt):
649         * platform/graphics/qt/MediaPlayerPrivateQt.h:
650         (WebCore::MediaPlayerPrivateQt::supportsFullscreen):
651
652 2011-01-15  David Kilzer  <ddkilzer@apple.com>
653
654         <http://webkit.org/b/52512> REGRESSION(r73818): range.cloneContents() ignores end offset
655
656         Reviewed by Adele Peterson.
657
658         The fix for Bug 50710 in r73799 introduced an off-by-one error
659         when copying nodes to a local NodeVector for processing.  A fix
660         was attempted for Bug 50854 in r73818, but instead of stopping
661         at the end offset, it iterates through all the sibling nodes
662         because the loop variable (i) is never incremented.  To clean
663         this up, revert back to the code in r73799 and fix the
664         off-by-one error.
665
666         Test: fast/dom/Range/range-clone-contents.html
667
668         * dom/Range.cpp:
669         (WebCore::Range::processContents): Fix the loop that copies
670         nodes to a local NodeVector by restoring the code from r73799
671         and fixing the off-by-one error.
672
673 2011-01-15  Adam Barth  <abarth@webkit.org>
674
675         Rubber-stamped by Eric Seidel.
676
677         Move WebKit2 into Source
678         https://bugs.webkit.org/show_bug.cgi?id=52438
679
680         * WebCore.pro:
681
682 2011-01-15  Joone Hur  <joone.hur@collabora.co.uk>
683
684         Reviewed by Martin Robinson.
685
686         [GTK] Linux build with FileSystem API enabled fails
687         https://bugs.webkit.org/show_bug.cgi?id=43878
688
689         This patch allows WebKitGtk+ to build with FileSystem API option.
690
691         No new tests because no new functionality.
692
693         * GNUmakefile.am: Included AsyncFileSystem.h,cpp and Excluded duplicated JSFileException.h,cpp.
694         * bindings/js/JSDirectoryEntryCustom.cpp: Included ExceptionCode.h.
695
696 2011-01-14  Sam Magnuson  <smagnuso@gmail.com>
697
698         Reviewed by Kenneth Rohde Christiansen.
699
700         [Qt] Compile with QT_NO_GRAPHICSVIEW
701         https://bugs.webkit.org/show_bug.cgi?id=49750
702
703         * platform/graphics/qt/GraphicsLayerQt.cpp:
704         * platform/graphics/qt/GraphicsLayerQt.h:
705         * platform/qt/PlatformMouseEventQt.cpp:
706
707 2011-01-14  Tony Chang  <tony@chromium.org>
708
709         Reviewed by Alexey Proskuryakov.
710
711         Strip NUL character when copying text on Windows
712         https://bugs.webkit.org/show_bug.cgi?id=52236
713
714         Test: editing/pasteboard/copy-null-characters.html
715
716         * editing/Editor.cpp:
717         (WebCore::Editor::selectedText):
718         * platform/mac/PasteboardMac.mm:
719         (WebCore::Pasteboard::writeSelection): Use editor()->selectedText() which matches the other platforms.
720
721 2011-01-14  Yuzo Fujishima  <yuzo@google.com>
722
723         Reviewed by Antti Koivisto.
724
725         Rename cache() to memoryCache()
726         https://bugs.webkit.org/show_bug.cgi?id=52433
727
728         No new tests because the behavior remains the same.
729
730         * WebCore.exp.in:
731         * WebCore.order:
732         * history/PageCache.cpp:
733         (WebCore::PageCache::releaseAutoreleasedPagesNow):
734         * inspector/InspectorResourceAgent.cpp:
735         (WebCore::InspectorResourceAgent::cachedResource):
736         * loader/FrameLoader.cpp:
737         (WebCore::FrameLoader::tellClientAboutPastMemoryCacheLoads):
738         * loader/archive/cf/LegacyWebArchive.cpp:
739         (WebCore::LegacyWebArchive::create):
740         * loader/cache/CachedImage.cpp:
741         (WebCore::CachedImage::allClientsRemoved):
742         (WebCore::CachedImage::data):
743         * loader/cache/CachedResource.cpp:
744         (WebCore::CachedResource::~CachedResource):
745         (WebCore::CachedResource::addClientToSet):
746         (WebCore::CachedResource::removeClient):
747         (WebCore::CachedResource::setDecodedSize):
748         (WebCore::CachedResource::setEncodedSize):
749         (WebCore::CachedResource::didAccessDecodedData):
750         * loader/cache/CachedResourceLoader.cpp:
751         (WebCore::CachedResourceLoader::CachedResourceLoader):
752         (WebCore::CachedResourceLoader::requestUserCSSStyleSheet):
753         (WebCore::CachedResourceLoader::requestResource):
754         (WebCore::CachedResourceLoader::revalidateResource):
755         (WebCore::CachedResourceLoader::loadResource):
756         (WebCore::CachedResourceLoader::clearPreloads):
757         (WebCore::CachedResourceLoader::printPreloadStats):
758         * loader/cache/CachedResourceRequest.cpp:
759         (WebCore::CachedResourceRequest::load):
760         (WebCore::CachedResourceRequest::didFail):
761         (WebCore::CachedResourceRequest::didReceiveResponse):
762         * loader/cache/MemoryCache.cpp:
763         (WebCore::memoryCache):
764         * loader/cache/MemoryCache.h:
765
766 2011-01-14  Dan Bernstein  <mitz@apple.com>
767
768         Reviewed by Simon Fraser.
769
770         WebCore part of <rdar://problem/8441312> Crash in -[NSView _invalidateGStatesForTree]
771
772         * WebCore.exp.in: Export RenderWidget::suspendWidgetHierarchyUpdates() and
773         RenderWidget::resumeWidgetHierarchyUpdates().
774         * manual-tests/plug-in-mutates-NSView-hierarchy-during-resize.html: Added.
775         * rendering/RenderWidget.cpp:
776         (WebCore::RenderWidget::setWidgetGeometry): Removed the assertion that widget hierarchy updates
777         are disabled. When this assertion was added, this condition was a subset of the “calling out to
778         plug-in code is forbidden” condition, hence the assertion was valid. The WebKit part of this
779         change now suspends widget hierarchy updates even at times where plug-in code is expected to be
780         called, which invalidates the assertion.
781
782 2011-01-14  Tony Gentilcore  <tonyg@chromium.org>
783
784         Unreviewed build fix.
785
786         Fix Qt build after r75837
787         https://bugs.webkit.org/show_bug.cgi?id=52494
788
789         * rendering/style/StyleRareInheritedData.cpp:
790         * rendering/style/StyleRareNonInheritedData.cpp:
791
792 2011-01-14  Tony Gentilcore  <tonyg@chromium.org>
793
794         Unreviewed build fix.
795
796         Fix Qt build after r75837
797         https://bugs.webkit.org/show_bug.cgi?id=52494
798
799         * rendering/style/RenderStyle.cpp:
800
801 2011-01-14  Tony Gentilcore  <tonyg@chromium.org>
802
803         Unreviewed build fix.
804
805         Fix Qt build after r75837
806         https://bugs.webkit.org/show_bug.cgi?id=52494
807
808         * editing/EditorCommand.cpp:
809
810 2011-01-14  Tony Gentilcore  <tonyg@chromium.org>
811
812         Unreviewed build fix.
813
814         Fix Qt build after r75837
815         https://bugs.webkit.org/show_bug.cgi?id=52494
816
817         * editing/ApplyStyleCommand.cpp:
818
819 2011-01-14  Tony Gentilcore  <tonyg@chromium.org>
820
821         Unreviewed build fix.
822
823         Fix Qt build after r75837
824         https://bugs.webkit.org/show_bug.cgi?id=52494
825
826         * css/CSSStyleSelector.cpp:
827
828 2011-01-14  Tony Gentilcore  <tonyg@chromium.org>
829
830         Unreviewed build fix.
831
832         Fix Qt build after r75837
833         https://bugs.webkit.org/show_bug.cgi?id=52494
834
835         * rendering/InlineFlowBox.h:
836         * rendering/RenderBoxModelObject.h:
837
838 2011-01-14  Tony Gentilcore  <tonyg@chromium.org>
839
840         Reviewed by David Levin.
841
842         Do some forward declaration in RenderStyle.h
843         https://bugs.webkit.org/show_bug.cgi?id=52453
844
845         No new tests because no new functionality.
846
847         * css/CSSComputedStyleDeclaration.cpp:
848         * css/CSSStyleSelector.cpp:
849         * editing/Editor.cpp:
850         * page/EventHandler.cpp:
851         * rendering/EllipsisBox.cpp:
852         * rendering/InlineBox.cpp:
853         * rendering/InlineTextBox.cpp:
854         * rendering/RenderBlock.cpp:
855         * rendering/RenderBlock.h:
856         * rendering/RenderBox.cpp:
857         * rendering/RenderBox.h:
858         * rendering/RenderEmbeddedObject.cpp:
859         * rendering/RenderFieldset.cpp:
860         * rendering/RenderFileUploadControl.cpp:
861         * rendering/RenderFrameSet.cpp:
862         * rendering/RenderHTMLCanvas.cpp:
863         * rendering/RenderImageResource.cpp:
864         * rendering/RenderInputSpeech.cpp:
865         * rendering/RenderLayer.h:
866         * rendering/RenderLineBoxList.cpp:
867         * rendering/RenderListBox.cpp:
868         * rendering/RenderMediaControlsChromium.cpp:
869         * rendering/RenderObject.cpp:
870         * rendering/RenderObject.h:
871         * rendering/RenderObjectChildList.cpp:
872         * rendering/RenderProgress.cpp:
873         * rendering/RenderScrollbarPart.cpp:
874         * rendering/RenderTable.cpp:
875         * rendering/RenderTable.h:
876         * rendering/RenderTableCell.cpp:
877         * rendering/RenderTableRow.cpp:
878         * rendering/RenderTableSection.cpp:
879         * rendering/RenderTheme.cpp:
880         * rendering/RenderThemeChromiumSkia.cpp:
881         * rendering/RenderThemeChromiumWin.cpp:
882         * rendering/RootInlineBox.cpp:
883         * rendering/style/RenderStyle.cpp:
884         * rendering/style/RenderStyle.h:
885         * rendering/style/StyleRareInheritedData.cpp:
886
887 2011-01-14  Ryosuke Niwa  <rniwa@webkit.org>
888
889         Reviewed by Eric Seidel.
890
891         Stop instantiating legacy editing positions in AccessibilityRenderObject.cpp, Element.cpp,
892         BreakBlockquoteCommand.cpp, CompositeEditCommand.cpp, and DeleteButtonController.cpp
893         https://bugs.webkit.org/show_bug.cgi?id=52481
894
895         Removed instantiation of legacy editing positions.
896         Calls to Position::Position are replaced by calls to Position's convenience functions.
897         
898         Also fixed firstPositionInOrBeforeNode and lastPositionInOrAfterNode so that
899         they instantiate right positions for text nodes.
900
901         * accessibility/AccessibilityRenderObject.cpp:
902         (WebCore::AccessibilityRenderObject::setSelectedTextRange):
903         * dom/Element.cpp:
904         (WebCore::Element::updateFocusAppearance):
905         * editing/BreakBlockquoteCommand.cpp:
906         (WebCore::BreakBlockquoteCommand::doApply):
907         * editing/CompositeEditCommand.cpp:
908         (WebCore::CompositeEditCommand::inputText):
909         (WebCore::CompositeEditCommand::rebalanceWhitespaceAt):
910         (WebCore::CompositeEditCommand::moveParagraphContentsToNewBlockIfNecessary):
911         (WebCore::CompositeEditCommand::moveParagraphs):
912         (WebCore::CompositeEditCommand::breakOutOfEmptyListItem):
913         (WebCore::CompositeEditCommand::breakOutOfEmptyMailBlockquotedParagraph):
914         (WebCore::CompositeEditCommand::splitTreeToNode):
915         * editing/DeleteButtonController.cpp:
916         (WebCore::enclosingDeletableElement):
917         * editing/htmlediting.h:
918         (WebCore::firstPositionInOrBeforeNode): Instantiates firstPositionInNode instead of
919         positionBeforeNode for a text node.
920         (WebCore::lastPositionInOrAfterNode): Ditto.
921
922 2011-01-14  Helder Correia  <helder@sencha.com>
923
924         Reviewed by Simon Fraser.
925
926         Shadow is not drawn when filling a path with a gradient
927         https://bugs.webkit.org/show_bug.cgi?id=51982
928
929         This happens in CG and is related to bug 51869, this time to be fixed
930         in GraphicsContext::fillPath(const Path& path). We need to draw the
931         gradient clipped to the path on a CGLayer first, and then draw the
932         layer on the GraphicsContext.
933
934         Test: fast/canvas/canvas-fillPath-gradient-shadow.html
935
936         * platform/graphics/cg/GraphicsContextCG.cpp:
937         (WebCore::GraphicsContext::fillPath):
938
939 2011-01-14  Simon Fraser  <simon.fraser@apple.com>
940
941         Reviewed by Adam Roben.
942
943         Layer syncing should go through the compositor
944         https://bugs.webkit.org/show_bug.cgi?id=52486
945
946         Rather than have FrameView go directly to GraphicsLayer to
947         sync pending changes, route the call through RenderLayerCompositor.
948         
949         Add a FIXME about an existing issue with flushing and subframes.
950         
951         No behavior change, so no tests.
952
953         * page/FrameView.cpp:
954         (WebCore::FrameView::syncCompositingStateForThisFrame):
955         * rendering/RenderLayerBacking.cpp:
956         (WebCore::RenderLayerBacking::notifySyncRequired):
957         * rendering/RenderLayerCompositor.cpp:
958         (WebCore::RenderLayerCompositor::scheduleLayerFlush):
959         (WebCore::RenderLayerCompositor::flushPendingLayerChanges):
960         * rendering/RenderLayerCompositor.h:
961         (WebCore::RenderLayerCompositor::notifySyncRequired):
962
963 2011-01-14  Abhishek Arya  <inferno@chromium.org>
964
965         Reviewed by David Hyatt.
966
967         Fix parent block calculation when trying to find top most node
968         containing "this" float.
969         https://bugs.webkit.org/show_bug.cgi?id=51711
970
971         Replace use of containingBlock and traverse the parents directly
972         to check for float existence. containingBlock can skip parents and
973         jump to the RenderView directly which will cause floats to not get
974         cleared from intermediate parents.
975
976         Test: fast/block/float/floats-not-cleared-crash.html
977
978         * rendering/RenderBox.cpp:
979         (WebCore::RenderBox::removeFloatingOrPositionedChildFromBlockLists):
980
981 2011-01-14  Adam Klein  <adamk@chromium.org>
982
983         Reviewed by Darin Fisher.
984
985         [Chromium] Replace BackForwardListClient with BackForwardControllerClient/BackForwardList
986         https://bugs.webkit.org/show_bug.cgi?id=42237
987
988         Remove Chromium-specific implementation from WebCore.
989
990         No tests added; this refactor should be covered by existing history-exercising tests.
991
992         * WebCore.gyp/WebCore.gyp:
993         * WebCore.gypi:
994         * history/BackForwardListChromium.cpp: Removed.
995         * history/BackForwardListImpl.h:
996
997 2011-01-12  Satish Sampath  <satish@chromium.org>
998
999         Reviewed by Dimitri Glazkov.
1000
1001         Fix a crash when accessing speech input from script.
1002         https://bugs.webkit.org/show_bug.cgi?id=52325
1003
1004         Test: fast/speech/speech-input-scripting.html
1005
1006         * html/HTMLInputElement.cpp:
1007         (WebCore::HTMLInputElement::parseMappedAttribute): Recreate renderer when speech input is enabled/disabled.
1008         * rendering/RenderTextControlSingleLine.cpp: Remove unused code.
1009         * rendering/RenderTextControlSingleLine.h:
1010         * rendering/TextControlInnerElements.cpp: Take self references before firing events and check for renderer validity after.
1011         (WebCore::InputFieldSpeechButtonElement::defaultEventHandler):
1012         (WebCore::InputFieldSpeechButtonElement::setRecognitionResult):
1013         (WebCore::InputFieldSpeechButtonElement::detach):
1014
1015 2011-01-14  Abhishek Arya  <inferno@chromium.org>
1016
1017         Reviewed by David Hyatt.
1018
1019         Prevent merging of anonymous blocks if one of them is already getting
1020         destroyed.
1021         https://bugs.webkit.org/show_bug.cgi?id=52402
1022
1023         Test: fast/block/merge-anonymous-block-remove-child-crash2.html
1024
1025         * rendering/RenderBlock.cpp:
1026         (WebCore::RenderBlock::RenderBlock): initialize m_beingDestroyed to false.
1027         (WebCore::RenderBlock::destroy): set m_beingDestroyed to true.
1028         (WebCore::canMergeContiguousAnonymousBlocks): do not merge if any or prev or next is being destroyed.
1029         (WebCore::RenderBlock::removeChild): remove the hack previously done for preventing oldChild merging with nextBlock's next sibling.
1030         * rendering/RenderBlock.h:
1031         (WebCore::RenderBlock::beingDestroyed): public function for m_beingDestroyed.
1032
1033 2011-01-14  Pavel Feldman  <pfeldman@chromium.org>
1034
1035         Not reviewed. Follow up to r75791: fix missing dispatch.
1036         https://bugs.webkit.org/show_bug.cgi?id=52442
1037
1038         * inspector/front-end/DebuggerModel.js:
1039         (WebInspector.DebuggerDispatcher.prototype.breakpointResolved):
1040
1041 2011-01-14  Simon Fraser  <simon.fraser@apple.com>
1042
1043         Reviewed by Adam Roben.
1044
1045         Issues with contentsScale in GraphicsLayerCA
1046         https://bugs.webkit.org/show_bug.cgi?id=52463
1047
1048         Fix various issues with the recent contentsScale changes:
1049
1050         * platform/graphics/ca/GraphicsLayerCA.cpp:
1051         (WebCore::GraphicsLayerCA::GraphicsLayerCA): Initialize m_contentsScale to 1.
1052         (WebCore::GraphicsLayerCA::updateContentsScale): Only do a setNeedsDisplay()
1053         if the layer draws content, otherwise we'll create backing store for empty layers.
1054         (WebCore::GraphicsLayerCA::swapFromOrToTiledLayer): Be sure to set contentsScale
1055         on the new (tiled or untiled) layer.
1056         (WebCore::GraphicsLayerCA::cloneLayer): Clones need contentsScale too.
1057
1058 2011-01-14  Simon Fraser  <simon.fraser@apple.com>
1059
1060         Let Xcode have it's way with the project file.
1061
1062         * WebCore.xcodeproj/project.pbxproj:
1063
1064 2011-01-14  Simon Fraser  <simon.fraser@apple.com>
1065
1066         Reviewed by Anders Carlsson.
1067
1068         Refactor some FrameView::syncCompositingState code
1069         https://bugs.webkit.org/show_bug.cgi?id=52459
1070
1071         Refactor some code in FrameView related to synchronizing
1072         compositing layer state.
1073         
1074         * page/FrameView.cpp:
1075         (WebCore::FrameView::syncCompositingStateForThisFrame):
1076         (WebCore::FrameView::syncCompositingStateRecursive):
1077         (WebCore::FrameView::paintContents):
1078         * page/FrameView.h:
1079
1080 2011-01-14  Viatcheslav Ostapenko  <ostapenko.viatcheslav@nokia.com>
1081
1082         Reviewed by Eric Seidel.
1083
1084         [Qt] Fix build problem introduced by http://trac.webkit.org/changeset/75713
1085         https://bugs.webkit.org/show_bug.cgi?id=30179
1086
1087         * plugins/symbian/PluginViewSymbian.cpp:
1088
1089 2011-01-14  Carlos Garcia Campos  <cgarcia@igalia.com>
1090
1091         Reviewed by Martin Robinson.
1092
1093         [GTK] Add volume slider to media player
1094         https://bugs.webkit.org/show_bug.cgi?id=51532
1095
1096         * css/mediaControlsGtk.css:
1097         (audio::-webkit-media-controls-panel, video::-webkit-media-controls-panel):
1098         (audio::-webkit-media-controls-volume-slider-container, video::-webkit-media-controls-volume-slider-container):
1099         (audio::-webkit-media-controls-volume-slider, video::-webkit-media-controls-volume-slider):
1100         * platform/gtk/RenderThemeGtk.cpp:
1101         (WebCore::RenderThemeGtk::adjustMediaSliderThumbSize):
1102         (WebCore::RenderThemeGtk::paintMediaVolumeSliderContainer):
1103         (WebCore::RenderThemeGtk::paintMediaVolumeSliderTrack):
1104         (WebCore::RenderThemeGtk::paintMediaVolumeSliderThumb):
1105         * platform/gtk/RenderThemeGtk.h:
1106         * platform/gtk/RenderThemeGtk2.cpp:
1107         (WebCore::RenderThemeGtk::paintSliderTrack):
1108         (WebCore::RenderThemeGtk::paintSliderThumb):
1109         (WebCore::RenderThemeGtk::adjustSliderThumbSize):
1110         * platform/gtk/RenderThemeGtk3.cpp:
1111         (WebCore::RenderThemeGtk::paintSliderTrack):
1112         (WebCore::RenderThemeGtk::paintSliderThumb):
1113         (WebCore::RenderThemeGtk::adjustSliderThumbSize):
1114
1115 2011-01-14  Joone Hur  <joone.hur@collabora.co.uk>
1116
1117         Reviewed by David Levin.
1118
1119         [GTK] Convert use of raw pointers to GOwnPtr in FileSystemGtk.cpp
1120         https://bugs.webkit.org/show_bug.cgi?id=52434
1121
1122         No new tests. This code will be tested when an implementation 
1123         of beginDragWithFiles is complete. 
1124
1125         * platform/gtk/FileSystemGtk.cpp:
1126         (WebCore::filenameToString): Use GOwnPtr instead of gchar pointer.
1127         (WebCore::fileSystemRepresentation): Ditto.
1128         (WebCore::filenameForDisplay): Ditto.
1129         (WebCore::pathGetFileName): Ditto.
1130
1131 2011-01-14  Pavel Podivilov  <podivilov@chromium.org>
1132
1133         Reviewed by Yury Semikhatsky.
1134
1135         Web Inspector: breakpoint text snippet in breakpoints sidebar pane disappears after reload.
1136         https://bugs.webkit.org/show_bug.cgi?id=52215
1137
1138         * inspector/front-end/Breakpoint.js:
1139         (WebInspector.Breakpoint):
1140         (WebInspector.Breakpoint.prototype.populateLabelElement):
1141         * inspector/front-end/Script.js:
1142         (WebInspector.Script.prototype.get linesCount):
1143         (WebInspector.Script.prototype.sourceLine):
1144         (WebInspector.Script.prototype.sourceLine.didRequestSource):
1145         (WebInspector.Script.prototype.set source):
1146         (WebInspector.Script.prototype.requestSource.didGetScriptSource):
1147         (WebInspector.Script.prototype.requestSource):
1148         * inspector/front-end/ScriptView.js:
1149         (WebInspector.ScriptView.prototype.setupSourceFrameIfNeeded.didRequestSource):
1150         (WebInspector.ScriptView.prototype.setupSourceFrameIfNeeded):
1151         * inspector/front-end/SourceFrame.js:
1152         (WebInspector.SourceFrame.prototype._addBreakpoint):
1153         * inspector/front-end/utilities.js:
1154         (String.prototype.findAll):
1155
1156 2011-01-14  Pavel Podivilov  <podivilov@chromium.org>
1157
1158         Reviewed by Yury Semikhatsky.
1159
1160         Web Inspector: provide script column offset to frontend.
1161         https://bugs.webkit.org/show_bug.cgi?id=52377
1162
1163         * bindings/js/ScriptDebugServer.cpp:
1164         (WebCore::ScriptDebugServer::dispatchDidParseSource):
1165         * bindings/js/ScriptSourceCode.h:
1166         (WebCore::ScriptSourceCode::ScriptSourceCode):
1167         * bindings/v8/DebuggerScript.js:
1168         ():
1169         * bindings/v8/ScriptDebugServer.cpp:
1170         (WebCore::ScriptDebugServer::dispatchDidParseSource):
1171         * inspector/Inspector.idl:
1172         * inspector/InspectorDebuggerAgent.cpp:
1173         (WebCore::InspectorDebuggerAgent::didParseSource):
1174         * inspector/InspectorDebuggerAgent.h:
1175         * inspector/ScriptDebugListener.h:
1176         * inspector/front-end/DebuggerModel.js:
1177         (WebInspector.DebuggerModel.prototype.parsedScriptSource):
1178         * inspector/front-end/Script.js:
1179         (WebInspector.Script):
1180
1181 2011-01-14  Ilya Tikhonovsky  <loislo@chromium.org>
1182
1183         Unreviewed one line fix for console-xhr-logging test.
1184
1185         The problem was introduced at r75788.
1186
1187         * inspector/InspectorBrowserDebuggerAgent.cpp:
1188         (WebCore::InspectorBrowserDebuggerAgent::willSendXMLHttpRequest):
1189
1190 2011-01-13  Yury Semikhatsky  <yurys@chromium.org>
1191
1192         Reviewed by Pavel Feldman.
1193
1194         Web Inspector: extract console related functionality into InspectorConsoleAgent
1195         https://bugs.webkit.org/show_bug.cgi?id=52282
1196
1197         * CMakeLists.txt:
1198         * GNUmakefile.am:
1199         * WebCore.gypi:
1200         * WebCore.pro:
1201         * inspector/CodeGeneratorInspector.pm:
1202         * inspector/ConsoleMessage.cpp:
1203         (WebCore::ConsoleMessage::~ConsoleMessage):
1204         * inspector/ConsoleMessage.h:
1205         * inspector/Inspector.idl:
1206         * inspector/InspectorConsoleAgent.cpp: Added.
1207         (WebCore::InspectorConsoleAgent::InspectorConsoleAgent):
1208         (WebCore::InspectorConsoleAgent::~InspectorConsoleAgent):
1209         (WebCore::InspectorConsoleAgent::setConsoleMessagesEnabled):
1210         (WebCore::InspectorConsoleAgent::clearConsoleMessages):
1211         (WebCore::InspectorConsoleAgent::reset):
1212         (WebCore::InspectorConsoleAgent::setFrontend):
1213         (WebCore::InspectorConsoleAgent::addMessageToConsole):
1214         (WebCore::InspectorConsoleAgent::startTiming):
1215         (WebCore::InspectorConsoleAgent::stopTiming):
1216         (WebCore::InspectorConsoleAgent::count):
1217         (WebCore::InspectorConsoleAgent::resourceRetrievedByXMLHttpRequest):
1218         (WebCore::InspectorConsoleAgent::didReceiveResponse):
1219         (WebCore::InspectorConsoleAgent::didFailLoading):
1220         (WebCore::InspectorConsoleAgent::addConsoleMessage):
1221         * inspector/InspectorConsoleAgent.h: Added.
1222         * inspector/InspectorController.cpp:
1223         (WebCore::InspectorController::InspectorController):
1224         (WebCore::InspectorController::clearConsoleMessages):
1225         (WebCore::InspectorController::connectFrontend):
1226         (WebCore::InspectorController::disconnectFrontend):
1227         (WebCore::InspectorController::didCommitLoad):
1228         * inspector/InspectorController.h:
1229         (WebCore::InspectorController::consoleAgent):
1230         * inspector/InspectorInstrumentation.cpp:
1231         (WebCore::InspectorInstrumentation::didReceiveResourceResponseImpl):
1232         (WebCore::InspectorInstrumentation::didFailLoadingImpl):
1233         (WebCore::InspectorInstrumentation::resourceRetrievedByXMLHttpRequestImpl):
1234         (WebCore::InspectorInstrumentation::addMessageToConsole):
1235         (WebCore::InspectorInstrumentation::count):
1236         (WebCore::InspectorInstrumentation::startTiming):
1237         (WebCore::InspectorInstrumentation::stopTiming):
1238         (WebCore::InspectorInstrumentation::addStartProfilingMessageToConsole):
1239         * inspector/InspectorInstrumentation.h:
1240         * inspector/InspectorProfilerAgent.cpp:
1241         (WebCore::InspectorProfilerAgent::addProfileFinishedMessageToConsole):
1242         (WebCore::InspectorProfilerAgent::addStartProfilingMessageToConsole):
1243         * inspector/front-end/ConsoleView.js:
1244         (WebInspector.ConsoleView):
1245         (WebInspector.ConsoleView.prototype.addConsoleMessage):
1246         (WebInspector.ConsoleView.prototype.updateConsoleMessageExpiredCount):
1247         (WebInspector.ConsoleView.prototype.consoleMessagesCleared):
1248         * inspector/front-end/inspector.js:
1249         * page/Console.cpp:
1250         (WebCore::Console::addMessage):
1251         (WebCore::Console::count):
1252         (WebCore::Console::profile):
1253         (WebCore::Console::time):
1254         (WebCore::Console::timeEnd):
1255         (WebCore::Console::group):
1256         (WebCore::Console::groupCollapsed):
1257         (WebCore::Console::groupEnd):
1258         * page/Console.h:
1259         * page/Console.idl:
1260
1261 2011-01-14  Pavel Feldman  <pfeldman@chromium.org>
1262
1263         Reviewed by Yury Semikhatsky.
1264
1265         Web Inspector: do not use this as protocol message
1266         dispatcher in models / agents.
1267         https://bugs.webkit.org/show_bug.cgi?id=52442
1268
1269         Models should never for InspectorBackend.registerDomainDispatcher("foo", this).
1270         There should be a clear way to tell whether method is being called
1271         from within front-end or by the backend.
1272
1273         * inspector/front-end/DOMAgent.js:
1274         (WebInspector.DOMAgent):
1275         (WebInspector.DOMAgent.prototype.nodeForId):
1276         (WebInspector.DOMAgent.prototype._bindNodes):
1277         (WebInspector.DOMAgent.prototype._removeBreakpoints):
1278         (WebInspector.DOMDispatcher):
1279         (WebInspector.DOMDispatcher.prototype.setDocument):
1280         (WebInspector.DOMDispatcher.prototype.attributesUpdated):
1281         (WebInspector.DOMDispatcher.prototype.characterDataModified):
1282         (WebInspector.DOMDispatcher.prototype.setChildNodes):
1283         (WebInspector.DOMDispatcher.prototype.setDetachedRoot):
1284         (WebInspector.DOMDispatcher.prototype.childNodeCountUpdated):
1285         (WebInspector.DOMDispatcher.prototype.childNodeInserted):
1286         (WebInspector.DOMDispatcher.prototype.childNodeRemoved):
1287         (WebInspector.DOMDispatcher.prototype.didCommitLoad):
1288         (WebInspector.ApplicationCacheDispatcher):
1289         (WebInspector.ApplicationCacheDispatcher.prototype.getApplicationCachesAsync):
1290         (WebInspector.ApplicationCacheDispatcher.prototype.updateApplicationCacheStatus):
1291         (WebInspector.ApplicationCacheDispatcher.prototype.updateNetworkState):
1292         * inspector/front-end/DOMStorage.js:
1293         (WebInspector.DOMStorageDispatcher):
1294         (WebInspector.DOMStorageDispatcher.prototype.addDOMStorage):
1295         (WebInspector.DOMStorageDispatcher.prototype.selectDOMStorage):
1296         (WebInspector.DOMStorageDispatcher.prototype.updateDOMStorage):
1297         * inspector/front-end/Database.js:
1298         (WebInspector.Database.prototype.executeSql):
1299         (WebInspector.DatabaseDispatcher):
1300         (WebInspector.DatabaseDispatcher.prototype.addDatabase):
1301         (WebInspector.DatabaseDispatcher.prototype.selectDatabase):
1302         (WebInspector.DatabaseDispatcher.prototype.sqlTransactionSucceeded):
1303         (WebInspector.DatabaseDispatcher.prototype.sqlTransactionFailed):
1304         * inspector/front-end/DebuggerModel.js:
1305         (WebInspector.DebuggerModel):
1306         (WebInspector.DebuggerModel.prototype._pausedScript):
1307         (WebInspector.DebuggerModel.prototype._resumedScript):
1308         (WebInspector.DebuggerModel.prototype._parsedScriptSource):
1309         (WebInspector.DebuggerModel.prototype._failedToParseScriptSource):
1310         (WebInspector.DebuggerDispatcher):
1311         (WebInspector.DebuggerDispatcher.prototype.pausedScript):
1312         (WebInspector.DebuggerDispatcher.prototype.resumedScript):
1313         (WebInspector.DebuggerDispatcher.prototype.parsedScriptSource):
1314         (WebInspector.DebuggerDispatcher.prototype.failedToParseScriptSource):
1315         * inspector/front-end/FileSystemView.js:
1316         (WebInspector.FileSystemDispatcher):
1317         (WebInspector.FileSystemDispatcher.prototype.getFileSystemPathsAsync):
1318         (WebInspector.FileSystemDispatcher.prototype.didGetFileSystemPath):
1319         (WebInspector.FileSystemDispatcher.prototype.didGetFileSystemError):
1320         (WebInspector.FileSystemDispatcher.prototype.didGetFileSystemDisabled):
1321         * inspector/front-end/ProfilesPanel.js:
1322         (WebInspector.ProfilesPanel):
1323         (WebInspector.ProfilesPanel.prototype._addProfileHeader):
1324         (WebInspector.ProfilesPanel.prototype._removeProfileHeader):
1325         (WebInspector.ProfilesPanel.prototype._addHeapSnapshotChunk):
1326         (WebInspector.ProfilesPanel.prototype._finishHeapSnapshot):
1327         (WebInspector.ProfilesPanel.prototype._setRecordingProfile):
1328         (WebInspector.ProfilerDispatcher):
1329         (WebInspector.ProfilerDispatcher.prototype.profilerWasEnabled):
1330         (WebInspector.ProfilerDispatcher.prototype.profilerWasDisabled):
1331         (WebInspector.ProfilerDispatcher.prototype.resetProfiles):
1332         (WebInspector.ProfilerDispatcher.prototype.addProfileHeader):
1333         (WebInspector.ProfilerDispatcher.prototype.addHeapSnapshotChunk):
1334         (WebInspector.ProfilerDispatcher.prototype.finishHeapSnapshot):
1335         (WebInspector.ProfilerDispatcher.prototype.setRecordingProfile):
1336         (WebInspector.ProfileSidebarTreeElement.prototype.ondelete):
1337         * inspector/front-end/ResourceTreeModel.js:
1338         (WebInspector.ResourceTreeModel):
1339         * inspector/front-end/TimelinePanel.js:
1340         (WebInspector.TimelinePanel):
1341         (WebInspector.TimelinePanel.prototype._timelineProfilerWasStarted):
1342         (WebInspector.TimelinePanel.prototype._timelineProfilerWasStopped):
1343         (WebInspector.TimelinePanel.prototype._addRecordToTimeline):
1344         (WebInspector.TimelineDispatcher):
1345         (WebInspector.TimelineDispatcher.prototype.timelineProfilerWasStarted):
1346         (WebInspector.TimelineDispatcher.prototype.timelineProfilerWasStopped):
1347         (WebInspector.TimelineDispatcher.prototype.addRecordToTimeline):
1348
1349 2011-01-14  Csaba Osztrogonác  <ossy@webkit.org>
1350
1351         [Qt][V8] Unreviewed buildfix after r75788.
1352
1353         * inspector/InspectorBrowserDebuggerAgent.cpp:
1354
1355 2011-01-12  Ilya Tikhonovsky  <loislo@chromium.org>
1356
1357         Reviewed by Yury Semikhatsky.
1358
1359         Web Inspector: Extract BrowserDebuggerAgent from InspectorController, InspectorDOMAgent and InspectorDebugger agent.
1360         We have some methods of Debugger which are related to DOM.
1361         Lets extract these methods to BrowserDebugger agent.
1362
1363         http://bugs.webkit.org/show_bug.cgi?id=52294
1364
1365         * CMakeLists.txt:
1366         * WebCore.gypi:
1367         * WebCore.pro:
1368         * WebCore.vcproj/WebCore.vcproj:
1369         * WebCore.xcodeproj/project.pbxproj:
1370         * inspector/CodeGeneratorInspector.pm:
1371         * inspector/Inspector.idl:
1372         * inspector/InspectorBrowserDebuggerAgent.cpp: Added.
1373         (WebCore::InspectorBrowserDebuggerAgent::InspectorBrowserDebuggerAgent):
1374         (WebCore::InspectorBrowserDebuggerAgent::~InspectorBrowserDebuggerAgent):
1375         (WebCore::InspectorBrowserDebuggerAgent::discardBindings):
1376         (WebCore::InspectorBrowserDebuggerAgent::setEventListenerBreakpoint):
1377         (WebCore::InspectorBrowserDebuggerAgent::removeEventListenerBreakpoint):
1378         (WebCore::InspectorBrowserDebuggerAgent::didInsertDOMNode):
1379         (WebCore::InspectorBrowserDebuggerAgent::didRemoveDOMNode):
1380         (WebCore::InspectorBrowserDebuggerAgent::setDOMBreakpoint):
1381         (WebCore::InspectorBrowserDebuggerAgent::removeDOMBreakpoint):
1382         (WebCore::InspectorBrowserDebuggerAgent::willInsertDOMNode):
1383         (WebCore::InspectorBrowserDebuggerAgent::willRemoveDOMNode):
1384         (WebCore::InspectorBrowserDebuggerAgent::willModifyDOMAttr):
1385         (WebCore::InspectorBrowserDebuggerAgent::descriptionForDOMEvent):
1386         (WebCore::InspectorBrowserDebuggerAgent::hasBreakpoint):
1387         (WebCore::InspectorBrowserDebuggerAgent::updateSubtreeBreakpoints):
1388         (WebCore::InspectorBrowserDebuggerAgent::pauseOnNativeEventIfNeeded):
1389         (WebCore::InspectorBrowserDebuggerAgent::setXHRBreakpoint):
1390         (WebCore::InspectorBrowserDebuggerAgent::removeXHRBreakpoint):
1391         (WebCore::InspectorBrowserDebuggerAgent::willSendXMLHttpRequest):
1392         (WebCore::InspectorBrowserDebuggerAgent::clearForPageNavigation):
1393         * inspector/InspectorBrowserDebuggerAgent.h: Added.
1394         (WebCore::InspectorBrowserDebuggerAgent::create):
1395         * inspector/InspectorController.cpp:
1396         (WebCore::InspectorController::InspectorController):
1397         (WebCore::InspectorController::inspectedPageDestroyed):
1398         (WebCore::InspectorController::didCommitLoad):
1399         (WebCore::InspectorController::enableDebuggerFromFrontend):
1400         (WebCore::InspectorController::disableDebugger):
1401         (WebCore::InspectorController::restoreStickyBreakpoints):
1402         (WebCore::InspectorController::restoreStickyBreakpoint):
1403         * inspector/InspectorController.h:
1404         * inspector/InspectorDOMAgent.cpp:
1405         (WebCore::InspectorDOMAgent::discardBindings):
1406         (WebCore::InspectorDOMAgent::didInsertDOMNode):
1407         (WebCore::InspectorDOMAgent::didRemoveDOMNode):
1408         * inspector/InspectorDOMAgent.h:
1409         * inspector/InspectorInstrumentation.cpp:
1410         (WebCore::InspectorInstrumentation::willInsertDOMNodeImpl):
1411         (WebCore::InspectorInstrumentation::didInsertDOMNodeImpl):
1412         (WebCore::InspectorInstrumentation::willRemoveDOMNodeImpl):
1413         (WebCore::InspectorInstrumentation::didRemoveDOMNodeImpl):
1414         (WebCore::InspectorInstrumentation::willModifyDOMAttrImpl):
1415         (WebCore::InspectorInstrumentation::willSendXMLHttpRequestImpl):
1416         (WebCore::InspectorInstrumentation::pauseOnNativeEventIfNeeded):
1417
1418 2011-01-14  Andrey Kosyakov  <caseq@chromium.org>
1419
1420         Reviewed by Pavel Feldman.
1421
1422         Web Inspector: redirected resources not handled properly in Network panel
1423         https://bugs.webkit.org/show_bug.cgi?id=52292
1424
1425         * inspector/Inspector.idl: Do not pass isMainResource to identifierForInitialRequest() (it's useless, as we may hit provisional load)
1426         * inspector/InspectorInstrumentation.cpp: Ditto.
1427         (WebCore::InspectorInstrumentation::identifierForInitialRequestImpl):
1428         * inspector/InspectorResourceAgent.cpp: Ditto.
1429         (WebCore::InspectorResourceAgent::identifierForInitialRequest):
1430         * inspector/InspectorResourceAgent.h: Ditto.
1431         * inspector/InspectorInstrumentation.cpp: Ditto.
1432         (WebCore::InspectorInstrumentation::identifierForInitialRequestImpl): Fix main resource detection.
1433         * inspector/front-end/AuditsPanel.js: WebInspector.networkResources now returns array, not map.
1434         * inspector/front-end/ConsoleView.js: User WebInspector.resourceById() to get resource
1435         (WebInspector.ConsoleMessage.prototype._formatMessage):
1436         * inspector/front-end/ExtensionServer.js: Ditto.
1437         (WebInspector.ExtensionServer.prototype._onRevealAndSelectResource):
1438         (WebInspector.ExtensionServer.prototype._onGetResourceContent):
1439         * inspector/front-end/HAREntry.js: WebInspector.networkResources now returns array, not map
1440         (WebInspector.HARLog.prototype.build):
1441         (WebInspector.HARLog.prototype._convertResource):
1442         * inspector/front-end/NetworkManager.js:
1443         (WebInspector.NetworkManager): Use appendResource, not refreshResource, when adding a new resource.
1444         (WebInspector.NetworkManager.prototype.identifierForInitialRequest):
1445         (WebInspector.NetworkManager.prototype.willSendRequest):
1446         (WebInspector.NetworkManager.prototype.didLoadResourceFromMemoryCache):
1447         (WebInspector.NetworkManager.prototype.setInitialContent):
1448         (WebInspector.NetworkManager.prototype.didCommitLoadForFrame):
1449         (WebInspector.NetworkManager.prototype.didCreateWebSocket):
1450         (WebInspector.NetworkManager.prototype._createResource): always register resource URL with ResourceTreeModel
1451         (WebInspector.NetworkManager.prototype._appendRedirect):
1452         * inspector/front-end/NetworkPanel.js:
1453         (WebInspector.NetworkPanel):
1454         (WebInspector.NetworkPanel.prototype.get resources):
1455         (WebInspector.NetworkPanel.prototype.resourceById):
1456         (WebInspector.NetworkPanel.prototype.appendResource): Add resource as new iff appendResource was added.
1457         (WebInspector.NetworkPanel.prototype.refreshResource): ditto.
1458         (WebInspector.NetworkPanel.prototype.mainResourceChanged): Clear console upon arrival of new main resource.
1459         * inspector/front-end/ResourceTreeModel.js: Expose unbindResourceURL, bind resources automatically upon creation.
1460         (WebInspector.ResourceTreeModel.prototype._clearResources):
1461         (WebInspector.ResourceTreeModel.prototype.unbindResourceURL):
1462         (WebInspector.ResourceTreeModel.prototype._addFramesRecursively):
1463         (WebInspector.ResourceTreeModel.prototype.createResource):
1464         * inspector/front-end/inspector.js:
1465         (WebInspector.resourceById):
1466
1467 2011-01-14  Sheriff Bot  <webkit.review.bot@gmail.com>
1468
1469         Unreviewed, rolling out r75783.
1470         http://trac.webkit.org/changeset/75783
1471         https://bugs.webkit.org/show_bug.cgi?id=52439
1472
1473         a bit strange but the same patch have broken mac builds at
1474         linking stage. (Requested by loislo2 on #webkit).
1475
1476         * CMakeLists.txt:
1477         * GNUmakefile.am:
1478         * WebCore.gypi:
1479         * WebCore.pro:
1480         * WebCore.vcproj/WebCore.vcproj:
1481         * WebCore.xcodeproj/project.pbxproj:
1482         * inspector/CodeGeneratorInspector.pm:
1483         * inspector/Inspector.idl:
1484         * inspector/InspectorBrowserDebuggerAgent.cpp: Removed.
1485         * inspector/InspectorBrowserDebuggerAgent.h: Removed.
1486         * inspector/InspectorController.cpp:
1487         (WebCore::InspectorController::InspectorController):
1488         (WebCore::InspectorController::inspectedPageDestroyed):
1489         (WebCore::InspectorController::didCommitLoad):
1490         (WebCore::InspectorController::enableDebuggerFromFrontend):
1491         (WebCore::InspectorController::disableDebugger):
1492         (WebCore::InspectorController::restoreStickyBreakpoints):
1493         (WebCore::InspectorController::restoreStickyBreakpoint):
1494         (WebCore::InspectorController::setEventListenerBreakpoint):
1495         (WebCore::InspectorController::removeEventListenerBreakpoint):
1496         (WebCore::InspectorController::hasEventListenerBreakpoint):
1497         (WebCore::InspectorController::setXHRBreakpoint):
1498         (WebCore::InspectorController::removeXHRBreakpoint):
1499         (WebCore::InspectorController::hasXHRBreakpoint):
1500         * inspector/InspectorController.h:
1501         * inspector/InspectorDOMAgent.cpp:
1502         (WebCore::InspectorDOMAgent::discardBindings):
1503         (WebCore::InspectorDOMAgent::setDOMBreakpoint):
1504         (WebCore::InspectorDOMAgent::removeDOMBreakpoint):
1505         (WebCore::InspectorDOMAgent::shouldBreakOnNodeInsertion):
1506         (WebCore::InspectorDOMAgent::shouldBreakOnNodeRemoval):
1507         (WebCore::InspectorDOMAgent::shouldBreakOnAttributeModification):
1508         (WebCore::InspectorDOMAgent::descriptionForDOMEvent):
1509         (WebCore::InspectorDOMAgent::didInsertDOMNode):
1510         (WebCore::InspectorDOMAgent::didRemoveDOMNode):
1511         (WebCore::InspectorDOMAgent::hasBreakpoint):
1512         (WebCore::InspectorDOMAgent::updateSubtreeBreakpoints):
1513         * inspector/InspectorDOMAgent.h:
1514         * inspector/InspectorInstrumentation.cpp:
1515         (WebCore::InspectorInstrumentation::willInsertDOMNodeImpl):
1516         (WebCore::InspectorInstrumentation::didInsertDOMNodeImpl):
1517         (WebCore::InspectorInstrumentation::willRemoveDOMNodeImpl):
1518         (WebCore::InspectorInstrumentation::didRemoveDOMNodeImpl):
1519         (WebCore::InspectorInstrumentation::willModifyDOMAttrImpl):
1520         (WebCore::InspectorInstrumentation::willSendXMLHttpRequestImpl):
1521         (WebCore::InspectorInstrumentation::pauseOnNativeEventIfNeeded):
1522
1523 2011-01-12  Ilya Tikhonovsky  <loislo@chromium.org>
1524
1525         Reviewed by Yury Semikhatsky.
1526
1527         Web Inspector: Extract BrowserDebuggerAgent from InspectorController, InspectorDOMAgent and InspectorDebugger agent.
1528         We have some methods of Debugger which are related to DOM.
1529         Lets extract these methods to BrowserDebugger agent.
1530
1531         http://bugs.webkit.org/show_bug.cgi?id=52294
1532
1533         * CMakeLists.txt:
1534         * WebCore.gypi:
1535         * WebCore.pro:
1536         * WebCore.vcproj/WebCore.vcproj:
1537         * WebCore.xcodeproj/project.pbxproj:
1538         * inspector/CodeGeneratorInspector.pm:
1539         * inspector/Inspector.idl:
1540         * inspector/InspectorBrowserDebuggerAgent.cpp: Added.
1541         (WebCore::InspectorBrowserDebuggerAgent::InspectorBrowserDebuggerAgent):
1542         (WebCore::InspectorBrowserDebuggerAgent::~InspectorBrowserDebuggerAgent):
1543         (WebCore::InspectorBrowserDebuggerAgent::discardBindings):
1544         (WebCore::InspectorBrowserDebuggerAgent::setEventListenerBreakpoint):
1545         (WebCore::InspectorBrowserDebuggerAgent::removeEventListenerBreakpoint):
1546         (WebCore::InspectorBrowserDebuggerAgent::didInsertDOMNode):
1547         (WebCore::InspectorBrowserDebuggerAgent::didRemoveDOMNode):
1548         (WebCore::InspectorBrowserDebuggerAgent::setDOMBreakpoint):
1549         (WebCore::InspectorBrowserDebuggerAgent::removeDOMBreakpoint):
1550         (WebCore::InspectorBrowserDebuggerAgent::willInsertDOMNode):
1551         (WebCore::InspectorBrowserDebuggerAgent::willRemoveDOMNode):
1552         (WebCore::InspectorBrowserDebuggerAgent::willModifyDOMAttr):
1553         (WebCore::InspectorBrowserDebuggerAgent::descriptionForDOMEvent):
1554         (WebCore::InspectorBrowserDebuggerAgent::hasBreakpoint):
1555         (WebCore::InspectorBrowserDebuggerAgent::updateSubtreeBreakpoints):
1556         (WebCore::InspectorBrowserDebuggerAgent::pauseOnNativeEventIfNeeded):
1557         (WebCore::InspectorBrowserDebuggerAgent::setXHRBreakpoint):
1558         (WebCore::InspectorBrowserDebuggerAgent::removeXHRBreakpoint):
1559         (WebCore::InspectorBrowserDebuggerAgent::willSendXMLHttpRequest):
1560         (WebCore::InspectorBrowserDebuggerAgent::clearForPageNavigation):
1561         * inspector/InspectorBrowserDebuggerAgent.h: Added.
1562         (WebCore::InspectorBrowserDebuggerAgent::create):
1563         * inspector/InspectorController.cpp:
1564         (WebCore::InspectorController::InspectorController):
1565         (WebCore::InspectorController::inspectedPageDestroyed):
1566         (WebCore::InspectorController::didCommitLoad):
1567         (WebCore::InspectorController::enableDebuggerFromFrontend):
1568         (WebCore::InspectorController::disableDebugger):
1569         (WebCore::InspectorController::restoreStickyBreakpoints):
1570         (WebCore::InspectorController::restoreStickyBreakpoint):
1571         * inspector/InspectorController.h:
1572         * inspector/InspectorDOMAgent.cpp:
1573         (WebCore::InspectorDOMAgent::discardBindings):
1574         (WebCore::InspectorDOMAgent::didInsertDOMNode):
1575         (WebCore::InspectorDOMAgent::didRemoveDOMNode):
1576         * inspector/InspectorDOMAgent.h:
1577         * inspector/InspectorInstrumentation.cpp:
1578         (WebCore::InspectorInstrumentation::willInsertDOMNodeImpl):
1579         (WebCore::InspectorInstrumentation::didInsertDOMNodeImpl):
1580         (WebCore::InspectorInstrumentation::willRemoveDOMNodeImpl):
1581         (WebCore::InspectorInstrumentation::didRemoveDOMNodeImpl):
1582         (WebCore::InspectorInstrumentation::willModifyDOMAttrImpl):
1583         (WebCore::InspectorInstrumentation::willSendXMLHttpRequestImpl):
1584         (WebCore::InspectorInstrumentation::pauseOnNativeEventIfNeeded):
1585
1586 2011-01-14  Pavel Feldman  <pfeldman@chromium.org>
1587
1588         Not reviewed: build fix.
1589
1590         * WebCore.vcproj/WebCore.vcproj:
1591
1592 2011-01-14  Pavel Feldman  <pfeldman@chromium.org>
1593
1594         Reviewed by Yury Semikhatsky.
1595
1596         Web Inspector: extract InspectorSettings from InspectorState,
1597         simplify it.
1598         https://bugs.webkit.org/show_bug.cgi?id=52429
1599
1600         * CMakeLists.txt:
1601         * GNUmakefile.am:
1602         * WebCore.gypi:
1603         * WebCore.pro:
1604         * WebCore.xcodeproj/project.pbxproj:
1605         * inspector/InspectorClient.h:
1606         * inspector/InspectorController.cpp:
1607         (WebCore::InspectorController::InspectorController):
1608         (WebCore::InspectorController::inspectorStartsAttached):
1609         (WebCore::InspectorController::setInspectorStartsAttached):
1610         (WebCore::InspectorController::setInspectorAttachedHeight):
1611         (WebCore::InspectorController::inspectorAttachedHeight):
1612         (WebCore::InspectorController::setMonitoringXHREnabled):
1613         (WebCore::InspectorController::restoreDebugger):
1614         (WebCore::InspectorController::restoreProfiler):
1615         (WebCore::InspectorController::ensureSettingsLoaded):
1616         (WebCore::InspectorController::enableProfiler):
1617         (WebCore::InspectorController::disableProfiler):
1618         (WebCore::InspectorController::enableDebuggerFromFrontend):
1619         (WebCore::InspectorController::disableDebugger):
1620         * inspector/InspectorController.h:
1621         * inspector/InspectorSettings.cpp: Added.
1622         (WebCore::InspectorSettings::InspectorSettings):
1623         (WebCore::InspectorSettings::getBoolean):
1624         (WebCore::InspectorSettings::setBoolean):
1625         (WebCore::InspectorSettings::getLong):
1626         (WebCore::InspectorSettings::setLong):
1627         (WebCore::InspectorSettings::registerBoolean):
1628         (WebCore::InspectorSettings::registerLong):
1629         * inspector/InspectorSettings.h: Added.
1630         * inspector/InspectorState.cpp:
1631         (WebCore::InspectorState::InspectorState):
1632         (WebCore::InspectorState::setValue):
1633         (WebCore::InspectorState::setObject):
1634         (WebCore::InspectorState::registerBoolean):
1635         (WebCore::InspectorState::registerString):
1636         (WebCore::InspectorState::registerLong):
1637         (WebCore::InspectorState::registerObject):
1638         (WebCore::InspectorState::Property::create):
1639         * inspector/InspectorState.h:
1640         (WebCore::InspectorState::setBoolean):
1641         (WebCore::InspectorState::setString):
1642         (WebCore::InspectorState::setLong):
1643
1644 2011-01-14  Sheriff Bot  <webkit.review.bot@gmail.com>
1645
1646         Unreviewed, rolling out r75774.
1647         http://trac.webkit.org/changeset/75774
1648         https://bugs.webkit.org/show_bug.cgi?id=52431
1649
1650         gtk builds were broken (Requested by loislo2 on #webkit).
1651
1652         * CMakeLists.txt:
1653         * WebCore.gypi:
1654         * WebCore.pro:
1655         * WebCore.vcproj/WebCore.vcproj:
1656         * WebCore.xcodeproj/project.pbxproj:
1657         * inspector/CodeGeneratorInspector.pm:
1658         * inspector/Inspector.idl:
1659         * inspector/InspectorBrowserDebuggerAgent.cpp: Removed.
1660         * inspector/InspectorBrowserDebuggerAgent.h: Removed.
1661         * inspector/InspectorController.cpp:
1662         (WebCore::InspectorController::InspectorController):
1663         (WebCore::InspectorController::inspectedPageDestroyed):
1664         (WebCore::InspectorController::didCommitLoad):
1665         (WebCore::InspectorController::enableDebuggerFromFrontend):
1666         (WebCore::InspectorController::disableDebugger):
1667         (WebCore::InspectorController::restoreStickyBreakpoints):
1668         (WebCore::InspectorController::restoreStickyBreakpoint):
1669         (WebCore::InspectorController::setEventListenerBreakpoint):
1670         (WebCore::InspectorController::removeEventListenerBreakpoint):
1671         (WebCore::InspectorController::hasEventListenerBreakpoint):
1672         (WebCore::InspectorController::setXHRBreakpoint):
1673         (WebCore::InspectorController::removeXHRBreakpoint):
1674         (WebCore::InspectorController::hasXHRBreakpoint):
1675         * inspector/InspectorController.h:
1676         * inspector/InspectorDOMAgent.cpp:
1677         (WebCore::InspectorDOMAgent::discardBindings):
1678         (WebCore::InspectorDOMAgent::setDOMBreakpoint):
1679         (WebCore::InspectorDOMAgent::removeDOMBreakpoint):
1680         (WebCore::InspectorDOMAgent::shouldBreakOnNodeInsertion):
1681         (WebCore::InspectorDOMAgent::shouldBreakOnNodeRemoval):
1682         (WebCore::InspectorDOMAgent::shouldBreakOnAttributeModification):
1683         (WebCore::InspectorDOMAgent::descriptionForDOMEvent):
1684         (WebCore::InspectorDOMAgent::didInsertDOMNode):
1685         (WebCore::InspectorDOMAgent::didRemoveDOMNode):
1686         (WebCore::InspectorDOMAgent::hasBreakpoint):
1687         (WebCore::InspectorDOMAgent::updateSubtreeBreakpoints):
1688         * inspector/InspectorDOMAgent.h:
1689         * inspector/InspectorInstrumentation.cpp:
1690         (WebCore::InspectorInstrumentation::willInsertDOMNodeImpl):
1691         (WebCore::InspectorInstrumentation::didInsertDOMNodeImpl):
1692         (WebCore::InspectorInstrumentation::willRemoveDOMNodeImpl):
1693         (WebCore::InspectorInstrumentation::didRemoveDOMNodeImpl):
1694         (WebCore::InspectorInstrumentation::willModifyDOMAttrImpl):
1695         (WebCore::InspectorInstrumentation::willSendXMLHttpRequestImpl):
1696         (WebCore::InspectorInstrumentation::pauseOnNativeEventIfNeeded):
1697
1698 2011-01-12  Ilya Tikhonovsky  <loislo@chromium.org>
1699
1700         Reviewed by Yury Semikhatsky.
1701
1702         Web Inspector: Extract BrowserDebuggerAgent from InspectorController, InspectorDOMAgent and InspectorDebugger agent.
1703         We have some methods of Debugger which are related to DOM.
1704         Lets extract these methods to BrowserDebugger agent.
1705
1706         http://bugs.webkit.org/show_bug.cgi?id=52294
1707
1708         * CMakeLists.txt:
1709         * WebCore.gypi:
1710         * WebCore.pro:
1711         * WebCore.vcproj/WebCore.vcproj:
1712         * WebCore.xcodeproj/project.pbxproj:
1713         * inspector/CodeGeneratorInspector.pm:
1714         * inspector/Inspector.idl:
1715         * inspector/InspectorBrowserDebuggerAgent.cpp: Added.
1716         (WebCore::InspectorBrowserDebuggerAgent::InspectorBrowserDebuggerAgent):
1717         (WebCore::InspectorBrowserDebuggerAgent::~InspectorBrowserDebuggerAgent):
1718         (WebCore::InspectorBrowserDebuggerAgent::discardBindings):
1719         (WebCore::InspectorBrowserDebuggerAgent::setEventListenerBreakpoint):
1720         (WebCore::InspectorBrowserDebuggerAgent::removeEventListenerBreakpoint):
1721         (WebCore::InspectorBrowserDebuggerAgent::didInsertDOMNode):
1722         (WebCore::InspectorBrowserDebuggerAgent::didRemoveDOMNode):
1723         (WebCore::InspectorBrowserDebuggerAgent::setDOMBreakpoint):
1724         (WebCore::InspectorBrowserDebuggerAgent::removeDOMBreakpoint):
1725         (WebCore::InspectorBrowserDebuggerAgent::willInsertDOMNode):
1726         (WebCore::InspectorBrowserDebuggerAgent::willRemoveDOMNode):
1727         (WebCore::InspectorBrowserDebuggerAgent::willModifyDOMAttr):
1728         (WebCore::InspectorBrowserDebuggerAgent::descriptionForDOMEvent):
1729         (WebCore::InspectorBrowserDebuggerAgent::hasBreakpoint):
1730         (WebCore::InspectorBrowserDebuggerAgent::updateSubtreeBreakpoints):
1731         (WebCore::InspectorBrowserDebuggerAgent::pauseOnNativeEventIfNeeded):
1732         (WebCore::InspectorBrowserDebuggerAgent::setXHRBreakpoint):
1733         (WebCore::InspectorBrowserDebuggerAgent::removeXHRBreakpoint):
1734         (WebCore::InspectorBrowserDebuggerAgent::willSendXMLHttpRequest):
1735         (WebCore::InspectorBrowserDebuggerAgent::clearForPageNavigation):
1736         * inspector/InspectorBrowserDebuggerAgent.h: Added.
1737         (WebCore::InspectorBrowserDebuggerAgent::create):
1738         * inspector/InspectorController.cpp:
1739         (WebCore::InspectorController::InspectorController):
1740         (WebCore::InspectorController::inspectedPageDestroyed):
1741         (WebCore::InspectorController::didCommitLoad):
1742         (WebCore::InspectorController::enableDebuggerFromFrontend):
1743         (WebCore::InspectorController::disableDebugger):
1744         (WebCore::InspectorController::restoreStickyBreakpoints):
1745         (WebCore::InspectorController::restoreStickyBreakpoint):
1746         * inspector/InspectorController.h:
1747         * inspector/InspectorDOMAgent.cpp:
1748         (WebCore::InspectorDOMAgent::discardBindings):
1749         (WebCore::InspectorDOMAgent::didInsertDOMNode):
1750         (WebCore::InspectorDOMAgent::didRemoveDOMNode):
1751         * inspector/InspectorDOMAgent.h:
1752         * inspector/InspectorInstrumentation.cpp:
1753         (WebCore::InspectorInstrumentation::willInsertDOMNodeImpl):
1754         (WebCore::InspectorInstrumentation::didInsertDOMNodeImpl):
1755         (WebCore::InspectorInstrumentation::willRemoveDOMNodeImpl):
1756         (WebCore::InspectorInstrumentation::didRemoveDOMNodeImpl):
1757         (WebCore::InspectorInstrumentation::willModifyDOMAttrImpl):
1758         (WebCore::InspectorInstrumentation::willSendXMLHttpRequestImpl):
1759         (WebCore::InspectorInstrumentation::pauseOnNativeEventIfNeeded):
1760
1761 2011-01-13  Kent Tamura  <tkent@chromium.org>
1762
1763         Reviewed by Dimitri Glazkov.
1764
1765         Implement form validation message UI
1766         https://bugs.webkit.org/show_bug.cgi?id=48980
1767
1768         * Add four internal pseudo selectors:
1769           - -webkit-validation-bubble
1770           - -webkit-validation-bubble-message
1771           - -webkit-validation-bubble-top-outer-arrow
1772           - -webkit-validation-bubble-top-inner-arrow
1773
1774         * Implement ValidationMessage functions
1775           Show the message for <the number of characters> / 20.0 seconds.
1776
1777         No new tests because the feature is disabled by default for now and the
1778         new behavior is strongly timing-dependent.
1779
1780         * css/CSSStyleSelector.cpp:
1781         (WebCore::CSSStyleSelector::canShareStyleWithElement):
1782           Do not share a style with elements with different shadowPseudoId().
1783         * css/html.css: Define appearance for the internal selectors.
1784         (::-webkit-validation-bubble):
1785         (::-webkit-validation-bubble-message):
1786         (::-webkit-validation-bubble-top-outer-arrow):
1787         (::-webkit-validation-bubble-top-inner-arrow):
1788         * dom/Node.cpp:
1789         (WebCore::Node::createRendererIfNeeded):
1790           Allow to add shadow renderers even if canHaveChildren() returns false.
1791         * html/HTMLFormControlElement.cpp:
1792         (WebCore::HTMLFormControlElement::detach):
1793           Remove m_validationMessage immediately because we can't use
1794           hideVisibleValidationMessage(), which calls a ValidationMessage function later.
1795         (WebCore::HTMLFormControlElement::updateVisibleValidationMessage):
1796           - Don't create ValidationMessage if the message is empty.
1797           - Remove the check for message equality.
1798         (WebCore::HTMLFormControlElement::hideVisibleValidationMessage):
1799           Don't remove m_validationMessage immediately. We shouldn't make the
1800           element needsLayout() state in this context.
1801         * html/ValidationMessage.cpp:
1802         (WebCore::ValidationMessage::~ValidationMessage):
1803           hideMessage() -> deleteBubbleTree() renaming.
1804         (WebCore::ValidationMessage::setMessage): Implemented.
1805         (WebCore::ValidationMessage::setMessageDOMAndStartTimer):
1806           Added. This updates the validation message and starts the timer to hide it.
1807         (WebCore::ElementWithPseudoId):
1808           Added to help implementations of styled shadow nodes.
1809         (WebCore::ValidationMessage::buildBubbleTree): Added.
1810         (WebCore::ValidationMessage::requestToHideMessage): Added.
1811         (WebCore::ValidationMessage::deleteBubbleTree):
1812           Renamed from hideMessage(), and implemented.
1813         * html/ValidationMessage.h: Add declarations.
1814
1815 2011-01-13  Dan Bernstein  <mitz@apple.com>
1816
1817         Reviewed by Alexey Proskuryakov.
1818
1819         <rdar://problem/8827065> REGRESSION (r71884): Cross-origin XHR fails if willSendRequest changes the URL
1820         https://bugs.webkit.org/show_bug.cgi?id=52419
1821
1822         Test: http/tests/loading/cross-origin-XHR-willLoadRequest.html
1823
1824         * loader/ResourceLoader.cpp:
1825         (WebCore::ResourceLoader::init): Complete r74453 by ensuring that m_request is only set after
1826         willSendRequest(). Otherwise, willSendRequest() ends up calling into
1827         ThreadableDocumentRequest::willSendRequest(), which cancels the request.
1828
1829 2011-01-13  Dan Bernstein  <mitz@apple.com>
1830
1831         Reviewed by Mark Rowe.
1832
1833         Don’t try to compile InjectedScriptSource.js into WebCore.
1834
1835         * WebCore.xcodeproj/project.pbxproj:
1836
1837 2011-01-13  Mike Thole  <mthole@apple.com>
1838
1839         Reviewed by Darin Adler and Brady Eidson.
1840
1841         The pageScaleFactor() should be saved/restored along with the scroll position
1842         https://bugs.webkit.org/show_bug.cgi?id=52406
1843         <rdar://problem/8714412>
1844
1845         * history/HistoryItem.cpp:
1846         (WebCore::HistoryItem::HistoryItem): Initialize m_pageScaleFactor.
1847         (WebCore::HistoryItem::pageScaleFactor): Added getter.
1848         (WebCore::HistoryItem::setPageScaleFactor): Added setter.
1849         (WebCore::HistoryItem::encodeBackForwardTreeNode): Encode m_pageScaleFactor.
1850         (WebCore::HistoryItem::decodeBackForwardTree): Decode m_pageScaleFactor.
1851         * history/HistoryItem.h:
1852         * loader/HistoryController.cpp:
1853         (WebCore::HistoryController::saveScrollPositionAndViewStateToItem): Save the page scale factor...
1854         (WebCore::HistoryController::restoreScrollPositionAndViewState): ...and restore it here.
1855
1856 2011-01-13  Evan Martin  <evan@chromium.org>
1857
1858         Reviewed by Tony Chang.
1859
1860         [chromium] drop backwards iteration in Linux complex text code
1861         https://bugs.webkit.org/show_bug.cgi?id=52403
1862
1863         ComplexTextController previously supported iterating through the text in
1864         both directions, but this resulted in duplicate code for each path.
1865         Instead, by being more careful about flipping signs where appropriate,
1866         we can refactor the code into one code path.
1867
1868         No tests, just a refactoring; should be covered by existing tests.
1869
1870         * platform/graphics/chromium/ComplexTextControllerLinux.cpp:
1871         (WebCore::ComplexTextController::ComplexTextController):
1872         (WebCore::ComplexTextController::reset):
1873         (WebCore::ComplexTextController::nextScriptRun):
1874         * platform/graphics/chromium/ComplexTextControllerLinux.h:
1875         * platform/graphics/chromium/FontLinux.cpp:
1876         (WebCore::glyphIndexForXPositionInScriptRun):
1877         (WebCore::Font::selectionRectForComplexText):
1878
1879 2011-01-13  Dimitri Glazkov  <dglazkov@chromium.org>
1880
1881         Reviewed by Darin Adler.
1882
1883         Flip input[type=range] to use the new shadow DOM model.
1884         https://bugs.webkit.org/show_bug.cgi?id=52317
1885
1886         This is a straight-up flip, minimal change to the logic, which will be
1887         refactored in a follow-up patch.
1888
1889         Covered by existing tests.
1890
1891         * css/CSSStyleSelector.cpp:
1892         (WebCore::CSSStyleSelector::initForStyleResolve): Changed to use either
1893             host or parent node to find parent.
1894         * html/HTMLInputElement.cpp:
1895         (WebCore::HTMLInputElement::updateType): Added logic for destroying/creating
1896             shadow DOM subtree.
1897         * html/InputType.cpp:
1898         (WebCore::InputType::createShadowSubtree): Added empty decl.
1899         (WebCore::InputType::destroyShadowSubtree): Added a method to destroy
1900             shadow subtree.
1901         * html/InputType.h: Added defs.
1902         * html/RangeInputType.cpp:
1903         (WebCore::RangeInputType::createShadowSubtree): Added a virtual method to create
1904             slider thumb.
1905         * html/RangeInputType.h: Adde def.
1906         * html/shadow/SliderThumbElement.cpp: Added temporary RenderSliderThumb class
1907             to handle cascading appearance.
1908         (WebCore::RenderSliderThumb::RenderSliderThumb): Added.
1909         (WebCore::RenderSliderThumb::layout): Moved here the logic from
1910             RenderSlider::createThumbStyle.
1911         (WebCore::SliderThumbElement::createRenderer): Added virtual method to
1912             create RenderSliderThumb instance.
1913         (WebCore::SliderThumbElement::defaultEventHandler): Changed to use HTMLDivElement
1914             as base class.
1915         (WebCore::SliderThumbElement::detach): Ditto.
1916         * html/shadow/SliderThumbElement.h:
1917         (WebCore::SliderThumbElement::SliderThumbElement): Ditto.
1918         (WebCore::SliderThumbElement::create): Ditto.
1919         (WebCore::toSliderThumbElement): Added a casting helper.
1920         * rendering/MediaControlElements.cpp:
1921         (WebCore::MediaControlInputElement::attach): Added handling of shadow DOM,
1922             since the whole method is hand-rolled.
1923         (WebCore::MediaControlInputElement::updateStyle): Ditto.
1924         * rendering/RenderSlider.cpp:
1925         (WebCore::RenderSlider::~RenderSlider): Removed unneeded code.
1926         (WebCore::RenderSlider::thumbRect): Changed to use sliderThumbElement helper.
1927         (WebCore::RenderSlider::layout): Ditto.
1928         (WebCore::RenderSlider::sliderThumbElement): Added a temporary helper to access
1929             SliderThumbElement.
1930         (WebCore::RenderSlider::mouseEventIsInThumb): Changed to use sliderThumbElement helper.
1931         (WebCore::RenderSlider::mouseEventOffsetToThumb): Ditto.
1932         (WebCore::RenderSlider::setValueForPosition): Ditto.
1933         (WebCore::RenderSlider::positionForOffset): Ditto.
1934         (WebCore::RenderSlider::currentPosition): Ditto.
1935         (WebCore::RenderSlider::trackSize): Ditto.
1936         (WebCore::RenderSlider::forwardEvent): Ditto.
1937         (WebCore::RenderSlider::inDragMode): Ditto.
1938         * rendering/RenderSlider.h: Added def.
1939
1940 2011-01-13  Adam Barth  <abarth@webkit.org>
1941
1942         Reviewed by Eric Seidel.
1943
1944         Rename RGBA32Buffer to ImageFrame
1945         https://bugs.webkit.org/show_bug.cgi?id=52363
1946
1947         RGBA32Buffer is a terrible misnomer.  ImageFrame is vastly
1948         more accurate.  More cleanup to come.
1949
1950         * WebCore.pro:
1951         * platform/graphics/ImageSource.cpp:
1952         (WebCore::ImageSource::createFrameAtIndex):
1953         (WebCore::ImageSource::frameDurationAtIndex):
1954         (WebCore::ImageSource::frameIsCompleteAtIndex):
1955         * platform/graphics/qt/ImageDecoderQt.cpp:
1956         (WebCore::ImageDecoderQt::frameBufferAtIndex):
1957         (WebCore::ImageDecoderQt::internalReadImage):
1958         (WebCore::ImageDecoderQt::internalHandleCurrentImage):
1959         * platform/graphics/qt/ImageDecoderQt.h:
1960         * platform/graphics/wince/ImageWinCE.cpp:
1961         (WebCore::ImageFrame::asNewNativeImage):
1962         * platform/image-decoders/ImageDecoder.cpp:
1963         (WebCore::ImageFrame::ImageFrame):
1964         (WebCore::ImageFrame::operator=):
1965         (WebCore::ImageFrame::clear):
1966         (WebCore::ImageFrame::zeroFill):
1967         (WebCore::ImageFrame::copyReferenceToBitmapData):
1968         (WebCore::ImageFrame::copyBitmapData):
1969         (WebCore::ImageFrame::setSize):
1970         (WebCore::ImageFrame::hasAlpha):
1971         (WebCore::ImageFrame::setHasAlpha):
1972         (WebCore::ImageFrame::setColorProfile):
1973         (WebCore::ImageFrame::setStatus):
1974         (WebCore::ImageFrame::width):
1975         (WebCore::ImageFrame::height):
1976         * platform/image-decoders/ImageDecoder.h:
1977         (WebCore::ImageFrame::ImageFrame):
1978         * platform/image-decoders/bmp/BMPImageDecoder.cpp:
1979         (WebCore::BMPImageDecoder::frameBufferAtIndex):
1980         (WebCore::BMPImageDecoder::decode):
1981         * platform/image-decoders/bmp/BMPImageDecoder.h:
1982         * platform/image-decoders/bmp/BMPImageReader.cpp:
1983         (WebCore::BMPImageReader::decodeBMP):
1984         * platform/image-decoders/bmp/BMPImageReader.h:
1985         (WebCore::BMPImageReader::setBuffer):
1986         * platform/image-decoders/cairo/ImageDecoderCairo.cpp:
1987         (WebCore::ImageFrame::asNewNativeImage):
1988         * platform/image-decoders/cg/ImageDecoderCG.cpp:
1989         (WebCore::getPtrAsPixelData):
1990         (WebCore::ImageFrame::copyReferenceToBitmapData):
1991         (WebCore::ImageFrame::copyBitmapData):
1992         (WebCore::ImageFrame::setSize):
1993         (WebCore::ImageFrame::asNewNativeImage):
1994         * platform/image-decoders/gif/GIFImageDecoder.cpp:
1995         (WebCore::GIFImageDecoder::frameBufferAtIndex):
1996         (WebCore::GIFImageDecoder::clearFrameBufferCache):
1997         (WebCore::GIFImageDecoder::haveDecodedRow):
1998         (WebCore::GIFImageDecoder::frameComplete):
1999         (WebCore::GIFImageDecoder::initFrameBuffer):
2000         * platform/image-decoders/gif/GIFImageDecoder.h:
2001         * platform/image-decoders/gif/GIFImageReader.cpp:
2002         (GIFImageReader::read):
2003         * platform/image-decoders/gif/GIFImageReader.h:
2004         (GIFFrameReader::GIFFrameReader):
2005         * platform/image-decoders/haiku/ImageDecoderHaiku.cpp:
2006         (WebCore::ImageFrame::asNewNativeImage):
2007         * platform/image-decoders/ico/ICOImageDecoder.cpp:
2008         (WebCore::ICOImageDecoder::frameBufferAtIndex):
2009         (WebCore::ICOImageDecoder::decode):
2010         * platform/image-decoders/ico/ICOImageDecoder.h:
2011         * platform/image-decoders/jpeg/JPEGImageDecoder.cpp:
2012         (WebCore::JPEGImageDecoder::frameBufferAtIndex):
2013         (WebCore::JPEGImageDecoder::outputScanlines):
2014         (WebCore::JPEGImageDecoder::jpegComplete):
2015         (WebCore::JPEGImageDecoder::decode):
2016         * platform/image-decoders/jpeg/JPEGImageDecoder.h:
2017         * platform/image-decoders/openvg/ImageDecoderOpenVG.cpp:
2018         (WebCore::ImageFrame::asNewNativeImage):
2019         * platform/image-decoders/png/PNGImageDecoder.cpp:
2020         (WebCore::PNGImageDecoder::frameBufferAtIndex):
2021         (WebCore::PNGImageDecoder::rowAvailable):
2022         (WebCore::PNGImageDecoder::pngComplete):
2023         * platform/image-decoders/png/PNGImageDecoder.h:
2024         (WebCore::PNGImageDecoder::isComplete):
2025         * platform/image-decoders/qt/ImageFrameQt.cpp: Copied from Source/WebCore/platform/image-decoders/qt/RGBA32BufferQt.cpp.
2026         (WebCore::ImageFrame::ImageFrame):
2027         (WebCore::ImageFrame::operator=):
2028         (WebCore::ImageFrame::clear):
2029         (WebCore::ImageFrame::zeroFill):
2030         (WebCore::ImageFrame::copyBitmapData):
2031         (WebCore::ImageFrame::setSize):
2032         (WebCore::ImageFrame::asNewNativeImage):
2033         (WebCore::ImageFrame::hasAlpha):
2034         (WebCore::ImageFrame::setHasAlpha):
2035         (WebCore::ImageFrame::setColorProfile):
2036         (WebCore::ImageFrame::setStatus):
2037         (WebCore::ImageFrame::setPixmap):
2038         (WebCore::ImageFrame::width):
2039         (WebCore::ImageFrame::height):
2040         * platform/image-decoders/qt/RGBA32BufferQt.cpp: Removed.
2041         * platform/image-decoders/skia/ImageDecoderSkia.cpp:
2042         (WebCore::ImageFrame::ImageFrame):
2043         (WebCore::ImageFrame::operator=):
2044         (WebCore::ImageFrame::clear):
2045         (WebCore::ImageFrame::zeroFill):
2046         (WebCore::ImageFrame::copyBitmapData):
2047         (WebCore::ImageFrame::setSize):
2048         (WebCore::ImageFrame::asNewNativeImage):
2049         (WebCore::ImageFrame::hasAlpha):
2050         (WebCore::ImageFrame::setHasAlpha):
2051         (WebCore::ImageFrame::setColorProfile):
2052         (WebCore::ImageFrame::setStatus):
2053         (WebCore::ImageFrame::width):
2054         (WebCore::ImageFrame::height):
2055         * platform/image-decoders/webp/WEBPImageDecoder.cpp:
2056         (WebCore::WEBPImageDecoder::frameBufferAtIndex):
2057         (WebCore::WEBPImageDecoder::decode):
2058         * platform/image-decoders/webp/WEBPImageDecoder.h:
2059         * platform/image-decoders/wx/ImageDecoderWx.cpp:
2060         (WebCore::ImageFrame::asNewNativeImage):
2061
2062 2011-01-13  Dimitri Glazkov  <dglazkov@chromium.org>
2063
2064         Reviewed by Darin Adler.
2065
2066         Transferring nodes between documents should be aware of the shadow DOM.
2067         https://bugs.webkit.org/show_bug.cgi?id=52399
2068
2069         No visible change in behavior at the moment.
2070
2071         Once https://bugs.webkit.org/show_bug.cgi?id=52317 lands, the following
2072         tests should no longer crash:
2073         * fast/css/pseudo-in-range-invalid-value.html
2074         * fast/css/pseudo-in-range.html
2075         * fast/forms/form-collection-elements.html
2076         * fast/forms/range-keyoperation.html
2077
2078         * dom/Document.cpp:
2079         (WebCore::Document::adoptNode): Changed to use Node::setDocumentRecursively.
2080         * dom/Node.cpp:
2081         (WebCore::Node::setDocumentRecursively): Added new method, taking existing
2082             logic and adding shadow DOM traversal.
2083         (WebCore::Node::traverseNextNode): Style fix.
2084         (WebCore::Node::traverseNextSibling): Ditto.
2085         (WebCore::Node::traversePreviousNode): Ditto.
2086         (WebCore::Node::traversePreviousNodePostOrder): Ditto.
2087         (WebCore::Node::checkReplaceChild): Changed to use setDocumentRecursively.
2088         (WebCore::Node::checkAddChild): Ditto.
2089         * dom/Node.h: Added def.
2090
2091 2011-01-12  Enrica Casucci  <enrica@apple.com>
2092
2093         Reviewed by Darin Adler.
2094
2095         WebKit2: Add support for drag and drop
2096         https://bugs.webkit.org/show_bug.cgi?id=52343
2097         <rdar://problem/7660558>
2098                
2099         This patch contains the changes required to support dropping content
2100         in WebKit on the Mac. The DragData class has been extended to provide
2101         additional context from the application (keyboard state, modal windows, etc.)
2102         as well as information of the drag pasteboard being used.
2103         The support for WebKit as drag source will be added with a separate patch.
2104
2105         * WebCore.exp.in:
2106         * page/DragController.cpp:
2107         (WebCore::DragController::dragIsMove): Added DragData parameter.
2108         (WebCore::DragController::tryDocumentDrag): Modified call to dragIsMove.
2109         (WebCore::DragController::concludeEditDrag): Same as above.
2110         * page/DragController.h: Added parameter to isCopyKeyDown.
2111         * page/mac/DragControllerMac.mm:
2112         The following methods have been modified to use the information stored
2113         in the DragData class.
2114         (WebCore::DragController::isCopyKeyDown):
2115         (WebCore::DragController::dragOperation):
2116         * platform/DragData.h:
2117         (WebCore::DragData::flags):
2118         * platform/DragData.cpp: Added default flags parameter to the constructor.
2119         * platform/mac/DragDataMac.mm:
2120         (WebCore::DragData::DragData): Added constructor that receives the name of the pasteboard to use.
2121         (WebCore::DragData::canSmartReplace):
2122         (WebCore::DragData::containsColor):
2123         (WebCore::DragData::containsFiles):
2124         (WebCore::DragData::asFilenames):
2125         (WebCore::DragData::containsPlainText):
2126         (WebCore::DragData::asPlainText):
2127         (WebCore::DragData::containsCompatibleContent):
2128         (WebCore::DragData::asURL):
2129         (WebCore::DragData::asFragment):
2130         All the following files have been modified to add the DragData
2131         parameter to isCopyKeyDown. I plan to improve this in the future
2132         and make isCopyKeyDown not platform specific.
2133         * page/android/DragControllerAndroid.cpp:
2134         (WebCore::DragController::isCopyKeyDown):
2135         * page/brew/DragControllerBrew.cpp:
2136         (WebCore::DragController::isCopyKeyDown):
2137         * page/chromium/DragControllerChromium.cpp:
2138         (WebCore::DragController::isCopyKeyDown):
2139         * page/efl/DragControllerEfl.cpp:
2140         (WebCore::DragController::isCopyKeyDown):
2141         * page/gtk/DragControllerGtk.cpp:
2142         (WebCore::DragController::isCopyKeyDown):
2143         * page/haiku/DragControllerHaiku.cpp:
2144         (WebCore::DragController::isCopyKeyDown):
2145         * page/mac/DragControllerMac.mm:
2146         (WebCore::DragController::isCopyKeyDown):
2147         (WebCore::DragController::dragOperation):
2148         * page/qt/DragControllerQt.cpp:
2149         (WebCore::DragController::isCopyKeyDown):
2150         * page/win/DragControllerWin.cpp:
2151         (WebCore::DragController::isCopyKeyDown):
2152         * page/wx/DragControllerWx.cpp:
2153         (WebCore::DragController::isCopyKeyDown):
2154
2155 2011-01-13  David Kilzer  <ddkilzer@apple.com>
2156
2157         Add missing MathMLElementFactory.h and MathMLNames.h to Xcode project
2158
2159         Not reviewed.
2160
2161         * WebCore.xcodeproj/project.pbxproj: Add missing headers.  Note
2162         that the corresponding source files were originally added to the
2163         project in r48559.
2164
2165 2011-01-12  Zhenyao Mo  <zmo@google.com>
2166
2167         Reviewed by Kenneth Russell.
2168
2169         Use GC3D types in WebGLRenderingContext and related WebGL classes
2170         https://bugs.webkit.org/show_bug.cgi?id=51908
2171
2172         * html/canvas/WebGLActiveInfo.h:
2173         (WebCore::WebGLActiveInfo::create):
2174         (WebCore::WebGLActiveInfo::type):
2175         (WebCore::WebGLActiveInfo::size):
2176         (WebCore::WebGLActiveInfo::WebGLActiveInfo):
2177         * html/canvas/WebGLBuffer.cpp:
2178         (WebCore::WebGLBuffer::associateBufferDataImpl):
2179         (WebCore::WebGLBuffer::associateBufferData):
2180         (WebCore::WebGLBuffer::associateBufferSubDataImpl):
2181         (WebCore::WebGLBuffer::associateBufferSubData):
2182         (WebCore::WebGLBuffer::byteLength):
2183         (WebCore::WebGLBuffer::getCachedMaxIndex):
2184         (WebCore::WebGLBuffer::setCachedMaxIndex):
2185         (WebCore::WebGLBuffer::setTarget):
2186         * html/canvas/WebGLBuffer.h:
2187         (WebCore::WebGLBuffer::getTarget):
2188         * html/canvas/WebGLFramebuffer.cpp:
2189         (WebCore::WebGLFramebuffer::setAttachment):
2190         (WebCore::WebGLFramebuffer::getAttachment):
2191         (WebCore::WebGLFramebuffer::getWidth):
2192         (WebCore::WebGLFramebuffer::getHeight):
2193         (WebCore::WebGLFramebuffer::getColorBufferFormat):
2194         (WebCore::WebGLFramebuffer::initializeRenderbuffers):
2195         * html/canvas/WebGLFramebuffer.h:
2196         * html/canvas/WebGLProgram.cpp:
2197         (WebCore::WebGLProgram::cacheActiveAttribLocations):
2198         (WebCore::WebGLProgram::numActiveAttribLocations):
2199         (WebCore::WebGLProgram::getActiveAttribLocation):
2200         (WebCore::WebGLProgram::isUsingVertexAttrib0):
2201         * html/canvas/WebGLProgram.h:
2202         (WebCore::WebGLProgram::getLinkCount):
2203         * html/canvas/WebGLRenderbuffer.h:
2204         (WebCore::WebGLRenderbuffer::setInternalFormat):
2205         (WebCore::WebGLRenderbuffer::getInternalFormat):
2206         (WebCore::WebGLRenderbuffer::setSize):
2207         (WebCore::WebGLRenderbuffer::getWidth):
2208         (WebCore::WebGLRenderbuffer::getHeight):
2209         * html/canvas/WebGLRenderingContext.cpp:
2210         (WebCore::WebGLRenderingContext::initializeNewContext):
2211         (WebCore::WebGLRenderingContext::sizeInBytes):
2212         (WebCore::WebGLRenderingContext::activeTexture):
2213         (WebCore::WebGLRenderingContext::bindAttribLocation):
2214         (WebCore::WebGLRenderingContext::bindBuffer):
2215         (WebCore::WebGLRenderingContext::bindFramebuffer):
2216         (WebCore::WebGLRenderingContext::bindRenderbuffer):
2217         (WebCore::WebGLRenderingContext::bindTexture):
2218         (WebCore::WebGLRenderingContext::blendColor):
2219         (WebCore::WebGLRenderingContext::blendEquation):
2220         (WebCore::WebGLRenderingContext::blendEquationSeparate):
2221         (WebCore::WebGLRenderingContext::blendFunc):
2222         (WebCore::WebGLRenderingContext::blendFuncSeparate):
2223         (WebCore::WebGLRenderingContext::bufferData):
2224         (WebCore::WebGLRenderingContext::bufferSubData):
2225         (WebCore::WebGLRenderingContext::checkFramebufferStatus):
2226         (WebCore::WebGLRenderingContext::clear):
2227         (WebCore::WebGLRenderingContext::clearColor):
2228         (WebCore::WebGLRenderingContext::clearDepth):
2229         (WebCore::WebGLRenderingContext::clearStencil):
2230         (WebCore::WebGLRenderingContext::colorMask):
2231         (WebCore::WebGLRenderingContext::copyTexImage2D):
2232         (WebCore::WebGLRenderingContext::copyTexSubImage2D):
2233         (WebCore::WebGLRenderingContext::createShader):
2234         (WebCore::WebGLRenderingContext::cullFace):
2235         (WebCore::WebGLRenderingContext::deleteBuffer):
2236         (WebCore::WebGLRenderingContext::depthFunc):
2237         (WebCore::WebGLRenderingContext::depthMask):
2238         (WebCore::WebGLRenderingContext::depthRange):
2239         (WebCore::WebGLRenderingContext::disable):
2240         (WebCore::WebGLRenderingContext::disableVertexAttribArray):
2241         (WebCore::WebGLRenderingContext::validateElementArraySize):
2242         (WebCore::WebGLRenderingContext::validateIndexArrayConservative):
2243         (WebCore::WebGLRenderingContext::validateIndexArrayPrecise):
2244         (WebCore::WebGLRenderingContext::validateRenderingState):
2245         (WebCore::WebGLRenderingContext::drawArrays):
2246         (WebCore::WebGLRenderingContext::drawElements):
2247         (WebCore::WebGLRenderingContext::enable):
2248         (WebCore::WebGLRenderingContext::enableVertexAttribArray):
2249         (WebCore::WebGLRenderingContext::framebufferRenderbuffer):
2250         (WebCore::WebGLRenderingContext::framebufferTexture2D):
2251         (WebCore::WebGLRenderingContext::frontFace):
2252         (WebCore::WebGLRenderingContext::generateMipmap):
2253         (WebCore::WebGLRenderingContext::getActiveAttrib):
2254         (WebCore::WebGLRenderingContext::getActiveUniform):
2255         (WebCore::WebGLRenderingContext::getAttachedShaders):
2256         (WebCore::WebGLRenderingContext::getAttribLocation):
2257         (WebCore::WebGLRenderingContext::getBufferParameter):
2258         (WebCore::WebGLRenderingContext::getError):
2259         (WebCore::WebGLRenderingContext::getFramebufferAttachmentParameter):
2260         (WebCore::WebGLRenderingContext::getParameter):
2261         (WebCore::WebGLRenderingContext::getProgramParameter):
2262         (WebCore::WebGLRenderingContext::getRenderbufferParameter):
2263         (WebCore::WebGLRenderingContext::getShaderParameter):
2264         (WebCore::WebGLRenderingContext::getTexParameter):
2265         (WebCore::WebGLRenderingContext::getUniform):
2266         (WebCore::WebGLRenderingContext::getUniformLocation):
2267         (WebCore::WebGLRenderingContext::getVertexAttrib):
2268         (WebCore::WebGLRenderingContext::getVertexAttribOffset):
2269         (WebCore::WebGLRenderingContext::hint):
2270         (WebCore::WebGLRenderingContext::isBuffer):
2271         (WebCore::WebGLRenderingContext::isEnabled):
2272         (WebCore::WebGLRenderingContext::isFramebuffer):
2273         (WebCore::WebGLRenderingContext::isProgram):
2274         (WebCore::WebGLRenderingContext::isRenderbuffer):
2275         (WebCore::WebGLRenderingContext::isShader):
2276         (WebCore::WebGLRenderingContext::isTexture):
2277         (WebCore::WebGLRenderingContext::lineWidth):
2278         (WebCore::WebGLRenderingContext::linkProgram):
2279         (WebCore::WebGLRenderingContext::pixelStorei):
2280         (WebCore::WebGLRenderingContext::polygonOffset):
2281         (WebCore::WebGLRenderingContext::readPixels):
2282         (WebCore::WebGLRenderingContext::renderbufferStorage):
2283         (WebCore::WebGLRenderingContext::sampleCoverage):
2284         (WebCore::WebGLRenderingContext::scissor):
2285         (WebCore::WebGLRenderingContext::stencilFunc):
2286         (WebCore::WebGLRenderingContext::stencilFuncSeparate):
2287         (WebCore::WebGLRenderingContext::stencilMask):
2288         (WebCore::WebGLRenderingContext::stencilMaskSeparate):
2289         (WebCore::WebGLRenderingContext::stencilOp):
2290         (WebCore::WebGLRenderingContext::stencilOpSeparate):
2291         (WebCore::WebGLRenderingContext::texImage2DBase):
2292         (WebCore::WebGLRenderingContext::texImage2DImpl):
2293         (WebCore::WebGLRenderingContext::texImage2D):
2294         (WebCore::WebGLRenderingContext::texParameter):
2295         (WebCore::WebGLRenderingContext::texParameterf):
2296         (WebCore::WebGLRenderingContext::texParameteri):
2297         (WebCore::WebGLRenderingContext::texSubImage2DBase):
2298         (WebCore::WebGLRenderingContext::texSubImage2DImpl):
2299         (WebCore::WebGLRenderingContext::texSubImage2D):
2300         (WebCore::WebGLRenderingContext::uniform1f):
2301         (WebCore::WebGLRenderingContext::uniform1fv):
2302         (WebCore::WebGLRenderingContext::uniform1i):
2303         (WebCore::WebGLRenderingContext::uniform1iv):
2304         (WebCore::WebGLRenderingContext::uniform2f):
2305         (WebCore::WebGLRenderingContext::uniform2fv):
2306         (WebCore::WebGLRenderingContext::uniform2i):
2307         (WebCore::WebGLRenderingContext::uniform2iv):
2308         (WebCore::WebGLRenderingContext::uniform3f):
2309         (WebCore::WebGLRenderingContext::uniform3fv):
2310         (WebCore::WebGLRenderingContext::uniform3i):
2311         (WebCore::WebGLRenderingContext::uniform3iv):
2312         (WebCore::WebGLRenderingContext::uniform4f):
2313         (WebCore::WebGLRenderingContext::uniform4fv):
2314         (WebCore::WebGLRenderingContext::uniform4i):
2315         (WebCore::WebGLRenderingContext::uniform4iv):
2316         (WebCore::WebGLRenderingContext::uniformMatrix2fv):
2317         (WebCore::WebGLRenderingContext::uniformMatrix3fv):
2318         (WebCore::WebGLRenderingContext::uniformMatrix4fv):
2319         (WebCore::WebGLRenderingContext::vertexAttrib1f):
2320         (WebCore::WebGLRenderingContext::vertexAttrib1fv):
2321         (WebCore::WebGLRenderingContext::vertexAttrib2f):
2322         (WebCore::WebGLRenderingContext::vertexAttrib2fv):
2323         (WebCore::WebGLRenderingContext::vertexAttrib3f):
2324         (WebCore::WebGLRenderingContext::vertexAttrib3fv):
2325         (WebCore::WebGLRenderingContext::vertexAttrib4f):
2326         (WebCore::WebGLRenderingContext::vertexAttrib4fv):
2327         (WebCore::WebGLRenderingContext::vertexAttribPointer):
2328         (WebCore::WebGLRenderingContext::viewport):
2329         (WebCore::WebGLRenderingContext::getBooleanParameter):
2330         (WebCore::WebGLRenderingContext::getBooleanArrayParameter):
2331         (WebCore::WebGLRenderingContext::getFloatParameter):
2332         (WebCore::WebGLRenderingContext::getIntParameter):
2333         (WebCore::WebGLRenderingContext::getLongParameter):
2334         (WebCore::WebGLRenderingContext::getUnsignedLongParameter):
2335         (WebCore::WebGLRenderingContext::getWebGLFloatArrayParameter):
2336         (WebCore::WebGLRenderingContext::getWebGLIntArrayParameter):
2337         (WebCore::WebGLRenderingContext::isTexInternalFormatColorBufferCombinationValid):
2338         (WebCore::WebGLRenderingContext::getBoundFramebufferColorFormat):
2339         (WebCore::WebGLRenderingContext::validateTextureBinding):
2340         (WebCore::WebGLRenderingContext::validateSize):
2341         (WebCore::WebGLRenderingContext::validateTexFuncFormatAndType):
2342         (WebCore::WebGLRenderingContext::validateTexFuncLevel):
2343         (WebCore::WebGLRenderingContext::validateTexFuncParameters):
2344         (WebCore::WebGLRenderingContext::validateTexFuncData):
2345         (WebCore::WebGLRenderingContext::validateDrawMode):
2346         (WebCore::WebGLRenderingContext::validateStencilFunc):
2347         (WebCore::WebGLRenderingContext::validateFramebufferFuncParameters):
2348         (WebCore::WebGLRenderingContext::validateBlendEquation):
2349         (WebCore::WebGLRenderingContext::validateBlendFuncFactors):
2350         (WebCore::WebGLRenderingContext::validateCapability):
2351         (WebCore::WebGLRenderingContext::validateUniformParameters):
2352         (WebCore::WebGLRenderingContext::validateUniformMatrixParameters):
2353         (WebCore::WebGLRenderingContext::validateBufferDataParameters):
2354         (WebCore::WebGLRenderingContext::vertexAttribfImpl):
2355         (WebCore::WebGLRenderingContext::vertexAttribfvImpl):
2356         (WebCore::WebGLRenderingContext::simulateVertexAttrib0):
2357         * html/canvas/WebGLRenderingContext.h:
2358         (WebCore::WebGLRenderingContext::VertexAttribState::VertexAttribState):
2359         * html/canvas/WebGLShader.cpp:
2360         (WebCore::WebGLShader::create):
2361         (WebCore::WebGLShader::WebGLShader):
2362         * html/canvas/WebGLShader.h:
2363         (WebCore::WebGLShader::getType):
2364         * html/canvas/WebGLTexture.cpp:
2365         (WebCore::WebGLTexture::setTarget):
2366         (WebCore::WebGLTexture::setParameteri):
2367         (WebCore::WebGLTexture::setParameterf):
2368         (WebCore::WebGLTexture::setLevelInfo):
2369         (WebCore::WebGLTexture::generateMipmapLevelInfo):
2370         (WebCore::WebGLTexture::getInternalFormat):
2371         (WebCore::WebGLTexture::getType):
2372         (WebCore::WebGLTexture::getWidth):
2373         (WebCore::WebGLTexture::getHeight):
2374         (WebCore::WebGLTexture::isNPOT):
2375         (WebCore::WebGLTexture::mapTargetToIndex):
2376         (WebCore::WebGLTexture::computeLevelCount):
2377         (WebCore::WebGLTexture::update):
2378         (WebCore::WebGLTexture::getLevelInfo):
2379         * html/canvas/WebGLTexture.h:
2380         (WebCore::WebGLTexture::LevelInfo::setInfo):
2381         * html/canvas/WebGLUniformLocation.cpp:
2382         (WebCore::WebGLUniformLocation::create):
2383         (WebCore::WebGLUniformLocation::WebGLUniformLocation):
2384         (WebCore::WebGLUniformLocation::location):
2385         * html/canvas/WebGLUniformLocation.h:
2386         * platform/graphics/GraphicsContext3D.h: Map GC3Dboolean to bool instead of unsigned char.
2387
2388 2011-01-13  Jian Li  <jianli@chromium.org>
2389
2390         Reviewed by Darin Fisher.
2391
2392         Change createObjectURL and revokeObjectURL to put under webkitURL.
2393         https://bugs.webkit.org/show_bug.cgi?id=52257
2394
2395         Note that we add "webkit" vendor prefix to URL that is introduced in
2396         the latest File API spec.
2397
2398         For the time being, we implement webkitURL as a readonly attribute
2399         instead of a constructor so that we will not expose prototype property,
2400         as required by the spec.
2401
2402         * Android.derived.jscbindings.mk:
2403         * Android.derived.v8bindings.mk:
2404         * Android.mk:
2405         * CMakeLists.txt:
2406         * DerivedSources.cpp:
2407         * DerivedSources.make:
2408         * GNUmakefile.am:
2409         * WebCore.gypi:
2410         * WebCore.pri:
2411         * WebCore.pro:
2412         * WebCore.vcproj/WebCore.vcproj:
2413         * WebCore.xcodeproj/project.pbxproj:
2414         * html/DOMURL.cpp: Added.
2415         * html/DOMURL.h: Added.
2416         * html/DOMURL.idl: Added.
2417         * inspector/front-end/NetworkPanel.js:
2418         * inspector/front-end/utilities.js:
2419         * page/DOMWindow.cpp:
2420         (WebCore::DOMWindow::webkitURL):
2421         * page/DOMWindow.h:
2422         * page/DOMWindow.idl:
2423         * workers/WorkerContext.cpp:
2424         (WebCore::WorkerContext::webkitURL):
2425         * workers/WorkerContext.h:
2426         * workers/WorkerContext.idl:
2427
2428 2011-01-13  Emil Eklund  <eae@chromium.org>
2429
2430         Reviewed by Dimitri Glazkov.
2431
2432         Setting outerText should convert CR/LF to <br>
2433         https://bugs.webkit.org/show_bug.cgi?id=52268
2434
2435         Make set outerText support line breaks (sharing the text to fragment code
2436         with setInnerText) and handle empty text nodes the same way IE does.
2437
2438         Test: fast/dom/set-outer-text.html
2439
2440         * html/HTMLElement.cpp:
2441         (WebCore::HTMLElement::textToFragment): Shared between setInnerText and setOuterText
2442         (WebCore::HTMLElement::setInnerText): Split out text parsing code.
2443         (WebCore::mergeWithNextTextNode): Split out text node merging code.
2444         (WebCore::HTMLElement::setOuterText): Added support for line breaks.
2445         * html/HTMLElement.h:
2446
2447 2011-01-13  Zhenyao Mo  <zmo@google.com>
2448
2449         Reviewed by Kenneth Russell.
2450
2451         Relax the ESSL valid charset a little bit to include " ' `
2452         https://bugs.webkit.org/show_bug.cgi?id=52396
2453
2454         * html/canvas/WebGLRenderingContext.cpp:
2455
2456 >>>>>>> .r75740
2457 2011-01-13  Adrienne Walker  <enne@google.com>
2458
2459         Reviewed by Kenneth Russell.
2460
2461         [chromium] Attempt to fix crash in tiled compositor memcpy
2462         https://bugs.webkit.org/show_bug.cgi?id=52379
2463
2464         * platform/graphics/chromium/LayerTilerChromium.cpp:
2465         (WebCore::LayerTilerChromium::update):
2466
2467 2011-01-13  Dimitri Glazkov  <dglazkov@chromium.org>
2468
2469         Unreviewed, rolling out r75725.
2470         http://trac.webkit.org/changeset/75725
2471         https://bugs.webkit.org/show_bug.cgi?id=52317
2472
2473         Caused crashes in layout tests.
2474
2475         * css/CSSStyleSelector.cpp:
2476         (WebCore::CSSStyleSelector::initForStyleResolve):
2477         * html/HTMLInputElement.cpp:
2478         (WebCore::HTMLInputElement::updateType):
2479         * html/InputType.cpp:
2480         * html/InputType.h:
2481         * html/RangeInputType.cpp:
2482         * html/RangeInputType.h:
2483         * html/shadow/SliderThumbElement.cpp:
2484         (WebCore::SliderThumbElement::defaultEventHandler):
2485         (WebCore::SliderThumbElement::detach):
2486         * html/shadow/SliderThumbElement.h:
2487         (WebCore::SliderThumbElement::SliderThumbElement):
2488         (WebCore::SliderThumbElement::create):
2489         * rendering/MediaControlElements.cpp:
2490         (WebCore::MediaControlInputElement::attach):
2491         (WebCore::MediaControlInputElement::updateStyle):
2492         * rendering/RenderSlider.cpp:
2493         (WebCore::RenderSlider::~RenderSlider):
2494         (WebCore::RenderSlider::styleDidChange):
2495         (WebCore::RenderSlider::createThumbStyle):
2496         (WebCore::RenderSlider::thumbRect):
2497         (WebCore::RenderSlider::layout):
2498         (WebCore::RenderSlider::updateFromElement):
2499         (WebCore::RenderSlider::mouseEventIsInThumb):
2500         (WebCore::RenderSlider::mouseEventOffsetToThumb):
2501         (WebCore::RenderSlider::setValueForPosition):
2502         (WebCore::RenderSlider::positionForOffset):
2503         (WebCore::RenderSlider::currentPosition):
2504         (WebCore::RenderSlider::trackSize):
2505         (WebCore::RenderSlider::forwardEvent):
2506         (WebCore::RenderSlider::inDragMode):
2507         * rendering/RenderSlider.h:
2508
2509 2011-01-12  Dimitri Glazkov  <dglazkov@chromium.org>
2510
2511         Reviewed by Darin Adler.
2512
2513         Flip input[type=range] to use the new shadow DOM model.
2514         https://bugs.webkit.org/show_bug.cgi?id=52317
2515
2516         This is a straight-up flip, minimal change to the logic, which will be
2517         refactored in a follow-up patch.
2518
2519         Covered by existing tests.
2520
2521         * css/CSSStyleSelector.cpp:
2522         (WebCore::CSSStyleSelector::initForStyleResolve): Changed to use either
2523             host or parent node to find parent.
2524         * html/HTMLInputElement.cpp:
2525         (WebCore::HTMLInputElement::updateType): Added logic for destroying/creating
2526             shadow DOM subtree.
2527         * html/InputType.cpp:
2528         (WebCore::InputType::createShadowSubtree): Added empty decl.
2529         (WebCore::InputType::destroyShadowSubtree): Added a method to destroy
2530             shadow subtree.
2531         * html/InputType.h: Added defs.
2532         * html/RangeInputType.cpp:
2533         (WebCore::RangeInputType::createShadowSubtree): Added a virtual method to create
2534             slider thumb.
2535         * html/RangeInputType.h: Adde def.
2536         * html/shadow/SliderThumbElement.cpp: Added temporary RenderSliderThumb class
2537             to handle cascading appearance.
2538         (WebCore::RenderSliderThumb::RenderSliderThumb): Added.
2539         (WebCore::RenderSliderThumb::layout): Moved here the logic from
2540             RenderSlider::createThumbStyle.
2541         (WebCore::SliderThumbElement::createRenderer): Added virtual method to
2542             create RenderSliderThumb instance.
2543         (WebCore::SliderThumbElement::defaultEventHandler): Changed to use HTMLDivElement
2544             as base class.
2545         (WebCore::SliderThumbElement::detach): Ditto.
2546         * html/shadow/SliderThumbElement.h:
2547         (WebCore::SliderThumbElement::SliderThumbElement): Ditto.
2548         (WebCore::SliderThumbElement::create): Ditto.
2549         (WebCore::toSliderThumbElement): Added a casting helper.
2550         * rendering/MediaControlElements.cpp:
2551         (WebCore::MediaControlInputElement::attach): Added handling of shadow DOM,
2552             since the whole method is hand-rolled.
2553         (WebCore::MediaControlInputElement::updateStyle): Ditto.
2554         * rendering/RenderSlider.cpp:
2555         (WebCore::RenderSlider::~RenderSlider): Removed unneeded code.
2556         (WebCore::RenderSlider::thumbRect): Changed to use sliderThumbElement helper.
2557         (WebCore::RenderSlider::layout): Ditto.
2558         (WebCore::RenderSlider::sliderThumbElement): Added a temporary helper to access
2559             SliderThumbElement.
2560         (WebCore::RenderSlider::mouseEventIsInThumb): Changed to use sliderThumbElement helper.
2561         (WebCore::RenderSlider::mouseEventOffsetToThumb): Ditto.
2562         (WebCore::RenderSlider::setValueForPosition): Ditto.
2563         (WebCore::RenderSlider::positionForOffset): Ditto.
2564         (WebCore::RenderSlider::currentPosition): Ditto.
2565         (WebCore::RenderSlider::trackSize): Ditto.
2566         (WebCore::RenderSlider::forwardEvent): Ditto.
2567         (WebCore::RenderSlider::inDragMode): Ditto.
2568         * rendering/RenderSlider.h: Added def.
2569
2570 2011-01-13  Dan Bernstein  <mitz@apple.com>
2571
2572         Reviewed by Simon Fraser.
2573
2574         <rdar://problem/8098442> Crash in Widget::setFrameRect()
2575         https://bugs.webkit.org/show_bug.cgi?id=52375
2576
2577         Test: plugins/destroy-on-setwindow.html
2578
2579         * platform/mac/WidgetMac.mm:
2580         (WebCore::Widget::setFrameRect): Protect the Widget from being deleted as a result of calling
2581         out to the view.
2582         (WebCore::Widget::getOuterView): Coding style fix.
2583         (WebCore::Widget::paint): Protect the Widget from being deleted as a result of calling out to
2584         the views. This is precautionary, since this function does not applear to access member variables
2585         after such calls.
2586         * platform/wx/WidgetWx.cpp:
2587         (WebCore::Widget::setFrameRect): Protect the Widget from being deleted as a result of calling
2588         out to the platform widget.
2589
2590 2011-01-13  Csaba Osztrogonác  <ossy@webkit.org>
2591
2592         Unreviewed buildfix after r75715.
2593
2594         * WebCore.pri:
2595         * WebCore.pro:
2596
2597 2011-01-13  Pavel Feldman  <pfeldman@chromium.org>
2598
2599         Not reviewed: Qt build fix.
2600
2601         * WebCore.pri:
2602
2603 2011-01-12  Pavel Feldman  <pfeldman@chromium.org>
2604
2605         Reviewed by Yury Semikhatsky.
2606
2607         Web Inspector: embed injected script into the backend.
2608         https://bugs.webkit.org/show_bug.cgi?id=52312
2609
2610         InjectedScript belongs to the backend of the system and
2611         should be exposed by means of protocol, not InjectedScriptAccess.
2612         This patch makes injected script a part of the backend.
2613         It introduces single manual generation step (xxd -i) that should be
2614         automated by the build scripts for all the platforms.
2615
2616         * CMakeLists.txt:
2617         * DerivedSources.make:
2618         * GNUmakefile.am:
2619         * WebCore.gyp/WebCore.gyp:
2620         * WebCore.gypi:
2621         * WebCore.pro:
2622         * WebCore.vcproj/WebCore.vcproj:
2623         * WebCore.xcodeproj/project.pbxproj:
2624         * bindings/js/JSInjectedScriptHostCustom.cpp:
2625         (WebCore::InjectedScriptHost::injectedScriptFor):
2626         * bindings/v8/custom/V8InjectedScriptHostCustom.cpp:
2627         (WebCore::InjectedScriptHost::injectedScriptFor):
2628         * inspector/InjectedScriptHost.cpp:
2629         (WebCore::InjectedScriptHost::injectedScriptSource):
2630         * inspector/InjectedScriptHost.h:
2631         * inspector/Inspector.idl:
2632         * inspector/InspectorController.cpp:
2633         (WebCore::InspectorController::restoreInspectorStateFromCookie):
2634         * inspector/InspectorState.cpp:
2635         (WebCore::InspectorState::InspectorState):
2636         * inspector/InspectorState.h:
2637         * inspector/front-end/InjectedScript.js: Removed.
2638         * inspector/front-end/WebKit.qrc:
2639         * inspector/front-end/inspector.html:
2640         * inspector/front-end/inspector.js:
2641         (WebInspector.doLoadedDone.propertyNamesCallback):
2642         (WebInspector.doLoadedDone):
2643         * inspector/xxd.pl: Added.
2644
2645 2011-01-13  Mikhail Naganov  <mnaganov@chromium.org>
2646
2647         Reviewed by Timothy Hatcher.
2648
2649         Web Inspector: Cleanup after r75613 -- make all UI-facing strings
2650         to be passed directly to WebInspector.UIString
2651
2652         https://bugs.webkit.org/show_bug.cgi?id=52365
2653
2654         * English.lproj/localizedStrings.js:
2655         * inspector/front-end/ApplicationCacheItemsView.js:
2656         (WebInspector.ApplicationCacheItemsView.prototype._updateCallback):
2657         (WebInspector.ApplicationCacheItemsView.prototype._populateDataGrid):
2658         * inspector/front-end/AuditRules.js:
2659         (WebInspector.AuditRules.GzipRule.prototype.doRun):
2660         (WebInspector.AuditRules.CookieSizeRule.prototype.processCookies):
2661         (WebInspector.AuditRules.StaticCookielessRule.prototype.processCookies):
2662         * inspector/front-end/BreakpointsSidebarPane.js:
2663         (WebInspector.EventListenerBreakpointsSidebarPane):
2664         (WebInspector.EventListenerBreakpointsSidebarPane.prototype._createCategory):
2665         * inspector/front-end/CookieItemsView.js:
2666         (WebInspector.CookieItemsView.prototype._updateWithCookies):
2667         * inspector/front-end/ImageView.js:
2668         (WebInspector.ImageView.prototype._createContentIfNeeded.onImageLoad):
2669         (WebInspector.ImageView.prototype._createContentIfNeeded):
2670         * inspector/front-end/NetworkPanel.js:
2671         (WebInspector.NetworkTimeCalculator.prototype.formatValue):
2672         (WebInspector.NetworkTransferTimeCalculator.prototype.formatValue):
2673         (WebInspector.NetworkTransferDurationCalculator.prototype.formatValue):
2674         * inspector/front-end/ProfileDataGridTree.js:
2675         (WebInspector.ProfileDataGridNode.prototype.get data.formatMilliseconds):
2676         (WebInspector.ProfileDataGridNode.prototype.get data):
2677         * inspector/front-end/Resource.js:
2678         (WebInspector.Resource.Type.toUIString):
2679         (WebInspector.Resource.Type.toString):
2680         * inspector/front-end/TimelineOverviewPane.js:
2681         (WebInspector.TimelineOverviewCalculator.prototype.formatValue):
2682         * inspector/front-end/TimelinePanel.js:
2683         (WebInspector.TimelinePanel):
2684         (WebInspector.TimelineCalculator.prototype.formatValue):
2685         (WebInspector.TimelinePanel.FormattedRecord.prototype._generateAggregatedInfo):
2686         (WebInspector.TimelinePanel.FormattedRecord.prototype._generatePopupContent):
2687         (WebInspector.TimelinePanel.FormattedRecord.prototype._getRecordDetails):
2688         * inspector/front-end/utilities.js:
2689         ():
2690
2691 2011-01-13  Viatcheslav Ostapenko  <ostapenko.viatcheslav@nokia.com>
2692
2693         Reviewed by Simon Hausmann.
2694
2695         [Qt] Need a way to inform the application when a Netscape plugin is created.
2696         https://bugs.webkit.org/show_bug.cgi?id=30179
2697
2698         Added "c" style static method for the application to hook up for
2699         receiving notifications when a plugin is created.
2700
2701         * plugins/symbian/PluginViewSymbian.cpp:
2702         (qtwebkit_setPluginCreatedCallback):
2703         (WebCore::PluginView::platformStart):
2704
2705 2011-01-13  Yi Shen  <yi.4.shen@nokia.com>
2706
2707         Reviewed by Eric Seidel.
2708
2709         [Qt] Use a black background color for the video element on Qt Mobile
2710         https://bugs.webkit.org/show_bug.cgi?id=52252
2711
2712         Use black as the background color for the video element on Qt Mobile.
2713
2714         * css/themeQtMobile.css:
2715         (video):
2716
2717 2011-01-13  Yi Shen  <yi.4.shen@nokia.com>
2718
2719         Reviewed by Eric Seidel.
2720
2721         [Qt] Use a big central media play control button for video element 
2722         https://bugs.webkit.org/show_bug.cgi?id=52315
2723
2724         When ChromeClient::requiresFullscreenForVideoPlayback() returns true,
2725         all other control buttons for the video element are hidden, except 
2726         a big centralized play button.
2727
2728         No new tests because no client implements requiresFullscreenForVideoPlayback yet.
2729
2730         * WebCore.pri:
2731         * css/mediaControlsQtFullscreen.css: Added.
2732         (audio):
2733         (audio::-webkit-media-controls-panel):
2734         (video::-webkit-media-controls-panel):
2735         (video:-webkit-full-page-media::-webkit-media-controls-panel):
2736         (audio::-webkit-media-controls-mute-button):
2737         (video::-webkit-media-controls-mute-button):
2738         (audio::-webkit-media-controls-play-button):
2739         (video::-webkit-media-controls-play-button):
2740         (audio::-webkit-media-controls-timeline-container):
2741         (video::-webkit-media-controls-timeline-container):
2742         (audio::-webkit-media-controls-current-time-display):
2743         (video::-webkit-media-controls-current-time-display):
2744         (audio::-webkit-media-controls-time-remaining-display, video::-webkit-media-controls-time-remaining-display):
2745         (audio::-webkit-media-controls-timeline):
2746         (video::-webkit-media-controls-timeline):
2747         (audio::-webkit-media-controls-volume-slider-container):
2748         (video::-webkit-media-controls-volume-slider-container):
2749         (audio::-webkit-media-controls-volume-slider):
2750         (video::-webkit-media-controls-volume-slider):
2751         (audio::-webkit-media-controls-seek-back-button, video::-webkit-media-controls-seek-back-button):
2752         (audio::-webkit-media-controls-seek-forward-button, video::-webkit-media-controls-seek-forward-button):
2753         (audio::-webkit-media-controls-fullscreen-button):
2754         (video::-webkit-media-controls-fullscreen-button):
2755         (audio::-webkit-media-controls-rewind-button, video::-webkit-media-controls-rewind-button):
2756         (audio::-webkit-media-controls-return-to-realtime-button, video::-webkit-media-controls-return-to-realtime-button):
2757         (audio::-webkit-media-controls-toggle-closed-captions-button, video::-webkit-media-controls-toggle-closed-captions-button):
2758         * platform/qt/RenderThemeQt.cpp:
2759         (WebCore::RenderThemeQt::extraMediaControlsStyleSheet):
2760
2761 2011-01-13  Carlos Garcia Campos  <cgarcia@igalia.com>
2762
2763         Reviewed by Xan Lopez.
2764
2765         [GTK] Paint toggle buttons inconsistent when the object state is indeterminate
2766         https://bugs.webkit.org/show_bug.cgi?id=52361
2767
2768         Check whether the object state is indeterminate to set the flag
2769         GTK_STATE_FLAG_INCONSISTENT before rendering check and radio
2770         buttons.
2771
2772         * platform/gtk/RenderThemeGtk3.cpp:
2773         (WebCore::paintToggle):
2774
2775 2011-01-13  Yi Shen  <yi.4.shen@nokia.com>
2776
2777         Reviewed by Simon Hausmann.
2778
2779         [Qt] Extend the Platform Plugin to support full screen video handler
2780         https://bugs.webkit.org/show_bug.cgi?id=51249
2781
2782         Make MediaPlayerPrivateQt support a fullscreen player.
2783
2784         No new tests because LayoutTests/media/media-fullscreen-inline.html already exists.
2785         However, this test failed for Qt (QtMediaPlayer) due to durationchange event getting fired twice.
2786         So, still skip it for Qt.
2787
2788         * WebCore.pro:
2789         * platform/graphics/qt/MediaPlayerPrivateQt.cpp:
2790         (WebCore::MediaPlayerPrivateQt::MediaPlayerPrivateQt):
2791         (WebCore::MediaPlayerPrivateQt::removeVideoItem):
2792         (WebCore::MediaPlayerPrivateQt::restoreVideoItem):
2793         * platform/graphics/qt/MediaPlayerPrivateQt.h:
2794         (WebCore::MediaPlayerPrivateQt::supportsFullscreen):
2795         (WebCore::MediaPlayerPrivateQt::mediaPlayer):
2796
2797 2011-01-13  Dan Bernstein  <mitz@apple.com>
2798
2799         Reviewed by Dave Hyatt.
2800
2801         <rdar://problem/8858548> Disable inheritance of text emphasis marks to ruby text
2802         https://bugs.webkit.org/show_bug.cgi?id=52359
2803
2804         Test: fast/ruby/text-emphasis.html
2805
2806         * css/html.css:
2807         (rt):
2808
2809 2011-01-13  Csaba Osztrogonác  <ossy@webkit.org>
2810
2811         Rubber-stamped by David Levin.
2812
2813         Trivial fix after r75682.
2814
2815         * loader/FrameLoader.cpp: Remove accidentally committed debug code.
2816         (WebCore::FrameLoader::shouldClose):
2817
2818 2011-01-12  Ryosuke Niwa  <rniwa@webkit.org>
2819
2820         Reviewed by Eric Seidel.
2821
2822         REGRESSION(r69831): focus() in onkeypress discards input (affects chaseonline.chase.com)
2823         https://bugs.webkit.org/show_bug.cgi?id=52241
2824
2825         The bug was caused by RenderTextControl::selection's creating a Range with m_insertText
2826         which is a shadow DOM div as both start and end containers. Fixed the bug by traversing
2827         through the descendents of m_innerText and using the right start and end containers to
2828         create a Range.
2829
2830         Test: fast/forms/focus-change-on-keypress.html
2831
2832         * rendering/RenderTextControl.cpp:
2833         (WebCore::setContainerAndOffsetForRange): Added; a helper function.
2834         (WebCore::RenderTextControl::selection): See above.
2835
2836 2011-01-12  Kenichi Ishibashi  <bashi@google.com>
2837
2838         Reviewed by Kent Tamura.
2839
2840         M_formElementsWithFormAttribute not cleared when FormAssociatedElement is inserted with a null m_form and then removed.
2841         https://bugs.webkit.org/show_bug.cgi?id=51905
2842
2843         Calls unregisterFormElementWithFormAttribute() when 'form' attribute
2844         is removed.
2845
2846         Tests: fast/forms/form-associated-element-crash.html
2847                fast/forms/form-associated-element-crash2.html
2848
2849         * html/FormAssociatedElement.cpp:
2850         (WebCore::FormAssociatedElement::formAttributeChanged):
2851
2852 2011-01-12  Kenichi Ishibashi  <bashi@google.com>
2853
2854         Reviewed by Kent Tamura.
2855
2856         M_formElementsWithFormAttribute not cleared when Node is moved to another document.
2857         https://bugs.webkit.org/show_bug.cgi?id=51418
2858
2859         Calls unregisterFormElementWithFormAttribute() when form associated elements
2860         are moved to another document.
2861
2862         Test: fast/forms/change-form-element-document-crash.html
2863
2864         * html/FormAssociatedElement.cpp:
2865         (WebCore::FormAssociatedElement::willMoveToNewOwnerDocument): Added.
2866         * html/FormAssociatedElement.h: Added willMoveToNewOwnerDocument().
2867         * html/HTMLFormControlElement.cpp:
2868         (WebCore::HTMLFormControlElement::willMoveToNewOwnerDocument): Added.
2869         * html/HTMLFormControlElement.h: Added willMoveToNewOwnerDocument().
2870         * html/HTMLObjectElement.cpp:
2871         (WebCore::HTMLObjectElement::willMoveToNewOwnerDocument): Added.
2872         * html/HTMLObjectElement.h: Added willMoveToNewOwnerDocument().
2873         * html/HTMLPlugInImageElement.h: Moves willMoveToNewOwnerDocument() to protected.
2874
2875 2011-01-12  Ryosuke Niwa  <rniwa@webkit.org>
2876
2877         Reviewed by Eric Seidel.
2878
2879         Stop instantiating legacy editing positions in ApplyBlockElementCommand and ApplyStyleCommand
2880         https://bugs.webkit.org/show_bug.cgi?id=52250
2881
2882         Removed instantiation of legacy editing positions.
2883         Calls to Position::Position are replaced by calls to Position's convenience functions.
2884
2885         Also added firstPositionInOrBeforeNode and lastPositionInOrAfterNode,
2886         which are functions that return firstPositionInNode and lastPositionInNode respectively
2887         when the specified node can have children for editing purpose and return positionBeforeNode
2888         and positionAfterNode respectively otherwise. They can be used to guarantee that we never
2889         create a bogus position like [img, 0] or [br, 0].
2890
2891         No tests are added since this is a cleanup.
2892
2893         * editing/ApplyBlockElementCommand.cpp:
2894         (WebCore::ApplyBlockElementCommand::formatSelection):
2895         * editing/ApplyStyleCommand.cpp:
2896         (WebCore::ApplyStyleCommand::applyBlockStyle):
2897         (WebCore::ApplyStyleCommand::fixRangeAndApplyInlineStyle):
2898         (WebCore::ApplyStyleCommand::highestAncestorWithConflictingInlineStyle):
2899         (WebCore::ApplyStyleCommand::removeInlineStyle):
2900         (WebCore::ApplyStyleCommand::nodeFullySelected):
2901         (WebCore::ApplyStyleCommand::nodeFullyUnselected):
2902         (WebCore::ApplyStyleCommand::splitTextAtStart):
2903         (WebCore::ApplyStyleCommand::splitTextAtEnd):
2904         (WebCore::ApplyStyleCommand::splitTextElementAtStart):
2905         (WebCore::ApplyStyleCommand::splitTextElementAtEnd):
2906         (WebCore::ApplyStyleCommand::isValidCaretPositionInTextNode):
2907         (WebCore::ApplyStyleCommand::mergeStartWithPreviousIfIdentical):
2908         (WebCore::ApplyStyleCommand::mergeEndWithNextIfIdentical):
2909         (WebCore::ApplyStyleCommand::computedFontSize):
2910         (WebCore::ApplyStyleCommand::joinChildTextNodes):
2911         * editing/ApplyStyleCommand.h:
2912         * editing/htmlediting.h:
2913         (WebCore::firstPositionInOrBeforeNode): Added.
2914         (WebCore::lastPositionInOrAfterNode): Added.
2915
2916 2011-01-12  Sam Weinig  <sam@webkit.org>
2917
2918         Another build fix.
2919
2920         * platform/mac/WheelEventMac.mm:
2921         (WebCore::phaseForEvent):
2922
2923 2011-01-12  Sam Weinig  <sam@webkit.org>
2924
2925         Fix build.
2926
2927         * platform/mac/WheelEventMac.mm:
2928         (WebCore::phaseForEvent):
2929
2930 2011-01-12  Adam Barth  <abarth@webkit.org>
2931
2932         Reviewed by Darin Adler.
2933
2934         Remove premature optimization from SchemeRegistry
2935         https://bugs.webkit.org/show_bug.cgi?id=52283
2936
2937         As far as I can tell, this optimization isn't necessary.  I'm slightly
2938         unsure which benchmarks to run to demonstrate this numerically, but
2939         none of the benchmarks Chromium tracks were affected by adding a
2940         similar check for "display-isolated" schemes.
2941
2942         * platform/SchemeRegistry.cpp:
2943         (WebCore::SchemeRegistry::shouldTreatURLSchemeAsLocal):
2944
2945 2011-01-12  Beth Dakin  <bdakin@apple.com>
2946
2947         Reviewed by Anders Carlsson.
2948
2949         Add-on for https://bugs.webkit.org/show_bug.cgi?id=52309 
2950         Expose fixed layout through WebKit SPI
2951         -and corresponding-
2952         <rdar://problem/8844464>
2953
2954         And now with getters!
2955         * WebCore.exp.in:
2956
2957 2011-01-12  Sam Weinig  <sam@webkit.org>
2958
2959         Reviewed by Anders Carlsson.
2960
2961         https://bugs.webkit.org/show_bug.cgi?id=52337
2962         PlatformWheelEvent should know about the scroll phase on the Mac
2963
2964         Add a phase parameter on Mac PlatformWheelEvents.
2965
2966         * platform/PlatformWheelEvent.h:
2967         (WebCore::PlatformWheelEvent::PlatformWheelEvent):
2968         (WebCore::PlatformWheelEvent::phase):
2969         * platform/mac/WheelEventMac.mm:
2970         (WebCore::phaseForEvent):
2971         (WebCore::PlatformWheelEvent::PlatformWheelEvent):
2972
2973 2011-01-12  Chris Marrin  <cmarrin@apple.com>
2974
2975         Unreviewed.
2976
2977         A couple of lines of the patch for https://bugs.webkit.org/show_bug.cgi?id=52321
2978         were omitted. 
2979
2980         * platform/graphics/ca/GraphicsLayerCA.cpp:
2981         (WebCore::GraphicsLayerCA::commitLayerChangesBeforeSublayers):
2982
2983 2011-01-12  Chris Marrin  <cmarrin@apple.com>
2984
2985         Unreviewed.
2986
2987         Getting rid of an assert that was causing build failures that turns out not to be needed.
2988
2989         * rendering/RenderLayer.cpp:
2990         (WebCore::RenderLayer::paintsWithTransform):
2991
2992 2011-01-12  Chris Marrin  <cmarrin@apple.com>
2993
2994         Unreviewed.
2995
2996         Another fix for Gtk
2997
2998         * rendering/RenderLayer.cpp:
2999         (WebCore::RenderLayer::paintsWithTransform):
3000
3001 2011-01-12  Chris Marrin  <cmarrin@apple.com>
3002
3003         Unreviewed.
3004
3005         Fix for Gtk and Windows builds
3006
3007         * page/Frame.cpp:
3008         (WebCore::Frame::scalePage):
3009         * page/Frame.h:
3010         * platform/graphics/ca/win/PlatformCALayerWin.cpp:
3011         (PlatformCALayer::contentsScale):
3012         (PlatformCALayer::setContentsScale):
3013
3014 2011-01-12  Chris Marrin  <cmarrin@apple.com>
3015
3016         UNreviewed.
3017
3018         Fix for the Windows build
3019
3020         * platform/graphics/ca/win/PlatformCALayerWin.cpp:
3021         (contentsScale):
3022         (setContentsScale):
3023
3024 2011-01-12  Chris Marrin  <cmarrin@apple.com>
3025
3026         Unreviewed.
3027
3028         Another build fix
3029
3030         * platform/graphics/ca/GraphicsLayerCA.cpp:
3031         (WebCore::GraphicsLayerCA::clampedContentsScaleForScale):
3032         * platform/graphics/ca/mac/PlatformCALayerMac.mm:
3033         (PlatformCALayer::setContentsScale):
3034
3035 2011-01-11  Matthew Delaney  <mdelaney@apple.com>
3036
3037         Reviewed by Simon Fraser.
3038
3039         Max area bound needed in creation of IOSurface in ImageBufferCG.cpp
3040         https://bugs.webkit.org/show_bug.cgi?id=52172
3041
3042         Tests: fast/canvas/canvas-large-dimensions.html
3043
3044         * platform/graphics/cg/ImageBufferCG.cpp:
3045         (WebCore::ImageBuffer::ImageBuffer):
3046
3047 2011-01-12  Daniel Bates  <dbates@rim.com>
3048             And Benjamin C Meyer  <bmeyer@rim.com>
3049
3050         Build fix when building with Inspector disabled
3051         https://bugs.webkit.org/show_bug.cgi?id=52313
3052
3053         After changeset 75604 <http://trac.webkit.org/changeset/75604> it's not
3054         possible to build when the Inspector is disabled.
3055
3056         * inspector/InspectorInstrumentation.h:
3057         (WebCore::InspectorInstrumentation::updateApplicationCacheStatus): Fix build breakage when building
3058         with Inspector disabled and Offline Web Applications enabled by moving macro guard condition
3059         ENABLE(INSPECTOR) && ENABLE(OFFLINE_WEB_APPLICATIONS) into function body. This makes us also
3060         consistent with the form we use for InspectorInstrumentation::networkStateChanged() and other
3061         InspectorInstrumentation functions.
3062         * loader/appcache/ApplicationCacheGroup.cpp:
3063         (WebCore::ApplicationCacheGroup::didReceiveData): Fix build breakage when building with Inspector
3064         disabled by adding ENABLE(INSPECTOR) guard around code that references the instance variable
3065         ApplicationCacheGroup::m_currentResourceIdentifier as this variable only exists when building
3066         with the Inspector.
3067         (WebCore::ApplicationCacheGroup::didFinishLoading): Ditto.
3068         (WebCore::ApplicationCacheGroup::didFail): Ditto.
3069
3070 2011-01-12  Chris Marrin  <cmarrin@apple.com>
3071
3072         Unreviewed.
3073
3074         Fix a build issue from http://trac.webkit.org/changeset/75639.
3075
3076         * platform/graphics/GraphicsLayer.h:
3077         (WebCore::GraphicsLayer::contentsScale):
3078         (WebCore::GraphicsLayer::setContentsScale):
3079
3080 2011-01-12  Chris Marrin  <cmarrin@apple.com>
3081
3082         Reviewed by Kevin Decker.
3083
3084         Pages with accelerated layers lose subpixel-AA and become blurry when a scale factor is applied
3085         rdar://problem/8824974
3086
3087         This prevents the rootLayer (with the WebKit rendered content) from going becoming
3088         a tiled layer when zoomed, and when there is other layered content on the page.
3089         This speeds up zooming a lot and avoids some buggy behavior in CA with a very large
3090         number of layers.
3091         
3092         * rendering/RenderLayer.cpp:
3093         (WebCore::RenderLayer::paintsWithTransform):
3094         * rendering/RenderLayer.h:
3095         * rendering/RenderLayerBacking.cpp:
3096         (WebCore::RenderLayerBacking::paintingGoesToWindow):
3097
3098 2011-01-12  Chris Marrin  <cmarrin@apple.com>
3099
3100         Reviewed by Simon Fraser.
3101         
3102         Pages with accelerated layers lose subpixel-AA and become blurry when a scale factor is applied
3103         rdar://problem/8824974
3104
3105         When scaled, WebKit renders the page content at the scaled up size, so there are no
3106         scaling artifacts. But content drawn into a layer's backing store does not scale up.
3107         This is made worse by the fact that the root page contents become layered when there
3108         are other accelerated compositing layers present (video, plugins, etc.).
3109         
3110         Plumb scaling factor from Frame::scalePage() down into all layers with content. It
3111         eventually calls CALayer::setContentsScale which renders to a backing store whose dimensions
3112         are scaled, causing them to render larger and appear pixel perfect at the scaled
3113         page size.
3114  
3115          * page/Frame.cpp:
3116          (WebCore::Frame::updateContentsScale):
3117          (WebCore::Frame::scalePage):
3118          * page/Frame.h:
3119          * platform/graphics/GraphicsLayer.h:
3120          * platform/graphics/ca/GraphicsLayerCA.cpp:
3121          (WebCore::GraphicsLayerCA::setContentsScale):
3122          (WebCore::GraphicsLayerCA::clampedContentsScaleForScale):
3123          * platform/graphics/ca/GraphicsLayerCA.h:
3124          (WebCore::GraphicsLayerCA::contentsScale):
3125          * platform/graphics/ca/PlatformCALayer.h:
3126          * platform/graphics/ca/mac/PlatformCALayerMac.mm:
3127          (PlatformCALayer::contentsScale):
3128          (PlatformCALayer::setContentsScale):
3129          * rendering/RenderLayer.cpp:
3130          (WebCore::RenderLayer::updateContentsScale):
3131          * rendering/RenderLayer.h:
3132          * rendering/RenderLayerBacking.cpp:
3133          (WebCore::RenderLayerBacking::createGraphicsLayer):
3134          (WebCore::RenderLayerBacking::updateForegroundLayer):
3135          (WebCore::RenderLayerBacking::updateMaskLayer):
3136          (WebCore::RenderLayerBacking::updateContentsScale):
3137          * rendering/RenderLayerBacking.h:
3138          * rendering/RenderLayerCompositor.cpp:
3139          (WebCore::RenderLayerCompositor::updateContentsScale):
3140          * rendering/RenderLayerCompositor.h:
3141  
3142 2011-01-12  Stephen White  <senorblanco@chromium.org>
3143
3144         Reviewed by James Robinson.
3145
3146         Fix DrawingBuffer issues for depth/stencil, extensions, etc.
3147         https://bugs.webkit.org/show_bug.cgi?id=52310
3148
3149         1)  GL_TEXTURE is not a valid argument to glFramebufferTexture2D()
3150         (should be GL_TEXTURE_2D).
3151         2)  Support for the multisampling extension was being checked after
3152         the DrawingBuffer constructor was called, which calls multisample()
3153         to check for the extension.
3154         3)  If depth or stencil is set, the corresponding framebuffers must
3155         be created in the DrawingBuffer constructor.
3156         4)  GL_DEPTH_STENCIL is not a valid framebuffer internal type in
3157         GLES2.  Must use GL_OES_DEPTH24_STENCIL8, and check for the
3158         OES_packed_depth_stencil extension.
3159
3160         * platform/graphics/chromium/DrawingBufferChromium.cpp:
3161         (WebCore::DrawingBuffer::DrawingBuffer):
3162         Record the extension support in the constructor.  Create all the
3163         secondary drawing buffers (for multisampling, depth/stencil).
3164         * platform/graphics/gpu/DrawingBuffer.cpp:
3165         (WebCore::DrawingBuffer::create):
3166         Check for the extensions before calling the DrawingBuffer constructor.
3167         (WebCore::DrawingBuffer::createSecondaryBuffers):
3168         Refactor creation of the secondary buffers from DrawingBufferMac.mm to
3169         here.
3170         (WebCore::DrawingBuffer::reset):
3171         Use DEPTH24_STENCIL8 format, not DEPTH_STENCIL.  Use
3172         DEPTH_COMPONENT16, not DEPTH_COMPONENT.
3173         Use GL_TEXTURE_2D, not GL_TEXTURE (for glFramebufferTexture2D).
3174         * platform/graphics/gpu/DrawingBuffer.h:
3175         Refactor createSecondaryBuffers().  Add extension support arguments to
3176         constructor.  Add support for packed_depth_stencil extension.
3177         * platform/graphics/gpu/mac/DrawingBufferMac.mm:
3178         (WebCore::DrawingBuffer::DrawingBuffer):
3179         Record extension support in constructor.  Refactor out creation of
3180         secondary buffers.
3181
3182 2011-01-12  Beth Dakin  <bdakin@apple.com>
3183
3184         Reviewed by Anders Carlsson.
3185
3186         Fix for https://bugs.webkit.org/show_bug.cgi?id=52309 Expose
3187         fixed layout through WebKit SPI
3188         -and corresponding-
3189         <rdar://problem/8844464>
3190
3191         Export symbols for ScrollView::setUseFixedLayout() and 
3192         ScrollView::setFixedLayoutSize()
3193         * WebCore.exp.in:
3194
3195 2011-01-12  Robert Hogan  <robert@webkit.org>
3196
3197         Reviewed by Kenneth Rohde Christiansen.
3198
3199         [Qt] Search input field doesn't have cancel button
3200
3201         Add a cancel button to the search field and make it customizable
3202         by the client. For now, use the close dialog button associated
3203         with the application's style as the default.
3204
3205         Unskip a bunch of search field related tests that pass now:
3206
3207         fast/forms/search-cancel-button-mouseup.html
3208         fast/forms/search-rtl.html
3209         fast/forms/search-abs-pos-cancel-button.html
3210         fast/forms/search-styled.html
3211         fast/forms/search-transformed.html
3212         fast/forms/search-zoomed.html
3213         fast/forms/search-cancel-button-style-sharing.html
3214         fast/forms/search-display-none-cancel-button.html
3215         fast/forms/search-placeholder-value-changed.html
3216         fast/repaint/search-field-cancel.html
3217         fast/forms/search-cancel-button-events.html
3218
3219         https://bugs.webkit.org/show_bug.cgi?id=42887
3220
3221         * platform/graphics/qt/ImageQt.cpp:
3222         (loadResourcePixmap):
3223         * platform/qt/RenderThemeQt.cpp:
3224         (WebCore::RenderThemeQt::isControlStyled):
3225         (WebCore::RenderThemeQt::computeSizeBasedOnStyle):
3226         (WebCore::RenderThemeQt::paintSearchField):
3227         (WebCore::RenderThemeQt::adjustSearchFieldStyle):
3228         (WebCore::RenderThemeQt::adjustSearchFieldCancelButtonStyle):
3229         (WebCore::RenderThemeQt::convertToPaintingRect):
3230         (WebCore::RenderThemeQt::paintSearchFieldCancelButton):
3231         * platform/qt/RenderThemeQt.h:
3232
3233 2011-01-12  Andrey Kosyakov  <caseq@chromium.org>
3234
3235         Reviewed by Pavel Feldman.
3236
3237         Web Inspector: cookie table is multiplied after repeated switching to cookies tab in network item view
3238         Only create cookiesTable is it hasn't been done yet.
3239         https://bugs.webkit.org/show_bug.cgi?id=52303
3240
3241         * inspector/front-end/ResourceCookiesView.js:
3242         (WebInspector.ResourceCookiesView.prototype.show):
3243
3244 2011-01-12  Koan-Sin Tan  <koansin.tan@gmail.com>
3245
3246         Reviewed by Martin Robinson.
3247
3248         [Gtk] WebKitGtk+ doesn't build on Mac OS X 10.6
3249         https://bugs.webkit.org/show_bug.cgi?id=50867
3250
3251         * config.h: Don't disallow ctype for (OS(DARWIN) && PLATFORM(GTK))
3252         Many GTK+ related files include <libintl.h> or <glib/gi18n-lib.h>.
3253         On Mac, <libintl.h> includes <xlocale.h>. <xclocale.h> includes 
3254         <xlocale/_ctype.h>, which uses isacii().
3255         * platform/UUID.cpp:
3256         (WebCore::createCanonicalUUIDString): For OS(DARWIN) && !PLATFORM(CF)
3257         use the Chromium Linux UUID generation.
3258
3259 2011-01-12  Simon Fraser  <simon.fraser@apple.com>
3260
3261         Reviewed by Eric Seidel.
3262
3263         [CSS Gradients] One color stop should not paint anything for linear-gradient
3264         https://bugs.webkit.org/show_bug.cgi?id=52259
3265         
3266         Share color stop parsing code between linear and radial gradients.
3267         Consider the gradient invalid if it has less than two color stops.
3268
3269         * css/CSSParser.cpp:
3270         (WebCore::CSSParser::parseLinearGradient):
3271         (WebCore::CSSParser::parseRadialGradient):
3272         (WebCore::CSSParser::parseGradientColorStops):
3273         * css/CSSParser.h:
3274
3275 2011-01-12  Mikhail Naganov  <mnaganov@chromium.org>
3276
3277         Reviewed by Pavel Feldman.
3278
3279         Fix inconsistencies in Inspector strings found by the new check-inspector-strings script.
3280
3281         https://bugs.webkit.org/show_bug.cgi?id=52295
3282
3283         * English.lproj/localizedStrings.js:
3284         * inspector/front-end/BreakpointsSidebarPane.js:
3285         (WebInspector.EventListenerBreakpointsSidebarPane):
3286         * inspector/front-end/ProfilesPanel.js:
3287         (WebInspector.ProfilesPanel.prototype.setRecordingProfile):
3288         * inspector/front-end/Resource.js:
3289         (WebInspector.Resource.Type.toString):
3290         * inspector/front-end/ResourcesPanel.js:
3291         (WebInspector.ResourceRevisionTreeElement):
3292         * inspector/front-end/utilities.js:
3293         ():
3294
3295 2011-01-12  Yury Semikhatsky  <yurys@chromium.org>
3296
3297         Unreviewed. Fix WML compilation on Mac.
3298
3299         * wml/WMLInputElement.cpp:
3300         (WebCore::WMLInputElement::setValue):
3301         (WebCore::WMLInputElement::setValueForUser):
3302         (WebCore::WMLInputElement::initialize):
3303         (WebCore::WMLInputElement::validateInputMask):
3304         * wml/WMLSelectElement.cpp:
3305         (WebCore::WMLSelectElement::listBoxSelectItem):
3306
3307 2011-01-12  Justin Schuh  <jschuh@chromium.org>
3308
3309         Unreviewed build fix for debug strict compiles.
3310
3311         Use fprintf for debug statements instead of fwrite, which caused compile failures
3312         in debug strict mode because of failure to check the fwrite return value.
3313
3314         No behavior changed.
3315
3316         * rendering/CounterNode.cpp:
3317         (WebCore::showTreeAndMark):
3318
3319 2010-12-29  Yury Semikhatsky  <yurys@chromium.org>
3320
3321         Reviewed by Pavel Feldman.
3322
3323         inspector/timeline-network-resource.html fails when run twice
3324         https://bugs.webkit.org/show_bug.cgi?id=37394
3325
3326         Send didReceiveResponse notification to the timeline agent from ResourceLoadNotifier
3327         instead of ResourceLoader::didReceiveResponse to cover the cases when resources
3328         are loaded from memory cache.
3329
3330         Network notifications are now sent to InspectorInstrumentation which dispatches
3331         them to interested agents and InspectorController.
3332
3333         * inspector/Inspector.idl:
3334         * inspector/InspectorApplicationCacheAgent.cpp:
3335         (WebCore::InspectorApplicationCacheAgent::didReceiveManifestResponse):
3336         * inspector/InspectorController.cpp:
3337         (WebCore::InspectorController::InspectorController):
3338         (WebCore::InspectorController::didCommitLoad):
3339         (WebCore::InspectorController::willSendRequest):
3340         (WebCore::InspectorController::didReceiveResponse):
3341         (WebCore::InspectorController::didFailLoading):
3342         (WebCore::InspectorController::resourceRetrievedByXMLHttpRequest):
3343         * inspector/InspectorController.h:
3344         * inspector/InspectorInstrumentation.cpp:
3345         (WebCore::InspectorInstrumentation::identifierForInitialRequestImpl):
3346         (WebCore::InspectorInstrumentation::willSendRequestImpl):
3347         (WebCore::InspectorInstrumentation::markResourceAsCachedImpl):
3348         (WebCore::InspectorInstrumentation::didLoadResourceFromMemoryCacheImpl):
3349         (WebCore::InspectorInstrumentation::willReceiveResourceResponseImpl):
3350         (WebCore::InspectorInstrumentation::didReceiveContentLengthImpl):
3351         (WebCore::InspectorInstrumentation::didFinishLoadingImpl):
3352         (WebCore::InspectorInstrumentation::didFailLoadingImpl):
3353         (WebCore::InspectorInstrumentation::resourceRetrievedByXMLHttpRequestImpl):
3354         (WebCore::InspectorInstrumentation::scriptImportedImpl):
3355         (WebCore::InspectorInstrumentation::retrieveResourceAgent):
3356         * inspector/InspectorInstrumentation.h:
3357         (WebCore::InspectorInstrumentation::identifierForInitialRequest):
3358         (WebCore::InspectorInstrumentation::willSendRequest):
3359         (WebCore::InspectorInstrumentation::markResourceAsCached):
3360         (WebCore::InspectorInstrumentation::didLoadResourceFromMemoryCache):
3361         (WebCore::InspectorInstrumentation::willReceiveResourceResponse):
3362         (WebCore::InspectorInstrumentation::didReceiveContentLength):
3363         (WebCore::InspectorInstrumentation::didFinishLoading):
3364         (WebCore::InspectorInstrumentation::didFailLoading):
3365         (WebCore::InspectorInstrumentation::resourceRetrievedByXMLHttpRequest):
3366         (WebCore::InspectorInstrumentation::scriptImported):
3367         * inspector/InspectorResourceAgent.cpp:
3368         (WebCore::InspectorResourceAgent::identifierForInitialRequest):
3369         * inspector/InspectorResourceAgent.h:
3370         * inspector/InspectorTimelineAgent.cpp:
3371         (WebCore::InspectorTimelineAgent::willSendResourceRequest):
3372         * inspector/InspectorTimelineAgent.h:
3373         * inspector/TimelineRecordFactory.cpp:
3374         (WebCore::TimelineRecordFactory::createResourceSendRequestData):
3375         * inspector/TimelineRecordFactory.h:
3376         * inspector/front-end/NetworkManager.js:
3377         (WebInspector.NetworkManager.prototype.identifierForInitialRequest):
3378         * inspector/front-end/TimelinePanel.js:
3379         (WebInspector.TimelinePanel.prototype.addRecordToTimeline):
3380         * loader/FrameLoader.cpp:
3381         (WebCore::FrameLoader::loadedResourceFromMemoryCache):
3382         * loader/ResourceLoadNotifier.cpp:
3383         (WebCore::ResourceLoadNotifier::didReceiveResponse):
3384         (WebCore::ResourceLoadNotifier::didFailToLoad):
3385         (WebCore::ResourceLoadNotifier::assignIdentifierToInitialRequest):
3386         (WebCore::ResourceLoadNotifier::dispatchWillSendRequest):
3387         (WebCore::ResourceLoadNotifier::dispatchDidReceiveResponse):
3388         (WebCore::ResourceLoadNotifier::dispatchDidReceiveContentLength):
3389         (WebCore::ResourceLoadNotifier::dispatchDidFinishLoading):
3390         (WebCore::ResourceLoadNotifier::sendRemainingDelegateMessages):
3391         * loader/ResourceLoader.cpp:
3392         (WebCore::ResourceLoader::didReceiveResponse):
3393         * loader/appcache/ApplicationCacheGroup.cpp:
3394         (WebCore::ApplicationCacheGroup::createResourceHandle):
3395         (WebCore::ApplicationCacheGroup::didReceiveResponse):
3396         (WebCore::ApplicationCacheGroup::didReceiveData):
3397         (WebCore::ApplicationCacheGroup::didFinishLoading):
3398         (WebCore::ApplicationCacheGroup::didFail):
3399         * loader/appcache/ApplicationCacheGroup.h:
3400         * workers/DefaultSharedWorkerRepository.cpp:
3401         (WebCore::SharedWorkerScriptLoader::notifyFinished):
3402         * workers/Worker.cpp:
3403         (WebCore::Worker::notifyFinished):
3404         * workers/WorkerContext.cpp:
3405         (WebCore::WorkerContext::importScripts):
3406         * xml/XMLHttpRequest.cpp:
3407         (WebCore::XMLHttpRequest::didFinishLoading):
3408
3409 2011-01-12  Pavel Podivilov  <podivilov@chromium.org>
3410
3411         Reviewed by Pavel Feldman.
3412
3413         Web Inspector: do not replace all tabs with spaces when editing script source
3414         https://bugs.webkit.org/show_bug.cgi?id=52291
3415
3416         * inspector/front-end/SourceFrame.js:
3417         (WebInspector.SourceFrame.prototype.setContent):
3418         (WebInspector.SourceFrame.prototype._editLine):
3419
3420 2011-01-11  Jeremy Orlow  <jorlow@chromium.org>
3421
3422         Reviewed by Nate Chapin.
3423
3424         Enforce READ_ONLY transactions in IndexedDB
3425         https://bugs.webkit.org/show_bug.cgi?id=52229
3426
3427         Add READ_ONLY_ERR and return it whenever delete or put
3428         are called.  Note that IDBCursor's delete and update
3429         are simply aliases for delete/put, which is why no
3430         extra code is required to handle those cases.
3431
3432         Test: storage/indexeddb/transaction-read-only.html
3433
3434         * dom/ExceptionCode.cpp:
3435         * storage/IDBCursorBackendImpl.cpp:
3436         (WebCore::IDBCursorBackendImpl::deleteFunction):
3437         * storage/IDBDatabase.idl:
3438         * storage/IDBDatabaseException.h:
3439         * storage/IDBDatabaseException.idl:
3440         * storage/IDBObjectStoreBackendImpl.cpp:
3441         (WebCore::IDBObjectStoreBackendImpl::put):
3442         (WebCore::IDBObjectStoreBackendImpl::deleteFunction):
3443         (WebCore::IDBObjectStoreBackendImpl::deleteIndex):
3444
3445 2011-01-11  Philippe Normand  <pnormand@igalia.com>
3446
3447         Reviewed by Eric Seidel.
3448
3449         [GTK] minimal build breaks in RenderThemeGtk3
3450         https://bugs.webkit.org/show_bug.cgi?id=52202
3451
3452         * platform/gtk/RenderThemeGtk3.cpp: Added VIDEO guards around
3453         initMediaColors().
3454
3455 2011-01-11  Philippe Normand  <pnormand@igalia.com>
3456
3457         Reviewed by Eric Carlson.
3458
3459         [GStreamer] PlatformVideoWindowMac implementation
3460         https://bugs.webkit.org/show_bug.cgi?id=50770
3461
3462         This new implementation will be used on Mac OS to display the
3463         fullscreen video window with the GStreamer-based media player.
3464
3465         * platform/graphics/gstreamer/GStreamerGWorld.cpp:
3466         (WebCore::gstGWorldSyncMessageCallback):
3467         * platform/graphics/gstreamer/PlatformVideoWindow.h:
3468         (WebCore::PlatformVideoWindow::window):
3469         * platform/graphics/gstreamer/PlatformVideoWindowMac.mm:
3470         (PlatformVideoWindow::PlatformVideoWindow):
3471         (PlatformVideoWindow::~PlatformVideoWindow):
3472         (PlatformVideoWindow::prepareForOverlay):
3473
3474 2011-01-11  Simon Fraser  <simon.fraser@apple.com>
3475
3476         Reviewed by Dan Bernstein.
3477
3478         Webkit crashes when a gradient is applied using the first-line pseudo element
3479         https://bugs.webkit.org/show_bug.cgi?id=52225
3480         
3481         When a pseudostyle references images, we fail to register/unregister
3482         the relevant RenderObjects as clients of the image in the style.
3483         For gradients, this caused a crash.
3484         
3485         This patch fixes the crash by returning a null gradient image in this
3486         situation.
3487
3488         Test: fast/gradients/gradient-on-pseudoelement-crash.html
3489
3490         * css/CSSGradientValue.cpp:
3491         (WebCore::CSSGradientValue::image):
3492
3493 2011-01-11  Andy Estes  <aestes@apple.com>
3494
3495         Reviewed by Darin Adler.
3496
3497         REGRESSION (r71562): servePendingRequests() no longer called when
3498         resources are done loading.
3499         https://bugs.webkit.org/show_bug.cgi?id=52264
3500         <rdar://problem/8767429>
3501         
3502         In r71562, servePendingRequests() is no longer called in Loader's
3503         didFinishLoading(), didFail() and didReceiveResponse() methods. Since
3504         r71562 was intended only as a refactoring, these calls should be
3505         restored. At least one WebKit-based Mac OS X application relies on this
3506         for correct behavior.
3507
3508         * loader/cache/CachedResourceLoader.cpp:
3509         (WebCore::CachedResourceLoader::loadDone): Call
3510         resourceLoadScheduler()->servePendingRequests().
3511
3512 2011-01-11  Patrick Gansterer  <paroga@webkit.org>
3513
3514         Reviewed by Eric Seidel.
3515
3516         Add Document::setContent()
3517         https://bugs.webkit.org/show_bug.cgi?id=52085
3518
3519         Add a method to Document to set the whole content at once.
3520         This removes the hack of the insert method in the xml parser
3521         and is a predecessor to feed the xml parser with raw data.
3522
3523         * dom/Document.cpp:
3524         (WebCore::Document::setContent):
3525         * dom/Document.h:
3526         * dom/XMLDocumentParser.cpp:
3527         (WebCore::XMLDocumentParser::insert): Added ASSERT_NOT_REACHED().
3528         * loader/cache/CachedFont.cpp:
3529         (WebCore::CachedFont::ensureSVGFontData): Use setContent.
3530         * xml/DOMParser.cpp:
3531         (WebCore::DOMParser::parseFromString): Ditto.
3532         * xml/XMLHttpRequest.cpp:
3533         (WebCore::XMLHttpRequest::responseXML): Ditto.
3534         * xml/XSLTProcessor.cpp:
3535         (WebCore::XSLTProcessor::createDocumentFromSource): Ditto.
3536
3537 2011-01-11  Brent Fulgham  <bfulgham@webkit.org>
3538
3539         Unreviewed build fix.
3540
3541         * platform/graphics/cairo/PathCairo.cpp:
3542         (WebCore::Path::addArc): Switch to MathExtra's piFloat define,
3543         rather than M_PI which is not always available.
3544
3545 2011-01-11  Nicolas Dufresne  <nicolas.dufresne@collabora.co.uk>
3546
3547         Reviewed by Adam Barth.
3548
3549         Use plug-in DB for extensions to MIME type convertion
3550
3551         Plugins extension to MIME type conversion was not used in the
3552         frameLoader. This was causing some fallback to be use which as the side
3553         effect of loosing all the <OBJECT> parameters or <EMBED> attributes.
3554         This patch ensure that we try to convert the extension to MIME type
3555         using the plugin database beofre using this fallback.
3556
3557         Attribute lost with Flash plugin without mime type set
3558         https://bugs.webkit.org/show_bug.cgi?id=50657
3559
3560         Test: plugins/no-mime-with-valid-extension.html
3561
3562         * loader/FrameLoader.cpp:
3563         (WebCore::FrameLoader::defaultObjectContentType): Use PluginDatabase for MIME
3564
3565 2011-01-11  James Simonsen  <simonjam@chromium.org>
3566
3567         Reviewed by Eric Seidel.
3568
3569         [Web Timing] Rename sslHandshakeStart to secureConnectionStart
3570         https://bugs.webkit.org/show_bug.cgi?id=52239
3571
3572         * page/PerformanceTiming.cpp:
3573         (WebCore::PerformanceTiming::secureConnectionStart):
3574         * page/PerformanceTiming.h:
3575         * page/PerformanceTiming.idl:
3576
3577 2011-01-11  Adam Barth  <abarth@webkit.org>
3578
3579         Reviewed by Eric Seidel.
3580
3581         Introduce the notion of a "display-isolated" URL scheme for use by
3582         Chrome-internal URLs
3583         https://bugs.webkit.org/show_bug.cgi?id=50182
3584
3585         This patch actually makes the display-isolated schemes display
3586         isolated.  The behavior should be the same as the previous iteration of
3587         this patch, but re-organized a bit because reading the access white
3588         list is expensive.
3589
3590         * page/SecurityOrigin.cpp:
3591         (WebCore::SecurityOrigin::isAccessToURLWhiteListed):
3592         (WebCore::SecurityOrigin::canDisplay):
3593         * page/SecurityOrigin.h:
3594         * platform/SchemeRegistry.cpp:
3595         * platform/SchemeRegistry.h:
3596
3597 2011-01-11  Mihai Parparita  <mihaip@chromium.org>
3598
3599         Reviewed by Darin Fisher.
3600
3601         Scroll event should be fired asynchronously
3602         https://bugs.webkit.org/show_bug.cgi?id=45631
3603
3604         Tests: fast/events/fire-scroll-event.html
3605                fast/events/fire-scroll-event-element.html
3606                fast/events/scroll-event-phase.html
3607
3608         Makes scroll events fire asynchronously to be in compliance with the
3609         CSSOM View Module and consistent with Gecko, Opera and (to some degree)
3610         IE.
3611         
3612         Implemented via the EventQueue class added by r74062 (EventQueue now
3613         has a convenience enqueueScrollEvent method).
3614
3615         * dom/EventQueue.cpp:
3616         (WebCore::EventQueue::enqueueScrollEvent):
3617         (WebCore::EventQueue::pendingEventTimerFired):
3618         * dom/EventQueue.h:
3619         * page/EventHandler.cpp:
3620         (WebCore::EventHandler::sendScrollEvent):
3621         * rendering/RenderLayer.cpp:
3622         (WebCore::RenderLayer::scrollToOffset):
3623         * rendering/RenderListBox.cpp:
3624         (WebCore::RenderListBox::valueChanged):
3625
3626 2011-01-11  Patrick Gansterer  <paroga@webkit.org>
3627
3628         Unreviewed WinCE build fix for r75523.
3629
3630         * platform/wince/DragDataWinCE.cpp: Added missing include.
3631
3632 2011-01-11  Abhishek Arya  <inferno@chromium.org>
3633
3634         Reviewed by Dimitri Glazkov.
3635
3636         RefPtr the FrameView to prevent scrollbar from getting deleted inside
3637         its scroll event.
3638         https://bugs.webkit.org/show_bug.cgi?id=52238
3639
3640         Test: scrollbars/scrollable-iframe-remove-crash.html
3641
3642         * page/DOMWindow.cpp:
3643         (WebCore::DOMWindow::scrollTo):
3644
3645 2011-01-08  Dimitri Glazkov  <dglazkov@chromium.org>
3646
3647         Reviewed by David Hyatt.
3648
3649         Make pseudo-style resolution less hard-coded when used to select a shadow node
3650         https://bugs.webkit.org/show_bug.cgi?id=46595
3651
3652         Essentially implements the plumbing for the XBL2 pseudo attribute:
3653         http://dev.w3.org/2006/xbl2/#the-pseudo-attribute
3654
3655         Test: fast/css/unknown-pseudo-element-matching.html
3656
3657         * css/CSSGrammar.y: Changed to handle specifier_list structure with the
3658             CSSParser::updateSpecifierWithElementName helper, added logic to
3659             keep unknown pseudo-element selectors at the top of the selector chain,
3660             so that we can easily check for them and grab them, and also because
3661             they would either not match anything or act as a descendant selector
3662             (descendant into a shadow DOM subtree that is), not a specifier.
3663         * css/CSSParser.cpp:
3664         (WebCore::CSSParser::updateSpecifiersWithElementName): Generalized/combined
3665             the logic adding element name to selectors and added the special case
3666             to handle unknown pseudo-element selectors.
3667         * css/CSSParser.h: Added def.
3668         * css/CSSSelector.cpp:
3669         (WebCore::CSSSelector::pseudoId): Removed any mention of PseudoSliderThumb/SLIDER_THUMB.
3670         (WebCore::nameToPseudoTypeMap): Ditto.
3671         (WebCore::CSSSelector::extractPseudoType): Ditto.
3672         * css/CSSSelector.h: Added a new ShadowDescendant relation type,
3673             removed PseudoSliderThumb def.
3674         (WebCore::CSSSelector::isUnknownPseudoElement): Added a helper method.
3675         * css/CSSSelectorList.cpp:
3676         (WebCore::SelectorHasUnknownPseudoElementFunctor::operator()): Added a functor
3677             to check for an unknown pseudo-element in the list.
3678         (WebCore::CSSSelectorList::hasUnknownPseudoElements): Added.
3679         * css/CSSSelectorList.h: Added a def.
3680         * css/CSSStyleSelector.cpp:
3681         (WebCore::CSSRuleSet::getPseudoRules): Added accessor to pseudo-element hash.
3682         (WebCore::CSSStyleSelector::matchRules): Added matching pseudo elements.
3683         (WebCore::CSSStyleSelector::SelectorChecker::checkSelector): Added handling
3684             of ShadowDescendant relation.
3685         (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector): Enabled handling
3686             of unknown pseudo-element selectors.
3687         (WebCore::CSSRuleSet::addRule): Added populating unknown pseudo-element hash.
3688         * css/html.css:
3689         (input[type="range"]::-webkit-slider-thumb): Added previously-hard-coded
3690             display:block.
3691         * dom/Element.h:
3692         (WebCore::Element::shadowPseudoId): Added new virtual method to allow
3693             elements to provide the value of pseudo-element selector they would match.
3694         * dom/Node.cpp:
3695         (WebCore::Node::querySelector): Added checking for unknown pseudo-element selectors,
3696             so that we can throw a SYNTAX_ERR if found.
3697         (WebCore::Node::querySelectorAll): Ditto.
3698         * html/shadow/SliderThumbElement.h:
3699         (WebCore::SliderThumbElement::shadowPseudoId): Added to return "-webkit-slider-thumb";
3700         * rendering/RenderSlider.cpp:
3701         (WebCore::RenderSlider::createThumbStyle): Changed to use the new styleForElement logic.
3702         * rendering/style/RenderStyleConstants.h: Removed SLIDER_THUMB.
3703
3704 2011-01-11  Dean Jackson  <dino@apple.com>
3705
3706         Reviewed by Simon Fraser.
3707
3708         https://bugs.webkit.org/show_bug.cgi?id=52233
3709
3710         WebKitCSSMatrix constructor should accept 'none'
3711         as a valid string parameter.
3712
3713         * css/WebKitCSSMatrix.cpp:
3714         (WebCore::WebKitCSSMatrix::setMatrixValue):
3715
3716 2011-01-11  James Robinson  <jamesr@chromium.org>
3717
3718         Reviewed by Dimitri Glazkov.
3719
3720         Set all RenderBlocks as replaced when an inline display type is specified
3721         https://bugs.webkit.org/show_bug.cgi?id=50858
3722
3723         When a RenderBlock is created for an element with a specified display:inline style,
3724         it should always be treated as inline-block.  This situations often comes up for form
3725         controls.  Previously, RenderBlock::styleWillChange set the replaced flag for display
3726         values of inline-block, inline-table, and inline-table and a number of subclasses of
3727         RenderBlock set the replaced flag in styleDidChange for a display:inline.  However
3728         sometimes new subclasses would miss this step leading to bugs (such as with RenderDetails).
3729         This patch sets the replaced flag for all inline display types in RenderBlock::styleWillChange.
3730
3731         Code cleanup only, no change in behavior so no new tests.
3732
3733         * rendering/RenderBlock.cpp:
3734         (WebCore::RenderBlock::styleWillChange):
3735         * rendering/RenderButton.cpp:
3736         (WebCore::RenderButton::styleDidChange):
3737         * rendering/RenderFieldset.cpp:
3738         * rendering/RenderFieldset.h:
3739         * rendering/RenderFileUploadControl.cpp:
3740         (WebCore::RenderFileUploadControl::styleDidChange):
3741         * rendering/RenderListBox.cpp:
3742         * rendering/RenderListBox.h:
3743         * rendering/RenderMenuList.cpp:
3744         (WebCore::RenderMenuList::styleDidChange):
3745         * rendering/RenderSlider.cpp:
3746         (WebCore::RenderSlider::styleDidChange):
3747         * rendering/RenderTextControl.cpp:
3748         (WebCore::RenderTextControl::styleDidChange):
3749
3750 2011-01-11  Dimitri Glazkov  <dglazkov@chromium.org>
3751
3752         Reviewed by Eric Seidel.
3753
3754         REGRESSION(r71934) Can't type in search edit field on skin-one.com
3755         https://bugs.webkit.org/show_bug.cgi?id=52195
3756
3757         Restored the original behavior, where the selectstart event is not
3758         dispatched when selection changes inside of the shadow DOM.
3759
3760         * dom/Node.cpp:
3761         (WebCore::determineDispatchBehavior): Moved EventDispatchBehavior-determining
3762             logic into a helper function, also added a check to keep selectstart
3763                 events inside of the shadow DOM.
3764         (WebCore::Node::dispatchGenericEvent): Changed to use the helper function.
3765
3766 2011-01-11  Viatcheslav Ostapenko  <ostapenko.viatcheslav@nokia.com>
3767
3768         Reviewed by Eric Seidel.
3769
3770         [Qt] Provide plugin coordinates to windowless plugins on Symbian.
3771         https://bugs.webkit.org/show_bug.cgi?id=52213
3772
3773         * plugins/symbian/PluginViewSymbian.cpp:
3774         (WebCore::PluginView::setNPWindowIfNeeded):
3775
3776 2011-01-10  Zhenyao Mo  <zmo@google.com>
3777
3778         Reviewed by Kenneth Russell.
3779
3780         Need to consider UNPACK_ALIGNMENT in GraphicsContext3D::texImage2DResourceSafe
3781         https://bugs.webkit.org/show_bug.cgi?id=52068
3782
3783         * html/canvas/WebGLRenderingContext.cpp:
3784         (WebCore::WebGLRenderingContext::copyTexImage2D): Use computeImageSizeInBytes.
3785         (WebCore::WebGLRenderingContext::copyTexSubImage2D): Ditto.
3786         (WebCore::WebGLRenderingContext::readPixels): Ditto, and fix a bug on generating the wrong error.
3787         (WebCore::WebGLRenderingContext::texImage2DBase): Ditto.
3788         (WebCore::WebGLRenderingContext::validateTexFuncData): Use computeImageSizeInBytes.
3789         * platform/graphics/GraphicsContext3D.cpp:
3790         (WebCore::GraphicsContext3D::texImage2DResourceSafe): Add a new parameter alignment.
3791         (WebCore::GraphicsContext3D::computeFormatAndTypeParameters): Add more supported format/type.
3792         (WebCore::GraphicsContext3D::computeImageSizeInBytes): Added.
3793         * platform/graphics/GraphicsContext3D.h:
3794
3795 2011-01-10  Enrica Casucci  <enrica@apple.com>
3796
3797         Reviewed by Alexey Proskuryakov.
3798
3799         Paste and drag and drop use different code paths to interact with the pasteboard.
3800         https://bugs.webkit.org/show_bug.cgi?id=52093
3801         The change consists in a refactoring of the code to have only one class that
3802         deals with the pasteboard on Mac.
3803
3804         No new tests. A test is already available for this
3805         (editing/pasteboard/drag-image-to-contenteditable-in-iframe.html) but had incorrect results.
3806
3807         * WebCore.exp.in:
3808         * loader/EmptyClients.h: Added two Mac only methods to call into WebKit to use functionality
3809         that is in NSURLExtras.
3810         (WebCore::EmptyEditorClient::canonicalizeURL):
3811         (WebCore::EmptyEditorClient::canonicalizeURLString):
3812         * page/DragController.cpp:
3813         The following methods have been changed to pass a pointer to the Frame object
3814         to the DragData class.
3815         (WebCore::documentFragmentFromDragData):
3816         (WebCore::DragController::performDrag):
3817         (WebCore::DragController::dispatchTextInputEventFor):
3818         (WebCore::DragController::concludeEditDrag):
3819         * page/EditorClient.h: Added two Mac only methods to call into WebKit to use functionality
3820         that is in NSURLExtras.
3821         The following files have been modified to pass the Frame object to the DragData method calls.
3822         * page/chromium/DragControllerChromium.cpp:
3823         (WebCore::DragController::dragOperation):
3824         * page/gtk/DragControllerGtk.cpp:
3825         (WebCore::DragController::dragOperation):
3826         * page/mac/DragControllerMac.mm:
3827         (WebCore::DragController::dragOperation):
3828         * page/qt/DragControllerQt.cpp:
3829         (WebCore::DragController::dragOperation):
3830         * page/win/DragControllerWin.cpp:
3831         (WebCore::DragController::dragOperation):
3832         * platform/DragData.h: Removed Mac specific constructor and reference to PasteboardHelper class.
3833         * platform/Pasteboard.h: Added public constructor to create a Pasteboard object from an NSPasteboard.
3834         The following files were all modified to match the new parameters of the methods listed.
3835         * platform/android/DragDataAndroid.cpp:
3836         (WebCore::DragData::asPlainText):
3837         (WebCore::DragData::containsURL):
3838         (WebCore::DragData::asURL):
3839         (WebCore::DragData::asFragment):
3840         * platform/chromium/DragDataChromium.cpp:
3841         (WebCore::DragData::containsURL):
3842         (WebCore::DragData::asURL):
3843         (WebCore::DragData::asPlainText):
3844         (WebCore::DragData::containsCompatibleContent):
3845         (WebCore::DragData::asFragment):
3846         * platform/gtk/DragDataGtk.cpp:
3847         (WebCore::DragData::asPlainText):
3848         (WebCore::DragData::containsCompatibleContent):
3849         (WebCore::DragData::containsURL):
3850         (WebCore::DragData::asURL):
3851         (WebCore::DragData::asFragment):
3852         * platform/haiku/DragDataHaiku.cpp:
3853         (WebCore::DragData::asPlainText):
3854         (WebCore::DragData::containsURL):
3855         (WebCore::DragData::asURL):
3856         (WebCore::DragData::asFragment):
3857         * platform/mac/DragDataMac.mm:
3858         (WebCore::DragData::DragData):
3859         (WebCore::DragData::asPlainText):
3860         (WebCore::insertablePasteboardTypes):
3861         (WebCore::DragData::containsCompatibleContent):
3862         (WebCore::DragData::containsURL):
3863         (WebCore::DragData::asURL):
3864         (WebCore::DragData::asFragment):
3865         * platform/mac/PasteboardMac.mm:
3866         (WebCore::Pasteboard::getBestURL):
3867         (WebCore::Pasteboard::asURL):
3868         * platform/qt/DragDataQt.cpp:
3869         (WebCore::DragData::asPlainText):
3870         (WebCore::DragData::containsCompatibleContent):
3871         (WebCore::DragData::containsURL):
3872         (WebCore::DragData::asURL):
3873         (WebCore::DragData::asFragment):
3874         * platform/win/DragDataWin.cpp:
3875         (WebCore::DragData::containsURL):
3876         (WebCore::DragData::asURL):
3877         (WebCore::DragData::asPlainText):
3878         (WebCore::DragData::containsCompatibleContent):
3879         (WebCore::DragData::asFragment):
3880         * platform/wince/DragDataWinCE.cpp:
3881         (WebCore::DragData::containsURL):
3882         (WebCore::DragData::asURL):
3883         (WebCore::DragData::asPlainText):
3884         (WebCore::DragData::asFragment):
3885         * platform/wx/DragDataWx.cpp:
3886         (WebCore::DragData::asPlainText):
3887         (WebCore::DragData::containsURL):
3888         (WebCore::DragData::asURL):
3889         (WebCore::DragData::asFragment):
3890
3891 2011-01-11  Abhishek Arya  <inferno@chromium.org>
3892
3893         Reviewed by Dimitri Glazkov.
3894
3895         RefPtr text node in setOuterText since calling appendData
3896         on a text node can fire away dom event listener which might
3897         remove the text node from underneath.
3898         https://bugs.webkit.org/show_bug.cgi?id=52163
3899
3900         Test: fast/dom/text-node-append-data-remove-crash.html
3901
3902         * html/HTMLElement.cpp:
3903         (WebCore::HTMLElement::setOuterText):
3904
3905 2011-01-11  Carlos Garcia Campos  <cgarcia@igalia.com>
3906
3907         Reviewed by Martin Robinson.
3908
3909         [GTK] Add support for <meter> element
3910         https://bugs.webkit.org/show_bug.cgi?id=48713
3911
3912         * GNUmakefile.am: Enable meter element.
3913
3914 2011-01-11  Csaba Osztrogonác  <ossy@webkit.org>
3915
3916         Unreviewed buildfix.
3917
3918         [Qt][V8] Add missing include for debug build.
3919
3920         * loader/cache/CachedResourceLoader.cpp:
3921
3922 2011-01-11  Pavel Feldman  <pfeldman@chromium.org>
3923
3924         Reviewed by Yury Semikhatsky.
3925
3926         Web Inspector: redirects are lost from the network panel upon navigation.
3927         https://bugs.webkit.org/show_bug.cgi?id=52210
3928
3929         * inspector/front-end/NetworkManager.js:
3930         (WebInspector.NetworkManager.prototype.didCommitLoadForFrame):
3931
3932 2011-01-11  Jocelyn Turcotte  <jocelyn.turcotte@nokia.com>
3933
3934         Reviewed by Kenneth Rohde Christiansen.
3935
3936         [Qt] Remove uses of QFuture since it isn't supported on all platforms.
3937         https://bugs.webkit.org/show_bug.cgi?id=51204
3938
3939         * platform/network/qt/QtNAMThreadSafeProxy.cpp:
3940         (WebCore::QtNAMThreadSafeProxy::QtNAMThreadSafeProxy):
3941         (WebCore::QtNAMThreadSafeProxy::localCookiesForUrl):
3942         (WebCore::QtNAMThreadSafeProxy::localWillLoadFromCache):
3943         * platform/network/qt/QtNAMThreadSafeProxy.h:
3944         (WebCore::QtNAMThreadSafeProxy::cookiesForUrl):
3945         (WebCore::QtNAMThreadSafeProxy::willLoadFromCache):
3946
3947 2011-01-11  Pavel Podivilov  <podivilov@chromium.org>
3948
3949         Reviewed by Pavel Feldman.
3950
3951         Web Inspector: recreate script view after live edit.
3952         https://bugs.webkit.org/show_bug.cgi?id=51751
3953
3954         * inspector/front-end/Script.js:
3955         (WebInspector.Script.prototype.set source):
3956         * inspector/front-end/ScriptView.js:
3957         (WebInspector.ScriptView):
3958         * inspector/front-end/ScriptsPanel.js:
3959         (WebInspector.ScriptsPanel.prototype.editScriptSource.mycallback):
3960         (WebInspector.ScriptsPanel.prototype.editScriptSource):
3961         (WebInspector.ScriptsPanel.prototype.viewRecreated):
3962         * inspector/front-end/SourceFrame.js:
3963         (WebInspector.SourceFrame.prototype._doEditLine):
3964
3965 2011-01-11  Pavel Podivilov  <podivilov@chromium.org>
3966
3967         Reviewed by Pavel Feldman.
3968
3969         Web Inspector: frameDetachedFromParent notification handler is missing in NetworkManager.
3970         https://bugs.webkit.org/show_bug.cgi?id=52205
3971
3972         * inspector/front-end/NetworkManager.js:
3973         (WebInspector.NetworkManager.prototype.frameDetachedFromParent):
3974
3975 2011-01-11  Alexander Pavlov  <apavlov@chromium.org>
3976
3977         Reviewed by Pavel Feldman.
3978
3979         Web Inspector: "Audit present state" always disabled
3980         https://bugs.webkit.org/show_bug.cgi?id=52199
3981
3982         Removed all traces of resource tracking checks, as we have it no more.
3983
3984         * English.lproj/localizedStrings.js:
3985         * inspector/front-end/AuditLauncherView.js:
3986         (WebInspector.AuditLauncherView.prototype._createLauncherUI):
3987         * inspector/front-end/AuditsPanel.js:
3988
3989 2011-01-11  Pavel Podivilov  <podivilov@chromium.org>
3990
3991         Reviewed by Pavel Feldman.
3992
3993         Web Inspector: move delayed search implementation to SourceFrame.
3994         https://bugs.webkit.org/show_bug.cgi?id=51753
3995
3996         * inspector/front-end/SourceFrame.js:
3997         (WebInspector.SourceFrame.prototype._createViewerIfNeeded):
3998         (WebInspector.SourceFrame.prototype.findSearchMatches):
3999         (WebInspector.SourceFrame.prototype.cancelFindSearchMatches):
4000         * inspector/front-end/SourceView.js:
4001         (WebInspector.SourceView.prototype.hide):
4002         (WebInspector.SourceView.prototype.searchCanceled):
4003         (WebInspector.SourceView.prototype.performSearch.didFindSearchMatches):
4004         (WebInspector.SourceView.prototype.performSearch):
4005
4006 2011-01-11  Ilya Tikhonovsky  <loislo@chromium.org>
4007
4008         Reviewed by Pavel Feldman.
4009
4010         Web Inspector: innerFirstChild has a side effect which should be called explicitly.
4011
4012         If a node is a frame's owner then innerFirstChild method
4013         subscribes DOMAgent instance to the frame's doc's events.
4014         I think this should be done explicitly when we meet with
4015         the node for the first time. As I understand it happens
4016         in buildArrayForContainerChildren method.
4017
4018         https://bugs.webkit.org/show_bug.cgi?id=52204
4019
4020         * inspector/InspectorDOMAgent.cpp:
4021         (WebCore::InspectorDOMAgent::startListeningFrameDoc):
4022         (WebCore::InspectorDOMAgent::buildArrayForContainerChildren):
4023         (WebCore::InspectorDOMAgent::innerFirstChild):
4024         * inspector/InspectorDOMAgent.h:
4025
4026 2011-01-11  Adam Roben  <aroben@apple.com>
4027
4028         Delete WKCACFLayer.{cpp,h}
4029
4030         These have been unused since r75262
4031
4032         * platform/graphics/win/WKCACFLayer.cpp: Removed.
4033         * platform/graphics/win/WKCACFLayer.h: Removed.
4034
4035 2011-01-11  Pavel Feldman  <pfeldman@chromium.org>
4036
4037         Reviewed by Yury Semikhatsky.
4038
4039         Web Inspector: [regression] Cookies view does not allow columns resize.
4040         https://bugs.webkit.org/show_bug.cgi?id=51877
4041
4042         * inspector/front-end/CookieItemsView.js:
4043         (WebInspector.CookieItemsView.prototype._updateWithCookies):
4044
4045 2011-01-11  Noel Gordon  <noel.gordon@gmail.com>
4046
4047          Reviewed by James Robinson.
4048
4049          [chromium] canvas.toDataURL("image/jpeg") should composite onto black.
4050          https://bugs.webkit.org/show_bug.cgi?id=51237
4051
4052          The Canvas specification requires that the canvas image is composited using
4053          the Porter-Duff operator source-over onto a black background; the resultant
4054          image should be JPEG encoded and returned as a dataURL.  To composite image
4055          A and background B, for any Porter-Duff operator, produce pixels I with
4056
4057             I = c(A)F(A) + c(B)F(B)
4058
4059          where, F(X) is the fraction [0.0-1.0] contributed to the composite by image
4060          X, and c(X) are the premultiplied RGB color components of image X.  Note by
4061          definition, c(B) = 0 since the background is black, so I = c(A)F(A).  Since
4062          F(A) = 1 in Porter-Duff operator source-over, the composited pixels satisfy
4063          I = c(A).  Hence, to conform to the Canvas spec, pass the premultiplied RGB
4064          color components of the canvas image to the JPEG encoder.
4065
4066          Covered by canvas/philip/tests/toDataURL.jpeg.alpha.html
4067
4068          * platform/image-encoders/skia/JPEGImageEncoder.cpp:
4069          (WebCore::preMultipliedBGRAtoRGB): Use Porter-Duff source-over black.
4070
4071 2011-01-11  Pavel Feldman  <pfeldman@chromium.org>
4072
4073         Reviewed by Yury Semikhatsky.
4074
4075         Chromium DevTools: get rid of APU-related code in WebKit/chromium.
4076         https://bugs.webkit.org/show_bug.cgi?id=52152
4077
4078         * inspector/InspectorController.cpp:
4079         (WebCore::InspectorController::restoreInspectorStateFromCookie):
4080         (WebCore::InspectorController::setInjectedScriptSource):
4081         * inspector/InspectorState.cpp:
4082         (WebCore::InspectorState::InspectorState):
4083         * inspector/InspectorState.h:
4084         * inspector/front-end/inspector.js:
4085
4086 2011-01-11  Pavel Feldman  <pfeldman@chromium.org>
4087
4088         Reviewed by Yury Semikhatsky.
4089
4090         Web Inspector: [REGRESSION] Load timing is requested
4091         for all resources (not only for the main one).
4092         https://bugs.webkit.org/show_bug.cgi?id=51749
4093
4094         * inspector/InspectorController.cpp:
4095         (WebCore::InspectorController::willSendRequest):
4096         * loader/ResourceLoadNotifier.cpp:
4097         (WebCore::ResourceLoadNotifier::dispatchWillSendRequest):
4098
4099 2011-01-11  Carlos Garcia Campos  <cgarcia@igalia.com>
4100
4101         Reviewed by Martin Robinson.
4102
4103         [GTK] GRefPtr should not be used with Gtk widgets
4104         https://bugs.webkit.org/show_bug.cgi?id=51241
4105
4106         GRefPtr breaks the widget life-cycle, the main problem is
4107         that GRefPtr calls g_object_unref() when it's destroyed,
4108         which is undesirable for widgets. In gtk+ widgets are created with
4109         a floating reference and when added to a container, the container
4110         takes the ownership of the widget consuming the floating
4111         reference. So you don't usually need to call g_object_ref/unref on
4112         widgets (only for some operations like reparent a widget) and
4113         toplevel widgets are destroyed with gtk_widget_destroy().
4114
4115         * platform/ContextMenuItem.h:
4116         * platform/gtk/ContextMenuGtk.cpp:
4117         (WebCore::ContextMenu::ContextMenu):
4118         (WebCore::ContextMenu::~ContextMenu):
4119         (WebCore::ContextMenu::setPlatformDescription):
4120         * platform/gtk/ContextMenuItemGtk.cpp:
4121         (WebCore::ContextMenuItem::ContextMenuItem):
4122         (WebCore::ContextMenuItem::releasePlatformDescription):
4123         (WebCore::ContextMenuItem::type):
4124         (WebCore::ContextMenuItem::action):
4125         (WebCore::ContextMenuItem::setAction):
4126         (WebCore::ContextMenuItem::title):
4127         (WebCore::ContextMenuItem::setTitle):
4128         (WebCore::ContextMenuItem::platformSubMenu):
4129         (WebCore::ContextMenuItem::setSubMenu):
4130         (WebCore::ContextMenuItem::setChecked):
4131         (WebCore::ContextMenuItem::setEnabled):
4132
4133 2010-10-10  David Hyatt  <hyatt@apple.com>
4134
4135         Reviewed by Simon Fraser.
4136
4137         https://bugs.webkit.org/show_bug.cgi?id=51119, transformed 
4138         elements not responding properly to :hover after r73385.  
4139         Just use the entire document area as the hit test area, 
4140         since there appears to be a rounding bug/issues with relying 
4141         on float math when mapping the hit test area into
4142         transformed coordinates.
4143
4144         * rendering/RenderLayer.cpp:
4145         (WebCore::RenderLayer::hitTest):
4146
4147 2011-01-10  Stephen White  <senorblanco@chromium.org>
4148
4149         Reviewed by James Robinson.
4150
4151         Fix canvas->canvas draws on the GPU path.
4152         https://bugs.webkit.org/show_bug.cgi?id=52141
4153         
4154         Two problems:  according to the canvas spec, both source and
4155         destination rects can have negative width or height, but this shouldn't
4156         cause the image to be flipped.  So we need to normalize the rects (in
4157         the software path, this is done by BitmapImage*::draw).  Secondly, in
4158         the FBO->FBO path, the image needs to be flipped vertically, since it
4159         is drawn upside down.  We were doing this by flipping the destination
4160         rect, but this doesn't work if the source rect is not the entire image,
4161         since we extract the wrong part of the image.  Fixed by flipping the
41