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