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