a160dd1dcde97c322d846805a4069b357e52d9e7
[WebKit-https.git] / WebCore / ChangeLog
1 2009-06-30  Maxime Simon  <simon.maxime@gmail.com>
2
3         Reviewed by Eric Seidel.
4
5         StorageNamespace.cpp build issue
6         https://bugs.webkit.org/show_bug.cgi?id=26859
7
8         Moved #endif //ENABLE(DOM_STORAGE) position
9         so that the build doesn't fail.
10         The namespace WebCore was started after the #if ENABLE(DOM_STORAGE)
11         but closed after the #endif.
12
13         * storage/StorageNamespace.cpp:
14
15 2009-06-30  Eric Carlson  <eric.carlson@apple.com>
16
17         Reviewed by Oliver Hunt.
18
19         <rdar://problem/7020825> HTMLMediaElement should not assume seeking is only possible in 
20         buffered time ranges
21
22         * html/HTMLMediaElement.cpp:
23             Don't ASSERT if the network state goes to Idle when when the ready state is 
24             HaveEnoughData or higher, it is perfectly legal.
25         (WebCore::HTMLMediaElement::setReadyState): 
26             Don't clear m_seeking after posting a 'seeking' event.
27
28         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
29         (WebCore::MediaPlayerPrivate::seek):
30             Do nothing when asked to seek to the same time we are already seeking to. Check requested
31             seek time against maxTimeSeekable, not maxTimeLoaded.
32         (WebCore::MediaPlayerPrivate::doSeek):
33             Don't bother stopping a movie that isn't playing. Minor cleanup to make the code more readable.
34         (WebCore::MediaPlayerPrivate::seekTimerFired):
35             Check requested seek time against maxTimeSeekable, not maxTimeLoaded.
36         (WebCore::MediaPlayerPrivate::updateStates):
37             A streaming movie has as much data as it needs once it reaches "playable", so 
38             set the ready state to HaveFutureData. A movie with metadata doesn't drop back 
39             to "have nothing" when seeking. A streaming movie doesn't use the network when paused.
40         (WebCore::MediaPlayerPrivate::timeChanged):
41             It may not be possible to seek to a specific time in a streamed movie but when seeking 
42             in a streaming movie QuickTime sets the time to closest time possible and posts a  
43             timechanged notification, so update m_seekTo so we can detect when the seek completes.
44
45 2009-06-30  Steve Falkenburg  <sfalken@apple.com>
46
47         https://bugs.webkit.org/show_bug.cgi?id=26860
48
49         Reviewed by Sam Weinig.
50
51         Blacklist Yahoo Application State plug-in for versions prior to 1.0.0.6.
52         Earlier versions cause corruption crashes.
53
54         * plugins/win/PluginPackageWin.cpp:
55         (WebCore::PluginPackage::isPluginBlacklisted):
56
57 2009-06-30  Dean Jackson  <dino@apple.com>
58
59         Reviewed by Simon Fraser.
60
61         <rdar://problem/7005207> <video> in canvas broken with ACCEL_COMPOSITING
62         
63         Fix drawImage of video in CanvasRenderingContext2D when
64         accelerated compositing is enabled. This is done by
65         adding a new paint method to HTMLVideoElement that
66         is only called from canvas, which will create the software
67         renderer if necessary, but otherwise calls the regular
68         paint method. Meanwhile, add logic to the software video
69         renderer so that it can be created without calling repaint
70         every time it sees a new frame.
71         
72         * html/CanvasRenderingContext2D.cpp:
73         (WebCore::CanvasRenderingContext2D::drawImage):
74         * html/HTMLVideoElement.cpp:
75         (WebCore::HTMLVideoElement::paintCurrentFrameInContext):
76         * html/HTMLVideoElement.h:
77         * platform/graphics/MediaPlayer.cpp:
78         (WebCore::MediaPlayer::paintCurrentFrameInContext):
79         * platform/graphics/MediaPlayer.h:
80         * platform/graphics/MediaPlayerPrivate.h:
81         (WebCore::MediaPlayerPrivateInterface::paintCurrentFrameInContext):
82         * platform/graphics/mac/MediaPlayerPrivateQTKit.h:
83         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
84         (WebCore::MediaPlayerPrivate::createQTMovie):
85         (WebCore::MediaPlayerPrivate::createQTVideoRenderer):
86         (WebCore::MediaPlayerPrivate::currentRenderingMode):
87         (WebCore::MediaPlayerPrivate::setUpVideoRendering):
88         (WebCore::MediaPlayerPrivate::tearDownVideoRendering):
89         (WebCore::MediaPlayerPrivate::paintCurrentFrameInContext):
90
91 2009-06-30  David Hyatt  <hyatt@apple.com>
92
93         Reviewed by Beth Dakin.
94
95         https://bugs.webkit.org/show_bug.cgi?id=26858
96
97         Get <dcol> elements reflected into the datagrid's column list.  Make sure columns get added/removed
98         properly.  (Attribute changes are still not caught.  That is coming in a separate patch.)
99
100         Added fast/dom/HTMLDataGridElement/DataGridColumns-dom.html
101
102         * html/DataGridColumn.h:
103         (WebCore::DataGridColumn::create):
104         (WebCore::DataGridColumn::setColumnList):
105         (WebCore::DataGridColumn::DataGridColumn):
106         * html/DataGridColumnList.cpp:
107         (WebCore::DataGridColumnList::add):
108         (WebCore::DataGridColumnList::remove):
109         (WebCore::DataGridColumnList::clear):
110         * html/DataGridColumnList.h:
111         * html/HTMLDataGridColElement.cpp:
112         (WebCore::HTMLDataGridColElement::HTMLDataGridColElement):
113         (WebCore::HTMLDataGridColElement::findDatagridAncestor):
114         (WebCore::HTMLDataGridColElement::ensureColumn):
115         (WebCore::HTMLDataGridColElement::insertedIntoTree):
116         (WebCore::HTMLDataGridColElement::removedFromTree):
117         (WebCore::HTMLDataGridColElement::sortable):
118         (WebCore::HTMLDataGridColElement::setSortable):
119         * html/HTMLDataGridColElement.h:
120         (WebCore::HTMLDataGridColElement::column):
121         (WebCore::HTMLDataGridColElement::setColumn):
122         (WebCore::HTMLDataGridColElement::datagrid):
123         * html/HTMLDataGridElement.cpp:
124         (WebCore::HTMLDataGridElement::setDataSource):
125         (WebCore::HTMLDataGridElement::dataSource):
126
127 2009-06-30  Jeremy Orlow (jorlow@chromium.org)
128
129         Reviewed by David Levin.
130
131         https://bugs.webkit.org/show_bug.cgi?id=26852
132
133         Fix some minor build issues in the v8 bindings.
134
135         * bindings/v8/custom/V8StorageCustom.cpp:
136         (WebCore::V8Custom::v8StorageNamedPropertyEnumerator):
137         (WebCore::storageGetter):
138         (WebCore::storageSetter):
139         (WebCore::storageDeleter):
140         * storage/StorageArea.cpp:
141
142 2009-06-30  Adam Langley  <agl@google.com>
143
144         Reviewed by Eric Seidel.
145
146         Chromium Linux: use different fonts for each script run.
147
148         https://bugs.webkit.org/show_bug.cgi?id=26853
149
150         Previously, when rendering complex text, we picked a single font which
151         could render all the glyphs needed for the run. However, this meant
152         that sometimes lines were rendered with, for example, [LATIN, THAI,
153         LATIN] and we could end up with a different font for the Latin parts
154         than for lines without Thai in them.
155
156         With this patch, we pick a font for each script run.
157
158         This change is covered by existing layout tests.
159
160         * platform/graphics/chromium/FontLinux.cpp:
161         (WebCore::Font::drawGlyphs):
162         (WebCore::TextRunWalker::TextRunWalker):
163         (WebCore::TextRunWalker::~TextRunWalker):
164         (WebCore::TextRunWalker::nextScriptRun):
165         (WebCore::TextRunWalker::fontPlatformDataForScriptRun):
166         (WebCore::TextRunWalker::setupFontForScriptRun):
167         (WebCore::TextRunWalker::allocHarfbuzzFont):
168         (WebCore::setupForTextPainting):
169         (WebCore::Font::drawComplexText):
170         (WebCore::Font::floatWidthForComplexText):
171         (WebCore::Font::offsetForPositionForComplexText):
172         (WebCore::Font::selectionRectForComplexText):
173         * platform/graphics/chromium/FontPlatformDataLinux.cpp:
174         (WebCore::FontPlatformData::setupPaint):
175
176 2009-06-30  Simon Fraser  <simon.fraser@apple.com>
177
178         Reviewed by Dave Hyatt, Dan Bernstein.
179         
180         <rdar://problem/6191676> Redraw issues scrolling overflow:scroll div with compositing
181
182         There are two parts to this fix. First, if a compositing layer has overflow clipping
183         or a mask, then the compositing layer does not need to be sized to encompass all
184         non-composited children.
185         
186         Second, when scrolling, we have to back up to the compositing ancestor and have
187         it reposition descendant compositing layers, because overflow doesn't follow
188         the z-order tree.
189         
190         Test: compositing/overflow/overflow-scroll.html
191
192         * page/FrameView.cpp:
193         (WebCore::FrameView::layout):
194         Pass the UpdateCompositingLayers flag when updating layers after layout, so that
195         we can reposition compositing layers if we're not about to do a layer rebuild.
196         
197         * rendering/RenderLayer.cpp:
198         (WebCore::RenderLayer::updateLayerPositions):
199         Only update compositing layers if the flag is set.
200         
201         (WebCore::RenderLayer::scrollToOffset):
202         Do compositing layer updates from the compositing ancestor in one fell swoop.
203
204         * rendering/RenderLayer.h:
205         Replace the unused FullUpdate flag with one that allows us to specify whether
206         compositing layers should be updated.
207         
208         * rendering/RenderLayerBacking.cpp:
209         (WebCore::RenderLayerBacking::updateAfterLayout):
210         * rendering/RenderLayerBacking.h:
211         New param that we can pass to updateCompositingDescendantGeometry to control
212         whether the update goes deep.
213
214         * rendering/RenderLayerCompositor.cpp:
215         (WebCore::RenderLayerCompositor::calculateCompositedBounds):
216         We can return earlier if this is not a self-painting layer.
217         If the layer has overflow clip or a mask, then the composited bounds are just the
218         local bounds, excluding descendants.
219         
220         (WebCore::RenderLayerCompositor::updateCompositingDescendantGeometry):
221         * rendering/RenderLayerCompositor.h:
222         Renamed from updateCompositingChildrenGeometry, and added a flag that allows
223         us to do a deep update.
224
225 2009-06-30  Alexey Proskuryakov  <ap@webkit.org>
226
227         Reviewed by Dan Bernstein.
228
229         https://bugs.webkit.org/show_bug.cgi?id=26764
230         Uncaught NOT_FOUND_ERR: DOMException 8 loading empty text file
231
232         Test: fast/parser/empty-text-resource.html
233
234         * loader/TextDocument.cpp: (WebCore::TextTokenizer::finish): Create document tree if it
235         hasn't been created yet.
236
237 2009-06-30  Brian Weinstein  <bweinstein@apple.com>
238
239         Reviewed by Adam Roben.
240
241         Renamed scrollbarUnderPoint to scrollbarAtPoint.
242
243         * page/EventHandler.cpp:
244         (WebCore::EventHandler::hitTestResultAtPoint):
245         (WebCore::EventHandler::handleMousePressEvent):
246         (WebCore::EventHandler::handleMouseMoveEvent):
247         * platform/ScrollView.cpp:
248         (WebCore::ScrollView::scrollbarAtPoint):
249         * platform/ScrollView.h:
250         * platform/chromium/PopupMenuChromium.cpp:
251         (WebCore::PopupListBox::handleMouseDownEvent):
252         (WebCore::PopupListBox::handleMouseMoveEvent):
253
254 2009-06-30  Oliver Hunt  <oliver@apple.com>
255
256         Reviewed by Geoff Garen.
257
258         <rdar://problem/6960286> CrashTracer: [REGRESSION] 1120 crashes in Safari at com.apple.WebCore WebCore::JSLazyEventListener::parseCode const + 62
259
260         <select> elements and other elements the produce popups can keep their popups
261         live across a page load.  If this occurs and the <select> element has an
262         onchange handler it is possible to get into a state where we try to execute
263         JS on a page that no longer has an execution context. 
264
265         * bindings/js/JSLazyEventListener.cpp:
266         (WebCore::JSLazyEventListener::parseCode):
267           Be paranoid and add a null check, but assert as well because we shouldn't
268           actually get to this point.
269         * rendering/RenderMenuList.cpp:
270         (WebCore::RenderMenuList::valueChanged):
271
272 2009-06-30  Drew Wilson  <atwilson@google.com>
273
274         Reviewed by David Levin.
275
276         <https://bugs.webkit.org/show_bug.cgi?id=25435>
277
278         Added support for sending MessagePorts to/from Workers via postMessage().
279
280         * bindings/js/JSWorkerContextCustom.cpp:
281         (WebCore::JSWorkerContext::messageChannel):
282         Exposes MessageChannel constructor WorkerContext.
283         * bindings/js/JSWorkerCustom.cpp:
284         * bindings/v8/custom/V8MessageChannelConstructor.cpp:
285         (WebCore::CALLBACK_FUNC_DECL):
286         Now correctly handles being instantiated from within a Worker.
287        * platform/CrossThreadCopier.h:
288         (WebCore::GenericWorkerTaskTraits<PassOwnPtr>):
289         Added support for passing PassOwnPtr as argument to GenericWorkerTask
290        * workers/GenericWorkerTask.h:
291         (WebCore::):
292         * workers/Worker.cpp:
293         (WebCore::Worker::postMessage):
294         Now handles disentangling/entangling MessagePorts sent to/from via postMessage.
295         (WebCore::Worker::dispatchMessage):
296         * workers/Worker.h:
297         * workers/Worker.idl:
298         Added an optional MessagePort argument to postMessage()
299         * workers/WorkerContext.cpp:
300         (WebCore::WorkerContext::hasPendingActivity):
301         Workers now report pending activity whenever there are remotely entangled ports.
302         (WebCore::WorkerContext::postMessage):
303         Now handles disentangling/entangling MessagePorts sent to/from via postMessage.
304         (WebCore::WorkerContext::dispatchMessage):
305         * workers/WorkerContext.h:
306         * workers/WorkerContext.idl:
307         Added an optional MessagePort argument to postMessage()
308         * workers/WorkerContextProxy.h:
309         * workers/WorkerMessagingProxy.cpp:
310         Updated messaging infrastructure to transport an optional MessagePort/MessagePortChannel.
311         (WebCore::MessageWorkerContextTask::create):
312         (WebCore::MessageWorkerContextTask::MessageWorkerContextTask):
313         (WebCore::MessageWorkerContextTask::performTask):
314         (WebCore::MessageWorkerTask::create):
315         (WebCore::MessageWorkerTask::MessageWorkerTask):
316         (WebCore::MessageWorkerTask::performTask):
317         (WebCore::WorkerMessagingProxy::postMessageToWorkerObject):
318         (WebCore::WorkerMessagingProxy::postMessageToWorkerContext):
319         * workers/WorkerMessagingProxy.h:
320         Added additional postMessage() API that accepts a MessagePort
321         * workers/WorkerObjectProxy.h:
322         Added additional postMessage() API that accepts a MessagePort
323
324 2009-06-30  Adam Langley  <agl@google.com>
325
326         Reviewed by Eric Seidel.
327
328         Chromium: Add complex text support on Linux.
329
330         https://bugs.webkit.org/show_bug.cgi?id=25068
331
332         This patch adds complex text support on Linux using Harfbuzz. It's not
333         the fastest code possible: some caching of font tables will certainly
334         be required. However, it's probably the simplest code that works.
335
336         This will require checking in new baselines in the Chromium tree for
337         those layout tests which now pass.
338
339         * platform/graphics/chromium/FontLinux.cpp:
340         (WebCore::Font::drawGlyphs):
341         (WebCore::truncateFixedPointToInteger):
342         (WebCore::TextRunWalker::TextRunWalker):
343         (WebCore::TextRunWalker::~TextRunWalker):
344         (WebCore::TextRunWalker::reset):
345         (WebCore::TextRunWalker::setXOffsetToZero):
346         (WebCore::TextRunWalker::rtl):
347         (WebCore::TextRunWalker::setBackwardsIteration):
348         (WebCore::TextRunWalker::nextScriptRun):
349         (WebCore::TextRunWalker::glyphs):
350         (WebCore::TextRunWalker::length):
351         (WebCore::TextRunWalker::xPositions):
352         (WebCore::TextRunWalker::advances):
353         (WebCore::TextRunWalker::width):
354         (WebCore::TextRunWalker::logClusters):
355         (WebCore::TextRunWalker::numCodePoints):
356         (WebCore::TextRunWalker::widthOfFullRun):
357         (WebCore::TextRunWalker::allocHarfbuzzFont):
358         (WebCore::TextRunWalker::deleteGlyphArrays):
359         (WebCore::TextRunWalker::createGlyphArrays):
360         (WebCore::TextRunWalker::expandGlyphArrays):
361         (WebCore::TextRunWalker::shapeGlyphs):
362         (WebCore::TextRunWalker::setGlyphXPositions):
363         (WebCore::setupForTextPainting):
364         (WebCore::fontPlatformDataForTextRun):
365         (WebCore::Font::drawComplexText):
366         (WebCore::Font::floatWidthForComplexText):
367         (WebCore::glyphIndexForXPositionInScriptRun):
368         (WebCore::Font::offsetForPositionForComplexText):
369         (WebCore::Font::selectionRectForComplexText):
370         * platform/graphics/chromium/HarfbuzzSkia.cpp: Added.
371         (WebCore::SkiaScalarToHarfbuzzFixed):
372         (WebCore::stringToGlyphs):
373         (WebCore::glyphsToAdvances):
374         (WebCore::canRender):
375         (WebCore::getOutlinePoint):
376         (WebCore::getGlyphMetrics):
377         (WebCore::getFontMetric):
378         (WebCore::harfbuzzSkiaGetTable):
379
380 2009-06-30  Eric Carlson  <eric.carlson@apple.com>
381
382         Reviewed by Simon Fraser.
383
384         <rdar://problem/7019799> Slow loading MediaDocument can fall back to plug-in unnecessarily
385
386         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
387         (WebCore::MediaPlayerPrivate::updateStates):
388             Always fall back to a plug-in if m_hasUnsupportedTracks is set.
389         (WebCore::MediaPlayerPrivate::disableUnsupportedTracks):
390             Set m_hasUnsupportedTracks if we disable a track.
391
392 2009-06-30  Nate Chapin  <japhet@chromium.org>
393
394         Reviewed by Dimitri Glazkov.
395
396         Fix inverted if/else that's causing a layout test in src.chromium.org to fail.
397
398         https://bugs.webkit.org/show_bug.cgi?id=26820
399
400         * bindings/v8/V8Proxy.cpp:
401         (WebCore::GCPrologueVisitor::visitDOMWrapper): if (port2), not if (!port2).
402
403 2009-06-30  Dan Bernstein  <mitz@apple.com>
404
405         Reviewed by Dave Hyatt.
406
407         - fix <rdar://problem/6946611> REGRESSION (r30673): Shade10:" D_Snap
408           to Grid" window is clipping
409
410         Added an app-specific quirk to revert the behavior of <link> elements
411         to the way it was before r30673, namely that if the rel attribute
412         is not "stylesheet" but the type attribute contains "text/css", the
413         link behaves as a stylesheet link.
414
415         * WebCore.base.exp: Exported setTreatsAnyTextCSSLinkAsStylesheet().
416         * html/HTMLLinkElement.cpp:
417         (WebCore::HTMLLinkElement::process): Check
418             Settings::treatsAnyTextCSSLinkAsStylesheet() and if true, allow a
419             style sheet link if the type contains "text/css".
420         * page/Settings.cpp:
421         (WebCore::Settings::Settings):
422             Initialize m_treatsAnyTextCSSLinkAsStylesheet.
423         (WebCore::Settings::setTreatsAnyTextCSSLinkAsStylesheet): Added.
424         * page/Settings.h:
425         (WebCore::Settings::treatsAnyTextCSSLinkAsStylesheet): Added.
426
427 2009-06-30  Adrien Nader  <camaradetux@gmail.com>
428
429         Reviewed by Xan Lopez.
430
431         Fix typo in GNUMakefile.am: it reads WebCOre instead of WebCore.
432
433         * GNUmakefile.am:
434
435 2009-06-30  Jan Michael Alonzo  <jmalonzo@webkit.org>
436
437         Reviewed by Xan Lopez.
438
439         [Gtk] Turn on ENABLE_DATAGRID so we can run the layout tests.
440
441         * GNUmakefile.am:
442
443 2009-06-30  Raju Kunnath  <raju.kunnath@nokia.com>
444
445         Reviewed by Simon Hausmann.
446
447         <https://bugs.webkit.org/show_bug.cgi?id=26752>
448
449         [Qt] Windows release build issue with Qt4.5 due to -GL flag on msvc2005 and msvc2008. 
450
451         * WebCore.pro: Removed -GL compiler option for win32-msvc2005|win32-msvc2008.
452
453 2009-06-30  Xan Lopez  <xlopez@igalia.com>
454
455         Reviewed by Jan Alonzo.
456
457         Initialize member variables in the right order. Fixes compiler
458         warning.
459
460         * platform/image-decoders/bmp/BMPImageReader.cpp:
461         (WebCore::BMPImageReader::BMPImageReader):
462
463 2009-06-29  Xan Lopez  <xlopez@igalia.com>
464
465         Reviewed by David Levin.
466
467         https://bugs.webkit.org/show_bug.cgi?id=26831
468         Fix compiler warning in WorkerLoaderProxy.h
469
470         Forward declaration of a class within a class is not allowed,
471         since the compiler can't know if the declaration is legal at that
472         point. This gives the following compiler warning:
473
474         ../../WebCore/workers/WorkerLoaderProxy.h:40: warning: declaration
475         "class WebCore::ScriptExecutionContext::Task" does not declare
476         anything
477
478         Include the full ScriptExecutionHeader header instead.
479
480         * workers/WorkerLoaderProxy.h:
481
482 2009-06-29  Xan Lopez  <xlopez@igalia.com>
483
484         Reviewed by Jan Alonzo.
485
486         Remove unused function.
487
488         * plugins/gtk/PluginPackageGtk.cpp:
489
490 2009-06-29  Simon Fraser  <simon.fraser@apple.com>
491
492         Reviewed by Dan Bernstein.
493
494         Change RenderLayer::updateLayerPositions() to use a bitmask instead of two
495         boolean arguments. FullUpdate is unused at present, but will be used soon.
496
497         * page/FrameView.cpp:
498         (WebCore::FrameView::layout):
499         * rendering/RenderLayer.cpp:
500         (WebCore::RenderLayer::updateLayerPositions):
501         (WebCore::RenderLayer::scrollToOffset):
502         * rendering/RenderLayer.h:
503         (WebCore::RenderLayer::):
504
505 2009-06-29  Nate Chapin  <japhet@chromium.org>
506
507         Reviewed by Dimitri Glazkov.
508
509         Fix one more bad merge in V8Proxy.
510
511         https://bugs.webkit.org/show_bug.cgi?id=26819
512
513         * bindings/v8/V8Proxy.cpp:
514         (WebCore::V8Proxy::setDOMException): setDOMExceptionHelper() instead of convertToV8Object().
515
516 2009-06-29  Sam Weinig  <sam@webkit.org>
517
518         Reviewed by Mark Rowe.
519
520         Remove more unused scons support.
521
522         * SConstruct: Removed.
523
524 2009-06-29  Sam Weinig  <sam@webkit.org>
525
526         Reviewed by Dave Hyatt.
527
528         Fix some incorrect create functions.
529
530         * html/DataGridColumn.h:
531         (WebCore::DataGridColumn::create):
532         * html/DataGridColumnList.h:
533         (WebCore::DataGridColumnList::create):
534
535 2009-06-29  Sam Weinig  <sam@webkit.org>
536
537         Reviewed by Dave Hyatt.
538
539         Remove initialize method from DataGridDataSource and add
540         DOMDataGridDataSource.
541
542         * GNUmakefile.am:
543         * WebCore.pro:
544         * WebCore.vcproj/WebCore.vcproj:
545         * WebCore.xcodeproj/project.pbxproj:
546         * WebCoreSources.bkl:
547         * bindings/js/JSDataGridDataSource.cpp:
548         * bindings/js/JSDataGridDataSource.h:
549         * bindings/js/JSHTMLDataGridElementCustom.cpp:
550         (WebCore::JSHTMLDataGridElement::setDataSource):
551         * html/DOMDataGridDataSource.cpp: Added.
552         (WebCore::DOMDataGridDataSource::DOMDataGridDataSource):
553         (WebCore::DOMDataGridDataSource::~DOMDataGridDataSource):
554         * html/DOMDataGridDataSource.h: Added.
555         (WebCore::DOMDataGridDataSource::create):
556         (WebCore::DOMDataGridDataSource::isDOMDataGridDataSource):
557         (WebCore::asDOMDataGridDataSource):
558         * html/DataGridDataSource.h:
559         (WebCore::DataGridDataSource::isDOMDataGridDataSource):
560         (WebCore::DataGridDataSource::isJSDataGridDataSource):
561         * html/HTMLDataGridElement.cpp:
562         (WebCore::HTMLDataGridElement::HTMLDataGridElement):
563         (WebCore::HTMLDataGridElement::setDataSource):
564         (WebCore::HTMLDataGridElement::dataSource):
565         * html/HTMLDataGridElement.h:
566
567 2009-06-29  Nate Chapin  <japhet@chromium.org>
568
569         Reviewed by Dimitri Glazkov.
570
571         Fix a couple of bad merge items from my previous V8Proxy patch.
572
573         https://bugs.webkit.org/show_bug.cgi?id=26813
574
575         * bindings/v8/V8Collection.h:
576         (WebCore::nodeCollectionNamedPropertyGetter):  Fix a bad function name that slipped through.
577         * bindings/v8/V8Proxy.cpp:
578         (WebCore::V8Proxy::setDOMException):  Fix a bad merge that caused a couple of lines of extraneous, breaking code to get in.
579
580 2009-06-29  Chris Marrin  <cmarrin@apple.com>
581
582         Reviewed by Simon Fraser  <simon.fraser@apple.com>.
583
584         https://bugs.webkit.org/show_bug.cgi?id=26706
585
586         Fixed crash due to dereference of m_toStyle
587
588         * page/animation/ImplicitAnimation.cpp:
589         (WebCore::ImplicitAnimation::isTargetPropertyEqual):
590
591 2009-06-29  Eric Carlson  <eric.carlson@apple.com>
592
593         Reviewed by Simon Fraser.
594
595         <rdar://problem/7014813> Ask media engine if a movie is streamed or downloaded.
596
597         * WebCore.base.exp: 
598             Export _wkQTMovieGetType
599
600         * platform/graphics/MediaPlayer.cpp:
601         (WebCore::MediaPlayer::hasSingleSecurityOrigin):
602             Move to keep with other non-callback functions.
603         (WebCore::MediaPlayer::movieLoadType):
604             New, returns the movie type.
605         * platform/graphics/MediaPlayer.h:
606             Declare MovieLoadType enum and movieLoadType method.
607
608         * platform/graphics/MediaPlayerPrivate.h:
609         (WebCore::MediaPlayerPrivateInterface::movieLoadType):
610             Default implementation of movieLoadType
611
612         * platform/graphics/mac/MediaPlayerPrivateQTKit.h:
613         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
614         (WebCore::MediaPlayerPrivate::createQTMovie):
615             Don't base m_isStreaming on protocol, there are other types of streaming movies.
616         (WebCore::MediaPlayerPrivate::maxTimeBuffered):
617             Don't assume all streams are unbuffered.
618         (WebCore::MediaPlayerPrivate::updateStates):
619             Update m_isStreaming once we have metadata.
620         (WebCore::MediaPlayerPrivate::disableUnsupportedTracks):
621             Tracks that are disabled to begin with shouldn't be included in m_enabledTrackCount.
622         (WebCore::MediaPlayerPrivate::movieLoadType):
623             New, return movie type.
624
625         * platform/mac/WebCoreSystemInterface.h:
626         * platform/mac/WebCoreSystemInterface.mm:
627             Add wkQTMovieGetType.
628
629 2009-06-29  Alice Liu  <alice.liu@apple.com>
630
631         Fixed <rdar://problem/6930280> Reproducible crash at USA Today photo gallery
632
633         Reviewed by Anders Carlsson.
634
635         No test added because the crash requires a flash plugin
636
637         * plugins/win/PluginMessageThrottlerWin.cpp:
638         Rely on the hWnd of the plugin to tell us whether the PluginView has 
639         been deleted during execution of its wndProc.
640         (WebCore::PluginMessageThrottlerWin::messageThrottleTimerFired):
641
642 2009-06-29  Dmitry Titov  <dimich@chromium.org>
643
644         Reviewed by David Levin.
645
646         https://bugs.webkit.org/show_bug.cgi?id=26811
647          [Chromium] Remove a flag and functions used to enable workers in runtime.
648
649         * bindings/v8/WorkerContextExecutionProxy.cpp:
650         * bindings/v8/WorkerContextExecutionProxy.h:
651
652 2009-06-29  Simon Fraser  <simon.fraser@apple.com>
653
654         Reviewed by Dave Hyatt.
655         
656         <rdar://problem/6976712> Text antialiasing problems when rendering into compositing layers.
657         
658         Improve the appearance of text in compositing layers by making use of
659         CA's layer geometry flipping, rather that doing it ourselves with a flip
660         transform. This allows CG to use font autohinting in the layer text.
661
662         * platform/graphics/GraphicsLayer.h:
663         (WebCore::GraphicsLayer::setGeometryOrientation):
664         (WebCore::GraphicsLayer::geometryOrientation):
665         New methods to set whether this layer uses flipped geometry.
666         
667         * platform/graphics/mac/GraphicsLayerCA.h:
668         * platform/graphics/mac/GraphicsLayerCA.mm:
669         (WebCore::GraphicsLayerCA::setGeometryOrientation):
670         (WebCore::GraphicsLayerCA::geometryOrientation):
671         Subclass in order to call into CA
672         
673         (WebCore::GraphicsLayerCA::setContentsLayer):
674         Now that CA is doing the geometry flipping, we no longer need to flip the content
675         layers for image and video manually
676         
677         * rendering/RenderLayerCompositor.cpp:
678         (WebCore::RenderLayerCompositor::ensureRootPlatformLayer):
679         Turn on flipping on the root layer.
680
681 2009-06-29  Nikolas Zimmermann  <nikolas.zimmermann@torchmobile.com>
682
683         Reviewed by Adam Treat.
684
685         Fixes: https://bugs.webkit.org/show_bug.cgi?id=26246
686
687         Implement most WML specific <select> element features.
688         Add 'iname' / 'ivalue' support and support variable references.
689
690         Add two tests covering most select/variable related functionality.
691         Needs more tests when adding full 'iname' / 'ivalue' support (used in conjuction with onpick).
692
693         Tests: http/tests/wml/post-data-to-server.html
694                wml/select-element-variables.html
695
696         * dom/SelectElement.cpp:
697         (WebCore::SelectElement::optionCount): Refactored from HTMLSelectElement::length() for use within HTML & WML.
698         * dom/SelectElement.h:
699         * html/HTMLSelectElement.cpp:
700         (WebCore::HTMLSelectElement::length): Use new SelectElement::optionCount() function. (no functional changes for HTML).
701         * wml/WMLCardElement.cpp:
702         (WebCore::WMLCardElement::handleIntrinsicEventIfNeeded): Activated commented code taking care of WMLSelectElement initialization.
703         * wml/WMLSelectElement.cpp: Add a bunch of new code handling WML specific feature processing.
704         (WebCore::WMLSelectElement::title):
705         (WebCore::WMLSelectElement::formControlName):
706         (WebCore::WMLSelectElement::defaultEventHandler):
707         (WebCore::WMLSelectElement::selectInitialOptions):
708         (WebCore::WMLSelectElement::calculateDefaultOptionIndices):
709         (WebCore::WMLSelectElement::selectDefaultOptions):
710         (WebCore::WMLSelectElement::initializeVariables):
711         (WebCore::WMLSelectElement::updateVariables):
712         (WebCore::WMLSelectElement::parseIndexValueString):
713         (WebCore::WMLSelectElement::valueStringToOptionIndices):
714         (WebCore::WMLSelectElement::optionIndicesToValueString):
715         (WebCore::WMLSelectElement::optionIndicesToString):
716         (WebCore::WMLSelectElement::name):
717         (WebCore::WMLSelectElement::value):
718         (WebCore::WMLSelectElement::iname):
719         (WebCore::WMLSelectElement::ivalue):
720         * wml/WMLSelectElement.h:
721
722 2009-06-29  David Hyatt  <hyatt@apple.com>
723
724         Reviewed by Adam Roben.
725
726         Put <datagrid> behind an ifdef.
727
728         * Configurations/FeatureDefines.xcconfig:
729         * bindings/js/JSDataGridColumnListCustom.cpp:
730         * bindings/js/JSDataGridDataSource.cpp:
731         * bindings/js/JSDataGridDataSource.h:
732         * bindings/js/JSHTMLDataGridElementCustom.cpp:
733         * html/DataGridColumn.cpp:
734         * html/DataGridColumn.h:
735         * html/DataGridColumn.idl:
736         * html/DataGridColumnList.cpp:
737         * html/DataGridColumnList.h:
738         * html/DataGridColumnList.idl:
739         * html/DataGridDataSource.h:
740         * html/HTMLDataGridCellElement.cpp:
741         * html/HTMLDataGridCellElement.h:
742         * html/HTMLDataGridCellElement.idl:
743         * html/HTMLDataGridColElement.cpp:
744         * html/HTMLDataGridColElement.h:
745         * html/HTMLDataGridColElement.idl:
746         * html/HTMLDataGridElement.cpp:
747         * html/HTMLDataGridElement.h:
748         * html/HTMLDataGridElement.idl:
749         * html/HTMLDataGridRowElement.cpp:
750         * html/HTMLDataGridRowElement.h:
751         * html/HTMLDataGridRowElement.idl:
752         * html/HTMLTagNames.in:
753         * page/DOMWindow.idl:
754         * rendering/RenderDataGrid.cpp:
755         * rendering/RenderDataGrid.h:
756
757 2009-06-29  Simon Hausmann  <simon.hausmann@nokia.com>
758
759         Reviewed by Ariya Hidayat and Adam Roben.
760
761         Fix compilation with MINGW. Ported MSVC inline assembly to
762         GNU inline assembly. Also fixed casting errors where gcc
763         refused to cast a pointer-to-function to a pointer-to-object,
764         without an intermediate cast to a non-pointer type.
765
766         * plugins/win/PluginViewWin.cpp:
767         (WebCore::PluginView::hookedBeginPaint):
768         (WebCore::PluginView::hookedEndPaint):
769         (WebCore::hook):
770         (WebCore::setUpOffscreenPaintingHooks):
771
772 2009-06-26  John Sullivan  <sullivan@apple.com>
773
774         Added Speech submenu to context menu on Mac when there's a non-editable selection
775         (it was already present when there's an editable selection). 
776         Also added support for disabling "Stop Speaking" when there is no speaking to stop.
777
778         Reviewed by Tim Hatcher.
779
780         * loader/EmptyClients.h:
781         (WebCore::EmptyContextMenuClient::isSpeaking):
782         implemented this new virtual function to return false
783         
784         * page/ContextMenuClient.h:
785         declared this new pure virtual function
786         
787         * platform/ContextMenu.cpp:
788         (WebCore::ContextMenu::populate):
789         insert Speech item (after a separator) on Mac when there's selected non-editable text
790         (WebCore::ContextMenu::checkOrEnableIfNeeded):
791         enable Stop Speaking item only if the context menu client returns true for isSpeaking()
792
793 2009-06-28  Dan Bernstein  <mitz@apple.com>
794
795         Reviewed by Simon Fraser.
796
797         - fix https://bugs.webkit.org/show_bug.cgi?id=26783
798           <rdar://problem/7014543> REGRESSION (r45296): Subfolders not displayed
799           in MobileMe iDisk Web App
800
801         Test: added a case to fast/dom/Element/scrollWidth.html
802
803         Ensure that scroll{Width, Height} is greater or equal to
804         client{Width, Height}.
805
806         * rendering/RenderBox.cpp:
807         (WebCore::RenderBox::scrollWidth):
808         (WebCore::RenderBox::scrollHeight):
809
810 2009-06-27  Simon Fraser  <simon.fraser@apple.com>
811
812         Reviewed by Eric Seidel.
813
814         https://bugs.webkit.org/show_bug.cgi?id=26780
815         
816         Do not make compositing layers for non-self-painting RenderLayers,
817         since these exist only to push a clip onto the clipping stack. If such
818         a layer gets compositied for some other reason, it should not paint.
819         
820         Also ensure that we update composited layer positions correctly
821         inside overflow:scroll layers. We can't assume that the contents
822         are child layers, so we have to go up to the compositing ancestor,
823         and tell it to update all its child layer positions as we do 
824         after layout.
825
826         Tests: compositing/layers-inside-overflow-scroll.html
827                compositing/self-painting-layers.html
828
829         * rendering/RenderLayer.cpp:
830         (WebCore::RenderLayer::scrollToOffset):
831         * rendering/RenderLayerBacking.cpp:
832         (WebCore::RenderLayerBacking::paintIntoLayer):
833         * rendering/RenderLayerCompositor.cpp:
834         (WebCore::RenderLayerCompositor::calculateCompositedBounds):
835         (WebCore::RenderLayerCompositor::needsToBeComposited):
836
837 2009-06-28  Luke Kenneth Casson Leighton  <lkcl@lkcl.net>
838
839         Reviewed by Eric Seidel.
840
841         PurgeableBuffer #defines leave out functions on gtk MacOSX 10.4 build
842         https://bugs.webkit.org/show_bug.cgi?id=23057
843
844         Define these functions for Gtk as well.
845
846         * platform/PurgeableBuffer.h:
847
848 2009-06-28  Nate Chapin  <japhet@chromium.org>
849
850         Reviewed by Dimitri Glazkov.
851
852         Update CodeGeneratorV8.pm to match the new api for V8Proxy.
853
854         https://bugs.webkit.org/show_bug.cgi?id=26765
855
856         * bindings/scripts/CodeGeneratorV8.pm: Match the current version of V8Proxy.
857
858 2009-06-28  Nicolas Sylvain  <nsylvain@chromium.org>
859
860         Reviewed by Dimitri Glazkov.
861
862         If loading a font fails because of the sandbox, we ask the browser process to 
863         try to load it by calling ensureFontLoaded. If it still fails after 
864         ensureFontLoaded, we hit a ASSERT_NOT_REACHED. 
865
866         This case happens once in a while during browser shutdown. The browser will 
867         queue a message to the renderer to shutdown, and will then stop answering sync 
868         messages from the renderer. If the renderer is still loading a page during this 
869         time, it might try to call the browser process to ask to load a font. The 
870         browser process will ignore the request, and the font will fail to load, even 
871         after the second try. 
872
873         This is unfortunate, but there is no real risk here, since the renderer will be 
874         going away as soon as it processes another message. 
875
876         This can't be layout tested as it depends on the sandbox. 
877
878         https://bugs.webkit.org/show_bug.cgi?id=26743 
879
880         * platform/graphics/chromium/FontChromiumWin.cpp:
881         * platform/graphics/chromium/FontPlatformDataChromiumWin.cpp:
882         * platform/graphics/chromium/GlyphPageTreeNodeChromiumWin.cpp:
883         * platform/graphics/chromium/SimpleFontDataChromiumWin.cpp:
884
885 2009-06-28  John Abd-El-Malek  <jam@chromium.org>
886
887         Reviewed by Eric Seidel.
888
889         https://bugs.webkit.org/show_bug.cgi?id=15457
890
891         Test: plugins/netscape-plugin-map-data-to-src.html
892
893         Fix problems with Real or WMP plugins not displaying because "data" was set
894         on the OBJECT tag instead of "src".  This is based on what Firefox does, see
895         http://mxr.mozilla.org/mozilla-central/source/layout/generic/nsObjectFrame.cpp#3045
896
897         * rendering/RenderPartObject.cpp:
898         (WebCore::mapDataParamToSrc):
899         (WebCore::RenderPartObject::updateWidget):
900
901 2009-06-27  Laszlo Gombos  <laszlo.1.gombos@nokia.com>
902
903         Reviewed by Jan Alonzo.
904
905         [Qt] Build fix after r45290
906         https://bugs.webkit.org/show_bug.cgi?id=26769
907
908         * WebCore.pro:
909
910 2009-06-27  Emilio Pozuelo Monfort  <pochu27@gmail.com>
911
912         Reviewed by Jan Alonzo.
913
914         [GTK] Don't use deprecated GTK+ symbols.
915         https://bugs.webkit.org/show_bug.cgi?id=26583
916
917         * plugins/gtk/gtk2xtbin.c:
918         (gtk_xtbin_class_init):
919         (gtk_xtbin_new):
920         (gtk_xtbin_destroy):
921
922 2009-06-27  Simon Fraser  <simon.fraser@apple.com>
923
924         Reviewed by Dan Bernstein.
925
926         https://bugs.webkit.org/show_bug.cgi?id=26780
927         
928         Fix up previous change. When computeCompositingRequirements() determines
929         that the current layer is composited, it needs to inform its parent
930         by setting compositingState.m_subtreeIsCompositing() to true. That didn't
931         always happen after the previous patch. Clarified the logic here.
932         
933         * rendering/RenderLayerCompositor.cpp:
934         (WebCore::CompositingState::CompositingState):
935         (WebCore::RenderLayerCompositor::computeCompositingRequirements):
936
937 2009-06-27  Simon Fraser  <simon.fraser@apple.com>
938
939         Reviewed by Dan Bernstein.
940
941         https://bugs.webkit.org/show_bug.cgi?id=26780
942         
943         First part: fix the RenderLayer::hasCompositingDescendant() flag to be set
944         correctly.
945
946         * rendering/RenderLayerCompositor.cpp:
947         (WebCore::RenderLayerCompositor::computeCompositingRequirements):
948         Do not unconditionally set compositingState.m_subtreeIsCompositing, because
949         that can clobber the value from an earlier sibling. Add some more comments.
950         
951         Remove a final use of Vector iterators.
952         
953         (WebCore::RenderLayerCompositor::recursiveRepaintLayerRect):
954         Move the normalFlowList() processing outside the test for isStackingContext().
955
956 2009-06-27  Dan Bernstein  <mitz@apple.com>
957
958         Reviewed by Simon Fraser and Antti Koivisto.
959
960         - make paintFillLayerExtended() non-virtual and remove its clipY and
961           clipH parameters
962
963         These parameters were computed and passed along to
964         paintFillLayerExtended in order to vertically constrain the rect fill to
965         the damage rect, because Qt cannot paint tall rectangles (see
966         <http://websvn.kde.org/?view=rev&revision=42721>). Since the damage rect
967         is passed along in the PaintInfo, the extra parameters are redundant,
968         and the intersection can just take place in paintFillLayerExtended().
969
970         * rendering/InlineFlowBox.cpp:
971         (WebCore::InlineFlowBox::paintFillLayers):
972         (WebCore::InlineFlowBox::paintFillLayer):
973         (WebCore::InlineFlowBox::paintBoxDecorations):
974         (WebCore::InlineFlowBox::paintMask):
975         * rendering/InlineFlowBox.h:
976         * rendering/RenderBox.cpp:
977         (WebCore::RenderBox::paintRootBoxDecorations):
978         (WebCore::RenderBox::paintBoxDecorations):
979         (WebCore::RenderBox::paintMask):
980         (WebCore::RenderBox::paintMaskImages):
981         (WebCore::RenderBox::paintFillLayers):
982         (WebCore::RenderBox::paintFillLayer):
983         * rendering/RenderBox.h:
984         * rendering/RenderBoxModelObject.cpp:
985         (WebCore::RenderBoxModelObject::paintFillLayerExtended):
986         * rendering/RenderBoxModelObject.h:
987         * rendering/RenderFieldset.cpp:
988         (WebCore::RenderFieldset::paintBoxDecorations):
989         (WebCore::RenderFieldset::paintMask):
990         * rendering/RenderTable.cpp:
991         (WebCore::RenderTable::paintBoxDecorations):
992         (WebCore::RenderTable::paintMask):
993         * rendering/RenderTableCell.cpp:
994         (WebCore::RenderTableCell::paintBackgroundsBehindCell):
995         (WebCore::RenderTableCell::paintMask):
996
997 2009-06-27  Ryosuke Niwa  <rniwa@google.com>
998
999         Reviewed by Eric Seidel.
1000
1001         https://bugs.webkit.org/show_bug.cgi?id=26762
1002
1003         Clean up for IndentOutdentCommand::indentRegion, and solved most of problems related to the bug 21712.
1004         https://bugs.webkit.org/show_bug.cgi?id=21712
1005
1006         Added few utility functions to htmlediting.h/cpp
1007
1008         isVisibilyAdjacent checks whether the first position is visibly next to the second position.
1009         i.e. there is no visible node between the first and second positions
1010
1011         canMergeLists checks whether two lists can be merged.
1012         It checks the type of list, the editing boundary, and adjacency of the lists.
1013
1014         Tests: editing/execCommand/indent-nested-lists-1.html
1015                editing/execCommand/indent-nested-lists-2.html
1016                editing/execCommand/indent-nested-lists-3.html
1017                editing/execCommand/indent-nested-lists-4.html
1018                editing/execCommand/indent-nested-lists-5.html
1019                editing/execCommand/indent-nested-lists-6.html
1020                editing/execCommand/indent-nested-lists-7.html
1021                editing/execCommand/outdent-nested-lists-1.html
1022                editing/execCommand/outdent-nested-lists-2.html
1023                editing/execCommand/outdent-nested-lists-3.html
1024                editing/execCommand/outdent-nested-lists-4.html
1025
1026         * editing/IndentOutdentCommand.cpp:
1027         (WebCore::IndentOutdentCommand::prepareBlockquoteLevelForInsertion):
1028         (WebCore::IndentOutdentCommand::tryIndentingAsListItem):
1029         (WebCore::IndentOutdentCommand::indentIntoBlockquote):
1030         (WebCore::IndentOutdentCommand::indentRegion):
1031         * editing/IndentOutdentCommand.h:
1032         * editing/htmlediting.cpp:
1033         (WebCore::enclosingListChild):
1034         (WebCore::canMergeLists):
1035         (WebCore::isVisibilyAdjacent):
1036         * editing/htmlediting.h:
1037
1038 2009-06-27  Pavel Feldman  <pfeldman@chromium.org>
1039
1040         Reviewed by Timothy Hatcher.
1041
1042         WebInspector: Fix completion when iterating options using Tab.
1043
1044         https://bugs.webkit.org/show_bug.cgi?id=26722
1045
1046         * inspector/front-end/TextPrompt.js:
1047         (WebInspector.TextPrompt.prototype._completionsReady):
1048
1049 2009-06-27  Gustavo Noronha Silva  <gns@gnome.org>
1050
1051         Reviewed by Holger Freyther.
1052
1053         https://bugs.webkit.org/show_bug.cgi?id=25889
1054         [GTK] scrollbar policy for main frame is not implementable
1055
1056         Override visibleContentRect to handle GTK+'s case, in which
1057         scrollbars or equivalent decoration are painted by the parent
1058         widget.
1059
1060         * platform/ScrollView.cpp:
1061         * platform/gtk/ScrollViewGtk.cpp:
1062         (WebCore::ScrollView::visibleContentRect):
1063
1064 2009-06-27  Daniel Bates  <dbates@intudata.com>
1065
1066         Reviewed by Adam Barth.
1067
1068         https://bugs.webkit.org/show_bug.cgi?id=26708
1069         
1070         Fix addresses false negatives with respect to scheme relative paths, iFrame JavaScript URLs,
1071         and UTF-7 encoded payloads.   
1072
1073         Tests: http/tests/security/xssAuditor/http-equiv-utf-7-encoded.html
1074                http/tests/security/xssAuditor/iframe-javascript-url.html
1075                http/tests/security/xssAuditor/script-tag-utf-7-encoded.html
1076                http/tests/security/xssAuditor/script-tag-with-source-relative-scheme.html
1077
1078         * html/HTMLTokenizer.cpp:
1079         (WebCore::HTMLTokenizer::scriptHandler): Moved XSSAuditor check to HTMLTokenizer::parseTag.
1080         (WebCore::HTMLTokenizer::parseTag):
1081         * loader/FrameLoader.cpp:
1082         (WebCore::FrameLoader::loadSubframe): Modified to inform XSSAuditor of parent frame so
1083         as to compare against iFrame javascript URL.
1084         * page/XSSAuditor.cpp: Removed method XSSAuditor::isControlCharacter. Instead, exposed method
1085         isControlCharacter in ResourceResponseBase.cpp.
1086         (WebCore::XSSAuditor::XSSAuditor):
1087         (WebCore::XSSAuditor::decodeURL): Modified to decode string using specified encoder.
1088         (WebCore::XSSAuditor::findInRequest): Generalized to arbitrary frame so as to prevent execution
1089         of iFrame javascript URL.
1090         * page/XSSAuditor.h: Added field m_parentFrame.
1091         * platform/network/ResourceResponseBase.cpp:
1092         (WebCore::isControlCharacter):
1093         * platform/network/ResourceResponseBase.h:
1094
1095 2009-06-27  Oliver Hunt  <oliver@apple.com>
1096
1097         Reviewed by Maciej Stachowiak.
1098
1099         Bug 26771: Canvas is incorrectly tainted when drawing from a video element that uses <source> elements
1100
1101         The drawImage(<video>) logic naively assumes that it just needs
1102         to check the src attribute of the video element when in fact it
1103         needs to look at the url that is being played instead.  Failure
1104         to do this means that video provided through source elements 
1105         taints the canvas.
1106
1107         Test: media/video-canvas-source.html
1108
1109         * html/CanvasRenderingContext2D.cpp:
1110         (WebCore::CanvasRenderingContext2D::checkOrigin):
1111         (WebCore::CanvasRenderingContext2D::drawImage):
1112         * html/CanvasRenderingContext2D.h:
1113
1114 2009-06-26  Brian Weinstein  <bweinstein@apple.com>
1115
1116         Reviewed by Simon Fraser.
1117
1118         https://bugs.webkit.org/show_bug.cgi?id=26695
1119         
1120         Added the ability to do scrollbar hit testing in EventHandler, changed the
1121         signature of a PlatformWheelEvent constructor, and changed scrollbarUnderMouse
1122         to scrollbarUnderPoint, and updated all calls to that function.        
1123
1124         * page/EventHandler.cpp:
1125         (WebCore::EventHandler::hitTestResultAtPoint):
1126         (WebCore::EventHandler::handleMousePressEvent):
1127         (WebCore::EventHandler::handleMouseMoveEvent):
1128         * page/EventHandler.h:
1129         (WebCore::):
1130         * platform/PlatformWheelEvent.h:
1131         * platform/ScrollView.cpp:
1132         (WebCore::ScrollView::scrollbarUnderPoint):
1133         * platform/ScrollView.h:
1134         * platform/chromium/PopupMenuChromium.cpp:
1135         (WebCore::PopupListBox::handleMouseDownEvent):
1136         (WebCore::PopupListBox::handleMouseMoveEvent):
1137         * platform/win/WheelEventWin.cpp:
1138         (WebCore::PlatformWheelEvent::PlatformWheelEvent):
1139
1140
1141 2009-06-26  Simon Fraser  <simon.fraser@apple.com>
1142
1143         Reviewed by Dan Bernstein.
1144
1145         <rdar://problem/7011924> Opacity transitions should not trigger hardware compositing mode
1146         
1147         Don't go into compositing mode just for opacity transitions, but they will be
1148         hardware acclerated if we're already compositing.
1149
1150         * rendering/RenderLayerCompositor.cpp:
1151         (WebCore::RenderLayerCompositor::requiresCompositingLayer):
1152         (WebCore::RenderLayerCompositor::requiresCompositingForTransform):
1153         (WebCore::RenderLayerCompositor::requiresCompositingForAnimation):
1154         * rendering/RenderLayerCompositor.h:
1155
1156 2009-06-26  Simon Fraser  <simon.fraser@apple.com>
1157
1158         Rubber-stamped by Dave Levin
1159
1160         Rename ioCompState to compositingState to better match WebCore coding style.
1161         
1162         * rendering/RenderLayerCompositor.cpp:
1163         (WebCore::RenderLayerCompositor::computeCompositingRequirements):
1164         (WebCore::RenderLayerCompositor::rebuildCompositingLayerTree):
1165
1166 2009-06-26  Dan Bernstein  <mitz@apple.com>
1167
1168         Reviewed by Mark Rowe.
1169
1170         - revert unintentional project changes from r45277
1171
1172         * WebCore.xcodeproj/project.pbxproj:
1173
1174 2009-06-26  Mark Rowe  <mrowe@apple.com>
1175
1176         Fix the Windows build.
1177
1178         * WebCore.vcproj/WebCore.vcproj: Remove ColorSafari.cpp as
1179         the file was deleted from SVN.
1180
1181 2009-06-26  Simon Fraser  <simon.fraser@apple.com>
1182
1183         Reviewed by Dan Bernstein.
1184
1185         https://bugs.webkit.org/show_bug.cgi?id=26766
1186
1187         Change to use array indexing rather than Vector enumerators; the former
1188         are preferred style.
1189
1190         * rendering/RenderLayerBacking.cpp:
1191         (WebCore::RenderLayerBacking::hasNonCompositingContent):
1192         * rendering/RenderLayerCompositor.cpp:
1193         (WebCore::RenderLayerCompositor::calculateCompositedBounds):
1194         (WebCore::RenderLayerCompositor::computeCompositingRequirements):
1195         (WebCore::RenderLayerCompositor::rebuildCompositingLayerTree):
1196         (WebCore::RenderLayerCompositor::updateCompositingChildrenGeometry):
1197         (WebCore::RenderLayerCompositor::recursiveRepaintLayerRect):
1198         (WebCore::RenderLayerCompositor::layerHas3DContent):
1199
1200 2009-06-26  Dan Bernstein  <mitz@apple.com>
1201
1202         Reviewed by Oliver Hunt.
1203
1204         - fix <rdar://problem/6961476> REGRESSION (r42043): scrollWidth reported
1205           as 1 px
1206
1207         Test: fast/dom/Element/scrollWidth.html
1208
1209         Changed scrollWidth and scrollHeight to use the same logic for
1210         visible overflow boxes that is used for clipped overflow boxes. In
1211         particular, borders are not included and
1212         {leftmost,rightmost,lowest}Position() are used. This logic matches IE8.
1213
1214         * rendering/RenderBox.cpp:
1215         (WebCore::RenderBox::scrollWidth):
1216         (WebCore::RenderBox::scrollHeight):
1217
1218 2009-06-26  Chris Fleizach  <cfleizach@apple.com>
1219
1220         Reviewed by Oliver Hunt.
1221
1222         Bug 26725: aria-hidden, aria-disabled, aria-readonly need to be implemented
1223         https://bugs.webkit.org/show_bug.cgi?id=26725
1224
1225         Tests: accessibility/aria-disabled.html
1226                accessibility/aria-hidden.html
1227                accessibility/aria-readonly.html
1228
1229         * accessibility/AccessibilityRenderObject.cpp:
1230         (WebCore::AccessibilityRenderObject::ariaIsHidden):
1231         (WebCore::AccessibilityRenderObject::accessibilityIsIgnored):
1232         (WebCore::AccessibilityRenderObject::isEnabled):
1233         (WebCore::AccessibilityRenderObject::canSetValueAttribute):
1234         * accessibility/AccessibilityRenderObject.h:
1235         * html/HTMLAttributeNames.in:
1236
1237 2009-06-26  Brett Wilson  <brettw@chromium.org>
1238
1239         Reviewed by David Levin.
1240
1241         https://bugs.webkit.org/show_bug.cgi?id=26759
1242
1243         GIFImageDecoder is broken.
1244
1245         Make the GIFImageDecoder.repetitionCount function const to match the
1246         base class. The mismatched definitions were causing the function to not
1247         get called.
1248
1249         * platform/image-decoders/gif/GIFImageDecoder.cpp:
1250         (WebCore::GIFImageDecoder::repetitionCount):
1251         * platform/image-decoders/gif/GIFImageDecoder.h:
1252
1253 2009-06-26  Chris Marrin  <cmarrin@apple.com>
1254
1255         Reviewed by Simon Fraser  <simon.fraser@apple.com>.
1256
1257         Additional fix for https://bugs.webkit.org/show_bug.cgi?id=26651
1258
1259         The flag should always default to true to avoid it getting set
1260         to false in a build with accelerated compositing turned off
1261         and then disabling accelerated compositing when subsequently
1262         running a build with it turned on.
1263
1264         * page/Settings.cpp:
1265         (WebCore::Settings::Settings):
1266
1267 2009-06-26  Brady Eidson  <beidson@apple.com>
1268
1269         Reviewed by Sam Weinig.
1270
1271         Followup for the fix for <rdar://problem/6961578> REGRESSION (r43511): Opening .fdf files from Acrobat Professional fails
1272
1273         Now that other MIME type correction stuff is in our swizzled method, Tiger needs it too!
1274
1275         * platform/network/mac/ResourceHandleMac.mm:
1276         (-[WebCoreResourceHandleAsDelegate connection:didReceiveResponse:]):
1277         * platform/network/mac/WebCoreURLResponse.h:
1278
1279 2009-06-26  Jeremy Orlow  <jorlow@chromium.org>
1280
1281         Reviewed by Darin Fisher.
1282
1283         https://bugs.webkit.org/show_bug.cgi?id=26732
1284
1285         For the final step of https://bugs.webkit.org/show_bug.cgi?id=25376,
1286         combine LocalStorage and SessionStorage into StorageNamespace. The
1287         synching code (for LocalStorage) has already been removed, so these
1288         classes are now very similar.  All they do is essentially contain a
1289         logical grouping of origins that are attached to specific contexts
1290         (be it PageGroups for LocalStorage and Page for SessionStorage).
1291
1292         * GNUmakefile.am:
1293         * WebCore.vcproj/WebCore.vcproj:
1294         * WebCore.xcodeproj/project.pbxproj:
1295         * WebCoreSources.bkl:
1296         * page/Chrome.cpp:
1297         (WebCore::Chrome::createWindow):
1298         * page/DOMWindow.cpp:
1299         (WebCore::DOMWindow::localStorage):
1300         * page/DOMWindow.h:
1301         * page/Page.cpp:
1302         (WebCore::Page::sessionStorage):
1303         (WebCore::Page::setSessionStorage):
1304         * page/Page.h:
1305         * page/PageGroup.cpp:
1306         (WebCore::PageGroup::localStorage):
1307         * page/PageGroup.h:
1308         * storage/LocalStorage.cpp: Removed.
1309         * storage/LocalStorage.h: Removed.
1310         * storage/LocalStorageTask.cpp:
1311         * storage/LocalStorageThread.cpp:
1312         * storage/SessionStorage.cpp: Removed.
1313         * storage/SessionStorage.h: Removed.
1314         * storage/StorageArea.cpp:
1315         (WebCore::StorageArea::create):
1316         (WebCore::StorageArea::StorageArea):
1317         (WebCore::StorageArea::copy):
1318         (WebCore::StorageArea::length):
1319         (WebCore::StorageArea::key):
1320         (WebCore::StorageArea::getItem):
1321         (WebCore::StorageArea::setItem):
1322         (WebCore::StorageArea::removeItem):
1323         (WebCore::StorageArea::clear):
1324         (WebCore::StorageArea::contains):
1325         (WebCore::StorageArea::importItem):
1326         (WebCore::StorageArea::close):
1327         (WebCore::StorageArea::dispatchStorageEvent):
1328         * storage/StorageArea.h:
1329         (WebCore::):
1330         * storage/StorageAreaSync.cpp:
1331         (WebCore::StorageAreaSync::scheduleFinalSync):
1332         * storage/StorageNamespace.cpp: Copied from WebCore/storage/LocalStorage.cpp.
1333         (WebCore::localStorageNamespaceMap):
1334         (WebCore::StorageNamespace::localStorageNamespace):
1335         (WebCore::StorageNamespace::sessionStorageNamespace):
1336         (WebCore::StorageNamespace::StorageNamespace):
1337         (WebCore::StorageNamespace::~StorageNamespace):
1338         (WebCore::StorageNamespace::copy):
1339         (WebCore::StorageNamespace::storageArea):
1340         (WebCore::StorageNamespace::close):
1341         * storage/StorageNamespace.h: Copied from WebCore/storage/LocalStorage.h.
1342
1343 2009-06-26  Nate Chapin  <japhet@chromium.org>
1344
1345         Reviewed by David Levin.
1346
1347         Upstream V8Proxy.  This involved updating a lot of function and variable names to match WebKit style, hence the large size.
1348
1349         https://bugs.webkit.org/show_bug.cgi?id=26623
1350
1351         * bindings/v8/ScheduledAction.cpp:
1352         (WebCore::ScheduledAction::ScheduledAction):
1353         (WebCore::ScheduledAction::~ScheduledAction):
1354         (WebCore::ScheduledAction::execute):
1355         * bindings/v8/ScriptCallStack.cpp:
1356         (WebCore::ScriptCallStack::ScriptCallStack):
1357         * bindings/v8/ScriptController.cpp:
1358         (WebCore::ScriptController::isSafeScript):
1359         (WebCore::ScriptController::gcProtectJSWrapper):
1360         (WebCore::ScriptController::gcUnprotectJSWrapper):
1361         (WebCore::ScriptController::processingUserGesture):
1362         (WebCore::ScriptController::evaluate):
1363         (WebCore::ScriptController::setEventHandlerLineNumber):
1364         (WebCore::ScriptController::bindToWindowObject):
1365         (WebCore::ScriptController::collectGarbage):
1366         (WebCore::ScriptController::haveInterpreter):
1367         (WebCore::createScriptObject):
1368         (WebCore::ScriptController::createScriptObjectForPluginElement):
1369         * bindings/v8/ScriptInstance.cpp:
1370         (WebCore::V8ScriptInstance::clear):
1371         (WebCore::V8ScriptInstance::set):
1372         * bindings/v8/ScriptObject.cpp:
1373         (WebCore::ScriptGlobalObject::set):
1374         * bindings/v8/ScriptObjectQuarantine.cpp:
1375         (WebCore::getQuarantinedScriptObject):
1376         * bindings/v8/ScriptScope.cpp:
1377         (WebCore::ScriptScope::ScriptScope):
1378         * bindings/v8/ScriptValue.h:
1379         (WebCore::ScriptValue::ScriptValue):
1380         (WebCore::ScriptValue::operator=):
1381         (WebCore::ScriptValue::clear):
1382         * bindings/v8/V8AbstractEventListener.cpp:
1383         (WebCore::V8AbstractEventListener::invokeEventHandler):
1384         (WebCore::V8AbstractEventListener::handleEvent):
1385         (WebCore::V8AbstractEventListener::disposeListenerObject):
1386         (WebCore::V8AbstractEventListener::getReceiverObject):
1387         * bindings/v8/V8Collection.cpp:
1388         (WebCore::toOptionsCollectionSetter):
1389         * bindings/v8/V8Collection.h:
1390         (WebCore::getV8Object):
1391         (WebCore::getNamedPropertyOfCollection):
1392         (WebCore::nodeCollectionNamedPropertyGetter):
1393         (WebCore::getIndexedPropertyOfCollection):
1394         (WebCore::nodeCollectionIndexedPropertyGetter):
1395         (WebCore::nodeCollectionIndexedPropertyEnumerator):
1396         (WebCore::collectionIndexedPropertyEnumerator):
1397         (WebCore::collectionStringOrNullIndexedPropertyGetter):
1398         * bindings/v8/V8DOMMap.cpp:
1399         (WebCore::weakDOMObjectCallback):
1400         (WebCore::DOMData::removeObjectsFromWrapperMap):
1401         * bindings/v8/V8Helpers.cpp:
1402         (WebCore::wrapNPObject):
1403         (WebCore::toV8Context):
1404         * bindings/v8/V8LazyEventListener.cpp:
1405         (WebCore::V8LazyEventListener::~V8LazyEventListener):
1406         (WebCore::V8LazyEventListener::getListenerFunction):
1407         (WebCore::V8LazyEventListener::callListenerFunction):
1408         (WebCore::V8LazyEventListener::getWrappedListenerFunction):
1409         * bindings/v8/V8NodeFilterCondition.cpp:
1410         (WebCore::V8NodeFilterCondition::V8NodeFilterCondition):
1411         (WebCore::V8NodeFilterCondition::~V8NodeFilterCondition):
1412         (WebCore::V8NodeFilterCondition::acceptNode):
1413         * bindings/v8/V8ObjectEventListener.cpp:
1414         (WebCore::weakObjectEventListenerCallback):
1415         (WebCore::V8ObjectEventListener::~V8ObjectEventListener):
1416         * bindings/v8/V8Proxy.cpp: Added.
1417         * bindings/v8/V8Proxy.h:
1418         (WebCore::):
1419         (WebCore::GlobalHandleInfo::GlobalHandleInfo):
1420         (WebCore::V8Proxy::):
1421         (WebCore::V8Proxy::V8Proxy):
1422         (WebCore::V8Proxy::frame):
1423         (WebCore::V8Proxy::inlineCode):
1424         (WebCore::V8Proxy::setInlineCode):
1425         (WebCore::V8Proxy::timerCallback):
1426         (WebCore::V8Proxy::setTimerCallback):
1427         (WebCore::V8Proxy::setEventHandlerLineNumber):
1428         (WebCore::V8Proxy::finishedWithEvent):
1429         (WebCore::V8Proxy::wrapCPointer):
1430         (WebCore::V8Proxy::extractCPointer):
1431         (WebCore::V8Proxy::convertDOMWrapperToNative):
1432         (WebCore::V8Proxy::convertDOMWrapperToNode):
1433         (WebCore::V8Proxy::convertToV8Object):
1434         (WebCore::V8Proxy::convertToNativeObject):
1435         (WebCore::V8Proxy::convertToNativeEvent):
1436         (WebCore::V8Proxy::context):
1437         (WebCore::V8Proxy::extractCPointerImpl):
1438         (WebCore::V8Proxy::utilityContext):
1439         (WebCore::V8Proxy::constructDOMObject):
1440         (WebCore::throwError):
1441         (WebCore::toV8):
1442         * bindings/v8/V8Utilities.h:
1443         * bindings/v8/WorkerContextExecutionProxy.cpp:
1444         (WebCore::WorkerContextExecutionProxy::retrieve):
1445         (WebCore::WorkerContextExecutionProxy::initContextIfNeeded):
1446         (WebCore::WorkerContextExecutionProxy::GetConstructor):
1447         (WebCore::WorkerContextExecutionProxy::ToV8Object):
1448         (WebCore::WorkerContextExecutionProxy::EventToV8Object):
1449         (WebCore::WorkerContextExecutionProxy::toV8):
1450         (WebCore::WorkerContextExecutionProxy::forgetV8EventObject):
1451         (WebCore::WorkerContextExecutionProxy::evaluate):
1452         (WebCore::WorkerContextExecutionProxy::runScript):
1453         * bindings/v8/custom/V8AttrCustom.cpp:
1454         (WebCore::ACCESSOR_SETTER):
1455         * bindings/v8/custom/V8CSSStyleDeclarationCustom.cpp:
1456         (WebCore::NAMED_PROPERTY_GETTER):
1457         (WebCore::NAMED_PROPERTY_SETTER):
1458         * bindings/v8/custom/V8CanvasPixelArrayCustom.cpp:
1459         (WebCore::INDEXED_PROPERTY_GETTER):
1460         (WebCore::INDEXED_PROPERTY_SETTER):
1461         * bindings/v8/custom/V8CanvasRenderingContext2DCustom.cpp:
1462         (WebCore::toV8):
1463         (WebCore::toCanvasStyle):
1464         (WebCore::ACCESSOR_GETTER):
1465         (WebCore::ACCESSOR_SETTER):
1466         (WebCore::CALLBACK_FUNC_DECL):
1467         * bindings/v8/custom/V8ClientRectListCustom.cpp:
1468         (WebCore::INDEXED_PROPERTY_GETTER):
1469         * bindings/v8/custom/V8ClipboardCustom.cpp:
1470         (WebCore::ACCESSOR_GETTER):
1471         (WebCore::CALLBACK_FUNC_DECL):
1472         * bindings/v8/custom/V8CustomBinding.cpp:
1473         (WebCore::allowSettingFrameSrcToJavascriptUrl):
1474         (WebCore::ACCESSOR_GETTER):
1475         (WebCore::INDEXED_ACCESS_CHECK):
1476         (WebCore::NAMED_ACCESS_CHECK):
1477         (WebCore::V8Custom::GetTargetFrame):
1478         * bindings/v8/custom/V8CustomEventListener.cpp:
1479         (WebCore::V8EventListener::V8EventListener):
1480         (WebCore::V8EventListener::~V8EventListener):
1481         (WebCore::V8EventListener::callListenerFunction):
1482         * bindings/v8/custom/V8CustomSQLStatementCallback.cpp:
1483         (WebCore::V8CustomSQLStatementCallback::handleEvent):
1484         * bindings/v8/custom/V8CustomSQLStatementErrorCallback.cpp:
1485         (WebCore::V8CustomSQLStatementErrorCallback::handleEvent):
1486         * bindings/v8/custom/V8CustomSQLTransactionCallback.cpp:
1487         (WebCore::V8CustomSQLTransactionCallback::handleEvent):
1488         * bindings/v8/custom/V8CustomSQLTransactionErrorCallback.cpp:
1489         (WebCore::V8CustomSQLTransactionErrorCallback::handleEvent):
1490         * bindings/v8/custom/V8CustomVoidCallback.cpp:
1491         (WebCore::V8CustomVoidCallback::handleEvent):
1492         (WebCore::invokeCallback):
1493         * bindings/v8/custom/V8CustomXPathNSResolver.cpp:
1494         (WebCore::V8CustomXPathNSResolver::lookupNamespaceURI):
1495         * bindings/v8/custom/V8DOMParserConstructor.cpp:
1496         (WebCore::CALLBACK_FUNC_DECL):
1497         * bindings/v8/custom/V8DOMWindowCustom.cpp:
1498         (WebCore::V8Custom::WindowSetTimeoutImpl):
1499         (WebCore::convertBase64):
1500         (WebCore::ACCESSOR_SETTER):
1501         (WebCore::CALLBACK_FUNC_DECL):
1502         (WebCore::ACCESSOR_GETTER):
1503         (WebCore::createWindow):
1504         (WebCore::INDEXED_PROPERTY_GETTER):
1505         (WebCore::NAMED_PROPERTY_GETTER):
1506         (WebCore::V8Custom::ClearTimeoutImpl):
1507         (WebCore::NAMED_ACCESS_CHECK):
1508         (WebCore::INDEXED_ACCESS_CHECK):
1509         * bindings/v8/custom/V8DatabaseCustom.cpp:
1510         (WebCore::CALLBACK_FUNC_DECL):
1511         * bindings/v8/custom/V8DocumentCustom.cpp:
1512         (WebCore::CALLBACK_FUNC_DECL):
1513         * bindings/v8/custom/V8DocumentLocationCustom.cpp:
1514         (WebCore::ACCESSOR_GETTER):
1515         (WebCore::ACCESSOR_SETTER):
1516         * bindings/v8/custom/V8ElementCustom.cpp:
1517         (WebCore::CALLBACK_FUNC_DECL):
1518         (WebCore::ACCESSOR_SETTER):
1519         (WebCore::ACCESSOR_GETTER):
1520         * bindings/v8/custom/V8EventCustom.cpp:
1521         (WebCore::ACCESSOR_SETTER):
1522         (WebCore::ACCESSOR_GETTER):
1523         * bindings/v8/custom/V8HTMLCanvasElementCustom.cpp:
1524         (WebCore::CALLBACK_FUNC_DECL):
1525         * bindings/v8/custom/V8HTMLCollectionCustom.cpp:
1526         (WebCore::getNamedItems):
1527         (WebCore::getItem):
1528         (WebCore::NAMED_PROPERTY_GETTER):
1529         (WebCore::CALLBACK_FUNC_DECL):
1530         * bindings/v8/custom/V8HTMLDocumentCustom.cpp:
1531         (WebCore::NAMED_PROPERTY_GETTER):
1532         (WebCore::CALLBACK_FUNC_DECL):
1533         (WebCore::ACCESSOR_GETTER):
1534         * bindings/v8/custom/V8HTMLFormElementCustom.cpp:
1535         (WebCore::INDEXED_PROPERTY_GETTER):
1536         (WebCore::NAMED_PROPERTY_GETTER):
1537         (WebCore::CALLBACK_FUNC_DECL):
1538         * bindings/v8/custom/V8HTMLFrameElementCustom.cpp:
1539         (WebCore::ACCESSOR_SETTER):
1540         * bindings/v8/custom/V8HTMLFrameSetElementCustom.cpp:
1541         (WebCore::NAMED_PROPERTY_GETTER):
1542         * bindings/v8/custom/V8HTMLIFrameElementCustom.cpp:
1543         (WebCore::ACCESSOR_SETTER):
1544         * bindings/v8/custom/V8HTMLImageElementConstructor.cpp:
1545         (WebCore::CALLBACK_FUNC_DECL):
1546         * bindings/v8/custom/V8HTMLInputElementCustom.cpp:
1547         (WebCore::ACCESSOR_GETTER):
1548         (WebCore::ACCESSOR_SETTER):
1549         (WebCore::CALLBACK_FUNC_DECL):
1550         * bindings/v8/custom/V8HTMLOptionElementConstructor.cpp:
1551         (WebCore::CALLBACK_FUNC_DECL):
1552         * bindings/v8/custom/V8HTMLOptionsCollectionCustom.cpp:
1553         (WebCore::CALLBACK_FUNC_DECL):
1554         (WebCore::ACCESSOR_GETTER):
1555         (WebCore::ACCESSOR_SETTER):
1556         (WebCore::INDEXED_PROPERTY_GETTER):
1557         (WebCore::INDEXED_PROPERTY_SETTER):
1558         * bindings/v8/custom/V8HTMLPlugInElementCustom.cpp:
1559         (WebCore::NAMED_PROPERTY_GETTER):
1560         (WebCore::NAMED_PROPERTY_SETTER):
1561         (WebCore::INDEXED_PROPERTY_GETTER):
1562         (WebCore::INDEXED_PROPERTY_SETTER):
1563         * bindings/v8/custom/V8HTMLSelectElementCollectionCustom.cpp:
1564         (WebCore::NAMED_PROPERTY_GETTER):
1565         (WebCore::INDEXED_PROPERTY_SETTER):
1566         * bindings/v8/custom/V8HTMLSelectElementCustom.cpp:
1567         (WebCore::CALLBACK_FUNC_DECL):
1568         (WebCore::removeElement):
1569         * bindings/v8/custom/V8InspectorControllerCustom.cpp:
1570         (WebCore::CALLBACK_FUNC_DECL):
1571         * bindings/v8/custom/V8LocationCustom.cpp:
1572         (WebCore::ACCESSOR_SETTER):
1573         (WebCore::ACCESSOR_GETTER):
1574         (WebCore::CALLBACK_FUNC_DECL):
1575         (WebCore::INDEXED_ACCESS_CHECK):
1576         (WebCore::NAMED_ACCESS_CHECK):
1577         * bindings/v8/custom/V8MessageChannelConstructor.cpp:
1578         (WebCore::CALLBACK_FUNC_DECL):
1579         * bindings/v8/custom/V8MessagePortCustom.cpp:
1580         (WebCore::ACCESSOR_GETTER):
1581         (WebCore::ACCESSOR_SETTER):
1582         (WebCore::CALLBACK_FUNC_DECL):
1583         * bindings/v8/custom/V8NamedNodeMapCustom.cpp:
1584         (WebCore::INDEXED_PROPERTY_GETTER):
1585         (WebCore::NAMED_PROPERTY_GETTER):
1586         * bindings/v8/custom/V8NavigatorCustom.cpp:
1587         (WebCore::ACCESSOR_GETTER):
1588         * bindings/v8/custom/V8NodeCustom.cpp:
1589         (WebCore::CALLBACK_FUNC_DECL):
1590         * bindings/v8/custom/V8NodeIteratorCustom.cpp:
1591         (WebCore::toV8):
1592         (WebCore::CALLBACK_FUNC_DECL):
1593         * bindings/v8/custom/V8NodeListCustom.cpp:
1594         (WebCore::NAMED_PROPERTY_GETTER):
1595         * bindings/v8/custom/V8SQLResultSetRowListCustom.cpp:
1596         (WebCore::CALLBACK_FUNC_DECL):
1597         * bindings/v8/custom/V8SQLTransactionCustom.cpp:
1598         (WebCore::CALLBACK_FUNC_DECL):
1599         * bindings/v8/custom/V8SVGElementInstanceCustom.cpp:
1600         (WebCore::CALLBACK_FUNC_DECL):
1601         * bindings/v8/custom/V8SVGLengthCustom.cpp:
1602         (WebCore::ACCESSOR_GETTER):
1603         (WebCore::CALLBACK_FUNC_DECL):
1604         * bindings/v8/custom/V8SVGMatrixCustom.cpp:
1605         (WebCore::CALLBACK_FUNC_DECL):
1606         * bindings/v8/custom/V8StyleSheetListCustom.cpp:
1607         (WebCore::NAMED_PROPERTY_GETTER):
1608         * bindings/v8/custom/V8TreeWalkerCustom.cpp:
1609         (WebCore::toV8):
1610         (WebCore::CALLBACK_FUNC_DECL):
1611         * bindings/v8/custom/V8WebKitCSSMatrixConstructor.cpp:
1612         (WebCore::CALLBACK_FUNC_DECL):
1613         * bindings/v8/custom/V8WebKitPointConstructor.cpp:
1614         (WebCore::CALLBACK_FUNC_DECL):
1615         * bindings/v8/custom/V8WorkerContextCustom.cpp:
1616         (WebCore::ACCESSOR_GETTER):
1617         (WebCore::ACCESSOR_SETTER):
1618         (WebCore::SetTimeoutOrInterval):
1619         (WebCore::CALLBACK_FUNC_DECL):
1620         * bindings/v8/custom/V8WorkerCustom.cpp:
1621         (WebCore::CALLBACK_FUNC_DECL):
1622         (WebCore::getEventListener):
1623         (WebCore::ACCESSOR_GETTER):
1624         (WebCore::ACCESSOR_SETTER):
1625         * bindings/v8/custom/V8XMLHttpRequestConstructor.cpp:
1626         (WebCore::CALLBACK_FUNC_DECL):
1627         * bindings/v8/custom/V8XMLHttpRequestCustom.cpp:
1628         (WebCore::getEventListener):
1629         (WebCore::ACCESSOR_GETTER):
1630         (WebCore::ACCESSOR_SETTER):
1631         (WebCore::CALLBACK_FUNC_DECL):
1632         * bindings/v8/custom/V8XMLHttpRequestUploadCustom.cpp:
1633         (WebCore::ACCESSOR_GETTER):
1634         (WebCore::ACCESSOR_SETTER):
1635         (WebCore::CALLBACK_FUNC_DECL):
1636         * bindings/v8/custom/V8XMLSerializerConstructor.cpp:
1637         (WebCore::CALLBACK_FUNC_DECL):
1638         * bindings/v8/custom/V8XPathEvaluatorConstructor.cpp:
1639         (WebCore::CALLBACK_FUNC_DECL):
1640         * bindings/v8/custom/V8XSLTProcessorCustom.cpp:
1641         (WebCore::CALLBACK_FUNC_DECL):
1642
1643 2009-06-26  Kevin McCullough  <kmccullough@apple.com>
1644
1645         Reviewed by Tim Hatcher.
1646
1647         <rdar://problem/7011047> Profiler shows the record button 'on' even
1648         though it's finished
1649
1650         I consolidated the creation of the user initiated profile name into
1651         its own function and then called it from console::profile instead of
1652         calling startUserInitiatedProfiling().  This way we don't call
1653         toggleRecordButton() which turns on the record button.
1654
1655         * inspector/InspectorController.cpp:
1656         (WebCore::InspectorController::didCommitLoad):
1657         (WebCore::InspectorController::getCurrentUserInitiatedProfileName):
1658         (WebCore::InspectorController::startUserInitiatedProfiling):
1659         (WebCore::InspectorController::stopUserInitiatedProfiling):
1660         * inspector/InspectorController.h:
1661         * page/Console.cpp:
1662         (WebCore::Console::profile):
1663         (WebCore::Console::profileEnd):
1664
1665 2009-06-26  Jeremy Moskovich  <jeremy@chromium.org>
1666
1667         Reviewed by Eric Seidel.
1668
1669         https://bugs.webkit.org/show_bug.cgi?id=26691
1670
1671         Cleanup: Move focusRingColor to RenderTheme.
1672
1673         Most of this CL involves deleting files and removing dead code.
1674
1675         focusRingColor() is now defined in RenderTheme rather than in
1676         misc. places on each port.  The default color is specified as
1677         black in renderTheme and ports can override it in their own
1678         custom renderThemes.
1679
1680         Behavior should be identical except for the following cases,
1681         this lists platform and what the focus ring color used to be
1682         before this cl and the file where it used to be defined:
1683
1684         Android - red
1685         WebCore/platform/android/TemporaryLinkStubs.cpp
1686
1687         Cairo - aqua focus ring color - 0xFF7DADD9
1688         WebCore/platform/graphics/cairo/GraphicsContextCairo.cpp
1689
1690         wx - red
1691         WebCore/platform/wx/TemporaryLinkStubs.cpp
1692
1693         QT - black
1694         WebCore/platform/graphics/qt/GraphicsContextQt.cpp
1695
1696         Manual test: manual-tests/focusringcolor-change-on-theme-change.html
1697
1698         * css/CSSStyleSelector.cpp:
1699         (WebCore::CSSStyleSelector::getColorFromPrimitiveValue):
1700         * manual-tests/focusringcolor-change-on-theme-change.html: Added.
1701         * platform/android/TemporaryLinkStubs.cpp:
1702         * platform/graphics/cairo/GraphicsContextCairo.cpp:
1703         * platform/graphics/chromium/ColorChromium.cpp: Removed.
1704         * platform/graphics/chromium/ColorChromiumMac.mm: Removed.
1705         * platform/graphics/mac/ColorMac.h:
1706         * platform/graphics/mac/ColorMac.mm:
1707         (WebCore::oldAquaFocusRingColor):
1708         (WebCore::setUsesTestModeFocusRingColor):
1709         (WebCore::usesTestModeFocusRingColor):
1710         * platform/graphics/qt/GraphicsContextQt.cpp:
1711         * platform/graphics/skia/GraphicsContextSkia.cpp:
1712         (WebCore::GraphicsContext::drawFocusRing):
1713         * platform/graphics/win/ColorSafari.cpp: Removed.
1714         * platform/wx/TemporaryLinkStubs.cpp:
1715         * rendering/RenderTheme.cpp:
1716         (WebCore::RenderTheme::focusRingColor):
1717         * rendering/RenderTheme.h:
1718         * rendering/RenderThemeChromiumMac.h:
1719         * rendering/RenderThemeChromiumMac.mm:
1720         (WebCore::RenderThemeChromiumMac::focusRingColor):
1721         (WebCore::RenderThemeChromiumMac::systemColor):
1722         * rendering/RenderThemeChromiumSkia.cpp:
1723         (WebCore::RenderThemeChromiumSkia::focusRingColor):
1724         * rendering/RenderThemeChromiumSkia.h:
1725         * rendering/RenderThemeMac.h:
1726         * rendering/RenderThemeMac.mm:
1727         (WebCore::RenderThemeMac::focusRingColor):
1728         (WebCore::RenderThemeMac::systemColor):
1729         * rendering/RenderThemeSafari.cpp:
1730         (WebCore::makeRGBAFromCGColor):
1731         (WebCore::RenderThemeSafari::focusRingColor):
1732         * rendering/RenderThemeSafari.h:
1733
1734 2009-06-26  Dmitry Titov  <dimich@chromium.org>
1735
1736         Reviewed by David Levin.
1737
1738         https://bugs.webkit.org/show_bug.cgi?id=26761
1739         [Chromium] Enable Dedicated Workers in Chromium.
1740
1741         * bindings/v8/custom/V8WorkerCustom.cpp:
1742         (WebCore::CALLBACK_FUNC_DECL):
1743         Remove the check that prevented workers from being created w/o a command-line switch.
1744         The flag itself and methods will be removed in a subsequent patch, after
1745         corresponding change in Chromium.
1746
1747 2009-06-26  Jessie Berlin  <jberlin@apple.com>
1748
1749         Reviewed by Mark Rowe.
1750         
1751         Fix: https://bugs.webkit.org/show_bug.cgi?id=26723
1752         Where the m_mouseDown event was never being set on windows, so the
1753         client X and Y coordinates were always being reported as zero in a
1754         dragstart handler.
1755
1756         Test: editing/selection/drag-start-event-client-x-y.html
1757
1758         * page/EventHandler.cpp:
1759         (WebCore::EventHandler::handleMousePressEvent):
1760         Set the m_mouseDown event when the mouse press is handled.
1761         * page/mac/EventHandlerMac.mm:
1762         (WebCore::EventHandler::mouseDown):
1763         Removed now redundant setting of m_mouseDown.
1764
1765 2009-06-26  Brady Eidson  <beidson@apple.com>
1766
1767         Tiger build fix
1768
1769         * WebCore.xcodeproj/project.pbxproj:
1770         * platform/network/mac/WebCoreURLResponse.mm:
1771         (swizzleMIMETypeMethodIfNecessary):
1772
1773 2009-06-26  Alexey Proskuryakov  <ap@webkit.org>
1774
1775         Reviewed by Sam Weinig.
1776
1777         https://bugs.webkit.org/show_bug.cgi?id=26681
1778         Problem updating applicationCache when server returns 304
1779         
1780         Improve the fix, make the test pass on Tiger.
1781
1782         * loader/appcache/ApplicationCacheGroup.cpp:
1783         (WebCore::ApplicationCacheGroup::didReceiveResponse): Fix another code path to remove the
1784         current item from list.
1785
1786         * platform/network/mac/ResourceHandleMac.mm: (WebCore::ResourceHandle::start): On Tiger,
1787         conditional requests that cannot be cached by network layer cause errors with default cache
1788         policy.
1789
1790 2009-06-26  Brady Eidson  <beidson@apple.com>
1791
1792         Reviewed by Sam Weinig
1793
1794         <rdar://problem/6961578> REGRESSION (r43511): Opening .fdf files from Acrobat Professional fails
1795
1796         When we disabled content sniffing for file urls we lost knowledge of many file extensions that we
1797         didn't intend to lose.  Turns out the CoreTypes UTI database doesn't know about every extension Gatekeeper
1798         knew about.
1799
1800         By comparing CoreTypes' database to Gatekeepers, this patch adds a hardcoded list of file extension to MIME
1801         type mappings that are missing in CoreType's database.
1802
1803         Test: platform/mac/fast/loader/file-url-mimetypes.html
1804
1805         * platform/network/mac/ResourceHandleMac.mm:
1806         (-[WebCoreResourceHandleAsDelegate connection:didReceiveResponse:]): Move the MIME Type swizzling code to
1807           WebCoreURLResponse.
1808
1809         * platform/network/mac/ResourceResponseMac.mm:
1810         (WebCore::ResourceResponse::platformLazyInit): _webcore_MIMEType -> MIMEType, as we now have only one place
1811           where we do all MIMEType correction.
1812
1813         * platform/network/mac/WebCoreURLResponse.h: Remove _webcore_MIMEType, as it is now folded into the swizzled
1814           implementation of MIMEType.
1815         * platform/network/mac/WebCoreURLResponse.mm:
1816         (createBinaryExtensionsSet):
1817         (createExtensionToMIMETypeMap):
1818         (swizzleMIMETypeMethodIfNecessary):
1819         (webNSURLResponseMIMEType): If it's a file URL and there's no MIME type, see if the extension exists in the 
1820           extension -> MIME type map before turning to the default MIME type.  Also roll in what was previously
1821           implemented in _webcore_MIMEType.
1822
1823         * svg/graphics/SVGImage.cpp:
1824         (WebCore::SVGImage::~SVGImage): Tweak this ASSERT - SVGImages might get destroyed without ever having a client.
1825
1826 2009-06-25  Pierre d'Herbemont  <pdherbemont@apple.com>
1827
1828         Reviewed by Simon Fraser.
1829
1830         Show the fullscreen button only if the backend has support for it.
1831
1832         https://bugs.webkit.org/show_bug.cgi?id=26661
1833
1834         No test since this is not reachable via the DOM.
1835
1836         * html/HTMLMediaElement.h:
1837         (WebCore::HTMLMediaElement::supportsFullscreen): new
1838         * html/HTMLVideoElement.h:
1839         (WebCore::HTMLVideoElement::supportsFullscreen): new
1840         * platform/graphics/MediaPlayer.cpp:
1841         (WebCore::NullMediaPlayerPrivate::supportsFullscreen): new
1842         (WebCore::MediaPlayer::supportsFullscreen): new
1843         * platform/graphics/MediaPlayer.h: new
1844         * platform/graphics/MediaPlayerPrivate.h: new
1845         (WebCore::MediaPlayerPrivateInterface::supportsFullscreen): new
1846         * rendering/MediaControlElements.cpp:
1847         (WebCore::MediaControlFullscreenButtonElement::rendererIsNeeded): new
1848         * rendering/MediaControlElements.h:
1849
1850 2009-06-25  Pierre d'Herbemont  <pdherbemont@apple.com>
1851
1852         Reviewed by Simon Fraser.
1853
1854         <rdar://problem/7007776> Controller doesn't automatically update counters when file
1855         is playing ( http://www.jazzguitar.be/mp3/Michael%20Lewis%20-%20SSSJ.mp3 )
1856
1857         Update the time display when the movie time changes.
1858
1859         * rendering/RenderMedia.cpp:
1860         (WebCore::RenderMedia::updateControls):
1861
1862 2009-06-25  Pierre d'Herbemont  <pdherbemont@apple.com>
1863
1864         Reviewed by Simon Fraser.
1865
1866         https://bugs.webkit.org/show_bug.cgi?id=26659
1867
1868         Support hidding a control bar element from the Media element controller.
1869
1870         Update layout tests since the fullscreen button no longer has a renderer.
1871
1872         * rendering/MediaControlElements.cpp:
1873         (WebCore::MediaTextDisplayElement::update): call updateStyle() so everything
1874         is updated properly.
1875         (WebCore::MediaControlInputElement::MediaControlInputElement):
1876         (WebCore::MediaControlInputElement::update): call updateStyle()
1877         (WebCore::MediaControlInputElement::updateStyle): create the renderer properly
1878         or not depending on what rendererIsNeeded() return.
1879         * rendering/MediaControlElements.h:
1880
1881 2009-06-26  Kevin McCullough  <kmccullough@apple.com>
1882
1883         Reviewed by Oliver Hunt.
1884
1885         <rdar://problem/6968137> Profiler title numbers increment even after a
1886         reload.
1887
1888         - Now the numbers are reset when the profiles are.
1889
1890         * inspector/InspectorController.cpp:
1891         (WebCore::InspectorController::didCommitLoad):
1892
1893 2009-06-26  Adele Peterson  <adele@apple.com>
1894
1895         Reviewed by Darin Adler.
1896
1897         Fix for <rdar://problem/7000796>
1898         REGRESSION(34681): Breaking up quoted text makes new, unquoted text blue after certain steps; repros with some messages
1899
1900         Test: editing/inserting/break-blockquote-after-delete.html
1901
1902         Keep track of whether the typing style should be preserved after the TypingCommand is applied.  When adding onto an open
1903         typing command, keep that flag up to date.
1904
1905         In this case, an InsertParagraphSeparatorInQuotedContent command, which should not preserve typing style, 
1906         was following an open Delete command, which does preserve the typing style.  So we were applying the original
1907         typing style (from before the delete, so blue text) to the cursor in the unquoted area after breaking up the blockquote.
1908
1909         * editing/TypingCommand.cpp:
1910         (WebCore::TypingCommand::TypingCommand):
1911         (WebCore::TypingCommand::typingAddedToOpenCommand):
1912         (WebCore::TypingCommand::insertTextRunWithoutNewlines):
1913         (WebCore::TypingCommand::insertLineBreak):
1914         (WebCore::TypingCommand::insertParagraphSeparator):
1915         (WebCore::TypingCommand::insertParagraphSeparatorInQuotedContent):
1916         (WebCore::TypingCommand::deleteKeyPressed):
1917         (WebCore::TypingCommand::forwardDeleteKeyPressed):
1918         (WebCore::TypingCommand::deleteSelection):
1919         (WebCore::TypingCommand::updatePreservesTypingStyle):
1920         * editing/TypingCommand.h: (WebCore::TypingCommand::preservesTypingStyle):
1921
1922 2009-06-26  Jedrzej Nowacki  <jedrzej.nowacki@nokia.com>
1923
1924         Reviewed by Simon Hausmann.
1925
1926         Add support for saving and loading of QWebHistory to and from a QByteArray.
1927
1928         This includes streaming operators for QWebHistory. for convenience.
1929
1930         New autotests that test QWebHistory and QWebHistoryItem serialization.
1931
1932         * WebCore.pro:
1933         * history/HistoryItem.h:
1934         (WebCore::HistoryItem::dailyVisitCounts):
1935         (WebCore::HistoryItem::weeklyVisitCounts):
1936         * history/qt/HistoryItemQt.cpp: Added.
1937         (WebCore::HistoryItem::restoreState):
1938         (WebCore::HistoryItem::saveState):
1939
1940 2009-06-26  Jedrzej Nowacki  <jedrzej.nowacki@nokia.com>
1941
1942         Reviewed by Simon Hausmann.
1943
1944         Add support for QDataStream operators to String and IntPoint.
1945
1946         * platform/graphics/IntPoint.h:
1947         (WebCore::operator<<):
1948         (WebCore::operator>>):
1949         * platform/text/PlatformString.h:
1950         * platform/text/qt/StringQt.cpp:
1951         (WebCore::operator<<):
1952         (WebCore::operator>>):
1953
1954 2009-06-26  Ben Murdoch  <benm@google.com>
1955
1956         Reviewed by Darin Fisher.
1957
1958         Add #if ENABLE(DOM_STORAGE) to the V8 custom bindings for local/session storage.
1959         https://bugs.webkit.org/show_bug.cgi?id=26757
1960
1961         * bindings/v8/custom/V8StorageCustom.cpp
1962
1963 2009-06-26  Yongjun Zhang  <yongjun.zhang@nokia.com>
1964
1965         Reviewed by Eric Seidel.
1966
1967         Test: platform/qt/fast/events/event-sender-keydown-frame.html
1968
1969         Bug 20303: [Qt] Key events are not working in frames.
1970
1971         Merge scrolling handling code in qt and win port, move it to
1972         EventHandler.
1973
1974         * page/EventHandler.cpp:
1975         (WebCore::EventHandler::scrollRecursively):
1976         * page/EventHandler.h:
1977
1978 2009-06-26  Rob Buis  <rwlbuis@gmail.com>
1979
1980         Reviewed by Eric Seidel.
1981
1982         https://bugs.webkit.org/show_bug.cgi?id=26682
1983         Bug 26682: It should be possible to add image to SVG DOM programmatically (using JavaScript)
1984
1985         Make sure the xlink:href animated property setting syncs the corresponding attribute with the right namespace.
1986
1987         Test: svg/custom/createImageElement.svg
1988
1989         * svg/SVGAnimatedProperty.h:
1990         (WebCore::synchronizeProperty):
1991
1992 2009-06-26  Takeshi Yoshino  <tyoshino@google.com>
1993
1994         Reviewed by Timothy Hatcher.
1995
1996         Bug 26156: In view-source mode, always render the contents using HTMLViewSourceDocument
1997         https://bugs.webkit.org/show_bug.cgi?id=26156
1998
1999         When in view-source mode, render the contents using HTMLViewSourceDocument
2000         regardless it's applicable for any plugin or not.
2001
2002         Chromium tells WebCore to render the contents of specified URL when
2003         view-source: prefix is added to the URL. But currently, DOMImplementation
2004         ignores inViewSourceMode() when the MIME type is indicating that the contents
2005         are neither texts nor HTML family documents.
2006
2007         For example, we can check the contents of asf file without launching media
2008         player. Rendering contents for view-source:-specified input is not what user
2009         expects.
2010
2011         http://code.google.com/p/chromium/issues/detail?id=10545
2012
2013         I want to fix this issue by this patch. IMHO, regardless of this Chromium
2014         specific issue, I think we should force use of HTMLViewSourceDocument when
2015         inViewSourceMode() is specified.
2016
2017         Test: fast/frames/viewsource-on-image-file.html
2018
2019         * dom/DOMImplementation.cpp:
2020         (WebCore::DOMImplementation::createDocument):
2021         * html/HTMLViewSourceDocument.cpp:
2022         (WebCore::HTMLViewSourceDocument::createTokenizer):
2023         * html/HTMLViewSourceDocument.h:
2024
2025 2009-06-26  Xan Lopez  <xlopez@igalia.com>
2026
2027         Reviewed by Jan Alonzo.
2028
2029         https://bugs.webkit.org/show_bug.cgi?id=25529
2030         [Gtk] Expected states not exposed to assistive technologies
2031
2032         Add support for VISIBLE, EDITABLE and SENSITIVE states.
2033
2034         * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
2035         (setAtkStateSetFromCoreObject):
2036
2037 2009-06-26  Laszlo Gombos  <laszlo.1.gombos@nokia.com>
2038
2039         Reviewed by Darin Adler.
2040
2041         "Pointer to incomplete class type is not allowed" error with RVCT
2042         https://bugs.webkit.org/show_bug.cgi?id=26721
2043
2044         Based on Norbert Leser's work.
2045
2046         * dom/Document.cpp:
2047         (WebCore::Document::setFocusedNode):
2048         * dom/Node.cpp:
2049         (WebCore::Node::dispatchMouseEvent):
2050         * dom/Node.h: Remove the default value for PassRefPtr<Event> args,
2051         to eliminate dependency on the Event class definition
2052
2053 2009-06-26  Laszlo Gombos  <laszlo.1.gombos@nokia.com>
2054
2055         Reviewed by Maciej Stachowiak.
2056
2057         [Qt] Build fix after r45183
2058         https://bugs.webkit.org/show_bug.cgi?id=26748
2059
2060         * WebCore.pro:
2061
2062 2009-06-25  Alexey Proskuryakov  <ap@webkit.org>
2063
2064         Reviewed by Darin Adler.
2065
2066         https://bugs.webkit.org/show_bug.cgi?id=26681
2067         <rdar://problem/7003461> Problem updating applicationCache when server returns 304
2068
2069         Test: http/tests/appcache/update-cache.html
2070
2071         * loader/appcache/ApplicationCacheGroup.cpp: (WebCore::ApplicationCacheGroup::didReceiveResponse):
2072         We're already done with the resource, don't try to load it again.
2073
2074 2009-06-25  Simon Fraser  <simon.fraser@apple.com>
2075
2076         Reviewed by Oliver Hunt.
2077         
2078         <rdar://problem/6990481>
2079         
2080         Handle perspective computation on non-layer objects.
2081
2082         Test: transforms/3d/general/perspective-non-layer.html
2083
2084         * rendering/RenderObject.cpp:
2085         (WebCore::RenderObject::getTransformFromContainer):
2086
2087 2009-06-25  Pierre d'Herbemont  <pdherbemont@apple.com>
2088
2089         Reviewed by Eric Seidel.
2090
2091         https://bugs.webkit.org/show_bug.cgi?id=26653
2092
2093         Use flex box in the mediaControls.css style, to nicely scale if a button gets
2094         dynamically added or removed.
2095
2096         Media tests results are affected by this changes.
2097
2098         * css/mediaControls.css:
2099         * css/mediaControlsQT.css:
2100
2101 2009-06-25  Albert J. Wong  <ajwong@chromium.org>
2102
2103         Reviewed by Darin Fisher.
2104
2105         https://bugs.webkit.org/show_bug.cgi?id=26724
2106
2107         Move relavent part of setDefaultFontSize from RenderThemeChromiumWin
2108         up into RenderThemeChromiumSkia.
2109
2110         * rendering/RenderThemeChromiumSkia.cpp:
2111         (WebCore::RenderThemeChromiumSkia::setDefaultFontSize):
2112         * rendering/RenderThemeChromiumSkia.h:
2113         * rendering/RenderThemeChromiumWin.cpp:
2114         (WebCore::RenderThemeChromiumWin::setDefaultFontSize):
2115         * rendering/RenderThemeChromiumWin.h:
2116
2117 2009-06-25  Matt Perry  <mpcomplete@chromium.org>
2118
2119         Reviewed by Darin Fisher.
2120
2121         https://bugs.webkit.org/show_bug.cgi?id=26733
2122
2123         Add V8-only methods to FrameLoaderClient that V8 can use to send
2124         out notifications when it creates/destroys a script context.
2125
2126         * loader/EmptyClients.h:
2127         (WebCore::EmptyFrameLoaderClient::didCreateScriptContext):
2128         (WebCore::EmptyFrameLoaderClient::didDestroyScriptContext):
2129         * loader/FrameLoaderClient.h:
2130         (WebCore::FrameLoaderClient::didCreateScriptContext):
2131         (WebCore::FrameLoaderClient::didDestroyScriptContext):
2132
2133 2009-06-25  Dimitri Glazkov  <dglazkov@chromium.org>
2134
2135         Reviewed by David Levin.
2136
2137         Correct a few typos that snuck in when I was reformatting CodeGeneratorV8.pm
2138         to match WebKit style.
2139
2140         * bindings/scripts/CodeGeneratorV8.pm: Corrected lots of typos.
2141
2142 2009-06-25  Adam Langley  <agl@google.com>
2143
2144         TBRed: fix for Chromium tree.
2145
2146         Add missing include for r45199.
2147
2148         https://bugs.webkit.org/show_bug.cgi?id=26736
2149
2150         r45199 added a reference to throwError without including V8Proxy.h
2151
2152         * bindings/v8/WorkerScriptController.cpp:
2153
2154 2009-06-25  Adam Langley  <agl@google.com>
2155
2156         TBRed: fix for Chromium tree.
2157
2158         https://bugs.webkit.org/show_bug.cgi?id=26735
2159
2160         Fix V8IsolatedWorld to point to the correct include file.
2161
2162         The deprecated v8_index.h was removed from the Chromium tree in r19291
2163         and upstreamed into WebKit with r45193. However V8IsolatedWorld
2164         slipped in between the cracks and broke the build.
2165
2166         * bindings/v8/V8IsolatedWorld.h: update with new header location.
2167
2168 2009-06-25  Chris Marrin  <cmarrin@apple.com>
2169
2170         Reviewed by Simon Fraser  <simon.fraser@apple.com>.
2171
2172         https://bugs.webkit.org/show_bug.cgi?id=26651
2173         
2174         Preference is named "WebKitAcceleratedCompositingEnabled"
2175         and is a boolean value. When false, prevents compositing layers from
2176         being created, which prevents hardware animation from running.
2177         Also forces video to do software rendering. Added a cache for
2178         the flag in RenderLayerCompositing and made it all work
2179         on-the-fly when the flag is changed while a page is loaded.
2180
2181         * WebCore.base.exp:
2182         * page/FrameView.cpp:
2183         (WebCore::FrameView::updateCompositingLayers):
2184         * page/Settings.cpp:
2185         (WebCore::setNeedsReapplyStylesInAllFrames):
2186         (WebCore::Settings::Settings):
2187         (WebCore::Settings::setAcceleratedCompositingEnabled):
2188         * page/Settings.h:
2189         (WebCore::Settings::acceleratedCompositingEnabled):
2190         * rendering/RenderLayer.cpp:
2191         (WebCore::RenderLayer::hasAcceleratedCompositing):
2192         (WebCore::RenderLayer::updateTransform):
2193         (WebCore::RenderLayer::currentTransform):
2194         * rendering/RenderLayer.h:
2195         * rendering/RenderLayerBacking.cpp:
2196         (WebCore::RenderLayerBacking::updateLayerTransform):
2197         * rendering/RenderLayerCompositor.cpp:
2198         (WebCore::RenderLayerCompositor::RenderLayerCompositor):
2199         (WebCore::RenderLayerCompositor::enableCompositingMode):
2200         (WebCore::RenderLayerCompositor::cacheAcceleratedCompositingEnabledFlag):
2201         (WebCore::RenderLayerCompositor::updateCompositingLayers):
2202         (WebCore::RenderLayerCompositor::canAccelerateVideoRendering):
2203         (WebCore::RenderLayerCompositor::rebuildCompositingLayerTree):
2204         (WebCore::RenderLayerCompositor::needsToBeComposited):
2205         (WebCore::RenderLayerCompositor::destroyRootPlatformLayer):
2206         * rendering/RenderLayerCompositor.h:
2207         (WebCore::RenderLayerCompositor::hasAcceleratedCompositing):
2208         * rendering/RenderObject.h:
2209         (WebCore::makeMatrixRenderable):
2210
2211 2009-06-25  Jian Li  <jianli@chromium.org>
2212
2213         Reviewed by Dimitri Glazkov.
2214
2215         Bug 26701: Implement the missing code for "FIXME: Need to return an
2216         exception" in WorkerScriptController::evaluate for v8 bindings.
2217         https://bugs.webkit.org/show_bug.cgi?id=26701
2218
2219         * bindings/v8/WorkerScriptController.cpp:
2220         (WebCore::WorkerScriptController::evaluate):
2221
2222 2009-06-25  Nate Chapin  <japhet@chromium.org>
2223
2224         Reviewed by Dimitri Glazkov.
2225
2226         Upstream V8Index.
2227
2228         https://bugs.webkit.org/show_bug.cgi?id=26495
2229
2230         * bindings/v8/V8Index.cpp: Added.
2231         (WebCore::V8ClassIndex::GetFactory): Moved from src.chromium.org.
2232         (WebCore::V8ClassIndex::GetCache): Moved from src.chromium.org.
2233         * bindings/v8/V8Index.h:
2234         (WebCore::V8ClassIndex::): Moved from src.chromium.org.
2235         (WebCore::V8ClassIndex::ToInt): Moved from src.chromium.org.
2236         (WebCore::V8ClassIndex::FromInt): Moved from src.chromium.org.
2237
2238 2009-06-25  Adam Langley  <agl@google.com>
2239
2240         Reviewed by Darin Fisher.
2241
2242         https://bugs.webkit.org/show_bug.cgi?id=26529
2243
2244         This is hopefully the last step before our renderers can run
2245         cleanly in a chroot.
2246
2247         WebKit needs to be able to ask for the correct font to use in
2248         the case that the current font doesn't include glyphs for
2249         certain code points. Currently we make a fontconfig call in our
2250         WebKit port to handle this.
2251
2252         This patch changes this so that the call is sent our via
2253         ChromiumBridge.
2254
2255         http://codereview.chromium.org/132007
2256
2257         This should not affect any layout tests.
2258
2259         * platform/chromium/ChromiumBridge.h:
2260         * platform/graphics/chromium/FontCacheLinux.cpp:
2261         (WebCore::FontCache::getFontDataForCharacters):
2262
2263 2009-06-25  Albert J. Wong  <ajwong@chromium.org>
2264
2265         Reviewed by David Levin.
2266
2267         https://bugs.webkit.org/show_bug.cgi?id=26566
2268         Upstream these files from the chromium v8 code.  No tests were
2269         affected because this is essentially a code move.
2270
2271         * bindings/v8/NPV8Object.cpp: Added.
2272         (allocV8NPObject):
2273         (freeV8NPObject):
2274         (listFromVariantArgs):
2275         (npIdentifierToV8Identifier):
2276         (npCreateV8ScriptObject):
2277         (NPN_Invoke):
2278         (NPN_InvokeDefault):
2279         (NPN_Evaluate):
2280         (NPN_EvaluateHelper):
2281         (NPN_GetProperty):
2282         (NPN_SetProperty):
2283         (NPN_RemoveProperty):
2284         (NPN_HasProperty):
2285         (NPN_HasMethod):
2286         (NPN_SetException):
2287         (NPN_Enumerate):
2288         (NPN_Construct):
2289         * bindings/v8/NPV8Object.h: Added.
2290         (PrivateIdentifier::):
2291         * bindings/v8/V8NPUtils.cpp: Added.
2292         (convertV8ObjectToNPVariant):
2293         (convertNPVariantToV8Object):
2294         (getStringIdentifier):
2295         * bindings/v8/V8NPUtils.h: Added.
2296
2297 2009-06-25  Shinichiro Hamaji  <hamaji@chromium.org>
2298
2299         Reviewed by Dimitri Glazkov.
2300
2301         https://bugs.webkit.org/show_bug.cgi?id=26436
2302
2303         Windows Chromium bug fix: save context of destination canvas in
2304         TransparencyWin::compositeTextComposite() before the function
2305         modifies the context.
2306
2307         Test: fast/canvas/translate-text.html
2308
2309         * platform/graphics/chromium/TransparencyWin.cpp:
2310         (WebCore::TransparencyWin::compositeTextComposite):
2311
2312 2009-06-25  Patrick Mueller  <Patrick_Mueller@us.ibm.com>
2313
2314         Reviewed by Timothy Hatcher.
2315
2316         Show the filename and first line for "(program)" in the Profiler/Debugger
2317         https://bugs.webkit.org/show_bug.cgi?id=25475
2318
2319         Add support to associate a sourceURL with an eval()'d string
2320         via a @sourceURL comment.  Currently the sourceURL is only available
2321         in the script debugger, not in the console or profiler, but it's
2322         most needed in the script debugger.
2323
2324         * English.lproj/localizedStrings.js: added new "(program): %s" string
2325         * inspector/front-end/Script.js:
2326         (WebInspector.Script): if no sourceURL is available for the Script,
2327         search for a comment of the form //@ sourceURL=(url) to use
2328         as the sourceURL instead.
2329         * manual-tests/inspector/named-evals.html: Added.
2330
2331 2009-06-25  John Gregg  <johnnyg@google.com>
2332
2333         Reviewed by Sam Weinig.
2334
2335         Bug 23721: Changing dropdown's selectedIndex within onchange handler fires another onchange
2336         https://bugs.webkit.org/show_bug.cgi?id=23721
2337
2338         onchange events fire when a SELECT element has
2339         focus and the selectedIndex is updated by script in some way--either
2340         during another onchange, onkeypress, onfocus, or timer--and then
2341         focus is lost. 
2342
2343         Fixed by making a separate method for user-driven selectedIndex 
2344         changes, leaving scripts to use one which doesn't cause onchange to
2345         be queued.
2346         
2347         Test: fast/forms/select-script-onchange.html
2348
2349         * dom/SelectElement.cpp: check if the pending change is user driven
2350         before calling onchange
2351         (WebCore::SelectElement::menuListOnChange):
2352         (WebCore::SelectElement::setSelectedIndex):
2353         * dom/SelectElement.h: store whether the pending change is user driven
2354         (WebCore::SelectElementData::userDrivenChange):
2355         (WebCore::SelectElementData::setUserDrivenChange):
2356         * html/HTMLSelectElement.cpp: split into two methods -- script version
2357         [non-user-driven] corresponds to IDL defined property name
2358         (WebCore::HTMLSelectElement::setSelectedIndex):
2359         (WebCore::HTMLSelectElement::setSelectedIndexByUser):
2360         * html/HTMLSelectElement.h: 
2361         * rendering/RenderMenuList.cpp: use ByUser method when coming through
2362         the renderer
2363         (WebCore::RenderMenuList::valueChanged):
2364
2365 2009-06-25  Jeremy Orlow  <jorlow@chromium.org>
2366
2367         Reviewed by Darin Fisher.
2368
2369         https://bugs.webkit.org/show_bug.cgi?id=26698
2370
2371         Combined LocalStorageArea and SessionStorageArea into StorageArea since
2372         (after my other refactorings) there are no longer substantial
2373         differences between the two.
2374
2375         * GNUmakefile.am:
2376         * WebCore.vcproj/WebCore.vcproj:
2377         * WebCore.xcodeproj/project.pbxproj:
2378         * WebCoreSources.bkl:
2379         * storage/LocalStorage.cpp:
2380         (WebCore::LocalStorage::storageArea):
2381         * storage/LocalStorage.h:
2382         * storage/LocalStorageArea.cpp: Removed.
2383         * storage/LocalStorageArea.h: Removed.
2384         * storage/SessionStorage.cpp:
2385         (WebCore::SessionStorage::copy):
2386         (WebCore::SessionStorage::storageArea):
2387         * storage/SessionStorage.h:
2388         * storage/SessionStorageArea.cpp: Removed.
2389         * storage/SessionStorageArea.h: Removed.
2390         * storage/StorageArea.cpp:
2391         (WebCore::StorageArea::createLocalStorage):
2392         (WebCore::StorageArea::StorageArea):
2393         (WebCore::StorageArea::createSessionStorage):
2394         (WebCore::StorageArea::copy):
2395         (WebCore::StorageArea::setItem):
2396         (WebCore::StorageArea::removeItem):
2397         (WebCore::StorageArea::clear):
2398         (WebCore::StorageArea::scheduleFinalSync):
2399         (WebCore::StorageArea::blockUntilImportComplete):
2400         (WebCore::StorageArea::dispatchStorageEvent):
2401         * storage/StorageArea.h:
2402         * storage/StorageAreaSync.cpp:
2403         (WebCore::StorageAreaSync::StorageAreaSync):
2404         (WebCore::StorageAreaSync::scheduleFinalSync):
2405         (WebCore::StorageAreaSync::syncTimerFired):
2406         (WebCore::StorageAreaSync::performImport):
2407         * storage/StorageAreaSync.h:
2408         * storage/StorageSyncManager.h:
2409
2410 2009-06-25  Dan Bernstein  <mitz@apple.com>
2411
2412         Reviewed by Darin Adler.
2413
2414         - fix https://bugs.webkit.org/show_bug.cgi?id=26671
2415           <rdar://problem/7001880> Safari 4.0 crashes in
2416           WebCore::DOMTimer::fired()
2417
2418         Test: fast/dom/style-sheet-candidate-remove-unrendered-document.html
2419
2420         When a "style sheet candidate" element is removed from a document,
2421         call Document::removeStyleSheetCandidateNode() regardless of whether
2422         the document is rendered. Otherwise, the document's style sheet
2423         candidate set can end up containing stale references.
2424
2425         * dom/ProcessingInstruction.cpp:
2426         (WebCore::ProcessingInstruction::removedFromDocument):
2427         * html/HTMLLinkElement.cpp:
2428         (WebCore::HTMLLinkElement::removedFromDocument):
2429         * html/HTMLStyleElement.cpp:
2430         (WebCore::HTMLStyleElement::removedFromDocument):
2431
2432 2009-06-25  Dimitri Glazkov  <dglazkov@chromium.org>
2433
2434         Reviewed by Darin Fisher.
2435
2436         Update CodeGeneratorV8.pm to sync up with the changes downstream.
2437
2438         * bindings/scripts/CodeGeneratorV8.pm: Added HTMLFrameSetElement check,
2439           FileList as a ref-counted type, and DataGridColumn as typeCanFailConversion.
2440
2441 2009-06-25  Dimitri Glazkov  <dglazkov@chromium.org>
2442
2443         Unreviewed, build fix.
2444
2445         Add FileList.h include to fix Chromium build.
2446
2447         * platform/chromium/ClipboardChromium.cpp: Added FileList.h include.
2448
2449 2009-06-25  Joseph Pecoraro  <joepeck02@gmail.com>
2450
2451         Reviewed by Jan Alonzo.
2452
2453         Bug 26489: Web Inspector: Typo in DatabaseQuery Error Message
2454         https://bugs.webkit.org/show_bug.cgi?id=26489
2455
2456         Fixed a Typo in a Web Inspector error message.
2457
2458         * English.lproj/localizedStrings.js:
2459         * inspector/front-end/DatabaseQueryView.js:
2460         (WebInspector.DatabaseQueryView.prototype._queryError):
2461
2462 2009-06-25  Simon Hausmann  <simon.hausmann@nokia.com>
2463
2464         Fix the Qt build, add missing StorageAreaSync files to the build.
2465
2466         * WebCore.pro:
2467
2468 2009-06-25  Simon Hausmann  <simon.hausmann@nokia.com>
2469
2470         Reviewed by and done with Tor Arne Vestbø.
2471
2472         Fix shortcut keyboard handling with plugins on the Qt/Mac build.
2473
2474         When we receive shortcut events like Ctrl+V then the text in the QKeyEvent is
2475         empty. If we're asked to disambiguate the event into a Char keyboard event,
2476         we try to detect this situation and still set the text, to ensure that the
2477         general event handling sends a key press event after this disambiguation.
2478
2479         * platform/qt/PlatformKeyboardEventQt.cpp:
2480         (WebCore::PlatformKeyboardEvent::disambiguateKeyDownEvent):
2481
2482 2009-06-25  Eric Seidel  <eric@webkit.org>
2483
2484         Build fix only, no review.
2485
2486         Add FileList.h and NotImplemented.h includes in an attempt to fix bots.
2487
2488         * platform/gtk/ClipboardGtk.cpp:
2489         * platform/qt/ClipboardQt.cpp:
2490         * platform/win/ClipboardWin.cpp:
2491         * platform/wx/ClipboardWx.cpp:
2492
2493 2009-05-21  Eric Seidel  <eric@webkit.org>
2494
2495         Reviewed by Maciej Stachowiak.
2496
2497         Expose files in the clipboard in ondrop events
2498         https://bugs.webkit.org/show_bug.cgi?id=25916
2499
2500         Make it possible for applications like gmail to implement
2501         drag and drop of attachments onto email messages.
2502
2503         This patch exposes an event.dataTransfer.files accessor
2504         on the drop event.  No information is exposed during dragover.
2505         This follows the HTML 5 drag and drop security model:
2506         http://www.w3.org/TR/html5/editing.html#security-risks-in-the-drag-and-drop-model
2507         The test http/tests/security/clipboard/clipboard-file-access.html
2508         verifies this behavior.
2509
2510         Internet Explorer shows historical documentation of supporting
2511         getData('File') as a way of exposing files on the pasteboard.  The current version of their docs:
2512         http://msdn.microsoft.com/en-us/library/ms537658(VS.85).aspx
2513         has removed this reference (as far as I can tell IE never implemented it)
2514         I have a printed copy of that URL from 2008 on my desk describing getData('File') in IE.
2515         IE does not follow the HTML5 clipboard security model and always allows access to the full clipboard, even on dragover.
2516
2517         I choose not to use IE's getData('File') and instead added .files
2518         so that the accessor could have a type, matching WebKit's existing
2519         .files accessor on HTMLInputElement.
2520
2521         Mozilla has equivalent file access:
2522         event.dataTransfer.mozGetDataAt("application/x-moz-file", 0);
2523         which also does not return a typed value.
2524         https://developer.mozilla.org/En/DragDrop/Recommended_Drag_Types#Dragging_Files
2525
2526         This is only implemented for Mac WebKit.  All other platforms (including Apple's Win WebKit)
2527         have incomplete Clipboard implementations and will require experts from those platforms
2528         to add this functionality.  Right now they all have Clipboard*::files() methods which call notImplemented();
2529
2530         Test: http/tests/security/clipboard/clipboard-file-access.html
2531
2532         * dom/Clipboard.h:
2533         * dom/Clipboard.idl:
2534         * platform/chromium/ClipboardChromium.cpp:
2535         (WebCore::ClipboardChromium::files):
2536         * platform/chromium/ClipboardChromium.h:
2537         * platform/gtk/ClipboardGtk.cpp:
2538         (WebCore::ClipboardGtk::files):
2539         * platform/gtk/ClipboardGtk.h:
2540         * platform/mac/ClipboardMac.h:
2541         * platform/mac/ClipboardMac.mm:
2542         (WebCore::absoluteURLsFromPasteboardFilenames):
2543         (WebCore::absoluteURLsFromPasteboard):
2544         (WebCore::ClipboardMac::files):
2545         * platform/qt/ClipboardQt.cpp:
2546         (WebCore::ClipboardQt::files):
2547         * platform/qt/ClipboardQt.h:
2548         * platform/win/ClipboardWin.cpp:
2549         (WebCore::ClipboardWin::files):
2550         * platform/win/ClipboardWin.h:
2551         * platform/wx/ClipboardWx.cpp:
2552         (WebCore::ClipboardWx::files):
2553         * platform/wx/ClipboardWx.h:
2554
2555 2009-06-25  Eric Seidel  <eric@webkit.org>
2556
2557         No review, only completing revert of r45144.
2558
2559         Add back files deleted by r45144.
2560
2561         * storage/LocalStorageArea.cpp: Added.
2562         (WebCore::LocalStorageArea::create):
2563         (WebCore::LocalStorageArea::LocalStorageArea):
2564         (WebCore::LocalStorageArea::scheduleFinalSync):
2565         (WebCore::LocalStorageArea::itemChanged):
2566         (WebCore::LocalStorageArea::itemRemoved):
2567         (WebCore::LocalStorageArea::areaCleared):
2568         (WebCore::LocalStorageArea::blockUntilImportComplete):
2569         (WebCore::LocalStorageArea::dispatchStorageEvent):
2570         * storage/LocalStorageArea.h: Added.
2571         * storage/SessionStorageArea.cpp: Added.
2572         (WebCore::SessionStorageArea::copy):
2573         (WebCore::SessionStorageArea::SessionStorageArea):
2574         (WebCore::SessionStorageArea::itemChanged):
2575         (WebCore::SessionStorageArea::itemRemoved):
2576         (WebCore::SessionStorageArea::areaCleared):
2577         (WebCore::SessionStorageArea::blockUntilImportComplete):
2578         (WebCore::SessionStorageArea::dispatchStorageEvent):
2579         * storage/SessionStorageArea.h: Added.
2580         (WebCore::SessionStorageArea::create):
2581
2582 2009-06-25  Eric Seidel  <eric@webkit.org>
2583
2584         No review, reverting r45144 only.
2585
2586         Roll out r45144 after 18 test failures appeared on the bots.
2587         https://bugs.webkit.org/show_bug.cgi?id=26698
2588
2589         * GNUmakefile.am:
2590         * WebCore.vcproj/WebCore.vcproj:
2591         * WebCore.xcodeproj/project.pbxproj:
2592         * WebCoreSources.bkl:
2593         * storage/LocalStorage.cpp:
2594         (WebCore::LocalStorage::storageArea):
2595         * storage/LocalStorage.h:
2596         * storage/SessionStorage.cpp:
2597         (WebCore::SessionStorage::copy):
2598         (WebCore::SessionStorage::storageArea):
2599         * storage/SessionStorage.h:
2600         * storage/StorageArea.cpp:
2601         (WebCore::StorageArea::StorageArea):
2602         (WebCore::StorageArea::~StorageArea):
2603         (WebCore::StorageArea::setItem):
2604         (WebCore::StorageArea::removeItem):
2605         (WebCore::StorageArea::clear):
2606         * storage/StorageArea.h:
2607         * storage/StorageAreaSync.cpp:
2608         (WebCore::StorageAreaSync::StorageAreaSync):
2609         (WebCore::StorageAreaSync::scheduleFinalSync):
2610         (WebCore::StorageAreaSync::syncTimerFired):
2611         (WebCore::StorageAreaSync::performImport):
2612         * storage/StorageAreaSync.h:
2613         * storage/StorageSyncManager.h:
2614
2615 2009-06-24  Jeremy Orlow  <jorlow@chromium.org>
2616
2617         Reviewed by Darin Fisher.
2618
2619         https://bugs.webkit.org/show_bug.cgi?id=26698
2620
2621         Combined LocalStorageArea and SessionStorageArea into StorageArea since
2622         (after my other refactorings) there are no longer substantial
2623         differences between the two.
2624
2625         * GNUmakefile.am:
2626         * WebCore.vcproj/WebCore.vcproj:
2627         * WebCore.xcodeproj/project.pbxproj:
2628         * WebCoreSources.bkl:
2629         * storage/LocalStorage.cpp:
2630         (WebCore::LocalStorage::storageArea):
2631         * storage/LocalStorage.h:
2632         * storage/LocalStorageArea.cpp: Removed.
2633         * storage/LocalStorageArea.h: Removed.
2634         * storage/SessionStorage.cpp:
2635         (WebCore::SessionStorage::copy):
2636         (WebCore::SessionStorage::storageArea):
2637         * storage/SessionStorage.h:
2638         * storage/SessionStorageArea.cpp: Removed.
2639         * storage/SessionStorageArea.h: Removed.
2640         * storage/StorageArea.cpp:
2641         (WebCore::StorageArea::createLocalStorage):
2642         (WebCore::StorageArea::StorageArea):
2643         (WebCore::StorageArea::createSessionStorage):
2644         (WebCore::StorageArea::copy):
2645         (WebCore::StorageArea::setItem):
2646         (WebCore::StorageArea::removeItem):
2647         (WebCore::StorageArea::clear):
2648         (WebCore::StorageArea::scheduleFinalSync):
2649         (WebCore::StorageArea::blockUntilImportComplete):
2650         (WebCore::StorageArea::dispatchStorageEvent):
2651         * storage/StorageArea.h:
2652         * storage/StorageAreaSync.cpp:
2653         (WebCore::StorageAreaSync::StorageAreaSync):
2654         (WebCore::StorageAreaSync::scheduleFinalSync):
2655         (WebCore::StorageAreaSync::syncTimerFired):
2656         (WebCore::StorageAreaSync::performImport):
2657         * storage/StorageAreaSync.h:
2658         * storage/StorageSyncManager.h:
2659
2660 2009-06-24  Dan Bernstein  <mitz@apple.com>
2661
2662         Reviewed by Simon Fraser.
2663
2664         - fix <rdar://problem/7001817> REGRESSION (r41902): Base position track
2665           at UCSC Genome Browser doesn't work because image map prevents img
2666           from hit-testing
2667
2668         Test: fast/replaced/image-map-2.html
2669
2670         * rendering/RenderImage.cpp:
2671         (WebCore::RenderImage::nodeAtPoint): Do not reset 'inside' to false if
2672         the image map failed the hit test.
2673
2674 2009-06-22  Adam Barth  <abarth@webkit.org>
2675
2676         Reviewed by Dimitri Glazkov.
2677
2678         https://bugs.webkit.org/show_bug.cgi?id=26366
2679
2680         Refactor V8DOMMap to support isolated worlds.
2681
2682         * bindings/v8/ScriptController.cpp:
2683         (WebCore::ScriptController::evaluateInNewWorld):
2684         * bindings/v8/ScriptController.h:
2685         * bindings/v8/V8DOMMap.cpp:
2686         (WebCore::DOMDataStore::InternalDOMWrapperMap::InternalDOMWrapperMap):
2687         (WebCore::DOMDataStore::allStores):
2688         (WebCore::DOMDataStore::allStoresMutex):
2689         (WebCore::DOMDataStore::domData):
2690         (WebCore::ScopedDOMDataStore::ScopedDOMDataStore):
2691         (WebCore::ScopedDOMDataStore::~ScopedDOMDataStore):
2692         (WebCore::StaticDOMDataStore::StaticDOMDataStore):
2693         (WebCore::):
2694         (WebCore::MainThreadDOMData::MainThreadDOMData):
2695         (WebCore::MainThreadDOMData::getStore):
2696         (WebCore::ChildThreadDOMData::ChildThreadDOMData):
2697         (WebCore::ChildThreadDOMData::getStore):
2698         (WebCore::DOMDataStore::DOMDataStore):
2699         (WebCore::DOMDataStore::~DOMDataStore):
2700         (WebCore::DOMDataStoreHandle::DOMDataStoreHandle):
2701         (WebCore::DOMDataStoreHandle::~DOMDataStoreHandle):
2702         (WebCore::::forget):
2703         (WebCore::getDOMNodeMap):
2704         (WebCore::getDOMObjectMap):
2705         (WebCore::getActiveDOMObjectMap):
2706         (WebCore::getDOMSVGElementInstanceMap):
2707         (WebCore::getDOMSVGObjectWithContextMap):
2708         (WebCore::DOMData::getCurrent):
2709         (WebCore::DOMData::handleWeakObject):
2710         (WebCore::DOMData::ensureDeref):
2711         (WebCore::weakDOMObjectCallback):
2712         (WebCore::weakActiveDOMObjectCallback):
2713         (WebCore::weakNodeCallback):
2714         (WebCore::weakSVGElementInstanceCallback):
2715         (WebCore::weakSVGObjectWithContextCallback):
2716         (WebCore::DOMData::derefObject):
2717         (WebCore::DOMData::derefDelayedObjects):
2718         (WebCore::DOMData::derefDelayedObjectsInCurrentThread):
2719         (WebCore::DOMData::removeObjectsFromWrapperMap):
2720         (WebCore::removeAllDOMObjectsInCurrentThreadHelper):
2721         (WebCore::visitDOMNodesInCurrentThread):
2722         (WebCore::visitDOMObjectsInCurrentThread):
2723         (WebCore::visitActiveDOMObjectsInCurrentThread):
2724         (WebCore::visitDOMSVGElementInstancesInCurrentThread):
2725         (WebCore::visitSVGObjectsInCurrentThread):
2726         * bindings/v8/V8DOMMap.h:
2727         (WebCore::DOMDataStoreHandle::getStore):
2728         * bindings/v8/V8IsolatedWorld.cpp: Added.
2729         (WebCore::getIsolatedWorldKey):
2730         (WebCore::contextWeakReferenceCallback):
2731         (WebCore::V8IsolatedWorld::evaluate):
2732         (WebCore::V8IsolatedWorld::V8IsolatedWorld):
2733         (WebCore::V8IsolatedWorld::~V8IsolatedWorld):
2734         (WebCore::V8IsolatedWorld::getEntered):
2735         * bindings/v8/V8IsolatedWorld.h: Added.
2736         (WebCore::V8IsolatedWorld::getDOMDataStore):
2737
2738 2009-06-24  Mikhail Naganov  <mnaganov@chromium.org>
2739
2740         Reviewed by Timothy Hatcher.
2741
2742         Bug 26604: Search doesn't work in Web Inspector Profiler
2743         https://bugs.webkit.org/show_bug.cgi?id=26604
2744
2745         Seems like search was damaged in revision 42808.
2746
2747         * inspector/front-end/ProfileView.js:
2748         (WebInspector.ProfileView.prototype.refresh):
2749         Here and in other functions: nodes we're searching in are profile data grid
2750         nodes, so there is no more need for '_dataGridNode' references.
2751         (WebInspector.ProfileView.prototype.searchCanceled):
2752         (WebInspector.ProfileView.prototype.performSearch.matchesQuery):
2753         Fixed accidental semicolon that caused 'matchesQuery' always return true.
2754         (WebInspector.ProfileView.prototype.performSearch):
2755         To perform search correctly in the case of bottom up tree, we need to populate
2756         the tree, because there's no 1-to-1 correspondence between profile nodes and
2757         data grid nodes in this case.
2758         (WebInspector.ProfileView.prototype._jumpToSearchResult):
2759
2760 2009-06-24  Simon Fraser  <simon.fraser@apple.com>
2761
2762         Reviewed by Darin Adler.
2763         
2764         <rdar://problem/6450239&6574516>
2765     
2766         Fix flashing issues caused by compositing layers rendering content before
2767         a deferred layout has happened. Because the -viewWillDraw machinery doesn't
2768         work for composited layers, we need to use scheduleViewUpdate() to queue
2769         up a layout via the run loop observer in WebKit, whenever we know we
2770         are going to be painting soon.
2771
2772         * rendering/RenderLayerBacking.cpp:
2773         (WebCore::RenderLayerBacking::setContentsNeedDisplay):
2774         (WebCore::RenderLayerBacking::setContentsNeedDisplayInRect):
2775
2776 2009-06-24  David Levin  <levin@chromium.org>
2777
2778         Fix all builds.
2779
2780         * ForwardingHeaders/wtf/FastAllocBase.h: Added.
2781
2782 2009-06-24  Jeremy Orlow  <jorlow@chromium.org>
2783
2784         Reviewed by Darin Fisher.
2785
2786         https://bugs.webkit.org/show_bug.cgi?id=26658
2787
2788         Split the syncing portions of LocalStorageArea into StorageAreaSync.
2789         This name will make more sense in the next patch (in this set) when
2790         LocalStorageArea and SessionStorageArea are merged to become simply
2791         StorageArea.  (Thus the synching portion of StorageArea is in
2792         StorageAreaSync.)
2793
2794         This looks like a big patch, but really all it's doing is splitting
2795         code and patching split-related things up.
2796
2797         * GNUmakefile.am:
2798         * WebCore.vcproj/WebCore.vcproj:
2799         * WebCore.xcodeproj/project.pbxproj:
2800         * WebCoreSources.bkl:
2801         * storage/LocalStorageArea.cpp:
2802         (WebCore::LocalStorageArea::create):
2803         (WebCore::LocalStorageArea::LocalStorageArea):
2804         (WebCore::LocalStorageArea::scheduleFinalSync):
2805         (WebCore::LocalStorageArea::itemChanged):
2806         (WebCore::LocalStorageArea::itemRemoved):
2807         (WebCore::LocalStorageArea::areaCleared):
2808         (WebCore::LocalStorageArea::blockUntilImportComplete):
2809         * storage/LocalStorageArea.h:
2810         * storage/LocalStorageTask.cpp:
2811         (WebCore::LocalStorageTask::LocalStorageTask):
2812         * storage/LocalStorageTask.h:
2813         (WebCore::LocalStorageTask::createImport):
2814         (WebCore::LocalStorageTask::createSync):
2815         * storage/LocalStorageThread.cpp:
2816         (WebCore::LocalStorageThread::scheduleImport):
2817         (WebCore::LocalStorageThread::scheduleSync):
2818         * storage/LocalStorageThread.h:
2819         * storage/SessionStorageArea.cpp:
2820         (WebCore::SessionStorageArea::blockUntilImportComplete):
2821         * storage/SessionStorageArea.h:
2822         * storage/StorageArea.h:
2823         * storage/StorageAreaSync.cpp: Copied from WebCore/storage/LocalStorageArea.cpp.
2824         * storage/StorageAreaSync.h: Copied from WebCore/storage/LocalStorageArea.h.
2825         * storage/StorageSyncManager.cpp:
2826         (WebCore::StorageSyncManager::scheduleImport):
2827         (WebCore::StorageSyncManager::scheduleSync):
2828         * storage/StorageSyncManager.h:
2829
2830 2009-06-24  Adam Treat  <adam.treat@torchmobile.com>
2831
2832         Fix Qt build.
2833
2834         * WebCore.pro:
2835
2836 2009-06-24  David Levin  <levin@chromium.org>
2837
2838         Reviewed by David Hyatt.
2839
2840         Bug 26696: Member functions in DataGridColumnList should return pointers instead of PassRefPtr.
2841         https://bugs.webkit.org/show_bug.cgi?id=26696
2842
2843         * html/DataGridColumnList.cpp:
2844         (WebCore::DataGridColumnList::itemWithName):
2845         (WebCore::DataGridColumnList::add):
2846         * html/DataGridColumnList.h:
2847         (WebCore::DataGridColumnList::item):
2848         (WebCore::DataGridColumnList::primaryColumn):
2849         (WebCore::DataGridColumnList::sortColumn):
2850
2851 2009-06-24  Sam Weinig  <sam@webkit.org>
2852
2853         Reviewed by Dave "Messy" Hyatt.
2854
2855         Little bit of style cleanup.
2856
2857         * html/DataGridColumn.cpp:
2858         * html/DataGridColumn.h:
2859         * html/DataGridColumn.idl:
2860         * html/DataGridColumnList.cpp:
2861         * html/DataGridColumnList.h:
2862         * html/DataGridColumnList.idl:
2863         * html/HTMLDataGridCellElement.cpp:
2864         * html/HTMLDataGridCellElement.h:
2865         * html/HTMLDataGridCellElement.idl:
2866         * html/HTMLDataGridColElement.cpp:
2867         * html/HTMLDataGridColElement.h:
2868         * html/HTMLDataGridColElement.idl:
2869         * html/HTMLDataGridElement.h:
2870         * html/HTMLDataGridElement.idl:
2871         * html/HTMLDataGridRowElement.cpp:
2872         * html/HTMLDataGridRowElement.h:
2873         * html/HTMLDataGridRowElement.idl:
2874
2875 2009-06-24  Chris Fleizach  <cfleizach@apple.com>
2876
2877         Reviewed by Oliver Hunt.
2878
2879         Bug 26668: AX: need a way to retrieve the language for an element
2880         
2881         Provides a way to retrieve the language associated with a specific accessibility element.
2882
2883         Test: accessibility/language-attribute.html
2884
2885         * accessibility/AccessibilityObject.cpp:
2886         (WebCore::AccessibilityObject::language):
2887         * accessibility/AccessibilityObject.h:
2888         * accessibility/AccessibilityRenderObject.cpp:
2889         (WebCore::AccessibilityRenderObject::language):
2890         * accessibility/AccessibilityRenderObject.h:
2891         * accessibility/mac/AccessibilityObjectWrapper.mm:
2892         (-[AccessibilityObjectWrapper accessibilityAttributeValue:]):
2893
2894 2009-06-24  Brady Eidson  <beidson@apple.com>
2895
2896         Reviewed by Dan Bernstein.
2897         
2898         <rdar://problem/6893811> Instead of downloading files linked from Google Earth, file contents displayed in browser window as text.
2899
2900         * platform/network/mac/WebCoreURLResponse.mm:
2901         (createBinaryExtensionsSet): Add '.kmz' to the list of known-to-be-binary extensions.
2902
2903 2009-06-24  Nicolas Weber  <thakis@chromium.org>
2904
2905         Reviewed by Eric Seidel.
2906
2907         https://bugs.webkit.org/show_bug.cgi?id=26685
2908         Accomodate for backwards-incompatible skia api changes.
2909
2910         * platform/graphics/skia/GraphicsContextSkia.cpp:
2911         (WebCore::GraphicsContext::clearRect):
2912         (WebCore::GraphicsContext::setCompositeOperation):
2913         * platform/graphics/skia/ImageBufferSkia.cpp:
2914         (WebCore::ImageBuffer::ImageBuffer):
2915         * platform/graphics/skia/ImageSkia.cpp:
2916         (WebCore::paintSkBitmap):
2917         (WebCore::Image::drawPattern):
2918         * platform/graphics/skia/PlatformContextSkia.cpp:
2919         (PlatformContextSkia::State::State):
2920         (PlatformContextSkia::setupPaintCommon):
2921         (PlatformContextSkia::setXfermodeMode):
2922         (PlatformContextSkia::applyClipFromImage):
2923         * platform/graphics/skia/PlatformContextSkia.h:
2924         * platform/graphics/skia/SkiaUtils.cpp:
2925         (WebCore::):
2926         (WebCore::WebCoreCompositeToSkiaComposite):
2927         * platform/graphics/skia/SkiaUtils.h:
2928
2929 2009-06-24  Jan Michael Alonzo  <jmalonzo@webkit.org>
2930
2931         Gtk build fix. Add files that were added in r45093 and r45096
2932
2933         * GNUmakefile.am:
2934
2935 2009-06-24  Brady Eidson  <beidson@apple.com>
2936
2937         Fix 64-bit SnowLeopard build.
2938
2939         * html/DataGridColumnList.cpp:
2940         (WebCore::DataGridColumnList::remove):
2941         (WebCore::DataGridColumnList::move):
2942
2943 2009-06-24  Rob Buis  <rwlbuis@gmail.com>
2944
2945         Reviewed by Eric Seidel.
2946
2947         https://bugs.webkit.org/show_bug.cgi?id=26392
2948         Bug 26392: In html, modification of xlink:href of an newly inserted svg image does not work.
2949         https://bugs.webkit.org/show_bug.cgi?id=26328
2950         Bug 26328: changing href attribute of svg images does not work when changing display attribute as well
2951
2952         React to href updates even when there is no renderer, i.e. display=none.
2953
2954         Tests: svg/custom/js-update-image-and-display.svg
2955                svg/custom/js-update-image-and-display2.svg
2956                svg/custom/js-update-image-and-display3.svg
2957
2958         * svg/SVGImageElement.cpp:
2959         (WebCore::SVGImageElement::svgAttributeChanged):
2960
2961 2009-06-24  David Hyatt  <hyatt@apple.com>
2962
2963         Reviewed by Sam Weinig.
2964
2965         https://bugs.webkit.org/show_bug.cgi?id=26687
2966
2967         Add basic back-end column support to datagrid.
2968
2969         Added fast/dom/HTMLDataGridElement/ column tests.
2970
2971         * DerivedSources.cpp:
2972         * DerivedSources.make:
2973         * WebCore.pro:
2974         * WebCore.vcproj/WebCore.vcproj:
2975         * WebCore.xcodeproj/project.pbxproj:
2976         * WebCoreSources.bkl:
2977         * html/DataGridColumn.cpp: Added.
2978         (WebCore::DataGridColumn::setPrimary):
2979         * html/DataGridColumn.h: Added.
2980         (WebCore::DataGridColumn::create):
2981         (WebCore::DataGridColumn::id):
2982         (WebCore::DataGridColumn::setId):
2983         (WebCore::DataGridColumn::label):
2984         (WebCore::DataGridColumn::setLabel):
2985         (WebCore::DataGridColumn::type):
2986         (WebCore::DataGridColumn::setType):
2987         (WebCore::DataGridColumn::sortable):
2988         (WebCore::DataGridColumn::setSortable):
2989         (WebCore::DataGridColumn::sortDirection):
2990         (WebCore::DataGridColumn::setSortDirection):
2991         (WebCore::DataGridColumn::primary):
2992         (WebCore::DataGridColumn::detachFromColumnList):
2993         (WebCore::DataGridColumn::DataGridColumn):
2994         * html/DataGridColumn.idl: Added.
2995         * html/DataGridColumnList.cpp: Added.
2996         (WebCore::DataGridColumnList::~DataGridColumnList):
2997         (WebCore::DataGridColumnList::itemWithName):
2998         (WebCore::DataGridColumnList::add):
2999         (WebCore::DataGridColumnList::remove):
3000         (WebCore::DataGridColumnList::move):
3001         (WebCore::DataGridColumnList::clear):
3002         (WebCore::DataGridColumnList::primaryColumnChanged):
3003         * html/DataGridColumnList.h: Added.
3004         (WebCore::DataGridColumnList::create):
3005         (WebCore::DataGridColumnList::length):
3006         (WebCore::DataGridColumnList::item):
3007         (WebCore::DataGridColumnList::primaryColumn):
3008         (WebCore::DataGridColumnList::sortColumn):
3009         * html/DataGridColumnList.idl: Added.
3010         * html/HTMLDataGridColElement.cpp:
3011         (WebCore::HTMLDataGridColElement::sortable):
3012         (WebCore::HTMLDataGridColElement::setSortable):
3013         (WebCore::HTMLDataGridColElement::sortDirection):
3014         (WebCore::HTMLDataGridColElement::setSortDirection):
3015         * html/HTMLDataGridColElement.h:
3016         * html/HTMLDataGridColElement.idl:
3017         * html/HTMLDataGridElement.cpp:
3018         (WebCore::HTMLDataGridElement::HTMLDataGridElement):
3019         * html/HTMLDataGridElement.h:
3020         (WebCore::HTMLDataGridElement::columns):
3021         * html/HTMLDataGridElement.idl:
3022         * rendering/RenderDataGrid.cpp:
3023         (WebCore::RenderDataGrid::paintObject):
3024         (WebCore::RenderDataGrid::paintColumnHeaders):
3025         (WebCore::RenderDataGrid::rebuildColumns):
3026         * rendering/RenderDataGrid.h:
3027         (WebCore::RenderDataGrid::gridElement):
3028
3029 2009-06-24  Jessie Berlin  <jberlin@apple.com>
3030
3031         Reviewed by Adam Roben.
3032
3033         Partially fixes: https://bugs.webkit.org/show_bug.cgi?id=24735
3034         (<rdar://problem/5015942>)
3035         Where on windows it was not possible to set an element as the drag
3036         image using setDragImage on the dataTransfer object.
3037         
3038         Does not "fix" the case of dragging a link where the default link image
3039         is still used, even when the -webkit-user-drag is set to "element". This
3040         is the same behavior as is found on OS X.
3041         
3042         Added a manual test because it is not possible to check that what is
3043         contained in the image snapshot is indeed the requested element.
3044
3045         * dom/Clipboard.h:
3046         (WebCore::Clipboard::dragImageElement):
3047         Made getting the raw pointer from the RefPtr a const operation.
3048         * manual-tests/drag-with-div-or-image-as-data-image.html: Added.
3049         * platform/win/ClipboardWin.cpp:
3050         (WebCore::ClipboardWin::createDragImage):
3051         Get an image of the rendered element and its subtree.
3052
3053 2009-06-24  Darin Fisher  <darin@chromium.org>
3054
3055         Reviewed by David Levin.
3056
3057         https://bugs.webkit.org/show_bug.cgi?id=26683
3058         Fix Chromium build bustage: Add custom binding for HTMLDataGridElement.dataSource
3059
3060         This change just adds a stub implementation for now to help fix the build.
3061
3062         * bindings/v8/custom/V8CustomBinding.h:
3063         * bindings/v8/custom/V8HTMLDataGridElementCustom.cpp: Added.
3064
3065 2009-06-24  David Kilzer  <ddkilzer@apple.com>
3066
3067         Build fixes for ENABLE(PLUGIN_PROXY_FOR_VIDEO)
3068
3069         Reviewed by Adam Roben.
3070
3071         * html/HTMLMediaElement.cpp:
3072         (WebCore::HTMLMediaElement::deliverNotification): Removed
3073         ExceptionCode parameter from togglePlayState().
3074         (WebCore::HTMLMediaElement::initialURL): Don't convert a KURL
3075         object to a String when assigning to a KURL variable.
3076
3077 2009-06-24  Nikolas Zimmermann  <nikolas.zimmermann@torchmobile.com>
3078
3079         Reviewed by Adam Treat.
3080
3081         Save memory by not storing attribute values in member variables, if not absolutely needed.
3082         Also fixes bugs where we're substituting variables too early (noticeable with the upcoming <select> element).
3083
3084         * wml/WMLDoElement.cpp:
3085         (WebCore::WMLDoElement::parseMappedAttribute):
3086         (WebCore::WMLDoElement::label):
3087         * wml/WMLDoElement.h:
3088         * wml/WMLFieldSetElement.cpp:
3089         (WebCore::WMLFieldSetElement::insertedIntoDocument):
3090         * wml/WMLFieldSetElement.h:
3091         * wml/WMLOptGroupElement.cpp:
3092         (WebCore::WMLOptGroupElement::title):
3093         (WebCore::WMLOptGroupElement::parseMappedAttribute):
3094         (WebCore::WMLOptGroupElement::groupLabelText):
3095         * wml/WMLOptGroupElement.h:
3096         * wml/WMLPostfieldElement.cpp:
3097         (WebCore::WMLPostfieldElement::name):
3098         (WebCore::WMLPostfieldElement::value):
3099         (WebCore::WMLPostfieldElement::encodeData):
3100         * wml/WMLPostfieldElement.h:
3101         * wml/WMLSetvarElement.cpp:
3102         (WebCore::WMLSetvarElement::parseMappedAttribute):
3103         (WebCore::WMLSetvarElement::name):
3104         (WebCore::WMLSetvarElement::value):
3105         * wml/WMLSetvarElement.h:
3106         * wml/WMLTimerElement.cpp:
3107         (WebCore::WMLTimerElement::parseMappedAttribute):
3108         (WebCore::WMLTimerElement::insertedIntoDocument):
3109         (WebCore::WMLTimerElement::timerFired):
3110         (WebCore::WMLTimerElement::start):
3111         (WebCore::WMLTimerElement::value):
3112         * wml/WMLTimerElement.h:
3113
3114 2009-06-24  Nikolas Zimmermann  <nikolas.zimmermann@torchmobile.com>
3115
3116         Reviewed by Adam Roben.
3117
3118         Forgot to initialize m_task member variable. Results in crashes sometimes.
3119
3120         * wml/WMLAnchorElement.cpp:
3121         (WebCore::WMLAnchorElement::WMLAnchorElement):
3122
3123 2009-06-24  Nikolas Zimmermann  <nikolas.zimmermann@torchmobile.com>
3124
3125         Not reviewed. Forgot to include within last patch.
3126
3127         * manual-tests/wml/card-title-attr.wml: Added.
3128
3129 2009-06-24  Wajahat Siddiqui <wajahatmeister@gmail.com>
3130  
3131         Reviewed by Nikolas Zimmermann.
3132
3133         Fixes: https://bugs.webkit.org/show_bug.cgi?id=26474
3134         Adding WML <card> title attribute handling.
3135
3136         * wml/WMLElement.h: marking parseValueSubstitutingVariableReferences and parseValueForbiddingVariableReferences as const
3137         * wml/WMLElement.cpp:
3138         * wml/WMLCardElement.h: 
3139         (WebCore::WMLCardElement::title):
3140         * wml/WMLCardElement.cpp:
3141         * wml/manual-test/card-title-attr.wml: Manual test  
3142  
3143 2009-06-24  Simon Hausmann  <simon.hausmann@nokia.com>
3144
3145         Reviewed by Tor Arne Vestbø.
3146
3147         Fix the build without ENABLE_VIDEO.
3148
3149         * html/CanvasRenderingContext2D.cpp: Add #if ENABLE guards.
3150         * html/CanvasRenderingContext2D.h: Ditto.
3151
3152 2009-06-24  Siddhartha Chattopadhyay  <sidchat@google.com>
3153
3154         Reviewed by Eric Seidel.
3155
3156         Fix for https://bugs.webkit.org/show_bug.cgi?id=26200 which I introduced earlier. I had
3157         the smartReplace set TRUE initially, which was wrong since the purpose of this call is
3158         to just replace the selection, and place the caret at the end of the selection it replaced.
3159
3160         * editing/Editor.cpp:
3161         (WebCore::Editor::markMisspellingsAfterTypingToPosition):
3162         * manual-tests/textarea-caret-position-after-auto-spell-correct.html: Added.
3163
3164 2009-06-24  Kevin Watters  <kevinwatters@gmail.com>
3165
3166         Reviewed by Kevin Ollivier.
3167
3168         Don't use an unsigned int for intervalInMS because we sometimes initialize
3169         it with a negative value.
3170
3171         * platform/wx/SharedTimerWx.cpp:
3172         (WebCore::setSharedTimerFireTime):
3173
3174 2009-06-24  Eric Seidel  <eric@webkit.org>
3175
3176         No review, build fix only.
3177
3178         The previous checkin had an improper merge.  This fixes the build.
3179
3180         * page/DragController.cpp:
3181         (WebCore::DragController::tryDocumentDrag):
3182
3183 2009-06-05  Eric Seidel  <eric@webkit.org>
3184
3185         Reviewed by Oliver Hunt.
3186
3187         https://bugs.webkit.org/show_bug.cgi?id=25922
3188         JS setting dropEffect = "none" causes tryDHTMLDrag
3189         to return DragOperationNone.  Which is also the value
3190         tryDHTMLDrag previously used to indicate JS did not
3191         want to handle the drag.
3192
3193         Make it possible for the DragController::try* methods
3194         to return a bool to indicate if javascript accepted
3195         or rejected the drag event, separate from the DragOperation.
3196
3197         Tests:
3198         - fast/events/drag-to-navigate.html
3199         - fast/events/prevent-drag-to-navigate.html
3200
3201         * page/DragController.cpp:
3202         (WebCore::DragController::dragEnteredOrUpdated):
3203         (WebCore::DragController::tryDocumentDrag):
3204         (WebCore::defaultOperationForDrag):
3205         (WebCore::DragController::tryDHTMLDrag):
3206         * page/DragController.h:
3207
3208 2009-06-23  Oliver Hunt  <oliver@apple.com> and Eric Carlson  <eric.carlson@apple.com>
3209
3210         Reviewed by Sam Weinig and Dave Hyatt.
3211
3212         <rdar://problem/6164797> Add Canvas API to allow drawing of <video> frames
3213         <https://bugs.webkit.org/show_bug.cgi?id=25920>
3214
3215         Add support for drawing the contents of the video element to the canvas
3216         in accordance with the current HTML5 draft.
3217
3218         Test: media/video-canvas.html
3219
3220         * bindings/js/JSCanvasRenderingContext2DCustom.cpp:
3221         (WebCore::JSCanvasRenderingContext2D::drawImage):
3222           Standard custom bindings stuff we need to do for all canvas methods.
3223         * html/CanvasRenderingContext2D.cpp:
3224         (WebCore::size): Helper function for finding the size of a video element
3225         (WebCore::CanvasRenderingContext2D::checkOrigin): moved up in the file.
3226         (WebCore::CanvasRenderingContext2D::drawImage): The various overloads of HTML5's drawImage(<video>)
3227         * html/CanvasRenderingContext2D.h:
3228         * html/HTMLMediaElement.h:
3229         (WebCore::HTMLMediaElement::hasSingleSecurityOrigin):
3230           hasSingleSecurityOrigin is needed for security, currently all implementations are trivial
3231           as we force QT to maintain a single origin.
3232         * html/HTMLVideoElement.cpp:
3233         (WebCore::HTMLVideoElement::paint): 
3234             Paint routine on video so we don't have to look at MediaPlayer directly
3235         * html/HTMLVideoElement.h:
3236         * platform/graphics/MediaPlayer.cpp:
3237         (WebCore::NullMediaPlayerPrivate::hasSingleSecurityOrigin):
3238         (WebCore::MediaPlayer::hasSingleSecurityOrigin):
3239             Default implementations of hasSingleSecurityOrigin
3240         * platform/graphics/MediaPlayer.h:
3241         * platform/graphics/MediaPlayerPrivate.h:
3242         * platform/graphics/mac/MediaPlayerPrivateQTKit.h:
3243         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
3244         (WebCore::MediaPlayerPrivate::setUpVideoRendering):
3245             A video may need a player now even if it is not visible.
3246         (WebCore::MediaPlayerPrivate::hasSingleSecurityOrigin):
3247             Always return true due to restrictions we've placed on QT.
3248         * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.cpp:
3249         (WebCore::MediaPlayerPrivate::paint):
3250             Jump through some hoops to allow windows QT to draw to an intermediate buffer.
3251             In the long term we'd like to cache the HDC, but this will do for now.
3252         (WebCore::MediaPlayerPrivate::hasSingleSecurityOrigin):
3253         * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.h:
3254             As for Mac we force QT to only allow same origin loads.
3255
3256 2009-06-23  Adam Langley  <agl@google.com>
3257
3258         Reviewed by Eric Seidel.
3259
3260         Chromium: Fix crash with inherited font-size in <option>
3261
3262         https://bugs.webkit.org/show_bug.cgi?id=26656
3263         http://code.google.com/p/chromium/issues/detail?id=14853
3264
3265         In r42597 (https://bugs.webkit.org/show_bug.cgi?id=25244), I changed
3266         the <select> handing for Chromium to fix a rendering bug. However,
3267         although the font-size is correctly ignored, getRowHeight wasn't
3268         updated and so was calculating the height of the rows in an
3269         inconsistent manner. This can lead to a crash.
3270
3271         * manual-tests/optgroup-empty-and-nested.html: adding test case for crash
3272         * platform/chromium/PopupMenuChromium.cpp:
3273         (WebCore::PopupListBox::getRowHeight):
3274
3275 2009-06-23  Brady Eidson  <beidson@apple.com>
3276
3277         Patch by Antti Koivisto.
3278         Reviewed by Brady Eidson.
3279
3280         <rdar://problem/6988010> Failed resources not reloaded when built against Tiger SDK
3281
3282         A latent bug that cache revalidation uncovered.  When a CachedResource failed to load,
3283         it should always be revalidated upon reload.
3284
3285         * loader/CachedResource.cpp:
3286         (WebCore::CachedResource::canUseCacheValidator):
3287         (WebCore::CachedResource::mustRevalidate):
3288
3289 2009-06-23  Dan Bernstein  <mitz@apple.com>
3290
3291         Reviewed by Darin Adler.
3292
3293         - fix <rdar://problem/6634228> Crash in [NSScroller mouseDown:] beneath
3294           EventHandler::passMouseDownEventToWidget()
3295
3296         * page/mac/EventHandlerMac.mm:
3297         (WebCore::EventHandler::passMouseDownEventToWidget): Surround the
3298         -mouseDown: call with calls to Widget::beforeMouseDown() and
3299         Widget::afterMouseDown(), which prevent the widget's view hierarchy from
3300         being removed from its parent view while the scroller is tracking the
3301         mouse.
3302
3303 2009-06-23  Sam Weinig  <sam@webkit.org>
3304
3305         Reviewed by Dave Hyatt.
3306
3307         Fix for https://bugs.webkit.org/show_bug.cgi?id=26516
3308         Add initial implementation of DataGridDataSource
3309
3310         - Initial implementation only supports the initialize callback function.
3311
3312         Test: fast/dom/HTMLDataGridElement/DataGridDataSource-basic.html
3313
3314         * WebCore.xcodeproj/project.pbxproj:
3315         * GNUmakefile.am:
3316         * WebCore.pro:
3317         * WebCore.vcproj/WebCore.vcproj:
3318         * WebCore.xcodeproj/project.pbxproj:
3319         * WebCoreSources.bkl:
3320         * bindings/js/JSDataGridDataSource.cpp: Added.
3321         (WebCore::JSDataGridDataSource::JSDataGridDataSource):
3322         (WebCore::JSDataGridDataSource::~JSDataGridDataSource):
3323         (WebCore::JSDataGridDataSource::initialize):
3324         * bindings/js/JSDataGridDataSource.h: Added.
3325         (WebCore::JSDataGridDataSource::create):
3326         (WebCore::JSDataGridDataSource::isJSDataGridDataSource):
3327         (WebCore::JSDataGridDataSource::jsDataSource):
3328         (WebCore::asJSDataGridDataSource):
3329         * bindings/js/JSHTMLDataGridElementCustom.cpp: Added.
3330         (WebCore::JSHTMLDataGridElement::listener):
3331         (WebCore::JSHTMLDataGridElement::setListener):
3332         * html/DataGridDataSource.h: Added.
3333         (WebCore::DataGridDataSource::~DataGridDataSource):
3334         (WebCore::DataGridDataSource::isJSDataGridDataSource):
3335         * html/HTMLDataGridElement.cpp:
3336         (WebCore::HTMLDataGridElement::HTMLDataGridElement):
3337         (WebCore::HTMLDataGridElement::setDataSource):
3338         (WebCore::HTMLDataGridElement::initializationTimerFired):
3339         * html/HTMLDataGridElement.h:
3340         (WebCore::HTMLDataGridElement::dataSource):
3341         * html/HTMLDataGridElement.idl:
3342
3343 2009-06-23  Ryosuke Niwa  <rniwa@google.com>
3344
3345         Reviewed by Justin Garcia.
3346
3347         Undo the changeset 21212 to fix the regression bug 14062.
3348         The changeset 21212 attempted to fix rdar://problem/5002441.
3349         The changeset 21212 modified InsertTextCommand::input so as to convert
3350         all spaces in text to non-breaking spaces for rdar://problem/5002441.
3351         However, the bug was originally caused by rebalanceWhitespaceAt
3352         and this workaround introduced a regression bug 14062.
3353         Because rebalanceWhitespaceAt appears to behave correctly now,
3354         the workaround introduced in 21212 is no longer needed.
3355
3356         Test: editing/inserting/space-after-removeformat.html
3357
3358         * editing/InsertTextCommand.cpp:
3359         (WebCore::InsertTextCommand::input):
3360
3361 2009-06-23  Beth Dakin  <bdakin@apple.com>
3362
3363         Reviewed by Dave Hyatt.
3364
3365         Fix for https://bugs.webkit.org/show_bug.cgi?id=26523 <col> 
3366         elements width can't be changed with javascript
3367
3368         This patch both fixes setting the width attribute directly in 
3369         JavaScript, and setting the width on the style attribute. 
3370
3371         * html/HTMLTableColElement.cpp:
3372         (WebCore::HTMLTableColElement::parseMappedAttribute): If we have a 
3373         new width, call setNeedsLayoutAndPrefWidthsRecalc()
3374
3375         Call calcPrefWidths() on the table cols.
3376         * rendering/AutoTableLayout.cpp:
3377         (WebCore::AutoTableLayout::recalcColumn):
3378         * rendering/FixedTableLayout.cpp:
3379         (WebCore::FixedTableLayout::calcWidthArray):
3380         
3381         Call layoutIfNeeded on the table cols.
3382         * rendering/RenderTable.cpp:
3383         (WebCore::RenderTable::layout):
3384
3385         * rendering/RenderTableCol.cpp:
3386         (WebCore::RenderTableCol::clippedOverflowRectForRepaint): Use new 
3387         table() convenience function.
3388         (WebCore::RenderTableCol::calcPrefWidths): Just call 
3389         setPrefWidthsDirty(false) on ourself and our children.
3390         (WebCore::RenderTableCol::table):
3391         * rendering/RenderTableCol.h:
3392
3393 2009-06-23  Ojan Vafai  <ojan@chromium.org>
3394
3395         Reviewed by Dan Bernstein.
3396
3397         Add logic to CSSStyleDeclaration::diff to deal with font-sizes that are 
3398         keyword values. When diff is called on a CSSStyleDeclaration, we check
3399         the keywordSize to see if font-size matches a keyword value.
3400         
3401         This ensures that when we diff a CSSMutableStyleDeclaration returned from
3402         copyInheritableProperties on a CSSComputedStyleDeclaration that we 
3403         correctly identify matching font-sizes.
3404         
3405         https://bugs.webkit.org/show_bug.cgi?id=26279
3406
3407         Test: editing/inserting/font-size-clears-from-typing-style.html
3408
3409         * css/CSSComputedStyleDeclaration.cpp:
3410         (WebCore::CSSComputedStyleDeclaration::cssPropertyMatches):
3411         * css/CSSComputedStyleDeclaration.h:
3412         * css/CSSStyleDeclaration.cpp:
3413         (WebCore::CSSStyleDeclaration::cssPropertyMatches):
3414         (WebCore::CSSStyleDeclaration::diff):
3415         * css/CSSStyleDeclaration.h:
3416
3417 2009-06-23  Kevin McCullough  <kmccullough@apple.com>
3418
3419         Reviewed by Darin Adler.
3420
3421         <rdar://problem/6994790> CrashTracer: [USER] 8 crashes in Mail trying to
3422         add a blank line to pasted Facebook content (under
3423         CompositeEditCommand::positionAvoidingSpecialElementBoundary)
3424
3425         - Just added null checks and I will create a new bug to prevent the
3426         bad behavior.
3427
3428         * editing/CompositeEditCommand.cpp:
3429         (WebCore::CompositeEditCommand::positionAvoidingSpecialElementBoundary):
3430
3431 2009-06-23  Simon Fraser  <simon.fraser@apple.com>
3432
3433         Build fix.
3434
3435         Wrap shouldDoSoftwarePaint() in #if USE(ACCELERATED_COMPOSITING) to avoid warning when 
3436         ACCELERATED_COMPOSITING is not defined.
3437
3438         * rendering/RenderLayer.cpp:
3439
3440 2009-06-23  Simon Fraser  <simon.fraser@apple.com>
3441
3442         Reviewed by Dave Hyatt.
3443         
3444         https://bugs.webkit.org/show_bug.cgi?id=24863
3445         
3446         Fix reflection painting on elements with compositing layers.
3447
3448         Test: compositing/reflections/reflection-on-composited.html
3449
3450         * rendering/RenderLayer.h:
3451         Add a new PaintLayerPaintingReflection flag which is set while painting inside
3452         reflections.
3453         (WebCore::RenderLayer::setPaintingInsideReflection):
3454         Add a setter so that RenderLayerBacking can call it.
3455
3456         * rendering/RenderLayer.cpp:
3457         (WebCore::shouldDoSoftwarePaint):
3458         Utility to clarify the logic of when a composited layer should do a software paint.
3459         
3460         (WebCore::RenderLayer::paintLayer):
3461         Use shouldDoSoftwarePaint() to determine when to software-paint a reflected layer.
3462         Remove transform-related tests from the reflection-painting if test because they appear
3463         to be unnecessary.
3464
3465         * rendering/RenderLayerBacking.cpp:
3466         (WebCore::RenderLayerBacking::paintIntoLayer):
3467         Add the code to paint reflections to the composited layer painting method.
3468         
3469         * rendering/RenderReplica.cpp:
3470         (WebCore::RenderReplica::paint):
3471         Set the PaintLayerPaintingReflection flag.
3472
3473 2009-06-23  Antti Koivisto  <antti@apple.com>
3474
3475         Reviewed by Darin Adler.
3476         
3477         https://bugs.webkit.org/show_bug.cgi?id=26643
3478         Memory cache should respect Cache-Control: no-store
3479         
3480         Make resources with Cache-Control: no-store uncacheable in the memory cache.
3481         They get evicted immediately when all clients are gone and are always
3482         reloaded from the server.
3483
3484         Conforms to RFC2616 14.9.2 and seems also match Firefox behavior.
3485
3486         * loader/CachedResource.cpp:
3487         (WebCore::CachedResource::removeClient):
3488         (WebCore::CachedResource::canUseCacheValidator):
3489         (WebCore::CachedResource::mustRevalidate):
3490         * platform/network/ResourceResponseBase.cpp:
3491         (WebCore::ResourceResponseBase::ResourceResponseBase):
3492         (WebCore::ResourceResponseBase::parseCacheControlDirectives):
3493         (WebCore::ResourceResponseBase::cacheControlContainsNoStore):
3494         * platform/network/ResourceResponseBase.h:
3495
3496 2009-06-23  Brady Eidson  <beidson@apple.com>
3497
3498         Windows build fix.
3499
3500         * platform/graphics/win/QTMovieWin.cpp:
3501         (QTMovieWin::play):
3502         (QTMovieWin::pause):
3503         (QTMovieWin::setRate):
3504         (QTMovieWin::setCurrentTime):
3505
3506 2009-06-23  Kevin McCullough  <kmccullough@apple.com>
3507
3508         Reviewed by Adele Peterson.
3509
3510         <rdar://problem/6902203> REGRESSION: 'Return' insertion point incorrect
3511         after manually quoting blank line then hitting return
3512
3513         If the insertion point is both the begining and ending visible position
3514         then we need to insert at the end instead of the begining, which is what
3515         would normally happen if the insertion point was as the begining.
3516
3517         * editing/BreakBlockquoteCommand.cpp:
3518         (WebCore::BreakBlockquoteCommand::doApply):
3519
3520 2009-06-23  Brady Eidson  <beidson@apple.com>
3521
3522         Reviewed by Sam Weinig, and looked over by Eric Carlson.
3523
3524         <rdar://problem/6980466> Media elements should provide option for changing pitch correction
3525
3526         Introduce a new boolean property to HTMLMediaElement called webkitPreservesPitch for script to control this.
3527
3528         * html/HTMLMediaElement.cpp:
3529         (WebCore::HTMLMediaElement::HTMLMediaElement): Currently the platforms that have a flexible pitch preservation 
3530           property (Quicktime on Mac and Win) have had it on by default, so continue that default for now.
3531         (WebCore::HTMLMediaElement::loadResource):
3532         (WebCore::HTMLMediaElement::webkitPreservesPitch):
3533         (WebCore::HTMLMediaElement::setWebkitPreservesPitch):
3534         * html/HTMLMediaElement.h:
3535         * html/HTMLMediaElement.idl:
3536
3537         * platform/graphics/MediaPlayer.cpp:
3538         (WebCore::NullMediaPlayerPrivate::setPreservesPitch):
3539         (WebCore::MediaPlayer::MediaPlayer):
3540         (WebCore::MediaPlayer::preservesPitch):
3541         (WebCore::MediaPlayer::setPreservesPitch):
3542         * platform/graphics/MediaPlayer.h:
3543         * platform/graphics/MediaPlayerPrivate.h:
3544         (WebCore::MediaPlayerPrivateInterface::setPreservesPitch):
3545
3546         * platform/graphics/mac/MediaPlayerPrivateQTKit.h:
3547         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
3548         (WebCore::MediaPlayerPrivate::MediaPlayerPrivate):
3549         (WebCore::MediaPlayerPrivate::createQTMovie): Rework to allow recreation of the movie with almost the
3550           exact same attributes as before, with pitch preservation being the difference.
3551         (WebCore::MediaPlayerPrivate::setPreservesPitch): Recreate the QTMovie if the flag actually changes.
3552         (WebCore::MediaPlayerPrivate::updateStates): Restore current time and rate if this is a recreated movie.
3553         (WebCore::MediaPlayerPrivate::timeChanged): Clear the time-to-be-restored, as this callback means it
3554           has been effectively overwritten.
3555
3556         * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.cpp:
3557         (WebCore::MediaPlayerPrivate::load):
3558         (WebCore::MediaPlayerPrivate::setPreservesPitch):
3559         * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.h:
3560         * platform/graphics/win/QTMovieWin.cpp:
3561         (QTMovieWinPrivate::QTMovieWinPrivate):
3562         (QTMovieWinPrivate::~QTMovieWinPrivate):
3563         (QTMovieWinPrivate::task): Restore current time and rate if this is a re-created movie.
3564         (QTMovieWin::play): Clear the time-to-be-restored, as this effectively overwrites it.
3565         (QTMovieWin::pause): Ditto.
3566         (QTMovieWin::setRate): Ditto.
3567         (QTMovieWin::setCurrentTime): Ditto.
3568         (QTMovieWin::setPreservesPitch): Recreate the Movie if the flag actually changes.
3569         (QTMovieWin::load): Rework to allow recreation of the Movie with similar state as the movie before it, 
3570           but changing the pitch preservation flag.
3571         * platform/graphics/win/QTMovieWin.h:
3572
3573 2009-06-23  Eric Carlson  <eric.carlson@apple.com>
3574
3575         Reviewed by Simon Fraser.
3576
3577         <rdar://problem/6998286> Crash after leaving page with <video>
3578         
3579         Don't try to post events after going into the page cache.
3580
3581         * html/HTMLMediaElement.cpp:
3582         (WebCore::HTMLMediaElement::documentWillBecomeInactive): Cancel pending events and stop
3583         event timers so we won't try to post events after going into the cache.
3584
3585 2009-06-23  Jeremy Orlow  <jorlow@chromium.org>
3586
3587         Reviewed by Brady Eidson.
3588
3589         Simplify the interaction between LocalStorageArea/SessionStorageArea
3590         and StorageArea by creating a "blockUntilImportComplete()" function
3591         rather than bouncing back and forth between the child and parent
3592         classes in a somewhat unintuitive manner.
3593
3594         This patch also paves the way for LocalStorageArea and
3595         SessionStorageArea being merged into one.  It's part of several in a
3596         set which are separating syncing (to disk) code from the rest of the
3597         implementation so that local storage and session storage's code can be
3598         unified.
3599
3600         https://bugs.webkit.org/show_bug.cgi?id=25376
3601
3602         * storage/LocalStorageArea.cpp:
3603         (WebCore::LocalStorageArea::blockUntilImportComplete):
3604         * storage/LocalStorageArea.h:
3605         * storage/StorageArea.cpp:
3606         (WebCore::StorageArea::length):
3607         (WebCore::StorageArea::key):
3608         (WebCore::StorageArea::getItem):
3609         (WebCore::StorageArea::setItem):
3610         (WebCore::StorageArea::removeItem):
3611         (WebCore::StorageArea::clear):
3612         (WebCore::StorageArea::contains):
3613         * storage/StorageArea.h:
3614         (WebCore::StorageArea::blockUntilImportComplete):
3615
3616 2009-06-23  Simon Fraser  <simon.fraser@apple.com>
3617
3618         Reviewed by Dave Hyatt
3619
3620         First part of https://bugs.webkit.org/show_bug.cgi?id=26652
3621         
3622         * rendering/RenderLayer.cpp:
3623         (WebCore::RenderLayer::paint):
3624         (WebCore::RenderLayer::paintLayer):
3625         * rendering/RenderLayer.h:
3626         (WebCore::RenderLayer::):
3627         * rendering/RenderReplica.cpp:
3628         (WebCore::RenderReplica::paint):
3629         Replace the 3 boolean params to RenderLayer::paintLayer() with a bit mask for readability.
3630         
3631         * rendering/RenderLayerBacking.cpp:
3632         (WebCore::RenderLayerBacking::paintIntoLayer):
3633         (WebCore::RenderLayerBacking::paintContents):
3634         * rendering/RenderLayerBacking.h:
3635         Remove the unused 'haveTransparency' param to paintIntoLayer().
3636
3637 2009-06-23  Simon Fraser  <simon.fraser@apple.com>
3638
3639         Reviewed by Darin Adler.
3640
3641         <rdar://problem/6997929> Assertion at WebCore::RenderLayer::updateClipRects with hardware acceleration
3642
3643         The updatingControlTints() painting pass goes through compositing layer boundaries,
3644         so we need to ensure we don't cache clip rects computed with the wrong root by
3645         setting temporaryClipRects to true.
3646         
3647         * rendering/RenderLayer.cpp:
3648         (WebCore::RenderLayer::paintLayer):
3649         
3650         * rendering/RenderLayerBacking.cpp:
3651         (WebCore::RenderLayerBacking::contentOffsetInCompostingLayer):
3652         Remove a printf that I left in by mistake.
3653
3654 2009-06-23  Anders Carlsson  <andersca@apple.com>
3655
3656         Reviewed by Darin Adler.
3657
3658         WebCore side of <rdar://problem/6946094>.
3659         
3660         * platform/win/ClipboardWin.cpp:
3661         (WebCore::ClipboardWin::setExternalDataObject):
3662         * platform/win/ClipboardWin.h:
3663
3664 2009-06-23  Darin Fisher  <darin@chromium.org>
3665
3666         Reviewed by Darin Adler.
3667
3668         https://bugs.webkit.org/show_bug.cgi?id=26650
3669
3670         Add setFormContentType and setFormData since it is awkward for Chromium
3671         to use setFormInfoFromRequest to set the underlying members.  Also, add
3672         a clearChildren method that Chromium needs.  These methods are used as
3673         part of the Chromium code that serializes a HistoryItem for storing in
3674         the browser's session history.
3675
3676         * history/HistoryItem.cpp:
3677         * history/HistoryItem.h:
3678
3679 2009-06-23  Eric Carlson  <eric.carlson@apple.com>
3680
3681         Reviewed by Darin Adler.
3682
3683         <rdar://problem/6978938> Need HTML 5 event attributes for media elements
3684
3685         Test: media/event-attributes.html
3686
3687         * html/HTMLAttributeNames.in: Add media event attribute names.
3688         * html/HTMLMediaElement.cpp:
3689         (WebCore::HTMLMediaElement::parseMappedAttribute): Handle media event attributes.
3690
3691 2009-06-23  Thiago Macieira  <thiago.macieira@nokia.com>
3692
3693         Reviewed by Simon Hausmann.
3694
3695         Fix Qt build with Phonon.
3696
3697         The #include <phonon> header no longer exists. And the <Phonon> or
3698         <Phonon/Phonon> headers have never existed (neither for us nor for the
3699         Phonon sources). You have to select each and every header that you do
3700         want now.
3701
3702         * platform/graphics/qt/MediaPlayerPrivatePhonon.cpp:
3703
3704 2009-06-23  Tor Arne Vestbø  <tor.arne.vestbo@nokia.com>
3705
3706         Reviewed by Simon Hausmann.
3707
3708         Remove duplicated code in Qt & GTK logging initialization
3709
3710         We now share the getChannelFromName() function in Logging.cpp
3711
3712         * platform/gtk/LoggingGtk.cpp:
3713         * platform/qt/LoggingQt.cpp:
3714
3715 2009-06-23  Tor Arne Vestbø  <tor.arne.vestbo@nokia.com>
3716
3717         Reviewed by Simon Hausmann.
3718
3719         Rename the plugin logging channel to plural form 'Plugins'
3720
3721         This matches both the other logging channel names, as well as the
3722         WebKit logging channel used by Safari/Mac for plugins.
3723
3724         * platform/Logging.cpp:
3725         * platform/Logging.h:
3726         * platform/gtk/LoggingGtk.cpp:
3727         * platform/mac/LoggingMac.mm:
3728         * platform/qt/LoggingQt.cpp:
3729         * platform/win/LoggingWin.cpp:
3730         * plugins/PluginDebug.h:
3731         * plugins/gtk/PluginPackageGtk.cpp:
3732         * plugins/mac/PluginPackageMac.cpp:
3733         * plugins/mac/PluginViewMac.cpp:
3734         * plugins/qt/PluginPackageQt.cpp:
3735
3736 2009-06-23  Tor Arne Vestbø  <tor.arne.vestbo@nokia.com>
3737
3738         Reviewed by Simon Hausmann.
3739
3740         Fix NPAPI mouse translation issues on Mac
3741
3742         The WindowRef we pass to the plugin refers to the the top level window,
3743         so the x and y positions have to be relative to this position, but we
3744         have to manually compensate for title bar decorations and other parents
3745         of the QWebView since contentsToWindow() only traverses to the QWebView.
3746
3747         Previously we did this compensation when passing on mouse coordinates to
3748         the plugin, which caused various issues with translations such as not
3749         being able to close the Flash settings dialog, or the hand cursor not
3750         appearing over links.
3751
3752         We now do the compensation as part of the call to NPP_SetWindow, and
3753         then pass mouse coordinates in global context without any compensation,
3754         similar to how both Safari and Mozilla does it.
3755
3756         * plugins/mac/PluginViewMac.cpp:
3757         (WebCore::PluginView::updatePluginWidget):
3758         (WebCore::PluginView::globalMousePosForPlugin):
3759
3760 2009-06-23  Tor Arne Vestbø  <tor.arne.vestbo@nokia.com>
3761
3762         Rubber-stamped by Simon Hausmann.
3763
3764         [Qt] Resolve absolute path to library install_name manually
3765
3766         Since our target.path is set to the Qt directory (to be able
3767         to do 'make install') the 'absolute_library_soname' option
3768         to QMake did not do the right thing.
3769
3770         We now compute the absolute path manually using DESTDIR.
3771
3772         * WebCore.pro:
3773
3774 2009-06-22  Simon Fraser  <simon.fraser@apple.com>
3775
3776         Reviewed by Oliver Hunt.
3777
3778         <rdar://problem/6991146> Scrollbars in hardware layers don't change to the
3779         inactive look in background windows
3780
3781         * rendering/RenderLayer.cpp:
3782         (WebCore::RenderLayer::paintLayer):
3783         Don't short-circuit the "painting" pass that is used to udpate control tints.
3784
3785 2009-06-22  Dimitri Glazkov  <dglazkov@chromium.org>
3786
3787         Reviewed by Sam Weinig.
3788
3789         https://bugs.webkit.org/show_bug.cgi?id=26567
3790         Upstream V8 bindings code generator. With this change, also added interface ancestor
3791         traversal to IDL parser, which is necessary for V8 bindings. The traversal is used
3792         to determine whether an interface is a Node to facilitate proper casting and storage
3793         in V8DOMMap.
3794
3795         * bindings/scripts/CodeGenerator.pm: Added parent traversal sub, needed
3796             by V8 bindings.
3797         * bindings/scripts/CodeGeneratorV8.pm: Added.
3798         * bindings/scripts/IDLParser.pm: Modified to allow limited parsing for
3799             parent traversal cases.
3800
3801 2009-06-22  Sam Weinig  <sam@webkit.org>
3802
3803         Reviewed by Gavin Barraclough.
3804
3805         Add event handler attribute getter/setters to HTMLFrameSetElement
3806         as specified in HTML 5.  These match the ones on HTMLBodyElement.
3807
3808         * dom/Node.h:
3809         * html/HTMLFrameSetElement.cpp:
3810         (WebCore::HTMLFrameSetElement::parseMappedAttribute):
3811         (WebCore::HTMLFrameSetElement::onblur):
3812         (WebCore::HTMLFrameSetElement::setOnblur):
3813         (WebCore::HTMLFrameSetElement::onerror):
3814         (WebCore::HTMLFrameSetElement::setOnerror):
3815         (WebCore::HTMLFrameSetElement::onfocus):
3816         (WebCore::HTMLFrameSetElement::setOnfocus):
3817         (WebCore::HTMLFrameSetElement::onload):
3818         (WebCore::HTMLFrameSetElement::setOnload):
3819         (WebCore::HTMLFrameSetElement::onbeforeunload):
3820         (WebCore::HTMLFrameSetElement::setOnbeforeunload):
3821         (WebCore::HTMLFrameSetElement::onmessage):
3822         (WebCore::HTMLFrameSetElement::setOnmessage):
3823         (WebCore::HTMLFrameSetElement::onoffline):
3824         (WebCore::HTMLFrameSetElement::setOnoffline):
3825         (WebCore::HTMLFrameSetElement::ononline):
3826         (WebCore::HTMLFrameSetElement::setOnonline):
3827         (WebCore::HTMLFrameSetElement::onresize):
3828         (WebCore::HTMLFrameSetElement::setOnresize):
3829         (WebCore::HTMLFrameSetElement::onstorage):
3830         (WebCore::HTMLFrameSetElement::setOnstorage):
3831         (WebCore::HTMLFrameSetElement::onunload):
3832         (WebCore::HTMLFrameSetElement::setOnunload):
3833         * html/HTMLFrameSetElement.h:
3834         * html/HTMLFrameSetElement.idl:
3835
3836 2009-06-22  Darin Adler  <darin@apple.com>
3837
3838         Reviewed by Sam Weinig.
3839
3840         Bug 25425: DOM attribute getter/setter functions should use const AtomicString& type
3841         https://bugs.webkit.org/show_bug.cgi?id=25425
3842
3843         * bindings/scripts/CodeGeneratorJS.pm: Added handling for ReflectURL.
3844         * bindings/scripts/CodeGeneratorObjC.pm: Ditto.
3845
3846         * dom/Element.cpp:
3847         (WebCore::Element::getURLAttribute): Added. For use implementing getters
3848         for ReflectURL.
3849         * dom/Element.h: Added getURLAttribute.
3850
3851         * html/HTMLImageElement.idl: Use Reflect and ReflectURL.
3852
3853 2009-06-22  Jian Li  <jianli@chromium.org>
3854
3855         Reviewed by Dimitri Glazkov.
3856
3857         Bug 26626: Make WorkerContextExecutionProxy::toV8Object handle exception
3858         objects.
3859         https://bugs.webkit.org/show_bug.cgi?id=26626
3860
3861         * bindings/v8/WorkerContextExecutionProxy.cpp:
3862         (WebCore::WorkerContextExecutionProxy::ToV8Object):
3863
3864 2009-06-22  David Hyatt  <hyatt@apple.com>
3865
3866         Reviewed by Sam Weinig.
3867
3868         Add RenderDataGrid to the build.  Give it some basic default styling (that more or less matches a listbox).  It has a default size
3869         of 300x150.
3870
3871         * GNUmakefile.am:
3872         * WebCore.pro:
3873         * WebCore.vcproj/WebCore.vcproj:
3874         * WebCore.xcodeproj/project.pbxproj:
3875         * WebCoreSources.bkl:
3876         * css/html4.css:
3877         * html/HTMLDataGridElement.cpp:
3878         (WebCore::HTMLDataGridElement::createRenderer):
3879         * html/HTMLDataGridElement.h:
3880         * html/HTMLDataGridElement.idl:
3881         * rendering/RenderDataGrid.cpp: Added.
3882         (WebCore::RenderDataGrid::RenderDataGrid):
3883         (WebCore::RenderDataGrid::~RenderDataGrid):
3884         (WebCore::RenderDataGrid::calcPrefWidths):
3885         (WebCore::RenderDataGrid::paintObject):
3886         (WebCore::RenderDataGrid::valueChanged):
3887         (WebCore::RenderDataGrid::invalidateScrollbarRect):
3888         (WebCore::RenderDataGrid::isActive):
3889         * rendering/RenderDataGrid.h: Added.
3890         (WebCore::RenderDataGrid::renderName):
3891         (WebCore::RenderDataGrid::canHaveChildren):
3892         (WebCore::RenderDataGrid::scrollbarCornerPresent):
3893
3894 2009-06-22  Simon Fraser  <simon.fraser@apple.com>
3895
3896         Reviewed by Dave Hyatt.
3897
3898         https://bugs.webkit.org/show_bug.cgi?id=26430
3899         <rdar://problem/6944442> Elements jump around when they become composited (WWDC checkers demo)
3900         <rdar://problem/6989006> Lots of time spent in RenderLayerCompositor::calculateCompositedBounds()
3901             during window resize when using hardware layers
3902         
3903         Fix an ordering dependency which caused the compositing position of a layer
3904         to be affected by some later sibling, which affected the compositing ancestor's
3905         composited bounds.
3906         
3907         The fix is to only update the compositing positions of layers in some subtree
3908         when updateAfterLayout() has been called on all the layers in that subtree,
3909         from the ancestor down.
3910         
3911         Also cache the composited bounds of a RenderLayerBacking, now that we can
3912         guarantee that those bounds are accurate.
3913         
3914         Test: compositing/sibling-positioning.html
3915
3916         * rendering/RenderLayer.cpp:
3917         (WebCore::RenderLayer::updateLayerPositions):
3918         (WebCore::RenderLayer::hitTestLayer):
3919         * rendering/RenderLayerBacking.cpp:
3920         (WebCore::RenderLayerBacking::RenderLayerBacking):
3921         (WebCore::RenderLayerBacking::updateAfterLayout):
3922         (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
3923         (WebCore::RenderLayerBacking::contentOffsetInCompostingLayer):
3924         (WebCore::RenderLayerBacking::paintContents):
3925         (WebCore::RenderLayerBacking::compositedBounds):
3926         (WebCore::RenderLayerBacking::setCompositedBounds):
3927         * rendering/RenderLayerBacking.h:
3928         * rendering/RenderLayerCompositor.cpp:
3929         (WebCore::RenderLayerCompositor::updateBacking):
3930         (WebCore::RenderLayerCompositor::updateLayerCompositingState):
3931         (WebCore::RenderLayerCompositor::calculateCompositedBounds):
3932         (WebCore::RenderLayerCompositor::layerWillBeRemoved):
3933         (WebCore::RenderLayerCompositor::computeCompositingRequirements):
3934         (WebCore::RenderLayerCompositor::rebuildCompositingLayerTree):
3935         (WebCore::RenderLayerCompositor::updateCompositingChildrenGeometry):
3936         * rendering/RenderLayerCompositor.h:
3937
3938 2009-06-22  Jeremy Orlow  <jorlow@chromium.org>
3939
3940         Reviewed by Darin Fisher.
3941
3942         First step in https://bugs.webkit.org/show_bug.cgi?id=25376
3943
3944         Add StorageSyncManager.cpp/h
3945
3946         * GNUmakefile.am:
3947         * WebCore.pro:
3948         * WebCore.vcproj/WebCore.vcproj:
3949         * WebCore.xcodeproj/project.pbxproj:
3950         * WebCoreSources.bkl:
3951
3952         In preparation for combining SessionStorage and LocalStorage into a
3953         single StorageManager, move the syncing bits out of LocalStorage and
3954         into its own class.
3955
3956         The next step is to combine LocalStorageArea and SessionStorageArea
3957         into one.  Then SessionStorage and LocalStorage can be combined.
3958
3959         Note that combining them will cut down on code paths that must be
3960         proxied, eliminate virtual dispatch, and allow Chromium to (eventually)
3961         write historical sessionStorage to disk when memory is getting tight.
3962
3963         Also remove a couple bits of cruft including code for quotas which is
3964         unnecessary (since a meta-data db is unnecessary since you can just
3965         count bytes as you read the local storage databases into memory).
3966
3967         * storage/LocalStorage.cpp:
3968         (WebCore::LocalStorage::LocalStorage):
3969         (WebCore::LocalStorage::storageArea):
3970         (WebCore::LocalStorage::close):
3971         * storage/LocalStorage.h:
3972         * storage/LocalStorageArea.cpp:
3973         (WebCore::LocalStorageArea::LocalStorageArea):
3974         (WebCore::LocalStorageArea::scheduleFinalSync):
3975         (WebCore::LocalStorageArea::syncTimerFired):
3976         (WebCore::LocalStorageArea::performImport):
3977         * storage/LocalStorageArea.h:
3978         (WebCore::LocalStorageArea::create):
3979         * storage/LocalStorageTask.cpp:
3980         (WebCore::LocalStorageTask::performTask):
3981         * storage/LocalStorageTask.h:
3982         (WebCore::LocalStorageTask::):
3983         (WebCore::LocalStorageTask::createImport):
3984         * storage/LocalStorageThread.cpp:
3985         * storage/LocalStorageThread.h:
3986         * storage/SessionStorage.h:
3987         * storage/StorageSyncManager.cpp: Copied from WebCore/storage/LocalStorage.cpp.
3988         (WebCore::StorageSyncManager::create):
3989         (WebCore::StorageSyncManager::StorageSyncManager):
3990         (WebCore::StorageSyncManager::fullDatabaseFilename):
3991         (WebCore::StorageSyncManager::close):
3992         (WebCore::StorageSyncManager::scheduleImport):
3993         (WebCore::StorageSyncManager::scheduleSync):
3994         * storage/StorageSyncManager.h: Copied from WebCore/storage/LocalStorage.h.
3995         (WebCore::):
3996
3997 2009-06-22  Darin Fisher  <darin@chromium.org>
3998
3999         Reviewed by Dimitri Glazkov.
4000
4001         https://bugs.webkit.org/show_bug.cgi?id=26622
4002         Add ChromiumDataObject::copy()
4003
4004         * platform/chromium/ChromiumDataObject.cpp:
4005         * platform/chromium/ChromiumDataObject.h:
4006
4007 2009-06-22  Timothy Hatcher  <timothy@apple.com>
4008
4009         Add a silhouette image for the enable view of the Resource panel.
4010
4011         Reviewed by Kevin McCullough.
4012
4013         * inspector/front-end/Images/resourcesSilhouette.png: Added.
4014         * inspector/front-end/inspector.css:
4015
4016 2009-06-22  Kyle Prete  <kylep@chromium.org>
4017
4018         Reviewed by Dimitri Glazkov.
4019
4020         https://bugs.webkit.org/show_bug.cgi?id=26552
4021         Add V8 JS bindings for Audio Constructor.
4022
4023         * bindings/v8/custom/V8CustomBinding.h:
4024         Added a callback declaration for audio ctor to macro.
4025         * bindings/v8/custom/V8HTMLAudioElementConstructor.cpp:
4026         Added the whole file.
4027
4028 2009-06-22  Alexey Proskuryakov  <ap@webkit.org>
4029
4030         Reviewed by David Levin.
4031
4032         https://bugs.webkit.org/show_bug.cgi?id=26600
4033         StringImpl::copy() no longer copies empty string correctly
4034
4035         * platform/text/StringImpl.cpp:
4036         (WebCore::StringImpl::ustring): Changed method calling syntax to look less like calling a
4037         static method.
4038         (WebCore::StringImpl::copy): Reverted part of r41917 that caused the problem.
4039
4040 2009-06-22  Xiaomei Ji  <xji@chromium.org>
4041
4042         Reviewed by Eric Seidel
4043
4044         Not auto-testable since it involves sending a keyboard event to
4045         the popup, which is not possible (eventSender sends the key
4046         events through webview, we want to go through the webwidget).
4047
4048         This patch is one part of the fix for issue "keyboard selection in
4049         Hebrew select element does not work in Windows". The other part of the
4050         fix is in chromium's webkit/glue layer.
4051         https://bugs.webkit.org/show_bug.cgi?id=25899
4052
4053         * manual-tests/keyboard_select_non_english.html: Added.
4054         * platform/chromium/PopupMenuChromium.cpp:
4055         (WebCore::isCharacterTypeEvent): Added. Check whether the event is a 
4056         character type event. "Char" in Windows or "KeyDown" in Mac is character
4057         type event.
4058         (WebCore::PopupListBox::typeAheadFind): Since m_lastCharTime is used to
4059         indicate whether user types multiple characters continuely as a search
4060         prefix or not, it should be only assigned when the event is character 
4061         type event. 
4062
4063 2009-06-22  Kevin McCullough  <kmccullough@apple.com>
4064
4065         Reviewed by Darin Adler.
4066
4067         <rdar://problem/6115819> Notify of profile start in console
4068
4069         Put a message in the console that announces that a profile has started,
4070         similar to how a console message announces that a profile has finished.
4071
4072         * inspector/InspectorController.cpp:
4073         (WebCore::InspectorController::addProfile): Use renamed function.
4074         (WebCore::InspectorController::addProfileFinishedMessageToConsole):
4075         Renamed.
4076         (WebCore::InspectorController::addStartProfilingMessageToConsole):
4077         New function that logs the message about the profile starting.
4078         (WebCore::InspectorController::startUserInitiatedProfiling): Ditto
4079         * inspector/InspectorController.h:
4080         * inspector/front-end/ProfilesPanel.js: Print the "run" of the profile's
4081         title if there are multiple profiles, and take into account the fact
4082         that titles are displayed twice as much now.
4083         (WebInspector.ProfilesPanel.prototype.displayTitleForProfileLink):
4084         * page/Console.cpp:
4085         (WebCore::Console::profile): Call new function.
4086
4087 2009-06-22  David Hyatt  <hyatt@apple.com>
4088
4089         Reviewed by Sam Weinig.
4090
4091         https://bugs.webkit.org/show_bug.cgi?id=26615
4092
4093         Add IDL interface for datagrid cell elements.  Add a few more properties to the datagrid itself that
4094         correspond to ones you find on <select> elements.
4095
4096         Add an expanded property to row elements.
4097
4098         * DerivedSources.cpp:
4099         * DerivedSources.make:
4100         * GNUmakefile.am:
4101         * WebCore.pro:
4102         * WebCore.vcproj/WebCore.vcproj:
4103         * WebCore.xcodeproj/project.pbxproj:
4104         * WebCoreSources.bkl:
4105         * html/HTMLAttributeNames.in:
4106         * html/HTMLDataGridCellElement.cpp: Added.
4107         (WebCore::HTMLDataGridCellElement::HTMLDataGridCellElement):
4108         (WebCore::HTMLDataGridCellElement::label):
4109         (WebCore::HTMLDataGridCellElement::setLabel):
4110         (WebCore::HTMLDataGridCellElement::focused):
4111         (WebCore::HTMLDataGridCellElement::setFocused):
4112         (WebCore::HTMLDataGridCellElement::checked):
4113         (WebCore::HTMLDataGridCellElement::setChecked):
4114         (WebCore::HTMLDataGridCellElement::indeterminate):
4115         (WebCore::HTMLDataGridCellElement::setIndeterminate):
4116         (WebCore::HTMLDataGridCellElement::progress):
4117         (WebCore::HTMLDataGridCellElement::setProgress):
4118         * html/HTMLDataGridCellElement.h: Added.
4119         (WebCore::HTMLDataGridCellElement::endTagRequirement):
4120         (WebCore::HTMLDataGridCellElement::tagPriority):
4121         * html/HTMLDataGridCellElement.idl: Added.
4122         * html/HTMLDataGridElement.cpp:
4123         (WebCore::HTMLDataGridElement::autofocus):
4124         (WebCore::HTMLDataGridElement::setAutofocus):
4125         (WebCore::HTMLDataGridElement::disabled):
4126         (WebCore::HTMLDataGridElement::setDisabled):
4127         (WebCore::HTMLDataGridElement::size):
4128         (WebCore::HTMLDataGridElement::setSize):
4129         * html/HTMLDataGridElement.h:
4130         * html/HTMLDataGridElement.idl:
4131         * html/HTMLDataGridRowElement.cpp:
4132         (WebCore::HTMLDataGridRowElement::checkDTD):
4133         (WebCore::HTMLDataGridRowElement::expanded):
4134         (WebCore::HTMLDataGridRowElement::setExpanded):
4135         * html/HTMLDataGridRowElement.h:
4136         * html/HTMLDataGridRowElement.idl:
4137         * html/HTMLElementsAllInOne.cpp:
4138         * html/HTMLTagNames.in:
4139
4140 2009-06-22  Sam Weinig  <sam@webkit.org>
4141
4142         Reviewed by Mark Rowe.
4143
4144         Add event handler attribute getter/setters to HTMLBodyElement
4145         as specified in HTML 5.
4146
4147         - Removes erroneous inclusion of the onresize and onunload event
4148         handler attributes in Element and Document.
4149
4150         * dom/Document.cpp:
4151         (WebCore::Document::getWindowAttributeEventListener):
4152         * dom/Document.h:
4153         * dom/Document.idl:
4154         * dom/Element.idl:
4155         * dom/Node.cpp:
4156         * dom/Node.h: onblur, onerror, onfocus, and onload all need to be declared
4157         virtual, since their behavior for HTMLBodyElement differs from the base
4158         implementation.
4159         * html/HTMLBodyElement.cpp:
4160         (WebCore::HTMLBodyElement::onblur):
4161         (WebCore::HTMLBodyElement::setOnblur):
4162         (WebCore::HTMLBodyElement::onerror):
4163         (WebCore::HTMLBodyElement::setOnerror):
4164         (WebCore::HTMLBodyElement::onfocus):
4165         (WebCore::HTMLBodyElement::setOnfocus):
4166         (WebCore::HTMLBodyElement::onload):
4167         (WebCore::HTMLBodyElement::setOnload):
4168         (WebCore::HTMLBodyElement::onbeforeunload):
4169         (WebCore::HTMLBodyElement::setOnbeforeunload):
4170         (WebCore::HTMLBodyElement::onmessage):
4171         (WebCore::HTMLBodyElement::setOnmessage):
4172         (WebCore::HTMLBodyElement::onoffline):
4173         (WebCore::HTMLBodyElement::setOnoffline):
4174         (WebCore::HTMLBodyElement::ononline):
4175         (WebCore::HTMLBodyElement::setOnonline):
4176         (WebCore::HTMLBodyElement::onresize):
4177         (WebCore::HTMLBodyElement::setOnresize):
4178         (WebCore::HTMLBodyElement::onstorage):
4179         (WebCore::HTMLBodyElement::setOnstorage):
4180         (WebCore::HTMLBodyElement::onunload):
4181         (WebCore::HTMLBodyElement::setOnunload):
4182         * html/HTMLBodyElement.h:
4183         * html/HTMLBodyElement.idl:
4184
4185 2009-06-22  Alexey Proskuryakov  <ap@webkit.org>
4186
4187         Reviewed by Darin Adler.
4188
4189         https://bugs.webkit.org/show_bug.cgi?id=26601
4190         Remove disabled code for appcache dynamic entries
4191
4192         This also removes code for DOM 3 Core DOMStringList, which we don't use for anything else yet.
4193
4194         * DerivedSources.cpp:
4195         * DerivedSources.make:
4196         * GNUmakefile.am:
4197         * WebCore.pro:
4198         * WebCore.vcproj/WebCore.vcproj:
4199         * WebCore.xcodeproj/project.pbxproj:
4200         * WebCoreSources.bkl:
4201         * bindings/js/JSDOMStringListCustom.cpp: Removed.
4202         * bindings/v8/custom/V8CustomBinding.h:
4203         * bindings/v8/custom/V8DOMStringListCustom.cpp: Removed.
4204         * dom/DOMStringList.cpp: Removed.
4205         * dom/DOMStringList.h: Removed.
4206         * dom/DOMStringList.idl: Removed.
4207         * dom/StaticStringList.cpp: Removed.
4208         * dom/StaticStringList.h: Removed.
4209         * loader/DocumentLoader.cpp:
4210         (WebCore::DocumentLoader::shouldLoadResourceFromApplicationCache):
4211         * loader/appcache/ApplicationCache.cpp:
4212         (WebCore::ApplicationCache::addResource):
4213         * loader/appcache/ApplicationCache.h:
4214         * loader/appcache/ApplicationCacheGroup.cpp:
4215         (WebCore::ApplicationCacheGroup::didFinishLoadingManifest):
4216         (WebCore::ApplicationCacheGroup::checkIfLoadIsComplete):
4217         * loader/appcache/ApplicationCacheResource.cpp:
4218         (WebCore::ApplicationCacheResource::dumpType):
4219         * loader/appcache/ApplicationCacheResource.h:
4220         (WebCore::ApplicationCacheResource::):
4221         * loader/appcache/ApplicationCacheStorage.cpp:
4222         (WebCore::ApplicationCacheStorage::storeUpdatedType):
4223         * loader/appcache/DOMApplicationCache.cpp:
4224         * loader/appcache/DOMApplicationCache.h:
4225         * loader/appcache/DOMApplicationCache.idl:
4226         * page/DOMWindow.idl:
4227
4228 2009-06-22  Steve Falkenburg  <sfalken@apple.com>
4229
4230         Windows build fix.
4231
4232         * DerivedSources.cpp:
4233         * html/HTMLElementsAllInOne.cpp:
4234
4235 2009-06-22  Alexey Proskuryakov  <ap@webkit.org>
4236
4237         Reviewed by John Sullivan.
4238
4239         <rdar://problem/6956606> REGRESSION (S4Beta -> Final): After the password is input,
4240         Japanese can't be input.
4241
<