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