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