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