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