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