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