2011-04-27 Adam Barth <abarth@webkit.org>
[WebKit-https.git] / Source / WebCore / ChangeLog
1 2011-04-27  Adam Barth  <abarth@webkit.org>
2
3         Reviewed by Maciej Stachowiak.
4
5         Fix OwnPtr issues in IndexedDB
6         https://bugs.webkit.org/show_bug.cgi?id=59656
7
8         This patch is an attempt to fix the clang build.  Clang can't seem to
9         cope with OwnPtrs to classes declared in an anonymous namespace because
10         OwnPtr's copy constructor isn't defined (but would need to be defined
11         in this translation unit).
12
13         * platform/leveldb/LevelDBDatabase.cpp:
14
15 2011-04-27  Ryuan Choi  <ryuan.choi@samsung.com>
16
17         Reviewed by Antonio Gomes.
18
19         [EFL] Change cursor to LAZY_NATIVE_CURSOR
20         https://bugs.webkit.org/show_bug.cgi?id=59411
21
22         Enable LAZY_NATIVE_CURSOR on EFL build.
23
24         No test added because functionality is unchanged.
25
26         * CMakeListsEfl.txt: Add Cursor.cpp
27         * platform/Cursor.h:
28         (WebCore::Cursor::Cursor):
29         * platform/efl/CursorEfl.cpp:
30         (WebCore::Cursor::Cursor):
31         (WebCore::Cursor::~Cursor):
32         (WebCore::getCursorString):
33         (WebCore::Cursor::ensurePlatformCursor):
34         * platform/efl/WidgetEfl.cpp:
35         (WebCore::Widget::setCursor):
36
37 2011-04-27  Adam Barth  <abarth@webkit.org>
38
39         Build fix from the future.  Another trival strict OwnPtr fixes.  This
40         is the last futuristic build fix I can detect with my time traveling
41         abilities.
42
43         * platform/graphics/chromium/TransparencyWin.cpp:
44         (WebCore::TransparencyWin::initializeNewContext):
45
46 2011-04-27  Dmitry Lomov  <dslomov@google.com>
47
48         Reviewed by David Levin.
49
50         CrossThreadCopier should not have a default specialization for raw pointers
51         https://bugs.webkit.org/show_bug.cgi?id=59234
52         Removed the ablity to pass raw pointers cross-thread
53         Added and applied annotations for doing that
54
55         * fileapi/FileReader.cpp:
56         (WebCore::FileReader::readInternal):
57         (WebCore::FileReader::abort):
58         * fileapi/FileStreamProxy.cpp:
59         (WebCore::FileStreamProxy::startOnFileThread):
60         (WebCore::FileStreamProxy::stopOnFileThread):
61         (WebCore::FileStreamProxy::getSize):
62         (WebCore::FileStreamProxy::getSizeOnFileThread):
63         (WebCore::FileStreamProxy::openForRead):
64         (WebCore::FileStreamProxy::openForReadOnFileThread):
65         (WebCore::FileStreamProxy::openForWrite):
66         (WebCore::FileStreamProxy::openForWriteOnFileThread):
67         (WebCore::FileStreamProxy::close):
68         (WebCore::FileStreamProxy::read):
69         (WebCore::FileStreamProxy::readOnFileThread):
70         (WebCore::FileStreamProxy::write):
71         (WebCore::FileStreamProxy::writeOnFileThread):
72         (WebCore::FileStreamProxy::truncate):
73         (WebCore::FileStreamProxy::truncateOnFileThread):
74         * loader/WorkerThreadableLoader.cpp:
75         (WebCore::WorkerThreadableLoader::MainThreadBridge::MainThreadBridge):
76         (WebCore::WorkerThreadableLoader::MainThreadBridge::destroy):
77         (WebCore::WorkerThreadableLoader::MainThreadBridge::cancel):
78         * page/GeolocationPositionCache.cpp:
79         (WebCore::GeolocationPositionCache::triggerReadFromDatabase):
80         (WebCore::GeolocationPositionCache::triggerWriteToDatabase):
81         * platform/CrossThreadCopier.h:
82         (WebCore::AllowCrossThreadAccessWrapper::AllowCrossThreadAccessWrapper):
83         (WebCore::AllowCrossThreadAccessWrapper::value):
84         (WebCore::AllowCrossThreadAccess):
85         (WebCore::AllowExtendedLifetimeWrapper::AllowExtendedLifetimeWrapper):
86         (WebCore::AllowExtendedLifetimeWrapper::value):
87         (WebCore::AllowExtendedLifetime):
88         * platform/graphics/chromium/cc/CCCompletionEvent.h:
89         * storage/IDBObjectStoreBackendImpl.cpp:
90         (WebCore::IDBObjectStoreBackendImpl::get):
91         (WebCore::IDBObjectStoreBackendImpl::put):
92         (WebCore::IDBObjectStoreBackendImpl::deleteFunction):
93         (WebCore::IDBObjectStoreBackendImpl::clear):
94         (WebCore::IDBObjectStoreBackendImpl::createIndex):
95         (WebCore::IDBObjectStoreBackendImpl::deleteIndex):
96         (WebCore::IDBObjectStoreBackendImpl::openCursor):
97         * storage/SQLCallbackWrapper.h:
98         (WebCore::SQLCallbackWrapper::clear):
99         * websockets/WorkerThreadableWebSocketChannel.cpp:
100         (WebCore::WorkerThreadableWebSocketChannel::Bridge::mainThreadCreateWebSocketChannel):
101         (WebCore::WorkerThreadableWebSocketChannel::Bridge::Bridge):
102         (WebCore::WorkerThreadableWebSocketChannel::Bridge::connect):
103         (WebCore::WorkerThreadableWebSocketChannel::Bridge::send):
104         (WebCore::WorkerThreadableWebSocketChannel::Bridge::bufferedAmount):
105         (WebCore::WorkerThreadableWebSocketChannel::Bridge::close):
106         (WebCore::WorkerThreadableWebSocketChannel::Bridge::disconnect):
107         (WebCore::WorkerThreadableWebSocketChannel::Bridge::suspend):
108         (WebCore::WorkerThreadableWebSocketChannel::Bridge::resume):
109         * workers/WorkerMessagingProxy.cpp:
110         (WebCore::WorkerMessagingProxy::postConsoleMessageToWorkerObject):
111
112 2011-04-27  Adam Barth  <abarth@webkit.org>
113
114         Two build fixes from the future.  (Trivial strict OwnPtr fixes.)
115
116         * page/Frame.cpp:
117         (WebCore::Frame::setTiledBackingStoreEnabled):
118         * platform/audio/ReverbConvolver.cpp:
119         (WebCore::ReverbConvolver::ReverbConvolver):
120
121 2011-04-27  Adam Barth  <abarth@webkit.org>
122
123         Reviewed by David Levin.
124
125         Fix five strict PassOwnPtr violations in WebCore
126         https://bugs.webkit.org/show_bug.cgi?id=59640
127
128         * css/MediaList.cpp:
129         (WebCore::MediaList::deleteMedium):
130         (WebCore::MediaList::setMediaText):
131         (WebCore::MediaList::appendMedium):
132         * css/MediaQuery.h:
133         * dom/MessagePort.cpp:
134         (WebCore::MessagePort::disentanglePorts):
135         (WebCore::MessagePort::entanglePorts):
136         * inspector/InspectorStyleSheet.cpp:
137         (ParsedStyleSheet::setText):
138         * rendering/RenderTheme.cpp:
139         (WebCore::RenderTheme::adjustStyle):
140         (WebCore::RenderTheme::adjustMeterStyle):
141         * rendering/RenderThemeMac.mm:
142         (WebCore::RenderThemeMac::adjustMenuListStyle):
143         (WebCore::RenderThemeMac::adjustSliderTrackStyle):
144         (WebCore::RenderThemeMac::adjustSliderThumbStyle):
145         (WebCore::RenderThemeMac::adjustSearchFieldStyle):
146         (WebCore::RenderThemeMac::adjustSearchFieldCancelButtonStyle):
147         (WebCore::RenderThemeMac::adjustSearchFieldDecorationStyle):
148         (WebCore::RenderThemeMac::adjustSearchFieldResultsDecorationStyle):
149         (WebCore::RenderThemeMac::adjustSearchFieldResultsButtonStyle):
150
151 2011-04-27  Chris Fleizach  <cfleizach@apple.com>
152
153         Reviewed by Beth Dakin.
154
155         <rdar://problem/9315254> ARIA role attribute implemented incorrectly; does not support token list with fallbacks
156         https://bugs.webkit.org/show_bug.cgi?id=59648
157
158         Test: accessibility/aria-fallback-roles.html
159
160         * accessibility/AccessibilityObject.cpp:
161         (WebCore::AccessibilityObject::ariaRoleToWebCoreRole):
162
163 2011-04-27  Beth Dakin  <bdakin@apple.com>
164
165         Reviewed by Dan Bernstein.
166
167         https://bugs.webkit.org/show_bug.cgi?id=59671
168         Race condition with scrollbar animations and closing a page can cause a crash in 
169         WebCore::FrameView::setVisibleScrollerThumbRect + 15
170         -and corresponding-
171         <rdar://problem/9329253>
172
173         It is definitely possible for Page to be null here. So we should null-check it! 
174         And we should not ASSERT.
175         * page/FrameView.cpp:
176         (WebCore::FrameView::didCompleteRubberBand):
177         (WebCore::FrameView::scrollbarStyleChanged):
178         (WebCore::FrameView::setVisibleScrollerThumbRect):
179
180 2011-04-27  Ryosuke Niwa  <rniwa@webkit.org>
181
182         WinCE build fix after r85143.
183
184         * platform/graphics/wince/FontWinCE.cpp:
185         (WebCore::TextRunComponent::TextRunComponent):
186
187 2011-04-27  Mark Pilgrim  <pilgrim@chromium.org>
188
189         Reviewed by Tony Chang.
190
191         IndexedDB object store delete should fail if key is null
192         https://bugs.webkit.org/show_bug.cgi?id=58614
193
194         Test: storage/indexeddb/mozilla/key-requirements-delete-null-key.html
195
196         * storage/IDBObjectStoreBackendImpl.cpp:
197         (WebCore::IDBObjectStoreBackendImpl::deleteFunction):
198
199 2011-04-27  Eric Seidel  <eric@webkit.org>
200
201         Reviewed by Ryosuke Niwa.
202
203         Should have an easy way to construct starting BidiStatus for a paragraph root
204         https://bugs.webkit.org/show_bug.cgi?id=59226
205
206         Two places try to construct BidiStatuses for a paragraph root using copy/paste code.
207         I've made this a constructor for BidiStatus instead.
208
209         As part of this effort I added a direction() accessor for TextRun and got
210         rid of the old m_rtl bool.  This is part of the generic effort in the
211         Bidi code to replace old bool usage with the superior TextDirection enum
212         (this generally makes the code cleaner).
213
214         As part of this replacement effort I found several places which were
215         assuming LTR (by passing rtl=false) when they probably want to use
216         the current text direction.  I suspect that LTR vs. RTL may affect
217         string width in the case of ligatures.  It's unclear.
218
219         This is almost entirely a mechanical change.
220
221         * html/canvas/CanvasRenderingContext2D.cpp:
222         (WebCore::CanvasRenderingContext2D::drawTextInternal):
223         * platform/graphics/GraphicsContext.cpp:
224         (WebCore::GraphicsContext::drawBidiText):
225         * platform/graphics/TextRun.h:
226         (WebCore::TextRun::TextRun):
227         (WebCore::TextRun::direction):
228         (WebCore::TextRun::rtl):
229         (WebCore::TextRun::ltr):
230         (WebCore::TextRun::setDirection):
231         * platform/text/BidiResolver.h:
232         (WebCore::BidiStatus::BidiStatus):
233         * rendering/EllipsisBox.cpp:
234         (WebCore::EllipsisBox::paint):
235         (WebCore::EllipsisBox::selectionRect):
236         (WebCore::EllipsisBox::paintSelection):
237         * rendering/InlineTextBox.cpp:
238         (WebCore::InlineTextBox::selectionRect):
239         (WebCore::InlineTextBox::paint):
240         (WebCore::InlineTextBox::paintSelection):
241         (WebCore::InlineTextBox::paintCompositionBackground):
242         (WebCore::InlineTextBox::paintSpellingOrGrammarMarker):
243         (WebCore::InlineTextBox::paintTextMatchMarker):
244         (WebCore::InlineTextBox::computeRectForReplacementMarker):
245         (WebCore::InlineTextBox::offsetForPosition):
246         (WebCore::InlineTextBox::positionForOffset):
247         * rendering/RenderBlockLineLayout.cpp:
248         (WebCore::RenderBlock::determineStartPosition):
249         * rendering/RenderFileUploadControl.cpp:
250         (WebCore::RenderFileUploadControl::paintObject):
251         (WebCore::RenderFileUploadControl::computePreferredLogicalWidths):
252         * rendering/RenderListBox.cpp:
253         (WebCore::RenderListBox::updateFromElement):
254         (WebCore::RenderListBox::paintItemForeground):
255         * rendering/RenderTextControl.cpp:
256         (WebCore::RenderTextControl::getAvgCharWidth):
257         (WebCore::RenderTextControl::paintPlaceholder):
258         * rendering/svg/SVGInlineTextBox.cpp:
259         (WebCore::SVGInlineTextBox::constructTextRun):
260         * rendering/svg/SVGTextMetrics.cpp:
261         (WebCore::constructTextRun):
262
263 2011-04-27  Robert Hogan  <robert@webkit.org>
264
265         Reviewed by Adam Barth.
266
267         Allow shadowing of history object
268         https://bugs.webkit.org/show_bug.cgi?id=55965
269
270         Tests: http/tests/history/cross-origin-replace-history-object-child.html
271                http/tests/history/cross-origin-replace-history-object.html
272
273         * page/DOMWindow.idl:
274
275 2011-04-27  James Robinson  <jamesr@chromium.org>
276
277         Reviewed by Kenneth Russell.
278
279         [chromium] Ensure compositing layers are up to date before entering doComposite
280         https://bugs.webkit.org/show_bug.cgi?id=59159
281
282         Adds some assertions to try to catch GraphicsLayer mutations at bad times (such as during
283         GraphicsLayerClient::paintContents() implementations).
284
285         * platform/graphics/chromium/GraphicsLayerChromium.cpp:
286         (WebCore::GraphicsLayerChromium::updateLayerPreserves3D):
287         * platform/graphics/chromium/LayerChromium.cpp:
288         (WebCore::LayerChromium::LayerChromium):
289         (WebCore::LayerChromium::~LayerChromium):
290         * platform/graphics/chromium/LayerRendererChromium.cpp:
291         (WebCore::LayerRendererChromium::updateLayers):
292         * platform/graphics/chromium/LayerRendererChromium.h:
293           Add a set of assertions that we aren't creating or destroying LayerChromiums during paintContents
294
295 2011-04-27  James Robinson  <jamesr@chromium.org>
296
297         Reviewed by Adam Barth.
298
299         Fix OwnPtr strict issues in chromium linux build
300         https://bugs.webkit.org/show_bug.cgi?id=59664
301
302         * platform/graphics/chromium/ComplexTextControllerLinux.cpp:
303         (WebCore::ComplexTextController::getNormalizedTextRun):
304         * platform/graphics/skia/ImageBufferSkia.cpp:
305         (WebCore::ImageBuffer::ImageBuffer):
306         * platform/graphics/skia/PlatformContextSkia.cpp:
307         (WebCore::PlatformContextSkia::PlatformContextSkia):
308
309 2011-04-27  Chris Rogers  <crogers@google.com>
310
311         Reviewed by Kenneth Russell.
312
313         Make sure to set sample-rate of created AudioBus in AudioBus::createBySampleRateConverting()
314         https://bugs.webkit.org/show_bug.cgi?id=59641
315
316         No new tests since audio API is not yet implemented.
317
318         * platform/audio/AudioBus.cpp:
319         (WebCore::AudioBus::createBySampleRateConverting):
320         (WebCore::AudioBus::createByMixingToMono):
321
322 2011-04-27  Geoffrey Garen  <ggaren@apple.com>
323
324         Motivated by Alexey Proskuryakov.
325
326         * bindings/scripts/CodeGeneratorJS.pm: Tried to make this comment more
327         informative, since it confused Alexey and me.
328
329 2011-04-27  Geoffrey Garen  <ggaren@apple.com>
330
331         Reviewed by Sam Weinig.
332
333         Fixed a small leak related to CSSValues when deallocating a DOMWrapperWorld
334         https://bugs.webkit.org/show_bug.cgi?id=59646
335
336         Made the cssValueRoots map per-world, instead of a global. When we deallocate
337         a world, we need to clear all entries in the map for that world, since
338         the finalizers that would otherwise clear those entries don't run. The
339         simplest way to do this is just to make the world own the map.
340         
341         * bindings/js/DOMWrapperWorld.h:
342         * bindings/js/JSCSSStyleDeclarationCustom.cpp:
343         (WebCore::JSCSSStyleDeclaration::getPropertyCSSValue):
344         * bindings/js/JSCSSValueCustom.cpp:
345         (WebCore::JSCSSValueOwner::isReachableFromOpaqueRoots):
346         (WebCore::JSCSSValueOwner::finalize):
347         * bindings/js/JSDOMBinding.h:
348
349 2011-04-27  Adam Barth  <abarth@webkit.org>
350
351         Reviewed by David Levin.
352
353         Fix OwnPtr issues in IndexedDB
354         https://bugs.webkit.org/show_bug.cgi?id=59656
355
356         I didn't do an exhaustive review of this code, but I fixed the problems
357         caught by turning on strict OwnPtr and all their antecedents.  This
358         patch is entirely tighter bookkeeping.  There shouldn't be any actual
359         behavior change.
360
361         * platform/leveldb/LevelDBDatabase.cpp:
362         (WebCore::LevelDBDatabase::LevelDBDatabase):
363         (WebCore::LevelDBDatabase::open):
364         (WebCore::LevelDBDatabase::createIterator):
365         * platform/leveldb/LevelDBDatabase.h:
366         * platform/leveldb/LevelDBIterator.cpp:
367         (WebCore::LevelDBIterator::LevelDBIterator):
368         * platform/leveldb/LevelDBIterator.h:
369         * storage/IDBLevelDBBackingStore.cpp:
370         (WebCore::IDBLevelDBBackingStore::IDBLevelDBBackingStore):
371         (WebCore::IDBLevelDBBackingStore::open):
372         (WebCore::getNewDatabaseId):
373         (WebCore::IDBLevelDBBackingStore::getObjectStores):
374         (WebCore::getNewObjectStoreId):
375         (WebCore::deleteRange):
376         (WebCore::IDBLevelDBBackingStore::nextAutoIncrementNumber):
377         (WebCore::IDBLevelDBBackingStore::forEachObjectStoreRecord):
378         (WebCore::IDBLevelDBBackingStore::getIndexes):
379         (WebCore::getNewIndexId):
380         (WebCore::findGreatestKeyLessThan):
381         (WebCore::IDBLevelDBBackingStore::getPrimaryKeyViaIndex):
382         (WebCore::IDBLevelDBBackingStore::keyExistsInIndex):
383         (WebCore::findLastIndexKeyEqualTo):
384         * storage/IDBLevelDBBackingStore.h:
385
386 2011-04-19  MORITA Hajime  <morrita@google.com>
387
388         Reviewed by Tony Chang.
389
390         [Refactoring] DocumentMarkerController::MarkerMapVectorPair should be replaced with a list of some class.
391         https://bugs.webkit.org/show_bug.cgi?id=58113
392
393         * Introduced RenderedDocumentMarker, a subclass of DocumentMarker.
394         * Eliminated Vector<IntRect> and move the IntRect into RenderedDocumentMarker
395         * Now MarkerMapVectorPair is no longer used.
396         
397         No new tests, No behavior change.
398
399         * GNUmakefile.list.am:
400         * WebCore.gypi:
401         * WebCore.pro:
402         * WebCore.vcproj/WebCore.vcproj:
403         * WebCore.xcodeproj/project.pbxproj:
404         * dom/DocumentMarker.h:
405         * dom/DocumentMarkerController.cpp:
406         (WebCore::DocumentMarkerController::addMarker):
407         (WebCore::DocumentMarkerController::copyMarkers):
408         (WebCore::DocumentMarkerController::removeMarkers):
409         (WebCore::DocumentMarkerController::markerContainingPoint):
410         (WebCore::DocumentMarkerController::markersForNode):
411         (WebCore::DocumentMarkerController::renderedRectsForMarkers):
412         (WebCore::DocumentMarkerController::removeMarkersFromList):
413         (WebCore::DocumentMarkerController::repaintMarkers):
414         (WebCore::DocumentMarkerController::setRenderedRectForMarker):
415         (WebCore::DocumentMarkerController::invalidateRenderedRectsForMarkersInRect):
416         (WebCore::DocumentMarkerController::shiftMarkers):
417         (WebCore::DocumentMarkerController::setMarkersActive):
418         (WebCore::DocumentMarkerController::clearDescriptionOnMarkersIntersectingRange):
419         (WebCore::DocumentMarkerController::showMarkers):
420         * dom/DocumentMarkerController.h:
421         * dom/RenderedDocumentMarker.h: Added.
422         (WebCore::RenderedDocumentMarker::RenderedDocumentMarker):
423         (WebCore::RenderedDocumentMarker::isRendered):
424         (WebCore::RenderedDocumentMarker::contains):
425         (WebCore::RenderedDocumentMarker::setRenderedRect):
426         (WebCore::RenderedDocumentMarker::renderedRect):
427         (WebCore::RenderedDocumentMarker::invalidate):
428         (WebCore::RenderedDocumentMarker::invalidMarkerRect):
429
430 2011-04-27  James Robinson  <jamesr@chromium.org>
431
432         Unreviewed, rolling out r85112.
433         http://trac.webkit.org/changeset/85112
434         https://bugs.webkit.org/show_bug.cgi?id=59159
435
436         Broke mac compile
437
438         * page/FrameView.cpp:
439         (WebCore::FrameView::updateCompositingLayers):
440         * page/FrameView.h:
441         * platform/graphics/chromium/GraphicsLayerChromium.cpp:
442         (WebCore::GraphicsLayerChromium::updateLayerPreserves3D):
443         * platform/graphics/chromium/LayerChromium.cpp:
444         (WebCore::LayerChromium::LayerChromium):
445         (WebCore::LayerChromium::~LayerChromium):
446         * platform/graphics/chromium/LayerRendererChromium.cpp:
447         (WebCore::LayerRendererChromium::updateLayers):
448         * platform/graphics/chromium/LayerRendererChromium.h:
449
450 2011-04-27  Mark Rowe  <mrowe@apple.com>
451
452         Build fix.
453
454         * WebCore.xcodeproj/project.pbxproj: Make RenderLayerCompositor.h accessbile to WebKit and WebKit2.
455
456 2011-04-27  Pratik Solanki  <psolanki@apple.com>
457
458         Unreviewed. Fix WinCE build. The include should be guarded inside USE(CFNETWORK).
459
460         * platform/network/ResourceHandleClient.h:
461
462 2011-04-27  James Robinson  <jamesr@chromium.org>
463
464         Reviewed by Kenneth Russell.
465
466         [chromium] Ensure compositing layers are up to date before entering doComposite
467         https://bugs.webkit.org/show_bug.cgi?id=59159
468
469         Adds some assertions to try to catch GraphicsLayer mutations at bad times (such as during
470         GraphicsLayerClient::paintContents() implementations).
471
472         * page/FrameView.cpp:
473         (WebCore::FrameView::updateCompositingLayers):
474             Add an optional CompositingUpdateType parameter.
475         * page/FrameView.h:
476         * platform/graphics/chromium/GraphicsLayerChromium.cpp:
477         (WebCore::GraphicsLayerChromium::updateLayerPreserves3D):
478         * platform/graphics/chromium/LayerChromium.cpp:
479         (WebCore::LayerChromium::LayerChromium):
480         (WebCore::LayerChromium::~LayerChromium):
481         * platform/graphics/chromium/LayerRendererChromium.cpp:
482         (WebCore::LayerRendererChromium::updateLayers):
483         * platform/graphics/chromium/LayerRendererChromium.h:
484           Add a set of assertions that we aren't creating or destroying LayerChromiums during paintContents
485         * rendering/RenderLayer.cpp:
486         (WebCore::RenderLayer::dirtyZOrderLists):
487         (WebCore::RenderLayer::updateCompositingAndLayerListsIfNeeded):
488         * rendering/RenderLayerCompositor.cpp:
489         (WebCore::RenderLayerCompositor::updateCompositingLayers):
490         * rendering/RenderLayerCompositor.h:
491           Fix a typo in CompositingUpdateType Pait->Paint
492
493 2011-04-27  Pratik Solanki  <psolanki@apple.com>
494
495         Reviewed by Antti Koivisto.
496
497         Part of WebCore should use CFNetwork-based loader on Mac
498         https://bugs.webkit.org/show_bug.cgi?id=51836
499
500         Add willCacheResponse method when using CFNetwork on Mac. Also put appropriate ifdefs around
501         willCacheResponse/shouldCacheResponse.
502
503         * loader/EmptyClients.h:
504         * loader/FrameLoaderClient.h:
505         * loader/ResourceLoader.h:
506         * loader/cf/ResourceLoaderCFNet.cpp:
507         * loader/mac/ResourceLoaderMac.mm:
508         (WebCore::ResourceLoader::willCacheResponse):
509         * platform/network/ResourceHandleClient.h:
510         (WebCore::ResourceHandleClient::willCacheResponse):
511         (WebCore::ResourceHandleClient::shouldCacheResponse):
512         * platform/network/cf/ResourceHandleCFNet.cpp:
513         (WebCore::willCacheResponse):
514
515 2011-04-27  Ilya Tikhonovsky  <loislo@chromium.org>
516
517         Reviewed by Brian Weinstein.
518
519         Web Inspector: Stop on Exception state does not persist.
520
521         A wrong property name was used when we persist PauseOnExceptionState property to Local Storage.
522         https://bugs.webkit.org/show_bug.cgi?id=59630
523
524         * inspector/front-end/ScriptsPanel.js:
525         (WebInspector.ScriptsPanel.prototype._debuggerWasEnabled):
526         (WebInspector.ScriptsPanel.prototype._setPauseOnExceptions.callback):
527         (WebInspector.ScriptsPanel.prototype._setPauseOnExceptions):
528
529 2011-04-27  Adrienne Walker  <enne@google.com>
530
531         [chromium] Unreviewed, rollout r85075 (scissor rect changes)
532         https://bugs.webkit.org/show_bug.cgi?id=59020
533
534         * platform/graphics/chromium/LayerRendererChromium.cpp:
535         (WebCore::LayerRendererChromium::updatePropertiesAndRenderSurfaces):
536
537 2011-04-27  Darin Adler  <darin@apple.com>
538
539         Reviewed by David Levin.
540
541         Fix strict OwnPtr issues seen in about 30 more files
542         https://bugs.webkit.org/show_bug.cgi?id=59615
543
544         * bindings/js/JSCallbackData.h:
545         (WebCore::DeleteCallbackDataTask::create): Use adoptPtr.
546         * bindings/js/JSMessageEventCustom.cpp:
547         (WebCore::JSMessageEvent::initMessageEvent): Use adoptPtr.
548         * css/CSSParser.cpp:
549         (WebCore::CSSParser::updateSpecifiersWithElementName): Use OwnPtr,
550         adoptPtr, and release.
551         * dom/MessageEvent.cpp:
552         (WebCore::MessageEvent::initMessageEvent): Use OwnPtr, adoptPtr,
553         and release.
554         * dom/MessagePortChannel.cpp:
555         (WebCore::MessagePortChannel::EventData::create): Use adoptPtr.
556         * dom/ScriptExecutionContext.cpp:
557         (WebCore::ProcessMessagesSoonTask::create): Use adoptPtr.
558         * dom/XMLDocumentParserLibxml2.cpp:
559         (WebCore::XMLDocumentParser::doEnd): Use adoptPtr.
560         * dom/default/PlatformMessagePortChannel.cpp:
561         (WebCore::MessagePortChannel::create): Use adoptPtr.
562         * html/HTMLFormControlElement.cpp:
563         (WebCore::HTMLFormControlElement::detach): Use nullptr.
564         * inspector/InspectorAgent.cpp:
565         (WebCore::PostWorkerNotificationToFrontendTask::create): Use adoptPtr.
566         * inspector/InspectorConsoleAgent.cpp:
567         (WebCore::InspectorConsoleAgent::addMessageToConsole): Use adoptPtr.
568         (WebCore::InspectorConsoleAgent::didReceiveResponse): Use adoptPtr.
569         (WebCore::InspectorConsoleAgent::didFailLoading): Use adoptPtr.
570         * inspector/InspectorController.cpp:
571         (WebCore::InspectorController::connectFrontend): Use adoptPtr.
572         * inspector/InspectorDOMAgent.cpp:
573         (WebCore::InspectorDOMAgent::didInvalidateStyleAttr): Use adoptPtr.
574         * inspector/InspectorResourceAgent.cpp:
575         (WebCore::InspectorResourceAgent::InspectorResourceAgent): Use adoptPtr.
576         * page/FrameActionScheduler.cpp:
577         (WebCore::FrameActionScheduler::scheduleEvent): Use adoptPtr.
578         * platform/graphics/ShadowBlur.cpp:
579         (WebCore::ScratchBuffer::clearScratchBuffer): Use nullptr.
580         * platform/graphics/ca/GraphicsLayerCA.cpp:
581         (WebCore::GraphicsLayer::create): Use adoptPtr.
582         (WebCore::GraphicsLayerCA::ensureCloneLayers): Use adoptPtr.
583         (WebCore::GraphicsLayerCA::removeCloneLayers): Use nullptr.
584         * rendering/RenderBlock.cpp:
585         (WebCore::RenderBlock::setMaxMarginBeforeValues): Use adoptPtr.
586         (WebCore::RenderBlock::setMaxMarginAfterValues): Use adoptPtr.
587         (WebCore::RenderBlock::setPaginationStrut): Use adoptPtr.
588         (WebCore::RenderBlock::setPageLogicalOffset): Use adoptPtr.
589         * rendering/RenderLayerBacking.cpp:
590         (WebCore::RenderLayerBacking::destroyGraphicsLayer): Use nullptr.
591         (WebCore::RenderLayerBacking::updateClippingLayers): Use nullptr.
592         (WebCore::RenderLayerBacking::updateForegroundLayer): Use nullptr.
593         (WebCore::RenderLayerBacking::updateMaskLayer): Use nullptr.
594         * rendering/RenderLayerCompositor.cpp:
595         (WebCore::RenderLayerCompositor::updateOverflowControlsLayers): Use nullptr.
596         (WebCore::RenderLayerCompositor::ensureRootPlatformLayer): Use nullptr.
597         (WebCore::RenderLayerCompositor::destroyRootPlatformLayer): Use nullptr.
598         * rendering/style/StyleRareNonInheritedData.cpp:
599         (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData): Removed
600         explicit initializations of OwnPtr members to 0. Use adoptPtr.
601         * workers/SharedWorkerContext.cpp:
602         (WebCore::createConnectEvent): Use adoptPtr.
603         * workers/Worker.cpp:
604         (WebCore::Worker::notifyFinished): Use nullptr.
605
606 2011-04-27  Enrica Casucci  <enrica@apple.com>
607
608         Reviewed by Darin Adler.
609
610         REGRESSION (r84311): Copy should preserve background color if specified in the body only if the entire content is selected.
611         https://bugs.webkit.org/show_bug.cgi?id=59251
612         <rdar://problem/9327044>
613
614         When we are looking for wrapping elements that are presentational, we should
615         include elements that have a non transparent background color only if they
616         are not blocks.
617
618         Test: editing/pasteboard/do-not-copy-body-color.html
619
620         * editing/markup.cpp:
621         (WebCore::isElementPresentational):
622
623 2011-04-20  Dimitri Glazkov  <dglazkov@chromium.org>
624
625         Reviewed by Antti Koivisto.
626
627         Teach sub-selector chains about shadow descendants
628         https://bugs.webkit.org/show_bug.cgi?id=58342
629
630         The primary change is to the logic of parsing specifiers:
631         1) The shadow descendant selectors (those specifiers that are unknown
632         pseudo element selectors) are always kept at the top of the chain.
633         2) The sub-selectors after shadow descendant selectors are stashed right
634         behind the sub-selector, but not at the end of the chain.
635         3) Other sub-selectors are appended at the end of the chain.
636
637         * css/CSSGrammar.y: Changed specifier_list collection to use new
638             CSSParser::updateSpecifier helper.
639         * css/CSSParser.cpp:
640         (WebCore::CSSParser::updateSpecifiersWithElementName): Added logic to
641             look for the last ShadowDescendant relation in the chain of selectors,
642             because the next selector after it is the one that should get the
643             element name.
644         (WebCore::CSSParser::updateSpecifiers): Moved and modified the logic from
645             CSSGrammar.y. The new logic adjusts the selector chain to allow
646             shadow descendant selectors have sub-selectors (and have multiple shadow
647             descendants in the chain).
648         * css/CSSParser.h: Added decl.
649         * css/CSSParserValues.cpp:
650         (WebCore::CSSParserSelector::insertTagHistory): Added.
651         (WebCore::CSSParserSelector::appendTagHistory): Aded.
652         * css/CSSParserValues.h: Added decls.
653         * css/CSSStyleSelector.cpp:
654         (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector): Added
655             shadow descendant selector match check, since now there could be many
656             of them in the selector chain.
657
658 2011-04-20  Adrienne Walker  <enne@google.com>
659
660         Reviewed by Kenneth Russell.
661
662         [chromium] Fix incorrect scissor rect for layers that render into a rendersurface
663         https://bugs.webkit.org/show_bug.cgi?id=59020
664
665         mapRect is the incorrect transform here.  The parent scissor rect
666         needs to be projected into layer space instead.
667
668         Test: compositing/flat-with-transformed-child.html
669
670         * platform/graphics/chromium/LayerRendererChromium.cpp:
671         (WebCore::LayerRendererChromium::updatePropertiesAndRenderSurfaces):
672
673 2011-04-27  Pratik Solanki  <psolanki@apple.com>
674
675         Reviewed by Antti Koivisto.
676
677         Part of WebCore should use CFNetwork-based loader on Mac
678         https://bugs.webkit.org/show_bug.cgi?id=51836
679
680         * Configurations/WebCore.xcconfig: Add location of CFNetwork.framework.
681         * platform/mac/SoftLinking.h:
682         * platform/network/cf/CookieJarCFNet.cpp: Soft-link in CFNetwork functions on Mac.
683
684 2011-04-27  Nikolas Zimmermann  <nzimmermann@rim.com>
685
686         Reviewed by Antti Koivisto.
687
688         Cleanup CSSStyleApplyProperty.cpp
689         https://bugs.webkit.org/show_bug.cgi?id=59623
690
691         As first step remove ApplyPropertyColorBase, merge it with ApplyPropertyColor, there's no need for two seperated classes.
692         Use typedefs instead of repating the function pointer declarations in a few places.
693
694         * css/CSSStyleApplyProperty.cpp:
695         (WebCore::ApplyPropertyDefault::ApplyPropertyDefault):
696         (WebCore::ApplyPropertyColor::ApplyPropertyColor):
697         (WebCore::ApplyPropertyColor::applyInheritValue):
698         (WebCore::ApplyPropertyColor::applyInitialValue):
699         (WebCore::ApplyPropertyColor::applyValue):
700         (WebCore::CSSStyleApplyProperty::CSSStyleApplyProperty):
701
702 2011-04-27  Dan Bernstein  <mitz@apple.com>
703
704         Reviewed by Anders Carlsson.
705
706         <rdar://problem/9335973> REGRESSION (r84341): Buttons in the Mac App store are rendered incorrectly
707         https://bugs.webkit.org/show_bug.cgi?id=59622
708
709         Test: fast/borders/border-image-trumps-radius.html
710
711         * rendering/RenderBox.cpp:
712         (WebCore::RenderBox::determineBackgroundBleedAvoidance): If there is a renderable, loaded border
713         image, then border radius is ignored, so no bleed avoidance is needed.
714         * rendering/RenderObject.cpp:
715         (WebCore::RenderObject::borderImageIsLoadedAndCanBeRendered): Added. Moved some logic here from...
716         (WebCore::RenderObject::mustRepaintBackgroundOrBorder): ...here.
717         * rendering/RenderObject.h:
718
719 2011-02-03  Martin Robinson  <mrobinson@igalia.com>
720
721         Reviewed by Xan Lopez.
722
723         [GTK] editing/pasteboard/copy-standalone-image.html fails
724         https://bugs.webkit.org/show_bug.cgi?id=53645
725
726         When writing an image to the clipboard, also write the URL and title
727         into the markup and URL portion. This change also abstracts a helper
728         imageToMarkup into markup.{cpp/h} from several different locations
729         throughout the platform layer.
730
731         * editing/markup.h: Added new function definition.
732         * editing/markup.cpp:
733         (WebCore::imageToMarkup): Add this function which turns an image URL 
734         and element into some markup representing that image, while preserving
735         non-src attributes.
736         * platform/chromium/ClipboardChromium.cpp: Move the imageToMarkup helper
737         to markup.cpp.
738         * platform/gtk/PasteboardGtk.cpp:
739         (WebCore::getURLForImageNode): Add this helper which gets the appropriate
740         image URL for a variety of image tag types.
741         (WebCore::Pasteboard::writeImage): Write the image URL and title to the
742         markup and URL portions of the clipboard. This will ensure that images
743         paste properly back into WebKit.
744         * platform/win/ClipboardWin.cpp: Remove the imageToMarkup helper and the
745         one from markup.h
746
747 2011-04-27  Steve Block  <steveblock@google.com>
748
749         Reviewed by David Levin.
750
751         Remove Android build system
752         https://bugs.webkit.org/show_bug.cgi?id=48111
753
754         This is to avoid the maintenance burden until the Android port is
755         fully upstreamed.
756
757         No new tests, build change only.
758
759         * Android.derived.jscbindings.mk: Removed.
760         * Android.derived.mk: Removed.
761         * Android.derived.v8bindings.mk: Removed.
762         * Android.jscbindings.mk: Removed.
763         * Android.mk: Removed.
764         * Android.v8bindings.mk: Removed.
765
766 2011-04-27  Darin Adler  <darin@apple.com>
767
768         Reviewed by Sam Weinig.
769
770         Somehow about:blank gets into the icon database
771         https://bugs.webkit.org/show_bug.cgi?id=58067
772         rdar://problem/6751446
773
774         Implemented the policy Brady suggested, where only http and https URLs can
775         be associated with and icon, guarding both on the way in to the database,
776         and on the way out.
777
778         * loader/icon/IconDatabase.cpp:
779         (WebCore::pageCanHaveIcon): Added.
780         (WebCore::IconDatabase::synchronousIconForPageURL): Call pageCanHaveIcon
781         instead of just checking for an empty URL.
782         (WebCore::IconDatabase::synchronousIconURLForPageURL): Ditto.
783         (WebCore::IconDatabase::retainIconForPageURL): Ditto.
784         (WebCore::IconDatabase::releaseIconForPageURL): Ditto.
785         (WebCore::IconDatabase::setIconURLForPageURL): Ditto.
786         (WebCore::IconDatabase::getOrCreatePageURLRecord): Ditto.
787         (WebCore::IconDatabase::importIconURLForPageURL): Broke assertion into
788         two separate assertions and added a third.
789         (WebCore::IconDatabase::performURLImport): Call pageCanHaveIcon.
790
791         * platform/KURL.cpp: Sorted includes. Moved a FIXME to the top of the file.
792         (WebCore::isLetterMatchIgnoringCase): Renamed matchLetter to this name,
793         overloaded it to work on both UChar and char, and added an assertion to it.
794         Also moved this to the top of the file and made the UChar version usable
795         in the shared code used even by Google.
796         (WebCore::KURL::invalidate): Updated for name change.
797         (WebCore::KURL::protocolIs): Use isLetterMatchIgnoringCase instead of
798         toASCIILower since it's faster.
799         (WebCore::KURL::parse): Updated for name changes.
800         (WebCore::protocolIs):Use isLetterMatchIgnoringCase instead of toASCIILower
801         since it's faster.
802         (WebCore::protocolIsInHTTPFamily): Added.
803
804         * platform/KURL.h: Tweaked formatting. Renamed protocolInHTTPFamily
805         to protocolIsInHTTPFamily and added a version that works on a string.
806         Kept the old name as an inline function so we don't have to rename
807         all the cal sites now.
808
809         * platform/KURLGoogle.cpp: Renamed as above.
810         (WebCore::KURLGooglePrivate::KURLGooglePrivate): Updated for rename.
811         (WebCore::KURLGooglePrivate::setUtf8): Ditto.
812         (WebCore::KURLGooglePrivate::setAscii): Ditto.
813         (WebCore::KURLGooglePrivate::initProtocolIsInHTTPFamily): Ditto.
814         (WebCore::KURLGooglePrivate::copyTo): Ditto.
815         (WebCore::KURL::KURL): Ditto.
816         (WebCore::KURL::protocolIsInHTTPFamily): Ditto.
817         (WebCore::KURL::invalidate): Ditto.
818         * platform/KURLGooglePrivate.h: Ditto.
819
820         * WebCore.exp.in: Updated for above changes.
821
822 2011-04-27  Yury Semikhatsky  <yurys@chromium.org>
823
824         Reviewed by Pavel Feldman.
825
826         Web Inspector: browser crash on evaluation of 'throw undefined'
827         https://bugs.webkit.org/show_bug.cgi?id=59611
828
829         Test: inspector/console/console-eval-throw-undefined.html
830
831         * inspector/InjectedScriptSource.js: use try/catch to protect from
832         exception during conversion of another exception to string.
833
834 2011-04-27  Pavel Feldman  <pfeldman@google.com>
835
836         Reviewed by Yury Semikhatsky.
837
838         Web Inspector: clicking bookmarklet multiplies resources panel entries.
839         https://bugs.webkit.org/show_bug.cgi?id=59590
840
841         * inspector/front-end/ResourceTreeModel.js:
842         (WebInspector.ResourceTreeModel):
843         (WebInspector.ResourceTreeModel.prototype._processCachedResources):
844         (WebInspector.ResourceTreeModel.prototype._frameNavigated):
845         * inspector/front-end/ResourcesPanel.js:
846         (WebInspector.ResourcesPanel.prototype._populateResourceTree):
847         (WebInspector.FrameTreeElement):
848         (WebInspector.FrameTreeElement.prototype.appendResource):
849         * inspector/front-end/inspector.js:
850         (WebInspector.frontendReused):
851
852 2011-04-27  Pavel Feldman  <pfeldman@google.com>
853
854         Reviewed by Yury Semikhatsky.
855
856         Web Inspector: opening bookmarklet disconnects DOM agent.
857         https://bugs.webkit.org/show_bug.cgi?id=59588
858
859         * inspector/InspectorDOMAgent.cpp:
860         (WebCore::InspectorDOMAgent::setDocument):
861
862 2011-04-27  Hans Wennborg  <hans@chromium.org>
863
864         Reviewed by Tony Gentilcore.
865
866         IndexedDB: Fix compiler warnings about uninitialized variables
867         https://bugs.webkit.org/show_bug.cgi?id=59599
868
869         Build fix. No new tests.
870
871         * storage/IDBLevelDBBackingStore.cpp:
872         (WebCore::getNewObjectStoreId):
873         (WebCore::getNewIndexId):
874
875 2011-04-26  Hans Wennborg  <hans@chromium.org>
876
877         Reviewed by Tony Gentilcore.
878
879         IndexedDB: Move LevelDB key coding routines to separate file
880         https://bugs.webkit.org/show_bug.cgi?id=59452
881
882         Move all routines concerned with encoding, decoding and comparison of
883         LevelDB keys from IDBLevelDBBackingStore.cpp to a separate file:
884         IDBLevelDBCoding.cpp.
885
886         This makes IDBLevelDBBackingStore.cpp easier to work with, and will
887         allow for unit testing of the coding routines.
888
889         No new functionality, no new tests.
890
891         * WebCore.gypi:
892         * storage/IDBLevelDBBackingStore.cpp:
893         (WebCore::getInt):
894         (WebCore::putInt):
895         (WebCore::getString):
896         (WebCore::putString):
897         (WebCore::compareKeys):
898         (WebCore::compareIndexKeys):
899         (WebCore::Comparator::compare):
900         (WebCore::setUpMetadata):
901         (WebCore::IDBLevelDBBackingStore::extractIDBDatabaseMetaData):
902         (WebCore::getNewDatabaseId):
903         (WebCore::IDBLevelDBBackingStore::setIDBDatabaseMetaData):
904         (WebCore::IDBLevelDBBackingStore::getObjectStores):
905         (WebCore::getNewObjectStoreId):
906         (WebCore::IDBLevelDBBackingStore::createObjectStore):
907         (WebCore::IDBLevelDBBackingStore::deleteObjectStore):
908         (WebCore::IDBLevelDBBackingStore::getObjectStoreRecord):
909         (WebCore::getNewVersionNumber):
910         (WebCore::IDBLevelDBBackingStore::putObjectStoreRecord):
911         (WebCore::IDBLevelDBBackingStore::clearObjectStore):
912         (WebCore::IDBLevelDBBackingStore::deleteObjectStoreRecord):
913         (WebCore::IDBLevelDBBackingStore::nextAutoIncrementNumber):
914         (WebCore::IDBLevelDBBackingStore::keyExistsInObjectStore):
915         (WebCore::IDBLevelDBBackingStore::forEachObjectStoreRecord):
916         (WebCore::IDBLevelDBBackingStore::getIndexes):
917         (WebCore::getNewIndexId):
918         (WebCore::IDBLevelDBBackingStore::createIndex):
919         (WebCore::IDBLevelDBBackingStore::putIndexDataForRecord):
920         (WebCore::versionExists):
921         (WebCore::IDBLevelDBBackingStore::getPrimaryKeyViaIndex):
922         (WebCore::IDBLevelDBBackingStore::keyExistsInIndex):
923         (WebCore::IDBLevelDBBackingStore::openObjectStoreCursor):
924         (WebCore::IDBLevelDBBackingStore::openIndexKeyCursor):
925         (WebCore::IDBLevelDBBackingStore::openIndexCursor):
926         * storage/IDBLevelDBCoding.cpp: Added.
927         (WebCore::IDBLevelDBCoding::encodeByte):
928         (WebCore::IDBLevelDBCoding::maxIDBKey):
929         (WebCore::IDBLevelDBCoding::minIDBKey):
930         (WebCore::IDBLevelDBCoding::encodeInt):
931         (WebCore::IDBLevelDBCoding::decodeInt):
932         (WebCore::IDBLevelDBCoding::encodeVarInt):
933         (WebCore::IDBLevelDBCoding::decodeVarInt):
934         (WebCore::IDBLevelDBCoding::encodeString):
935         (WebCore::IDBLevelDBCoding::decodeString):
936         (WebCore::IDBLevelDBCoding::encodeStringWithLength):
937         (WebCore::IDBLevelDBCoding::decodeStringWithLength):
938         (WebCore::IDBLevelDBCoding::encodeDouble):
939         (WebCore::IDBLevelDBCoding::decodeDouble):
940         (WebCore::IDBLevelDBCoding::encodeIDBKey):
941         (WebCore::IDBLevelDBCoding::decodeIDBKey):
942         (WebCore::IDBLevelDBCoding::extractEncodedIDBKey):
943         (WebCore::IDBLevelDBCoding::compareEncodedIDBKeys):
944         (WebCore::IDBLevelDBCoding::compare):
945         (WebCore::IDBLevelDBCoding::KeyPrefix::KeyPrefix):
946         (WebCore::IDBLevelDBCoding::KeyPrefix::decode):
947         (WebCore::IDBLevelDBCoding::KeyPrefix::encode):
948         (WebCore::IDBLevelDBCoding::KeyPrefix::compare):
949         (WebCore::IDBLevelDBCoding::KeyPrefix::type):
950         (WebCore::IDBLevelDBCoding::SchemaVersionKey::encode):
951         (WebCore::IDBLevelDBCoding::MaxDatabaseIdKey::encode):
952         (WebCore::IDBLevelDBCoding::DatabaseFreeListKey::DatabaseFreeListKey):
953         (WebCore::IDBLevelDBCoding::DatabaseFreeListKey::decode):
954         (WebCore::IDBLevelDBCoding::DatabaseFreeListKey::encode):
955         (WebCore::IDBLevelDBCoding::DatabaseFreeListKey::databaseId):
956         (WebCore::IDBLevelDBCoding::DatabaseFreeListKey::compare):
957         (WebCore::IDBLevelDBCoding::DatabaseNameKey::decode):
958         (WebCore::IDBLevelDBCoding::DatabaseNameKey::encode):
959         (WebCore::IDBLevelDBCoding::DatabaseNameKey::compare):
960         (WebCore::IDBLevelDBCoding::DatabaseMetaDataKey::encode):
961         (WebCore::IDBLevelDBCoding::ObjectStoreMetaDataKey::ObjectStoreMetaDataKey):
962         (WebCore::IDBLevelDBCoding::ObjectStoreMetaDataKey::decode):
963         (WebCore::IDBLevelDBCoding::ObjectStoreMetaDataKey::encode):
964         (WebCore::IDBLevelDBCoding::ObjectStoreMetaDataKey::objectStoreId):
965         (WebCore::IDBLevelDBCoding::ObjectStoreMetaDataKey::metaDataType):
966         (WebCore::IDBLevelDBCoding::ObjectStoreMetaDataKey::compare):
967         (WebCore::IDBLevelDBCoding::IndexMetaDataKey::IndexMetaDataKey):
968         (WebCore::IDBLevelDBCoding::IndexMetaDataKey::decode):
969         (WebCore::IDBLevelDBCoding::IndexMetaDataKey::encode):
970         (WebCore::IDBLevelDBCoding::IndexMetaDataKey::compare):
971         (WebCore::IDBLevelDBCoding::IndexMetaDataKey::indexId):
972         (WebCore::IDBLevelDBCoding::ObjectStoreFreeListKey::ObjectStoreFreeListKey):
973         (WebCore::IDBLevelDBCoding::ObjectStoreFreeListKey::decode):
974         (WebCore::IDBLevelDBCoding::ObjectStoreFreeListKey::encode):
975         (WebCore::IDBLevelDBCoding::ObjectStoreFreeListKey::objectStoreId):
976         (WebCore::IDBLevelDBCoding::ObjectStoreFreeListKey::compare):
977         (WebCore::IDBLevelDBCoding::IndexFreeListKey::IndexFreeListKey):
978         (WebCore::IDBLevelDBCoding::IndexFreeListKey::decode):
979         (WebCore::IDBLevelDBCoding::IndexFreeListKey::encode):
980         (WebCore::IDBLevelDBCoding::IndexFreeListKey::compare):
981         (WebCore::IDBLevelDBCoding::IndexFreeListKey::objectStoreId):
982         (WebCore::IDBLevelDBCoding::IndexFreeListKey::indexId):
983         (WebCore::IDBLevelDBCoding::ObjectStoreNamesKey::decode):
984         (WebCore::IDBLevelDBCoding::ObjectStoreNamesKey::encode):
985         (WebCore::IDBLevelDBCoding::ObjectStoreNamesKey::compare):
986         (WebCore::IDBLevelDBCoding::IndexNamesKey::IndexNamesKey):
987         (WebCore::IDBLevelDBCoding::IndexNamesKey::decode):
988         (WebCore::IDBLevelDBCoding::IndexNamesKey::encode):
989         (WebCore::IDBLevelDBCoding::IndexNamesKey::compare):
990         (WebCore::IDBLevelDBCoding::ObjectStoreDataKey::decode):
991         (WebCore::IDBLevelDBCoding::ObjectStoreDataKey::encode):
992         (WebCore::IDBLevelDBCoding::ObjectStoreDataKey::compare):
993         (WebCore::IDBLevelDBCoding::ObjectStoreDataKey::userKey):
994         (WebCore::IDBLevelDBCoding::ExistsEntryKey::decode):
995         (WebCore::IDBLevelDBCoding::ExistsEntryKey::encode):
996         (WebCore::IDBLevelDBCoding::ExistsEntryKey::compare):
997         (WebCore::IDBLevelDBCoding::ExistsEntryKey::userKey):
998         (WebCore::IDBLevelDBCoding::IndexDataKey::IndexDataKey):
999         (WebCore::IDBLevelDBCoding::IndexDataKey::decode):
1000         (WebCore::IDBLevelDBCoding::IndexDataKey::encode):
1001         (WebCore::IDBLevelDBCoding::IndexDataKey::encodeMaxKey):
1002         (WebCore::IDBLevelDBCoding::IndexDataKey::compare):
1003         (WebCore::IDBLevelDBCoding::IndexDataKey::databaseId):
1004         (WebCore::IDBLevelDBCoding::IndexDataKey::objectStoreId):
1005         (WebCore::IDBLevelDBCoding::IndexDataKey::indexId):
1006         (WebCore::IDBLevelDBCoding::IndexDataKey::userKey):
1007         * storage/IDBLevelDBCoding.h: Added.
1008         (WebCore::IDBLevelDBCoding::DatabaseNameKey::origin):
1009         (WebCore::IDBLevelDBCoding::DatabaseNameKey::databaseName):
1010         (WebCore::IDBLevelDBCoding::IndexMetaDataKey::metaDataType):
1011         (WebCore::IDBLevelDBCoding::ObjectStoreNamesKey::objectStoreName):
1012         (WebCore::IDBLevelDBCoding::IndexNamesKey::indexName):
1013
1014 2011-04-27  Yury Semikhatsky  <yurys@chromium.org>
1015
1016         Reviewed by Pavel Feldman.
1017
1018         Web Inspector: expose exception details when script is paused on exception
1019         https://bugs.webkit.org/show_bug.cgi?id=59591
1020
1021         When script is paused on an exception, the exception value is added as <exception>
1022         property in the local scope and the breakpoint details message says
1023         "Paused on excepion: '<exception to strin value>'."
1024
1025         * English.lproj/localizedStrings.js:
1026         * inspector/front-end/ScopeChainSidebarPane.js:
1027         (WebInspector.ScopeChainSidebarPane.prototype.update):
1028         * inspector/front-end/ScriptsPanel.js:
1029         (WebInspector.ScriptsPanel.prototype._debuggerPaused.else.didGetSourceLocation):
1030         (WebInspector.ScriptsPanel.prototype._debuggerPaused):
1031
1032 2011-04-26  Yury Semikhatsky  <yurys@chromium.org>
1033
1034         Reviewed by Pavel Feldman.
1035
1036         Web Inspector: [protocol] Paused event should expose exception value that caused it
1037         https://bugs.webkit.org/show_bug.cgi?id=58996
1038
1039         Debug.pause event now contains an optional reference to the exception
1040         object in case script execution is paused on a JavaScript exception.
1041
1042         Also JavaScript call frames are passed directly into the injected script when
1043         we need to wrap them for passing to the front-end. This change breaks cyclic
1044         dependency ScriptDebugServer->InspectorDebuggerAgent->InjectedScript->InjectedScriptHost->ScriptDebugServer
1045
1046         * bindings/js/JSInjectedScriptHostCustom.cpp:
1047         * bindings/js/ScriptDebugServer.cpp:
1048         (WebCore::ScriptDebugServer::dispatchDidPause):
1049         * bindings/js/ScriptDebugServer.h:
1050         * bindings/v8/ScriptDebugServer.cpp:
1051         (WebCore::ScriptDebugServer::breakProgram):
1052         (WebCore::ScriptDebugServer::editScriptSource):
1053         (WebCore::ScriptDebugServer::breakProgramCallback):
1054         (WebCore::ScriptDebugServer::handleV8DebugEvent):
1055         * bindings/v8/ScriptDebugServer.h:
1056         * bindings/v8/custom/V8InjectedScriptHostCustom.cpp:
1057         * inspector/InjectedScript.cpp:
1058         (WebCore::InjectedScript::evaluateOnCallFrame):
1059         (WebCore::InjectedScript::wrapCallFrames):
1060         * inspector/InjectedScript.h:
1061         * inspector/InjectedScriptHost.cpp:
1062         * inspector/InjectedScriptHost.h:
1063         (WebCore::InjectedScriptHost::init):
1064         * inspector/InjectedScriptHost.idl:
1065         * inspector/InjectedScriptSource.js:
1066         (.):
1067         * inspector/Inspector.json:
1068         * inspector/InspectorAgent.cpp:
1069         (WebCore::InspectorAgent::InspectorAgent):
1070         * inspector/InspectorDebuggerAgent.cpp:
1071         (WebCore::InspectorDebuggerAgent::evaluateOnCallFrame):
1072         (WebCore::InspectorDebuggerAgent::currentCallFrames):
1073         (WebCore::InspectorDebuggerAgent::wrapCallFrames):
1074         (WebCore::InspectorDebuggerAgent::didPause):
1075         (WebCore::InspectorDebuggerAgent::didContinue):
1076         (WebCore::InspectorDebuggerAgent::clear):
1077         * inspector/InspectorDebuggerAgent.h:
1078         * inspector/ScriptDebugListener.h:
1079         * inspector/WorkerInspectorController.cpp:
1080         (WebCore::WorkerInspectorController::WorkerInspectorController):
1081
1082 2011-04-27  Pavel Feldman  <pfeldman@google.com>
1083
1084         Reviewed by Yury Semikhatsky.
1085
1086         Web Inspector: implement incremental CSS editing in the structure view.
1087         https://bugs.webkit.org/show_bug.cgi?id=59455
1088
1089         * inspector/front-end/StylesSidebarPane.js:
1090         (WebInspector.StylePropertyTreeElement.prototype):
1091
1092 2011-04-27  Mihai Parparita  <mihaip@chromium.org>
1093
1094         Reviewed by Eric Seidel.
1095
1096         Frame.h shouldn't include Document.h
1097         https://bugs.webkit.org/show_bug.cgi?id=59560
1098
1099         Frame can use a forward-declared Document if we move
1100         Frame::displayStringModifiedByEncoding's implementation out of the
1101         header.
1102                                 Size  #includes  Size * #includes
1103         Before: page/Frame.h:   0.746       653           487.138
1104                 dom/Document.h: 0.220      1306           287.320
1105         
1106         After:  page/Frame.h:   0.646       653           421.838
1107                 dom/Document.h: 0.220      1189           261.580
1108
1109         * WebCore.exp.in:
1110         * bindings/ScriptControllerBase.cpp:
1111         * bindings/generic/BindingSecurityBase.cpp:
1112         * bindings/v8/V8Proxy.cpp:
1113         * bindings/v8/custom/V8XMLHttpRequestCustom.cpp:
1114         * dom/CharacterData.cpp:
1115         * dom/UserTypingGestureIndicator.cpp:
1116         * editing/chromium/SelectionControllerChromium.cpp:
1117         * inspector/InspectorDOMStorageResource.cpp:
1118         * inspector/InspectorInstrumentation.h:
1119         * loader/PingLoader.cpp:
1120         * loader/SubresourceLoader.cpp:
1121         * loader/appcache/DOMApplicationCache.cpp:
1122         * loader/cache/CachedResourceRequest.cpp:
1123         * page/Frame.cpp:
1124         (WebCore::Frame::displayStringModifiedByEncoding):
1125         * page/Frame.h:
1126         * page/Geolocation.cpp:
1127         * page/Location.cpp:
1128         * page/Navigator.cpp:
1129         * page/PageGroupLoadDeferrer.cpp:
1130         * page/PerformanceTiming.cpp:
1131         * xml/XSLTProcessorLibxslt.cpp:
1132
1133 2011-04-27  James Robinson  <jamesr@chromium.org>
1134
1135         Reviewed by Eric Seidel.
1136
1137         Fix OwnPtr strict errors in RenderStyle and make StyleRareInheritedData::textShadow an OwnPtr
1138         https://bugs.webkit.org/show_bug.cgi?id=59377
1139
1140         This cleans up some strict OwnPtr<> violations around text and box shadow data.  ShadowData's linked list data
1141         structure now uses OwnPtr<>s to manage memory - each entry in the list has ownership of the next ShadowData.
1142
1143         * css/CSSStyleSelector.cpp:
1144         (WebCore::CSSStyleSelector::applyProperty):
1145         * page/animation/AnimationBase.cpp:
1146         (WebCore::blendFunc):
1147         (WebCore::PropertyWrapperShadow::PropertyWrapperShadow):
1148         (WebCore::PropertyWrapperShadow::blend):
1149         * rendering/style/RenderStyle.cpp:
1150         (WebCore::RenderStyle::setTextShadow):
1151         (WebCore::RenderStyle::setBoxShadow):
1152         * rendering/style/RenderStyle.h:
1153         (WebCore::InheritedFlags::textShadow):
1154         * rendering/style/ShadowData.cpp:
1155         (WebCore::ShadowData::ShadowData):
1156         * rendering/style/ShadowData.h:
1157         (WebCore::ShadowData::ShadowData):
1158         (WebCore::ShadowData::next):
1159         (WebCore::ShadowData::setNext):
1160         * rendering/style/StyleRareInheritedData.cpp:
1161         (WebCore::StyleRareInheritedData::StyleRareInheritedData):
1162         (WebCore::StyleRareInheritedData::~StyleRareInheritedData):
1163         * rendering/style/StyleRareInheritedData.h:
1164         * rendering/style/StyleRareNonInheritedData.cpp:
1165         (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
1166
1167 2011-04-26  David Levin  <levin@chromium.org>
1168
1169         Reviewed by Eric Seidel.
1170
1171         Fix some strict PassOwnPtr issues in WebCore.
1172         https://bugs.webkit.org/show_bug.cgi?id=59563
1173
1174         * css/SVGCSSStyleSelector.cpp:
1175         (WebCore::CSSStyleSelector::applySVGProperty):
1176         * html/canvas/WebGLRenderingContext.cpp:
1177         (WebCore::WebGLRenderingContext::create):
1178         (WebCore::WebGLRenderingContext::~WebGLRenderingContext):
1179         * platform/text/TextCodecLatin1.cpp:
1180         (WebCore::newStreamingTextDecoderWindowsLatin1):
1181         * platform/text/TextCodecUTF16.cpp:
1182         (WebCore::newStreamingTextDecoderUTF16LE):
1183         (WebCore::newStreamingTextDecoderUTF16BE):
1184         * platform/text/TextCodecUserDefined.cpp:
1185         (WebCore::newStreamingTextDecoderUserDefined):
1186         * platform/text/mac/TextCodecMac.cpp:
1187         (WebCore::newTextCodecMac):
1188         * workers/Worker.cpp:
1189         (WebCore::Worker::notifyFinished):
1190
1191 2011-04-26  Justin Novosad  <junov@chromium.org>
1192
1193         Reviewed by Kenneth Russell.
1194
1195         [Chromium] Expose skia gpu canvas rendering as a runtime flag
1196         https://bugs.webkit.org/show_bug.cgi?id=58683
1197         Replace the SKIA_GPU compile flag by the pre-existing
1198         acceleratedDrawingEnabled flag. Most code changes are trivial:
1199         compile-time conditionals on SKIA_GPU were either replaced with
1200         a run-time check, or a compile time check on USE(SKIA) 
1201
1202         No new tests. Covered by existing tests.
1203
1204         * html/canvas/CanvasRenderingContext2D.cpp:
1205         (WebCore::CanvasRenderingContext2D::setGlobalCompositeOperation):
1206         * page/Page.cpp:
1207         (WebCore::Page::sharedGraphicsContext3D):
1208         Added check for the acceleratedDrawing flag.
1209         * platform/graphics/chromium/DrawingBufferChromium.cpp:
1210         (WebCore::DrawingBuffer::DrawingBuffer):
1211         (WebCore::DrawingBuffer::publishToPlatformLayer):
1212         * platform/graphics/gpu/DrawingBuffer.h:
1213         * platform/graphics/gpu/SharedGraphicsContext3D.cpp:
1214         (WebCore::SharedGraphicsContext3D::create):
1215         On Skia builds, this methos now receives a bool arg to turn on
1216         GPU-accelerated skia rendering
1217         (WebCore::SharedGraphicsContext3D::SharedGraphicsContext3D):
1218         (WebCore::SharedGraphicsContext3D::~SharedGraphicsContext3D):
1219         (WebCore::SharedGraphicsContext3D::grContext):
1220         * platform/graphics/gpu/SharedGraphicsContext3D.h:
1221         * platform/graphics/skia/ImageSkia.cpp:
1222         (WebCore::computeResamplingMode):
1223         (WebCore::paintSkBitmap):
1224         (WebCore::Image::drawPattern):
1225         * platform/graphics/skia/PlatformContextSkia.cpp:
1226         (WebCore::PlatformContextSkia::PlatformContextSkia):
1227         (WebCore::PlatformContextSkia::~PlatformContextSkia):
1228         (WebCore::PlatformContextSkia::isNativeFontRenderingAllowed):
1229         (WebCore::PlatformContextSkia::setSharedGraphicsContext3D):
1230         (WebCore::PlatformContextSkia::prepareForSoftwareDraw):
1231         (WebCore::PlatformContextSkia::prepareForHardwareDraw):
1232         (WebCore::PlatformContextSkia::syncSoftwareCanvas):
1233         (WebCore::PlatformContextSkia::markDirtyRect):
1234         * platform/graphics/skia/PlatformContextSkia.h:
1235         (WebCore::PlatformContextSkia::accelerationMode):
1236         (WebCore::PlatformContextSkia::useGPU):
1237         (WebCore::PlatformContextSkia::useSkiaGPU):
1238
1239 2011-04-26  Pavel Feldman  <pfeldman@chromium.org>
1240
1241         Not reviewed: restore inspector test disabled in r84913.
1242
1243         Test: http/tests/inspector-enabled/dom-storage-open.html
1244
1245         * inspector/InspectorDOMStorageAgent.cpp:
1246         (WebCore::InspectorDOMStorageAgent::clearFrontend):
1247
1248 2011-04-26  Kenichi Ishibashi  <bashi@chromium.org>
1249
1250         Reviewed by Tony Chang.
1251
1252         [Chromium] Vertical positions are off for some Arabic glyphs on Linux
1253         https://bugs.webkit.org/show_bug.cgi?id=59182
1254
1255         Use vertical offsets of the shaping results.
1256
1257         Test: platform/chromium-linux/fast/text/international/arabic-vertical-offset.html
1258
1259         * platform/graphics/chromium/ComplexTextControllerLinux.cpp:
1260         (WebCore::ComplexTextController::ComplexTextController):
1261         Added initialization of m_startingY.
1262         (WebCore::ComplexTextController::nextScriptRun):
1263         Followed the change in handling positions.
1264         (WebCore::ComplexTextController::deleteGlyphArrays): Ditto.
1265         (WebCore::ComplexTextController::createGlyphArrays): Ditto.
1266         (WebCore::ComplexTextController::resetGlyphArrays): Ditto.
1267         (WebCore::ComplexTextController::setGlyphPositions):
1268         Changed to use vertical offsets as same as horizontal offsets.
1269         * platform/graphics/chromium/ComplexTextControllerLinux.h:
1270         Removed m_xPositions and Added m_positions and m_startingY.
1271         (WebCore::ComplexTextController::positions): Added.
1272         * platform/graphics/chromium/FontLinux.cpp:
1273         Followed the change in ComplexTextController.
1274         (WebCore::Font::drawComplexText): Ditto.
1275         (WebCore::Font::floatWidthForComplexText): Ditto.
1276         (WebCore::glyphIndexForXPositionInScriptRun): Ditto.
1277         (WebCore::Font::offsetForPositionForComplexText): Ditto.
1278         (WebCore::Font::selectionRectForComplexText): Ditto.
1279
1280 2011-04-26  Levi Weintraub  <leviw@chromium.org>
1281
1282         Reviewed by Eric Seidel.
1283
1284         Root element should establish a new block formatting context
1285         https://bugs.webkit.org/show_bug.cgi?id=54573
1286
1287         Always expanding the root renderer to include overhanging floats.
1288
1289         Test: fast/block/float/float-overhangs-root.html
1290
1291         * rendering/RenderBlock.cpp:
1292         (WebCore::RenderBlock::expandsToEncloseOverhangingFloats):
1293
1294 2011-04-26  Dawit Alemayehu  <adawit@kde.org>
1295
1296         Reviewed by Andreas Kling.
1297
1298         [Qt] Improper rendering of <button> tag when it contains a <br>
1299         https://bugs.webkit.org/show_bug.cgi?id=50521
1300
1301         Test: platform/qt/fast/forms/button-line-break.html
1302
1303         * platform/qt/RenderThemeQt.cpp:
1304         (WebCore::RenderThemeQt::computeSizeBasedOnStyle):
1305         (WebCore::RenderThemeQt::setButtonPadding):
1306
1307 2011-04-26  James Robinson  <jamesr@chromium.org>
1308
1309         Reviewed by Kenneth Russell.
1310
1311         [chromium] Only reset tiles if the LayerRendererChromium is actually changing
1312         https://bugs.webkit.org/show_bug.cgi?id=59572
1313
1314         http://trac.webkit.org/changeset/84981/ caused us to reset the tiles
1315         when LayerRendererChromium was set.  We set this pointer every frame
1316         and should only reset the tiles if the new LayerRendererChromium is
1317         different from the old one (indicating a context loss), not just reset
1318         on every frame.
1319
1320         * platform/graphics/chromium/LayerTilerChromium.cpp:
1321         (WebCore::LayerTilerChromium::setLayerRenderer):
1322         * platform/graphics/chromium/LayerTilerChromium.h:
1323
1324 2011-04-26  Dinesh K Garg  <dineshg@codeaurora.org>
1325
1326         Reviewed by Eric Seidel.
1327
1328         beginElement broken by setAttribute
1329         https://bugs.webkit.org/show_bug.cgi?id=26019
1330
1331         Test: svg/animations/animate-beginElementAt.svg
1332
1333         * svg/SVGAnimationElement.cpp:
1334         (WebCore::SVGAnimationElement::attributeChanged):
1335         Reset the animation state here as the rest of the code reads it and would still
1336         think we are animating when we are not.
1337
1338         * svg/animation/SVGSMILElement.h:
1339         (WebCore::SVGSMILElement::setInactive): Helper function to reset the state.
1340
1341 2011-04-26  Sheriff Bot  <webkit.review.bot@gmail.com>
1342
1343         Unreviewed, rolling out r84989.
1344         http://trac.webkit.org/changeset/84989
1345         https://bugs.webkit.org/show_bug.cgi?id=59566
1346
1347         REGRESSION (r84989): Lots of vertical text tests failing on
1348         windows (Requested by weinig on #webkit).
1349
1350         * platform/graphics/FontPlatformData.h:
1351         * platform/graphics/win/FontCacheWin.cpp:
1352         (WebCore::FontCache::getFontDataForCharacters):
1353         (WebCore::FontCache::createFontPlatformData):
1354         * platform/graphics/win/FontCustomPlatformData.cpp:
1355         (WebCore::FontCustomPlatformData::fontPlatformData):
1356         * platform/graphics/win/FontPlatformDataCGWin.cpp:
1357         (WebCore::FontPlatformData::FontPlatformData):
1358         * platform/graphics/win/FontPlatformDataWin.cpp:
1359         (WebCore::FontPlatformData::FontPlatformData):
1360
1361 2011-04-26  Sam Weinig  <sam@webkit.org>
1362
1363         Reviewed by Eric Seidel.
1364
1365         Try again:
1366             Remove JSDOMWrapperWithGlobalPointer now that all JSDOMWrappers have global objects
1367             https://bugs.webkit.org/show_bug.cgi?id=59310
1368
1369         * bindings/js/JSDOMBinding.h:
1370         (WebCore::DOMConstructorObject::DOMConstructorObject):
1371         * bindings/js/JSDOMWrapper.h:
1372         (WebCore::JSDOMWrapper::globalObject):
1373         (WebCore::JSDOMWrapper::scriptExecutionContext):
1374         (WebCore::JSDOMWrapper::createStructure):
1375         (WebCore::JSDOMWrapper::JSDOMWrapper):
1376         * bindings/scripts/CodeGeneratorJS.pm:
1377
1378 2011-04-26  Sam Weinig  <sam@webkit.org>
1379
1380         Reviewed by David Hyatt.
1381
1382         Remove Datagrid from the tree
1383         https://bugs.webkit.org/show_bug.cgi?id=59543
1384
1385         * Android.derived.jscbindings.mk:
1386         * Android.derived.v8bindings.mk:
1387         * Android.jscbindings.mk:
1388         * Android.v8bindings.mk:
1389         * CMakeLists.txt:
1390         * CodeGenerators.pri:
1391         * Configurations/FeatureDefines.xcconfig:
1392         * DerivedSources.cpp:
1393         * DerivedSources.make:
1394         * GNUmakefile.am:
1395         * GNUmakefile.list.am:
1396         * UseJSC.cmake:
1397         * WebCore.gypi:
1398         * WebCore.pro:
1399         * WebCore.vcproj/WebCore.vcproj:
1400         * WebCore.xcodeproj/project.pbxproj:
1401         * bindings/js/JSBindingsAllInOne.cpp:
1402         * bindings/js/JSDataGridColumnListCustom.cpp: Removed.
1403         * bindings/js/JSDataGridDataSource.cpp: Removed.
1404         * bindings/js/JSDataGridDataSource.h: Removed.
1405         * bindings/js/JSHTMLDataGridElementCustom.cpp: Removed.
1406         * bindings/v8/V8DataGridDataSource.cpp: Removed.
1407         * bindings/v8/V8DataGridDataSource.h: Removed.
1408         * bindings/v8/custom/V8DataGridColumnListCustom.cpp: Removed.
1409         * bindings/v8/custom/V8HTMLDataGridElementCustom.cpp: Removed.
1410         * css/CSSStyleSelector.cpp:
1411         * css/CSSStyleSelector.h:
1412         * css/html.css:
1413         (input, textarea, keygen, select, button, isindex):
1414         (select:disabled, keygen:disabled, optgroup:disabled, option:disabled):
1415         * editing/htmlediting.cpp:
1416         (WebCore::canHaveChildrenForEditing):
1417         * features.pri:
1418         * html/DOMDataGridDataSource.cpp: Removed.
1419         * html/DOMDataGridDataSource.h: Removed.
1420         * html/DataGridColumn.cpp: Removed.
1421         * html/DataGridColumn.h: Removed.
1422         * html/DataGridColumn.idl: Removed.
1423         * html/DataGridColumnList.cpp: Removed.
1424         * html/DataGridColumnList.h: Removed.
1425         * html/DataGridColumnList.idl: Removed.
1426         * html/DataGridDataSource.h: Removed.
1427         * html/HTMLDataGridCellElement.cpp: Removed.
1428         * html/HTMLDataGridCellElement.h: Removed.
1429         * html/HTMLDataGridCellElement.idl: Removed.
1430         * html/HTMLDataGridColElement.cpp: Removed.
1431         * html/HTMLDataGridColElement.h: Removed.
1432         * html/HTMLDataGridColElement.idl: Removed.
1433         * html/HTMLDataGridElement.cpp: Removed.
1434         * html/HTMLDataGridElement.h: Removed.
1435         * html/HTMLDataGridElement.idl: Removed.
1436         * html/HTMLDataGridRowElement.cpp: Removed.
1437         * html/HTMLDataGridRowElement.h: Removed.
1438         * html/HTMLDataGridRowElement.idl: Removed.
1439         * html/HTMLElement.cpp:
1440         (WebCore::HTMLElement::ieForbidsInsertHTML):
1441         * html/HTMLElementsAllInOne.cpp:
1442         * html/HTMLTagNames.in:
1443         * page/DOMWindow.idl:
1444         * rendering/RenderBox.cpp:
1445         (WebCore::RenderBox::sizesToIntrinsicLogicalWidth):
1446         * rendering/RenderDataGrid.cpp: Removed.
1447         * rendering/RenderDataGrid.h: Removed.
1448         * rendering/RenderingAllInOne.cpp:
1449
1450 2011-04-26  Chun-Lung Huang  <alvincl.huang@gmail.com>
1451
1452         Reviewed by Adele Peterson.
1453
1454         On WebKit (Windows), glyphs in vertical text tests are rotated 90
1455         degrees clockwise.  https://bugs.webkit.org/show_bug.cgi?id=48459
1456
1457         This platform dependent patch makes WebKit (Windows) show the
1458         vertical writing text correctly.  Job was done by adding a prefix '@'
1459         in front of the font family name (Windows Only). No new tests added.
1460         Some layout tests images:
1461         http://www.flickr.com/photos/burorly/sets/72157625585506341/
1462
1463         * platform/graphics/FontPlatformData.h:
1464         * platform/graphics/win/FontCacheWin.cpp:
1465         (WebCore::FontCache::getFontDataForCharacters):
1466         (WebCore::FontCache::createFontPlatformData):
1467         * platform/graphics/win/FontCustomPlatformData.cpp:
1468         (WebCore::FontCustomPlatformData::fontPlatformData):
1469         * platform/graphics/win/FontPlatformDataCGWin.cpp:
1470         (WebCore::FontPlatformData::FontPlatformData):
1471         * platform/graphics/win/FontPlatformDataWin.cpp:
1472         (WebCore::FontPlatformData::FontPlatformData):
1473
1474 2011-04-26  Jer Noble  <jer.noble@apple.com>
1475
1476         Reviewed by Brady Eidson.
1477
1478         HTML5 video fullscreen transition causes an audio stutter
1479         https://bugs.webkit.org/show_bug.cgi?id=59544
1480
1481         AVFoundation will momentarily stutter when you disconnect a AVPlayerLayer 
1482         from its AVPlayer.  Since you shouldn't necessarily have to destroy the
1483         layer to render it invisible, instead just set the layer as hidden.
1484
1485         * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp:
1486         (WebCore::MediaPlayerPrivateAVFoundation::setVisible): Call through to platformSetVisible().
1487         * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.h:
1488         * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundationObjC.h:
1489         * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundationObjC.mm:
1490         (WebCore::MediaPlayerPrivateAVFoundationObjC::platformSetVisible): Added.
1491
1492 2011-04-26  Christian Dywan  <christian@lanedo.com>
1493
1494         Reviewed by Eric Seidel.
1495
1496         Extra separator after Select All in context menu
1497         https://bugs.webkit.org/show_bug.cgi?id=54092
1498
1499         * page/ContextMenuController.cpp: Move separator to non-GTK+
1500             port guards since it is for the spelling options menu
1501             which the GTK+ port doesn't use.
1502
1503 2011-04-26  James Robinson  <jamesr@chromium.org>
1504
1505         Reviewed by Kenneth Russell.
1506
1507         [chromium] Clear out LayerTilerChromium's tiles on lost context
1508         https://bugs.webkit.org/show_bug.cgi?id=59233
1509
1510         Clears out the LayerTilerChromium's tile set when the LayerRendererChromium is reset.  In this case the tiles are
1511         no longer valid since they exist in the previous LayerRendererChromium.
1512
1513         Will be tested by a chrome test since we don't have any way to exercise the context lost case in layout tests.
1514
1515         * platform/graphics/chromium/LayerTilerChromium.h:
1516         (WebCore::LayerTilerChromium::setLayerRenderer):
1517
1518 2011-04-26  Martin Robinson  <mrobinson@igalia.com>
1519
1520         Reviewed by Dirk Schulze.
1521
1522         [GTK] Flash in divs with overflow: auto is not positioned and clipped properly
1523         https://bugs.webkit.org/show_bug.cgi?id=57644
1524
1525         Manual test: plugins/windowed-in-iframe-2.html
1526
1527         * manual-tests/plugins/windowed-in-iframe-2.html: Added.
1528         * platform/gtk/WidgetGtk.cpp:
1529         (WebCore::Widget::setFrameRect): Like the Qt port, we notify the widget via frameRectsChanged.
1530         * plugins/PluginView.h: Added helper method to set the allocation and clip.
1531         * plugins/gtk/PluginViewGtk.cpp:
1532         (WebCore::PluginView::setNPWindowIfNeeded):Call the helper method instead of setting
1533         the allocation immediately. Bring this method into sync with the implementation in
1534         the Qt port.
1535         (WebCore::PluginView::updateWidgetAllocationAndClip): Added.
1536         (WebCore::PluginView::plugAddedCallback): Call the new helper method.
1537
1538 2011-04-26  Martin Robinson  <mrobinson@igalia.com>
1539
1540         Reviewed by Eric Seidel.
1541
1542         [GTK]  fast/block/float/overhanging-tall-block.html crashes in the bots
1543         https://bugs.webkit.org/show_bug.cgi?id=58818
1544
1545         Prevent allocating scratch buffers larger than the target GdkDrawable
1546         when creating a WidgetRenderingContext. This prevents incredibly large
1547         widgets from crashing the X Server. This change also allowed greatly
1548         simplifying the way that the painting offset is calculated.
1549
1550         * platform/gtk/WidgetRenderingContext.cpp:
1551         (WebCore::WidgetRenderingContext::WidgetRenderingContext): Never allocate a pixmap
1552         larger than the target GdkDrawable.
1553         (WebCore::WidgetRenderingContext::~WidgetRenderingContext): Calculate the offset of the
1554         blit by looking at the location of the target rect itself, rather than delaying the
1555         calculation up to this point.
1556         (WebCore::WidgetRenderingContext::calculateClipRect): Added.
1557         (WebCore::WidgetRenderingContext::gtkPaintBox): Use the new calculateClipRectHelper.
1558         (WebCore::WidgetRenderingContext::gtkPaintFlatBox): Ditto.
1559         (WebCore::WidgetRenderingContext::gtkPaintFocus): Ditto.
1560         (WebCore::WidgetRenderingContext::gtkPaintSlider): Ditto.
1561         (WebCore::WidgetRenderingContext::gtkPaintCheck): Ditto.
1562         (WebCore::WidgetRenderingContext::gtkPaintOption): Ditto.
1563         (WebCore::WidgetRenderingContext::gtkPaintShadow): Ditto.
1564         (WebCore::WidgetRenderingContext::gtkPaintArrow): Ditto.
1565         (WebCore::WidgetRenderingContext::gtkPaintVLine): Ditto.
1566         * platform/gtk/WidgetRenderingContext.h: Remove some now unused members. Add
1567         a member to store the IntSize mapping from the coordinates of the target to the coordinates
1568         of the scratch buffer.
1569
1570 2011-04-26  Patrick Gansterer  <paroga@webkit.org>
1571
1572         Reviewed by Adam Barth.
1573
1574         Respect charset in handleDataURL
1575         https://bugs.webkit.org/show_bug.cgi?id=47746
1576
1577         Original patch by Kwang Yul Seo <skyul@company100.net>
1578
1579         We must use TextEncoding(charset) to encode data URL again. Otherwise TextEncoding::encode()
1580         returns an empty string because encoding name is not specified.
1581
1582         Also use "US-ASCII" as fallback charset as extractCharsetFromMediaType can be empty.
1583
1584         This change fixes over 130 layout tests when running GTK port with cURL network backend.
1585
1586         * platform/network/DataURL.cpp:
1587         (WebCore::handleDataURL):
1588
1589 2011-04-26  Anders Carlsson  <andersca@apple.com>
1590
1591         Fix clang++ build.
1592
1593         You can never have too many casts!
1594
1595         * accessibility/mac/AccessibilityObjectWrapper.mm:
1596         (-[AccessibilityObjectWrapper position]):
1597         * editing/mac/SelectionControllerMac.mm:
1598         (WebCore::accessibilityConvertScreenRect):
1599
1600 2011-04-26  Chris Rogers  <crogers@google.com>
1601
1602         Reviewed by Kenneth Russell.
1603
1604         Fix web audio build on mac port
1605         https://bugs.webkit.org/show_bug.cgi?id=59355
1606
1607         No new tests since audio API is not yet implemented.
1608
1609         * WebCore.xcodeproj/project.pbxproj:
1610         * bindings/js/JSAudioContextCustom.cpp:
1611         (WebCore::JSAudioContext::visitChildren):
1612         * bindings/js/JSJavaScriptAudioNodeCustom.cpp:
1613         (WebCore::JSJavaScriptAudioNode::visitChildren):
1614         * webaudio/AudioContext.idl:
1615
1616 2011-04-26  Chris Rogers  <crogers@google.com>
1617
1618         Reviewed by Kenneth Russell.
1619
1620         Add FFTFrame implementation for FFmpeg
1621         https://bugs.webkit.org/show_bug.cgi?id=59408
1622
1623         No new tests since audio API is not yet implemented.
1624
1625         * WebCore.gyp/WebCore.gyp:
1626         * WebCore.gypi:
1627         * platform/audio/FFTFrame.h:
1628         * platform/audio/FFTFrameStub.cpp:
1629         * platform/audio/ffmpeg: Added.
1630         * platform/audio/ffmpeg/FFTFrameFFMPEG.cpp: Added.
1631         (WebCore::FFTFrame::FFTFrame):
1632         (WebCore::FFTFrame::initialize):
1633         (WebCore::FFTFrame::cleanup):
1634         (WebCore::FFTFrame::~FFTFrame):
1635         (WebCore::FFTFrame::multiply):
1636         (WebCore::FFTFrame::doFFT):
1637         (WebCore::FFTFrame::doInverseFFT):
1638         (WebCore::FFTFrame::realData):
1639         (WebCore::FFTFrame::imagData):
1640         (WebCore::FFTFrame::getUpToDateComplexData):
1641         (WebCore::FFTFrame::contextForSize):
1642         * platform/audio/mac/FFTFrameMac.cpp:
1643         * webaudio/ConvolverNode.cpp:
1644
1645 2011-04-26  Jeff Miller  <jeffm@apple.com>
1646
1647         Add a newline at the end of SVGFEDropShadowElement.idl.
1648
1649         * svg/SVGFEDropShadowElement.idl:
1650
1651 2011-04-26  Mihai Parparita  <mihaip@chromium.org>
1652
1653         Reviewed by Eric Seidel.
1654
1655         InlineBox.h shouldn't include RenderBR.h
1656         https://bugs.webkit.org/show_bug.cgi?id=59480
1657
1658         Per bug 59348 RenderBR.h is a "top header" by include * size, because
1659         InlineBox.h includes it. There's no reason why it has to.
1660
1661         * rendering/InlineBox.h:
1662         * rendering/InlineTextBox.cpp:
1663         * rendering/RenderBlock.h:
1664
1665 2011-04-26  Sam Weinig  <sam@webkit.org>
1666
1667         Nope, roll out r84950 and r84952. Working on a laptop is clearly not something
1668         I should do.
1669
1670         * bindings/js/JSDOMBinding.h:
1671         (WebCore::JSDOMWrapperWithGlobalPointer::globalObject):
1672         (WebCore::JSDOMWrapperWithGlobalPointer::scriptExecutionContext):
1673         (WebCore::JSDOMWrapperWithGlobalPointer::createStructure):
1674         (WebCore::JSDOMWrapperWithGlobalPointer::JSDOMWrapperWithGlobalPointer):
1675         (WebCore::DOMConstructorObject::DOMConstructorObject):
1676         * bindings/js/JSDOMWrapper.h:
1677         (WebCore::JSDOMWrapper::JSDOMWrapper):
1678         * bindings/scripts/CodeGeneratorJS.pm:
1679
1680 2011-04-26  Sam Weinig  <sam@webkit.org>
1681
1682         Fix build.
1683
1684         * bindings/js/JSDOMWrapper.h:
1685         (WebCore::JSDOMWrapper::globalObject):
1686
1687 2011-04-26  Sam Weinig  <sam@webkit.org>
1688
1689         Roll r84945 back in with infinite recursion removed.
1690
1691         * bindings/js/JSDOMBinding.h:
1692         (WebCore::DOMConstructorObject::DOMConstructorObject):
1693         * bindings/js/JSDOMWrapper.h:
1694         (WebCore::JSDOMWrapper::globalObject):
1695         (WebCore::JSDOMWrapper::scriptExecutionContext):
1696         (WebCore::JSDOMWrapper::createStructure):
1697         (WebCore::JSDOMWrapper::JSDOMWrapper):
1698         * bindings/scripts/CodeGeneratorJS.pm:
1699
1700 2011-04-26  Sam Weinig  <sam@webkit.org>
1701
1702         Rollout previous patch. It broke stuff.
1703
1704         * bindings/js/JSDOMBinding.h:
1705         (WebCore::JSDOMWrapperWithGlobalPointer::globalObject):
1706         (WebCore::JSDOMWrapperWithGlobalPointer::scriptExecutionContext):
1707         (WebCore::JSDOMWrapperWithGlobalPointer::createStructure):
1708         (WebCore::JSDOMWrapperWithGlobalPointer::JSDOMWrapperWithGlobalPointer):
1709         (WebCore::DOMConstructorObject::DOMConstructorObject):
1710         * bindings/js/JSDOMWrapper.h:
1711         (WebCore::JSDOMWrapper::JSDOMWrapper):
1712         * bindings/scripts/CodeGeneratorJS.pm:
1713
1714 2011-04-26  Sam Weinig  <sam@webkit.org>
1715
1716         Reviewed by Maciej Stachowiak.
1717
1718         Remove JSDOMWrapperWithGlobalPointer now that all JSDOMWrappers have global objects
1719         https://bugs.webkit.org/show_bug.cgi?id=59310
1720
1721         * bindings/js/JSDOMBinding.h:
1722         (WebCore::DOMConstructorObject::DOMConstructorObject):
1723         * bindings/js/JSDOMWrapper.h:
1724         (WebCore::JSDOMWrapper::globalObject):
1725         (WebCore::JSDOMWrapper::scriptExecutionContext):
1726         (WebCore::JSDOMWrapper::createStructure):
1727         (WebCore::JSDOMWrapper::JSDOMWrapper):
1728         Merge JSDOMWrapperWithGlobalPointer with JSDOMWrapper.
1729
1730         * bindings/scripts/CodeGeneratorJS.pm:
1731         Make JSDOMWrapper the base class.
1732
1733 2011-04-26  Dan Bernstein  <mitz@apple.com>
1734
1735         Reviewed by Mark Rowe.
1736
1737         Choose the compiler based on the Xcode version for Snow Leopard debug builds.
1738
1739         * Configurations/Base.xcconfig:
1740         * Configurations/CompilerVersion.xcconfig: Added.
1741
1742 2011-04-26  Adrienne Walker  <enne@google.com>
1743
1744         Reviewed by Geoffrey Garen.
1745
1746         Use OwnArrayPtr<T> instead of OwnPtr<T*> in ScopeTracer
1747         https://bugs.webkit.org/show_bug.cgi?id=59469
1748
1749         * platform/chromium/TraceEvent.h:
1750         (WebCore::internal::ScopeTracer::ScopeTracer):
1751
1752 2011-04-25  Geoffrey Garen  <ggaren@apple.com>
1753
1754         Reviewed by Oliver Hunt.
1755
1756         Nixed special finalizer handling for WebCore strings
1757         https://bugs.webkit.org/show_bug.cgi?id=59425
1758
1759         Not needed anymore, since weak handles have finalizers.
1760
1761         * WebCore.exp.in: Exports!
1762
1763         * bindings/js/DOMWrapperWorld.cpp:
1764         (WebCore::JSStringOwner::finalize):
1765         (WebCore::DOMWrapperWorld::DOMWrapperWorld): Use a weak handle finalizer,
1766         so we don't need special treatment anymore.
1767
1768         * bindings/js/DOMWrapperWorld.h:
1769         (WebCore::JSStringOwner::JSStringOwner):
1770         (WebCore::DOMWrapperWorld::stringWrapperOwner): Use a HashMap of Weak<T>
1771         instead of a WeakGCMap, so we can specify a custom finalizer.
1772
1773         * bindings/js/JSDOMBinding.cpp:
1774         (WebCore::jsStringSlowCase):
1775         * bindings/js/JSDOMBinding.h:
1776         (WebCore::jsString): Updated for string map change.
1777
1778 2011-04-26  David Kilzer  <ddkilzer@apple.com>
1779
1780         <http://webkit.org/b/59372> Restore user default for enabling HTTP pipelining
1781
1782         Reviewed by Antti Koivisto.
1783
1784         To enable HTTP pipelining post-SnowLeopard, use this command:
1785
1786             defaults write BUNDLE.ID WebKitEnableHTTPPipelining -bool YES
1787
1788         * platform/network/cf/ResourceRequestCFNet.cpp:
1789         (WebCore::readBooleanPreference): Re-added.  Originally added in
1790         r76756 and removed in r84120.
1791         (WebCore::initializeMaximumHTTPConnectionCountPerHost): Enable
1792         HTTP pipelining if use default is set to true.  Added macro
1793         guards to match those in ResourceRequestMac.mm.
1794
1795 2011-04-26  Antti Koivisto  <antti@apple.com>
1796
1797         Reviewed by Adele Peterson.
1798
1799         Don't strip fragments from file: urls in memory cache
1800         https://bugs.webkit.org/show_bug.cgi?id=59463
1801         <rdar://problem/9231130>
1802
1803         Some clients expect file: resources to be unique based on fragment identifier. 
1804         Limit the changes in http://trac.webkit.org/changeset/74107 to the HTTP protocol only
1805
1806         Test: fast/loader/file-protocol-fragment.html
1807
1808         * loader/cache/MemoryCache.cpp:
1809         (WebCore::MemoryCache::removeFragmentIdentifierIfNeeded):
1810
1811 2011-04-26  David Levin  <levin@chromium.org>
1812
1813         Reviewed by Darin Adler.
1814
1815         Fix more strict OwnPtr in WebCore (round N).
1816         https://bugs.webkit.org/show_bug.cgi?id=59464
1817
1818         * dom/Document.cpp:
1819         (WebCore::Document::Document):
1820         (WebCore::Document::attach):
1821         * fileapi/FileReader.cpp:
1822         (WebCore::FileReader::terminate):
1823         * loader/DocumentThreadableLoader.cpp:
1824         (WebCore::DocumentThreadableLoader::preflightFailure):
1825         * workers/DefaultSharedWorkerRepository.cpp:
1826         (WebCore::SharedWorkerConnectTask::create):
1827         (WebCore::SharedWorkerScriptLoader::load):
1828
1829 2011-04-26  Ruben  <chromium@hybridsource.org>
1830
1831         Reviewed by Tony Chang.
1832
1833         Change linux ifdefs for Chromium to Unix instead, allowing
1834         new Unix ports to be enabled by default
1835         https://bugs.webkit.org/show_bug.cgi?id=59297
1836
1837         No new tests, just changing preprocessor defines.
1838
1839         * bindings/js/JSInspectorFrontendHostCustom.cpp:
1840         * bindings/v8/custom/V8InspectorFrontendHostCustom.cpp:
1841         * dom/SelectElement.cpp:
1842         * loader/cache/CachedFont.cpp:
1843         * page/EventHandler.cpp:
1844         * page/chromium/EventHandlerChromium.cpp:
1845         * platform/Scrollbar.cpp:
1846         * platform/chromium/PlatformBridge.h:
1847         * platform/graphics/chromium/FontPlatformData.h:
1848         * platform/graphics/skia/FontCustomPlatformData.cpp:
1849         * platform/graphics/skia/FontCustomPlatformData.h:
1850
1851 2011-04-26  Ryosuke Niwa  <rniwa@webkit.org>
1852
1853         Reviewed by Dan Bernstein.
1854
1855         [RTL] Arabic/AB - after typing a date, cursors doesn't go back
1856         https://bugs.webkit.org/show_bug.cgi?id=49111
1857
1858         Even when the offset corresponds to a position visually left of the box
1859         and there aren't any inline boxes on the left, the previous/next position
1860         may still correspond to some position in the same line.
1861
1862         The bug was caused by our ignoring such cases. Fixed the bug by comparing
1863         previous/next position's inline box to the current box. If they match,
1864         then we stay on the same position because moving to the left visually at
1865         the left edge should not result in a position on the same line.
1866
1867         Also fixed a bug that WebKit uses offsets that are not extrema when moved to
1868         the left edge or to the right edge, and a bug that WebKit could not move to
1869         the left from 12^3 CBA abc to 123 C^BA abc (there is no offset between 3 and C).
1870
1871         Test cases are added to editing/selection/move-left-right.html
1872
1873         * editing/VisiblePosition.cpp:
1874         (WebCore::VisiblePosition::leftVisuallyDistinctCandidate):
1875         (WebCore::VisiblePosition::rightVisuallyDistinctCandidate):
1876
1877 2011-04-26  Gabor Loki  <loki@webkit.org>
1878
1879         Reviewed by Csaba Osztrogon√°c.
1880
1881         Speeding up SVG filters with multicore (SMP) support
1882         https://bugs.webkit.org/show_bug.cgi?id=43903
1883
1884         Some SVG filters execute a huge number of pixel manipulations, which
1885         cannot be sped up by graphics accelerators, since their algorithm is
1886         too complex. Using the power of Symmetric Multi Processing (SMP) we
1887         can split up a task to smaller (data independent) tasks, which can be
1888         executed independently.
1889
1890         The ParallelJobs framework provides a simple way for distributed
1891         programming. The framework is based on WebKit's threading infrastructure,
1892         Open Multi-Processing's (OpenMP) API, and libdispatch API.
1893
1894         * ForwardingHeaders/wtf/ParallelJobs.h: Added.
1895         * platform/graphics/filters/FETurbulence.cpp:
1896         (WebCore::FETurbulence::PaintingData::PaintingData):
1897         (WebCore::FETurbulence::noise2D):
1898         (WebCore::FETurbulence::calculateTurbulenceValueForPoint):
1899         (WebCore::FETurbulence::fillRegion):
1900         (WebCore::FETurbulence::fillRegionWorker):
1901         (WebCore::FETurbulence::apply):
1902         * platform/graphics/filters/FETurbulence.h:
1903
1904 2011-04-26  Pavel Feldman  <pfeldman@google.com>
1905
1906         Reviewed by Yury Semikhatsky.
1907
1908         Web Inspector: close button is off in docked mode on a mac.
1909         https://bugs.webkit.org/show_bug.cgi?id=59453
1910
1911         * inspector/front-end/inspector.css:
1912         (.toolbar-item.close-left):
1913
1914 2011-04-26  Pavel Feldman  <pfeldman@google.com>
1915
1916         Reviewed by Yury Semikhatsky.
1917
1918         Web Inspector: New Style is not working (UI glitch)
1919         https://bugs.webkit.org/show_bug.cgi?id=59451
1920
1921         * inspector/InspectorDOMStorageAgent.cpp:
1922         (WebCore::InspectorDOMStorageAgent::setFrontend):
1923         * inspector/front-end/AuditRules.js:
1924         (WebInspector.AuditRules.ImageDimensionsRule.prototype.doRun.getStyles):
1925         (WebInspector.AuditRules.CssInHeadRule.prototype.doRun.externalStylesheetsReceived):
1926         (WebInspector.AuditRules.CssInHeadRule.prototype.doRun.inlineStylesReceived):
1927         (WebInspector.AuditRules.StylesScriptsOrderRule.prototype.doRun.cssBeforeInlineReceived):
1928         (WebInspector.AuditRules.StylesScriptsOrderRule.prototype.doRun.lateStylesReceived):
1929         * inspector/front-end/CSSStyleModel.js:
1930         (WebInspector.CSSStyleModel.prototype.setRuleSelector):
1931         (WebInspector.CSSStyleModel.prototype.setRuleSelector.callback):
1932         (WebInspector.CSSStyleModel.prototype.addRule):
1933         (WebInspector.CSSStyleModel.prototype.addRule.callback):
1934         (WebInspector.CSSStyleModel.prototype._documentElementId):
1935         * inspector/front-end/DOMAgent.js:
1936         (WebInspector.DOMNode.prototype._addAttribute):
1937         (WebInspector.DOMNode.prototype.documentElement):
1938         * inspector/front-end/ResourceTreeModel.js:
1939         (WebInspector.PageDispatcher.prototype.frameDetached):
1940         * inspector/front-end/StylesSidebarPane.js:
1941         (WebInspector.StylesSidebarPane.prototype._createNewRule):
1942
1943 2011-04-26  Pavel Feldman  <pfeldman@google.com>
1944
1945         Reviewed by Yury Semikhatsky.
1946
1947         Web Inspector: introduce DOMStorage::enable and disable.
1948         https://bugs.webkit.org/show_bug.cgi?id=59445
1949
1950         * inspector/Inspector.json:
1951         * inspector/InspectorAgent.cpp:
1952         (WebCore::InspectorAgent::InspectorAgent):
1953         (WebCore::InspectorAgent::restoreInspectorStateFromCookie):
1954         * inspector/InspectorDOMStorageAgent.cpp:
1955         (WebCore::InspectorDOMStorageAgent::InspectorDOMStorageAgent):
1956         (WebCore::InspectorDOMStorageAgent::restore):
1957         (WebCore::InspectorDOMStorageAgent::enable):
1958         (WebCore::InspectorDOMStorageAgent::disable):
1959         * inspector/InspectorDOMStorageAgent.h:
1960         (WebCore::InspectorDOMStorageAgent::create):
1961         * inspector/front-end/DOMStorage.js:
1962         (WebInspector.DOMStorageDispatcher.prototype.addDOMStorage):
1963         * inspector/front-end/ResourcesPanel.js:
1964         (WebInspector.ResourcesPanel.prototype._reset):
1965         * inspector/front-end/inspector.js:
1966
1967 2011-04-26  Pavel Feldman  <pfeldman@google.com>
1968
1969         Reviewed by Yury Semikhatsky.
1970
1971         Web Inspector: extract Page agent dispatcher into the ResourceTreeModel.
1972         https://bugs.webkit.org/show_bug.cgi?id=59440
1973
1974         * inspector/Inspector.json:
1975         * inspector/InspectorAgent.cpp:
1976         (WebCore::InspectorAgent::restoreInspectorStateFromCookie):
1977         * inspector/InspectorPageAgent.cpp:
1978         (WebCore::InspectorPageAgent::setFrontend):
1979         (WebCore::InspectorPageAgent::frameNavigated):
1980         * inspector/InspectorPageAgent.h:
1981         * inspector/front-end/AuditsPanel.js:
1982         (WebInspector.AuditsPanel):
1983         (WebInspector.AuditsPanel.prototype._onLoadEventFired):
1984         (WebInspector.AuditsPanel.prototype._domContentLoadedEventFired):
1985         * inspector/front-end/CSSStyleModel.js:
1986         (WebInspector.CSSStyleModelResourceBinding):
1987         (WebInspector.CSSStyleModelResourceBinding.prototype._inspectedURLChanged):
1988         * inspector/front-end/DOMBreakpointsSidebarPane.js:
1989         (WebInspector.DOMBreakpointsSidebarPane):
1990         (WebInspector.DOMBreakpointsSidebarPane.prototype._inspectedURLChanged):
1991         * inspector/front-end/DOMStorage.js:
1992         (WebInspector.DOMStorageDispatcher.prototype.addDOMStorage):
1993         * inspector/front-end/ExtensionServer.js:
1994         (WebInspector.ExtensionServer.prototype._inspectedURLChanged):
1995         (WebInspector.ExtensionServer.prototype.initExtensions):
1996         * inspector/front-end/NetworkPanel.js:
1997         (WebInspector.NetworkPanel):
1998         (WebInspector.NetworkPanel.prototype._onLoadEventFired):
1999         (WebInspector.NetworkPanel.prototype._domContentLoadedEventFired):
2000         (WebInspector.NetworkPanel.prototype._frameNavigated):
2001         * inspector/front-end/ResourceTreeModel.js:
2002         (WebInspector.ResourceTreeModel):
2003         (WebInspector.ResourceTreeModel.prototype._processCachedResources):
2004         (WebInspector.ResourceTreeModel.prototype._dispatchInspectedURLChanged):
2005         (WebInspector.ResourceTreeModel.prototype._frameNavigated):
2006         (WebInspector.ResourceTreeModel.prototype._frameDetached):
2007         (WebInspector.ResourceTreeModel.prototype._clearChildFramesAndResources):
2008         (WebInspector.PageDispatcher):
2009         (WebInspector.PageDispatcher.prototype.domContentEventFired):
2010         (WebInspector.PageDispatcher.prototype.loadEventFired):
2011         (WebInspector.PageDispatcher.prototype.frameNavigated):
2012         (WebInspector.PageDispatcher.prototype.frameDetached):
2013         * inspector/front-end/ResourcesPanel.js:
2014         (WebInspector.ResourcesPanel):
2015         (WebInspector.ResourcesPanel.prototype._onLoadEventFired):
2016         (WebInspector.ResourcesPanel.prototype._frameNavigated):
2017         * inspector/front-end/inspector.js:
2018
2019 2011-04-26  Csaba Osztrogon√°c  <ossy@webkit.org>
2020
2021         Unreviewed rollout r84877 and StyleRareInheritedData.cpp changes of r84892,
2022         because it broke transitions/multiple-text-shadow-transition.html
2023
2024         Fix OwnPtr strict errors in RenderStyle and make StyleRareInheritedData::textShadow an OwnPtr
2025         https://bugs.webkit.org/show_bug.cgi?id=59377
2026
2027         * css/CSSStyleSelector.cpp:
2028         (WebCore::CSSStyleSelector::applyProperty):
2029         * page/animation/AnimationBase.cpp:
2030         (WebCore::PropertyWrapperShadow::PropertyWrapperShadow):
2031         (WebCore::PropertyWrapperShadow::blend):
2032         * rendering/style/RenderStyle.cpp:
2033         (WebCore::RenderStyle::setTextShadow):
2034         (WebCore::RenderStyle::setBoxShadow):
2035         * rendering/style/RenderStyle.h:
2036         (WebCore::InheritedFlags::textShadow):
2037         * rendering/style/StyleRareInheritedData.cpp:
2038         (WebCore::StyleRareInheritedData::StyleRareInheritedData):
2039         (WebCore::StyleRareInheritedData::~StyleRareInheritedData):
2040         * rendering/style/StyleRareInheritedData.h:
2041         * rendering/style/StyleRareNonInheritedData.cpp:
2042         (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
2043
2044 2011-04-26  Mihai Parparita  <mihaip@chromium.org>
2045
2046         Reviewed by Adam Barth.
2047
2048         Turn off make built-in implicit rules for derived sources makefile
2049         https://bugs.webkit.org/show_bug.cgi?id=59418
2050
2051         We don't use any of make's built-in implicit rules, turning them off
2052         speeds up parsing of the makefile.
2053
2054         * WebCore.xcodeproj/project.pbxproj:
2055         * gyp/generate-derived-sources.sh:
2056
2057 2011-04-26  Leo Yang  <leo.yang@torchmobile.com.cn>
2058
2059         Reviewed by Nikolas Zimmermann.
2060
2061         ASSERT failure in SVGUseElement
2062         https://bugs.webkit.org/show_bug.cgi?id=59313
2063
2064         In SVGUseElement::insertedIntoDocument(), ASSERT(!m_isPendingResource)
2065         was wrong because the document may not be well-formed.
2066
2067         This patch asserts the element is not pending on resource or the
2068         document is not well-formed.
2069
2070         Test: svg/custom/use-crash-in-non-wellformed-document.svg
2071
2072         * svg/SVGUseElement.cpp:
2073         (WebCore::isWellFormedDocument):
2074         (WebCore::SVGUseElement::insertedIntoDocument):
2075
2076 2011-04-26  Mikhail Naganov  <mnaganov@chromium.org>
2077
2078         Reviewed by Pavel Feldman.
2079
2080         Web Inspector: [Chromium] Fix columns resizing in the detailed heap snapshot grids.
2081         https://bugs.webkit.org/show_bug.cgi?id=59438
2082
2083         * inspector/front-end/DetailedHeapshotView.js:
2084         (WebInspector.DetailedHeapshotView.prototype._changeView):
2085
2086 2011-04-26  David Levin  <levin@chromium.org>
2087
2088         Reviewed by Adam Barth.
2089
2090         Fix a few OwnPtr strict errors in WebCore headers.
2091         https://bugs.webkit.org/show_bug.cgi?id=59431
2092
2093         * bindings/js/ScheduledAction.cpp:
2094         (WebCore::ScheduledAction::create):
2095         * css/MediaQueryMatcher.cpp:
2096         (WebCore::MediaQueryMatcher::prepareEvaluator):
2097         * dom/NodeRareData.h:
2098         (WebCore::NodeListsNodeData::create):
2099         * dom/ScriptRunner.h:
2100         (WebCore::ScriptRunner::create):
2101         * inspector/WorkerInspectorController.cpp:
2102         (WebCore::WorkerInspectorController::connectFrontend):
2103         * loader/icon/IconDatabase.h:
2104         (WebCore::IconDatabase::create):
2105         * platform/graphics/SimpleFontData.cpp:
2106         (WebCore::SimpleFontData::verticalRightOrientationFontData):
2107         (WebCore::SimpleFontData::uprightOrientationFontData):
2108         (WebCore::SimpleFontData::brokenIdeographFontData):
2109         * rendering/style/StyleRareInheritedData.cpp:
2110         (WebCore::StyleRareInheritedData::StyleRareInheritedData):
2111         * rendering/svg/SVGResources.h:
2112         (WebCore::SVGResources::ClipperFilterMaskerData::create):
2113         (WebCore::SVGResources::MarkerData::create):
2114         (WebCore::SVGResources::FillStrokeData::create):
2115         * storage/StorageSyncManager.cpp:
2116         (WebCore::StorageSyncManager::close):
2117         * workers/WorkerContext.cpp:
2118         (WebCore::CloseWorkerContextTask::create):
2119         * workers/WorkerMessagingProxy.cpp:
2120         (WebCore::MessageWorkerContextTask::create):
2121         (WebCore::MessageWorkerTask::create):
2122         (WebCore::WorkerExceptionTask::create):
2123         (WebCore::WorkerContextDestroyedTask::create):
2124         (WebCore::WorkerTerminateTask::create):
2125         (WebCore::WorkerThreadActivityReportTask::create):
2126         * workers/WorkerRunLoop.cpp:
2127         (WebCore::WorkerRunLoop::Task::create):
2128         * workers/WorkerThread.cpp:
2129         (WebCore::WorkerThreadStartupData::create):
2130         (WebCore::WorkerThreadShutdownFinishTask::create):
2131         (WebCore::WorkerThreadShutdownStartTask::create):
2132
2133 2011-04-26  Adam Klein  <adamk@chromium.org>
2134
2135         Reviewed by Adam Barth.
2136
2137         Fix last strict OwnPtr violation under svg/...
2138         https://bugs.webkit.org/show_bug.cgi?id=59429
2139
2140         * svg/SVGDocumentExtensions.cpp:
2141         (WebCore::SVGDocumentExtensions::removePendingResource):
2142
2143 2011-04-26  Adam Barth  <abarth@webkit.org>
2144
2145         Reviewed by David Levin.
2146
2147         Fix more strict OwnPtr violations in WebCore
2148         https://bugs.webkit.org/show_bug.cgi?id=59433
2149
2150         These manifest in the Chromium build.
2151
2152         * bindings/v8/ScriptController.cpp:
2153         (WebCore::ScriptController::ScriptController):
2154         * bindings/v8/ScriptDebugServer.cpp:
2155         (WebCore::ScriptDebugServer::editScriptSource):
2156         * bindings/v8/V8DOMMap.cpp:
2157         (WebCore::DOMDataStoreHandle::DOMDataStoreHandle):
2158         * bindings/v8/V8Proxy.cpp:
2159         (WebCore::V8Proxy::precompileScript):
2160         * bindings/v8/WorkerScriptController.cpp:
2161         (WebCore::WorkerScriptController::WorkerScriptController):
2162         * page/Page.cpp:
2163         (WebCore::Page::Page):
2164         (WebCore::Page::speechInput):
2165         * platform/PlatformGestureRecognizer.cpp:
2166         (WebCore::PlatformGestureRecognizer::create):
2167         * platform/PlatformGestureRecognizer.h:
2168         * platform/graphics/chromium/DrawingBufferChromium.cpp:
2169         (WebCore::DrawingBuffer::DrawingBuffer):
2170         * platform/graphics/chromium/cc/CCLayerImpl.cpp:
2171         (WebCore::CCLayerImpl::CCLayerImpl):
2172         * platform/graphics/gpu/Texture.cpp:
2173         (WebCore::Texture::create):
2174         * platform/image-decoders/bmp/BMPImageDecoder.cpp:
2175         (WebCore::BMPImageDecoder::decodeHelper):
2176         * platform/image-decoders/gif/GIFImageDecoder.cpp:
2177         (WebCore::GIFImageDecoder::decode):
2178         * platform/image-decoders/ico/ICOImageDecoder.cpp:
2179         (WebCore::ICOImageDecoder::decodeAtIndex):
2180         * platform/image-decoders/jpeg/JPEGImageDecoder.cpp:
2181         (WebCore::JPEGImageDecoder::decode):
2182         * platform/image-decoders/png/PNGImageDecoder.cpp:
2183         (WebCore::PNGImageDecoder::decode):
2184         * storage/chromium/DatabaseTrackerChromium.cpp:
2185         (WebCore::DatabaseTracker::addOpenDatabase):
2186
2187 2011-04-25  David Levin  <levin@chromium.org>
2188
2189         Reviewed by Adam Barth.
2190
2191         Fix OwnPtr strict errors in CrossThreadTask.h
2192         https://bugs.webkit.org/show_bug.cgi?id=59427
2193
2194         * dom/CrossThreadTask.h:
2195         (WebCore::CrossThreadTask1::create):
2196         (WebCore::CrossThreadTask2::create):
2197         (WebCore::CrossThreadTask3::create):
2198         (WebCore::CrossThreadTask4::create):
2199         (WebCore::CrossThreadTask5::create):
2200         (WebCore::CrossThreadTask6::create):
2201         (WebCore::CrossThreadTask7::create):
2202         (WebCore::CrossThreadTask8::create):
2203
2204 2011-04-25  Mark Rowe  <mrowe@apple.com>
2205
2206         Reviewed by Dan Bernstein.
2207
2208         <rdar://problem/9330337> Leak of 'WebCore::ApplyPropertyFillLayer<WebCore::FillSize>'
2209
2210         * css/CSSStyleApplyProperty.cpp:
2211         (WebCore::CSSStyleApplyProperty::CSSStyleApplyProperty): Don't initialize CSSPropertyWebkitMaskSize twice.
2212         * css/CSSStyleApplyProperty.h:
2213         (WebCore::CSSStyleApplyProperty::setPropertyValue): Add some asserts to catch this class of leak.
2214
2215 2011-04-25  Levi Weintraub  <leviw@chromium.org>
2216
2217         Reviewed by Ryosuke Niwa.
2218
2219         REGRESSION: a character appears after tab span when typing immediately before the tab span
2220         https://bugs.webkit.org/show_bug.cgi?id=58132
2221
2222         Correcting the order of operations we use to avoid inserting into invalid positions in
2223         ReplaceSelectionCommand to avoid inserting into tab-spans.
2224
2225         Test: editing/pasteboard/paste-before-tab-span.html
2226
2227         * editing/ReplaceSelectionCommand.cpp:
2228         (WebCore::ReplaceSelectionCommand::doApply): Moving positionOutsideTabSpan to after
2229         positionAvoidingPrecedingNodes, since that function could once again put our position
2230         inside a tab span.
2231
2232 2011-04-25  David Levin  <levin@chromium.org>
2233
2234         Reviewed by Adam Barth.
2235
2236         Fix OwnPtr strict error in ImageBuffer.h
2237         https://bugs.webkit.org/show_bug.cgi?id=59422
2238
2239         * platform/graphics/ImageBuffer.h:
2240         (WebCore::ImageBuffer::create):
2241
2242 2011-04-25  Adam Barth  <abarth@webkit.org>
2243
2244         Reviewed by David Levin.
2245
2246         Fix strict OwnPtr violations and whitelist known-tricky files
2247         https://bugs.webkit.org/show_bug.cgi?id=59421
2248
2249         With this patch, WebCore builds cleanly with strict OwnPtrs.
2250
2251         * dom/MessagePort.cpp:
2252         (WebCore::MessagePort::MessagePort):
2253         * dom/XMLDocumentParserLibxml2.cpp:
2254         * page/ContextMenuController.cpp:
2255         (WebCore::ContextMenuController::ContextMenuController):
2256         (WebCore::ContextMenuController::clearContextMenu):
2257         * page/PluginHalter.cpp:
2258         * platform/graphics/MediaPlayer.cpp:
2259         * platform/network/ResourceRequestBase.cpp:
2260         (WebCore::ResourceRequestBase::adopt):
2261         (WebCore::ResourceRequestBase::copyData):
2262         * svg/SVGDocumentExtensions.cpp:
2263
2264 2011-04-25  David Levin  <levin@chromium.org>
2265
2266         Reviewed by Adam Barth.
2267
2268         Fix OwnPtr strict errors in DatasetDOMStringMap.h.
2269         https://bugs.webkit.org/show_bug.cgi?id=59419
2270
2271         * dom/DatasetDOMStringMap.h:
2272         (WebCore::DatasetDOMStringMap::create):
2273
2274 2011-04-25  Jocelyn Turcotte  <jocelyn.turcotte@nokia.com>
2275
2276         Reviewed by Eric Seidel.
2277
2278         KeyboardEvent.cpp should work with strict OwnPtrs.
2279         https://bugs.webkit.org/show_bug.cgi?id=59403
2280
2281         * dom/KeyboardEvent.cpp:
2282         (WebCore::KeyboardEvent::KeyboardEvent):
2283
2284 2011-04-25  James Robinson  <jamesr@chromium.org>
2285
2286         Reviewed by Eric Seidel.
2287
2288         Fix OwnPtr strict errors in RenderStyle and make StyleRareInheritedData::textShadow an OwnPtr
2289         https://bugs.webkit.org/show_bug.cgi?id=59377
2290
2291         * css/CSSStyleSelector.cpp:
2292         (WebCore::CSSStyleSelector::applyProperty):
2293         * page/animation/AnimationBase.cpp:
2294         (WebCore::PropertyWrapperShadow::PropertyWrapperShadow):
2295         (WebCore::PropertyWrapperShadow::blend):
2296         * rendering/style/RenderStyle.cpp:
2297         (WebCore::RenderStyle::setTextShadow):
2298         (WebCore::RenderStyle::setBoxShadow):
2299         * rendering/style/RenderStyle.h:
2300         (WebCore::InheritedFlags::textShadow):
2301         * rendering/style/StyleRareInheritedData.cpp:
2302         (WebCore::StyleRareInheritedData::StyleRareInheritedData):
2303         (WebCore::StyleRareInheritedData::~StyleRareInheritedData):
2304         * rendering/style/StyleRareInheritedData.h:
2305         * rendering/style/StyleRareNonInheritedData.cpp:
2306         (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
2307
2308 2011-04-25  Sheriff Bot  <webkit.review.bot@gmail.com>
2309
2310         Unreviewed, rolling out r84864.
2311         http://trac.webkit.org/changeset/84864
2312         https://bugs.webkit.org/show_bug.cgi?id=59413
2313
2314         Expect result of use-crash-in-non-wellformed-document.svg is
2315         platform dependent (Requested by leoyang on #webkit).
2316
2317         * svg/SVGUseElement.cpp:
2318         (WebCore::SVGUseElement::insertedIntoDocument):
2319
2320 2011-04-25  Leo Yang  <leo.yang@torchmobile.com.cn>
2321
2322         Reviewed by Nikolas Zimmermann.
2323
2324         ASSERT failure in SVGUseElement
2325         https://bugs.webkit.org/show_bug.cgi?id=59313
2326
2327         In SVGUseElement::insertedIntoDocument(), ASSERT(!m_isPendingResource)
2328         was wrong because the document may not be well-formed.
2329
2330         This patch asserts the element is not pending on resource or the
2331         document is not well-formed.
2332
2333         Test: svg/custom/use-crash-in-non-wellformed-document.svg
2334
2335         * svg/SVGUseElement.cpp:
2336         (WebCore::isWellFormedDocument):
2337         (WebCore::SVGUseElement::insertedIntoDocument):
2338
2339 2011-04-25  Igor Oliveira  <igor.oliveira@openbossa.org>
2340
2341         Reviewed by Tony Chang.
2342
2343         Move complexity from DataTransferItemsChromium and DataTransferItemChromium for base class
2344         https://bugs.webkit.org/show_bug.cgi?id=59028
2345
2346         The DataTransferItemsChromium and DataTransferItemChromium code can be reused by other platforms.
2347         Moving the code for base class we can reduce the efforts to support DataTransferItems
2348         element in different platforms.
2349
2350         * Android.mk:
2351         * CMakeLists.txt:
2352         * GNUmakefile.list.am:
2353         * WebCore.gypi:
2354         * WebCore.pro:
2355         * WebCore.vcproj/WebCore.vcproj:
2356         * WebCore.xcodeproj/project.pbxproj:
2357         * dom/DataTransferItem.cpp:
2358         (WebCore::DataTransferItem::DataTransferItem):
2359         (WebCore::DataTransferItem::owner):
2360         (WebCore::DataTransferItem::kind):
2361         (WebCore::DataTransferItem::type):
2362         * dom/DataTransferItem.h:
2363         * dom/DataTransferItems.cpp: Copied from Source/WebCore/platform/chromium/DataTransferItemsChromium.cpp.
2364         (WebCore::DataTransferItems::DataTransferItems):
2365         (WebCore::DataTransferItems::length):
2366         (WebCore::DataTransferItems::item):
2367         (WebCore::DataTransferItems::deleteItem):
2368         (WebCore::DataTransferItems::clear):
2369         (WebCore::DataTransferItems::add):
2370         * dom/DataTransferItems.h:
2371         * platform/chromium/DataTransferItemChromium.cpp:
2372         (WebCore::DataTransferItem::create):
2373         (WebCore::DataTransferItemChromium::DataTransferItemChromium):
2374         (WebCore::DataTransferItemChromium::getAsString):
2375         (WebCore::DataTransferItemChromium::getAsFile):
2376         * platform/chromium/DataTransferItemChromium.h:
2377         * platform/chromium/DataTransferItemsChromium.cpp:
2378         (WebCore::DataTransferItemsChromium::DataTransferItemsChromium):
2379         * platform/chromium/DataTransferItemsChromium.h:
2380
2381 2011-04-25  Chris Marrin  <cmarrin@apple.com>
2382
2383         Reviewed by Simon Fraser.
2384
2385         REGRESSION(75137): directly composited images are double-drawn sometimes
2386         https://bugs.webkit.org/show_bug.cgi?id=58632
2387
2388         Depending on the order of operations (layout, creating compositing 
2389         layers and creating simple image layers) a layer can have both image
2390         content and have m_drawsContent=true. In this case 2 copies of the image
2391         are drawn in the layer. If the image has alpha, it looks wrong.
2392
2393         I added an updateDrawsContent() call after setting the image contents
2394         to make sure it's correct.
2395
2396         I couldn't create a test case that shows the problem because layerTreeAsText()
2397         doesn't emit enough info to show this level of detail. I've opened
2398         https://bugs.webkit.org/show_bug.cgi?id=59352 to fix that.
2399
2400         * rendering/RenderLayerBacking.cpp:
2401         (WebCore::RenderLayerBacking::updateImageContents):
2402
2403 2011-04-25  Kenneth Russell  <kbr@google.com>
2404
2405         Reviewed by David Levin.
2406
2407         Fix OwnPtr strict errors in InlineFlowBox.cpp
2408         https://bugs.webkit.org/show_bug.cgi?id=59392
2409
2410         * rendering/InlineFlowBox.cpp:
2411         (WebCore::InlineFlowBox::setLayoutOverflow):
2412         (WebCore::InlineFlowBox::setVisualOverflow):
2413
2414 2011-04-25  Kenneth Russell  <kbr@google.com>
2415
2416         Reviewed by David Levin.
2417
2418         Fix OwnPtr strict errors in TransformState.cpp
2419         https://bugs.webkit.org/show_bug.cgi?id=59380
2420
2421         * rendering/TransformState.cpp:
2422         (WebCore::TransformState::applyTransform):
2423
2424 2011-04-25  Adam Barth  <abarth@webkit.org>
2425
2426         Reviewed by James Robinson.
2427
2428         DOMWindow.cpp should work with strict OwnPtrs
2429         https://bugs.webkit.org/show_bug.cgi?id=59356
2430
2431         * page/DOMWindow.cpp:
2432         (WebCore::PostMessageTimer::fired):
2433         (WebCore::DOMWindow::postMessageTimerFired):
2434         * page/DOMWindow.h:
2435
2436 2011-04-25  Adam Klein  <adamk@chromium.org>
2437
2438         Reviewed by James Robinson.
2439
2440         Fix OwnPtr strict errors in some SVG classes.
2441         https://bugs.webkit.org/show_bug.cgi?id=59395
2442
2443         * rendering/style/SVGRenderStyleDefs.cpp:
2444         (WebCore::StyleShadowSVGData::StyleShadowSVGData):
2445         * svg/SVGSVGElement.cpp:
2446         (WebCore::SVGSVGElement::SVGSVGElement):
2447         * svg/SVGStyledTransformableElement.cpp:
2448         (WebCore::SVGStyledTransformableElement::supplementalTransform):
2449         * svg/SVGTextElement.cpp:
2450         (WebCore::SVGTextElement::supplementalTransform):
2451         * svg/graphics/SVGImage.cpp:
2452         (WebCore::SVGImage::dataChanged):
2453
2454 2011-04-25  Adam Barth  <abarth@webkit.org>
2455
2456         Re-land changes to ValidationMessage.
2457
2458         * html/ValidationMessage.cpp:
2459         (WebCore::ValidationMessage::setMessage):
2460         (WebCore::ValidationMessage::setMessageDOMAndStartTimer):
2461         (WebCore::ValidationMessage::requestToHideMessage):
2462
2463 2011-04-25  Ojan Vafai  <ojan@chromium.org>
2464
2465         Reviewed by James Robinson.
2466
2467         fix OwnPtr strict error in FrameView.cpp
2468         https://bugs.webkit.org/show_bug.cgi?id=59402
2469
2470         * page/FrameView.cpp:
2471         (WebCore::FrameView::FrameView):
2472         (WebCore::FrameView::addWidgetToUpdate):
2473
2474 2011-04-25  Adam Klein  <adamk@chromium.org>
2475
2476         Unreviewed, rolling out r84844.
2477         http://trac.webkit.org/changeset/84844
2478         https://bugs.webkit.org/show_bug.cgi?id=59395
2479
2480         Checked in too much.
2481
2482         * rendering/style/SVGRenderStyleDefs.cpp:
2483         (WebCore::StyleShadowSVGData::StyleShadowSVGData):
2484         * svg/SVGDocumentExtensions.cpp:
2485         (WebCore::SVGDocumentExtensions::removePendingResource):
2486         * svg/SVGSVGElement.cpp:
2487         (WebCore::SVGSVGElement::SVGSVGElement):
2488         * svg/SVGStyledTransformableElement.cpp:
2489         (WebCore::SVGStyledTransformableElement::supplementalTransform):
2490         * svg/SVGTextElement.cpp:
2491         (WebCore::SVGTextElement::supplementalTransform):
2492         * svg/graphics/SVGImage.cpp:
2493         (WebCore::SVGImage::dataChanged):
2494
2495 2011-04-25  Adrienne Walker  <enne@google.com>
2496
2497         Reviewed by David Levin.
2498
2499         Make ActiveDOMCallback play nice with OwnPtr strict mode
2500         https://bugs.webkit.org/show_bug.cgi?id=59398
2501
2502         * bindings/generic/ActiveDOMCallback.cpp:
2503         (WebCore::ActiveDOMCallback::ActiveDOMCallback):
2504
2505 2011-04-25  Adam Klein  <adamk@chromium.org>
2506
2507         Reviewed by James Robinson.
2508
2509         Fix OwnPtr strict errors in some SVG classes.
2510         https://bugs.webkit.org/show_bug.cgi?id=59395
2511
2512         * rendering/style/SVGRenderStyleDefs.cpp:
2513         (WebCore::StyleShadowSVGData::StyleShadowSVGData):
2514         * svg/SVGSVGElement.cpp:
2515         (WebCore::SVGSVGElement::SVGSVGElement):
2516         * svg/SVGStyledTransformableElement.cpp:
2517         (WebCore::SVGStyledTransformableElement::supplementalTransform):
2518         * svg/SVGTextElement.cpp:
2519         (WebCore::SVGTextElement::supplementalTransform):
2520         * svg/graphics/SVGImage.cpp:
2521         (WebCore::SVGImage::dataChanged):
2522
2523 2011-04-25  James Robinson  <jamesr@chromium.org>
2524
2525         Unreviewed, rolling out r84835.
2526         http://trac.webkit.org/changeset/84835
2527         https://bugs.webkit.org/show_bug.cgi?id=59394
2528
2529         Breaks compile because Deque<OwnPtr> doesn't work
2530
2531         * dom/XMLDocumentParserLibxml2.cpp:
2532         (WebCore::PendingCallbacks::~PendingCallbacks):
2533         (WebCore::PendingCallbacks::appendStartElementNSCallback):
2534         (WebCore::PendingCallbacks::appendEndElementNSCallback):
2535         (WebCore::PendingCallbacks::appendCharactersCallback):
2536         (WebCore::PendingCallbacks::appendProcessingInstructionCallback):
2537         (WebCore::PendingCallbacks::appendCDATABlockCallback):
2538         (WebCore::PendingCallbacks::appendCommentCallback):
2539         (WebCore::PendingCallbacks::appendInternalSubsetCallback):
2540         (WebCore::PendingCallbacks::appendErrorCallback):
2541         (WebCore::XMLDocumentParser::XMLDocumentParser):
2542         * html/ValidationMessage.cpp:
2543         (WebCore::ValidationMessage::setMessage):
2544         (WebCore::ValidationMessage::setMessageDOMAndStartTimer):
2545         (WebCore::ValidationMessage::requestToHideMessage):
2546
2547 2011-04-25  James Robinson  <jamesr@chromium.org>
2548
2549         Reviewed by Sam Weinig.
2550
2551         Fix OwnPtr strict mode violation in ImageBufferCG
2552         https://bugs.webkit.org/show_bug.cgi?id=59396
2553
2554         * platform/graphics/cg/ImageBufferCG.cpp:
2555         (WebCore::ImageBuffer::ImageBuffer):
2556
2557 2011-04-25  Huang Dongsung  <luxtella@company100.net>
2558
2559         Reviewed by Dirk Schulze.
2560
2561         [Skia] Remove an unused local variable in PlatformContextSkia::readbackHardwareToSoftware().
2562         https://bugs.webkit.org/show_bug.cgi?id=59308
2563
2564         An unused local variable is created and even allocates heap memory.
2565
2566         * platform/graphics/skia/PlatformContextSkia.cpp:
2567         (WebCore::PlatformContextSkia::readbackHardwareToSoftware):
2568
2569 2011-04-25  Geoffrey Garen  <ggaren@apple.com>
2570
2571         Qt build fix: Updated files not used by other ports for rename.
2572
2573         * bindings/js/JSTouchCustom.cpp:
2574         (WebCore::toJSNewlyCreated):
2575         * bindings/js/JSTouchListCustom.cpp:
2576         (WebCore::toJSNewlyCreated):
2577
2578 2011-04-25  Adrienne Walker  <enne@google.com>
2579
2580         Reviewed by David Levin.
2581
2582         WebCore/css/CSS* files should play nice with strict OwnPtrs
2583         https://bugs.webkit.org/show_bug.cgi?id=59382
2584
2585         * css/CSSFontFaceSource.cpp:
2586         (WebCore::CSSFontFaceSource::getFontData):
2587         * css/CSSParser.cpp:
2588         (WebCore::CSSParser::addProperty):
2589         (WebCore::CSSParser::parseValue):
2590
2591 2011-04-25  Adam Barth  <abarth@webkit.org>
2592
2593         Reviewed by James Robinson.
2594
2595         ValidationMessage and XMLDocumentParserLibxml2 should play nice with strict OwnPtrs
2596         https://bugs.webkit.org/show_bug.cgi?id=59394
2597
2598         * dom/XMLDocumentParserLibxml2.cpp:
2599         (WebCore::PendingCallbacks::PendingCallbacks):
2600         (WebCore::PendingCallbacks::appendStartElementNSCallback):
2601         (WebCore::PendingCallbacks::appendEndElementNSCallback):
2602         (WebCore::PendingCallbacks::appendCharactersCallback):
2603         (WebCore::PendingCallbacks::appendProcessingInstructionCallback):
2604         (WebCore::PendingCallbacks::appendCDATABlockCallback):
2605         (WebCore::PendingCallbacks::appendCommentCallback):
2606         (WebCore::PendingCallbacks::appendInternalSubsetCallback):
2607         (WebCore::PendingCallbacks::appendErrorCallback):
2608         (WebCore::XMLDocumentParser::XMLDocumentParser):
2609         * html/ValidationMessage.cpp:
2610         (WebCore::ValidationMessage::setMessage):
2611         (WebCore::ValidationMessage::setMessageDOMAndStartTimer):
2612         (WebCore::ValidationMessage::requestToHideMessage):
2613
2614 2011-04-25  James Robinson  <jamesr@chromium.org>
2615
2616         Reviewed by Adam Barth.
2617
2618         Fix OwnPtr strictness issues in WebCore/inspector/
2619         https://bugs.webkit.org/show_bug.cgi?id=59387
2620
2621         * inspector/InspectorAgent.cpp:
2622         (WebCore::InspectorAgent::InspectorAgent):
2623         * inspector/InspectorController.cpp:
2624         (WebCore::InspectorController::InspectorController):
2625         * inspector/InspectorStyleSheet.cpp:
2626         (WebCore::InspectorStyleSheet::ensureSourceData):
2627
2628 2011-04-25  Geoffrey Garen  <ggaren@apple.com>
2629
2630         Reviewed by Beth Dakin.
2631
2632         Removed XPathNamespace because it was unused
2633         https://bugs.webkit.org/show_bug.cgi?id=59381
2634         
2635         This allows us to make Node::ownerDocument() non-virtual, though it has
2636         the unhappy side-effect of rebuilding the world.
2637
2638         * CMakeLists.txt:
2639         * GNUmakefile.list.am:
2640         * WebCore.gypi:
2641         * WebCore.pro:
2642         * WebCore.vcproj/WebCore.vcproj:
2643         * WebCore.xcodeproj/project.pbxproj: Bye bye dead code.
2644
2645         * dom/Node.h: Hello fast code!
2646
2647         * xml/XPathNamespace.cpp: Removed.
2648         * xml/XPathNamespace.h: Removed.
2649
2650 2011-04-25  Adam Barth  <abarth@webkit.org>
2651
2652         Reviewed by Darin Adler.
2653
2654         HistoryItemMac should play nice with OwnPtrs
2655         https://bugs.webkit.org/show_bug.cgi?id=59388
2656
2657         * history/mac/HistoryItemMac.mm:
2658         (WebCore::HistoryItem::setTransientProperty):
2659
2660 2011-04-25  David Levin  <levin@chromium.org>
2661
2662         Reviewed by Kenneth Russell.
2663
2664         Fix strict OwnPtrs in ContextMenuController.cpp
2665         https://bugs.webkit.org/show_bug.cgi?id=59375
2666
2667         * page/ContextMenuController.cpp:
2668         (WebCore::ContextMenuController::createContextMenu):
2669         (WebCore::separatorItem):
2670
2671 2011-04-25  Adam Barth  <abarth@webkit.org>
2672
2673         Reviewed by Darin Adler.
2674
2675         CheckedRadioButton should play nice with strict OwnPtr
2676         https://bugs.webkit.org/show_bug.cgi?id=59386
2677
2678         * dom/CheckedRadioButtons.cpp:
2679         (WebCore::CheckedRadioButtons::addButton):
2680
2681 2011-04-25  Adam Barth  <abarth@webkit.org>
2682
2683         Reviewed by David Levin.
2684
2685         Resource*.cpp should play nice with strict OwnPtrs
2686         https://bugs.webkit.org/show_bug.cgi?id=59383
2687
2688         * bridge/runtime_method.cpp:
2689         (JSC::RuntimeMethod::RuntimeMethod):
2690         * platform/network/ResourceHandle.cpp:
2691         (WebCore::ResourceHandle::ResourceHandle):
2692         * platform/network/ResourceResponseBase.cpp:
2693         (WebCore::ResourceResponseBase::adopt):
2694         (WebCore::ResourceResponseBase::copyData):
2695
2696 2011-04-25  Adam Barth  <abarth@webkit.org>
2697
2698         Reviewed by David Levin.
2699
2700         Page*.cpp and objc_runtime.mm should play nice with strict OwnPtrs
2701         https://bugs.webkit.org/show_bug.cgi?id=59374
2702
2703         * bridge/objc/objc_runtime.mm:
2704         (JSC::Bindings::callObjCFallbackObject):
2705         * page/Page.cpp:
2706         (WebCore::Page::Page):
2707         (WebCore::Page::initGroup):
2708         * page/PageGroup.cpp:
2709         (WebCore::PageGroup::addUserScriptToWorld):
2710         (WebCore::PageGroup::addUserStyleSheetToWorld):
2711         * page/mac/PageMac.cpp:
2712         (WebCore::Page::addSchedulePair):
2713
2714 2011-04-25  Geoffrey Garen  <ggaren@apple.com>
2715
2716         Build fix: This time for sure!
2717         
2718         * dom/make_names.pl:
2719
2720 2011-04-25  Geoffrey Garen  <ggaren@apple.com>
2721
2722         Build fix: Let's edit the script instead of the autogenrated file. That
2723         way, our change will stand the test of time.
2724
2725         * dom/make_names.pl:
2726
2727 2011-04-25  Adam Barth  <abarth@webkit.org>
2728
2729         Reviewed by David Levin.
2730
2731         Fix strict OwnPtrs in HTMLMediaElement and HTTPHeaderMap
2732         https://bugs.webkit.org/show_bug.cgi?id=59368
2733
2734         * html/HTMLMediaElement.cpp:
2735         (WebCore::HTMLMediaElement::HTMLMediaElement):
2736         * platform/network/HTTPHeaderMap.cpp:
2737         (WebCore::HTTPHeaderMap::copyData):
2738
2739 2011-04-25  James Robinson  <jamesr@chromium.org>
2740
2741         Reviewed by Adam Barth.
2742
2743         Fix strict OwnPtr violations in Render*.cpp
2744         https://bugs.webkit.org/show_bug.cgi?id=59361
2745
2746         * rendering/RenderBlock.cpp:
2747         (WebCore::RenderBlock::RenderBlock):
2748         (WebCore::RenderBlock::finishDelayUpdateScrollInfo):
2749         * rendering/RenderBox.cpp:
2750         (WebCore::RenderBox::addLayoutOverflow):
2751         (WebCore::RenderBox::addVisualOverflow):
2752         * rendering/RenderButton.cpp:
2753         (WebCore::RenderButton::styleDidChange):
2754         * rendering/RenderLayer.cpp:
2755         (WebCore::RenderLayer::updateTransform):
2756         (WebCore::RenderLayer::paintChildLayerIntoColumns):
2757         (WebCore::RenderLayer::hitTestChildLayerColumns):
2758         (WebCore::RenderLayer::ensureBacking):
2759         * rendering/RenderTable.cpp:
2760         (WebCore::RenderTable::styleDidChange):
2761         * rendering/RenderView.cpp:
2762         (WebCore::RenderView::compositor):
2763         * rendering/style/RenderStyle.cpp:
2764         (WebCore::RenderStyle::addCachedPseudoStyle):
2765         (WebCore::RenderStyle::accessCounterDirectives):
2766         (WebCore::RenderStyle::accessAnimations):
2767         (WebCore::RenderStyle::accessTransitions):
2768         * rendering/svg/RenderSVGResourceFilter.cpp:
2769         (WebCore::RenderSVGResourceFilter::applyResource):
2770         * rendering/svg/SVGResources.cpp:
2771         (WebCore::SVGResources::SVGResources):
2772
2773 2011-04-25  Adam Barth  <abarth@webkit.org>
2774
2775         Attempt to fix the compile.
2776
2777         * platform/graphics/MediaPlayer.cpp:
2778         (WebCore::MediaPlayer::loadWithNextMediaEngine):
2779
2780 2011-04-25  Geoffrey Garen  <ggaren@apple.com>
2781
2782         Rubber-stamped by Beth Dakin.
2783
2784         Merged CREATE_DOM_NODE_WRAPPER and CREATE_DOM_OBJECT_WRAPPER into 
2785         CREATE_DOM_WRAPPER because there's no meaningful difference between
2786         them anymore.
2787
2788         * bindings/js/JSCDATASectionCustom.cpp:
2789         (WebCore::toJSNewlyCreated):
2790         * bindings/js/JSCSSRuleCustom.cpp:
2791         (WebCore::toJS):
2792         * bindings/js/JSCSSValueCustom.cpp:
2793         (WebCore::toJS):
2794         * bindings/js/JSDOMBinding.h:
2795         * bindings/js/JSDocumentCustom.cpp:
2796         (WebCore::toJS):
2797         * bindings/js/JSElementCustom.cpp:
2798         (WebCore::toJSNewlyCreated):
2799         * bindings/js/JSEventCustom.cpp:
2800         (WebCore::toJS):
2801         * bindings/js/JSHTMLCollectionCustom.cpp:
2802         (WebCore::toJS):
2803         * bindings/js/JSImageDataCustom.cpp:
2804         (WebCore::toJS):
2805         * bindings/js/JSNodeCustom.cpp:
2806         (WebCore::createWrapperInline):
2807         * bindings/js/JSSVGPathSegCustom.cpp:
2808         (WebCore::toJS):
2809         * bindings/js/JSStyleSheetCustom.cpp:
2810         (WebCore::toJS):
2811         * bindings/js/JSTextCustom.cpp:
2812         (WebCore::toJSNewlyCreated):
2813         * bindings/js/JSWebKitCSSMatrixCustom.cpp:
2814         (WebCore::JSWebKitCSSMatrixConstructor::constructJSWebKitCSSMatrix):
2815         * bindings/js/JSWebSocketCustom.cpp:
2816         (WebCore::JSWebSocketConstructor::constructJSWebSocket):
2817         * bindings/js/JSXMLHttpRequestCustom.cpp:
2818         (WebCore::JSXMLHttpRequestConstructor::constructJSXMLHttpRequest):
2819         * bindings/js/JSXSLTProcessorCustom.cpp:
2820         (WebCore::JSXSLTProcessorConstructor::constructJSXSLTProcessor):
2821
2822 2011-04-25  Adam Barth  <abarth@webkit.org>
2823
2824         Reviewed by James Robinson.
2825
2826         HTMLDocumentParser should play nice with OwnPtrs
2827         https://bugs.webkit.org/show_bug.cgi?id=59363
2828
2829         * html/parser/HTMLDocumentParser.cpp:
2830         (WebCore::HTMLDocumentParser::pumpTokenizer):
2831
2832 2011-04-25  Adam Barth  <abarth@webkit.org>
2833
2834         Reviewed by James Robinson.
2835
2836         Frame.cpp should work with strict OwnPtrs
2837         https://bugs.webkit.org/show_bug.cgi?id=59360
2838
2839         * page/Frame.cpp:
2840         (WebCore::createRegExpForLabels):
2841
2842 2011-04-25  Adam Barth  <abarth@webkit.org>
2843
2844         Reviewed by David Levin.
2845
2846         Fix strict OwnPtr in Element.cpp
2847         https://bugs.webkit.org/show_bug.cgi?id=59357
2848
2849         * dom/NodeRareData.h:
2850         (WebCore::NodeRareData::ensureEventTargetData):
2851
2852 2011-04-25  Adam Barth  <abarth@webkit.org>
2853
2854         Reviewed by David Levin.
2855
2856         Fix strict OwnPtr issues in Media*.cpp
2857         https://bugs.webkit.org/show_bug.cgi?id=59354
2858
2859         There's still a tricky case in MediaPlayer.cpp, but we'll worry about
2860         that later.
2861
2862         * css/MediaQueryMatcher.cpp:
2863         (WebCore::MediaQueryMatcher::addListener):
2864         * dom/Document.cpp:
2865         * platform/graphics/MediaPlayer.cpp:
2866         (WebCore::createNullMediaPlayer):
2867
2868 2011-04-25  James Robinson  <jamesr@chromium.org>
2869
2870         Reviewed by David Levin.
2871
2872         Fix strict OwnPtr violations in ListHashSet and RenderLayerCompositor
2873         https://bugs.webkit.org/show_bug.cgi?id=59353
2874
2875         * rendering/RenderLayerCompositor.cpp:
2876         (WebCore::RenderLayerCompositor::RenderLayerCompositor):
2877
2878 2011-04-25  Adam Barth  <abarth@webkit.org>
2879
2880         Reviewed by James Robinson.
2881
2882         Worker*.cpp should work with strict OwnPtrs
2883         https://bugs.webkit.org/show_bug.cgi?id=59346
2884
2885         * inspector/WorkerInspectorController.cpp:
2886         (WebCore::WorkerInspectorController::WorkerInspectorController):
2887         * workers/WorkerContext.cpp:
2888         (WebCore::WorkerContext::WorkerContext):
2889         * workers/WorkerRunLoop.cpp:
2890         (WebCore::WorkerRunLoop::WorkerRunLoop):
2891         * workers/WorkerScriptLoader.cpp:
2892         (WebCore::WorkerScriptLoader::createResourceRequest):
2893
2894 2011-04-25  James Robinson  <jamesr@chromium.org>
2895
2896         Reviewed by Adam Barth.
2897
2898         Remove bad use of OwnPtr::set() in IconDatabase.cpp
2899         https://bugs.webkit.org/show_bug.cgi?id=59344
2900
2901         Needed for strict OwnPtr compliance.
2902
2903         * loader/icon/IconDatabase.cpp:
2904         (WebCore::readySQLiteStatement):
2905
2906 2011-04-25  Adam Barth  <abarth@webkit.org>
2907
2908         Reviewed by Maciej Stachowiak.
2909
2910         ImageBuffer.h should work with strict OwnPtrs
2911         https://bugs.webkit.org/show_bug.cgi?id=59341
2912
2913         This patch is to prepare for the strict OwnPtr hack-a-thon.
2914
2915         * platform/graphics/ImageBuffer.h:
2916         (WebCore::ImageBuffer::create):
2917
2918 2011-04-25  Steve Falkenburg  <sfalken@apple.com>
2919
2920         Reviewed by Brian Weinstein.
2921
2922         WebCore build on Windows should include windows.h in its precompiled header to speed builds
2923         https://bugs.webkit.org/show_bug.cgi?id=59339
2924
2925         windows.h is included by several of the underlying wtf headers, including Atomics.h and
2926         ThreadingPrimitives.h anyway, so include it in the WebCorePrefix.h to speed up compilation.
2927         
2928         On my 8 core Mac Pro, this reduces a clean rebuild of debug WebCore from 8 minutes to 7 minutes
2929         (a 12% speedup).
2930
2931         * WebCorePrefix.h: Include windows.h
2932
2933 2011-04-25  Martin Robinson  <mrobinson@igalia.com>
2934
2935         Reviewed by Xan Lopez.
2936
2937         [GTK] Crash in WebCore::FrameView::notifyPageThatContentAreaWillPaint()
2938         https://bugs.webkit.org/show_bug.cgi?id=59311
2939
2940         * platform/gtk/MainFrameScrollbarGtk.cpp:
2941         (MainFrameScrollbarGtk::attachAdjustment): Before connecting an adjustment to a scrollbar
2942         disconnect any lingering signal handlers. This prevents an adjustment from controlling the
2943         active ScrollView and some zombie ScrollView.
2944
2945 2011-04-25  Geoffrey Garen  <ggaren@apple.com>
2946
2947         Another shot at fixing the EFL build.
2948
2949         * UseJSC.cmake:
2950         * bindings/js/JSDOMBinding.cpp:
2951
2952 2011-04-25  Geoffrey Garen  <ggaren@apple.com>
2953
2954         Try to fix EFL build.
2955
2956         * UseJSC.cmake: Added a missing file.
2957
2958 2011-04-25  Geoffrey Garen  <ggaren@apple.com>
2959
2960         Reviewed by Oliver Hunt.
2961
2962         Removed a use of markDOMObjectWrapper: ActiveDOMObjects, Workers, and MessagePorts
2963         https://bugs.webkit.org/show_bug.cgi?id=59333
2964
2965         * WebCore.xcodeproj/project.pbxproj: Added .idl files for easier editing.
2966
2967         * bindings/js/JSDOMBinding.cpp:
2968         * bindings/js/JSDOMBinding.h:
2969         * bindings/js/JSDocumentCustom.cpp:
2970         * bindings/js/JSWorkerContextCustom.cpp:
2971         (WebCore::JSWorkerContext::visitChildren): Removed now-unused functions.
2972
2973         * bindings/scripts/CodeGeneratorJS.pm: Added support for ActiveDOMObject
2974         lifetime management.
2975
2976         * dom/Document.idl: No need for a custom mark function anymore, since
2977         ActiveDOMObjets now manage their own lifetimes.
2978
2979         * dom/MessagePort.cpp:
2980         (WebCore::MessagePort::hasPendingActivity): Correctly report that we
2981         have pending activity when we're remotely entangled, instead of relying
2982         on our clients to know this about us and do the check for us.
2983
2984         * dom/MessagePort.h: FIXME!
2985
2986         * dom/MessagePort.idl:
2987         * fileapi/DOMFileSystem.idl:
2988         * fileapi/FileReader.idl:
2989         * fileapi/FileWriter.idl:
2990         * notifications/Notification.idl:
2991         * notifications/NotificationCenter.idl:
2992         * page/EventSource.idl:
2993         * storage/IDBDatabase.idl:
2994         * storage/IDBRequest.idl:
2995         * storage/IDBTransaction.idl:
2996         * webaudio/AudioContext.idl:
2997         * websockets/WebSocket.idl:
2998         * workers/AbstractWorker.idl:
2999         * workers/SharedWorker.idl:
3000         * workers/Worker.idl: Opt in to ActiveDOMObject lifetime management.
3001
3002         * workers/WorkerContext.cpp:
3003         (WebCore::WorkerContext::hasPendingActivity): No need to make up for
3004         MessagePort::hasPendingActivity being wrong anymore, since it's now right.
3005
3006         * xml/XMLHttpRequest.idl: Opt in to ActiveDOMObject lifetime management.
3007
3008 2011-04-25  Yury Semikhatsky  <yurys@chromium.org>
3009
3010         Reviewed by Pavel Feldman.
3011
3012         Web Inspector: worker messages should be routed to corresponding worker front-end
3013         https://bugs.webkit.org/show_bug.cgi?id=59323
3014
3015         Added WorkerManager which is responsible for routing messages between
3016         Page inspector front-end and Worker inspector front-ends.
3017
3018         * WebCore.gypi:
3019         * inspector/front-end/WebKit.qrc:
3020         * inspector/front-end/WorkerManager.js: Added.
3021         (WebInspector.WorkerManager):
3022         (WebInspector.WorkerManager.loaded.InspectorFrontendHost.sendMessageToBackend):
3023         (WebInspector.WorkerManager.loaded.InspectorFrontendHost.loaded):
3024         (WebInspector.WorkerManager.loaded):
3025         (WebInspector.WorkerFrontendStub):
3026         (WebInspector.WorkerFrontendStub.prototype._receiveMessage):
3027         (WebInspector.WorkerDispatcher):
3028         (WebInspector.WorkerDispatcher.prototype._receiveMessage):
3029         (WebInspector.WorkerDispatcher.prototype.workerCreated):
3030         (WebInspector.WorkerDispatcher.prototype.dispatchMessageFromWorker):
3031         * inspector/front-end/inspector.html:
3032         * inspector/front-end/inspector.js:
3033         (WebInspector.loaded):
3034
3035 2011-04-25  Annie Sullivan  <sullivan@chromium.org>
3036
3037         Reviewed by Pavel Feldman.
3038
3039         Web Inspector: [Resources panel] Should be easy to copy data.
3040         https://bugs.webkit.org/show_bug.cgi?id=45662
3041
3042         Adds context menu items to copy resource location, resource request headers, and resource response headers.
3043
3044         * inspector/front-end/NetworkPanel.js:
3045         (WebInspector.NetworkPanel.prototype._contextMenu): Add new items to context menu.
3046         (WebInspector.NetworkPanel.prototype._exportLocation): Copy resource location to clipboard.
3047         (WebInspector.NetworkPanel.prototype._exportRequestHeaders): Copy resource request headers to clipboard.
3048         (WebInspector.NetworkPanel.prototype._exportResponseHeaders): Copy resource response headers to clipboard.
3049         * inspector/front-end/Resource.js:
3050         (WebInspector.Resource.prototype.get requestHeadersText): If _requestHeadersText is undefined, generate it from requestHeaders.
3051         (WebInspector.Resource.prototype.get responseHeadersText): If _responseHeadersText is undefined, generate it form responseHeaders.
3052
3053 2011-04-25  Alexander Pavlov  <apavlov@chromium.org>
3054
3055         Reviewed by Yury Semikhatsky.
3056
3057         Web Inspector: CSS is parsed improperly when saved in UTF-8 with a BOM
3058         https://bugs.webkit.org/show_bug.cgi?id=59322
3059
3060         Use TextResourceDecoder to determine external stylesheet charsets correctly.
3061
3062         Test: inspector/styles/parse-utf8-bom.html
3063
3064         * inspector/InspectorStyleSheet.cpp:
3065         (WebCore::InspectorStyleSheet::originalStyleSheetText):
3066
3067 2011-04-25  Pavel Feldman  <pfeldman@google.com>
3068
3069         Not reviewed: Inspector.json cleanup.
3070
3071         * inspector/Inspector.json:
3072
3073 2011-04-25  Yury Semikhatsky  <yurys@chromium.org>
3074
3075         Reviewed by Pavel Feldman.
3076
3077         Web Inspector: introduce InspectorWorkerAgent
3078         https://bugs.webkit.org/show_bug.cgi?id=59320
3079
3080         InspectorWorkerAgent is responsible for routing inspector messages
3081         between worker context inspector agents and corresponding worker
3082         inspector front-end.
3083
3084         * CMakeLists.txt:
3085         * GNUmakefile.list.am:
3086         * WebCore.gypi:
3087         * WebCore.pro:
3088         * WebCore.vcproj/WebCore.vcproj:
3089         * WebCore.xcodeproj/project.pbxproj:
3090         * inspector/CodeGeneratorInspector.pm:
3091         * inspector/Inspector.json:
3092         * inspector/InspectorAgent.cpp:
3093         (WebCore::InspectorAgent::InspectorAgent):
3094         (WebCore::InspectorAgent::setFrontend):
3095         (WebCore::InspectorAgent::disconnectFrontend):
3096         * inspector/InspectorAgent.h:
3097         (WebCore::InspectorAgent::workerAgent):
3098         * inspector/InspectorController.cpp:
3099         (WebCore::InspectorController::connectFrontend):
3100         (WebCore::InspectorController::disconnectFrontend):
3101         * inspector/InspectorInstrumentation.cpp:
3102         (WebCore::InspectorInstrumentation::didStartWorkerContextImpl):
3103         * inspector/InspectorInstrumentation.h:
3104         (WebCore::InspectorInstrumentation::willStartWorkerContext):
3105         (WebCore::InspectorInstrumentation::didStartWorkerContext):
3106         * inspector/InspectorWorkerAgent.cpp: Added.
3107         (WebCore::InspectorWorkerAgent::WorkerFrontendChannel::WorkerFrontendChannel):
3108         (WebCore::InspectorWorkerAgent::WorkerFrontendChannel::~WorkerFrontendChannel):
3109         (WebCore::InspectorWorkerAgent::WorkerFrontendChannel::id):
3110         (WebCore::InspectorWorkerAgent::WorkerFrontendChannel::inspectorProxy):
3111         (WebCore::InspectorWorkerAgent::WorkerFrontendChannel::sendMessageToFrontend):
3112         (WebCore::InspectorWorkerAgent::create):
3113         (WebCore::InspectorWorkerAgent::InspectorWorkerAgent):
3114         (WebCore::InspectorWorkerAgent::~InspectorWorkerAgent):
3115         (WebCore::InspectorWorkerAgent::setFrontend):
3116         (WebCore::InspectorWorkerAgent::clearFrontend):
3117         (WebCore::InspectorWorkerAgent::dispatchMessageOnWorkerInspector):
3118         (WebCore::InspectorWorkerAgent::didStartWorkerContext):
3119         * inspector/InspectorWorkerAgent.h: Added.
3120         * inspector/InstrumentingAgents.h:
3121         (WebCore::InstrumentingAgents::InstrumentingAgents):
3122         (WebCore::InstrumentingAgents::inspectorWorkerAgent):
3123         (WebCore::InstrumentingAgents::setInspectorWorkerAgent):
3124         * inspector/WorkerInspectorController.cpp:
3125         (WebCore::WorkerInspectorController::connectFrontend):
3126         * inspector/generate-inspector-idl:
3127         * workers/Worker.cpp:
3128         (WebCore::Worker::notifyFinished):
3129         * workers/WorkerContextInspectorProxy.h: Added. Platform-specific transport for inspector
3130         messages sent from the inspected page worker agent to the worker context inspector agents.
3131         (WebCore::WorkerContextInspectorProxy::connectFrontend):
3132         (WebCore::WorkerContextInspectorProxy::disconnectFrontend):
3133         (WebCore::WorkerContextInspectorProxy::sendMessageToWorkerContextInspector):
3134         (WebCore::WorkerContextInspectorProxy::~WorkerContextInspectorProxy):
3135         * workers/WorkerContextProxy.h:
3136         (WebCore::WorkerContextProxy::inspectorProxy):
3137
3138 2011-04-25  Pavel Feldman  <pfeldman@google.com>
3139
3140         Reviewed by Yury Semikhatsky.
3141
3142         Web Inspector: move Frame and Resource Tree management into the Page agent.
3143         https://bugs.webkit.org/show_bug.cgi?id=59321
3144
3145         Network agent should only handle network-related activities.
3146         Frame structure should be managed by the Page agent instead.
3147
3148         * inspector/Inspector.json:
3149         * inspector/InspectorAgent.cpp:
3150         (WebCore::InspectorAgent::InspectorAgent):
3151         * inspector/InspectorDOMAgent.cpp:
3152         (WebCore::InspectorDOMAgent::InspectorDOMAgent):
3153         (WebCore::InspectorDOMAgent::setFrontend):
3154         (WebCore::InspectorDOMAgent::restore):
3155         (WebCore::InspectorDOMAgent::highlightFrame):
3156         * inspector/InspectorDOMAgent.h:
3157         (WebCore::InspectorDOMAgent::create):
3158         * inspector/InspectorInstrumentation.cpp:
3159         (WebCore::InspectorInstrumentation::domContentLoadedEventFiredImpl):
3160         (WebCore::InspectorInstrumentation::loadEventFiredImpl):
3161         (WebCore::InspectorInstrumentation::frameDetachedFromParentImpl):
3162         (WebCore::InspectorInstrumentation::didCommitLoadImpl):
3163         * inspector/InspectorPageAgent.cpp:
3164         (WebCore::InspectorPageAgent::create):
3165         (WebCore::InspectorPageAgent::resourceContent):
3166         (WebCore::InspectorPageAgent::resourceContentBase64):
3167         (WebCore::InspectorPageAgent::resourceData):
3168         (WebCore::InspectorPageAgent::cachedResource):
3169         (WebCore::InspectorPageAgent::resourceTypeString):
3170         (WebCore::InspectorPageAgent::cachedResourceType):
3171         (WebCore::InspectorPageAgent::cachedResourceTypeString):
3172         (WebCore::InspectorPageAgent::InspectorPageAgent):
3173         (WebCore::InspectorPageAgent::setFrontend):
3174         (WebCore::InspectorPageAgent::reload):
3175         (WebCore::InspectorPageAgent::open):
3176         (WebCore::InspectorPageAgent::getCookies):
3177         (WebCore::InspectorPageAgent::deleteCookie):
3178         (WebCore::InspectorPageAgent::getResourceTree):
3179         (WebCore::InspectorPageAgent::getResourceContent):
3180         (WebCore::InspectorPageAgent::restore):
3181         (WebCore::InspectorPageAgent::domContentEventFired):
3182         (WebCore::InspectorPageAgent::loadEventFired):
3183         (WebCore::InspectorPageAgent::frameNavigated):
3184         (WebCore::InspectorPageAgent::frameDetached):
3185         (WebCore::InspectorPageAgent::didClearWindowObjectInWorld):
3186         (WebCore::InspectorPageAgent::mainFrame):
3187         (WebCore::pointerAsId):
3188         (WebCore::InspectorPageAgent::frameForId):
3189         (WebCore::InspectorPageAgent::frameId):
3190         (WebCore::InspectorPageAgent::loaderId):
3191         (WebCore::InspectorPageAgent::buildObjectForFrame):
3192         (WebCore::InspectorPageAgent::buildObjectForFrameTree):
3193         * inspector/InspectorPageAgent.h:
3194         * inspector/InspectorResourceAgent.cpp:
3195         (WebCore::buildObjectForCachedResource):
3196         (WebCore::InspectorResourceAgent::willSendRequest):
3197         (WebCore::InspectorResourceAgent::didReceiveResponse):
3198         (WebCore::InspectorResourceAgent::didLoadResourceFromMemoryCache):
3199         (WebCore::InspectorResourceAgent::setInitialScriptContent):
3200         (WebCore::InspectorResourceAgent::setInitialXHRContent):
3201         (WebCore::InspectorResourceAgent::InspectorResourceAgent):
3202         * inspector/InspectorResourceAgent.h:
3203         (WebCore::InspectorResourceAgent::create):
3204         * inspector/InspectorStyleSheet.cpp:
3205         (WebCore::InspectorStyleSheet::resourceStyleSheetText):
3206         * inspector/front-end/NetworkManager.js:
3207         (WebInspector.NetworkManager.prototype.requestContent):
3208         * inspector/front-end/NetworkPanel.js:
3209         (WebInspector.NetworkPanel):
3210         (WebInspector.NetworkPanel.prototype.frameNavigated):
3211         * inspector/front-end/ResourceTreeModel.js:
3212         (WebInspector.ResourceTreeModel):
3213         (WebInspector.ResourceTreeModel.prototype.frontendReused):
3214         (WebInspector.ResourceTreeModel.prototype.frameNavigated):
3215         (WebInspector.ResourceTreeModel.prototype.frameDetached):
3216         * inspector/front-end/inspector.js:
3217         (WebInspector.domContentEventFired):
3218         (WebInspector.loadEventFired):
3219         (WebInspector.frameNavigated):
3220         (WebInspector.frameDetached):
3221
3222 2011-04-25  Pavel Feldman  <pfeldman@google.com>
3223
3224         Reviewed by Yury Semikhatsky.
3225
3226         Web Inspector: few protocol improvements.
3227         https://bugs.webkit.org/show_bug.cgi?id=59319
3228
3229         - Page domain is documented
3230         - setUserAgentOverride is moved to the Network agent
3231         - setSearchingForNode -> setInspectModeEnabled
3232         - highlightDOMNode -> highlightNode
3233         - reloadPage -> reload
3234         - openInNewWindow -> open with optional parameter
3235
3236         * inspector/Inspector.json:
3237         * inspector/InspectorDOMAgent.cpp:
3238         (WebCore::InspectorDOMAgent::setInspectModeEnabled):
3239         (WebCore::InspectorDOMAgent::highlightNode):
3240         * inspector/InspectorDOMAgent.h:
3241         (WebCore::InspectorDOMAgent::hideNodeHighlight):
3242         * inspector/InspectorInstrumentation.cpp:
3243         (WebCore::InspectorInstrumentation::applyUserAgentOverrideImpl):
3244         * inspector/InspectorPageAgent.cpp:
3245         (WebCore::InspectorPageAgent::clearFrontend):
3246         (WebCore::InspectorPageAgent::reload):
3247         (WebCore::InspectorPageAgent::open):
3248         * inspector/InspectorPageAgent.h:
3249         * inspector/InspectorResourceAgent.cpp:
3250         (WebCore::InspectorResourceAgent::clearFrontend):
3251         (WebCore::InspectorResourceAgent::applyUserAgentOverride):
3252         (WebCore::InspectorResourceAgent::setUserAgentOverride):
3253         * inspector/InspectorResourceAgent.h:
3254         * inspector/front-end/AuditsPanel.js:
3255         (WebInspector.AuditsPanel.prototype._reloadResources):
3256         * inspector/front-end/ElementsPanel.js:
3257         (WebInspector.ElementsPanel.prototype.setSearchingForNode):
3258         * inspector/front-end/ExtensionServer.js:
3259         (WebInspector.ExtensionServer.prototype._onReload):
3260         * inspector/front-end/NetworkPanel.js:
3261         (WebInspector.NetworkDataGridNode.prototype._openInNewTab):
3262         * inspector/front-end/ResourcesPanel.js:
3263         (WebInspector.FrameResourceTreeElement.prototype.ondblclick):
3264         * inspector/front-end/inspector.js:
3265         (WebInspector.highlightDOMNode):
3266         (WebInspector.openResource):
3267         (WebInspector.documentKeyDown):
3268
3269 2011-04-25  Jon Lee  <jonlee@apple.com>
3270
3271         Reviewed by Maciej Stachowiak.
3272
3273         Overlay scroller hard to see on pages with dark background (59183)
3274         https://bugs.webkit.org/show_bug.cgi?id=59183
3275         <rdar://problem/8975367>
3276
3277         Switch the scrollbar's overlay style depending on its frame's background color.
3278         This refactors the getDocumentBackgroundColor method needed for gestures. The style
3279         is determined and set on every paint() call to the Mac scrollbar theme.
3280
3281         * WebCore.exp.in: adding method to allow changing style
3282         * page/Frame.cpp:
3283         (WebCore::Frame::getDocumentBackgroundColor): moving code from WebFrame for reuse by FrameView
3284         * page/Frame.h:
3285         * page/FrameView.cpp:
3286         (WebCore::FrameView::recommendedScrollbarOverlayStyle): overridden to suggest a style based on CSS background color
3287         * page/FrameView.h:
3288         * platform/ScrollTypes.h: new enum to represent different overlay scrollbar styles
3289         * platform/ScrollableArea.h:
3290         (WebCore::ScrollableArea::recommendedScrollbarOverlayStyle): new virtual function to return a suggested overlay style
3291         * platform/mac/ScrollbarThemeMac.mm:
3292         (WebCore::ScrollbarThemeMac::paint):
3293         * platform/mac/WebCoreSystemInterface.h:
3294         * platform/mac/WebCoreSystemInterface.mm:
3295
3296 2011-04-25  Dan Bernstein  <mitz@apple.com>
3297
3298         Reviewed by Maciej Stachowiak.
3299
3300         <rdar://problem/9113516> REGRESSION (WK2): Holding down Option while dragging scrollbar thumb has no effect (should make scroll distance equal mouse translation)
3301         https://bugs.webkit.org/show_bug.cgi?id=59315
3302
3303         * platform/Scrollbar.cpp:
3304         (WebCore::Scrollbar::Scrollbar): Initialize new member variables.
3305         (WebCore::Scrollbar::moveThumb): Added a boolean draggingDocument parameter. When true, the document
3306         is scrolled a distance equal to the change in the mouse position.
3307         (WebCore::Scrollbar::mouseMoved): Check with the theme whether the mouse move event should drag
3308         the document rather than the thumb, and pass the result to moveThumb.
3309         (WebCore::Scrollbar::mouseUp): Reset m_draggingDocument.
3310         * platform/Scrollbar.h:
3311         * platform/ScrollbarTheme.h:
3312         (WebCore::ScrollbarTheme::shouldDragDocumentInsteadOfThumb): Added. The base class implementation
3313         returns false.
3314         * platform/mac/ScrollbarThemeMac.h:
3315         * platform/mac/ScrollbarThemeMac.mm:
3316         (WebCore::ScrollbarThemeMac::shouldDragDocumentInsteadOfThumb): Overridden to return true if the
3317         Option key is down.
3318
3319 2011-04-24  Geoffrey Garen  <ggaren@apple.com>
3320
3321         Reviewed by Sam Weinig.
3322
3323         Removed a use of markDOMObjectWrapper: WebGL, XHR, workers; plus, more autogeneration
3324         https://bugs.webkit.org/show_bug.cgi?id=59307
3325
3326         * WebCore.xcodeproj/project.pbxproj: Added Blob.idl, so it's easier to edit.
3327
3328         * bindings/js/JSCSSRuleCustom.cpp:
3329         * bindings/js/JSCSSStyleDeclarationCustom.cpp:
3330         * bindings/js/JSCanvasRenderingContextCustom.cpp:
3331         * bindings/js/JSDOMApplicationCacheCustom.cpp: Autogenerate these instead
3332         of hand-coding them.
3333
3334         * bindings/js/JSDOMBinding.h:
3335         (WebCore::root): Moved some GC helpers here from JSNodeCustom.h, because
3336         they're reasonably generic.
3337
3338         * bindings/js/JSDOMImplementationCustom.cpp:
3339         * bindings/js/JSDOMStringMapCustom.cpp:
3340         * bindings/js/JSDOMTokenListCustom.cpp:
3341         * bindings/js/JSHTMLCollectionCustom.cpp:
3342         * bindings/js/JSMediaListCustom.cpp: Autogenerate these instead of
3343         hand-coding them.
3344
3345         * bindings/js/JSMessageChannelCustom.cpp:
3346         (WebCore::JSMessageChannel::visitChildren):
3347         * bindings/js/JSMessagePortCustom.cpp:
3348         (WebCore::JSMessagePort::visitChildren): Use addOpaqueRoot instead of
3349         markDOMObjectWrapper. This is one of the few cases where a DOM object is
3350         considered a stand-alone root. It's not as efficient as the shared root
3351         case, but workers and message ports are very rare objects, so it's no
3352         big deal.
3353
3354         * bindings/js/JSNamedNodeMapCustom.cpp: Autogenerate!
3355
3356         * bindings/js/JSNodeCustom.h: Moved to JSDOMBinding.h.
3357
3358         * bindings/js/JSSharedWorkerCustom.cpp:
3359         (WebCore::JSSharedWorker::visitChildren): Use addOpaqueRoot instead of
3360         markDOMObjectWrapper, as above. Once again, a stand-alone root.
3361
3362         * bindings/js/JSStyleSheetCustom.cpp:
3363         * bindings/js/JSStyleSheetListCustom.cpp: Autogenerate!
3364
3365         * bindings/js/JSWebGLRenderingContextCustom.cpp:
3366         (WebCore::JSWebGLRenderingContext::visitChildren): Use the opaque roots
3367         system for marking WebGL contexts and their associated satellite objects.
3368
3369         * bindings/js/JSWorkerContextCustom.cpp:
3370         (WebCore::JSWorkerContext::visitChildren):
3371         * bindings/js/JSXMLHttpRequestCustom.cpp: Use addOpaqueRoot instead of
3372         markDOMObjectWrapper, as above. Once again, stand-alone roots.
3373
3374         (WebCore::JSXMLHttpRequest::visitChildren):
3375         * bindings/js/JSXMLHttpRequestUploadCustom.cpp: No need to mark our owner
3376         XHR because it is not reachable from us.
3377
3378         * bindings/scripts/CodeGeneratorJS.pm: Added autogeneration support for a
3379         bunch of repetitive cases of isReachableFromOpaqueRoots callbacks.
3380
3381         * css/CSSRule.idl:
3382         * css/CSSStyleDeclaration.idl:
3383         * css/MediaList.idl:
3384         * css/StyleMedia.idl:
3385         * css/StyleSheet.idl:
3386         * css/StyleSheetList.idl:
3387         * dom/DOMImplementation.idl:
3388         * dom/DOMStringMap.idl:
3389         * dom/MessagePort.idl:
3390         * dom/NamedNodeMap.idl:
3391         * fileapi/Blob.idl:
3392         * html/DOMTokenList.idl: Opt in to autogeneration.
3393
3394         * html/HTMLCanvasElement.cpp:
3395         (WebCore::HTMLCanvasElement::getContext): Standardized on PassOwnPtr/OwnPtr
3396         usage, to reduce human error and make ownership rules more obvious.
3397
3398         * html/HTMLCollection.idl:
3399         * html/canvas/ArrayBuffer.idl: Opt in to autogeneration.
3400
3401         * html/canvas/CanvasRenderingContext.cpp:
3402         * html/canvas/CanvasRenderingContext.h:
3403         (WebCore::CanvasRenderingContext::ref):
3404         (WebCore::CanvasRenderingContext::deref):
3405         * html/canvas/CanvasRenderingContext2D.h:
3406         (WebCore::CanvasRenderingContext2D::create):
3407         (WebCore::CanvasRenderingContext2D::state): Standardized on PassOwnPtr/OwnPtr
3408         usage, to reduce human error and make ownership rules more obvious.
3409         
3410         Inlined some functions to match our standard idiom and to make the code
3411         in the header document itself.
3412
3413         * html/canvas/CanvasRenderingContext.idl: Opt in to autogeneration.
3414
3415         * html/canvas/OESStandardDerivatives.cpp:
3416         (WebCore::OESStandardDerivatives::OESStandardDerivatives):
3417         (WebCore::OESStandardDerivatives::create):
3418         * html/canvas/OESStandardDerivatives.h:
3419         * html/canvas/OESStandardDerivatives.idl:
3420         * html/canvas/OESTextureFloat.cpp:
3421         (WebCore::OESTextureFloat::OESTextureFloat):
3422         (WebCore::OESTextureFloat::create):
3423         * html/canvas/OESTextureFloat.h:
3424         * html/canvas/OESTextureFloat.idl:
3425         * html/canvas/OESVertexArrayObject.cpp:
3426         (WebCore::OESVertexArrayObject::OESVertexArrayObject):
3427         (WebCore::OESVertexArrayObject::create):
3428         * html/canvas/OESVertexArrayObject.h:
3429         * html/canvas/OESVertexArrayObject.idl:
3430         * html/canvas/WebGLExtension.cpp:
3431         (WebCore::WebGLExtension::WebGLExtension):
3432         * html/canvas/WebGLExtension.h:
3433         (WebCore::WebGLExtension::ref):
3434         (WebCore::WebGLExtension::deref):
3435         (WebCore::WebGLExtension::context):
3436         * html/canvas/WebGLRenderingContext.cpp:
3437         (WebCore::WebGLRenderingContext::~WebGLRenderingContext):
3438         (WebCore::WebGLRenderingContext::getExtension):
3439         * html/canvas/WebGLRenderingContext.h:
3440         * html/canvas/WebKitLoseContext.cpp:
3441         (WebCore::WebKitLoseContext::WebKitLoseContext):
3442         (WebCore::WebKitLoseContext::create):
3443         (WebCore::WebKitLoseContext::loseContext):
3444         * html/canvas/WebKitLoseContext.h:
3445         * html/canvas/WebKitLoseContext.idl: Updated the ownership model for WebGL
3446         canavs rendering contexts to match the model for 2D canvas rendering
3447         contexts. This makes garbage collection a lot more straightforward, but
3448         it also makes the behavior of these objects more reliable. (Previously,
3449         satellite objects would magically stop working when the last reference
3450         to their owner object was dropped. Now, satellite objects keep their owner
3451         alive through reference counting.)
3452
3453         * loader/appcache/DOMApplicationCache.idl:
3454         * page/BarInfo.idl:
3455         * page/Console.idl:
3456         * page/DOMSelection.idl:
3457         * page/Geolocation.idl:
3458         * page/History.idl:
3459         * page/Location.idl:
3460         * page/Navigator.idl:
3461         * page/Screen.idl:
3462         * page/WorkerNavigator.idl:
3463         * plugins/DOMMimeTypeArray.h:
3464         (WebCore::DOMMimeTypeArray::frame):
3465         * plugins/DOMMimeTypeArray.idl:
3466         * plugins/DOMPluginArray.h:
3467         (WebCore::DOMPluginArray::frame):
3468         * plugins/DOMPluginArray.idl:
3469         * storage/Storage.idl:
3470         * workers/WorkerLocation.idl: Opt in to autogeneration.
3471
3472         * xml/XMLHttpRequest.cpp:
3473         (WebCore::XMLHttpRequest::~XMLHttpRequest):
3474         * xml/XMLHttpRequest.h:
3475         * xml/XMLHttpRequestUpload.cpp:
3476         (WebCore::XMLHttpRequestUpload::scriptExecutionContext):
3477         * xml/XMLHttpRequestUpload.h:
3478         (WebCore::XMLHttpRequestUpload::create):
3479         (WebCore::XMLHttpRequestUpload::ref):
3480         (WebCore::XMLHttpRequestUpload::deref):
3481         (WebCore::XMLHttpRequestUpload::xmlHttpRequest):
3482         (WebCore::XMLHttpRequestUpload::toXMLHttpRequestUpload):
3483         * xml/XMLHttpRequestUpload.idl: Updated the ownership model for XHR and
3484         its associated upload object to match the model for canvas. This makes
3485         garbage collection a lot more straightforward, but it also makes the
3486         behavior of these objects more reliable.
3487
3488 2011-04-24  Sheriff Bot  <webkit.review.bot@gmail.com>
3489
3490         Unreviewed, rolling out r84759.
3491         http://trac.webkit.org/changeset/84759
3492         https://bugs.webkit.org/show_bug.cgi?id=59306
3493
3494         Caused gc-shadow.html to start crashing in V8. (Requested by
3495         dglazkov|away on #webkit).
3496
3497         * dom/Node.cpp:
3498         (WebCore::NodeRendererFactory::createRendererAndStyle):
3499         (WebCore::Node::styleForRenderer):
3500
3501 2011-04-24  Maciej Stachowiak  <mjs@apple.com>
3502
3503         Reviewed by George Staikos.
3504
3505         Handling of URLs like http:/example.com/ is incorrect
3506         https://bugs.webkit.org/show_bug.cgi?id=59300
3507         <rdar://problem/9231956>
3508
3509         URLs like http:/example.com/ or http:example.com/ are now correctly
3510         canonicalized as http://example.com/
3511         
3512         The code still doesn't quite match other browsers - at least some
3513         other browsers seem to base parsing behavior on whether they
3514         recongize a scheme from a fixed list, and ignore whether // is
3515         present in the URL or not.
3516         
3517         * platform/KURL.cpp:
3518         (WebCore::isNonFileHierarchicalScheme): New helper function.
3519         (WebCore::KURL::parse): For a particular list of whitelisted schemes,
3520         assume they are hierarchical and need an authority even if there is no //
3521         after the :/
3522
3523 2011-04-24  Dan Bernstein  <mitz@apple.com>
3524
3525         LLVM Compiler build fix.
3526
3527         * page/ContentSecurityPolicy.cpp: Removed an unused function.
3528
3529 2011-04-24  Dominic Cooney  <dominicc@chromium.org>
3530
3531         Reviewed by Dimitri Glazkov.
3532
3533         Crash when adding a text node to a shadow root
3534         https://bugs.webkit.org/show_bug.cgi?id=59304
3535
3536         Text nodes need to consult their host element for style.
3537
3538         Test: fast/dom/shadow/append-child-text.html
3539
3540         * dom/Node.cpp:
3541         (WebCore::NodeRendererFactory::styleForRenderer):
3542         (WebCore::NodeRendererFactory::createRendererAndStyle):
3543         (WebCore::Node::styleForRenderer): forward to NodeRendererFactory
3544
3545 2011-04-24  Adam Barth  <abarth@webkit.org>
3546
3547         Reviewed by Eric Seidel.
3548
3549         Update Content-Security-Policy syntax to match new version of spec
3550         https://bugs.webkit.org/show_bug.cgi?id=59291
3551
3552         Brandon removed disable-xss-protection in favor of unsafe-inline and
3553         allow-eval in favor of unsafe-eval.  This change in syntax also means
3554         the options directive no longer exists.
3555
3556         * page/ContentSecurityPolicy.cpp:
3557         (WebCore::CSPSourceList::allowInline):
3558         (WebCore::CSPSourceList::allowEval):
3559         (WebCore::CSPSourceList::CSPSourceList):
3560         (WebCore::CSPSourceList::parseSource):
3561         (WebCore::CSPSourceList::addSourceUnsafeInline):
3562         (WebCore::CSPSourceList::addSourceUnsafeEval):
3563         (WebCore::CSPDirective::allowInline):
3564         (WebCore::CSPDirective::allowEval):
3565         (WebCore::ContentSecurityPolicy::allowJavaScriptURLs):
3566         (WebCore::ContentSecurityPolicy::allowInlineEventHandlers):
3567         (WebCore::ContentSecurityPolicy::allowInlineScript):
3568         (WebCore::ContentSecurityPolicy::allowEval):
3569         (WebCore::ContentSecurityPolicy::addDirective):
3570         * page/ContentSecurityPolicy.h:
3571
3572 2011-04-24  Dan Bernstein  <mitz@apple.com>
3573
3574         Reviewed by Maciej Stachowiak.
3575
3576         Manual test for <rdar://problem/9329741> Reproducible crash in WebChromeClient::invalidateContentsAndWindow() on simonscat.com
3577         https://bugs.webkit.org/show_bug.cgi?id=59299
3578
3579         * manual-tests/back-from-document-with-scrollbar.html: Added.
3580
3581 2011-04-24  Rik Cabanier  <cabanier@adobe.com>
3582
3583         Reviewed by Simon Fraser.
3584
3585         Tables are not rendered correctly
3586         https://bugs.webkit.org/show_bug.cgi?id=59138
3587
3588         Test: fast/table/auto-100-percent-width.html
3589
3590         * rendering/AutoTableLayout.cpp:
3591         (WebCore::AutoTableLayout::computePreferredLogicalWidths):
3592
3593 2011-04-23  Simon Fraser  <simon.fraser@apple.com>
3594
3595         Fix Windows build, which complains about unreachable code.
3596
3597         * platform/ScrollableArea.cpp:
3598         (WebCore::ScrollableArea::hasLayerForHorizontalScrollbar):
3599         (WebCore::ScrollableArea::hasLayerForVerticalScrollbar):
3600         (WebCore::ScrollableArea::hasLayerForScrollCorner):
3601
3602 2011-04-23  Simon Fraser  <simon.fraser@apple.com>
3603
3604         Reviewed by Dan Bernstein.
3605
3606         Area under composited scrollbars not repainted in WebKit2 on scrolling
3607         https://bugs.webkit.org/show_bug.cgi?id=59294
3608         <rdar://problem/9299062>
3609         
3610         When computing the rect that can be copied on scrolling, we normally
3611         exclude the areas occupied by overlay scrollbars to avoid smeared scrollbars;
3612         the assumption is that other code will repaint these areas. However, when
3613         scrollbars are in their own compositing layers, we can, and should
3614         copy the entire area.
3615
3616         Not testable in DRT because it does not allow tests to use overlay scrollbars.
3617
3618         * platform/ScrollView.h:
3619         * platform/ScrollView.cpp:
3620         (WebCore::ScrollView::rectToCopyOnScroll):
3621         New method, with code moved from scrollContents and fixed to look
3622         for scrollbars in layers.
3623         (WebCore::ScrollView::scrollContents):
3624         Call rectToCopyOnScroll().
3625         
3626         * platform/ScrollableArea.h:
3627         * platform/ScrollableArea.cpp:
3628         (WebCore::ScrollableArea::hasLayerForHorizontalScrollbar):
3629         (WebCore::ScrollableArea::hasLayerForVerticalScrollbar):
3630         (WebCore::ScrollableArea::hasLayerForScrollCorner):
3631         Methods we can call outside of the ACCELERATED_COMPOSITING #ifdef.
3632
3633 2011-04-23  Sheriff Bot  <webkit.review.bot@gmail.com>
3634
3635         Unreviewed, rolling out r84740.
3636         http://trac.webkit.org/changeset/84740
3637         https://bugs.webkit.org/show_bug.cgi?id=59290
3638
3639         change breaks apple internal builds and is incorrect
3640         (Requested by smfr on #webkit).
3641
3642         * WebCore.exp.in:
3643         * page/FrameView.cpp:
3644         * page/FrameView.h:
3645         * platform/ScrollTypes.h:
3646         * platform/ScrollableArea.h:
3647         * platform/mac/ScrollbarThemeMac.mm:
3648         (WebCore::ScrollbarThemeMac::paint):
3649         * platform/mac/WebCoreSystemInterface.h:
3650         * platform/mac/WebCoreSystemInterface.mm:
3651
3652 2011-04-23  Dan Bernstein  <mitz@apple.com>
3653
3654         Reviewed by Simon Fraser.
3655
3656         <rdar://problem/8970549> WebFindOptionsAtWordStarts fails with Japanese words
3657         https://bugs.webkit.org/show_bug.cgi?id=59288
3658
3659         * platform/text/mac/TextBoundaries.mm:
3660         (WebCore::wordStringTokenizer): Added this helper function.
3661         (WebCore::findNextWordFromIndex): Changed to use a CFStringTokenizer with kCFStringTokenizerUnitWord,
3662         whose behavior is not locale-dependent.
3663
3664 2011-04-23  Dominic Cooney  <dominicc@chromium.org>
3665
3666         Reviewed by Dimitri Glazkov.
3667
3668         [V8] Nodes in shadow DOM should not be GCed while their hosts are alive
3669         https://bugs.webkit.org/show_bug.cgi?id=59284
3670
3671         Test: fast/dom/shadow/gc-shadow.html
3672
3673         * bindings/v8/V8GCController.cpp:
3674         (WebCore::calculateGroupId): group shadow nodes with their hosts
3675
3676 2011-04-23  MORITA Hajime <morrita@google.com>
3677
3678         Reviewed by Dimitri Glazkov.
3679
3680         [Refactoring] NodeRenderParentDetector should be NodeRenderFactory
3681         https://bugs.webkit.org/show_bug.cgi?id=59280
3682         
3683         - Rename NodeRenderParentDetector to NodeRendererFactory
3684         - move createRendererAndStyle() and createRendererIfNeeded to
3685           NodeRendererFactory
3686
3687         No new test, no behavioral change.
3688         
3689         * dom/Node.cpp:
3690         (WebCore::NodeRendererFactory::NodeRendererFactory):
3691         (WebCore::NodeRendererFactory::document):
3692         (WebCore::NodeRendererFactory::nextRenderer):
3693         (WebCore::NodeRendererFactory::findVisualParent):
3694         (WebCore::NodeRendererFactory::shouldCreateRenderer):
3695         (WebCore::NodeRendererFactory::createRendererAndStyle):
3696         (WebCore::NodeRendererFactory::createRendererIfNeeded):
3697         (WebCore::Node::parentNodeForRenderingAndStyle):
3698         (WebCore::Node::createRendererIfNeeded):
3699         * dom/Node.h:
3700         * html/HTMLDetailsElement.cpp:
3701         (WebCore::DetailsSummaryElement::detailsElement): Added const_cast due to the chage on parentNodeForRenderingAndStyle() 
3702
3703 2011-04-23  MORITA Hajime  <morrita@google.com>
3704
3705         Reviewed by Kent Tamura.
3706
3707         REGRESSION: (non-Mac) <meter>'s bar part isn't rendered for with -webkit-writing-mode: vertical-lr from r82899
3708         https://bugs.webkit.org/show_bug.cgi?id=59281
3709
3710         Styles for -webkit-meter-bar and -webkit-progress-bar missed width property, which caused unexpected layout results
3711         for vertical writing modes. This fix added a width property for each of them.
3712         
3713         Tests: fast/dom/HTMLMeterElement/meter-writing-mode.html
3714                fast/dom/HTMLProgressElement/progress-writing-mode.html
3715
3716         * css/html.css:
3717         (meter::-webkit-meter-bar):
3718         (progress::-webkit-progress-bar):
3719
3720 2011-04-23  Kevin Ollivier  <kevino@theolliviers.com>
3721
3722         [wx] Unreviewed build fix. Added missing header.
3723         
3724         * platform/graphics/filters/FEDropShadow.h:
3725
3726 2011-04-23  Alexey Proskuryakov  <ap@apple.com>
3727
3728         Reviewed by Maciej Stachowiak.
3729
3730         REGRESSION (r80812): window.print();window.close() doesn't work in WebKit2
3731         https://bugs.webkit.org/show_bug.cgi?id=59241
3732         <rdar://problem/9150861>
3733
3734         Covered by manual-tests/print-after-window-close.html.
3735
3736         Re-fixing <https://bugs.webkit.org/show_bug.cgi?id=51357> in a way that doesn't cause the
3737         regression.
3738
3739         * loader/MainResourceLoader.cpp: (WebCore::MainResourceLoader::didCancel): We shouldn't be
3740         doing complicated work while the loader is half-canceled.
3741
3742         * manual-tests/print-after-window-close.html: Extended to actually print a non-empty page,
3743         thus being more practical.
3744
3745         * page/Chrome.cpp: (WebCore::Chrome::print): Added a FIXME about a need for PageGroupLoadDeferrer.
3746         It's too scary for me to try now.
3747
3748         * page/DOMWindow.cpp:
3749         (WebCore::DOMWindow::DOMWindow):
3750         (WebCore::DOMWindow::finishedLoading):
3751         * page/DOMWindow.h:
3752         Reverted the previous fix for <https://bugs.webkit.org/show_bug.cgi?id=51357>.
3753
3754 2011-04-19  Vitaly Repeshko  <vitalyr@chromium.org>
3755
3756         Reviewed by Adam Barth.
3757
3758         [V8] Use implicit references for V8 listeners on DOM nodes.
3759         https://bugs.webkit.org/show_bug.cgi?id=58953
3760
3761         Instead of allocating an auxiliary V8 array referencing V8
3762         listener objects associated with a DOM node and using an extra
3763         pointer in every DOM node wrapper, we can register implicit
3764         references between nodes and their listeners during GC. This also
3765         makes V8 bindings more aligned with JSC bindings.
3766
3767         No new tests because this is a refactoring.
3768
3769         * bindings/scripts/CodeGeneratorV8.pm: Stopped generating the
3770         listener cache internal field for DOM nodes.
3771         * bindings/v8/V8AbstractEventListener.h: Exposed the lister handle
3772         to the GC.
3773         (WebCore::V8AbstractEventListener::existingListenerObjectPeristentHandle):
3774         * bindings/v8/V8GCController.cpp: Started using implicit references.
3775         (WebCore::GrouperVisitor::visitDOMWrapper):
3776         * dom/EventTarget.h: Implemented an iterator over all listeners.
3777         (WebCore::EventListenerIterator):
3778
3779 2011-04-22  Jon Lee  <jonlee@apple.com>
3780
3781         Reviewed by Beth Dakin.
3782
3783         Overlay scroller hard to see on pages with dark background (59183)
3784         https://bugs.webkit.org/show_bug.cgi?id=59183
3785         <rdar://problem/8975367>
3786
3787         * WebCore.exp.in: adding method to allow changing style
3788         * page/FrameView.cpp:
3789         (WebCore::FrameView::recommendedScrollbarOverlayStyle): overridden to suggest a style based on CSS background color
3790         * page/FrameView.h:
3791         * platform/ScrollTypes.h: new enum to represent different overlay scrollbar styles
3792         * platform/ScrollableArea.cpp:
3793         (WebCore::ScrollableArea::recommendedScrollbarOverlayStyle): new virtual function to return a suggested overlay style
3794         * platform/ScrollableArea.h:
3795         * platform/mac/ScrollbarThemeMac.mm:
3796         (WebCore::ScrollbarThemeMac::paint):
3797         * platform/mac/WebCoreSystemInterface.h:
3798         * platform/mac/WebCoreSystemInterface.mm:
3799
3800 2011-04-22  Chris Evans  <cevans@chromium.org>
3801
3802         Reviewed by Adam Barth.
3803
3804         Upgrade CSS loads from mixed content warning (displayed) to mixed
3805         content error (ran)
3806         https://bugs.webkit.org/show_bug.cgi?id=59056
3807
3808         Test: http/tests/security/mixedContent/insecure-css-in-iframe.html
3809         Test: http/tests/security/mixedContent/insecure-css-in-main-frame.html
3810
3811         * loader/cache/CachedResourceLoader.cpp:
3812         (WebCore::CachedResourceLoader::canRequest): CSS loads are running rather than displaying content.
3813
3814 2011-04-22  Geoffrey Garen  <ggaren@apple.com>
3815
3816         Fixed an upside-down conditional in my last check-in.
3817
3818         * bindings/js/JSDOMApplicationCacheCustom.cpp:
3819         (WebCore::isObservable):
3820
3821 2011-04-22  Geoffrey Garen  <ggaren@apple.com>
3822         
3823         Rolled back in r84725 and r84728 with appcache crash fixed.
3824
3825         Reviewed by Oliver Hunt.
3826
3827         Removed a use of markDOMObjectWrapper: DOMWindow
3828         https://bugs.webkit.org/show_bug.cgi?id=59260
3829
3830         * bindings/js/JSDOMWindowCustom.cpp:
3831         (WebCore::JSDOMWindow::visitChildren): No need to mark explicitly, since
3832         we use the opaque roots system now.
3833
3834         * bindings/js/JSNavigatorCustom.cpp: Ditto.
3835
3836         * bindings/scripts/CodeGeneratorJS.pm: Added autogeneration for objects
3837         whose opaque roots are frames.
3838
3839         * css/StyleMedia.h:
3840         (WebCore::StyleMedia::frame): Added an accessor for the sake of GC.
3841
3842         * css/StyleMedia.idl:
3843         * loader/appcache/DOMApplicationCache.idl:
3844         * page/BarInfo.idl:
3845         * page/Console.idl:
3846         * page/DOMSelection.idl:
3847         * page/Geolocation.idl:
3848         * page/History.idl:
3849         * page/Location.idl:
3850         * page/Navigator.idl:
3851         * page/Screen.idl:
3852         * storage/Storage.idl: Updated to use the opaque roots system.
3853
3854 2011-04-22  Nate Chapin  <japhet@chromium.org>
3855
3856         Reviewed by Adam Barth.
3857
3858         Don't use XMLTreeViewer when script is disabled (it uses Javascript
3859         to build a prettified version of the xml document).
3860         https://bugs.webkit.org/show_bug.cgi?id=59113
3861
3862         * xml/XMLTreeViewer.cpp:
3863         (WebCore::XMLTreeViewer::transformDocumentToTreeView):
3864
3865 2011-04-22  Sheriff Bot  <webkit.review.bot@gmail.com>
3866
3867         Unreviewed, rolling out r84725 and r84728.
3868         http://trac.webkit.org/changeset/84725
3869         http://trac.webkit.org/changeset/84728
3870         https://bugs.webkit.org/show_bug.cgi?id=59270
3871
3872         It broke http/tests/appcache tests (Requested by Ossy on
3873         #webkit).
3874
3875         * bindings/js/JSDOMWindowCustom.cpp:
3876         (WebCore::JSDOMWindow::visitChildren):
3877         * bindings/js/JSNavigatorCustom.cpp:
3878         (WebCore::JSNavigator::visitChildren):
3879         * bindings/scripts/CodeGeneratorJS.pm:
3880         * css/StyleMedia.h:
3881         * css/StyleMedia.idl:
3882         * loader/appcache/DOMApplicationCache.idl:
3883         * page/BarInfo.idl:
3884         * page/Console.idl:
3885         * page/DOMSelection.idl:
3886         * page/DOMWindow.h:
3887         (WebCore::DOMWindow::optionalScreen):
3888         (WebCore::DOMWindow::optionalSelection):
3889         (WebCore::DOMWindow::optionalHistory):
3890         (WebCore::DOMWindow::optionalCrypto):
3891         (WebCore::DOMWindow::optionalLocationbar):
3892         (WebCore::DOMWindow::optionalMenubar):
3893         (WebCore::DOMWindow::optionalPersonalbar):
3894         (WebCore::DOMWindow::optionalScrollbars):
3895         (WebCore::DOMWindow::optionalStatusbar):
3896         (WebCore::DOMWindow::optionalToolbar):
3897         (WebCore::DOMWindow::optionalConsole):
3898         (WebCore::DOMWindow::optionalNavigator):
3899         (WebCore::DOMWindow::optionalLocation):
3900         (WebCore::DOMWindow::optionalMedia):
3901         (WebCore::DOMWindow::optionalSessionStorage):
3902         (WebCore::DOMWindow::optionalLocalStorage):
3903         (WebCore::DOMWindow::optionalPerformance):
3904         * page/Geolocation.idl:
3905         * page/History.idl:
3906         * page/Location.idl:
3907         * page/Navigator.h:
3908         (WebCore::Navigator::optionalGeolocation):
3909         * page/Navigator.idl:
3910         * page/Screen.idl:
3911         * storage/Storage.idl:
3912
3913 2011-04-22  Dimitri Glazkov  <dglazkov@chromium.org>
3914
3915         Reviewed by Kent Tamura.
3916
3917         Change SVG-related shadow root checks to use isSVGShadowRoot.
3918         https://bugs.webkit.org/show_bug.cgi?id=59237
3919
3920         Covered by existing tests, no behavior change.
3921
3922         * css/CSSStyleSelector.cpp:
3923         (WebCore::CSSStyleSelector::SelectorChecker::checkSelector): Use isSVGShadowRoot.
3924         * svg/SVGUseElement.cpp:
3925         (WebCore::ShadowTreeUpdateBlocker::while): Ditto.
3926         * svg/animation/SVGSMILElement.cpp:
3927         (WebCore::SVGSMILElement::insertedIntoDocument): Ditto.
3928
3929 2011-04-22  Geoffrey Garen  <ggaren@apple.com>
3930
3931         Mac build fix.
3932
3933         * page/DOMWindow.h:
3934         (WebCore::DOMWindow::optionalApplicationCache): Restored this function,
3935         which is used after all.
3936
3937 2011-04-22  Geoffrey Garen  <ggaren@apple.com>
3938
3939         Mac build fix.
3940
3941         * page/DOMWindow.h:
3942         (WebCore::DOMWindow::optionalApplicationCache): Restored this function,
3943         which is used after all.
3944
3945 2011-04-22  Geoffrey Garen  <ggaren@apple.com>
3946
3947         Reviewed by Oliver Hunt.
3948
3949         Removed a use of markDOMObjectWrapper: DOMWindow
3950         https://bugs.webkit.org/show_bug.cgi?id=59260
3951
3952         * bindings/js/JSDOMWindowCustom.cpp:
3953         (WebCore::JSDOMWindow::visitChildren): No need to mark explicitly, since
3954         we use the opaque roots system now.
3955
3956         * bindings/js/JSNavigatorCustom.cpp: Ditto.
3957
3958         * bindings/scripts/CodeGeneratorJS.pm: Added autogeneration for objects
3959         whose opaque roots are frames.
3960
3961         * css/StyleMedia.h:
3962         (WebCore::StyleMedia::frame): Added an accessor for the sake of GC.
3963
3964         * css/StyleMedia.idl:
3965         * loader/appcache/DOMApplicationCache.idl:
3966         * page/BarInfo.idl:
3967         * page/Console.idl:
3968         * page/DOMSelection.idl:
3969         * page/Geolocation.idl:
3970         * page/History.idl:
3971         * page/Location.idl:
3972         * page/Navigator.idl:
3973         * page/Screen.idl:
3974         * storage/Storage.idl: Updated to use the opaque roots system.
3975
3976 2011-04-22  Xiaomei Ji  <xji@chromium.org>
3977
3978         Reviewed by Ryosuke Niwa.
3979
3980         move caret by word in visual order returns wrong result when caret itself is at word boundary.
3981         https://bugs.webkit.org/show_bug.cgi?id=58504.
3982
3983         positionBeforeNextWord should take care that the current position is after current word.
3984         positionAfterPreviousWord should take care that the current positin is before current word.
3985
3986         * editing/visible_units.cpp:
3987         (WebCore::positionBeforeNextWord):
3988         (WebCore::positionAfterPreviousWord):
3989
3990 2011-04-19  Jer Noble  <jer.noble@apple.com>
3991
3992         Reviewed by Daniel Bates.
3993
3994         Full Screen from within an <iframe> does not cause <iframe> to resize.
3995         https://bugs.webkit.org/show_bug.cgi?id=58638
3996
3997         Tests: fullscreen/full-screen-frameset.html
3998
3999         * css/CSSStyleSelector.cpp:
4000         (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector): Add the 
4001             -webkit-full-screen pseudo class to frame elements which contain
4002             full screen elements.
4003         * css/fullscreen.css:
4004         (iframe:-webkit-full-screen): Add iframe-specific styling rules.
4005         * dom/Document.cpp:
4006         (WebCore::Document::setContainsFullScreenElementRecursively): Added.  Walk up each
4007             successive document owner element, calling setContainsFullScreenElement() if 
4008             owner is a frame element.
4009         (WebCore::Document::fullScreenIsAllowedForElement): Use the new Element::isFrameElementBase
4010             call instead of checking the element's tag name.
4011         (WebCore::Document::webkitWillEnterFullScreenForElement): Mark any containing
4012             iframes as containing a full screen element.
4013         (WebCore::Document::webkitWillExitFullScreenForElement): Ditto.
4014         * dom/Element.h:
4015         (WebCore::Element::isFrameElementBase): Added.
4016         * html/HTMLFrameElement.h:
4017         (WebCore::HTMLFrameElement::allowFullScreen): Disable full screen from within
4018             HTMLFrameElements.
4019         * html/HTMLFrameElementBase.cpp:
4020         (WebCore::HTMLFrameElementBase::setContainsFullScreenElement): Added.
4021         * html/HTMLFrameElementBase.h:
4022         (WebCore::HTMLFrameElementBase::containsFullScreenElement): Added.
4023         (WebCore::HTMLFrameElementBase::isFrameElementBase): Added.
4024
4025 2011-04-22  Michael Saboff  <msaboff@apple.com>
4026
4027         Reviewed by Maciej Stachowiak.
4028
4029         Creating copy of ContainerNode's when inserting or removing is inefficient
4030         https://bugs.webkit.org/show_bug.cgi?id=58695
4031
4032         Eliminated node copying in willRemove() and insertedIntoDocument().
4033
4034         No new tests as this is a more efficient implementation of
4035         existing code that is covered by existing tests.
4036
4037         * dom/ContainerNode.cpp:
4038         (WebCore::ContainerNode::willRemove): Changed method to use
4039         RefPtr<> to protect against modification during removal.
4040         (WebCore::ContainerNode::insertedIntoDocument): Changed method to use
4041         RefPtr<> and two other deletion checks to protect against 
4042         modification during insertion.
4043
4044 2011-04-22  Geoffrey Garen  <ggaren@apple.com>
4045
4046         Reviewed by Sam Weinig.
4047
4048         We have an autogenerator, so use it
4049         https://bugs.webkit.org/show_bug.cgi?id=59247
4050
4051         * bindings/js/JSCSSRuleCustom.cpp:
4052         * bindings/js/JSCSSRuleListCustom.cpp:
4053         * bindings/js/JSCSSStyleDeclarationCustom.cpp:
4054         * bindings/js/JSCSSValueCustom.cpp:
4055         * bindings/js/JSCanvasRenderingContextCustom.cpp:
4056         * bindings/js/JSDOMImplementationCustom.cpp:
4057         * bindings/js/JSDOMStringMapCustom.cpp:
4058         * bindings/js/JSHTMLCollectionCustom.cpp:
4059         * bindings/js/JSNamedNodeMapCustom.cpp:
4060         * bindings/js/JSNodeCustom.h:
4061         * bindings/js/JSNodeListCustom.cpp:
4062         * bindings/js/JSStyleSheetCustom.cpp:
4063         * bindings/js/JSStyleSheetListCustom.cpp: Removed repetitive hand-written code.
4064
4065         * bindings/scripts/CodeGeneratorJS.pm: Augmented autogenerator to do the job.
4066
4067         * css/CSSRule.idl:
4068         * css/CSSRuleList.idl:
4069         * css/CSSStyleDeclaration.idl:
4070         * css/CSSValue.idl:
4071         * css/MediaList.idl:
4072         * css/StyleSheet.idl:
4073         * css/StyleSheetList.idl:
4074         * dom/DOMImplementation.idl:
4075         * dom/DOMStringMap.idl:
4076         * dom/NamedNodeMap.idl:
4077         * dom/Node.idl:
4078         * dom/NodeList.idl:
4079         * html/DOMTokenList.idl:
4080         * html/HTMLCollection.idl:
4081         * html/canvas/CanvasRenderingContext.idl: Updated attributes to plug into
4082         the autogenerator.
4083
4084 2011-04-22  Beth Dakin  <bdakin@apple.com>
4085
4086         Reviewed by Maciej Stachowiak.
4087
4088         https://bugs.webkit.org/show_bug.cgi?id=59223
4089         REGRESSION (r82185): iframe not displayed after navigation back to cached page
4090
4091         Manual test added.
4092         * manual-tests/frame-layout-on-back.html: Added.
4093         * manual-tests/resources/empty-document-goes-back.html: Added.
4094         * manual-tests/resources/simple-iframe.html: Added.
4095
4096 2011-04-22  Yael Aharon  <yael.aharon@nokia.com>
4097
4098         Reviewed by Sam Weinig.
4099
4100         HTMLFormControlElement::labels should allow custom attributes.
4101         https://bugs.webkit.org/show_bug.cgi?id=59128
4102
4103         Cache the labels list when it is created and keep using it for future
4104         labels calls.
4105
4106         Test: fast/forms/labels-custom-property.html
4107
4108         * html/HTMLFormControlElement.cpp:
4109         (WebCore::HTMLFormControlElement::labels):
4110
4111 2011-04-22  Adrienne Walker  <enne@google.com>
4112
4113         Reviewed by James Robinson.
4114
41