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