2011-04-12 Adrienne Walker <enne@google.com>
[WebKit-https.git] / Source / WebCore / ChangeLog
1 2011-04-12  Adrienne Walker  <enne@google.com>
2
3         Reviewed by James Robinson.
4
5         [chromium] TilingData mishandles very small texture sizes
6         https://bugs.webkit.org/show_bug.cgi?id=58364
7
8         Use zero tiles when the texture size is too small for tiling.
9
10         * platform/graphics/gpu/TilingData.cpp:
11         (WebCore::TilingData::TilingData):
12         (WebCore::TilingData::setMaxTextureSize):
13
14 2011-04-12  Csaba Osztrogonác  <ossy@webkit.org>
15
16         Unreviewed, rolling out r83634 and r83659.
17         http://trac.webkit.org/changeset/83634
18         http://trac.webkit.org/changeset/83659
19         https://bugs.webkit.org/show_bug.cgi?id=57075
20
21         It made 2 tests time out
22
23         * platform/network/qt/QNetworkReplyHandler.cpp:
24         (WebCore::QNetworkReplyWrapper::QNetworkReplyWrapper):
25         (WebCore::QNetworkReplyWrapper::~QNetworkReplyWrapper):
26         (WebCore::QNetworkReplyWrapper::receiveMetaData):
27         (WebCore::QNetworkReplyWrapper::didReceiveFinished):
28         (WebCore::QNetworkReplyHandler::QNetworkReplyHandler):
29         (WebCore::QNetworkReplyHandler::resetState):
30         (WebCore::QNetworkReplyHandler::setLoadingDeferred):
31         (WebCore::QNetworkReplyHandler::resumeDeferredLoad):
32         (WebCore::QNetworkReplyHandler::release):
33         (WebCore::QNetworkReplyHandler::finish):
34         (WebCore::QNetworkReplyHandler::sendResponseIfNeeded):
35         (WebCore::QNetworkReplyHandler::forwardData):
36         (WebCore::QNetworkReplyHandler::start):
37         * platform/network/qt/QNetworkReplyHandler.h:
38         * platform/network/qt/ResourceHandleQt.cpp:
39         (WebCore::WebCoreSynchronousLoader::resourceResponse):
40         (WebCore::WebCoreSynchronousLoader::resourceError):
41         (WebCore::WebCoreSynchronousLoader::data):
42         (WebCore::WebCoreSynchronousLoader::setReplyFinished):
43         (WebCore::WebCoreSynchronousLoader::WebCoreSynchronousLoader):
44         (WebCore::WebCoreSynchronousLoader::didReceiveResponse):
45         (WebCore::WebCoreSynchronousLoader::didReceiveData):
46         (WebCore::WebCoreSynchronousLoader::didFinishLoading):
47         (WebCore::WebCoreSynchronousLoader::didFail):
48         (WebCore::WebCoreSynchronousLoader::waitForCompletion):
49         (WebCore::ResourceHandle::loadResourceSynchronously):
50
51 2011-04-12  Sam Weinig  <sam@webkit.org>
52
53         Reviewed by Simon Fraser.
54
55         Frames prevent scrolling containing page
56         <rdar://problem/8990409>
57         https://bugs.webkit.org/show_bug.cgi?id=58392
58
59         Also fixes:
60         Should rubber-band on pages with no scrollbars
61         <rdar://problem/9034280>
62
63         * page/FrameView.cpp:
64         (WebCore::FrameView::FrameView):
65         Make the main frame rubber-band horizontally and vertically always.
66
67         * platform/ScrollTypes.h:
68         Add ScrollElasticity enum.
69
70         * platform/ScrollableArea.cpp:
71         Default to no elasticity.
72
73         (WebCore::ScrollableArea::ScrollableArea):
74         * platform/ScrollableArea.h:
75         (WebCore::ScrollableArea::setVerticalScrollElasticity):
76         (WebCore::ScrollableArea::verticalScrollElasticity):
77         (WebCore::ScrollableArea::setHorizontalScrollElasticity):
78         (WebCore::ScrollableArea::horizontalScrollElasticity):
79         Add state for horizontal and vertical elasticity.
80
81         * platform/mac/ScrollAnimatorMac.mm:
82         (WebCore::ScrollAnimatorMac::handleWheelEvent):
83         Bail out of new scrolling behavior if we can't rubber-band. By bailing before
84         accepting the wheel event, we allow the wheel event to be forwarded. We will
85         need to refine this logic to allow subframe scrolling in the future.
86
87         (WebCore::ScrollAnimatorMac::allowsVerticalStretching):
88         (WebCore::ScrollAnimatorMac::allowsHorizontalStretching):
89         Switch stretching behavior based on the ScrollableArea's elasticity.
90
91 2011-04-12  Geoffrey Garen  <ggaren@apple.com>
92
93         Not reviewed.
94
95         Try to fix the Chromium build.
96         
97         Why have one URL when you can have two at twice the price?
98
99         * platform/KURL.h:
100         (WebCore::KURL::KURL):
101         (WebCore::KURL::isHashTableDeletedValue):
102         * platform/KURLGoogle.cpp:
103         (WebCore::KURLGooglePrivate::KURLGooglePrivate):
104         * platform/KURLGooglePrivate.h: Added a GoogleURL path for KURL's hash
105         table deleted value constructor.
106
107 2011-04-12  Stephanie Lewis  <slewis@apple.com>
108
109         Reviewed by Oliver Hunt.
110         https://bugs.webkit.org/show_bug.cgi?id=58280
111         Fix a layout test by correctly comparing enums, and not adding exceptions.
112
113         * bindings/js/SerializedScriptValue.cpp:
114         (WebCore::SerializedScriptValue::create):
115         (WebCore::SerializedScriptValue::deserialize):
116         * bindings/js/SerializedScriptValue.h:
117
118 2011-04-12  Eric Carlson  <eric.carlson@apple.com>
119
120         Reviewed by Simon Fraser.
121
122         Apple movie trailers play only audio
123         https://bugs.webkit.org/show_bug.cgi?id=58339
124         <rdar://problem/9237606>
125
126         No new tests, covered by existing layout and manual tests.
127
128         * html/HTMLMediaElement.cpp:
129         (WebCore::HTMLMediaElement::mediaPlayerEngineUpdated): Do the logging before calling any functions.
130         (WebCore::HTMLMediaElement::mediaPlayerFirstVideoFrameAvailable): New, if still displaying the poster 
131             change the display mode to Video and force a style recalc so the video layer gets hooked
132             up the the render tree.
133         * html/HTMLMediaElement.h: Define new display mode, PosterWaitingForVideo, to signal that we
134             want to stop displaying the poster as soon as the first frame of video is available.
135
136         * html/HTMLVideoElement.cpp:
137         (WebCore::HTMLVideoElement::setDisplayMode): Change display mode to PosterWaitingForVideo when
138             we want to display Video but the media engines doesn't have the first frame yet.
139         * html/HTMLVideoElement.h:
140         (WebCore::HTMLVideoElement::shouldDisplayPosterImage): Update to return true when display mode
141             is PosterWaitingForVideo.
142
143         * manual-tests/media-elements/video-replaces-poster.html: Clean up bit-rot from patch changes.
144
145         * platform/graphics/MediaPlayer.cpp:
146         (WebCore::MediaPlayer::firstVideoFrameAvailable): New, passthrough from media engien to element.
147         * platform/graphics/MediaPlayer.h:
148         (WebCore::MediaPlayerClient::mediaPlayerFirstVideoFrameAvailable):
149
150         * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp:
151         (WebCore::MediaPlayerPrivateAVFoundation::MediaPlayerPrivateAVFoundation): Initialize 
152             m_haveReportedFirstVideoFrame and m_playWhenFramesAvailable.
153         (WebCore::MediaPlayerPrivateAVFoundation::play): Don't actually start playback until the first
154             frame of video has loaded, or audio will begin to play before we can show video.
155         (WebCore::MediaPlayerPrivateAVFoundation::pause): Clear m_playWhenFramesAvailable.
156         (WebCore::MediaPlayerPrivateAVFoundation::updateStates): When first frame of video is
157             available, inform elment and begin playback if it was previousl requested.
158         * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.h:
159
160         * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundationObjC.h:
161         * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundationObjC.mm:
162         (WebCore::MediaPlayerPrivateAVFoundationObjC::destroyContextVideoRenderer): Correct logging.
163         (WebCore::MediaPlayerPrivateAVFoundationObjC::createVideoLayer): Ditto.
164         (WebCore::MediaPlayerPrivateAVFoundationObjC::platformPlay): Renamed from play.
165         (WebCore::MediaPlayerPrivateAVFoundationObjC::platformPause): Rename from pause.
166
167 2011-04-12  Jian Li  <jianli@chromium.org>
168
169         Unreviewed, rolling out r83649.
170         http://trac.webkit.org/changeset/83649
171         https://bugs.webkit.org/show_bug.cgi?id=57563
172
173         This patch causes compiling errors for chromium
174
175         * platform/graphics/chromium/FontChromiumWin.cpp:
176         (WebCore::TransparencyAwareFontPainter::TransparencyAwareFontPainter::initializeForGDI):
177         (WebCore::TransparencyAwareFontPainter::TransparencyAwareFontPainter::~TransparencyAwareFontPainter):
178         (WebCore::Font::drawComplexText):
179         * platform/graphics/chromium/ImageBufferData.h:
180         * platform/graphics/chromium/LayerChromium.h:
181         * platform/graphics/chromium/LayerRendererChromium.h:
182         * platform/graphics/chromium/PlatformCanvas.cpp:
183         (WebCore::PlatformCanvas::resize):
184         * platform/graphics/chromium/PlatformCanvas.h:
185         * platform/graphics/chromium/TransparencyWin.cpp:
186         (WebCore::TransparencyWin::compositeTextComposite):
187         (WebCore::TransparencyWin::makeLayerOpaque):
188         * platform/graphics/skia/ImageBufferSkia.cpp:
189         (WebCore::ImageBuffer::ImageBuffer):
190         * platform/graphics/skia/ImageSkia.cpp:
191         (WebCore::paintSkBitmap):
192         (WebCore::Image::drawPattern):
193         * platform/graphics/skia/PlatformContextSkia.cpp:
194         (WebCore::PlatformContextSkia::PlatformContextSkia):
195         (WebCore::PlatformContextSkia::setCanvas):
196         (WebCore::PlatformContextSkia::isPrinting):
197         (WebCore::PlatformContextSkia::isNativeFontRenderingAllowed):
198         * platform/graphics/skia/PlatformContextSkia.h:
199         (WebCore::PlatformContextSkia::canvas):
200
201 2011-04-12  Enrica Casucci  <enrica@apple.com>
202
203         Reviewed by Alexey Proskuryakov.
204
205         Implement non-activating clicks to allow dragging out of a background window.
206         https://bugs.webkit.org/show_bug.cgi?id=55053
207         <rdar://problem/9042197>
208
209         * WebCore.exp.in: Added new exported method.
210
211 2011-04-12  Geoffrey Garen  <ggaren@apple.com>
212
213         Reviewed by Geoffrey Garen.
214
215         Cleaned up hash traits, and added hash traits for handles
216         https://bugs.webkit.org/show_bug.cgi?id=58381
217
218         * dom/QualifiedName.h: Use new SimpleClassHashTraits to avoid duplication.
219
220         * platform/KURL.h:
221         (WebCore::KURL::KURL):
222         (WebCore::KURL::isHashTableDeletedValue): Added explicit hash table
223         deleted value constructor, to be more explicit and enable use of
224         SimpleClassHashTraits.
225
226         * platform/KURLHash.h: Use new SimpleClassHashTraits to avoid duplication.
227
228         * platform/graphics/FontCache.cpp: Ditto.
229         * platform/network/ProtectionSpaceHash.h: Ditto.
230         * svg/properties/SVGAnimatedPropertyDescription.h: Ditto.
231
232 2011-04-12  Luiz Agostini  <luiz.agostini@openbossa.org>
233
234         Reviewed by Andreas Kling.
235
236         [Qt] QNetworkReplyHandler refactoring: remove nested event loop.
237         https://bugs.webkit.org/show_bug.cgi?id=58375
238
239         As QNAM now makes actual synchronous loads there is no need for a nested event loop
240         in ResourceHandleQt.
241
242         Moving the call for QNetworkReplyWrapper::synchronousLoad from
243         ResourceHandle::loadResourceSynchronously to QNetworkReplyHandler::start for the
244         redirections to work in synchronous requests.
245
246         * platform/network/qt/QNetworkReplyHandler.cpp:
247         (WebCore::QNetworkReplyHandler::start):
248         * platform/network/qt/QNetworkReplyHandler.h:
249         * platform/network/qt/ResourceHandleQt.cpp:
250         (WebCore::WebCoreSynchronousLoader::WebCoreSynchronousLoader):
251         (WebCore::WebCoreSynchronousLoader::didReceiveResponse):
252         (WebCore::WebCoreSynchronousLoader::didReceiveData):
253         (WebCore::WebCoreSynchronousLoader::didFinishLoading):
254         (WebCore::WebCoreSynchronousLoader::didFail):
255         (WebCore::ResourceHandle::loadResourceSynchronously):
256
257 2011-04-11  Jer Noble  <jer.noble@apple.com>
258
259         Reviewed by Simon Fraser.
260
261         REGRESSION: Vimeo fullscreen video displays incorrectly
262         https://bugs.webkit.org/show_bug.cgi?id=58291
263
264         Set the RenderFullScreen's zIndex to the max.  And make sure to override
265         a video element's specified width and height by making its full screen rules
266         important.  Also, always show the controls when a media element is in full
267         screen mode.
268
269         Test: fullscreen/video-specified-size.html
270         Test: fullscreen/full-screen-zIndex.html
271
272         * css/fullscreen.css:
273         (video:-webkit-full-screen): 
274         * html/HTMLMediaElement.cpp:
275         (WebCore::HTMLMediaElement::controls): Always show controls in full screen mode.
276         (WebCore::HTMLMediaElement::preDispatchEventHandler): Added. Handle the fullscreen
277             change event and hide or show the controls accordingly.
278         * html/HTMLMediaElement.h:
279         * rendering/RenderFullScreen.cpp:
280         (RenderFullScreen::createFullScreenStyle): Set the zIndex to INT_MAX and use a 
281             vertical flexbox instead of a horizontal one.
282
283 2011-04-12  Chris Marrin  <cmarrin@apple.com>
284
285         Reviewed by Simon Fraser.
286
287         Page tears and stutters in WebKit2 when page is > 2048 pixels wide
288         https://bugs.webkit.org/show_bug.cgi?id=58330
289
290         Added API to GraphicsLayer to disable switching to tiled layers. This is 
291         set in the nonCompositedContentLayer in WK2, causing that layer to never
292         switch to tiles and avoiding the asynchronous update of the content during
293         scroll.
294
295         * platform/graphics/ca/GraphicsLayerCA.cpp:
296             Implement setAllowTiledLayer() to simulate a SizeChanged action to 
297             properly switch between tiled and untiled layer.
298         * platform/graphics/ca/GraphicsLayerCA.h:
299
300 2011-04-12  Alok Priyadarshi  <alokp@chromium.org>
301
302         Reviewed by James Robinson.
303
304         Remove dependency on chromium skia::PlatformCanvas
305         https://bugs.webkit.org/show_bug.cgi?id=57563
306
307         This patch does not change any functionality, just the type of object skia::PlatformCanvas -> SkCanvas.
308         The object is still being created by a factory method skia::CreateBitmapCanvas defined in Chromium.
309         We will eventually define an API that every port using skia will define.
310
311         * platform/graphics/chromium/FontChromiumWin.cpp:
312         (WebCore::TransparencyAwareFontPainter::TransparencyAwareFontPainter::initializeForGDI):
313         (WebCore::TransparencyAwareFontPainter::TransparencyAwareFontPainter::~TransparencyAwareFontPainter):
314         (WebCore::Font::drawComplexText):
315         * platform/graphics/chromium/ImageBufferData.h:
316         * platform/graphics/chromium/LayerChromium.h:
317         * platform/graphics/chromium/LayerRendererChromium.h:
318         * platform/graphics/chromium/PlatformCanvas.cpp:
319         (WebCore::PlatformCanvas::resize):
320         * platform/graphics/chromium/PlatformCanvas.h:
321         * platform/graphics/chromium/TransparencyWin.cpp:
322         (WebCore::TransparencyWin::compositeTextComposite):
323         (WebCore::TransparencyWin::makeLayerOpaque):
324         * platform/graphics/skia/ImageBufferSkia.cpp:
325         (WebCore::ImageBuffer::ImageBuffer):
326         * platform/graphics/skia/ImageSkia.cpp:
327         (WebCore::paintSkBitmap):
328         (WebCore::Image::drawPattern):
329         * platform/graphics/skia/PlatformContextSkia.cpp:
330         (WebCore::PlatformContextSkia::PlatformContextSkia):
331         (WebCore::PlatformContextSkia::setCanvas):
332         (WebCore::PlatformContextSkia::isNativeFontRenderingAllowed):
333         * platform/graphics/skia/PlatformContextSkia.h:
334         (WebCore::PlatformContextSkia::canvas):
335         (WebCore::PlatformContextSkia::printing):
336         (WebCore::PlatformContextSkia::setPrinting):
337
338 2011-04-11  Stephanie Lewis  <slewis@apple.com>
339
340         Reviewed by Oliver Hunt.
341
342         https://bugs.webkit.org/show_bug.cgi?id=58280
343         <rdar://problem/9252824> javascript in an inconsistent state due to serialization returning an un-handled exception
344         Currently serialization and deserialization can throw javascript exceptions.  Since SerializedScriptValue is called in
345         several places that do not always involve direct calls into javascript have the functions return an error code and the callers
346         decide whether or not to throw exceptions.
347
348         Don't allow SerializedScriptValue to attempt to serialize objects that inherit from JSNavigator.h.  Walking that object creates
349         additional objects which eventually causes serialization to end up throwing a stack overflow error.  Instead fail immediately.
350
351         Untangle header includes.  SerializedScriptValue was inheriting ScriptValue.h, but not using it.  Since ScriptValue depends on
352         SerializedScriptValue this could lead to a circular header dependency.
353
354         No change in functionality, covered by current tests
355
356         * WebCore.exp.in:
357         * bindings/js/JSMessageEventCustom.cpp:
358         (WebCore::JSMessageEvent::initMessageEvent):
359         * bindings/js/ScriptValue.cpp:
360         (WebCore::ScriptValue::serialize):
361         (WebCore::ScriptValue::deserialize):
362         * bindings/js/ScriptValue.h:
363         * bindings/js/SerializedScriptValue.cpp:
364         (WebCore::CloneSerializer::serialize):
365         (WebCore::CloneSerializer::dumpIfTerminal):
366         (WebCore::CloneDeserializer::deserialize):
367         (WebCore::SerializedScriptValue::create):
368         (WebCore::SerializedScriptValue::deserialize):
369         (WebCore::SerializedScriptValue::maybeThrowExceptionIfSerializationFailed):
370         (WebCore::SerializedScriptValue::serializationDidCompleteSuccessfully):
371         * bindings/js/SerializedScriptValue.h:
372
373         * bindings/js/JSWorkerContextBase.cpp: header include fix
374         * loader/FrameLoader.h: header include fix
375         * page/Frame.cpp: header include fix
376
377 2011-03-28  Adam Barth  <abarth@webkit.org>
378
379         Reviewed by Kenneth Russell.
380
381         Move libtess from WebCore/thirdparty to ThirdParty
382         https://bugs.webkit.org/show_bug.cgi?id=57288
383
384         * WebCore.gyp/WebCore.gyp:
385             - Add libtess as a legit dependency.
386         * WebCore.gypi:
387             - Remove libtess files from the gypi.
388         * thirdparty/glu: Removed.
389
390 2011-04-12  Ryosuke Niwa  <rniwa@webkit.org>
391
392         Reviewed by David Hyatt.
393
394         Bundle w and tmpW in findNextLineBreak together as a class
395         https://bugs.webkit.org/show_bug.cgi?id=58362
396
397         Renamed w, tempW, and width in findNextLineBreak to committedWidth, uncommittedWidth,
398         and availableWidth respectively. Also bundled committedWidth and uncommittedWith as a class
399         named LineWidth.
400
401         * rendering/RenderBlockLineLayout.cpp:
402         (WebCore::LineWidth::LineWidth): Added.
403         (WebCore::LineWidth::currentWidth): Added; returns the sum of committed and uncommitted width.
404         (WebCore::LineWidth::uncommittedWidth): Added.
405         (WebCore::LineWidth::committedWidth): Added.
406         (WebCore::LineWidth::addUncommittedWidth): Added; adds the specified width to the uncommitted width.
407         (WebCore::LineWidth::commit): Added; commits the current width and clears the uncommitted width.
408         (WebCore::RenderBlock::findNextLineBreak): Uses LineWidth.
409
410 2011-04-12  Yael Aharon  <yael.aharon@nokia.com>
411
412         Reviewed by Eric Seidel.
413
414         REGRESSION(r82419): extra border in t0805-c5519-ibrdr-r-00-a.html
415         https://bugs.webkit.org/show_bug.cgi?id=57459
416
417         Slightly change the way we decide if a InlineFlowBox is the last box for its renderer.
418         We include the border in that box under these conditions:
419         (1) The next line was not created, or it is constructed. We check the previous line for rtl.
420         (2) The logicallyLastRun is not a descendant of this renderer.
421         (3) The logicallyLastRun is a descendant of this renderer, but it is the last child of this renderer and it does not wrap to the next line.
422         I added the tests from bug 47210, because now the draw the borders correctly.
423
424         Tests: fast/borders/bidi-002.html
425                fast/borders/bidi-004.html
426                fast/borders/bidi-009a.html
427
428         * rendering/InlineFlowBox.cpp:
429         (WebCore::InlineFlowBox::onEndChain):
430         (WebCore::isAnsectorAndWithinBlock):
431         (WebCore::InlineFlowBox::determineSpacingForFlowBoxes):
432         * rendering/InlineFlowBox.h:
433         * rendering/RenderBlock.h:
434         * rendering/RenderBlockLineLayout.cpp:
435         (WebCore::RenderBlock::constructLine):
436         (WebCore::RenderBlock::layoutInlineChildren):
437
438 2011-04-12  Geoffrey Garen  <ggaren@apple.com>
439
440         Reviewed by Sam Weinig.
441
442         Cleaned up some Vector traits, and added missing Vector traits for handles
443         https://bugs.webkit.org/show_bug.cgi?id=58372
444
445         * platform/graphics/BitmapImage.h: Added a FIXME because the current
446         Vector traits for FrameData are logically incorrect, but I couldn't find
447         a place where this currently results in bad behavior, and it's not
448         immediately obvious what the right solution is.
449
450 2011-04-12  Dimitri Glazkov  <dglazkov@chromium.org>
451
452         Reviewed by Eric Seidel.
453
454         Move MediaControlElements to html/shadow.
455         https://bugs.webkit.org/show_bug.cgi?id=58347
456
457         Mechanical move of the files.
458
459         * Android.mk: Updated the build file.
460         * CMakeLists.txt: Ditto.
461         * GNUmakefile.list.am: Ditto.
462         * WebCore.gypi: Ditto.
463         * WebCore.pro: Ditto.
464         * WebCore.vcproj/WebCore.vcproj: Ditto.
465         * WebCore.xcodeproj/project.pbxproj: Ditto, also ran sort-XCode-project-files.
466         * html/shadow/MediaControlElements.cpp: Copied from Source/WebCore/rendering/MediaControlElements.cpp.
467         (WebCore::MediaControlFullscreenButtonElement::defaultEventHandler):
468         * html/shadow/MediaControlElements.h: Copied from Source/WebCore/rendering/MediaControlElements.h.
469         * rendering/MediaControlElements.cpp: Removed.
470         * rendering/MediaControlElements.h: Removed.
471         * rendering/RenderingAllInOne.cpp: Removed the files that were moved.
472
473 2011-04-12  Luiz Agostini  <luiz.agostini@openbossa.org>
474
475         Reviewed by Andreas Kling.
476
477         [Qt] QNetworkReplyHandler refactoring: signal queue
478         https://bugs.webkit.org/show_bug.cgi?id=57075
479
480         The idea is to make all signals that come from the QNetworkReply to pass through a queue and to
481         stop that queue when loading is deferred. This way almost all the deferred logic can be removed
482         from QNetworkReplyHandler class and encapsulated in its own class.
483
484         To stop the queue during wrapper methods execution avoids stacking handler methods over wrapper
485         methods. Because of this there is no chance for the wrapper to be destroyed inside one of its methods.
486         This together with empting the queue at wrapper destruction time makes sure that the handler will
487         not receive calls from a dead wrapper.
488
489         The new class is named QNetworkReplyHandlerCallQueue.
490
491         * platform/network/qt/QNetworkReplyHandler.cpp:
492         (WebCore::QNetworkReplyHandlerCallQueue::QNetworkReplyHandlerCallQueue):
493         (WebCore::QNetworkReplyHandlerCallQueue::push):
494         (WebCore::QNetworkReplyHandlerCallQueue::lock):
495         (WebCore::QNetworkReplyHandlerCallQueue::unlock):
496         (WebCore::QNetworkReplyHandlerCallQueue::setDeferSignals):
497         (WebCore::QueueLocker::QueueLocker):
498         (WebCore::QueueLocker::~QueueLocker):
499         (WebCore::QNetworkReplyWrapper::QNetworkReplyWrapper):
500         (WebCore::QNetworkReplyWrapper::~QNetworkReplyWrapper):
501         (WebCore::QNetworkReplyWrapper::receiveMetaData):
502         (WebCore::QNetworkReplyWrapper::readyRead):
503         (WebCore::QNetworkReplyWrapper::didReceiveFinished):
504         (WebCore::QNetworkReplyHandler::QNetworkReplyHandler):
505         (WebCore::QNetworkReplyHandler::resetState):
506         (WebCore::QNetworkReplyHandler::release):
507         (WebCore::QNetworkReplyHandler::finish):
508         (WebCore::QNetworkReplyHandler::sendResponseIfNeeded):
509         (WebCore::QNetworkReplyHandler::forwardData):
510         (WebCore::QNetworkReplyHandler::start):
511         (WebCore::QNetworkReplyHandler::synchronousLoad):
512         * platform/network/qt/QNetworkReplyHandler.h:
513         (WebCore::QNetworkReplyHandlerCallQueue::deferSignals):
514         (WebCore::QNetworkReplyHandlerCallQueue::clear):
515         (WebCore::QNetworkReplyWrapper::synchronousLoad):
516         (WebCore::QNetworkReplyHandler::setLoadingDeferred):
517         * platform/network/qt/ResourceHandleQt.cpp:
518         (WebCore::ResourceHandle::loadResourceSynchronously):
519
520 2011-04-12  David Hyatt  <hyatt@apple.com>
521
522         Reviewed by Dan Bernstein.
523
524         https://bugs.webkit.org/show_bug.cgi?id=58176
525         
526         Inline replaced elements following positioned elements on lines are not rendered. Make sure the
527         logic for skipping run construction in appendRunsForObject matches the new logic that I added
528         to findNextLineBreak. If they don't match up, you risk confusing the run construction code and
529         causing it to not make runs for objects that follow the positioned object on the line.
530
531         Added fast/inline/positioned-object-between-replaced-elements.html
532         
533         * rendering/RenderBlockLineLayout.cpp:
534         (WebCore::RenderBlock::appendRunsForObject):
535
536 2011-04-12  Alice Liu  <alice.liu@apple.com>
537
538         Reviewed by Sam Weinig.
539
540         https://bugs.webkit.org/show_bug.cgi?id=58292
541         Provide new setting to allow site icon loading despite disabling automatic image loading in general.
542
543         Test: http/tests/misc/favicon-loads-with-icon-loading-override.html
544
545         * WebCore.exp.in: Added export symbol
546         * loader/FrameLoader.cpp:
547         (WebCore::FrameLoader::startIconLoader): Check new setting before deciding that site icon images shouldn't be loaded.
548         * page/Settings.cpp:
549         (WebCore::Settings::Settings): Add initializer for new setting
550         (WebCore::Settings::setLoadsSiteIconsIgnoringImageLoadingSetting): Add setter for new setting.
551         * page/Settings.h: Explain nuances regarding loadsImagesAutomatically setting.
552         (WebCore::Settings::loadsSiteIconsIgnoringImageLoadingSetting): Added getter.
553
554 2011-04-12  Ryosuke Niwa  <rniwa@webkit.org>
555
556         Reviewed by Eric Seidel.
557
558         Move StyleChange and other global functions from ApplyStyleCommand to EditingStyle
559         https://bugs.webkit.org/show_bug.cgi?id=55974
560
561         Moved StyleChange, getIdentifierValue, and legacyFontSizeFromCSSValue from ApplyStyleCommand
562         to EditingStyle. Also moved reconcileTextDecorationProperties, getIdentifierValue,
563         setTextDecorationProperty, isCSSValueLength, legacyFontSizeFromCSSValue, extractTextStyles,
564         diffTextDecorations, fontWeightIsBold, getTextAlignment, and getPropertiesNotIn.
565
566         Because of this move, getPropertiesNotIn is no longer visible outside of EditingStyle.cpp
567
568         * editing/ApplyStyleCommand.cpp:
569         * editing/ApplyStyleCommand.h:
570         * editing/EditingStyle.cpp:
571         (WebCore::reconcileTextDecorationProperties):
572         (WebCore::StyleChange::StyleChange):
573         (WebCore::setTextDecorationProperty):
574         (WebCore::getRGBAFontColor):
575         (WebCore::StyleChange::extractTextStyles):
576         (WebCore::diffTextDecorations):
577         (WebCore::fontWeightIsBold):
578         (WebCore::getTextAlignment):
579         (WebCore::getPropertiesNotIn):
580         (WebCore::getIdentifierValue):
581         (WebCore::isCSSValueLength):
582         (WebCore::legacyFontSizeFromCSSValue):
583         * editing/EditingStyle.h:
584         (WebCore::StyleChange::cssStyle):
585         (WebCore::StyleChange::applyBold):
586         (WebCore::StyleChange::applyItalic):
587         (WebCore::StyleChange::applyUnderline):
588         (WebCore::StyleChange::applyLineThrough):
589         (WebCore::StyleChange::applySubscript):
590         (WebCore::StyleChange::applySuperscript):
591         (WebCore::StyleChange::applyFontColor):
592         (WebCore::StyleChange::applyFontFace):
593         (WebCore::StyleChange::applyFontSize):
594         (WebCore::StyleChange::fontColor):
595         (WebCore::StyleChange::fontFace):
596         (WebCore::StyleChange::fontSize):
597         (WebCore::StyleChange::operator==):
598         (WebCore::StyleChange::operator!=):
599
600 2011-04-12  Diego Gonzalez  <diegohcg@webkit.org>
601
602         Reviewed by Kenneth Rohde Christiansen.
603
604         [Qt] Better padding for inputs and comboxes in mobile theme
605         https://bugs.webkit.org/show_bug.cgi?id=58248
606
607         * platform/qt/RenderThemeQt.cpp:
608         (WebCore::RenderThemeQt::setButtonPadding):
609         (WebCore::RenderThemeQt::adjustTextFieldStyle):
610         (WebCore::RenderThemeQt::paintTextField):
611         (WebCore::RenderThemeQt::adjustMenuListStyle):
612
613 2011-04-11  Abhishek Arya  <inferno@chromium.org>
614
615         Reviewed by Dave Hyatt.
616
617         Replace insertChildNode with addChild in handleRunIn's reparenting
618         of inlineRunIn to currBlock.
619         https://bugs.webkit.org/show_bug.cgi?id=58228
620
621         Use addChild instead of insertChildNode since it handles 
622         correct placement of the children, esp where we cannot insert
623         anything before the first child. e.g. details tag requires that its
624         first child be a summary child and won't be able to remove child if
625         that is not the case.
626
627         Test: fast/runin/runin-reparent-crash.html
628
629         * rendering/RenderBlock.cpp:
630         (WebCore::RenderBlock::handleRunInChild):
631
632 2011-04-12  Chris Fleizach  <cfleizach@apple.com>
633
634         Unreviewed. Fixing Leopard build.
635
636         REGRESSION: WK2: misspelled AX attributes no longer returned from text fields
637         https://bugs.webkit.org/show_bug.cgi?id=58304
638
639         checkTextOfParagraph is not available on Leopard. That code needs to be conditionalized with USE(UNIFIED_TEXT_CHECKING).
640
641         * accessibility/mac/AccessibilityObjectWrapper.mm:
642         (AXAttributeStringSetSpelling):
643
644 2011-04-12  Mario Sanchez Prada  <msanchez@igalia.com>
645
646         Unreviewed. Added missing files to GNUmakefile.list.am.
647
648         * GNUmakefile.list.am: Added IDBLevelDBBackingStore.[h|cpp].
649
650 2011-04-12  Cris Neckar  <cdn@chromium.org>
651
652         Reviewed by Nikolas Zimmermann.
653
654         Add handling for non-svg inline text boxes in text box lists.
655         https://bugs.webkit.org/show_bug.cgi?id=57933
656
657         Test: svg/text/svg-rtl-text-crash.html
658
659         * rendering/svg/RenderSVGInlineText.cpp:
660         (WebCore::RenderSVGInlineText::positionForPoint):
661         * rendering/svg/SVGInlineFlowBox.cpp:
662         (WebCore::SVGInlineFlowBox::computeTextMatchMarkerRectForRenderer):
663         * rendering/svg/SVGRenderTreeAsText.cpp:
664         (WebCore::writeSVGInlineTextBoxes):
665         * rendering/svg/SVGRootInlineBox.cpp:
666         (WebCore::SVGRootInlineBox::closestLeafChildForPosition):
667         (WebCore::reverseInlineBoxRangeAndValueListsIfNeeded):
668         * rendering/svg/SVGTextQuery.cpp:
669         (WebCore::SVGTextQuery::collectTextBoxesInFlowBox):
670
671 2011-04-12  Mario Sanchez Prada  <msanchez@igalia.com>
672
673         Reviewed by Chris Fleizach.
674
675         [GTK] Expose menu items and menus as children of a menu bar
676         https://bugs.webkit.org/show_bug.cgi?id=56659
677
678         Ensure menu items get exposed when they're children of menu bars.
679
680         * accessibility/AccessibilityRenderObject.cpp:
681         (WebCore::AccessibilityRenderObject::determineAriaRoleAttribute):
682         Consider menu bars as potential parent objects for menu items.
683
684 2011-04-12  Pavel Feldman  <pfeldman@google.com>
685
686         Reviewed by Yury Semikhatsky.
687
688         Web Inspector: remove scriptWorldType from the protocol.
689         https://bugs.webkit.org/show_bug.cgi?id=58324
690
691         * inspector/Inspector.json:
692         * inspector/InspectorDebuggerAgent.cpp:
693         (WebCore::InspectorDebuggerAgent::didParseSource):
694         * inspector/ScriptDebugListener.h:
695         (WebCore::ScriptDebugListener::~ScriptDebugListener):
696         * inspector/front-end/DebuggerModel.js:
697         (WebInspector.DebuggerModel.prototype._parsedScriptSource):
698         (WebInspector.DebuggerDispatcher.prototype.scriptParsed):
699         * inspector/front-end/Script.js:
700         (WebInspector.Script):
701         * inspector/front-end/ScriptsPanel.js:
702         * inspector/front-end/SourceFile.js:
703         (WebInspector.SourceFile):
704
705 2011-04-11  Dimitri Glazkov  <dglazkov@chromium.org>
706
707         Reviewed by Eric Carlson.
708
709         Should MediaControls::changedNetworkState fiddle with Fullscreen controls?
710         https://bugs.webkit.org/show_bug.cgi?id=58163
711
712         Covered by existing tests and manual-tests/media-controls.html.
713
714         * html/shadow/MediaControls.cpp:
715         (WebCore::MediaControls::reset): Moved fullscreen showing/hiding here.
716         (WebCore::MediaControls::changedNetworkState): ... from here.
717
718 2011-04-12  Ilya Tikhonovsky  <loislo@chromium.org>
719
720         Reviewed by Pavel Feldman.
721
722         Web Inspector: remove unnecessary method InspectorAgent.didEvaluateForTestInFrontend.
723         https://bugs.webkit.org/show_bug.cgi?id=58335
724
725         It was the method for Inspector layout tests.
726         We can use RuntimeAgent.evaluate instead.
727
728         * inspector/Inspector.json:
729         * inspector/InspectorAgent.cpp:
730         * inspector/InspectorAgent.h:
731         * inspector/InspectorController.cpp:
732         (WebCore::InspectorController::connectFrontend):
733         * inspector/front-end/TestController.js:
734         (WebInspector.TestController.prototype.notifyDone):
735
736 2011-04-12  Philippe Normand  <pnormand@igalia.com>
737
738         Reviewed by Martin Robinson.
739
740         [GStreamer] some public callbacks remain
741         https://bugs.webkit.org/show_bug.cgi?id=58307
742
743         Cleanup of the player public/private APIs. Moving the GstMessage
744         handling code inside of the player allowed some APIs to move to
745         the private scope of the class.
746
747         No new tests, this patch is a cleanup and should not affect
748         current tests coverage.
749
750         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
751         (WebCore::mediaPlayerPrivateMessageCallback):
752         (WebCore::mediaPlayerPrivateSourceChangedCallback):
753         (WebCore::mediaPlayerPrivateVolumeChangedCallback):
754         (WebCore::mediaPlayerPrivateMuteChangedCallback):
755         (WebCore::mediaPlayerPrivateRepaintCallback):
756         (WebCore::MediaPlayerPrivateGStreamer::playbackPosition):
757         (WebCore::MediaPlayerPrivateGStreamer::currentTime):
758         (WebCore::MediaPlayerPrivateGStreamer::seek):
759         (WebCore::MediaPlayerPrivateGStreamer::setRate):
760         (WebCore::MediaPlayerPrivateGStreamer::handleMessage):
761         (WebCore::MediaPlayerPrivateGStreamer::sourceChanged):
762         (WebCore::MediaPlayerPrivateGStreamer::triggerRepaint):
763         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h:
764
765 2011-04-12  Philippe Normand  <pnormand@igalia.com>
766
767         Reviewed by Martin Robinson.
768
769         [GStreamer] advertize HTTP Live Streaming mime-type
770         https://bugs.webkit.org/show_bug.cgi?id=58318
771
772         Register the hls mime-type in the internal cache if found in the
773         typefind factories.
774
775         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
776         (WebCore::mimeTypeCache):
777
778 2011-04-11  MORITA Hajime  <morrita@google.com>
779
780         Reviewed by Ryosuke Niwa.
781         
782         RenderIndicator and ShadowBlockElement are no longer used.
783         https://bugs.webkit.org/show_bug.cgi?id=58277
784
785         Removed RenderIndicator and ShadowBlockElement.
786         
787         No new tests. Just removed unused code.
788
789         * CMakeLists.txt:
790         * GNUmakefile.list.am:
791         * WebCore.gypi:
792         * WebCore.pro:
793         * WebCore.vcproj/WebCore.vcproj:
794         * WebCore.xcodeproj/project.pbxproj:
795         * rendering/RenderIndicator.cpp: Removed.
796         * rendering/RenderIndicator.h: Removed.
797         * rendering/RenderMeter.h:
798         * rendering/RenderingAllInOne.cpp:
799         * rendering/ShadowElement.cpp:
800         * rendering/ShadowElement.h:
801
802 2011-04-12  Csaba Osztrogonác  <ossy@webkit.org>
803
804         Reviewed by Benjamin Poulain.
805
806         fast/css/dashboard-regions-attr-crash.html asserts
807         https://bugs.webkit.org/show_bug.cgi?id=58233
808
809         Move DASHBOARD_SUPPORT feature detection from features.pri to CodeGenerators.pri
810         not to generate incorrect properties into CSSPropertyNames.h.
811
812         * CodeGenerators.pri:
813         * features.pri:
814
815 2011-04-12  Chris Fleizach  <cfleizach@apple.com>
816
817         Reviewed by Dan Bernstein.
818
819         REGRESSION: WK2: misspelled AX attributes no longer returned from text fields
820         https://bugs.webkit.org/show_bug.cgi?id=58304
821
822         checkSpellingOfString is no longer implemented in WK2. Accessibility needs to change to use
823         checkTextOfParagraph in order to retrieve misspelled ranges.
824
825         Existing tests cover this functionality.
826
827         * accessibility/mac/AccessibilityObjectWrapper.mm:
828         (AXAttributeStringSetSpelling):
829
830 2011-04-12  Sergio Villar Senin  <svillar@igalia.com>
831
832         Reviewed by Martin Robinson.
833
834         [GTK] Remove m_idleHandler from ResourceHandleSoup
835         https://bugs.webkit.org/show_bug.cgi?id=58319
836
837         The m_idleHandler attribute is no longer used in ResourceHandleSoup.
838         No new tests needed, no functionality change.
839
840         * platform/network/ResourceHandleInternal.h:
841         (WebCore::ResourceHandleInternal::ResourceHandleInternal):
842         * platform/network/soup/ResourceHandleSoup.cpp:
843         (WebCore::ResourceHandleInternal::~ResourceHandleInternal):
844
845 2011-04-12  Andrey Adaikin  <aandrey@google.com>
846
847         Reviewed by Yury Semikhatsky.
848
849         Web Inspector: Breakpoints and execution line decoration should stay in place if the edited line is not whitespace
850         https://bugs.webkit.org/show_bug.cgi?id=58314
851
852         * inspector/front-end/SourceFrame.js:
853         (WebInspector.SourceFrame.prototype._lineNumberAfterEditing):
854
855 2011-04-11  Pavel Podivilov  <podivilov@chromium.org>
856
857         Reviewed by Pavel Feldman.
858
859         Web Inspector: move shortcut handlers from SourceFrame to TextViewer.
860         https://bugs.webkit.org/show_bug.cgi?id=58238
861
862         Commit/cancel editing functionality is common for all resource types, and it deals with TextViewer state.
863
864         * inspector/front-end/SourceFrame.js:
865         (WebInspector.SourceFrame):
866         (WebInspector.SourceFrame.prototype.isContentEditable):
867         (WebInspector.SourceFrame.prototype._createTextViewer):
868         (WebInspector.SourceFrame.prototype.commitEditing.didEditContent):
869         (WebInspector.SourceFrame.prototype.commitEditing):
870         (WebInspector.SourceFrame.prototype.cancelEditing):
871         * inspector/front-end/TextViewer.js:
872         (WebInspector.TextViewer.prototype._doubleClick):
873         (WebInspector.TextViewer.prototype._registerShortcuts):
874         (WebInspector.TextViewer.prototype._handleKeyDown):
875         (WebInspector.TextViewer.prototype._commitEditing.didCommitEditing):
876         (WebInspector.TextViewer.prototype._commitEditing):
877         (WebInspector.TextViewer.prototype._cancelEditing):
878         (WebInspector.TextViewerDelegate.prototype.endEditing):
879         (WebInspector.TextViewerDelegate.prototype.commitEditing):
880         (WebInspector.TextViewerDelegate.prototype.cancelEditing):
881
882 2011-04-12  Pavel Feldman  <pfeldman@google.com>
883
884         Reviewed by Yury Semikhatsky.
885
886         Web Inspector: cookies view is empty even for sites with cookies.
887         https://bugs.webkit.org/show_bug.cgi?id=58316
888
889         Test: http/tests/inspector/resource-tree-model.html
890
891         * inspector/front-end/ResourceTreeModel.js:
892         (WebInspector.ResourceTreeModel.prototype._callForFrameResources):
893
894 2011-04-11  Stephen White  <senorblanco@chromium.org>
895
896         Reviewed by James Robinson.
897
898         [chromium] GPU-accelerated canvas-to-canvas drawImage is incorrect.
899         https://bugs.webkit.org/show_bug.cgi?id=58258
900
901         When one accelerated canvas is drawn to another via drawImage(), if the
902         prior call in the source canvas was non-accelerated, the 
903         hardware canvas is not up-to-date, and the results will be incorrect.
904         Fixed by calling prepareForHardwareDraw() on the source context.
905
906         Test: fast/canvas/canvas-to-canvas.html
907
908         * platform/graphics/skia/ImageBufferSkia.cpp:
909         (WebCore::ImageBuffer::draw):
910
911 2011-04-12  Mikhail Naganov  <mnaganov@chromium.org>
912
913         Reviewed by Pavel Feldman.
914
915         Web Inspector: [Chromium] Add some more tests for detailed heap snapshots UI.
916         https://bugs.webkit.org/show_bug.cgi?id=58146
917
918         Tests: inspector/profiler/detailed-heapshots-comparison-expansion-preserved-when-sorting.html
919                inspector/profiler/detailed-heapshots-comparison-show-all.html
920                inspector/profiler/detailed-heapshots-comparison-show-next.html
921                inspector/profiler/detailed-heapshots-comparison-shown-node-count-preserved-when-sorting.html
922                inspector/profiler/detailed-heapshots-comparison-sorting.html
923                inspector/profiler/detailed-heapshots-containment-shown-node-count-preserved-when-sorting.html
924                inspector/profiler/detailed-heapshots-dominators-expansion-preserved-when-sorting.html
925                inspector/profiler/detailed-heapshots-dominators-show-all.html
926                inspector/profiler/detailed-heapshots-dominators-show-next.html
927                inspector/profiler/detailed-heapshots-dominators-shown-node-count-preserved-when-sorting.html
928                inspector/profiler/detailed-heapshots-dominators-sorting.html
929                inspector/profiler/detailed-heapshots-summary-shown-node-count-preserved-when-sorting.html
930
931         * inspector/front-end/DetailedHeapshotView.js:
932         (WebInspector.HeapSnapshotDiffDataGrid):
933
934 2011-04-12  Ilya Tikhonovsky  <loislo@chromium.org>
935
936         Reviewed by Yury Semikhatsky.
937
938         Web Inspector: there was incorrect value of id property of responses for malformed json-rpc 2.0 requests.
939         https://bugs.webkit.org/show_bug.cgi?id=58305
940
941         It was 0 if the message is not a json object or it has no id property. But according to spec it must be null.
942
943         * inspector/CodeGeneratorInspector.pm:
944
945 2011-04-11  Pavel Podivilov  <podivilov@chromium.org>
946
947         Reviewed by Pavel Feldman.
948
949         Web Inspector: [chromium] script formatting doesn't work when chromium is built with debug_devtools=1.
950         https://bugs.webkit.org/show_bug.cgi?id=58232
951
952         * WebCore.gypi:
953
954 2011-04-12  Pavel Podivilov  <podivilov@chromium.org>
955
956         Reviewed by Pavel Feldman.
957
958         Web Inspector: REGRESSION: Most resources in the Network panel show a blank panel when clicked.
959         https://bugs.webkit.org/show_bug.cgi?id=58273
960
961         * inspector/front-end/SourceFrame.js:
962         (WebInspector.SourceFrame):
963         (WebInspector.SourceFrame.prototype.get visible):
964         (WebInspector.SourceFrame.prototype.set visible):
965         (WebInspector.SourceFrame.prototype.show):
966         (WebInspector.SourceFrame.prototype.hide):
967         (WebInspector.SourceFrame.prototype.detach):
968         (WebInspector.SourceFrame.prototype._ensureContentLoaded):
969         (WebInspector.SourceFrame.prototype.markDiff):
970         (WebInspector.SourceFrame.prototype.addMessage):
971         (WebInspector.SourceFrame.prototype.clearMessages):
972         (WebInspector.SourceFrame.prototype.get scrollTop):
973         (WebInspector.SourceFrame.prototype.set scrollTop):
974         (WebInspector.SourceFrame.prototype.highlightLine):
975         (WebInspector.SourceFrame.prototype._clearLineHighlight):
976         (WebInspector.SourceFrame.prototype._initializeTextViewer):
977         (WebInspector.SourceFrame.prototype.performSearch):
978         (WebInspector.SourceFrame.prototype.searchCanceled):
979         (WebInspector.SourceFrame.prototype._jumpToSearchResult):
980         (WebInspector.SourceFrame.prototype.setExecutionLine):
981         (WebInspector.SourceFrame.prototype.clearExecutionLine):
982         (WebInspector.SourceFrame.prototype.resize):
983
984 2011-04-12  Pavel Feldman  <pfeldman@google.com>
985
986         Reviewed by Yury Semikhatsky.
987
988         Web Inspector: document runtime agent, share remote object definition between domains.
989         https://bugs.webkit.org/show_bug.cgi?id=58246
990
991         * inspector/Inspector.json:
992
993 2011-04-12  Pavel Feldman  <pfeldman@google.com>
994
995         Reviewed by Yury Semikhatsky.
996
997         Web Inspector: document console domain, support cross-domain type references.
998         https://bugs.webkit.org/show_bug.cgi?id=58240
999
1000         * inspector/ConsoleMessage.cpp:
1001         (WebCore::messageSourceValue):
1002         (WebCore::messageTypeValue):
1003         (WebCore::messageLevelValue):
1004         (WebCore::ConsoleMessage::addToFrontend):
1005         * inspector/Inspector.json:
1006         * inspector/ScriptCallFrame.cpp:
1007         (WebCore::ScriptCallFrame::buildInspectorObject):
1008         * inspector/front-end/ConsoleView.js:
1009         (WebInspector.ConsoleView.prototype._registerConsoleDomainDispatcher.dispatcher.messageAdded):
1010         (WebInspector.ConsoleMessage):
1011         (WebInspector.ConsoleMessage.prototype._populateStackTraceTreeElement):
1012         (WebInspector.ConsoleMessage.prototype.isEqual):
1013         * inspector/front-end/NetworkManager.js:
1014         (WebInspector.NetworkDispatcher.prototype.requestWillBeSent):
1015         * inspector/generate-inspector-idl:
1016         * page/Console.h:
1017
1018 2011-04-06  Philippe Normand  <pnormand@igalia.com>
1019
1020         Reviewed by Martin Robinson.
1021
1022         [GStreamer] RTSP playback broken
1023         https://bugs.webkit.org/show_bug.cgi?id=56930
1024
1025         Rely on {audio,video}-changed playbin2 signals instead of the
1026         -tags-changed signals because some media don't provide tags and
1027         then can trick the media-player to not paint video, for instance.
1028
1029         Also trigger a video size calculation after the video sink
1030         negotiated its caps. This is useful in the cases where
1031         audio-changed signal is emitted but the video sink takes more time
1032         to negociate caps with its peer.
1033
1034         This patch also fixes the rtsp manual-test with a new stream url
1035         which seems to be more permanent than the previous WWDC keynote
1036         stream.
1037
1038         * manual-tests/video-rtsp.html:
1039         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
1040         (WebCore::mediaPlayerPrivateVideoChangedCallback):
1041         (WebCore::mediaPlayerPrivateAudioChangedCallback):
1042         (WebCore::mediaPlayerPrivateAudioChangeTimeoutCallback):
1043         (WebCore::mediaPlayerPrivateVideoChangeTimeoutCallback):
1044         (WebCore::MediaPlayerPrivateGStreamer::MediaPlayerPrivateGStreamer):
1045         (WebCore::MediaPlayerPrivateGStreamer::~MediaPlayerPrivateGStreamer):
1046         (WebCore::MediaPlayerPrivateGStreamer::naturalSize):
1047         (WebCore::MediaPlayerPrivateGStreamer::videoChanged):
1048         (WebCore::MediaPlayerPrivateGStreamer::notifyPlayerOfVideo):
1049         (WebCore::MediaPlayerPrivateGStreamer::audioChanged):
1050         (WebCore::MediaPlayerPrivateGStreamer::notifyPlayerOfAudio):
1051         (WebCore::MediaPlayerPrivateGStreamer::paint):
1052         (WebCore::MediaPlayerPrivateGStreamer::createGSTPlayBin):
1053         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h:
1054
1055 2011-04-12  Vsevolod Vlasov  <vsevik@chromium.org>
1056
1057         Reviewed by Pavel Feldman.
1058
1059         Web Inspector: Failed/canceled resource requests kept showing as Pending in network panel.
1060         https://bugs.webkit.org/show_bug.cgi?id=58135
1061
1062         Added statuses for failed/canceled resource loading.
1063
1064         * English.lproj/localizedStrings.js:
1065         * inspector/Inspector.json:
1066         * inspector/InspectorResourceAgent.cpp:
1067         (WebCore::InspectorResourceAgent::didFailLoading):
1068         * inspector/front-end/NetworkManager.js:
1069         * inspector/front-end/NetworkPanel.js:
1070         * inspector/front-end/Resource.js:
1071
1072 2011-04-12  Steve Block  <steveblock@google.com>
1073
1074         Reviewed by Oliver Hunt.
1075
1076         Callable objects created via JavaScriptCore API cannot be used as Geolocation callbacks
1077         https://bugs.webkit.org/show_bug.cgi?id=40012
1078
1079         Covered by fast/dom/Geolocation/argument-types.html
1080
1081         * bindings/js/CallbackFunction.cpp:
1082         (WebCore::checkFunctionOnlyCallback):
1083
1084 2011-04-07  Philippe Normand  <pnormand@igalia.com>
1085
1086         Reviewed by Martin Robinson.
1087
1088         [GStreamer] report playback statistics
1089         https://bugs.webkit.org/show_bug.cgi?id=58033
1090
1091         Provide media playback statistics using fpsdisplaysink and
1092         position queries.
1093
1094         * manual-tests/video-statistics.html: Added.
1095         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
1096         (WebCore::MediaPlayerPrivateGStreamer::decodedFrameCount):
1097         (WebCore::MediaPlayerPrivateGStreamer::droppedFrameCount):
1098         (WebCore::MediaPlayerPrivateGStreamer::audioDecodedByteCount):
1099         (WebCore::MediaPlayerPrivateGStreamer::videoDecodedByteCount):
1100         (WebCore::MediaPlayerPrivateGStreamer::updateAudioSink):
1101         (WebCore::MediaPlayerPrivateGStreamer::updateStates):
1102         (WebCore::MediaPlayerPrivateGStreamer::createGSTPlayBin):
1103         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h:
1104
1105 2011-04-11  Philippe Normand  <pnormand@igalia.com>
1106
1107         Reviewed by Martin Robinson.
1108
1109         [GStreamer] warnings in media/video-set-rate-from-pause.html
1110         https://bugs.webkit.org/show_bug.cgi?id=58220
1111
1112         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
1113         (WebCore::MediaPlayerPrivateGStreamer::setRate): Pause the
1114         pipeline if new rate is zero, like advised in the GStreamer
1115         documentation of gst_event_new_seek().
1116
1117 2011-04-11  Vangelis Kokkevis  <vangelis@chromium.org>
1118
1119         Reviewed by James Robinson.
1120
1121         [chromium] Properly invalidate the contents of ImageLayerChromium's
1122         when the actual image contents change.
1123         https://bugs.webkit.org/show_bug.cgi?id=58181
1124
1125         Test: compositing/images/content-image-change.html
1126
1127         * platform/graphics/chromium/ContentLayerChromium.cpp:
1128         (WebCore::ContentLayerChromium::updateTexture):
1129         * platform/graphics/chromium/ImageLayerChromium.cpp:
1130         (WebCore::ImageLayerChromium::ImageLayerChromium):
1131         (WebCore::ImageLayerChromium::setContents):
1132         (WebCore::ImageLayerChromium::paintContentsIfDirty):
1133         * platform/graphics/chromium/ImageLayerChromium.h:
1134
1135 2011-04-11  Simon Fraser  <simon.fraser@apple.com>
1136
1137         Reviewed by Dan Bernstein.
1138
1139         -webkit-box-shadow:inset does not animate transform as an inset shadow
1140         https://bugs.webkit.org/show_bug.cgi?id=45176
1141         
1142         Two fixes:
1143         1. Don't run transitions between different shadow styles (normal vs. inset).
1144         2. When either source or destination is null, use a default shadow with a
1145         matching style so that the transition runs.
1146
1147         Test: transitions/mismatched-shadow-styles.html
1148
1149         * page/animation/AnimationBase.cpp:
1150         (WebCore::blendFunc):
1151         (WebCore::PropertyWrapperShadow::blend):
1152
1153 2011-04-11  John Bates  <jbates@google.com>
1154
1155         Reviewed by Kenneth Russell.
1156
1157         chromium support for glSetLatch and glWaitLatch between 3D contexts
1158         https://bugs.webkit.org/show_bug.cgi?id=58003
1159
1160         * platform/graphics/chromium/Canvas2DLayerChromium.cpp:
1161         (WebCore::Canvas2DLayerChromium::~Canvas2DLayerChromium):
1162         (WebCore::Canvas2DLayerChromium::setDrawingBuffer):
1163         (WebCore::Canvas2DLayerChromium::setLayerRenderer):
1164         * platform/graphics/chromium/Canvas2DLayerChromium.h:
1165         * platform/graphics/chromium/Extensions3DChromium.h:
1166         * platform/graphics/chromium/GLES2Canvas.cpp:
1167         (WebCore::Cubic::Cubic):
1168         * platform/graphics/chromium/LayerRendererChromium.cpp:
1169         (WebCore::LayerRendererChromium::LayerRendererChromium):
1170         (WebCore::LayerRendererChromium::updateAndDrawLayers):
1171         (WebCore::LayerRendererChromium::updateLayers):
1172         (WebCore::LayerRendererChromium::addChildContext):
1173         (WebCore::LayerRendererChromium::removeChildContext):
1174         * platform/graphics/chromium/LayerRendererChromium.h:
1175         * platform/graphics/chromium/WebGLLayerChromium.cpp:
1176         (WebCore::WebGLLayerChromium::~WebGLLayerChromium):
1177         (WebCore::WebGLLayerChromium::updateCompositorResources):
1178         (WebCore::WebGLLayerChromium::setContext):
1179         (WebCore::WebGLLayerChromium::setLayerRenderer):
1180         * platform/graphics/chromium/WebGLLayerChromium.h:
1181
1182 2011-04-11  Alexey Marinichev  <amarinichev@chromium.org>
1183
1184         Reviewed by James Robinson.
1185
1186         LayerChromium/CCLayerImpl ownership fix
1187         https://bugs.webkit.org/show_bug.cgi?id=58283
1188
1189         CCLayerImpl's m_owner field lifetime should match the lifetime of the
1190         corresponding LayerChromium.  This change moves resetting of m_owner
1191         into LayerChromium's destructor.
1192
1193         Tested similarly to bug 57577.
1194
1195         * platform/graphics/chromium/LayerChromium.cpp:
1196         (WebCore::LayerChromium::~LayerChromium):
1197         * platform/graphics/chromium/cc/CCLayerImpl.cpp:
1198         (WebCore::CCLayerImpl::cleanupResources):
1199         * platform/graphics/chromium/cc/CCLayerImpl.h:
1200         (WebCore::CCLayerImpl::resetOwner):
1201
1202 2011-04-11  Daniel Bates  <dbates@rim.com>
1203
1204         Attempt to fix the GTK build after changeset 83527 <http://trac.webkit.org/changeset/83527>
1205         (https://bugs.webkit.org/show_bug.cgi?id=53556).
1206
1207         * GNUmakefile.list.am: Append files HTMLTrackElement.{h, cpp} to the list webcore_sources.
1208
1209 2011-04-11  Brady Eidson  <beidson@apple.com>
1210
1211         Reviewed by Maciej Stachowiak.
1212
1213         <rdar://problem/9251515> and https://bugs.webkit.org/show_bug.cgi?id=58072
1214         URLs accessed as a result of pushState/replaceState should count as "visited" and be in the global history
1215
1216         Test: fast/loader/stateobjects/state-url-sets-links-visited.html
1217
1218         * loader/HistoryController.cpp:
1219         (WebCore::HistoryController::pushState): Notify the history client and add the visited link.
1220         (WebCore::HistoryController::replaceState): Ditto.
1221
1222 2011-04-11  Dimitri Glazkov  <dglazkov@chromium.org>
1223
1224         Reviewed by Eric Carlson.
1225
1226         Rename MediaControls to MediaControlRootElement.
1227         https://bugs.webkit.org/show_bug.cgi?id=58250
1228
1229         Mechanical move using do-webcore-rename.
1230
1231 2011-04-11  Dean Jackson  <dino@apple.com>
1232
1233         Reviewed by Simon Fraser.
1234
1235         https://bugs.webkit.org/show_bug.cgi?id=58285
1236         CompositeAnimation is cleared while an AnimationBase is waiting for notification
1237
1238         Occasionally hardware animations would trigger a state where
1239         they would tell the AnimationControllerPrivate that it should notify
1240         any waiting animations that they are ready to start, even though
1241         the RenderObject had gone away and hence the CompositeAnimation
1242         had been destroyed. The fix is to zero the pointer from AnimationBase
1243         when the CompositeAnimation destructor runs (or its animations are
1244         cleared) and test the validity of the CompositeAnimation before it
1245         is used in AnimationBase.
1246
1247         * page/animation/AnimationBase.cpp:
1248         (WebCore::AnimationBase::updateStateMachine):
1249         (WebCore::AnimationBase::fireAnimationEventsIfNeeded):
1250         (WebCore::AnimationBase::updatePlayState):
1251         (WebCore::AnimationBase::freezeAtTime):
1252         (WebCore::AnimationBase::beginAnimationUpdateTime):
1253         - test that the CompositeAnimation exists
1254         * page/animation/AnimationBase.h:
1255         (WebCore::AnimationBase::clear):
1256         - rename clearRenderer() to clear() as it now also clears the CompositeAnimation
1257         * page/animation/CompositeAnimation.cpp:
1258         (WebCore::CompositeAnimation::clearRenderer):
1259         (WebCore::CompositeAnimation::updateKeyframeAnimations):
1260         - call clear() rather than clearRenderer()
1261
1262 2011-04-11  Justin Novosad  <junov@chromium.org>
1263
1264         Reviewed by Kenneth Russell.
1265
1266         [Chromium] Text anti-aliasing fails when rendering text with shadow
1267         https://bugs.webkit.org/show_bug.cgi?id=57584
1268
1269         * platform/graphics/chromium/FontChromiumWin.cpp:
1270         (WebCore::drawGlyphsWin): new static function, code factored-out
1271         from WebCore::Font::drawGlyphs
1272         (WebCore::Font::drawGlyphs): may separate font rendering into two
1273         passes to allow foreground glyphs to be rendered with GDI when Skia 
1274         is required for rendering shadows
1275         * platform/graphics/skia/SkiaFontWin.cpp:
1276         (WebCore::windowsCanHandleDrawTextShadow):
1277         Modified method so that it does not assume a shadow is present, and
1278         returns true if there is no shadow (GDI can draw 'no shadow')
1279         (WebCore::windowsCanHandleTextDrawing):
1280         Factored out into sub methods so that the the shadow and foregound
1281         glyph properties can be tested separately independently.
1282         (WebCore::windowsCanHandleTextDrawingWithoutShadow):
1283         New method returns true if the foreground glyph only has effect
1284         that can be draw with GDI
1285         (WebCore::paintSkiaText):
1286         * platform/graphics/skia/SkiaFontWin.h:
1287
1288 2011-04-11  Ryosuke Niwa  <rniwa@webkit.org>
1289
1290         Unreviewed, rolling out r83515.
1291         http://trac.webkit.org/changeset/83515
1292         https://bugs.webkit.org/show_bug.cgi?id=57178
1293
1294         Broke GTK builds. nextOnLineExists and prevOnLineExists are still used in AccessibilityObjectWrapperAtk.cpp.
1295
1296         * rendering/InlineBox.cpp:
1297         (WebCore::InlineBox::nextOnLineExists):
1298         (WebCore::InlineBox::prevOnLineExists):
1299         * rendering/InlineBox.h:
1300         (WebCore::InlineBox::InlineBox):
1301
1302 2011-04-11  Brady Eidson  <beidson@apple.com>
1303
1304         Reverting, seeing something else still broken.  Sorry.
1305
1306         * html/HTMLTrackElement.cpp:
1307
1308 2011-04-11  Brady Eidson  <beidson@apple.com>
1309
1310         Fix the build.
1311
1312         * html/HTMLTrackElement.cpp: Case-sensitive, please.
1313
1314 2011-04-11  Alexis Menard  <alexis.menard@openbossa.org>
1315
1316         Unreviewed build fix for Mac.
1317
1318         An idl file was added in the wrong place.
1319
1320         * WebCore.xcodeproj/project.pbxproj:
1321
1322 2011-04-11  Chris Marrin  <cmarrin@apple.com>
1323
1324         Rubberstamped by Dan Bernstein.
1325
1326         xhr.responseType = 'arraybuffer' works on Mac but not on Windows
1327         https://bugs.webkit.org/show_bug.cgi?id=50334
1328
1329         Got rid of guards around arraybuffer logic in XHR. ArrayBuffer and friends
1330         are always turned on now, so there's not need for the guard. I reenabled the
1331         test that was Skipped on Windows and it works now.
1332
1333         * bindings/js/JSXMLHttpRequestCustom.cpp:
1334         (WebCore::JSXMLHttpRequest::markChildren):
1335         (WebCore::JSXMLHttpRequest::send):
1336         (WebCore::JSXMLHttpRequest::response):
1337         * xml/XMLHttpRequest.cpp:
1338         (WebCore::XMLHttpRequest::responseArrayBuffer):
1339         (WebCore::XMLHttpRequest::setResponseType):
1340         (WebCore::XMLHttpRequest::send):
1341         (WebCore::XMLHttpRequest::clearResponseBuffers):
1342         (WebCore::XMLHttpRequest::didReceiveData):
1343         * xml/XMLHttpRequest.h:
1344         (WebCore::XMLHttpRequest::optionalResponseArrayBuffer):
1345
1346 2011-04-11  Anna Cavender  <annacc@chromium.org>
1347
1348         Reviewed by Eric Carlson.
1349
1350         Setup ENABLE(TRACK) feature define + initial HTMLTrackElement
1351         https://bugs.webkit.org/show_bug.cgi?id=53556
1352
1353         No new tests. No real functionality added just yet.
1354
1355         * CMakeLists.txt:
1356         * CodeGenerators.pri:
1357         * Configurations/FeatureDefines.xcconfig:
1358         * DerivedSources.make:
1359         * GNUmakefile.am:
1360         * GNUmakefile.list.am:
1361         * WebCore.gypi:
1362         * WebCore.xcodeproj/project.pbxproj:
1363         * features.pri:
1364         * html/HTMLAttributeNames.in:
1365         * html/HTMLTagNames.in:
1366         * html/HTMLTrackElement.cpp: Added.
1367         (WebCore::HTMLTrackElement::HTMLTrackElement):
1368         (WebCore::HTMLTrackElement::create):
1369         (WebCore::HTMLTrackElement::insertedIntoTree):
1370         (WebCore::HTMLTrackElement::willRemove):
1371         (WebCore::HTMLTrackElement::src):
1372         (WebCore::HTMLTrackElement::setSrc):
1373         (WebCore::HTMLTrackElement::kind):
1374         (WebCore::HTMLTrackElement::setKind):
1375         (WebCore::HTMLTrackElement::srclang):
1376         (WebCore::HTMLTrackElement::setSrclang):
1377         (WebCore::HTMLTrackElement::label):
1378         (WebCore::HTMLTrackElement::setLabel):
1379         (WebCore::HTMLTrackElement::isDefault):
1380         (WebCore::HTMLTrackElement::setIsDefault):
1381         (WebCore::HTMLTrackElement::isURLAttribute):
1382         * html/HTMLTrackElement.h: Added.
1383         * html/HTMLTrackElement.idl: Added.
1384
1385 2011-04-11  Ben Taylor  <bentaylor.solx86@gmail.com>
1386
1387         Reviewed by David Levin.
1388
1389         https://bugs.webkit.org/show_bug.cgi?id=57535
1390
1391         Better compile fix for Solaris 10/Sun Studio 12 CC 
1392         needing <sys/time.h>
1393
1394         * loader/icon/IconRecord.h:
1395         * page/Page.h:
1396         * platform/network/ResourceResponseBase.h:
1397
1398 2011-04-11  Alexey Proskuryakov  <ap@apple.com>
1399
1400         Reviewed by Maciej Stachowiak.
1401
1402         WebKit2: Cannot use Ctrl-Delete as a custom keyboard shortcut
1403         https://bugs.webkit.org/show_bug.cgi?id=58265
1404         <rdar://problem/9221468>
1405
1406         * page/EventHandler.cpp:
1407         (WebCore::EventHandler::defaultKeyboardEventHandler): Handle Backspace.
1408         (WebCore::EventHandler::defaultSpaceEventHandler): Enabled this on Mac, and added checks for
1409         other modifiers - no one wants to scroll on Ctrl+Alt+Space and such.
1410         (WebCore::EventHandler::defaultBackspaceEventHandler): Backspace goes back, Shift-backspace
1411         goes forward. All browsers do it.
1412         (WebCore::EventHandler::defaultArrowEventHandler): Assert that this function was called
1413         for a correct event.
1414         (WebCore::EventHandler::defaultTabEventHandler): Ditto.
1415
1416         * page/EventHandler.h: Added defaultBackspaceEventHandler.
1417
1418 2011-04-11  Matthew Delaney  <mdelaney@apple.com>
1419
1420         Reviewed by Dan Bernstein.
1421
1422         [CG] drawImage with a subimage bleeds pixel data at borders
1423         https://bugs.webkit.org/show_bug.cgi?id=58267
1424
1425         Test: fast/canvas/DrawImageSinglePixelStretch.html
1426
1427         * platform/graphics/cg/ImageCG.cpp:
1428         (WebCore::BitmapImage::draw): Any interpolation quality other than 'none' will graft out the subimage first now.
1429
1430 2011-04-11  Chris Marrin  <cmarrin@apple.com>
1431
1432         Reviewed by Simon Fraser.
1433
1434         iframe/compositing propagation should also work for <object> and framesets
1435         https://bugs.webkit.org/show_bug.cgi?id=39037
1436
1437         Generalized the code that handles the parenting of composited <iframe> elements
1438         to include <frame> and <object> elements. This includes forcing the parent
1439         element to be composited and constructing the layer tree in the child document
1440         and properly parenting it. Much of the change is giving the function calls more
1441         generic names (from ...IFrame... to ...Frame...)
1442         
1443         Compositing tests that were done in RenderIFrame have been moved to RenderPart
1444         since this is the highest base class common to all 3 elements.
1445         
1446         I also renamed several ...IFrame... functions to
1447         ...Frame... and changed them so they work on a RenderPart for determining
1448         if the renderer is composited. One other detail is that <iframe> and 
1449         <object> never share style since they might be composited. I had to add
1450         <frame> to that list.
1451
1452         Tests: compositing/framesets/composited-frame-alignment.html
1453                compositing/objects/composited-object-alignment.html
1454
1455         * css/CSSStyleSelector.cpp: Add <frame> to list of element types that should never share style since it might be composited.
1456         (WebCore::CSSStyleSelector::canShareStyleWithElement):
1457         * page/FrameView.cpp:
1458         (WebCore::FrameView::hasCompositedContentIncludingDescendants):
1459         (WebCore::FrameView::setIsOverlapped):
1460         * rendering/RenderIFrame.cpp: Moved methods to RenderPart
1461         * rendering/RenderIFrame.h:
1462         * rendering/RenderLayerBacking.cpp:
1463         (WebCore::RenderLayerBacking::updateAfterWidgetResize):
1464         (WebCore::RenderLayerBacking::updateGraphicsLayerConfiguration):
1465         (WebCore::RenderLayerBacking::paintingGoesToWindow):
1466         * rendering/RenderLayerCompositor.cpp:
1467         (WebCore::RenderLayerCompositor::updateBacking):
1468         (WebCore::RenderLayerCompositor::rebuildCompositingLayerTree):
1469         (WebCore::RenderLayerCompositor::frameContentsCompositor):
1470         (WebCore::RenderLayerCompositor::parentFrameContentLayers):
1471         (WebCore::RenderLayerCompositor::didMoveOnscreen):
1472         (WebCore::RenderLayerCompositor::allowsIndependentlyCompositedFrames):
1473         (WebCore::RenderLayerCompositor::shouldPropagateCompositingToEnclosingFrame):
1474         (WebCore::RenderLayerCompositor::enclosingFrameElement):
1475         (WebCore::RenderLayerCompositor::requiresCompositingLayer):
1476         (WebCore::RenderLayerCompositor::requiresCompositingForFrame):
1477         (WebCore::RenderLayerCompositor::requiresScrollLayer):
1478         (WebCore::RenderLayerCompositor::ensureRootPlatformLayer):
1479         (WebCore::RenderLayerCompositor::attachRootPlatformLayer):
1480         (WebCore::RenderLayerCompositor::detachRootPlatformLayer):
1481         * rendering/RenderLayerCompositor.h:
1482         * rendering/RenderPart.cpp: Functions moved from RenderIFrame
1483         (WebCore::RenderPart::requiresLayer):
1484         (WebCore::RenderPart::requiresAcceleratedCompositing):
1485         * rendering/RenderPart.h:
1486
1487 2011-04-11  Yael Aharon  <yael.aharon@nokia.com>
1488
1489         Reviewed by Eric Seidel.
1490
1491         InlineBox::prevOnline and InlineBox::prevOnlineExists() are confusing and should be renamed
1492         https://bugs.webkit.org/show_bug.cgi?id=57178
1493
1494         Remove prevOnLineExists() and nextOnLineExists() as they are not used anymore.
1495         No new tests needed because this is cleanup only.
1496
1497         * rendering/InlineBox.cpp:
1498         * rendering/InlineBox.h:
1499         (WebCore::InlineBox::InlineBox):
1500         (WebCore::InlineBox::setPrevOnLine):
1501
1502 2011-04-11  David Hyatt  <hyatt@apple.com>
1503
1504         Reviewed by Dan Bernstein.
1505
1506         https://bugs.webkit.org/show_bug.cgi?id=58261
1507
1508         Fix for layout regression on marketwatch.com. When I converted TrailingFloatsRootInlineBox over
1509         to the new overflow model, I messed up the math and passed a bottom value where I should have
1510         passed a height value. This patch fixes the code to be logically equivalent to the way it
1511         was prior to my changes.
1512
1513         Added fast/overflow/trailing-float-linebox.html.
1514
1515         * rendering/RenderBlockLineLayout.cpp:
1516         (WebCore::RenderBlock::layoutInlineChildren):
1517
1518 2011-04-11  Adrienne Walker  <enne@google.com>
1519
1520         Unreviewed, rolling out r83500.
1521         http://trac.webkit.org/changeset/83500
1522         https://bugs.webkit.org/show_bug.cgi?id=57113
1523
1524         Regresses huge-layer-rotated test
1525
1526         * platform/graphics/chromium/ContentLayerChromium.cpp:
1527         (WebCore::ContentLayerChromium::ContentLayerChromium):
1528         (WebCore::ContentLayerChromium::~ContentLayerChromium):
1529         (WebCore::ContentLayerChromium::cleanupResources):
1530         (WebCore::ContentLayerChromium::requiresClippedUpdateRect):
1531         (WebCore::ContentLayerChromium::paintContentsIfDirty):
1532         (WebCore::ContentLayerChromium::resizeUploadBuffer):
1533         (WebCore::ContentLayerChromium::updateTextureIfNeeded):
1534         (WebCore::ContentLayerChromium::updateTexture):
1535         (WebCore::ContentLayerChromium::draw):
1536         (WebCore::ContentLayerChromium::updateCompositorResources):
1537         (WebCore::ContentLayerChromium::unreserveContentsTexture):
1538         (WebCore::ContentLayerChromium::bindContentsTexture):
1539         (WebCore::ContentLayerChromium::dumpLayerProperties):
1540         * platform/graphics/chromium/ContentLayerChromium.h:
1541         (WebCore::ContentLayerChromium::drawsContent):
1542         * platform/graphics/chromium/GraphicsLayerChromium.cpp:
1543         (WebCore::GraphicsLayerChromium::setMaskLayer):
1544         * platform/graphics/chromium/ImageLayerChromium.cpp:
1545         (WebCore::ImageLayerChromium::paintContentsIfDirty):
1546         (WebCore::ImageLayerChromium::updateTextureIfNeeded):
1547         * platform/graphics/chromium/ImageLayerChromium.h:
1548         * platform/graphics/chromium/LayerChromium.h:
1549         (WebCore::LayerChromium::draw):
1550         * platform/graphics/chromium/LayerRendererChromium.cpp:
1551         (WebCore::LayerRendererChromium::drawRootLayer):
1552         (WebCore::LayerRendererChromium::drawLayers):
1553         (WebCore::LayerRendererChromium::paintContentsRecursive):
1554         (WebCore::LayerRendererChromium::copyOffscreenTextureToDisplay):
1555         (WebCore::LayerRendererChromium::drawLayer):
1556         (WebCore::LayerRendererChromium::initializeSharedObjects):
1557         (WebCore::LayerRendererChromium::cleanupSharedObjects):
1558         * platform/graphics/chromium/LayerRendererChromium.h:
1559         (WebCore::LayerRendererChromium::contentLayerProgram):
1560         * platform/graphics/chromium/LayerTilerChromium.cpp:
1561         (WebCore::LayerTilerChromium::invalidateRect):
1562         (WebCore::LayerTilerChromium::update):
1563         (WebCore::LayerTilerChromium::updateFromPixels):
1564         (WebCore::LayerTilerChromium::draw):
1565         * platform/graphics/chromium/LayerTilerChromium.h:
1566         * platform/graphics/chromium/PlatformCanvas.cpp:
1567         (WebCore::PlatformCanvas::AutoLocker::AutoLocker):
1568         (WebCore::PlatformCanvas::Painter::Painter):
1569         * platform/graphics/chromium/PlatformCanvas.h:
1570         * platform/graphics/chromium/RenderSurfaceChromium.cpp:
1571         (WebCore::RenderSurfaceChromium::draw):
1572         * platform/graphics/chromium/RenderSurfaceChromium.h:
1573         * platform/graphics/chromium/cc/CCCanvasLayerImpl.cpp:
1574         (WebCore::CCCanvasLayerImpl::draw):
1575         * platform/graphics/chromium/cc/CCCanvasLayerImpl.h:
1576         * platform/graphics/chromium/cc/CCHeadsUpDisplay.cpp:
1577         (WebCore::CCHeadsUpDisplay::draw):
1578         * platform/graphics/chromium/cc/CCLayerImpl.cpp:
1579         (WebCore::CCLayerImpl::draw):
1580         * platform/graphics/chromium/cc/CCLayerImpl.h:
1581         * platform/graphics/chromium/cc/CCPluginLayerImpl.cpp:
1582         (WebCore::CCPluginLayerImpl::draw):
1583         * platform/graphics/chromium/cc/CCPluginLayerImpl.h:
1584         * platform/graphics/chromium/cc/CCVideoLayerImpl.cpp:
1585         (WebCore::CCVideoLayerImpl::draw):
1586         * platform/graphics/chromium/cc/CCVideoLayerImpl.h:
1587
1588 2011-04-11  Jon Honeycutt  <jhoneycutt@apple.com>
1589
1590         <rdar://problem/9267042> Assertion failure on launch in
1591         LayerChangesFlusher::setHook().
1592
1593         https://bugs.webkit.org/show_bug.cgi?id=58270
1594
1595         Reviewed by Adam Roben.
1596
1597         * platform/graphics/ca/win/LayerChangesFlusher.cpp:
1598         (WebCore::LayerChangesFlusher::setHook):
1599         MSDN says that the HINSTANCE passed in must be null if the thread ID
1600         passed is a thread created by this process and the hook procedure is
1601         within this process.
1602
1603 2011-04-11  MORITA Hajime  <morrita@google.com>
1604
1605         Unreviewed build fix.
1606
1607         Changeset 83492 broke Leopard build.
1608         https://bugs.webkit.org/show_bug.cgi?id=58268
1609
1610         * editing/Editor.cpp:
1611         (WebCore::Editor::markMisspellingsAfterTypingToWord):
1612
1613 2011-03-25  Adrienne Walker  <enne@google.com>
1614
1615         Reviewed by James Robinson.
1616
1617         [chromium] Tile content and image layers
1618         https://bugs.webkit.org/show_bug.cgi?id=57113
1619
1620         Layers tile by default if any dimension is larger than 512.  Smaller
1621         layers are contained within a single texture but still use the tiler
1622         infrastructure so that there's only one code path.
1623
1624         Remove large layer support from content layers.  Content layers no
1625         longer own a platform canvas--they own a tiler.  Refactor tiler to
1626         allow for better separation of update/upload/paint.  Add rect
1627         parameter to update and draw functions on layers for the layer-space
1628         rect of interest.  This is necessary to know which tiles need to be
1629         drawn.
1630
1631         * platform/graphics/chromium/ContentLayerChromium.cpp:
1632         (WebCore::ContentLayerChromium::ContentLayerChromium):
1633         (WebCore::ContentLayerChromium::~ContentLayerChromium):
1634         (WebCore::ContentLayerPainter::ContentLayerPainter):
1635         (WebCore::ContentLayerPainter::paint):
1636         (WebCore::ContentLayerChromium::paintContentsIfDirty):
1637         (WebCore::ContentLayerChromium::setLayerRenderer):
1638         (WebCore::ContentLayerChromium::tilingTransform):
1639         (WebCore::ContentLayerChromium::visibleLayerRect):
1640         (WebCore::ContentLayerChromium::layerBounds):
1641         (WebCore::ContentLayerChromium::updateLayerSize):
1642         (WebCore::ContentLayerChromium::draw):
1643         (WebCore::ContentLayerChromium::createTilerIfNeeded):
1644         (WebCore::ContentLayerChromium::updateCompositorResources):
1645         (WebCore::ContentLayerChromium::setTilingOption):
1646         (WebCore::ContentLayerChromium::bindContentsTexture):
1647         (WebCore::ContentLayerChromium::unreserveContentsTexture):
1648         (WebCore::ContentLayerChromium::setIsMask):
1649         (WebCore::ContentLayerChromium::dumpLayerProperties):
1650         * platform/graphics/chromium/ContentLayerChromium.h:
1651         (WebCore::ContentLayerChromium::drawsContent):
1652         * platform/graphics/chromium/GraphicsLayerChromium.cpp:
1653         (WebCore::GraphicsLayerChromium::setMaskLayer):
1654         * platform/graphics/chromium/ImageLayerChromium.cpp:
1655         (WebCore::ImageLayerChromium::paintContentsIfDirty):
1656         (WebCore::ImageLayerChromium::updateCompositorResources):
1657         (WebCore::ImageLayerChromium::layerBounds):
1658         (WebCore::ImageLayerChromium::tilingTransform):
1659         * platform/graphics/chromium/ImageLayerChromium.h:
1660         * platform/graphics/chromium/LayerChromium.h:
1661         (WebCore::LayerChromium::invalidateRect):
1662         (WebCore::LayerChromium::paintContentsIfDirty):
1663         (WebCore::LayerChromium::setIsMask):
1664         (WebCore::LayerChromium::draw):
1665         * platform/graphics/chromium/LayerRendererChromium.cpp:
1666         (WebCore::LayerRendererChromium::drawRootLayer):
1667         (WebCore::LayerRendererChromium::drawLayers):
1668         (WebCore::LayerRendererChromium::paintContentsRecursive):
1669         (WebCore::LayerRendererChromium::copyOffscreenTextureToDisplay):
1670         (WebCore::LayerRendererChromium::drawLayer):
1671         (WebCore::LayerRendererChromium::initializeSharedObjects):
1672         (WebCore::LayerRendererChromium::cleanupSharedObjects):
1673         * platform/graphics/chromium/LayerRendererChromium.h:
1674         * platform/graphics/chromium/LayerTilerChromium.cpp:
1675         (WebCore::LayerTilerChromium::getSingleTexture):
1676         (WebCore::LayerTilerChromium::invalidateRect):
1677         (WebCore::LayerTilerChromium::update):
1678         (WebCore::LayerTilerChromium::uploadCanvas):
1679         (WebCore::LayerTilerChromium::updateFromPixels):
1680         (WebCore::LayerTilerChromium::draw):
1681         (WebCore::LayerTilerChromium::unreserveTextures):
1682         * platform/graphics/chromium/LayerTilerChromium.h:
1683         (WebCore::LayerTilerChromium::setLayerRenderer):
1684         (WebCore::LayerTilerChromium::skipsDraw):
1685         * platform/graphics/chromium/PlatformCanvas.cpp:
1686         (WebCore::PlatformCanvas::AutoLocker::AutoLocker):
1687         (WebCore::PlatformCanvas::Painter::Painter):
1688         * platform/graphics/chromium/PlatformCanvas.h:
1689         * platform/graphics/chromium/RenderSurfaceChromium.cpp:
1690         (WebCore::RenderSurfaceChromium::draw):
1691         * platform/graphics/chromium/RenderSurfaceChromium.h:
1692         * platform/graphics/chromium/cc/CCCanvasLayerImpl.cpp:
1693         (WebCore::CCCanvasLayerImpl::draw):
1694         * platform/graphics/chromium/cc/CCCanvasLayerImpl.h:
1695         * platform/graphics/chromium/cc/CCHeadsUpDisplay.cpp:
1696         (WebCore::CCHeadsUpDisplay::draw):
1697         * platform/graphics/chromium/cc/CCLayerImpl.cpp:
1698         (WebCore::CCLayerImpl::draw):
1699         * platform/graphics/chromium/cc/CCLayerImpl.h:
1700         * platform/graphics/chromium/cc/CCPluginLayerImpl.cpp:
1701         (WebCore::CCPluginLayerImpl::draw):
1702         * platform/graphics/chromium/cc/CCPluginLayerImpl.h:
1703         * platform/graphics/chromium/cc/CCVideoLayerImpl.cpp:
1704         (WebCore::CCVideoLayerImpl::draw):
1705         * platform/graphics/chromium/cc/CCVideoLayerImpl.h:
1706
1707 2011-04-11  Eric Carlson  <eric.carlson@apple.com>
1708
1709         Reviewed by Simon Fraser.
1710
1711         Ignore context change callbacks when not on the main thread
1712         https://bugs.webkit.org/show_bug.cgi?id=58256
1713         <rdar://problem/9266090>
1714
1715         * platform/graphics/ca/win/WKCACFViewLayerTreeHost.cpp:
1716         (WebCore::WKCACFViewLayerTreeHost::contextDidChange): Do nothing when not called
1717             on the main thread. This should only happen when no changes have actually 
1718             been committed to the context, eg. when a video frame has been added to an image
1719             queue, so return without triggering animations etc.
1720
1721 2011-04-11  Daniel Cheng  <dcheng@chromium.org>
1722
1723         Reviewed by Dmitry Titov.
1724
1725         [chromium] Implement image/png support in DataTransferItems
1726         https://bugs.webkit.org/show_bug.cgi?id=58106
1727
1728         This patch implements DataTransferItem::getAsFile() using Blobs. In
1729         addition, plumbing for image/png has been added so image paste will be
1730         supported as long as the renderer makes that data available.
1731
1732         Tests: editing/pasteboard/data-transfer-items-image-png.html
1733
1734         * dom/DataTransferItem.h:
1735         * dom/DataTransferItem.idl:
1736         * platform/chromium/ClipboardMimeTypes.cpp:
1737         * platform/chromium/ClipboardMimeTypes.h:
1738         * platform/chromium/DataTransferItemChromium.cpp:
1739         (WebCore::DataTransferItemChromium::getAsString):
1740         (WebCore::DataTransferItemChromium::getAsFile):
1741         * platform/chromium/DataTransferItemChromium.h:
1742         * platform/chromium/PlatformBridge.h:
1743
1744 2011-04-11  Mario Sanchez Prada  <msanchez@igalia.com>
1745
1746         Reviewed by Chris Fleizach.
1747
1748         [Gtk] Implement support for Embedded Objects
1749         https://bugs.webkit.org/show_bug.cgi?id=52148
1750
1751         Expose special OBJECT character for replaced elements, implementing
1752         AtkText and AtkHyperlink when required.
1753
1754         * accessibility/AccessibilityRenderObject.cpp:
1755         (WebCore::textIteratorBehaviorForTextRange): New helper function,
1756         to return the right behavior, depending on the platform, so it
1757         ensures that object replacement characters get emitted for GTK.
1758         (WebCore::AccessibilityRenderObject::textUnderElement): Use the
1759         new helper function textIteratorBehaviorForTextRange.
1760         (WebCore::AccessibilityRenderObject::stringValue): Ditto.
1761         (WebCore::AccessibilityRenderObject::indexForVisiblePosition):
1762         Consider replaced elements when calculating range length in GTK.
1763
1764         * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
1765         (textForRenderer): Ouput the 'object replacement character' for
1766         replaced objects.
1767         (getSelectionOffsetsForObject): Consider replaced elements when
1768         calculating range length in GTK.
1769         (webkitAccessibleHypertextGetLink): Remove wrong extra check that
1770         were causing only links to be considered.
1771         (webkitAccessibleHypertextGetNLinks): Replace wrong 'isLink()'
1772         check with the right one, by checking that the right ATK interface
1773         is being implemented by the AtkObject.
1774         (getInterfaceMaskFromObject): Implement the Hyperlink interface
1775         both for links and replaced objects.
1776         (objectAndOffsetUnignored): Consider replaced elements when
1777         calculating range length in GTK.
1778
1779         * accessibility/gtk/WebKitAccessibleHyperlink.cpp:
1780         (getRangeLengthForObject): Ensure spaces are used for replaced
1781         elements when calling to TextIterator::rangeLength().
1782
1783         * editing/TextIterator.h: New value in the TextIteratorBehavior
1784         enumeration (TextIteratorEmitsObjectReplacementCharacters) and new
1785         private variable to consider that new option internally.
1786         * editing/TextIterator.cpp:
1787         (WebCore::TextIterator::TextIterator): Initialize the new private
1788         attribute m_emitsObjectReplacementCharacters in constructors.
1789         (WebCore::TextIterator::handleReplacedElement): Emit the 'object
1790         replacement character' when m_emitsObjectReplacementCharacters.
1791
1792 2011-04-11  Jia Pu  <jpu@apple.com>
1793
1794         Reviewed by Adele Peterson.
1795
1796         Shouldn't carry out autocorrection when start typing a new word
1797         https://bugs.webkit.org/show_bug.cgi?id=58241
1798         <rdar://problem/9264736>
1799
1800         Tests: platform/mac/editing/spelling/autocorrection-at-beginning-of-word-1.html
1801                platform/mac/editing/spelling/autocorrection-at-beginning-of-word-2.html
1802
1803         In TypingCommand::markMisspellingsAfterTyping(), we want to call Editor::markMisspellingsAfterTypingToWord()
1804         only when the typing command is an insertion command, and preceding word contains at least one non-whitespace
1805         character.
1806
1807         * editing/Editor.cpp:
1808         (WebCore::Editor::markMisspellingsAfterTypingToWord):
1809         * editing/Editor.h:
1810         * editing/TypingCommand.cpp:
1811         (WebCore::TypingCommand::markMisspellingsAfterTyping):
1812
1813 2011-04-11  Vsevolod Vlasov  <vsevik@chromium.org>
1814
1815         Reviewed by Pavel Feldman.
1816
1817         PerformanceTiming returns inconsistent values when timing is null.
1818         https://bugs.webkit.org/show_bug.cgi?id=58143
1819
1820         Made PerformanceTiming returned values consistent when there is no timing object.
1821
1822         * page/PerformanceTiming.cpp:
1823         (WebCore::PerformanceTiming::domainLookupStart):
1824         (WebCore::PerformanceTiming::domainLookupEnd):
1825         (WebCore::PerformanceTiming::connectStart):
1826         (WebCore::PerformanceTiming::connectEnd):
1827         (WebCore::PerformanceTiming::requestStart):
1828         (WebCore::PerformanceTiming::responseStart):
1829         (WebCore::PerformanceTiming::domLoading):
1830
1831 2011-04-05  Stephen White  <senorblanco@chromium.org>
1832
1833         Fix for jittering when animating a rotated image.
1834         https://bugs.webkit.org/show_bug.cgi?id=50775
1835
1836         Make GraphicsContext::roundToDevicePixels a no-op on Chrome/Mac.
1837
1838         * platform/graphics/cg/GraphicsContextCG.cpp:
1839         (WebCore::GraphicsContext::roundToDevicePixels):
1840
1841 2011-04-06  Xiaomei Ji  <xji@chromium.org>
1842
1843         Reviewed by Ryosuke Niwa.
1844
1845         Continue experiment with moving caret by word in visual order.
1846         https://bugs.webkit.org/show_bug.cgi?id=57806
1847
1848         This is the 2nd patch, which adds implementation when caret is inside box
1849         (not at boundaries). If the word break is inside the same box and not at the boundaries
1850         either, the word break will be returned. If need to search the adjacent boxes for word
1851         breaks, then, only the cases implemented in bug 57336 work.
1852
1853         * editing/visible_units.cpp:
1854         (WebCore::leftmostPositionInRTLBoxInLTRBlock):
1855         (WebCore::rightmostPositionInLTRBoxInRTLBlock):
1856         (WebCore::lastWordBreakInBox):
1857         (WebCore::positionIsVisuallyOrderedInBoxInBlockWithDifferentDirectionality):
1858         (WebCore::nextWordBreakInBoxInsideBlockWithDifferentDirectionality):
1859         (WebCore::WordBoundaryEntry::WordBoundaryEntry):
1860         (WebCore::collectWordBreaksInBoxInsideBlockWithSameDirectionality):
1861         (WebCore::collectWordBreaksInBoxInsideBlockWithDifferntDirectionality):
1862         (WebCore::greatestValueUnder):
1863         (WebCore::smallestOffsetAbove):
1864         (WebCore::positionIsInsideBox):
1865         (WebCore::positionBeforeNextWord):
1866         (WebCore::positionAfterPreviousWord):
1867         (WebCore::leftWordPosition):
1868         (WebCore::rightWordPosition):
1869
1870 2011-04-11  Mario Sanchez Prada  <msanchez@igalia.com>
1871
1872         Reviewed by Chris Fleizach.
1873
1874         [GTK] Unskip accessibility/input-slider.html and accessibility/media-element.html
1875         https://bugs.webkit.org/show_bug.cgi?id=58040
1876
1877         Don't expose objects of role SliderThumbRoles in GTK.
1878
1879         * accessibility/AccessibilitySlider.cpp:
1880         (WebCore::AccessibilitySlider::addChildren): Allow the platform
1881         make a final decision before including children in the hierarchy.
1882         (WebCore::AccessibilitySliderThumb::accessibilityIsIgnored):
1883         Implemented by relying on accessibilityPlatformIncludesObject().
1884
1885         * accessibility/gtk/AccessibilityObjectAtk.cpp:
1886         (WebCore::AccessibilityObject::accessibilityPlatformIncludesObject):
1887         Ignore accessibility objects with role SliderThumbRole.
1888
1889 2011-04-11  Simon Fraser  <simon.fraser@apple.com>
1890
1891         Reviewed by Dan Bernstein.
1892
1893         Divide by zero in calcColumnWidth
1894         https://bugs.webkit.org/show_bug.cgi?id=58230
1895
1896         Test: fast/multicol/huge-column-count.html
1897         
1898         Make sure we have at least one column, to avoid divide by zero.
1899
1900         * rendering/RenderBlock.cpp:
1901         (WebCore::RenderBlock::calcColumnWidth):
1902
1903 2011-04-09  Gavin Barraclough  <barraclough@apple.com>
1904
1905         Reviewed by Sam Weinig.
1906
1907         Bug 58198 - Clean up JSValue implementation for JSVALUE64
1908
1909         JSNumberCell.h has been deprecated.
1910
1911         * ForwardingHeaders/runtime/JSNumberCell.h: Removed.
1912         * bindings/scripts/CodeGeneratorJS.pm:
1913         * bridge/c/c_instance.cpp:
1914
1915 2011-04-11  Dan Bernstein  <mitz@apple.com>
1916
1917         Build fix.
1918
1919         * html/canvas/CanvasRenderingContext2D.cpp:
1920         (WebCore::CanvasRenderingContext2D::State::State):
1921
1922 2011-04-11  Antti Koivisto  <antti@apple.com>
1923
1924         Reviewed by Tony Gentilcore.
1925
1926         Document source preload scanned repeatedly
1927         https://bugs.webkit.org/show_bug.cgi?id=58123
1928         
1929         Don't clear the preload scanner after execution resumes. This would lose the current
1930         scanning point and lead to rescanning when the preload scanner would get reconstructed
1931         due to main parser blocking again.
1932
1933         Instead clear the scanner only in the specific case of receiving new data while the main
1934         parser has already reached the end of the current input.
1935
1936         Also switched to using isWaitingForScripts() instead of m_treeBuilder->isPaused() for consistency.
1937
1938         The case the clearing in resumeParsingAfterScriptExecution() was added for is covered by 
1939         http/tests/loading/preload-slow-loading.php.
1940
1941         * html/parser/HTMLDocumentParser.cpp:
1942         (WebCore::HTMLDocumentParser::insert):
1943         (WebCore::HTMLDocumentParser::append):
1944         (WebCore::HTMLDocumentParser::resumeParsingAfterScriptExecution):
1945
1946 2011-04-11  Dan Bernstein  <mitz@apple.com>
1947
1948         Build fix.
1949
1950         * html/canvas/CanvasRenderingContext2D.cpp:
1951         (WebCore::CanvasRenderingContext2D::State::State):
1952
1953 2011-04-11  Dan Bernstein  <mitz@apple.com>
1954
1955         Reviewed by Alexey Proskuryakov.
1956
1957         Assertion failure in CanvasRenderingContext2D::State::fontsNeedUpdate when invalidating the font cache after opening canvas/philip/tests/initial.reset.2dstate.html (occurs on Qt debug test bot)
1958         https://bugs.webkit.org/show_bug.cgi?id=58229
1959
1960         * html/canvas/CanvasRenderingContext2D.cpp:
1961         (WebCore::CanvasRenderingContext2D::State::State): Added copy constructor, to register the copy with
1962         the font selector if needed.
1963         (WebCore::CanvasRenderingContext2D::State::operator=): Added assignment constructor, to handle
1964         registration with the font selector as needed.
1965         * html/canvas/CanvasRenderingContext2D.h:
1966
1967 2011-04-11  Mario Sanchez Prada  <msanchez@igalia.com>
1968
1969         Reviewed by Chris Fleizach.
1970
1971         [GTK] ARIA tables not exposing cells as HTML tables do
1972         https://bugs.webkit.org/show_bug.cgi?id=57463
1973
1974         Expose cells for ARIA grids consistently with HTML tables in GTK,
1975         keeping the same behaviour for the other platforms.
1976
1977         * accessibility/AccessibilityARIAGrid.cpp:
1978         (WebCore::AccessibilityARIAGrid::addChild): Add the row's children
1979         to the accessibility hierarchy when accessibility objects for rows
1980         are ignoring accessibility, otherwise add the row.
1981         (WebCore::AccessibilityARIAGrid::addChildren): Do not check at
1982         this point whether every child of the table ignores or not
1983         accessibility, letting addChild() make the proper decision later.
1984
1985         * accessibility/AccessibilityARIAGridCell.cpp:
1986         (WebCore::AccessibilityARIAGridCell::parentTable): Consider that
1987         rows could be ignoring accessibility, hence the parent could be
1988         retrieved in the first call to parentObjectUnignored().
1989         (WebCore::AccessibilityARIAGridCell::rowIndexRange): Ditto.
1990         (WebCore::AccessibilityARIAGridCell::columnIndexRange): Ditto..
1991
1992         * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
1993         (atkRole): Map ColumnHeader and RowHeader to ATK_ROLE_TABLE_CELL.
1994
1995 2011-04-11  Sergio Villar Senin  <svillar@igalia.com>
1996
1997         Reviewed by Martin Robinson.
1998
1999         [GTK] Fix make distcheck
2000         https://bugs.webkit.org/show_bug.cgi?id=58224
2001
2002         Removed a file that is no longer in the source tree.
2003
2004         * GNUmakefile.list.am:
2005
2006 2011-04-11  Dimitri Glazkov  <dglazkov@chromium.org>
2007
2008         Reviewed by Martin Robinson.
2009
2010         REGRESSION(r83397): Most GTK media controls are hidden when no valid source is specified
2011         https://bugs.webkit.org/show_bug.cgi?id=58204
2012
2013         Covered by existing tests.
2014
2015         * platform/gtk/RenderThemeGtk.h:
2016         (WebCore::RenderThemeGtk::hasOwnDisabledStateHandlingFor): Let GTK handle
2017             the the state of media controls.
2018
2019 2011-04-11  Dimitri Glazkov  <dglazkov@chromium.org>
2020
2021         Remove obsolete comment, which was mistakenly landed in r83397.
2022
2023         Though potentially a work of art, the comment lost its functional meaning a long time ago.
2024
2025         * html/shadow/MediaControls.cpp:
2026         (WebCore::MediaControls::create): Removed comment.
2027
2028 2011-04-05  Hans Wennborg  <hans@chromium.org>
2029
2030         Reviewed by Steve Block.
2031
2032         IndexedDB: Introduce skeleton for LevelDB backend
2033         https://bugs.webkit.org/show_bug.cgi?id=57827
2034
2035         No new tests: no new functionality (yet).
2036
2037         * WebCore.gyp/WebCore.gyp:
2038             Add dependency on leveldb when ENABLE_LEVELDB=1 in feature_defines.
2039         * WebCore.gypi:
2040             Add new files.
2041         * storage/IDBBackingStore.h:
2042         (WebCore::IDBBackingStore::ObjectStoreRecordIdentifier::~ObjectStoreRecordIdentifier):
2043             Introduce abstract type ObjectStoreRecordIdentifier. The SQLite
2044             backend uses integers to refer to a specific row in a table, but
2045             the LevelDB backend will use something else.
2046         * storage/IDBDatabaseBackendImpl.cpp:
2047         (WebCore::IDBDatabaseBackendImpl::createObjectStore):
2048         (WebCore::IDBDatabaseBackendImpl::createObjectStoreInternal):
2049         (WebCore::IDBDatabaseBackendImpl::deleteObjectStoreInternal):
2050         (WebCore::IDBDatabaseBackendImpl::loadObjectStores):
2051             Change functions to pass along the database id for operations that
2052             concern object stores. We want to be able to group object stores
2053             ids per database.
2054         * storage/IDBFactoryBackendImpl.cpp:
2055         (WebCore::IDBFactoryBackendImpl::open):
2056             Decide which backend to use based on the backingStoreType
2057             parameter.
2058         * storage/IDBIndexBackendImpl.cpp:
2059         (WebCore::IDBIndexBackendImpl::IDBIndexBackendImpl):
2060         (WebCore::IDBIndexBackendImpl::openCursorInternal):
2061         (WebCore::IDBIndexBackendImpl::getInternal):
2062         (WebCore::IDBIndexBackendImpl::addingKeyAllowed):
2063         * storage/IDBIndexBackendImpl.h:
2064         (WebCore::IDBIndexBackendImpl::create):
2065             Pass database and object store id to backend functions concerning
2066             indexes.
2067         * storage/IDBLevelDBBackingStore.cpp: Added.
2068         (WebCore::IDBLevelDBBackingStore::IDBLevelDBBackingStore):
2069         (WebCore::IDBLevelDBBackingStore::~IDBLevelDBBackingStore):
2070         (WebCore::IDBLevelDBBackingStore::open):
2071         (WebCore::IDBLevelDBBackingStore::extractIDBDatabaseMetaData):
2072         (WebCore::IDBLevelDBBackingStore::setIDBDatabaseMetaData):
2073         (WebCore::IDBLevelDBBackingStore::getObjectStores):
2074         (WebCore::IDBLevelDBBackingStore::createObjectStore):
2075         (WebCore::IDBLevelDBBackingStore::deleteObjectStore):
2076         (WebCore::IDBLevelDBBackingStore::getObjectStoreRecord):
2077         (WebCore::IDBLevelDBBackingStore::putObjectStoreRecord):
2078         (WebCore::IDBLevelDBBackingStore::clearObjectStore):
2079         (WebCore::IDBLevelDBBackingStore::deleteObjectStoreRecord):
2080         (WebCore::IDBLevelDBBackingStore::nextAutoIncrementNumber):
2081         (WebCore::IDBLevelDBBackingStore::keyExistsInObjectStore):
2082         (WebCore::IDBLevelDBBackingStore::forEachObjectStoreRecord):
2083         (WebCore::IDBLevelDBBackingStore::getIndexes):
2084         (WebCore::IDBLevelDBBackingStore::createIndex):
2085         (WebCore::IDBLevelDBBackingStore::deleteIndex):
2086         (WebCore::IDBLevelDBBackingStore::putIndexDataForRecord):
2087         (WebCore::IDBLevelDBBackingStore::deleteIndexDataForRecord):
2088         (WebCore::IDBLevelDBBackingStore::getObjectViaIndex):
2089         (WebCore::IDBLevelDBBackingStore::getPrimaryKeyViaIndex):
2090         (WebCore::IDBLevelDBBackingStore::keyExistsInIndex):
2091         (WebCore::IDBLevelDBBackingStore::openObjectStoreCursor):
2092         (WebCore::IDBLevelDBBackingStore::openIndexKeyCursor):
2093         (WebCore::IDBLevelDBBackingStore::openIndexCursor):
2094         (WebCore::IDBLevelDBBackingStore::createTransaction):
2095         * storage/IDBLevelDBBackingStore.h: Added.
2096             Add an empty implementation of the LevelDB backend.
2097         * storage/IDBObjectStoreBackendImpl.cpp:
2098             Keep track of database id, use the new RecordIdentifier.
2099         (WebCore::IDBObjectStoreBackendImpl::IDBObjectStoreBackendImpl):
2100         (WebCore::IDBObjectStoreBackendImpl::getInternal):
2101         (WebCore::IDBObjectStoreBackendImpl::putInternal):
2102         (WebCore::IDBObjectStoreBackendImpl::deleteInternal):
2103         (WebCore::IDBObjectStoreBackendImpl::clearInternal):
2104         (WebCore::populateIndex):
2105         (WebCore::IDBObjectStoreBackendImpl::createIndex):
2106         (WebCore::IDBObjectStoreBackendImpl::createIndexInternal):
2107         (WebCore::IDBObjectStoreBackendImpl::deleteIndexInternal):
2108         (WebCore::IDBObjectStoreBackendImpl::openCursorInternal):
2109         (WebCore::IDBObjectStoreBackendImpl::loadIndexes):
2110         (WebCore::IDBObjectStoreBackendImpl::genAutoIncrementKey):
2111         * storage/IDBObjectStoreBackendImpl.h:
2112         (WebCore::IDBObjectStoreBackendImpl::create):
2113         (WebCore::IDBObjectStoreBackendImpl::databaseId):
2114         * storage/IDBSQLiteBackingStore.cpp:
2115         (WebCore::IDBSQLiteBackingStore::open):
2116         (WebCore::IDBSQLiteBackingStore::createObjectStore):
2117         (WebCore::IDBSQLiteBackingStore::deleteObjectStore):
2118         (WebCore::IDBSQLiteBackingStore::getObjectStoreRecord):
2119         (WebCore::IDBSQLiteBackingStore::putObjectStoreRecord):
2120         (WebCore::IDBSQLiteBackingStore::clearObjectStore):
2121         (WebCore::IDBSQLiteBackingStore::deleteObjectStoreRecord):
2122         (WebCore::IDBSQLiteBackingStore::nextAutoIncrementNumber):
2123         (WebCore::IDBSQLiteBackingStore::keyExistsInObjectStore):
2124         (WebCore::IDBSQLiteBackingStore::forEachObjectStoreRecord):
2125         (WebCore::IDBSQLiteBackingStore::getIndexes):
2126         (WebCore::IDBSQLiteBackingStore::createIndex):
2127         (WebCore::IDBSQLiteBackingStore::deleteIndex):
2128         (WebCore::IDBSQLiteBackingStore::putIndexDataForRecord):
2129         (WebCore::IDBSQLiteBackingStore::deleteIndexDataForRecord):
2130         (WebCore::IDBSQLiteBackingStore::getObjectViaIndex):
2131         (WebCore::IDBSQLiteBackingStore::getPrimaryKeyViaIndex):
2132         (WebCore::IDBSQLiteBackingStore::keyExistsInIndex):
2133         (WebCore::IDBSQLiteBackingStore::openObjectStoreCursor):
2134         (WebCore::IDBSQLiteBackingStore::openIndexKeyCursor):
2135         (WebCore::IDBSQLiteBackingStore::openIndexCursor):
2136         * storage/IDBSQLiteBackingStore.h:
2137
2138 2011-04-11  Alexander Pavlov  <apavlov@chromium.org>
2139
2140         Reviewed by Yury Semikhatsky.
2141
2142         Web Inspector: Duplicate CSS properties are reported for non-lowercase property names in the Styles sidebar
2143         https://bugs.webkit.org/show_bug.cgi?id=58226
2144
2145         * inspector/InspectorStyleSheet.cpp:
2146         (WebCore::InspectorStyle::populateAllProperties):
2147
2148 2011-04-07  Pavel Podivilov  <podivilov@chromium.org>
2149
2150         Reviewed by Pavel Feldman.
2151
2152         Web Inspector: get rid of source frame delegates for resources panel.
2153         https://bugs.webkit.org/show_bug.cgi?id=58041
2154
2155         Use TextViewer configured with a domain-specific delegate to show/edit resource contents in resources panel.
2156
2157         * inspector/front-end/ResourceView.js:
2158         (WebInspector.ResourceView.createResourceView):
2159         (WebInspector.ResourceView.resourceViewTypeMatchesResource):
2160         (WebInspector.ResourceSourceFrame):
2161         (WebInspector.ResourceSourceFrame.prototype.get resource):
2162         (WebInspector.ResourceSourceFrame.prototype.contentEditable):
2163         (WebInspector.ResourceSourceFrame.prototype._requestContent):
2164         (WebInspector.CSSSourceFrame):
2165         (WebInspector.CSSSourceFrame.prototype.contentEditable):
2166         (WebInspector.CSSSourceFrame.prototype._editContent):
2167         (WebInspector.CSSSourceFrame.prototype._editContent.handleInfos):
2168         (WebInspector.CSSSourceFrame.prototype._saveStyleSheet):
2169         * inspector/front-end/SourceFrame.js:
2170         (WebInspector.SourceFrame.prototype._ensureContentLoaded):
2171         (WebInspector.SourceFrame.prototype._requestContent):
2172         (WebInspector.SourceFrame.prototype._handleSave):
2173         (WebInspector.SourceFrame.prototype._editContent):
2174
2175 2011-04-11  Alexis Menard  <alexis.menard@openbossa.org>
2176
2177         Reviewed by Andreas Kling.
2178
2179         [Qt] Regression : r83051 Oxygen's lineedits are not rendered properly
2180         https://bugs.webkit.org/show_bug.cgi?id=58076
2181
2182         State_Sunken is more generic than pressed. It is used by items such as frames or
2183         line edits because they are "sunken" frames (e.g. QLineEdit). It can be required
2184         by some style like Oxygen. Therefore only in the mobile theme we check if the object
2185         is pressed.
2186
2187         * platform/qt/RenderThemeQt.cpp:
2188         (WebCore::RenderThemeQt::paintTextField):
2189
2190 2011-04-11  Pavel Feldman  <pfeldman@chromium.org>
2191
2192         Reviewed by Yury Semikhatsky.
2193
2194         Web Inspector: add support for optional output parameters.
2195         https://bugs.webkit.org/show_bug.cgi?id=58207
2196
2197         Output parameters such as "redirectResponse" are optional, but
2198         do not allow specifying them as such.
2199
2200         * inspector/CodeGeneratorInspector.pm:
2201         * inspector/Inspector.json:
2202         * inspector/InspectorResourceAgent.cpp:
2203         (WebCore::buildObjectForResourceResponse):
2204         (WebCore::buildObjectForCachedResource):
2205         * inspector/front-end/NetworkManager.js:
2206         (WebInspector.NetworkDispatcher.prototype._updateResourceWithResponse):
2207         * inspector/generate-inspector-idl:
2208
2209 2011-04-11  Pavel Feldman  <pfeldman@chromium.org>
2210
2211         Reviewed by Yury Semikhatsky.
2212
2213         Web Inspector: refactor / document call frames in debugger domain.
2214         https://bugs.webkit.org/show_bug.cgi?id=58187
2215
2216         Note that we are not special casing with(element) and with(document) anymore
2217         and do not tell user that it is "Event target" and "Event document". Strictly speaking,
2218         we should not have done it for with(element) not necessarily being related to an event.
2219
2220         * English.lproj/localizedStrings.js:
2221         * inspector/InjectedScriptSource.js:
2222         * inspector/Inspector.json:
2223         * inspector/front-end/ScopeChainSidebarPane.js:
2224         (WebInspector.ScopeChainSidebarPane.prototype.update):
2225
2226 2011-04-10  ChangSeok Oh  <shivamidow@gmail.com>
2227
2228         Reviewed by Eric Seidel.
2229
2230         Make correspondence of file name related with event to other port.
2231         https://bugs.webkit.org/show_bug.cgi?id=57416
2232
2233         Some file names are changed to make correspondence naming rule.
2234         Keyboard, mouse and wheel event file names for GTK port have been different from other ports.
2235         This has made user hard to find a specific file related with event for GTK port. 
2236
2237         No test required. This patch just changes some file names.
2238
2239         * GNUmakefile.list.am:
2240         * platform/gtk/KeyEventGtk.cpp: Removed.
2241         * platform/gtk/MouseEventGtk.cpp: Removed.
2242         * platform/gtk/PlatformKeyboardEventGtk.cpp: Added.
2243         * platform/gtk/PlatformMouseEventGtk.cpp: Added.
2244         * platform/gtk/PlatformWheelEventGtk.cpp: Added.
2245         * platform/gtk/WheelEventGtk.cpp: Removed.
2246
2247 2011-04-10  Simon Fraser  <simon.fraser@apple.com>
2248
2249         Revert the FloatRect.cpp part of r83422, since
2250         clampToInteger() is broken for some inputs. I filed
2251         https://bugs.webkit.org/show_bug.cgi?id=58216
2252
2253         * platform/graphics/FloatRect.cpp:
2254         (WebCore::safeFloatToInt):
2255         (WebCore::enclosingIntRect):
2256
2257 2011-04-10  Simon Fraser  <simon.fraser@apple.com>
2258
2259         Reviewed by Maciej Stachowiak.
2260
2261         Car model dropdowns at audiusa.com lay out incorrectly with compositing enabled
2262         https://bugs.webkit.org/show_bug.cgi?id=56660
2263         
2264         When overflow on an element changes, we need to inform compositing
2265         layers which create and position an "ancestor clipping" layer based
2266         on that overflow. Do this by triggering a rebuild of compositing layers
2267         when overflow changes on a layer whose stacking context has compositing
2268         descendants. (We can't just check whether the layer itself has compositing
2269         descendants, because overflow follows the render tree, but compositing
2270         follows the z-order tree.)
2271
2272         Test: compositing/geometry/ancestor-overflow-change.html
2273
2274         * rendering/RenderLayer.cpp:
2275         (WebCore::RenderLayer::styleChanged):
2276         * rendering/RenderLayer.h:
2277         * rendering/RenderLayerBacking.cpp:
2278         (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
2279
2280 2011-04-10  Simon Fraser  <simon.fraser@apple.com>
2281
2282         Reviewed by Ariya Hidayat.
2283
2284         Allow ShadowBlur to re-use the last buffer if it already contains the correct shadow
2285         https://bugs.webkit.org/show_bug.cgi?id=58161
2286         
2287         ShadowBlur already has a singleton scratch buffer that is re-used
2288         between shadows. Enhance use of this scratch buffer to avoid drawing
2289         and blurring the shadow if the results will match what is already
2290         in the buffer.
2291         
2292         Cleaned up ShadowBlur code to remove beginShadowLayer() and endShadowLayer(),
2293         which ended up with little reusable code after adding the re-use logic.
2294
2295         * platform/graphics/FloatRect.cpp:
2296         (WebCore::enclosingIntRect): Replace safeFloatToInt() with the existing
2297         clampToInteger() from MathExtras.h
2298         
2299         * platform/graphics/FloatSize.h:
2300         (WebCore::expandedIntSize): New method to safely ceil() the size.
2301         
2302         * platform/graphics/RoundedIntRect.h:
2303         Add operator== for Radii and RoundedIntRect.
2304
2305         * platform/graphics/ShadowBlur.cpp:
2306         (WebCore::ScratchBuffer::ScratchBuffer):
2307         (WebCore::ScratchBuffer::setLastShadowValues):
2308         (WebCore::ScratchBuffer::setLastInsetShadowValues):
2309         (WebCore::ScratchBuffer::matchesLastShadow):
2310         (WebCore::ScratchBuffer::matchesLastInsetShadow):
2311         (WebCore::ScratchBuffer::clearScratchBuffer):
2312         Have the scratch buffer remember what shadow parameters were used
2313         to render the buffer contents.
2314         
2315         (WebCore::ShadowBlur::drawShadowBuffer):
2316         Renamed from endShadowLayer(), and only contains the drawing
2317         logic now.
2318         
2319         (WebCore::ShadowBlur::drawRectShadow):
2320         Promote some code from beginShadowLayer().
2321         
2322         (WebCore::ShadowBlur::drawInsetShadow):
2323         Promote some code from beginShadowLayer().
2324
2325         (WebCore::ShadowBlur::drawRectShadowWithoutTiling):
2326         (WebCore::ShadowBlur::drawInsetShadowWithoutTiling):
2327         (WebCore::ShadowBlur::drawInsetShadowWithTiling):
2328         (WebCore::ShadowBlur::drawRectShadowWithTiling):
2329         These methods now check to see if the buffer already matches
2330         their required parameters, and avoid work if it does.
2331         
2332         (WebCore::ShadowBlur::blurShadowBuffer):
2333         Factored some code into this new method.
2334         
2335         (WebCore::ShadowBlur::blurAndColorShadowBuffer):
2336         Minor refactoring.
2337
2338         * platform/graphics/ShadowBlur.h:
2339
2340 2011-04-10  Geoffrey Garen  <ggaren@apple.com>
2341
2342         Build fix: Updated for file move.
2343
2344         * bindings/js/GCController.cpp:
2345         * bindings/js/ScriptGCEvent.cpp:
2346
2347 2011-04-10  Geoffrey Garen  <ggaren@apple.com>
2348
2349         Rubber-stamped by Beth Dakin.
2350
2351         Moved Heap.h and Heap.cpp to the heap folder, because anything less 
2352         would be uncivilized.
2353
2354         * ForwardingHeaders/heap/Heap.h: Copied from WebCore/ForwardingHeaders/runtime/Heap.h.
2355         * ForwardingHeaders/runtime/Heap.h: Removed.
2356
2357 2011-04-10  Luke Macpherson   <macpherson@chromium.org>
2358
2359         Reviewed by Simon Fraser.
2360
2361         Rename CSSStyleApplyProperty::inherit,initial,value applyInheritValue,applyInitialValue,applyValue
2362         https://bugs.webkit.org/show_bug.cgi?id=58212
2363
2364         No new tests - function renaming only / no functionality changes.
2365
2366         * css/CSSStyleApplyProperty.cpp:
2367         Rename all instances of inherit, initial and value.
2368         * css/CSSStyleApplyProperty.h:
2369         Rename all instances of inherit, initial and value.
2370         * css/CSSStyleSelector.cpp:
2371         Rename all instances of inherit, initial and value.
2372
2373 2011-04-10  Mike Lawther  <mikelawther@chromium.org>
2374
2375         Reviewed by Ojan Vafai.
2376
2377         flex/bison tokens and grammar for CSS calc
2378         https://bugs.webkit.org/show_bug.cgi?id=54412
2379
2380         Tests: css3/calc/calc-errors.html
2381                css3/calc/lexer-regression-57581-2.html
2382                css3/calc/lexer-regression-57581-3.html
2383                css3/calc/lexer-regression-57581.html
2384                css3/calc/minmax-errors.html
2385                css3/calc/nested-rounded-corners.html
2386                css3/calc/simple-calcs.html
2387                css3/calc/simple-minmax.html
2388
2389         * css/CSSGrammar.y:
2390         * css/CSSParserValues.cpp:
2391         (WebCore::CSSParserValueList::insertValueAt):
2392         (WebCore::CSSParserValueList::extend):
2393         * css/CSSParserValues.h:
2394         * css/tokenizer.flex:
2395
2396 2011-04-10  Alice Boxhall  <aboxhall@chromium.org>
2397
2398         Reviewed by Ryosuke Niwa.
2399
2400         Change EventHandler::updateSelectionForMouseDrag to take a HitTestResult only.
2401         https://bugs.webkit.org/show_bug.cgi?id=57923
2402
2403         Change EventHandler::updateSelectionForMouseDrag to take a HitTestResult
2404         rather than a Node* and an IntPoint&, as the selection may actually not
2405         extend into the Node found by the HitTest.
2406
2407         No new tests. Refactoring only.
2408
2409         * page/EventHandler.cpp:
2410         (WebCore::EventHandler::handleMouseDraggedEvent):
2411         (WebCore::EventHandler::updateSelectionForMouseDrag):
2412         * page/EventHandler.h:
2413
2414 2011-04-10  Kent Tamura  <tkent@chromium.org>
2415
2416         Unreviewed, rolling out r83353.
2417         http://trac.webkit.org/changeset/83353
2418         https://bugs.webkit.org/show_bug.cgi?id=58106
2419
2420         The new test doesn't pass on all Chromium platforms.
2421
2422         * dom/DataTransferItem.h:
2423         * dom/DataTransferItem.idl:
2424         * platform/chromium/ClipboardMimeTypes.cpp:
2425         * platform/chromium/ClipboardMimeTypes.h:
2426         * platform/chromium/DataTransferItemChromium.cpp:
2427         (WebCore::DataTransferItemChromium::getAsString):
2428         * platform/chromium/DataTransferItemChromium.h:
2429         * platform/chromium/PlatformBridge.h:
2430
2431 2011-04-10  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
2432
2433         Reviewed by Eric Carlson.
2434
2435         [EFL] Add seek forward / backward buttons to MediaControl UI.
2436         https://bugs.webkit.org/show_bug.cgi?id=56810
2437
2438         Add seek forward / backward buttons to media control. And, change formType name
2439         for media control.
2440
2441         * platform/efl/RenderThemeEfl.cpp:
2442         (WebCore::RenderThemeEfl::edjeGroupFromFormType):
2443         (WebCore::RenderThemeEfl::emitMediaButtonSignal):
2444         (WebCore::RenderThemeEfl::paintMediaMuteButton):
2445         (WebCore::RenderThemeEfl::paintMediaPlayButton):
2446         (WebCore::RenderThemeEfl::paintMediaSeekBackButton):
2447         (WebCore::RenderThemeEfl::paintMediaSeekForwardButton):
2448         * platform/efl/RenderThemeEfl.h:
2449
2450 2011-04-10  Chris Guillory  <chris.guillory@google.com>
2451
2452         Reviewed by Eric Seidel.
2453
2454         Remove unused function declaration in PlatformContextSkia.h.
2455         https://bugs.webkit.org/show_bug.cgi?id=55983
2456
2457         * platform/graphics/skia/PlatformContextSkia.h:
2458
2459 2011-04-10  Patrick Gansterer  <paroga@webkit.org>
2460
2461         Unreviewed build fix for !ENABLE(XSLT) after r82562.
2462
2463         * dom/XMLDocumentParserLibxml2.cpp:
2464         (WebCore::XMLDocumentParser::doEnd):
2465
2466 2011-04-10  Patrick Gansterer  <paroga@webkit.org>
2467
2468         Unreviewed build fix for !ENABLE(XSLT) after r82562.
2469
2470         * xml/XMLTreeViewer.cpp: Readded #if ENABLE(XSLT).
2471
2472 2011-04-10  Dimitri Glazkov  <dglazkov@chromium.org>
2473
2474         Reviewed by Anders Carlsson.
2475
2476         REGRESSION(r83256): Text-decoration bleeds into shadow DOM
2477         https://bugs.webkit.org/show_bug.cgi?id=58205
2478
2479         Now that the shadow root is a never-styled element, we need to walk to
2480         parent to find out if we're inside of a shadow DOM subtree.
2481
2482         Test: media/controls-styling.html
2483
2484         * css/CSSStyleSelector.cpp:
2485         (WebCore::isAtShadowBoundary): Added helper function.
2486         (WebCore::CSSStyleSelector::adjustRenderStyle): Changed to use the helper.
2487
2488 2011-04-07  Dimitri Glazkov  <dglazkov@chromium.org>
2489
2490         Reviewed by Eric Carlson.
2491
2492         [Meta] Convert HTMLMediaElement to use the new shadow DOM
2493         https://bugs.webkit.org/show_bug.cgi?id=53020
2494
2495         This conversion is non-trivial, for several reasons:
2496
2497         1) Since HTMLMediaElement now hosts the shadow DOM for controls, hiding
2498         and showing controls does not result in destroying and re-creating the
2499         shadow DOM tree. Instead, the tree is created as needed and shown/hidden
2500         using inline styles.
2501         
2502         2) Instead of detaching/attaching on each style change, the control parts
2503         are now using a set of higher fidelity callbacks that notify MediaControls
2504         about changes to which it should react. Each reaction results in hiding,
2505         showing, or changing the state of the control parts using inline styles
2506         and DOM APIs.
2507
2508         3) Hiding and showing controls is accomplished using inline styles, rather
2509         than wiring rendererIsNeeded, because renderers are now re-created less
2510         frequently.
2511
2512         4) Instead of constantly querying RenderTheme about visibility of a particular
2513         control part, we let the theme determine which parts are supported and
2514         which parts are visible in certain conditions.
2515
2516         5) Custom hit-testing, event forwarding, and style updates are completely
2517         removed, since they are now unnecessary.
2518
2519         6) Fading controls in/out is now done as CSS animation, since shadow DOM
2520         supports it.
2521
2522         Test: manual-tests/media-controls.html
2523
2524 2011-04-09  Dan Bernstein  <mitz@apple.com>
2525
2526         Reviewed by Beth Dakin.
2527
2528         <rdar://problem/9215280> Detached canvas draws with incorrect font
2529
2530         Test: fast/canvas/font-update.html
2531
2532         The existing mechanism for updating the font in a canvas 2D context was lacking in at least
2533         two ways: it neglected to update fonts in all but the topmost state in the stack, and since it
2534         was based on HTMLCanvasElemen's attach() and recalcStyle(), it did not work when the element
2535         was not attached.
2536
2537         This change takes the responsibility for font updates away from the canvas element and gives it
2538         to the canvas context and its graphics state.
2539
2540         * css/CSSFontSelector.cpp:
2541         (WebCore::CSSFontSelector::registerForInvalidationCallbacks): Added. Adds to the set of registered
2542         font selector clients.
2543         (WebCore::CSSFontSelector::unregisterForInvalidationCallbacks): Added. Removes from the set of
2544         registered font selector clients.
2545         (WebCore::CSSFontSelector::dispatchInvalidationCallbacks): Calls fontsNeedUpdate() on all registered
2546         clients and forces a style recalc on the document.
2547         (WebCore::CSSFontSelector::fontLoaded): Changed to call dispatchInvalidationCallbacks().
2548         (WebCore::CSSFontSelector::fontCacheInvalidated): Ditto.
2549         * css/CSSFontSelector.h:
2550         * html/HTMLCanvasElement.cpp: Removed overrides of attach() and recalcStyle().
2551         * html/HTMLCanvasElement.h:
2552         * html/canvas/CanvasRenderingContext2D.cpp:
2553         (WebCore::CanvasRenderingContext2D::State::~State): Added. Unregisters with the font selector.
2554         (WebCore::CanvasRenderingContext2D::State::fontsNeedUpdate): Added. Called by the font selector
2555         when its fonts need to be updated. Updates the font.
2556         (WebCore::CanvasRenderingContext2D::setFont): Registers the state with the font selector.
2557         * html/canvas/CanvasRenderingContext2D.h:
2558         * platform/graphics/FontSelector.h:
2559         (WebCore::FontSelectorClient::~FontSelectorClient):
2560
2561 2011-04-09  Geoffrey Garen  <ggaren@apple.com>
2562
2563         Not reviewed.
2564
2565         Try recommitting some things svn left out of my last commit.
2566
2567         * bridge/qt/qt_runtime.h:
2568
2569 2011-04-09  Geoffrey Garen  <ggaren@apple.com>
2570
2571         Not reviewed.
2572
2573         Try recommitting some things svn left out of my last commit.
2574
2575         * ForwardingHeaders/collector: Removed.
2576         * ForwardingHeaders/collector/handles: Removed.
2577         * ForwardingHeaders/collector/handles/Global.h: Removed.
2578
2579 2011-04-08  Dimitri Glazkov  <dglazkov@chromium.org>
2580
2581         Reviewed by Ojan Vafai.
2582
2583         Implement proper handling of mouseover/mouseout events in regard to shadow DOM boundaries.
2584         https://bugs.webkit.org/show_bug.cgi?id=55515
2585
2586         This implements XBL 2.0's specified handling of mouseover/mouseout events:
2587         http://dev.w3.org/2006/xbl2/Overview.html#the-mouseover-and-mouseout-events
2588
2589         To do this, we:
2590         1) calculate lowest common ancestor between relatedTarget and target, and
2591            the nearest boundaries around them: the outer (common) boundary, and the
2592            inner (specific to relatedTarget) boundary. Then, we
2593         2) ensure that events only propagate up to the common boundary (or
2594            all the way if boundary is not found), while
2595         3) updating relatedTarget be the inner boundary.
2596
2597         We also detect the most common case when no common boundary could exist
2598         and provide a fast path to short-circuit most of the boundary detection
2599         logic.
2600
2601         Test: fast/events/shadow-boundary-crossing.html
2602
2603         * dom/EventDispatcher.cpp:
2604         (WebCore::EventDispatcher::adjustToShadowBoundaries): Added a helper to determine lowest
2605             common ancestor, the boundaries around it, and compute adjustments
2606             to relatedTarget and event target ancestor chain.
2607         (WebCore::ancestorsCrossShadowBoundaries): Added.
2608         (WebCore::EventDispatcher::adjustRelatedTarget): Changed to calculate
2609             inner/outer shadow DOM boundaries and adjust ancestors chain accordingly.
2610         (WebCore::EventDispatcher::EventDispatcher): Added flag initializer
2611         (WebCore::EventDispatcher::ensureEventAncestors): Renamed from getEventAncestors,
2612             converted to use initialization flag, rather than testing for empty.
2613         * dom/EventDispatcher.h: Adjusted decls.
2614         * dom/MouseEvent.cpp:
2615         (WebCore::MouseEventDispatchMediator::dispatchEvent): Changed to send event
2616             to adjustRelatedTarget.
2617
2618 2011-04-08  Geoffrey Garen  <ggaren@apple.com>
2619
2620         Reviewed by Oliver Hunt.
2621
2622         A few heap-related renames and file moves.
2623         
2624         WeakGCPtr<T> => Weak<T>
2625         Global<T> => Strong<T>
2626         collector/ => heap/
2627         collector/* => heap/*
2628         runtime/WeakGCPtr.h => heap/Weak.h
2629         
2630         (Eventually, even more files should move into the heap directory. Like
2631         Heap.h and Heap.cpp, for example.)
2632
2633         * CMakeLists.txt:
2634         * ForwardingHeaders/collector: Removed.
2635         * ForwardingHeaders/heap: Copied from ForwardingHeaders/collector.
2636         * ForwardingHeaders/heap/Strong.h: Copied from ForwardingHeaders/collector/handles/Global.h.
2637         * ForwardingHeaders/heap/Weak.h: Copied from ForwardingHeaders/runtime/WeakGCPtr.h.
2638         * ForwardingHeaders/runtime/WeakGCPtr.h: Removed.
2639         * WebCore.vcproj/WebCore.vcproj:
2640         * WebCore.vcproj/copyForwardingHeaders.cmd:
2641         * bindings/js/JSCallbackData.h:
2642         * bindings/js/JSCustomVoidCallback.h:
2643         * bindings/js/JSDOMWindowBase.h:
2644         * bindings/js/JSDOMWindowShell.cpp:
2645         (WebCore::JSDOMWindowShell::setWindow):
2646         * bindings/js/JSDataGridDataSource.h:
2647         * bindings/js/JSEventListener.h:
2648         * bindings/js/ScheduledAction.cpp:
2649         (WebCore::ScheduledAction::ScheduledAction):
2650         * bindings/js/ScheduledAction.h:
2651         * bindings/js/ScriptCachedFrameData.cpp:
2652         (WebCore::ScriptCachedFrameData::ScriptCachedFrameData):
2653         * bindings/js/ScriptCachedFrameData.h:
2654         * bindings/js/ScriptController.cpp:
2655         (WebCore::ScriptController::createWindowShell):
2656         * bindings/js/ScriptController.h:
2657         * bindings/js/ScriptObject.h:
2658         * bindings/js/ScriptState.h:
2659         * bindings/js/ScriptValue.cpp:
2660         * bindings/js/ScriptValue.h:
2661         * bindings/js/ScriptWrappable.h:
2662         * bindings/js/WorkerScriptController.cpp:
2663         (WebCore::WorkerScriptController::initScript):
2664         * bindings/js/WorkerScriptController.h:
2665         * bridge/jsc/BridgeJSC.h:
2666         * bridge/qt/qt_runtime.h:
2667         * bridge/runtime_root.h:
2668         * xml/XMLHttpRequest.cpp:
2669
2670 2011-04-09  Keith Kyzivat  <keith.kyzivat@nokia.com>
2671
2672         Reviewed by Laszlo Gombos.
2673
2674         [Qt] Don't link against fontconfig or X11 if embedded
2675         https://bugs.webkit.org/show_bug.cgi?id=58104
2676
2677         No functional change so no new tests.
2678
2679         * WebCore.pri: qpa=>embedded should be done very early so all cases of embedded are uniform.
2680
2681 2011-04-09  Csaba Osztrogonác  <ossy@webkit.org>
2682
2683         [Qt] Unreviewed trivial fix after r83344.
2684
2685         * WebCore.pro: Update HEADERS list.
2686
2687 2011-04-09  Jon Lee  <jonlee@apple.com>
2688
2689         Reviewed by Beth Dakin.
2690
2691         Overlay scrollbar flashes in scrollable <textarea> with each keystroke (58180)
2692         https://bugs.webkit.org/show_bug.cgi?id=58180
2693         <rdar://problem/9047984>
2694
2695         * platform/mac/ScrollAnimatorMac.mm:
2696         (WebCore::ScrollAnimatorMac::immediateScrollToPoint): Check that there is a change before submitting
2697         (WebCore::ScrollAnimatorMac::immediateScrollByDeltaX):
2698         (WebCore::ScrollAnimatorMac::immediateScrollByDeltaY):
2699
2700 2011-04-09  Sreeram Ramachandran  <sreeram@google.com>
2701
2702         Reviewed by Ryosuke Niwa.
2703
2704         Gather data on modal dialogs shown during unload events
2705         https://bugs.webkit.org/show_bug.cgi?id=58115
2706
2707         Add a new method to the ChromeClient API to allow clients to receive
2708         notifications of modal dialogs dispatched during page dismissal events.
2709         The new method has a default empty definition; only chromium overrides
2710         it to keep track of histograms.
2711
2712         No tests because this is a no-op for all ports except chromium (and it's
2713         not clear how to test chromium histograms from webkit).
2714
2715         * page/Chrome.cpp:
2716         (WebCore::isDuringPageDismissal):
2717         (WebCore::willRunModalDialog):
2718         (WebCore::Chrome::runJavaScriptAlert):
2719         (WebCore::Chrome::runJavaScriptConfirm):
2720         (WebCore::Chrome::runJavaScriptPrompt):
2721         (WebCore::Chrome::willRunModalHTMLDialog):
2722         * page/Chrome.h:
2723         * page/ChromeClient.h:
2724         (WebCore::ChromeClient::willRunModalDialogDuringPageDismissal):
2725         * page/DOMWindow.cpp:
2726         (WebCore::DOMWindow::showModalDialog):
2727
2728 2011-04-08  David Humphrey  <david.humphrey@senecac.on.ca>
2729
2730         Reviewed by Eric Carlson.
2731
2732         Fix call order of media element muted and play(), such that setting muted before play() works.
2733         https://bugs.webkit.org/show_bug.cgi?id=57673
2734         https://code.google.com/p/chromium/issues/detail?id=70777
2735
2736         Manual test added: manual-tests/media-muted.html
2737
2738         * html/HTMLMediaElement.cpp:
2739         (WebCore::HTMLMediaElement::updatePlayState):
2740         * manual-tests/media-muted.html: Added.
2741
2742 2011-04-08  Nat Duca  <nduca@chromium.org>
2743
2744         Reviewed by David Levin.
2745
2746         [chromium] Fix windows assertion on ~CCThread
2747         https://bugs.webkit.org/show_bug.cgi?id=58153
2748
2749         Because ~CCThread uses waitForThreadCompletion,
2750         calling detachThread is not necessary.
2751
2752         * platform/graphics/chromium/cc/CCThread.cpp:
2753         (WebCore::CCThread::runLoop):
2754
2755 2011-04-08  Jian Li  <jianli@chromium.org>
2756
2757         Unreviewed, rolling out r83348.
2758         http://trac.webkit.org/changeset/83348
2759         https://bugs.webkit.org/show_bug.cgi?id=49508
2760
2761         Breaks layout tests in QT, Win7 and Chromium.
2762
2763         * rendering/RenderText.cpp:
2764         (WebCore::RenderText::localCaretRect):
2765
2766 2011-04-08  MORITA Hajime  <morrita@google.com>
2767
2768         Reviewed by Simon Fraser.
2769
2770         Negative spread should not make a sharp corner rounded
2771         https://bugs.webkit.org/show_bug.cgi?id=58162
2772
2773         Handled inset shadow path for rounded and non-rounded rect
2774         differently as normal shadow path is doing.
2775         
2776         * rendering/RenderBoxModelObject.cpp:
2777         (WebCore::RenderBoxModelObject::paintBoxShadow):
2778
2779 2011-04-07  Simon Fraser  <simon.fraser@apple.com>
2780
2781         Reviewed by Martin Robinson.
2782
2783         REGRESSION (r77034-r77220): CSS box-shadow no longer renders on PowerPC
2784         https://bugs.webkit.org/show_bug.cgi?id=55180
2785
2786         The endianness #ifdef in ShadowBlur was unnecessary and harmful. The
2787         data we get back from ImageBuffer::getImageData() do not vary in
2788         endianness.
2789
2790         * platform/graphics/ShadowBlur.cpp:
2791         (WebCore::ShadowBlur::blurLayerImage):
2792
2793 2011-04-08  Erik Arvidsson  <arv@chromium.org>
2794
2795         Reviewed by Dimitri Glazkov.
2796
2797         IFrame is getting the focus even though it is hidden
2798         https://bugs.webkit.org/show_bug.cgi?id=55861
2799
2800         Test: fast/dom/hidden-iframe-no-focus.html
2801
2802         * html/HTMLFrameOwnerElement.cpp:
2803         (WebCore::HTMLFrameOwnerElement::isKeyboardFocusable):
2804         * html/HTMLFrameOwnerElement.h:
2805
2806 2011-04-08  Jeff Timanus  <twiz@chromium.org>
2807
2808         Reviewed by Kenneth Russell.
2809
2810         Fall back to software rendering for Canvas2D when requesting a DrawingBuffer larger than supported by the GL environment.
2811         https://bugs.webkit.org/show_bug.cgi?id=57768
2812
2813         * html/canvas/CanvasRenderingContext2D.cpp:
2814         (WebCore::CanvasRenderingContext2D::CanvasRenderingContext2D):
2815         (WebCore::CanvasRenderingContext2D::reset):
2816         * platform/graphics/gpu/DrawingBuffer.cpp:
2817         (WebCore::DrawingBuffer::reset):
2818         * platform/graphics/gpu/DrawingBuffer.h:
2819
2820 2011-04-08  Daniel Cheng  <dcheng@chromium.org>
2821
2822         Reviewed by Dmitry Titov.
2823
2824         [chromium] Implement image/png support in DataTransferItems
2825         https://bugs.webkit.org/show_bug.cgi?id=58106
2826
2827         This patch implements DataTransferItem::getAsFile() using Blobs. In
2828         addition, plumbing for image/png has been added so image paste will be
2829         supported as long as the renderer makes that data available.
2830
2831         Tests: editing/pasteboard/data-transfer-items-image-png.html
2832
2833         * dom/DataTransferItem.h:
2834         * dom/DataTransferItem.idl:
2835         * platform/chromium/ClipboardMimeTypes.cpp:
2836         * platform/chromium/ClipboardMimeTypes.h:
2837         * platform/chromium/DataTransferItemChromium.cpp:
2838         (WebCore::DataTransferItemChromium::getAsString):
2839         (WebCore::DataTransferItemChromium::getAsFile):
2840         * platform/chromium/DataTransferItemChromium.h:
2841         * platform/chromium/PlatformBridge.h:
2842
2843 2011-04-08 MORITA Hajime  <morrita@google.com>
2844
2845         Unreviewed windows build fix.
2846         
2847         * editing/SpellingCorrectionController.h:
2848         (WebCore::SpellingCorrectionController::UNLESS_ENABLED):
2849
2850 2011-04-08  Enrica Casucci  <enrica@apple.com>
2851
2852         Reviewed by Maciej Stachowiak.
2853
2854         Improve lifetime management of nodes in ReplaceNodeWithSpanCommand.
2855         https://bugs.webkit.org/show_bug.cgi?id=57595
2856         <rdar://problem/9222122>
2857
2858         Test: editing/style/bold-with-dom-changes.html
2859
2860         * editing/ReplaceNodeWithSpanCommand.cpp:
2861         (WebCore::swapInNodePreservingAttributesAndChildren):
2862
2863 2011-04-07  Roland Steiner  <rolandsteiner@chromium.org>
2864
2865         Reviewed by Dimitri Glazkov.
2866
2867         Bug 58060 - Prepare access to TreeScope from Node, using NodeRareData
2868         https://bugs.webkit.org/show_bug.cgi?id=58060
2869
2870         Add a TreeScope pointer to NodeRareData to allow direct access to the containing tree scope.
2871         However, in case the containing scope is the document, this is not set, and the
2872         document pointer within Node is used instead.
2873
2874         In an object derived from TreeScope (currently Document), the tree scope pointer
2875         points to itself. Such objects also contain a parent tree scope pointer that
2876         points to the containing scope. For Document, this is 0.
2877
2878         Add new functions setTreeScope[Recursively] that replace setDocument[Recursively]
2879         in public usage. setDocument[Recursively] are now only used internally and are
2880         thererfore protected.
2881
2882         No new tests. (no new functionality)
2883
2884         * dom/ContainerNode.cpp: change DOM manipulation methods to update scope of inserted nodes
2885         (WebCore::ContainerNode::insertBefore):
2886         (WebCore::ContainerNode::replaceChild):
2887         (WebCore::ContainerNode::appendChild):
2888         * dom/Document.cpp:
2889         (WebCore::Document::~Document):
2890         (WebCore::Document::setDocType): Ditto
2891         (WebCore::Document::adoptNode): Ditto
2892         * dom/Document.h:
2893         * dom/Node.cpp:
2894         (WebCore::Node::treeScope): use NodeRareData to check if a non-Document scope is set
2895         (WebCore::Node::setTreeScope): update NodeRareData depending on whether scope is a document
2896         (WebCore::Node::setTreeScopeRecursively):
2897         (WebCore::Node::setDocumentRecursively):
2898         * dom/Node.h:
2899         * dom/NodeRareData.h: add scope pointer
2900         (WebCore::NodeRareData::NodeRareData):
2901         (WebCore::NodeRareData::treeScope):
2902         (WebCore::NodeRareData::setTreeScope):
2903         * dom/TreeScope.cpp: add parentTreeScope pointer
2904         (WebCore::TreeScope::TreeScope):
2905         (WebCore::TreeScope::setParentTreeScope):
2906         * dom/TreeScope.h:
2907         (WebCore::TreeScope::parentTreeScope):
2908
2909 2011-04-08  Xiaomei Ji  <xji@chromium.org>
2910
2911         Reviewed by David Hyatt.
2912
2913         Local caret rectangle calculation should be relative to its containing block.
2914         https://bugs.webkit.org/show_bug.cgi?id=49508.
2915
2916         InlineBox and caret rectangle are positioned relative to its containing block.
2917         So its left and right edge value should be relative to its containing block as well. 
2918
2919         Test: fast/forms/cursor-at-editable-content-boundary.html
2920
2921         * rendering/RenderText.cpp:
2922         (WebCore::RenderText::localCaretRect):
2923
2924 2011-04-08  MORITA Hajime  <morrita@google.com>
2925
2926         Unreviewed build fix.
2927
2928         * editing/Editor.cpp:
2929         (WebCore::Editor::markMisspellingsAfterTypingToWord):
2930
2931 2011-04-08  David Hyatt  <hyatt@apple.com>
2932
2933         Reviewed by Simon Fraser.
2934
2935         https://bugs.webkit.org/show_bug.cgi?id=57971
2936         
2937         Rework visited/unvisited links for before/after content. Propagate the bits earlier so that we don't lose
2938         them when we throw away the visited style. Don't throw away the visited link style for pseudo elements
2939         either, so that the styles are consistent.
2940
2941         Added fast/history/visited-generated-content-test.html
2942
2943         * css/CSSStyleSelector.cpp:
2944         (WebCore::CSSStyleSelector::styleForElement):
2945         (WebCore::CSSStyleSelector::pseudoStyleForElement):
2946
2947 2011-04-06  MORITA Hajime  <morrita@google.com>
2948
2949         Reviewed by Darin Adler.
2950
2951         [Refactoring] Auto correction panel should be handled by its own class.
2952         https://bugs.webkit.org/show_bug.cgi?id=55571
2953
2954         Extracted code inside SUPPORT_AUTOCORRECTION_PANEL into
2955         SpellingCorrectionController class.
2956         This change also remove some SUPPORT_AUTOCORRECTION_PANEL guard if
2957         code paths inside the never reached without autocorrection support.
2958         Removing guards reduces unintentional build breakage.
2959
2960         No new tests, no behavior chagne.
2961
2962         * CMakeLists.txt:
2963         * GNUmakefile.am:
2964         * WebCore.gypi:
2965         * WebCore.pro:
2966         * WebCore.vcproj/WebCore.vcproj:
2967         * WebCore.xcodeproj/project.pbxproj:
2968         * editing/CorrectionPanelInfo.h: Removed.
2969         * editing/EditingAllInOne.cpp:
2970         * editing/Editor.cpp:
2971         (WebCore::Editor::respondToChangedSelection):
2972         (WebCore::Editor::respondToChangedContents):
2973         (WebCore::Editor::appliedEditing):
2974         (WebCore::Editor::Editor):
2975         (WebCore::Editor::~Editor):
2976         (WebCore::Editor::insertTextWithoutSendingTextEvent):
2977         (WebCore::Editor::insertLineBreak):
2978         (WebCore::Editor::insertParagraphSeparator):
2979         (WebCore::Editor::cut):
2980         (WebCore::Editor::paste):
2981         (WebCore::Editor::pasteAsPlainText):
2982         (WebCore::Editor::isAutomaticSpellingCorrectionEnabled):
2983         (WebCore::Editor::markMisspellingsAfterTypingToWord):
2984         (WebCore::Editor::markAllMisspellingsAndBadGrammarInRanges):
2985         (WebCore::Editor::changeBackToReplacedString):
2986         (WebCore::Editor::unappliedSpellCorrection):
2987         (WebCore::Editor::updateMarkersForWordsAffectedByEditing):
2988         (WebCore::Editor::startCorrectionPanelTimer):
2989         (WebCore::Editor::handleCorrectionPanelResult):
2990         (WebCore::Editor::dismissCorrectionPanelAsIgnored):
2991         * editing/Editor.h:
2992         * editing/SpellingCorrectionCommand.cpp:
2993         * editing/SpellingCorrectionController.cpp: Added.
2994         (WebCore::markerTypesForAutocorrection):
2995         (WebCore::markerTypesForReplacement):
2996         (WebCore::markersHaveIdenticalDescription):
2997         (WebCore::SpellingCorrectionController::SpellingCorrectionController):
2998         (WebCore::SpellingCorrectionController::~SpellingCorrectionController):
2999         (WebCore::SpellingCorrectionController::startCorrectionPanelTimer):
3000         (WebCore::SpellingCorrectionController::stopCorrectionPanelTimer):
3001         (WebCore::SpellingCorrectionController::stopPendingCorrection):
3002         (WebCore::SpellingCorrectionController::applyPendingCorrection):
3003         (WebCore::SpellingCorrectionController::hasPendingCorrection):
3004         (WebCore::SpellingCorrectionController::isSpellingMarkerAllowed):
3005         (WebCore::SpellingCorrectionController::show):
3006         (WebCore::SpellingCorrectionController::handleCancelOperation):
3007         (WebCore::SpellingCorrectionController::dismiss):
3008         (WebCore::SpellingCorrectionController::dismissSoon):
3009         (WebCore::SpellingCorrectionController::applyCorrectionPanelInfo):
3010         (WebCore::SpellingCorrectionController::applyAutocorrectionBeforeTypingIfAppropriate):
3011         (WebCore::SpellingCorrectionController::respondToUnappliedSpellCorrection):
3012         (WebCore::SpellingCorrectionController::correctionPanelTimerFired):
3013         (WebCore::SpellingCorrectionController::handleCorrectionPanelResult):
3014         (WebCore::SpellingCorrectionController::isAutomaticSpellingCorrectionEnabled):
3015         (WebCore::SpellingCorrectionController::windowRectForRange):
3016         (WebCore::SpellingCorrectionController::respondToChangedSelection):
3017         (WebCore::SpellingCorrectionController::respondToAppliedEditing):
3018         (WebCore::SpellingCorrectionController::client):
3019         (WebCore::SpellingCorrectionController::textChecker):
3020         (WebCore::SpellingCorrectionController::recordAutocorrectionResponseReversed):
3021         (WebCore::SpellingCorrectionController::markReversed):
3022         (WebCore::SpellingCorrectionController::markCorrection):
3023         (WebCore::SpellingCorrectionController::recordSpellcheckerResponseForModifiedCorrection):
3024         * editing/SpellingCorrectionController.h: Added.
3025         (WebCore::SpellingCorrectionController::UNLESS_ENABLED):
3026         (WebCore::SpellingCorrectionController::shouldStartTimeFor):
3027         (WebCore::SpellingCorrectionController::shouldRemoveMarkersUponEditing):        
3028         * editing/TypingCommand.cpp:
3029         (WebCore::TypingCommand::insertText):
3030         (WebCore::TypingCommand::markMisspellingsAfterTyping):
3031         (WebCore::TypingCommand::deleteKeyPressed):
3032         (WebCore::TypingCommand::forwardDeleteKeyPressed):
3033         * editing/htmlediting.h:
3034         (WebCore::isAmbiguousBoundaryCharacter):
3035         * page/EditorClient.h:
3036         * page/Frame.cpp:
3037         (WebCore::Frame::setPageAndTextZoomFactors):
3038
3039 2011-04-08  Alpha Lam  <hclam@chromium.org>
3040
3041         Unreviewed, rolling out r83335.
3042         http://trac.webkit.org/changeset/83335
3043         https://bugs.webkit.org/show_bug.cgi?id=53556
3044
3045         GTK and QT bots are broken
3046
3047         * CMakeLists.txt:
3048         * Configurations/FeatureDefines.xcconfig:
3049         * DerivedSources.make:
3050         * GNUmakefile.am:
3051         * WebCore.gypi:
3052         * WebCore.xcodeproj/project.pbxproj:
3053         * features.pri:
3054         * html/HTMLAttributeNames.in:
3055         * html/HTMLTagNames.in:
3056         * html/HTMLTrackElement.cpp: Removed.
3057         * html/HTMLTrackElement.h: Removed.
3058         * html/HTMLTrackElement.idl: Removed.
3059
3060 2011-04-08  Brady Eidson  <beidson@apple.com>
3061
3062         Reviewed by Adam Roben.
3063
3064         https://bugs.webkit.org/show_bug.cgi?id=58155 and part of <rdar://problem/9251767>
3065         BitmapImage::getFirstCGImageRefOfSize fails if the frameCount hasn't been initialized from the image source.
3066
3067         * platform/graphics/cg/ImageCG.cpp:
3068         (WebCore::BitmapImage::getFirstCGImageRefOfSize): Call frameCount() instead of accessing m_frames.size() to
3069           make sure the frames are properly tallied first.
3070
3071 2011-04-08  Benjamin Poulain  <benjamin.poulain@nokia.com>
3072
3073         Reviewed by Andreas Kling.
3074
3075         [Qt] Dragging and dropping an image in edit mode does not work
3076         https://bugs.webkit.org/show_bug.cgi?id=19385
3077
3078         When adding an image to the clipboard, we should also include the HTML code of that image so
3079         it can be used for internal drag and drop.
3080
3081         This HTML is expected by all clients of drop events so a fragment can be moved from one browser to
3082         another, or inside the same browser.
3083
3084         * platform/qt/ClipboardQt.cpp:
3085         (WebCore::ClipboardQt::declareAndWriteDragImage):
3086
3087 2011-04-07  Anna Cavender  <annacc@chromium.org>
3088
3089         Reviewed by Eric Carlson.
3090
3091         Setup ENABLE(TRACK) feature define + initial HTMLTrackElement
3092         https://bugs.webkit.org/show_bug.cgi?id=53556
3093
3094         No new tests. No real functionality added just yet.
3095
3096         * CMakeLists.txt:
3097         * Configurations/FeatureDefines.xcconfig:
3098         * DerivedSources.make:
3099         * GNUmakefile.am:
3100         * WebCore.gypi:
3101         * WebCore.xcodeproj/project.pbxproj:
3102         * features.pri:
3103         * html/HTMLAttributeNames.in:
3104         * html/HTMLTagNames.in:
3105         * html/HTMLTrackElement.cpp: Added.
3106         (WebCore::HTMLTrackElement::HTMLTrackElement):
3107         (WebCore::HTMLTrackElement::create):
3108         (WebCore::HTMLTrackElement::insertedIntoTree):
3109         (WebCore::HTMLTrackElement::willRemove):
3110         (WebCore::HTMLTrackElement::src):
3111         (WebCore::HTMLTrackElement::setSrc):
3112         (WebCore::HTMLTrackElement::kind):
3113         (WebCore::HTMLTrackElement::setKind):
3114         (WebCore::HTMLTrackElement::srclang):
3115         (WebCore::HTMLTrackElement::setSrclang):
3116         (WebCore::HTMLTrackElement::label):
3117         (WebCore::HTMLTrackElement::setLabel):
3118         (WebCore::HTMLTrackElement::isDefault):
3119         (WebCore::HTMLTrackElement::setIsDefault):
3120         (WebCore::HTMLTrackElement::isURLAttribute):
3121         * html/HTMLTrackElement.h: Added.
3122         * html/HTMLTrackElement.idl: Added.
3123
3124 2011-04-07  Jer Noble  <jer.noble@apple.com>
3125
3126         Reviewed by Eric Carlson.
3127
3128         Logic error in HTMLMediaElement::exitFullscreen()
3129         https://bugs.webkit.org/show_bug.cgi?id=58085
3130
3131         The new full screen API case could fall through to the legacy API case
3132         unintentionally if a script calls exitFullscreen on an element which is
3133         not the current full screen element.
3134
3135         * html/HTMLMediaElement.cpp:
3136         (WebCore::HTMLMediaElement::enterFullscreen):
3137         (WebCore::HTMLMediaElement::exitFullscreen):
3138
3139 2011-04-08  Mike Reed  <reed@google.com>
3140
3141         Reviewed by Eric Seidel.
3142
3143         Replace SKIA_TEXT with isNativeFontRenderingAllowed() for print-preview to work
3144         https://bugs.webkit.org/show_bug.cgi?id=57782
3145
3146         No new tests. This change only affects print-preview and build option SKIA_GPU 
3147
3148         * platform/graphics/skia/SkiaFontWin.cpp:
3149         (WebCore::paintSkiaText):
3150
3151 2011-04-08  Ryosuke Niwa  <rniwa@webkit.org>
3152
3153         Reviewed by Tony Chang, Darin Adler, and Enrica Casucci.
3154
3155         REGRESSION(r81887): Crash in SplitElement
3156         https://bugs.webkit.org/show_bug.cgi?id=57743
3157
3158         The crash was caused by ReplaceSelectionCommand::doApply's calling splitElement with computeNodeAfterPosition
3159         even when the position was after the last node in it container. Since all we are doing here is to splitting tree
3160         up until the highest ancestor with isInlineNodeWithStyle, replaced the while loop by calls to splitTreeToNode
3161         and highestEnclosingNodeOfType.
3162
3163         Also fixed a bug in splitTreeToNode not to check the difference in visible position when splitting the ancestor,
3164         which would have introduced unnecessary nodes when splitting tree and a bug in highestEnclosingNodeOfType that
3165         it incorrectly called deprecatedNode instead of containerNode.
3166
3167         Test: editing/inserting/insert-images-in-pre-x-crash.html
3168
3169         * editing/CompositeEditCommand.cpp:
3170         (WebCore::CompositeEditCommand::splitTreeToNode):
3171         * editing/ReplaceSelectionCommand.cpp:
3172         (WebCore::ReplaceSelectionCommand::doApply):
3173         * editing/htmlediting.cpp:
3174         (WebCore::highestEnclosingNodeOfType):
3175
3176 2011-04-08  Antti Koivisto  <antti@apple.com>
3177
3178         Reviewed by Tony Gentilcore.
3179
3180         Incoming source should be preload scanned when the parser is blocked 
3181         https://bugs.webkit.org/show_bug.cgi?id=58117
3182
3183         Scan the appended source if parser is blocked.
3184
3185         Test: http/tests/loading/preload-append-scan.php
3186
3187         * html/parser/HTMLDocumentParser.cpp:
3188         (WebCore::HTMLDocumentParser::append):
3189
3190 2011-04-08  Martin Robinson  <mrobinson@igalia.com>
3191
3192         Reviewed by Xan Lopez.
3193
3194         [GTK] Fix the WebKit2 build for older versions of GTK+
3195         https://bugs.webkit.org/show_bug.cgi?id=58095
3196
3197         No new tests. This is just a build fix.
3198
3199         * platform/gtk/GtkVersioning.c:
3200         (gdk_window_create_similar_surface): Reimplement this method for older versions of GDK.
3201         * platform/gtk/GtkVersioning.h: Add the new method to the header.
3202
3203 2011-04-08  Misha Tyutyunik  <michael.tyutyunik@nokia.com>
3204
3205         Reviewed by Laszlo Gombos.
3206
3207         [Qt] Plugin is not scrolled together with page content or jumping 
3208         when content is rendered using cache (backing store).
3209         https://bugs.webkit.org/show_bug.cgi?id=56130
3210         
3211         This is a Symbian portion of the fix. For Linux it looks like
3212         it's enough to call set geometry which should be addressed in
3213         https://bugs.webkit.org/show_bug.cgi?id=57179
3214
3215         No new tests required. This can be tested with manual tests from 
3216         WebCore/manual-tests/qt and WebCore/manual-tests/plugins
3217
3218         * plugins/symbian/PluginViewSymbian.cpp:
3219         (WebCore::PluginView::updatePluginWidget):
3220
3221 2011-04-08  Abhishek Arya  <inferno@chromium.org>
3222
3223         Unreviewed. Remove accidental printf added in r83306.
3224
3225         * page/EventHandler.cpp:
3226         (WebCore::EventHandler::sendContextMenuEvent):
3227
3228 2011-04-08  Enrica Casucci  <enrica@apple.com>
3229
3230         Reviewed by Darin Adler.
3231
3232         Dragging text in a WebKit2 window results in a copy instead of a move.
3233         https://bugs.webkit.org/show_bug.cgi?id=56772
3234         <rdar://problem/9165140>
3235
3236         cleanupAfterSystemDrag cannot call dragEnd in WebKit2, since
3237         the call to startDrag is asynchronous.
3238         
3239         * page/mac/DragControllerMac.mm:
3240         (WebCore::DragController::cleanupAfterSystemDrag):
3241
3242 2011-04-05  Dimitri Glazkov  <dglazkov@chromium.org>
3243
3244         Reviewed by Darin Adler.
3245
3246         Move WheelEvent-dispatching logic into WheelEventDispatchMediator.
3247         https://bugs.webkit.org/show_bug.cgi?id=57642
3248
3249         Covered by existing tests, no functional change.
3250
3251         * dom/Event.cpp:
3252         * dom/Event.h:
3253         (WebCore::EventDispatchMediator::EventDispatchMediator): Added default
3254             constructor.
3255         (WebCore::EventDispatchMediator::event): Inlined.
3256         (WebCore::EventDispatchMediator::setEvent): Added.
3257         * dom/EventDispatcher.cpp: Removed dispatchWheelEvent.
3258         * dom/EventDispatcher.h: Updated decls.
3259         * dom/Node.cpp:
3260         (WebCore::Node::dispatchWheelEvent): Changed to use the mediator and
3261             return a bool, like other dispatch event functions.
3262         * dom/Node.h: Changed decl.
3263         * dom/WheelEvent.cpp:
3264         (WebCore::granularity): Moved from EventDispatcher.
3265         (WebCore::WheelEventDispatchMediator::WheelEventDisatchMediator): Added.
3266         (WebCore::WheelEventDispatchMediator::event): Added.
3267         (WebCore::WheelEventDispatchMediator::dispatchEvent): Added.
3268         * dom/WheelEvent.h: Updated decls.
3269         * page/EventHandler.cpp:
3270         (WebCore::EventHandler::handleWheelEvent): Changed to receive and react
3271             to the return value.
3272
3273 2011-04-08  Jessie Berlin  <jberlin@apple.com>
3274
3275         Windows build warning fix.
3276
3277         * WebCore.vcproj/WebCore.vcproj:
3278         Since ShadowRoot.cpp is included in the DOMAllInOne.cpp file, it should be excluded from
3279         the build.
3280
3281 2011-04-07  Pavel Podivilov  <podivilov@chromium.org>
3282
3283         Reviewed by Pavel Feldman.
3284
3285         Web Inspector: update breakpoints according to source frame decorations after live edit.
3286         https://bugs.webkit.org/show_bug.cgi?id=58029
3287
3288         * inspector/front-end/DebuggerPresentationModel.js:
3289         (WebInspector.DebuggerPresentationModel.prototype.editScriptSource.didEditScriptSource):
3290         (WebInspector.DebuggerPresentationModel.prototype.editScriptSource):
3291         (WebInspector.DebuggerPresentationModel.prototype._updateResourceContent.didEditScriptSource):
3292         (WebInspector.DebuggerPresentationModel.prototype._updateResourceContent):
3293         * inspector/front-end/SourceFile.js:
3294         (WebInspector.SourceFile.prototype.set content):
3295         * inspector/front-end/SourceFrame.js:
3296         (WebInspector.SourceFrame.prototype._handleSave.didEditScriptSource):
3297         (WebInspector.SourceFrame.prototype._handleSave):
3298
3299 2011-04-08  Pavel Podivilov  <podivilov@chromium.org>
3300
3301         Reviewed by Pavel Feldman.
3302
3303         Web Inspector: fix scripts concatenation in scripts panel.
3304         https://bugs.webkit.org/show_bug.cgi?id=58138
3305
3306         When there is just one script starting at 0:0 it should not be surrounded by <script> framing.
3307
3308         * inspector/front-end/SourceFile.js:
3309         (WebInspector.SourceFile.prototype._loadResourceContent):
3310         (WebInspector.SourceFile.prototype._loadAndConcatenateScriptsContent):
3311
3312 2011-04-08  Pavel Feldman  <pfeldman@chromium.org>
3313
3314         Reviewed by Yury Semikhatsky.
3315
3316         Web Inspector: use "locations" for debugger scripts, "lineNumbers" for the UI elements.
3317         https://bugs.webkit.org/show_bug.cgi?id=58118
3318
3319         This change reuses location for call frames in the protocol + structures script
3320         location <-> source lines interaction better. When we need UI columns, we will add
3321         them, but we should distinguish between script and UI terms on the type level, not naming.
3322
3323         * English.lproj/localizedStrings.js:
3324         * bindings/v8/DebuggerScript.js:
3325         * inspector/InjectedScriptSource.js:
3326         * inspector/Inspector.json:
3327         * inspector/front-end/CallStackSidebarPane.js:
3328         (WebInspector.CallStackSidebarPane.prototype.update.didGetSourceLine):
3329         (WebInspector.CallStackSidebarPane.prototype.update):
3330         * inspector/front-end/DebuggerPresentationModel.js:
3331         (WebInspector.DebuggerPresentationModel.prototype.addConsoleMessage.didRequestSourceMapping):
3332         (WebInspector.DebuggerPresentationModel.prototype.addConsoleMessage):
3333         (WebInspector.DebuggerPresentationModel.prototype.continueToLine):
3334         (WebInspector.DebuggerPresentationModel.prototype._setBreakpointInDebugger.didRequestSourceMapping):
3335         (WebInspector.DebuggerPresentationModel.prototype._setBreakpointInDebugger):
3336         (WebInspector.DebuggerPresentationModel.prototype._breakpointAdded.didRequestSourceMapping):
3337         (WebInspector.DebuggerPresentationModel.prototype._breakpointAdded):
3338         (WebInspector.PresenationCallFrame):
3339         (WebInspector.PresenationCallFrame.prototype.sourceLine.didRequestSourceMapping):
3340         (WebInspector.PresenationCallFrame.prototype.sourceLine):
3341         * inspector/front-end/ScriptFormatter.js:
3342         (WebInspector.ScriptFormatter.locationToPosition):
3343         (WebInspector.ScriptFormatter.lineToPosition):
3344         * inspector/front-end/ScriptsPanel.js:
3345         (WebInspector.ScriptsPanel.prototype._debuggerPaused.else.didGetSourceLocation):
3346         (WebInspector.ScriptsPanel.prototype._debuggerPaused):
3347         (WebInspector.ScriptsPanel.prototype.showAnchorLocation):
3348         (WebInspector.ScriptsPanel.prototype._callFrameSelected.didGetSourceLocation):
3349         (WebInspector.ScriptsPanel.prototype._callFrameSelected):
3350         * inspector/front-end/SourceFile.js:
3351         (WebInspector.SourceMapping.prototype.scriptLocationToSourceLine):
3352         (WebInspector.SourceMapping.prototype.sourceLineToScriptLocation):
3353         (WebInspector.FormattedSourceMapping.prototype.scriptLocationToSourceLine):
3354         (WebInspector.FormattedSourceMapping.prototype.sourceLineToScriptLocation):
3355
3356 2011-04-08  Pavel Podivilov  <podivilov@chromium.org>
3357
3358         Reviewed by Pavel Feldman.
3359
3360         Web Inspector: distinguish breakpoints set on de-obfuscated sources from breakponts set on original sources.
3361         https://bugs.webkit.org/show_bug.cgi?id=58133
3362
3363         * inspector/front-end/DebuggerPresentationModel.js:
3364         (WebInspector.DebuggerPresentationModel.prototype.canEditScriptSource):
3365         (WebInspector.DebuggerPresentationModel.prototype.toggleFormatSourceFiles):
3366         (WebInspector.DebuggerPresentationModel.prototype._debuggerPaused):
3367         (WebInspector.DebuggerPresentationModel.prototype._sourceFileForScript):
3368         (WebInspector.DebuggerPresentationModel.prototype._scriptForSourceFileId):
3369         (WebInspector.DebuggerPresentationModel.prototype._createSourceFileId):
3370         (WebInspector.DebuggerPresentationModel.prototype._reset):
3371
3372 2011-04-07  Pavel Podivilov  <podivilov@chromium.org>
3373
3374         Reviewed by Pavel Feldman.
3375
3376         Web Inspector: make SourceFrame TextViewer's delegate for editing operations.
3377         https://bugs.webkit.org/show_bug.cgi?id=58026
3378
3379         This is the first step of decoupling TextViewer from SourceFrame.
3380
3381         * inspector/front-end/SourceFrame.js:
3382         (WebInspector.SourceFrame):
3383         (WebInspector.SourceFrame.prototype.show):
3384         (WebInspector.SourceFrame.prototype.hide):
3385         (WebInspector.SourceFrame.prototype._ensureContentLoaded):
3386         (WebInspector.SourceFrame.prototype.contentEditable):
3387         (WebInspector.SourceFrame.prototype.startEditing):
3388         (WebInspector.SourceFrame.prototype.endEditing):
3389         (WebInspector.SourceFrame.prototype._createTextViewer):
3390         (WebInspector.SourceFrame.prototype._handleSave):
3391         (WebInspector.SourceFrame.prototype._handleRevertEditing):
3392         * inspector/front-end/TextViewer.js:
3393         (WebInspector.TextViewer.prototype._enterInternalTextChangeMode):
3394         (WebInspector.TextViewer.prototype._exitInternalTextChangeMode):
3395         (WebInspector.TextViewer.prototype._syncDecorationsForLine):
3396         (WebInspector.TextViewer.prototype._doubleClick):
3397         (WebInspector.TextViewerDelegate):
3398         (WebInspector.TextViewerDelegate.prototype.contentEditable):
3399         (WebInspector.TextViewerDelegate.prototype.startEditing):
3400         (WebInspector.TextViewerDelegate.prototype.endEditing):
3401         (WebInspector.TextEditorMainPanel.prototype._paintScheduledLines):
3402         (WebInspector.TextEditorMainPanel.prototype._handleDOMUpdates):
3403         * inspector/front-end/inspector.html:
3404
3405 2011-04-08  Leandro Gracia Gil  <leandrogracia@chromium.org>
3406
3407         Reviewed by Steve Block.
3408
3409         Media Stream API: add the getUserMedia method and the Javascript bindings.
3410         https://bugs.webkit.org/show_bug.cgi?id=56586
3411
3412         Add the getUserMedia method to the navigator and its new Javascript types.
3413         Current specification: http://www.whatwg.org/specs/web-apps/current-work/multipage/dnd.html#video-conferencing-and-peer-to-peer-communication
3414
3415         Tests: fast/dom/MediaStream/argument-types.html
3416                fast/dom/MediaStream/enabled.html
3417                fast/dom/MediaStream/no-interface-object.html
3418
3419         * Android.derived.jscbindings.mk:
3420         * Android.derived.v8bindings.mk:
3421         * Android.v8bindings.mk:
3422         * CMakeLists.txt:
3423         * CodeGenerators.pri:
3424         * DerivedSources.cpp:
3425         * DerivedSources.make:
3426         * GNUmakefile.list.am:
3427         * WebCore.gypi:
3428         * WebCore.pro:
3429         * WebCore.vcproj/WebCore.vcproj:
3430         * WebCore.xcodeproj/project.pbxproj:
3431         * bindings/js/JSNavigatorCustom.cpp:
3432         (WebCore::JSNavigator::webkitGetUserMedia):
3433         * bindings/v8/custom/V8NavigatorCustom.cpp: Added.
3434         (WebCore::V8Navigator::webkitGetUserMediaCallback):
3435         * page/Navigator.cpp:
3436         (WebCore::Navigator::webkitGetUserMedia):
3437         * page/Navigator.h:
3438         * page/Navigator.idl:
3439         * page/NavigatorUserMediaError.h: Added.
3440         (WebCore::NavigatorUserMediaError::NavigatorUserMediaError):
3441         (WebCore::NavigatorUserMediaError::~NavigatorUserMediaError):
3442         (WebCore::NavigatorUserMediaError::code):
3443         * page/NavigatorUserMediaError.idl: Added.
3444         * page/NavigatorUserMediaErrorCallback.h: Added.
3445         (WebCore::NavigatorUserMediaErrorCallback::~NavigatorUserMediaErrorCallback):
3446         * page/NavigatorUserMediaErrorCallback.idl: Added.
3447         * page/NavigatorUserMediaSuccessCallback.h: Added.
3448         (WebCore::NavigatorUserMediaSuccessCallback::~NavigatorUserMediaSuccessCallback):
3449         * page/NavigatorUserMediaSuccessCallback.idl: Added.
3450
3451 2011-04-08  Mikhail Naganov  <mnaganov@chromium.org>
3452
3453         Reviewed by Pavel Feldman.
3454
3455         Web Inspector: [Chromium] Add more tests for detailed heap snapshots UI.
3456         https://bugs.webkit.org/show_bug.cgi?id=58010
3457         https://bugs.webkit.org/show_bug.cgi?id=58011
3458
3459         Added tests for "Containment" view. Minor refactorings, bugs fixed.
3460         Split one large tests into smaller ones to avoid timing out in debug mode.
3461
3462         Tests: inspector/profiler/detailed-heapshots-containment-expansion-preserved-when-sorting.html
3463                inspector/profiler/detailed-heapshots-containment-show-all.html
3464                inspector/profiler/detailed-heapshots-containment-show-next.html
3465                inspector/profiler/detailed-heapshots-containment-sorting.html
3466                inspector/profiler/detailed-heapshots-summary-expansion-preserved-when-sorting.html
3467                inspector/profiler/detailed-heapshots-summary-show-all.html
3468                inspector/profiler/detailed-heapshots-summary-show-next.html
3469                inspector/profiler/detailed-heapshots-summary-sorting.html
3470
3471         * inspector/front-end/DetailedHeapshotGridNodes.js:
3472         (WebInspector.HeapSnapshotGridNode):
3473         (WebInspector.HeapSnapshotGridNode.prototype.populateChildren):
3474         (WebInspector.HeapSnapshotGridNode.prototype.sort.doSort):
3475         (WebInspector.HeapSnapshotGridNode.prototype.sort):
3476         (WebInspector.HeapSnapshotGenericObjectNode):
3477         (WebInspector.HeapSnapshotObjectNode):
3478         (WebInspector.HeapSnapshotInstanceNode):