2011-03-22 Eric Seidel <eric@webkit.org>
[WebKit-https.git] / Source / WebCore / ChangeLog
1 2011-03-22  Eric Seidel  <eric@webkit.org>
2
3         Reviewed by Adam Barth.
4
5         Make it possible to build JavaScriptCore and WebCore gyp builds outside of Source
6         https://bugs.webkit.org/show_bug.cgi?id=56867
7
8         This should make it possible to build the gyp-generated WebCore.xcodeproj
9         from a WebCore directory outside of Source.
10
11         * gyp/WebCore.gyp:
12         * gyp/run-if-exists.sh: Added.
13         * gyp/update-info-plist.sh: Added.
14
15 2011-03-22  Anders Carlsson  <andersca@apple.com>
16
17         Fix WebKit2 build.
18
19         * WebCore.exp.in:
20         Export a symbol needed by WebKit2.
21
22 2011-03-22  Adam Barth  <abarth@webkit.org>
23
24         Reviewed by Eric Seidel.
25
26         Add the remaining steps to WebCore GYP build
27         https://bugs.webkit.org/show_bug.cgi?id=56864
28
29         These steps match the normal build.  After this patch, I believe the
30         WebCore GYP build is complete.
31
32         * WebCore.gypi:
33         * gyp/WebCore.gyp:
34         * gyp/copy-inspector-resources.sh: Added.
35
36 2011-03-22  Beth Dakin  <bdakin@apple.com>
37
38         Reviewed by Simon Fraser.
39
40         Fix for https://bugs.webkit.org/show_bug.cgi?id=56856 RenderListBox needs to be 
41         added to Page::scrollableAreaSet()
42
43         * rendering/RenderListBox.cpp:
44         (WebCore::RenderListBox::RenderListBox):
45         (WebCore::RenderListBox::~RenderListBox):
46         * rendering/RenderListBox.h:
47         (WebCore::RenderListBox::disconnectFromPage):
48
49 2011-03-22  Chris Rogers  <crogers@google.com>
50
51         Reviewed by Kenneth Russell.
52
53         Add high-quality band-limited audio resampling algorithm
54         https://bugs.webkit.org/show_bug.cgi?id=56692
55
56         No new tests since audio API is not yet implemented.
57
58         * platform/audio/SincResampler.cpp: Added.
59         (WebCore::SincResampler::SincResampler):
60         (WebCore::SincResampler::initializeKernel):
61         (WebCore::SincResampler::consumeSource):
62         (WebCore::SincResampler::process):
63         * platform/audio/SincResampler.h: Added.
64
65 2011-03-22  Adam Barth  <abarth@webkit.org>
66
67         Reviewed by Eric Seidel.
68
69         WebCore GYP build should build without help from normal WebCore build
70         https://bugs.webkit.org/show_bug.cgi?id=56860
71
72         Before this patch, the WebCore GYP build wasn't generating the derived
73         sources quite right because the ENABLE macros were not being
74         communicated to the "Derived Sources" target.
75
76         This patch also adds the "Copy Forwarding and ICU Headers" as well as
77         the "Streamline Inspector Source" steps, which are present in the
78         normal build.  Unlike the normal build, these steps occur in a new
79         target, called "WebCore Support", which is less than aesthetically
80         beautiful.  Hopefully we'll be able to move them into the WebCore
81         target proper in the future, but that will likely require some GYP
82         changes.
83
84         This patch probably could have been broken down into a couple smaller
85         patches, but that doesn't seem necessary.
86
87         * WebCore.gypi:
88             - This file appears to no longer exist.
89         * gyp/WebCore.gyp:
90         * gyp/copy-forwarding-and-icu-headers.sh: Added.
91         * gyp/streamline-inspector-source.sh: Added.
92
93 2011-03-22  David Hyatt  <hyatt@apple.com>
94
95         Reviewed by Simon Fraser.
96
97         https://bugs.webkit.org/show_bug.cgi?id=56859
98         
99         Floats in the floating object list occur in the order that they are positioned. This means
100         that for a given vertical offset, the last left object in the list that intersects that offset
101         will be the rightmost float. There is no need to check any previous floats, since they have to be
102         further left than that rightmost float. The same rules hold true for right-aligned floats.
103         
104         Change logicalLeft/RightOffsetForLine to iterate backwards instead of forwards and to stop the moment
105         they encounter a float that intersects the vertical range.
106         
107         This cuts the maze solving time for a 20x20 maze in the IE MazeSolver test in half.
108
109         * rendering/RenderBlock.cpp:
110         (WebCore::RenderBlock::logicalLeftOffsetForLine):
111         (WebCore::RenderBlock::logicalRightOffsetForLine):
112
113 2011-03-22  Justin Schuh  <jschuh@chromium.org>
114
115         Reviewed by Dirk Schulze.
116
117         SVG displacement map should validate channel selections
118         https://bugs.webkit.org/show_bug.cgi?id=56794
119
120         Test: svg/filters/feDisplacementMap-crash-test.xhtml
121
122         * svg/SVGFEDisplacementMapElement.cpp:
123         (WebCore::SVGFEDisplacementMapElement::svgAttributeChanged):
124
125 2011-03-22  Huahui Wu  <mediadependent@gmail.com>
126
127         Reviewed by Steve Block.
128
129         [Android] Update PlatformTouchEvent for android so it can pass IDs and states around.
130         https://bugs.webkit.org/show_bug.cgi?id=56763
131
132         No new tests as no new functionality is exposed.
133
134         * platform/PlatformTouchEvent.h:
135         * platform/android/PlatformTouchEventAndroid.cpp:
136         (WebCore::PlatformTouchEvent::PlatformTouchEvent):
137
138 2011-03-22  David Hyatt  <hyatt@apple.com>
139
140         Reviewed by Simon Fraser.
141
142         Implement the CSS3 line-box-contain property. This property provides authors with more control over spacing between lines. For example,
143         you can fix the height of lines and cause all line contents to be ignored. You can make lines fit to glyphs. You can ignore leading and
144         fit to the font size. You can ignore replaced elements, etc.
145
146         Refactor the code in computeLogicalBoxHeights into helper methods on RootInlineBox. verticalPositionForBox moved over to RootInlineBox
147         so that it could be called from RenderBlockLineLayout. ascentAndDescentForBox is the new method that computes the appropriate box
148         height based off the block's line-box-contain value.
149         
150         GlyphOverflow can now have a computeBounds parameter set, in which case glyph bounds will be computed and stored in the overflow struct.
151         
152         RenderInline no longer returns 0 margins in the block direction, since line-box-contain can size around the margin box.
153         
154         Added new tests in fast/block/lineboxcontain
155
156         * GNUmakefile.am:
157         * WebCore.gypi:
158         * WebCore.pro:
159         * WebCore.vcproj/WebCore.vcproj:
160         * WebCore.xcodeproj/project.pbxproj:
161         * css/CSSComputedStyleDeclaration.cpp:
162         (WebCore::createLineBoxContainValue):
163         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
164         * css/CSSLineBoxContainValue.cpp: Added.
165         (WebCore::CSSLineBoxContainValue::CSSLineBoxContainValue):
166         (WebCore::CSSLineBoxContainValue::cssText):
167         * css/CSSLineBoxContainValue.h: Added.
168         (WebCore::CSSLineBoxContainValue::create):
169         (WebCore::CSSLineBoxContainValue::value):
170         (WebCore::CSSLineBoxContainValue::isCSSLineBoxContainValue):
171         * css/CSSParser.cpp:
172         (WebCore::CSSParser::parseValue):
173         (WebCore::CSSParser::parseLineBoxContain):
174         * css/CSSParser.h:
175         * css/CSSPropertyNames.in:
176         * css/CSSStyleSelector.cpp:
177         (WebCore::CSSStyleSelector::applyProperty):
178         * css/CSSValue.h:
179         (WebCore::CSSValue::isCSSLineBoxContainValue):
180         * css/CSSValueKeywords.in:
181         * platform/graphics/Font.cpp:
182         (WebCore::Font::width):
183         * platform/graphics/Font.h:
184         (WebCore::GlyphOverflow::GlyphOverflow):
185         * platform/graphics/FontFastPath.cpp:
186         (WebCore::Font::floatWidthForSimpleText):
187         * platform/graphics/mac/FontComplexTextMac.cpp:
188         (WebCore::Font::floatWidthForComplexText):
189         * platform/graphics/win/FontWin.cpp:
190         (WebCore::Font::floatWidthForComplexText):
191         * rendering/InlineFlowBox.cpp:
192         (WebCore::InlineFlowBox::computeLogicalBoxHeights):
193         * rendering/InlineFlowBox.h:
194         * rendering/RenderBlock.h:
195         * rendering/RenderBlockLineLayout.cpp:
196         (WebCore::RenderBlock::computeInlineDirectionPositionsForLine):
197         (WebCore::RenderBlock::layoutInlineChildren):
198         * rendering/RenderInline.cpp:
199         (WebCore::RenderInline::marginLeft):
200         (WebCore::RenderInline::marginRight):
201         (WebCore::RenderInline::marginTop):
202         (WebCore::RenderInline::marginBottom):
203         (WebCore::RenderInline::marginBefore):
204         (WebCore::RenderInline::marginAfter):
205         * rendering/RenderInline.h:
206         * rendering/RenderText.cpp:
207         (WebCore::RenderText::widthFromCache):
208         (WebCore::RenderText::width):
209         * rendering/RootInlineBox.cpp:
210         (WebCore::RootInlineBox::alignBoxesInBlockDirection):
211         (WebCore::setAscentAndDescent):
212         (WebCore::RootInlineBox::ascentAndDescentForBox):
213         (WebCore::RootInlineBox::verticalPositionForBox):
214         (WebCore::RootInlineBox::includeLeadingForBox):
215         (WebCore::RootInlineBox::includeFontForBox):
216         (WebCore::RootInlineBox::includeGlyphsForBox):
217         (WebCore::RootInlineBox::includeMarginForBox):
218         (WebCore::RootInlineBox::fitsToGlyphs):
219         (WebCore::RootInlineBox::includesRootLineBoxFontOrLeading):
220         * rendering/RootInlineBox.h:
221         * rendering/style/RenderStyle.cpp:
222         (WebCore::RenderStyle::diff):
223         * rendering/style/RenderStyle.h:
224         (WebCore::InheritedFlags::lineBoxContain):
225         (WebCore::InheritedFlags::setLineBoxContain):
226         (WebCore::InheritedFlags::initialLineBoxContain):
227         * rendering/style/StyleRareInheritedData.cpp:
228         (WebCore::StyleRareInheritedData::StyleRareInheritedData):
229         (WebCore::StyleRareInheritedData::operator==):
230         * rendering/style/StyleRareInheritedData.h:
231
232 2011-03-22  Sheriff Bot  <webkit.review.bot@gmail.com>
233
234         Unreviewed, rolling out r81653.
235         http://trac.webkit.org/changeset/81653
236         https://bugs.webkit.org/show_bug.cgi?id=56839
237
238         Breaks fast/text/drawBidiText.html on Chromium. (Requested by
239         pfeldman on #webkit).
240
241         * rendering/RenderListBox.cpp:
242         (WebCore::RenderListBox::paintItemForeground):
243
244 2011-03-22  Pavel Feldman  <pfeldman@chromium.org>
245
246         Not reviewed. Rolling out 81657, 81654, 81651 for breaking tests on chromium.
247
248         * inspector/Inspector.json:
249         * inspector/InspectorDatabaseResource.cpp:
250         (WebCore::InspectorDatabaseResource::bind):
251         * inspector/front-end/Database.js:
252         (WebInspector.DatabaseDispatcher.prototype.addDatabase):
253
254 2011-03-21  Pavel Podivilov  <podivilov@chromium.org>
255
256         Reviewed by Yury Semikhatsky.
257
258         Web Inspector: [REGRESSION] scripts panel is broken when frontend is reopened.
259         https://bugs.webkit.org/show_bug.cgi?id=56747
260
261         Debugger should be enabled on front-end side to guarantee initialization sequence (resources come before scripts).
262
263         * inspector/Inspector.json:
264         * inspector/InspectorAgent.cpp:
265         (WebCore::InspectorAgent::showProfilesPanel):
266         * inspector/InspectorAgent.h:
267         * inspector/InspectorController.cpp:
268         (WebCore::InspectorController::InspectorController):
269         (WebCore::InspectorController::connectFrontend):
270         (WebCore::InspectorController::showAndEnableDebugger):
271         * inspector/InspectorController.h:
272         * inspector/InspectorDebuggerAgent.cpp:
273         (WebCore::InspectorDebuggerAgent::setFrontend):
274         (WebCore::InspectorDebuggerAgent::clearFrontend):
275         * inspector/InspectorDebuggerAgent.h:
276
277 2011-03-22  Jarkko Sakkinen  <jarkko.j.sakkinen@gmail.com>
278
279         Reviewed by Benjamin Poulain.
280
281         [Qt] WebGL: renderbufferStorage() fails with internal format GL_RGBA4
282         https://bugs.webkit.org/show_bug.cgi?id=56824
283
284         On desktop OpenGL substitute in renderbufferStorage:
285         - GL_DEPTH24_STENCIL8 for GL_DEPTH_STENCIL
286         - GL_DEPTH_COMPONENT for GL_DEPTH_COMPONENT16
287         - GL_RGBA for GL_RGBA4 and GL_RGBA565
288         - GL_RGB for RGB5_A1.
289
290         Tests: fast/canvas/webgl/uninitialized-test.html
291
292         * platform/graphics/qt/GraphicsContext3DQt.cpp:
293         (WebCore::GraphicsContext3D::renderbufferStorage):
294
295 2011-03-16  Dimitri Glazkov  <dglazkov@chromium.org>
296
297         Reviewed by Eric Seidel.
298
299         Move volume slider positioning logic to a custom renderer.
300         https://bugs.webkit.org/show_bug.cgi?id=56498
301
302         No functional change, covered by existing tests.
303
304         * html/shadow/MediaControls.cpp:
305         (WebCore::MediaControls::updateVolumeSliderContainer): Removed positioning logic.
306         * rendering/MediaControlElements.cpp:
307         (WebCore::RenderMediaVolumeSliderContainer::RenderMediaVolumeSliderContainer): Added.
308         (WebCore::RenderMediaVolumeSliderContainer::layout): Added.
309         (WebCore::MediaControlVolumeSliderContainerElement::MediaControlVolumeSliderContainerElement): Removed storing of coordinates.
310         (WebCore::MediaControlVolumeSliderContainerElement::createRenderer): Added.
311         (WebCore::MediaControlVolumeSliderContainerElement::styleForElement): Removed setting of coordinates.
312         * rendering/MediaControlElements.h: Changed corresponding decls.
313
314 2011-03-22  Andrew Wason  <rectalogic@rectalogic.com>
315
316         Reviewed by Benjamin Poulain.
317
318         [Qt] QWebPage with WebGL content crashes when rendering if no QWebView parent
319         https://bugs.webkit.org/show_bug.cgi?id=54138
320
321         * platform/graphics/qt/GraphicsContext3DQt.cpp:
322         (WebCore::GraphicsContext3DInternal::getViewportGLWidget):
323          Check if we actually have a QWebPageClient before dereferencing it.
324
325 2011-03-22  Pavel Feldman  <pfeldman@chromium.org>
326
327         Reviewed by Yury Semikhatsky.
328
329         Web Inspector: document DOM domain types and protocol methods.
330         https://bugs.webkit.org/show_bug.cgi?id=56807
331
332         * inspector/InjectedScript.cpp:
333         (WebCore::InjectedScript::wrapNode):
334         * inspector/InjectedScript.h:
335         * inspector/Inspector.json:
336         * inspector/InspectorBrowserDebuggerAgent.cpp:
337         (WebCore::InspectorBrowserDebuggerAgent::descriptionForDOMEvent):
338         * inspector/InspectorDOMAgent.cpp:
339         (WebCore::InspectorDOMAgent::removeNode):
340         (WebCore::InspectorDOMAgent::setNodeValue):
341         * inspector/InspectorDOMAgent.h:
342         * inspector/front-end/ElementsTreeOutline.js:
343         (WebInspector.ElementsTreeElement.prototype._createTooltipForNode.resolvedNode):
344         (WebInspector.ElementsTreeElement.prototype._createTooltipForNode):
345         * inspector/front-end/EventListenersSidebarPane.js:
346         * inspector/front-end/PropertiesSidebarPane.js:
347         (WebInspector.PropertiesSidebarPane.prototype.update.nodeResolved):
348         * inspector/front-end/RemoteObject.js:
349         (WebInspector.RemoteObject.resolveNode):
350
351 2011-03-22  Adam Barth  <abarth@webkit.org>
352
353         Reviewed by Eric Seidel.
354
355         Production configuration in GYP isn&apos;t set up correctly
356         https://bugs.webkit.org/show_bug.cgi?id=56786
357
358         Update WebCore.gyp with information mined from WebCore.xcodeproj.
359
360         * WebCore.gypi:
361         * gyp/WebCore.gyp:
362
363 2011-03-22  Ofri Wolfus  <ofri@google.com>
364
365         Reviewed by Eric Seidel.
366
367         RTL: Select elements with a size attribute are always left aligned.
368         https://bugs.webkit.org/show_bug.cgi?id=50928
369
370         Added support for alignment in RenderListBox.
371
372         Test: fast/forms/listbox-bidi-align.html
373
374         * rendering/RenderListBox.cpp:
375         (WebCore::RenderListBox::paintItemForeground): Add support for alignment and directionality.
376
377 2011-03-22  Ilya Sherman  <isherman@chromium.org>
378
379         Reviewed by Kent Tamura.
380
381         Clear autofilled flag when reseting a form
382         In service of https://code.google.com/p/chromium/issues/detail?id=70037
383         https://bugs.webkit.org/show_bug.cgi?id=56802
384
385         Test: fast/forms/reset-autofilled.html
386
387         * html/HTMLInputElement.cpp:
388         (WebCore::HTMLInputElement::reset): Clear the autofilled flag.
389
390 2011-03-22  Ilya Tikhonovsky  <loislo@chromium.org>
391
392         Reviewed by Yury Semikhatsky.
393
394         Web Inspector: protocol cleanup. DatabaseAgent.
395         https://bugs.webkit.org/show_bug.cgi?id=56815
396
397         see protocol metabug:
398         - All events should use notification wording, not command wording:
399
400         addDatabase was renamed to DatabaseOpened.
401
402         Test: inspector/protocol/database-agent.html
403
404         * inspector/Inspector.json:
405         * inspector/InspectorDatabaseResource.cpp:
406         (WebCore::InspectorDatabaseResource::bind):
407         * inspector/front-end/Database.js:
408         (WebInspector.DatabaseDispatcher.prototype.DatabaseOpened):
409
410 2011-03-22  Ilya Tikhonovsky  <loislo@chromium.org>
411
412         Reviewed by Yury Semikhatsky.
413
414         Web Inspector: protocol cleanup. ConsoleAgent.
415         https://bugs.webkit.org/show_bug.cgi?id=56806
416
417         renamed method: void setConsoleMessagesEnabled(in boolean enabled, out boolean newState); => void enable(out long expiredMessagesCount);
418         new method: disable()
419         deleted method: [event] void consoleMessageExpiredCountUpdate(out unsigned long count); delete it. The counter will be transfered as out argument of enable command.
420
421         * inspector/ConsoleMessage.cpp:
422         (WebCore::ConsoleMessage::updateRepeatCountInConsole):
423         * inspector/Inspector.json:
424         * inspector/InspectorConsoleAgent.cpp:
425         (WebCore::InspectorConsoleAgent::enable):
426         (WebCore::InspectorConsoleAgent::disable):
427         * inspector/InspectorConsoleAgent.h:
428         * inspector/front-end/ConsoleView.js:
429         (WebInspector.ConsoleView.prototype._registerConsoleDomainDispatcher.dispatcher.consoleMessageRepeatCountUpdated):
430         (WebInspector.ConsoleView.prototype.setConsoleMessageExpiredCount):
431         * inspector/front-end/inspector.js:
432
433 2011-03-22  Kent Tamura  <tkent@chromium.org>
434
435         Reviewed by Eric Seidel.
436
437         REGRESSION(r80096): Number type input unexpectedly rounds fractional values
438         https://bugs.webkit.org/show_bug.cgi?id=56367
439
440         Because the default value of the maximum fractional digits of NSNumberFormatter
441         and ICU NumberFormat is 3, the value 0.55555 is rounded to 0.556 in a
442         localized representation. This bug affects only in Mac and Chromium.
443
444         To fix this bug,
445          - Add "maximum fractional digits" parameter to formatLocalizedNumber(), and
446          - NumberInputType::visibleValue uses parseToDoubleForNumberTypeWithDecimalPlaces()
447           instead of parseToDoubleForNumberType().
448
449         No automated tests because the behavior is locale-dependent. This change
450         updates a manual test.
451
452         * html/NumberInputType.cpp:
453         (WebCore::NumberInputType::visibleValue):
454           Use parseToDoubleForNumberTypeWithDecimalPlaces() and passing fractional
455           part length to formatLocalizedNumber().
456         * manual-tests/input-number-localization.html:
457           Update the test to cover this change.
458         * platform/text/LocalizedNumber.h: Add a parameter to formatLocalizedNumber().
459         * platform/text/LocalizedNumberICU.cpp:
460         (WebCore::formatLocalizedNumber): Call setMaximumFractionalDigits().
461         * platform/text/LocalizedNumberNone.cpp:
462         (WebCore::formatLocalizedNumber):
463         * platform/text/mac/LocalizedNumberMac.mm:
464         (WebCore::formatLocalizedNumber): Call setMaximumFractionalDigits().
465
466 2011-03-21  Abhishek Arya  <inferno@chromium.org>
467
468         Reviewed by Eric Seidel.
469
470         Anonymous blocks need isRenderBlock cast check. Also, need
471         to allow display BOX for flexible boxes.
472         https://bugs.webkit.org/show_bug.cgi?id=56709
473
474         Test: accessibility/anchor-linked-anonymous-block-crash.html
475
476         * rendering/RenderBlock.cpp:
477         (WebCore::canMergeContiguousAnonymousBlocks): remove specific
478         fix in r81088 which is no longer needed.
479         * rendering/RenderObject.h:
480         (WebCore::RenderObject::isAnonymousBlock): Add isRenderBlock cast
481         check.
482
483 2011-03-21  Abhishek Arya  <inferno@chromium.org>
484
485         Reviewed by Eric Seidel.
486
487         Revert small change made in r78846 of replacing move with positionLineBox
488         in the adjusting position function for inline box.
489         https://bugs.webkit.org/show_bug.cgi?id=56300
490
491         The change in r78846 caused positioning line boxes during the step of adjusting
492         position for inline box, thereby causing line boxes to be nuked. This happens as
493         part of aligning boxes in block direction in RenderBlock::computeBlockDirectionPositionsForLine.
494         Later on, we do the positioning of line boxes again later in that function. This
495         causes use of removed inline box leading to crash. Also, it is unnecessary to do
496         this twice.
497
498         Tests: fast/inline/inline-box-adjust-position-crash.html
499                fast/inline/inline-box-adjust-position-crash2.html
500
501         * rendering/InlineBox.cpp:
502         (WebCore::InlineBox::adjustPosition):
503
504 2011-03-21  Adam Klein  <adamk@chromium.org>
505
506         Reviewed by David Levin.
507
508         [fileapi] Add URI resolution support to WorkerContext
509         https://bugs.webkit.org/show_bug.cgi?id=55644
510
511         Tests: http/tests/filesystem/workers/resolve-url-sync.html
512                http/tests/filesystem/workers/resolve-url.html
513
514         * fileapi/LocalFileSystem.cpp:
515         (WebCore::LocalFileSystem::readFileSystem):
516         Add support for workers.
517         * fileapi/LocalFileSystem.h:
518         * workers/WorkerContext.cpp:
519         (WebCore::WorkerContext::resolveLocalFileSystemURL):
520         (WebCore::WorkerContext::resolveLocalFileSystemSyncURL):
521         * workers/WorkerContext.h:
522         * workers/WorkerContext.idl:
523
524 2011-03-21  David Levin  <levin@chromium.org>
525
526         Reviewed by Adam Barth.
527
528         XHR in Workers doesn't set the referrer correctly.
529         https://bugs.webkit.org/show_bug.cgi?id=24683
530
531         Tests: http/tests/xmlhttprequest/workers/referer.html
532                http/tests/xmlhttprequest/workers/shared-worker-referer.html
533
534         * loader/DocumentThreadableLoader.cpp:
535         (WebCore::DocumentThreadableLoader::loadResourceSynchronously): Fill in empty string for the outgoing referrer.
536         (WebCore::DocumentThreadableLoader::create): Added the ability to set the outgoing referrer.
537         (WebCore::DocumentThreadableLoader::DocumentThreadableLoader): Ditto.
538         (WebCore::DocumentThreadableLoader::loadRequest): Ditto.
539         * loader/DocumentThreadableLoader.h: Ditto.
540         * loader/ResourceLoadScheduler.cpp:
541         (WebCore::ResourceLoadScheduler::scheduleSubresourceLoad): Ditto.
542         * loader/ResourceLoadScheduler.h: Ditto.
543         * loader/SubresourceLoader.cpp:
544         (WebCore::SubresourceLoader::create): Fixed bug (caught by the test) in last minute change done in previous check-in.
545         * loader/WorkerThreadableLoader.cpp:
546         (WebCore::WorkerThreadableLoader::WorkerThreadableLoader): Fill in the outgoing referrer.
547         (WebCore::WorkerThreadableLoader::MainThreadBridge::MainThreadBridge): Plumbing for the outgoing referrer.
548         (WebCore::WorkerThreadableLoader::MainThreadBridge::mainThreadCreateLoader): Plumbing for the outgoing referrer.
549         * loader/WorkerThreadableLoader.h:
550
551 2011-03-21  Nate Chapin  <japhet@chromium.org>
552
553         Reviewed by Brady Eidson.
554
555         Do not check the DocumentLoader's request cache policy
556         in determining whether we should force revalidation of a cached
557         subresource. If the main resource received headers telling it not
558         to cache, that policy will be propagated to subresources.
559
560         The previous behavior is left in behind a flag in Settings, since
561         QuickLook depends on it.
562
563         https://bugs.webkit.org/show_bug.cgi?id=38690
564
565         Tests: http/tests/cache/post-redirect-get.php
566                http/tests/cache/post-with-cached-subresources.php
567
568         * loader/FrameLoader.cpp:
569         (WebCore::FrameLoader::subresourceCachePolicy):
570         (WebCore::FrameLoader::loadPostRequest):
571         * page/Settings.cpp:
572         (WebCore::Settings::Settings):
573         * page/Settings.h:
574         (WebCore::Settings::setUseQuickLookResourceCachingQuirks):
575         (WebCore::Settings::useQuickLookResourceCachingQuirks):
576
577 2011-03-21  Rik Cabanier  <cabanier@adobe.com>
578
579         Reviewed by James Robinson.
580
581         bug 56052: percentages are incorrectly rounded in WebKit
582         https://bugs.webkit.org/show_bug.cgi?id=56052
583
584         test: fast/css/percentage-non-integer.html
585
586         * css/CSSStyleSelector.cpp:
587         (WebCore::CSSStyleSelector::applyProperty):
588         * page/PrintContext.cpp:
589         (WebCore::PrintContext::pageProperty):
590         * platform/Length.h:
591         (WebCore::Length::Length):
592         (WebCore::Length::operator*=):
593         (WebCore::Length::value):
594         (WebCore::Length::percent):
595         (WebCore::Length::setValue):
596         (WebCore::Length::calcValue):
597         (WebCore::Length::calcMinValue):
598         (WebCore::Length::isUndefined):
599         (WebCore::Length::isZero):
600         (WebCore::Length::isPositive):
601         (WebCore::Length::isNegative):
602         * rendering/AutoTableLayout.cpp:
603         (WebCore::AutoTableLayout::recalcColumn):
604         (WebCore::AutoTableLayout::computePreferredLogicalWidths):
605         (WebCore::AutoTableLayout::calcEffectiveLogicalWidth):
606         (WebCore::AutoTableLayout::layout):
607         * rendering/FixedTableLayout.cpp:
608         (WebCore::FixedTableLayout::calcWidthArray):
609         (WebCore::FixedTableLayout::layout):
610         * rendering/RenderTableSection.cpp:
611         (WebCore::RenderTableSection::addCell):
612         (WebCore::RenderTableSection::layoutRows):
613         * rendering/style/BorderData.h:
614         (WebCore::BorderData::hasBorderRadius):
615
616 2011-03-21  Adam Barth  <abarth@webkit.org>
617
618         Reviewed by Eric Seidel.
619
620         Add WebCoreExportFileGenerator to WebCore GYP build
621         https://bugs.webkit.org/show_bug.cgi?id=56778
622
623         This target mirrors the eponymous target from WebCore.xcodeproj.
624
625         * WebCore.gypi:
626         * gyp/WebCore.gyp:
627         * generate-webcore-export-file-generator.sh: Added.
628
629 2011-03-21  Adam Barth  <abarth@webkit.org>
630
631         Reviewed by Dimitri Glazkov.
632
633         WebCore GYP build shouldn&apos;t crash on startup
634         https://bugs.webkit.org/show_bug.cgi?id=56776
635
636         Debug builds shouldn't define NDEBUG.  This same logic exists in the
637         project.pbxproj file.
638
639         * gyp/WebCore.gyp:
640
641 2011-03-21  Daniel Cheng  <dcheng@chromium.org>
642
643         Reviewed by Tony Chang.
644
645         [chromium] Implement glue between DataTransferItems and the pasteboard.
646         https://bugs.webkit.org/show_bug.cgi?id=56330
647
648         Support retrieving clipboard data in a paste through DataTransferItems.
649
650         Test: editing/pasteboard/data-transfer-items.html
651
652         * platform/chromium/ClipboardChromium.cpp:
653         (WebCore::ClipboardChromium::items):
654         * platform/chromium/DataTransferItemChromium.cpp:
655         (WebCore::DataTransferItemChromium::createFromPasteboard):
656         (WebCore::DataTransferItemChromium::create):
657         (WebCore::DataTransferItemChromium::DataTransferItemChromium):
658         (WebCore::DataTransferItemChromium::getAsString):
659         * platform/chromium/DataTransferItemChromium.h:
660         * platform/chromium/DataTransferItemsChromium.cpp:
661         (WebCore::DataTransferItemsChromium::addPasteboardItem):
662         * platform/chromium/DataTransferItemsChromium.h:
663
664 2011-03-21  Chris Fleizach  <cfleizach@apple.com>
665
666         Reviewed by Darin Adler.
667
668         AX: showContextMenu not working in WK2
669         https://bugs.webkit.org/show_bug.cgi?id=56734
670
671         WebKit2 is not able to directly open a context menu because the UI is in the other process.
672         Instead the chrome client should be used. This also means implementing showContextMenu() in WebKit1
673         code.
674         
675         * accessibility/mac/AccessibilityObjectWrapper.mm:
676         (-[AccessibilityObjectWrapper accessibilityShowContextMenu]):
677
678 2011-03-21  Robert Kroeger  <rjkroege@chromium.org>
679
680         Reviewed by Antonio Gomes.
681
682         Add Support to WebCore to optionally call a platform-specific gesture recognizer
683         https://bugs.webkit.org/show_bug.cgi?id=49345
684
685         Added an ability for the EventHandler to invoke an optional platform
686         specific gesture recognizer.
687
688         No tests added because the change should be functionally invisible.
689
690         * WebCore.gypi:
691         * page/EventHandler.cpp:
692         (WebCore::EventHandler::EventHandler):
693         (WebCore::EventHandler::handleTouchEvent):
694         * page/EventHandler.h:
695         * platform/PlatformGestureRecognizer.cpp: Added.
696         (WebCore::PlatformGestureRecognizer::PlatformGestureRecognizer):
697         (WebCore::PlatformGestureRecognizer::~PlatformGestureRecognizer):
698         (WebCore::PlatformGestureRecognizer::create):
699         * platform/PlatformGestureRecognizer.h: Added.
700
701 2011-03-21  Dean Jackson  <dino@apple.com>
702
703         Reviewed by Chris Marrin and Simon Fraser.
704
705         https://bugs.webkit.org/show_bug.cgi?id=56325
706         ASSERTION FAILED: paused() in AnimationBase::updateStateMachine()
707
708         AnimationBase had a custom linked-list/self-pointer for keeping
709         track of animations that needed to be notified of style updates
710         and start progress. This caused problems when AnimationBase was
711         destroyed, since the pointer wasn't managed in any way. I replaced
712         these pointers with HashSets and moved the code that removes animations
713         from the sets into AnimationControllerPrivate, where it belongs.
714         CompositeAnimation is also more careful to tell AnimationControllerPrivate
715         when it no longer needs to keep track of waiting animations.
716
717         This should stop the style updates being called on non-active animations
718         (which was the cause of the state machine error here) and should also
719         stop a few of the related flakey test failures and occasional crashes.
720
721         Test: animations/body-removal-crash.html
722
723         * page/animation/AnimationBase.cpp:
724         (WebCore::AnimationBase::AnimationBase):
725         (WebCore::AnimationBase::updateStateMachine):
726         * page/animation/AnimationBase.h:
727         (WebCore::AnimationBase::~AnimationBase):
728         - Remove the linked-list
729         * page/animation/AnimationController.cpp:
730         (WebCore::AnimationControllerPrivate::AnimationControllerPrivate):
731         (WebCore::AnimationControllerPrivate::addToAnimationsWaitingForStyle):
732         (WebCore::AnimationControllerPrivate::removeFromAnimationsWaitingForStyle):
733         (WebCore::AnimationControllerPrivate::styleAvailable):
734         (WebCore::AnimationControllerPrivate::addToAnimationsWaitingForStartTimeResponse):
735         (WebCore::AnimationControllerPrivate::removeFromAnimationsWaitingForStartTimeResponse):
736         (WebCore::AnimationControllerPrivate::startTimeResponse):
737         (WebCore::AnimationControllerPrivate::animationWillBeRemoved):
738         - New method to remove animations from the waiting lists
739         * page/animation/AnimationControllerPrivate.h:
740         - use a HashSet rather than an AnimationBase* pointer.
741         * page/animation/CompositeAnimation.cpp:
742         (WebCore::CompositeAnimation::~CompositeAnimation):
743         (WebCore::CompositeAnimation::clearRenderer):
744         (WebCore::CompositeAnimation::updateTransitions):
745         (WebCore::CompositeAnimation::updateKeyframeAnimations):
746         - remove the animations and transitions from the lists when we know
747           they are no longer active (rather than waiting for the AnimationBase
748           to do it when destructing)
749
750 2011-03-21  Justin Schuh  <jschuh@chromium.org>
751
752         Reviewed by James Robinson.
753
754         Stop inserting when the parent is removed
755         https://bugs.webkit.org/show_bug.cgi?id=56690
756
757         Tests: fast/dom/insertedIntoDocument-child.html
758                fast/dom/insertedIntoDocument-iframe.html
759                fast/dom/insertedIntoDocument-sibling.html
760
761         * dom/ContainerNode.cpp:
762         (WebCore::ContainerNode::insertedIntoDocument):
763         * html/HTMLEmbedElement.cpp:
764         (WebCore::HTMLEmbedElement::insertedIntoDocument):
765         * html/HTMLObjectElement.cpp:
766         (WebCore::HTMLObjectElement::insertedIntoDocument):
767
768 2011-03-07  David Levin  <levin@chromium.org>
769
770         Reviewed by Adam Barth.
771
772         SubresourceLoader should expose a way to set the outgoing referer/origin
773         https://bugs.webkit.org/show_bug.cgi?id=55903
774
775         No new tests as no new functionality is exposed.
776
777         * loader/SubresourceLoader.cpp:
778         (WebCore::SubresourceLoader::create):
779         * loader/SubresourceLoader.h:
780
781 2011-03-21  Daniel Sievers  <sievers@google.com>
782
783         Reviewed by Simon Fraser.
784
785         [Chromium] Make RenderAsTextBehavior and LayerTreeAsTextBehavior tweakable from the DumpRenderTree commandline
786         https://bugs.webkit.org/show_bug.cgi?id=56139
787
788         * WebCore.exp.in:
789         * WebCore.order:
790         * page/Frame.cpp:
791         (WebCore::Frame::layerTreeAsText):
792         * page/Frame.h:
793         * rendering/RenderLayerCompositor.cpp:
794         (WebCore::RenderLayerCompositor::layerTreeAsText):
795         * rendering/RenderLayerCompositor.h:
796
797 2011-03-21  Chang Shu  <cshu@webkit.org>
798
799         Reviewed by Alexey Proskuryakov.
800
801         REGRESSION (r79953): Can't type in MS Outlook 2011
802         https://bugs.webkit.org/show_bug.cgi?id=56665
803
804         r79953 removed the WebView level editablity which is persistent no matter whether
805         underlying document itself is changed and editability gets lost. The resolution is to
806         set this WebView editable value to WebCore. This avoids the callback from WebCore to
807         WebKit which was the main goal in r79953 to improve performance.
808
809         * WebCore.exp.in:
810         * accessibility/AccessibilityRenderObject.cpp:
811         (WebCore::AccessibilityRenderObject::isReadOnly):
812         * dom/Node.cpp:
813         (WebCore::Node::isContentEditable):
814         * editing/SelectionController.cpp:
815         (WebCore::SelectionController::setSelectionFromNone):
816         * page/DragController.cpp:
817         (WebCore::DragController::operationForLoad):
818         * page/Page.cpp:
819         (WebCore::Page::Page):
820         * page/Page.h:
821         (WebCore::Page::setEditable):
822         (WebCore::Page::isEditable):
823
824 2011-03-21  Eric Uhrhane <ericu@chromium.org>
825
826         Reviewed by David Levin.
827
828         [fileapi/chromium] Fetch platform path using GetMetadata before creating File from FileEntry*
829         https://bugs.webkit.org/show_bug.cgi?id=56704
830
831         * fileapi/DOMFileSystemSync.cpp
832         (DOMFileSystemSync::createFile)
833         (class GetPathHelper): Added, to look up path before creating File.
834         * fileapi/DOMFileSystem.cpp
835         (DOMFileSystem::createFile)
836         (GetPathCallback): Added, to look up path before creating File.
837         * platform/FileMetadata.h
838         (struct FileMetadata): Added new field platformPath.
839
840 2011-03-21  Dominic Cooney  <dominicc@google.com>
841
842         Reviewed by Jeremy Orlow.
843
844         Establishes a V8 context before executing MediaQueryList callbacks.
845         https://bugs.webkit.org/show_bug.cgi?id=56166
846
847         MediaQueryList listener callbacks didn't establish a V8 context
848         before running script, causing crashes on C++-only
849         callstacks (such as user resizing, printing, etc.) I believe this
850         could also be contrived to execute media query list listener
851         callbacks across domain.
852
853         Test: fast/media/media-query-list-callback.html
854
855         * css/MediaQueryListListener.cpp:
856         (WebCore::MediaQueryListListener::queryChanged):
857
858 2011-03-21  Andreas Kling  <kling@webkit.org>
859
860         Reviewed by Tor Arne Vestbø.
861
862         [Qt] Add QNetworkReplyHandler::wasAborted()
863
864         Instead of checking if the ResourceHandle is null everywhere,
865         use a wasAborted() method to make the code readable.
866
867         * platform/network/qt/QNetworkReplyHandler.h:
868         (WebCore::QNetworkReplyHandler::wasAborted):
869         * platform/network/qt/QNetworkReplyHandler.cpp:
870         (WebCore::QNetworkReplyHandler::finish):
871         (WebCore::QNetworkReplyHandler::sendResponseIfNeeded):
872         (WebCore::QNetworkReplyHandler::redirect):
873         (WebCore::QNetworkReplyHandler::forwardData):
874         (WebCore::QNetworkReplyHandler::uploadProgress):
875
876 2011-03-21  Christian Dywan  <christian@lanedo.com>
877
878         Reviewed by Martin Robinson.
879
880         WebKitIconDatabase may trigger crash in cairoImageSurfaceToGdkPixbuf
881         https://bugs.webkit.org/show_bug.cgi?id=56201
882
883         * platform/graphics/gtk/ImageGtk.cpp: Don't attempt to make a pixbuf
884             if there is no image.
885
886 2011-03-21  Mario Sanchez Prada  <msanchez@igalia.com>
887
888         Reviewed by Martin Robinson.
889
890         [GTK] [Stable] AtkHypertext exposes wrong offsets for links placed inside <span> nodes
891         https://bugs.webkit.org/show_bug.cgi?id=56737
892
893         Only consider parent objects not ignoring accessibility.
894
895         * accessibility/gtk/WebKitAccessibleHyperlink.cpp:
896         (webkitAccessibleHyperlinkGetStartIndex): Look for the parent
897         object not ignoring accessibility for the current hyperlink.
898         (webkitAccessibleHyperlinkGetEndIndex): Ditto.
899
900 2011-03-21  Andreas Kling  <kling@webkit.org>
901
902         Reviewed by Benjamin Poulain.
903
904         [Qt] Remove handling of QNetworkAccessManager::UnknownOperation
905
906         Now that Qt 4.7 is required we never have to fall back to UnknownOperation.
907         Custom verb requests are using CustomOperation already, so this was dead code.
908
909         * platform/network/qt/QNetworkReplyHandler.cpp:
910         (WebCore::QNetworkReplyHandler::start):
911
912 2011-03-21  Adam Roben  <aroben@apple.com>
913
914         Fix multiple-definition linker warnings on Windows
915
916         * WebCore.vcproj/WebCore.vcproj: Exclude RenderSVGPath.cpp from the build, since it is
917         already being compiled via RenderingAllInOne.cpp. Let VS have its way with the rest of the
918         file.
919
920 2011-03-21  Andreas Kling  <kling@webkit.org>
921
922         Reviewed by Benjamin Poulain.
923
924         [Qt] Clean up QNetworkReplyHandler::release()
925
926         Since QNetworkReplyHandler no longer uses queued connections to
927         the QNetworkReply, it's not necessary to mess with the event
928         queue when releasing a reply.
929
930         * platform/network/qt/QNetworkReplyHandler.cpp:
931         (WebCore::QNetworkReplyHandler::abort):
932         (WebCore::QNetworkReplyHandler::release):
933
934 2011-03-21  Vsevolod Vlasov  <vsevik@chromium.org>
935
936         Reviewed by Pavel Feldman.
937
938         Web Inspector: Inspector does not always show correct transfer size (for compressed/chunked data)
939         https://bugs.webkit.org/show_bug.cgi?id=56691
940
941         Added transfer size support in inspector for compressed data.
942
943         Test: http/tests/inspector/network/network-size-chunked.html
944
945         * inspector/Inspector.idl:
946         * inspector/InspectorInstrumentation.cpp:
947         (WebCore::InspectorInstrumentation::didReceiveContentLengthImpl):
948         * inspector/InspectorInstrumentation.h:
949         (WebCore::InspectorInstrumentation::didReceiveContentLength):
950         * inspector/InspectorResourceAgent.cpp:
951         (WebCore::InspectorResourceAgent::didReceiveResponse):
952         (WebCore::InspectorResourceAgent::didReceiveContentLength):
953         * inspector/InspectorResourceAgent.h:
954         * inspector/front-end/NetworkManager.js:
955         (WebInspector.NetworkDispatcher.prototype.didReceiveContentLength):
956         * inspector/front-end/Resource.js:
957         (WebInspector.Resource.prototype.get transferSize):
958         (WebInspector.Resource.prototype.increaseTransferSize):
959         * loader/ResourceLoadNotifier.cpp:
960         (WebCore::ResourceLoadNotifier::didReceiveData):
961         (WebCore::ResourceLoadNotifier::dispatchDidReceiveContentLength):
962         (WebCore::ResourceLoadNotifier::sendRemainingDelegateMessages):
963         * loader/ResourceLoadNotifier.h:
964         * loader/appcache/ApplicationCacheGroup.cpp:
965         (WebCore::ApplicationCacheGroup::didReceiveData):
966         * platform/network/mac/ResourceHandleMac.mm:
967         (-[WebCoreResourceHandleAsDelegate connection:didReceiveData:lengthReceived:]):
968         * platform/network/qt/QNetworkReplyHandler.cpp:
969         (WebCore::QNetworkReplyHandler::forwardData):
970         * platform/network/soup/ResourceHandleSoup.cpp:
971         (WebCore::gotChunkCallback):
972         * platform/network/win/ResourceHandleWin.cpp:
973         (WebCore::ResourceHandle::onRequestComplete):
974         (WebCore::ResourceHandle::fileLoadTimer):
975
976 2011-03-21  Leo Yang  <leo.yang@torchmobile.com.cn>
977
978         Reviewed by Dirk Schulze.
979
980         symbol display <use> at wrong scale
981         https://bugs.webkit.org/show_bug.cgi?id=54538
982
983         SVG spec: http://www.w3.org/TR/SVG/struct.html#UseElement
984         Quotation for referenced <symbol>: "If attributes 'width'
985         and/or 'height' are provided on the 'use' element, then
986         these attributes will be transferred to the generated 'svg'."
987         Quotation for referenced <svg>: "If attributes 'width'
988         and/or 'height' are provided on the 'use' element, then
989         these values will override the corresponding attributes
990         on the 'svg' in the generated tree."
991         For above quotations, we should treat 'use' element as referencing
992         'use' element, just like Firefox 3.6 and Opera 11, instead of
993         corrensponding 'use' element.
994
995         Tests: svg/custom/use-transfer-width-height-properties-to-svg.svg
996                svg/custom/use-transfer-width-height-properties-to-svg1.svg
997                svg/custom/use-transfer-width-height-properties-to-svg2.svg
998                svg/custom/use-transfer-width-height-properties-to-symbol.svg
999                svg/custom/use-transfer-width-height-properties-to-symbol1.svg
1000                svg/custom/use-transfer-width-height-properties-to-symbol2.svg
1001
1002         * svg/SVGElementInstance.cpp:
1003         (WebCore::SVGElementInstance::SVGElementInstance):
1004         * svg/SVGElementInstance.h:
1005         (WebCore::SVGElementInstance::create):
1006         (WebCore::SVGElementInstance::correspondingUseElement):
1007         (WebCore::SVGElementInstance::directUseElement):
1008         (WebCore::SVGElementInstance::clearUseElements):
1009         * svg/SVGUseElement.cpp:
1010         (WebCore::updateContainerSize):
1011         (WebCore::SVGUseElement::updateContainerSizes):
1012         (WebCore::dumpInstanceTree):
1013         (WebCore::SVGUseElement::detachInstance):
1014         (WebCore::SVGUseElement::buildInstanceTree):
1015
1016 2011-03-21  Jaehun Lim  <ljaehun.lim@samsung.com>
1017
1018         Reviewed by Pavel Feldman.
1019
1020         Fix build break when inspector is enabled.
1021         https://bugs.webkit.org/show_bug.cgi?id=56735
1022
1023         * loader/FrameLoader.cpp:
1024         (WebCore::FrameLoader::continueLoadAfterNavigationPolicy): Add ENABLE(INSPECTOR).
1025
1026 2011-03-21  Philippe Normand  <pnormand@igalia.com>
1027
1028         Unreviewed, GTK distcheck build fix.
1029
1030         * GNUmakefile.am:
1031
1032 2011-03-21  Julien Chaffraix  <jchaffraix@webkit.org>
1033
1034         Reviewed by Eric Seidel.
1035
1036         Bug 51465 - chrome.dll!WebCore::RenderLayer::currentTransform
1037         ReadAV@NULL (8968fc97874fa23b6799ff8f09c142e4)
1038
1039         Test: fast/css/webkit-empty-transform-preserve3d-crash.html
1040
1041         * rendering/RenderBox.cpp:
1042         (WebCore::RenderBox::layoutOverflowRectForPropagation): Mimicked the
1043         rest of the code and check that the RenderBox has a layer to avoid
1044         crashing on the layer() call.
1045
1046 2011-03-21  Pavel Feldman  <pfeldman@chromium.org>
1047
1048         Reviewed by Yury Semikhatsky.
1049
1050         Web Inspector: move cookie processing and appcache from DOMAgent.js
1051         https://bugs.webkit.org/show_bug.cgi?id=56713
1052
1053         * inspector/front-end/ApplicationCacheItemsView.js:
1054         (WebInspector.ApplicationCacheDispatcher):
1055         (WebInspector.ApplicationCacheDispatcher.getApplicationCachesAsync):
1056         (WebInspector.ApplicationCacheDispatcher.prototype.updateApplicationCacheStatus):
1057         (WebInspector.ApplicationCacheDispatcher.prototype.updateNetworkState):
1058         * inspector/front-end/CookieItemsView.js:
1059         (WebInspector.Cookies.getCookiesAsync):
1060         (WebInspector.Cookies.buildCookiesFromString):
1061         (WebInspector.Cookies.cookieMatchesResourceURL):
1062         (WebInspector.Cookies.cookieDomainMatchesResourceDomain):
1063         * inspector/front-end/DOMAgent.js:
1064         (WebInspector.DOMNode.prototype.eventListeners):
1065         * inspector/front-end/EventListenersSidebarPane.js:
1066         (WebInspector.EventListenersSidebarPane.prototype.update):
1067
1068 2011-03-21  Pavel Feldman  <pfeldman@chromium.org>
1069
1070         Reviewed by Yury Semikhatsky.
1071
1072         Web Inspector: migrate Inspector.json to valid JSON types.
1073         https://bugs.webkit.org/show_bug.cgi?id=56651
1074
1075         This change migrates inspector from long to int as
1076         dom, storage, database and other id types.
1077
1078         * inspector/InjectedScriptHost.cpp:
1079         (WebCore::InjectedScriptHost::inspectedNode):
1080         (WebCore::InjectedScriptHost::databaseIdImpl):
1081         (WebCore::InjectedScriptHost::storageIdImpl):
1082         (WebCore::InjectedScriptHost::didCreateWorker):
1083         (WebCore::InjectedScriptHost::didDestroyWorker):
1084         * inspector/InjectedScriptHost.h:
1085         * inspector/InjectedScriptHost.idl:
1086         * inspector/Inspector.json:
1087         * inspector/InspectorAgent.cpp:
1088         (WebCore::InspectorAgent::highlightDOMNode):
1089         * inspector/InspectorAgent.h:
1090         * inspector/InspectorBrowserDebuggerAgent.cpp:
1091         (WebCore::InspectorBrowserDebuggerAgent::setDOMBreakpoint):
1092         (WebCore::InspectorBrowserDebuggerAgent::removeDOMBreakpoint):
1093         (WebCore::InspectorBrowserDebuggerAgent::descriptionForDOMEvent):
1094         (WebCore::InspectorBrowserDebuggerAgent::hasBreakpoint):
1095         * inspector/InspectorBrowserDebuggerAgent.h:
1096         * inspector/InspectorCSSAgent.cpp:
1097         (WebCore::InspectorCSSAgent::getStylesForNode):
1098         (WebCore::InspectorCSSAgent::getInlineStyleForNode):
1099         (WebCore::InspectorCSSAgent::getComputedStyleForNode):
1100         (WebCore::InspectorCSSAgent::setPropertyText):
1101         (WebCore::InspectorCSSAgent::toggleProperty):
1102         (WebCore::InspectorCSSAgent::addRule):
1103         (WebCore::InspectorCSSAgent::elementForId):
1104         * inspector/InspectorCSSAgent.h:
1105         * inspector/InspectorConsoleAgent.cpp:
1106         (WebCore::InspectorConsoleAgent::count):
1107         (WebCore::InspectorConsoleAgent::addInspectedNode):
1108         (WebCore::InspectorConsoleAgent::setConsoleMessagesEnabled):
1109         * inspector/InspectorConsoleAgent.h:
1110         * inspector/InspectorDOMAgent.cpp:
1111         (WebCore::InspectorDOMAgent::bind):
1112         (WebCore::InspectorDOMAgent::unbind):
1113         (WebCore::InspectorDOMAgent::assertNode):
1114         (WebCore::InspectorDOMAgent::assertElement):
1115         (WebCore::InspectorDOMAgent::assertHTMLElement):
1116         (WebCore::InspectorDOMAgent::nodeToSelectOn):
1117         (WebCore::InspectorDOMAgent::pushChildNodesToFrontend):
1118         (WebCore::InspectorDOMAgent::nodeForId):
1119         (WebCore::InspectorDOMAgent::getChildNodes):
1120         (WebCore::InspectorDOMAgent::querySelector):
1121         (WebCore::InspectorDOMAgent::querySelectorAll):
1122         (WebCore::InspectorDOMAgent::pushNodePathToFrontend):
1123         (WebCore::InspectorDOMAgent::boundNodeId):
1124         (WebCore::InspectorDOMAgent::setAttribute):
1125         (WebCore::InspectorDOMAgent::removeAttribute):
1126         (WebCore::InspectorDOMAgent::removeNode):
1127         (WebCore::InspectorDOMAgent::setNodeName):
1128         (WebCore::InspectorDOMAgent::getOuterHTML):
1129         (WebCore::InspectorDOMAgent::setOuterHTML):
1130         (WebCore::InspectorDOMAgent::setNodeValue):
1131         (WebCore::InspectorDOMAgent::getEventListenersForNode):
1132         (WebCore::InspectorDOMAgent::resolveNode):
1133         (WebCore::InspectorDOMAgent::pushNodeToFrontend):
1134         (WebCore::InspectorDOMAgent::buildObjectForNode):
1135         (WebCore::InspectorDOMAgent::loadEventFired):
1136         (WebCore::InspectorDOMAgent::didInsertDOMNode):
1137         (WebCore::InspectorDOMAgent::didRemoveDOMNode):
1138         (WebCore::InspectorDOMAgent::didModifyDOMAttr):
1139         (WebCore::InspectorDOMAgent::characterDataModified):
1140         (WebCore::InspectorDOMAgent::didInvalidateStyleAttr):
1141         (WebCore::InspectorDOMAgent::reportNodesAsSearchResults):
1142         (WebCore::InspectorDOMAgent::copyNode):
1143         (WebCore::InspectorDOMAgent::pushNodeByPathToFrontend):
1144         * inspector/InspectorDOMAgent.h:
1145         * inspector/InspectorDOMStorageAgent.cpp:
1146         (WebCore::InspectorDOMStorageAgent::getDOMStorageEntries):
1147         (WebCore::InspectorDOMStorageAgent::setDOMStorageItem):
1148         (WebCore::InspectorDOMStorageAgent::removeDOMStorageItem):
1149         (WebCore::InspectorDOMStorageAgent::storageId):
1150         (WebCore::InspectorDOMStorageAgent::getDOMStorageResourceForId):
1151         * inspector/InspectorDOMStorageAgent.h:
1152         * inspector/InspectorDOMStorageResource.cpp:
1153         * inspector/InspectorDOMStorageResource.h:
1154         (WebCore::InspectorDOMStorageResource::id):
1155         * inspector/InspectorDatabaseAgent.cpp:
1156         (WebCore::InspectorDatabaseAgent::getDatabaseTableNames):
1157         (WebCore::InspectorDatabaseAgent::executeSQL):
1158         (WebCore::InspectorDatabaseAgent::databaseId):
1159         (WebCore::InspectorDatabaseAgent::databaseForId):
1160         * inspector/InspectorDatabaseAgent.h:
1161         * inspector/InspectorDatabaseResource.cpp:
1162         * inspector/InspectorDatabaseResource.h:
1163         (WebCore::InspectorDatabaseResource::id):
1164         * inspector/InspectorDebuggerAgent.cpp:
1165         (WebCore::InspectorDebuggerAgent::setPauseOnExceptionsState):
1166         * inspector/InspectorDebuggerAgent.h:
1167         * inspector/InspectorProfilerAgent.cpp:
1168         (WebCore::InspectorProfilerAgent::getExactHeapSnapshotNodeRetainedSize):
1169         * inspector/InspectorProfilerAgent.h:
1170         * inspector/InspectorResourceAgent.cpp:
1171         (WebCore::InspectorResourceAgent::identifierForInitialRequest):
1172         (WebCore::InspectorResourceAgent::willSendRequest):
1173         (WebCore::InspectorResourceAgent::markResourceAsCached):
1174         (WebCore::InspectorResourceAgent::didReceiveResponse):
1175         (WebCore::InspectorResourceAgent::didReceiveContentLength):
1176         (WebCore::InspectorResourceAgent::didFinishLoading):
1177         (WebCore::InspectorResourceAgent::didFailLoading):
1178         (WebCore::InspectorResourceAgent::setInitialContent):
1179         (WebCore::InspectorResourceAgent::didCreateWebSocket):
1180         (WebCore::InspectorResourceAgent::willSendWebSocketHandshakeRequest):
1181         (WebCore::InspectorResourceAgent::didReceiveWebSocketHandshakeResponse):
1182         (WebCore::InspectorResourceAgent::didCloseWebSocket):
1183         * inspector/generate-inspector-idl:
1184
1185 2011-03-21  Pavel Feldman  <pfeldman@chromium.org>
1186
1187         Reviewed by Yury Semikhatsky.
1188
1189         Web Inspector: make frameId in network agent of type string, not unsigned long.
1190         https://bugs.webkit.org/show_bug.cgi?id=56708
1191
1192         * inspector/Inspector.json:
1193         * inspector/InspectorAgent.cpp:
1194         (WebCore::InspectorAgent::highlightFrame):
1195         * inspector/InspectorAgent.h:
1196         * inspector/InspectorResourceAgent.cpp:
1197         (WebCore::pointerAsId):
1198         (WebCore::buildObjectForDocumentLoader):
1199         (WebCore::buildObjectForFrame):
1200         (WebCore::InspectorResourceAgent::frameDetachedFromParent):
1201         (WebCore::InspectorResourceAgent::frameForId):
1202         (WebCore::InspectorResourceAgent::resourceContent):
1203         * inspector/InspectorResourceAgent.h:
1204         * inspector/front-end/ResourcesPanel.js:
1205         (WebInspector.ResourcesPanel.prototype.addOrUpdateFrame):
1206
1207 2011-03-21  Pavel Feldman  <pfeldman@chromium.org>
1208
1209         Reviewed by Yury Semikhatsky.
1210
1211         Web Inspector: expose object id as string, not JSON struct in the protocol.
1212         https://bugs.webkit.org/show_bug.cgi?id=56681
1213
1214         * bindings/js/JSInjectedScriptHostCustom.cpp:
1215         (WebCore::JSInjectedScriptHost::inspect):
1216         * bindings/v8/custom/V8InjectedScriptHostCustom.cpp:
1217         (WebCore::V8InjectedScriptHost::inspectCallback):
1218         * inspector/InjectedScript.cpp:
1219         (WebCore::InjectedScript::evaluateOn):
1220         (WebCore::InjectedScript::evaluateOnCallFrame):
1221         (WebCore::InjectedScript::getProperties):
1222         (WebCore::InjectedScript::nodeForObjectId):
1223         (WebCore::InjectedScript::setPropertyValue):
1224         (WebCore::InjectedScript::releaseObject):
1225         * inspector/InjectedScript.h:
1226         * inspector/InjectedScriptHost.cpp:
1227         (WebCore::InjectedScriptHost::inspectImpl):
1228         * inspector/InjectedScriptHost.h:
1229         * inspector/InjectedScriptManager.cpp:
1230         (WebCore::InjectedScriptManager::injectedScriptForObjectId):
1231         (WebCore::InjectedScriptManager::releaseObjectGroup):
1232         * inspector/InjectedScriptManager.h:
1233         * inspector/InjectedScriptSource.js:
1234         * inspector/Inspector.json:
1235         * inspector/InspectorConsoleAgent.cpp:
1236         (WebCore::InspectorConsoleAgent::clearConsoleMessages):
1237         * inspector/InspectorDOMAgent.cpp:
1238         (WebCore::InspectorDOMAgent::pushNodeToFrontend):
1239         * inspector/InspectorDOMAgent.h:
1240         * inspector/InspectorDebuggerAgent.cpp:
1241         (WebCore::InspectorDebuggerAgent::evaluateOnCallFrame):
1242         * inspector/InspectorDebuggerAgent.h:
1243         * inspector/InspectorRuntimeAgent.cpp:
1244         (WebCore::InspectorRuntimeAgent::evaluateOn):
1245         (WebCore::InspectorRuntimeAgent::getProperties):
1246         (WebCore::InspectorRuntimeAgent::setPropertyValue):
1247         (WebCore::InspectorRuntimeAgent::releaseObject):
1248         (WebCore::InspectorRuntimeAgent::releaseObjectGroup):
1249         * inspector/InspectorRuntimeAgent.h:
1250         * inspector/front-end/ConsoleView.js:
1251         (WebInspector.ConsoleView.prototype.completions.evaluatedProperties):
1252         (WebInspector.ConsoleView.prototype.completions):
1253         * inspector/front-end/PropertiesSidebarPane.js:
1254         * inspector/front-end/ScriptsPanel.js:
1255         (WebInspector.SourceFrameDelegateForScriptsPanel.prototype.releaseEvaluationResult):
1256         * inspector/front-end/WatchExpressionsSidebarPane.js:
1257         (WebInspector.WatchExpressionsSection.prototype.update):
1258         * inspector/front-end/inspector.js:
1259         (WebInspector.inspect):
1260
1261 2011-03-20  Bill Budge  <bbudge@chromium.org>
1262
1263         Reviewed by Adam Barth.
1264
1265         Rename ThreadSafeShared to ThreadSafeRefCounted
1266         https://bugs.webkit.org/show_bug.cgi?id=56714
1267
1268         No new tests. Exposes no new functionality.
1269
1270         * ForwardingHeaders/wtf/ThreadSafeRefCounted.h: Copied from ForwardingHeaders/wtf/ThreadSafeShared.h.
1271         * ForwardingHeaders/wtf/ThreadSafeShared.h: Removed.
1272         * bindings/v8/SerializedScriptValue.h:
1273         * dom/Document.cpp:
1274         * dom/default/PlatformMessagePortChannel.h:
1275         * fileapi/FileThread.h:
1276         * loader/ThreadableLoaderClientWrapper.h:
1277         (WebCore::ThreadableLoaderClientWrapper::create):
1278         (WebCore::ThreadableLoaderClientWrapper::clearClient):
1279         (WebCore::ThreadableLoaderClientWrapper::done):
1280         (WebCore::ThreadableLoaderClientWrapper::didSendData):
1281         (WebCore::ThreadableLoaderClientWrapper::didReceiveResponse):
1282         (WebCore::ThreadableLoaderClientWrapper::didReceiveData):
1283         (WebCore::ThreadableLoaderClientWrapper::didReceiveCachedMetadata):
1284         (WebCore::ThreadableLoaderClientWrapper::didFinishLoading):
1285         (WebCore::ThreadableLoaderClientWrapper::didFail):
1286         (WebCore::ThreadableLoaderClientWrapper::didFailRedirectCheck):
1287         (WebCore::ThreadableLoaderClientWrapper::didReceiveAuthenticationCancellation):
1288         (WebCore::ThreadableLoaderClientWrapper::ThreadableLoaderClientWrapper):
1289         * page/SecurityOrigin.h:
1290         * platform/CrossThreadCopier.h:
1291         * platform/network/BlobData.h:
1292         * platform/network/cf/SocketStreamHandle.h:
1293         * storage/AbstractDatabase.h:
1294         * storage/DatabaseAuthorizer.h:
1295         * storage/DatabaseCallback.h:
1296         * storage/DatabaseThread.h:
1297         * storage/IDBCallbacks.h:
1298         * storage/IDBCursorBackendInterface.h:
1299         * storage/IDBDatabaseBackendInterface.h:
1300         * storage/IDBFactoryBackendInterface.h:
1301         * storage/IDBIndexBackendInterface.h:
1302         * storage/IDBKey.h:
1303         * storage/IDBKeyRange.h:
1304         * storage/IDBObjectStoreBackendInterface.h:
1305         * storage/IDBRequest.h:
1306         * storage/IDBTransactionBackendInterface.h:
1307         * storage/SQLError.h:
1308         * storage/SQLResultSet.h:
1309         * storage/SQLStatement.h:
1310         * storage/SQLStatementCallback.h:
1311         * storage/SQLStatementErrorCallback.h:
1312         * storage/SQLTransaction.h:
1313         * storage/SQLTransactionCallback.h:
1314         * storage/SQLTransactionErrorCallback.h:
1315         * websockets/ThreadableWebSocketChannelClientWrapper.h:
1316         * workers/DefaultSharedWorkerRepository.cpp:
1317
1318 2011-03-20  Andreas Kling  <kling@webkit.org>
1319
1320         Reviewed by Kenneth Rohde Christiansen.
1321
1322         [Qt] Clean up redirection logic in QNetworkReplyHandler
1323         https://bugs.webkit.org/show_bug.cgi?id=56717
1324
1325         * platform/network/qt/QNetworkReplyHandler.cpp:
1326         (WebCore::QNetworkReplyHandler::QNetworkReplyHandler):
1327         Use resetState() when constructing QNRH as well.
1328
1329         (WebCore::QNetworkReplyHandler::resetState):
1330         Delete (deferred) the m_reply if one exists (only when redirecting.)
1331
1332         (WebCore::QNetworkReplyHandler::finish):
1333         Return early when redirecting.
1334
1335         (WebCore::QNetworkReplyHandler::sendResponseIfNeeded):
1336         (WebCore::QNetworkReplyHandler::redirect):
1337         Move the redirection logic from sendResponseIfNeeded() into a
1338         separate redirect() method.
1339
1340 2011-03-19  Andreas Kling  <kling@webkit.org>
1341
1342         Reviewed by Benjamin Poulain.
1343
1344         [Qt] Rename ignoreHttpError() to shouldIgnoreHttpError()
1345
1346         The function doesn't ignore anything, thus it shouldn't have an imperative name.
1347
1348         * platform/network/qt/QNetworkReplyHandler.cpp:
1349         (WebCore::shouldIgnoreHttpError):
1350         (WebCore::QNetworkReplyHandler::finish):
1351         (WebCore::QNetworkReplyHandler::sendResponseIfNeeded):
1352
1353 2011-03-19  Andreas Kling  <kling@webkit.org>
1354
1355         Reviewed by Benjamin Poulain.
1356
1357         [Qt] Kill layer violation FIXME in ResourceHandleQt.
1358
1359         We were including qwebframe_p.h from WebKit/qt for no reason.
1360
1361         * platform/network/qt/ResourceHandleQt.cpp:
1362
1363 2011-03-19  Andreas Kling  <kling@webkit.org>
1364
1365         Reviewed by Benjamin Poulain.
1366
1367         [Qt] Refactor handling of deferred loads
1368         https://bugs.webkit.org/show_bug.cgi?id=56715
1369
1370         Split QNetworkReplyHandler's "load mode" into two parameters
1371         instead of trying to fit the deferral mechanism into it.
1372
1373         Loads are now AsynchronousLoad (default) or SynchronousLoad (for sync XHR.)
1374
1375         * platform/network/qt/QNetworkReplyHandler.cpp:
1376         (WebCore::QNetworkReplyHandler::QNetworkReplyHandler):
1377         (WebCore::QNetworkReplyHandler::setLoadingDeferred):
1378         (WebCore::QNetworkReplyHandler::resumeDeferredLoad):
1379         (WebCore::QNetworkReplyHandler::finish):
1380         (WebCore::QNetworkReplyHandler::sendResponseIfNeeded):
1381         (WebCore::QNetworkReplyHandler::forwardData):
1382         (WebCore::QNetworkReplyHandler::start):
1383         (WebCore::QNetworkReplyHandler::resetState):
1384         * platform/network/qt/QNetworkReplyHandler.h:
1385         * platform/network/qt/ResourceHandleQt.cpp:
1386         (WebCore::ResourceHandle::start):
1387         (WebCore::ResourceHandle::loadResourceSynchronously):
1388         (WebCore::ResourceHandle::platformSetDefersLoading):
1389
1390 2011-03-19  Anton D'Auria  <adauria@apple.com>
1391
1392         Reviewed by Alexey Proskuryakov.
1393
1394         ApplicationCacheGroup is not obsolete after being deleted via ApplicationCacheStorage::deleteEntriesForOrigin
1395         https://bugs.webkit.org/show_bug.cgi?id=56415
1396
1397         To delete all Application Cache for an origin, we must obsolete all
1398         in-memory cache groups for that origin. If a cache group isn't in memory,
1399         then it must be deleted from disk. The previous implementation correctly
1400         removed on-disk cache groups, but did not mark in-memory cache groups as obsolete.
1401         This caused an assertion failure in ApplicationCacheStorage::cacheGroupDestroyed()
1402         when the DocumentLoader was destroyed.
1403
1404         Test: http/tests/appcache/origin-delete.html
1405
1406         * WebCore.exp.in:
1407         * WebCore.xcodeproj/project.pbxproj:
1408         * loader/appcache/ApplicationCache.cpp:
1409         (WebCore::ApplicationCache::clearStorageID):
1410         (WebCore::ApplicationCache::deleteCacheForOrigin):
1411         * loader/appcache/ApplicationCache.h:
1412         * loader/appcache/ApplicationCacheStorage.cpp:
1413         (WebCore::ApplicationCacheStorage::findInMemoryCacheGroup):
1414         * loader/appcache/ApplicationCacheStorage.h:
1415
1416 2011-03-19  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
1417
1418         Reviewed by Antonio Gomes.
1419
1420         [EFL] Add dummy GeolocationServiceEfl. cpp | h
1421         https://bugs.webkit.org/show_bug.cgi?id=56710
1422
1423         Add dummy GeolocationServiceEfl.cpp | h to platform/efl.
1424
1425         * CMakeListsEfl.txt:
1426         * platform/efl/GeolocationServiceEfl.cpp: Added.
1427         (WebCore::GeolocationServiceEfl::create):
1428         (WebCore::GeolocationServiceEfl::GeolocationServiceEfl):
1429         (WebCore::GeolocationServiceEfl::~GeolocationServiceEfl):
1430         (WebCore::GeolocationServiceEfl::startUpdating):
1431         (WebCore::GeolocationServiceEfl::stopUpdating):
1432         (WebCore::GeolocationServiceEfl::suspend):
1433         (WebCore::GeolocationServiceEfl::resume):
1434         (WebCore::GeolocationServiceEfl::lastPosition):
1435         (WebCore::GeolocationServiceEfl::lastError):
1436         * platform/efl/GeolocationServiceEfl.h: Added.
1437
1438 2011-03-19  Patrick Gansterer  <paroga@webkit.org>
1439
1440         Unreviewed, rolling out r81551.
1441         http://trac.webkit.org/changeset/81551
1442         https://bugs.webkit.org/show_bug.cgi?id=55336
1443
1444         Broke some storage tests on Win32.
1445
1446         * platform/win/FileSystemWin.cpp:
1447         (WebCore::statFile):
1448         (WebCore::getFileSize):
1449         (WebCore::getFileModificationTime):
1450         (WebCore::fileExists):
1451
1452 2011-03-19  Andreas Kling  <kling@webkit.org>
1453
1454         Reviewed by Benjamin Poulain.
1455
1456         [Qt] Remove support for Qt 4.6
1457         https://bugs.webkit.org/show_bug.cgi?id=56712
1458
1459         * platform/graphics/qt/FontPlatformDataQt.cpp:
1460         (WebCore::FontPlatformData::FontPlatformData):
1461         * platform/graphics/qt/FontQt.cpp:
1462         (WebCore::drawTextCommon):
1463         (WebCore::Font::drawSimpleText):
1464         (WebCore::Font::floatWidthForSimpleText):
1465         (WebCore::Font::offsetForPositionForSimpleText):
1466         (WebCore::Font::selectionRectForSimpleText):
1467         * platform/graphics/qt/GraphicsContext3DQt.cpp:
1468         (WebCore::GraphicsContext3DInternal::paint):
1469         * platform/graphics/qt/ImageBufferQt.cpp:
1470         (WebCore::getImageData):
1471         * platform/graphics/qt/ImageDecoderQt.cpp:
1472         (WebCore::ImageDecoderQt::internalHandleCurrentImage):
1473         * platform/graphics/qt/PathQt.cpp:
1474         (WebCore::Path::transform):
1475         * platform/network/qt/DnsPrefetchHelper.h:
1476         (WebCore::DnsPrefetchHelper::DnsPrefetchHelper):
1477         (WebCore::DnsPrefetchHelper::lookup):
1478         * platform/network/qt/NetworkStateNotifierPrivate.h:
1479         * platform/network/qt/NetworkStateNotifierQt.cpp:
1480         * platform/network/qt/QNetworkReplyHandler.cpp:
1481         (WebCore::QNetworkReplyHandler::httpMethod):
1482         (WebCore::QNetworkReplyHandler::QNetworkReplyHandler):
1483         (WebCore::QNetworkReplyHandler::sendResponseIfNeeded):
1484         (WebCore::QNetworkReplyHandler::start):
1485         * platform/network/qt/ResourceRequestQt.cpp:
1486         (WebCore::ResourceRequest::toNetworkRequest):
1487         * platform/qt/RenderThemeQt.cpp:
1488         (WebCore::RenderThemeQt::paintMediaSliderTrack):
1489
1490 2011-03-19  Patrick Gansterer  <paroga@webkit.org>
1491
1492         Reviewed by Adam Roben.
1493
1494         Use Win32 API to get file information
1495         https://bugs.webkit.org/show_bug.cgi?id=55336
1496
1497         Use GetFileInformationByHandle() in favour over _wstat64(), GetFileSizeEx()
1498         and GetFileAttributesEx() so we can share the code with WinCE.
1499
1500         * platform/win/FileSystemWin.cpp:
1501         (WebCore::createFileHandle):
1502         (WebCore::getFileInformation):
1503         (WebCore::getFileSize):
1504         (WebCore::getFileModificationTime):
1505         (WebCore::fileExists):
1506
1507 2011-03-19  Xan Lopez  <xlopez@igalia.com>
1508
1509         Reviewed by Martin Robinson.
1510
1511         [GTK] Simplify GObjectEventListener
1512         https://bugs.webkit.org/show_bug.cgi?id=56698
1513
1514         Get rid of special case for DOMWindow, since it's also an
1515         EventTarget.
1516
1517         * bindings/gobject/GObjectEventListener.cpp:
1518         (WebCore::GObjectEventListener::GObjectEventListener): remove
1519         DOMWindow special casing.
1520         (WebCore::GObjectEventListener::~GObjectEventListener): ditto.
1521         (WebCore::GObjectEventListener::gobjectDestroyed):
1522         * bindings/gobject/GObjectEventListener.h:
1523         (WebCore::GObjectEventListener::addEventListener): ditto.
1524         (WebCore::GObjectEventListener::removeEventListener): ditto.
1525
1526 2011-03-19  Ben Taylor  <bentaylor.solx86@gmail.com>
1527
1528         Reviewed by Nikolas Zimmermann.
1529
1530         https://bugs.webkit.org/show_bug.cgi?id=56195
1531         Fix conditional which had an int for one case and a pointer for another.
1532         Similar fix as https://bugs.webkit.org/show_bug.cgi?id=56198
1533
1534         No new tests. Fix compilation on Solaris 10 with Sun Studio C++
1535
1536         * svg/SVGElement.cpp:
1537         (WebCore::SVGElement::sendSVGLoadEventIfPossible):
1538
1539 2011-03-19  Patrick Gansterer  <paroga@webkit.org>
1540
1541         Reviewed by Darin Adler.
1542
1543         Rename WTF::StringHasher methods
1544         https://bugs.webkit.org/show_bug.cgi?id=53532
1545
1546         Rename createHash to computeHash and createBlobHash to hashMemory.
1547         Also add a using WTF::StringHasher in the header file.
1548
1549         * dom/Document.cpp:
1550         (WebCore::FormElementKeyHash::hash):
1551         * dom/QualifiedName.h:
1552         (WebCore::hashComponents):
1553         * dom/StyledElement.cpp:
1554         (WebCore::MappedAttributeHash::hash):
1555         * loader/appcache/ApplicationCacheStorage.cpp:
1556         (WebCore::urlHostHash):
1557         * page/SecurityOriginHash.h:
1558         (WebCore::SecurityOriginHash::hash):
1559         * platform/LinkHash.cpp:
1560         (WebCore::visitedLinkHashInline):
1561         * platform/cf/BinaryPropertyList.cpp:
1562         (WebCore::IntegerArrayHash::hash):
1563         * platform/cf/SchedulePair.h:
1564         (WebCore::SchedulePairHash::hash):
1565         * platform/graphics/FontCache.cpp:
1566         (WebCore::computeHash):
1567         * platform/graphics/chromium/FontPlatformDataChromiumWin.h:
1568         (WebCore::FontPlatformData::RefCountedHFONT::hash):
1569         * platform/graphics/cocoa/FontPlatformData.h:
1570         (WebCore::FontPlatformData::hash):
1571         * platform/graphics/pango/FontPlatformData.h:
1572         (WebCore::FontPlatformData::hash):
1573         * platform/graphics/wince/FontPlatformData.cpp:
1574         (WebCore::FixedSizeFontDataKeyHash::hash):
1575         * platform/graphics/wx/FontPlatformDataWx.cpp:
1576         (WebCore::FontPlatformData::computeHash):
1577         * platform/network/ProtectionSpaceHash.h:
1578         (WebCore::ProtectionSpaceHash::hash):
1579         * plugins/PluginPackage.cpp:
1580         (WebCore::PluginPackage::hash):
1581         * plugins/win/PluginPackageWin.cpp:
1582         (WebCore::PluginPackage::hash):
1583         * svg/properties/SVGAnimatedPropertyDescription.h:
1584         (WebCore::SVGAnimatedPropertyDescriptionHash::hash):
1585
1586 2011-03-18  David Kilzer  <ddkilzer@apple.com>
1587
1588         <http://webkit.org/b/56688> Fix clang static analyzer warning in WebCoreViewFactory.m
1589
1590         Reviewed by Anders Carlsson.
1591
1592         Fixes the following static analyzer warning:
1593
1594             Source/WebCore/page/mac/WebCoreViewFactory.m:45:5: warning: Returning 'self' while it is not set to the result of '[(super or self) init...]'
1595                  return self;
1596                  ^
1597
1598         * page/mac/WebCoreViewFactory.m:
1599         (-[WebCoreViewFactory init]): Assign the result of [super init]
1600         to self.
1601
1602 2011-03-18  Adam Barth  <abarth@webkit.org>
1603
1604         Reviewed by Dimitri Glazkov.
1605
1606         WebCore GYP build should build
1607         https://bugs.webkit.org/show_bug.cgi?id=56696
1608
1609         After this patch, the WebCore GYP build successfully compiles and
1610         links.  I haven't trying executing it yet.
1611
1612         * WebCore.gypi:
1613             - DOMMouseEvent should be included as part of the Objective-C bindings.
1614         * WebCore.xcodeproj/project.pbxproj:
1615             - RenderSVGPath.cpp was mistakenly included directly in the project
1616               instead of being built by RenderSVGAllInOne.
1617         * gyp/WebCore.gyp:
1618             - Exclude some more files from the build.  These files are absent
1619               in the normal build.  I didn't see them earlier because the dead
1620               code stripping was hiding them.  (They're probably unreferenced.)
1621             - Switch to using RenderSVGAllInOne.  I'm not entirely sure if this
1622               part of the patch is necessary, but it matches the normal build
1623               more closely.
1624         * platform/mac/WebCoreObjCExtras.mm:
1625             - The normal build passes the -Wdeprecated-declarations flag when
1626               compiling this file.  The GYP folks explicitly do not want to add
1627               that feature to GYP, and there does not appear to be a way to
1628               remove the deprecated call from this file.
1629         * rendering/svg/RenderSVGAllInOne.cpp:
1630             - Add RenderSVGPath.cpp, which was missing previously.
1631
1632 2011-03-18  Adam Barth  <abarth@webkit.org>
1633
1634         Reviewed by Dimitri Glazkov.
1635
1636         WebCore GYP build should (almost!) link
1637         https://bugs.webkit.org/show_bug.cgi?id=56689
1638
1639         This patch is a grab-bag of small changes to bring the WebCore GYP
1640         build down to two link errors or one compile error (take your pick).
1641         We might need a GYP change to get this last file to compile, however.
1642
1643         * WebCore.gypi:
1644         * gyp/WebCore.gyp:
1645
1646 2011-03-16  Ryosuke Niwa  <rniwa@webkit.org>
1647
1648         Reviewed by Ojan Vafai.
1649
1650         Add a test for r81266 and fix HTML Editing for fallback contents in object element
1651         https://bugs.webkit.org/show_bug.cgi?id=56505
1652
1653         The bug was caused by canHaveChildrenForEditing's always returning false even when
1654         object element used fallback content. Fixed the bug by adding a check.
1655
1656         Test: editing/editability/ignored-content.html
1657
1658         * editing/htmlediting.cpp:
1659         (WebCore::canHaveChildrenForEditing):
1660
1661 2011-03-18  Andy Estes  <aestes@apple.com>
1662
1663         Reviewed by Eric Seidel.
1664
1665         REGRESSION (r80231): Bad cast in HTMLTreeBuilder::processStartTag
1666         https://bugs.webkit.org/show_bug.cgi?id=56380
1667         
1668         Fix two issues with parsing a fragment that has a foreign content
1669         element as its context element. The first issue is that the parser will
1670         initially be in the InForeignContentMode insertion mode when processing
1671         the first tag in the fragment in this case so one call site needs to
1672         change from currentElement() to currentNode(). The second issue is that
1673         when we changed fragments from using a fake HTML root element to a
1674         DocumentFragment we broke checks that assumed the root element was in
1675         the HTML namespace. Fix this by claiming that the DocumentFragment is
1676         also in the HTML namespace.
1677
1678         Test: fast/parser/fragment-foreign-content-context.html
1679
1680         * html/parser/HTMLElementStack.cpp:
1681         (WebCore::HTMLNames::isForeignContentScopeMarker):
1682         (WebCore::HTMLElementStack::hasOnlyHTMLElementsInScope):
1683         * html/parser/HTMLElementStack.h:
1684         (WebCore::isInHTMLNamespace):
1685         * html/parser/HTMLTreeBuilder.cpp:
1686         (WebCore::HTMLTreeBuilder::constructTreeFromAtomicToken):
1687         (WebCore::HTMLTreeBuilder::processStartTag):
1688         (WebCore::HTMLTreeBuilder::processEndTag):
1689
1690 2011-03-18  James Robinson  <jamesr@chromium.org>
1691
1692         Reviewed by Dimitri Glazkov.
1693
1694         REGRESSION(78846) [chromium] Justified text renders at incorrect offsets on windows
1695         https://bugs.webkit.org/show_bug.cgi?id=56629
1696
1697         Preserves offsets as absolute floating point offsets and rounds to
1698         advances at the last possible second.  I can't prove to myself that
1699         this is sound but it seems to work on the test cases I've constructed.
1700
1701         Will probably change the pixel tests on chromium windows given that we
1702         were horribly broken before this patch.
1703
1704         * platform/graphics/chromium/FontChromiumWin.cpp:
1705         (WebCore::Font::drawGlyphs):
1706         (WebCore::Font::drawComplexText):
1707
1708 2011-03-18  Ryosuke Niwa  <rniwa@webkit.org>
1709
1710         Reviewed by Eric Seidel.
1711
1712         REGRESSION(81374, 81384): editing/deleting/5206311-1.html hits assertion on non-Mac platforms
1713         https://bugs.webkit.org/show_bug.cgi?id=56599
1714
1715         Debug build fix.
1716
1717         * dom/Position.cpp:
1718         (WebCore::Position::parentAnchoredEquivalent): If the original position was a position before a node,
1719         then we can't necessarily instantiate a position inside the node.
1720         * editing/VisibleSelection.cpp:
1721         (WebCore::VisibleSelection::toNormalizedRange): Even if s and e were not null, container nodes of s and e
1722         could be null. Exit early in those cases as well.
1723
1724 2011-03-18  Adam Barth  <abarth@webkit.org>
1725
1726         Reviewed by Eric Seidel.
1727
1728         Add ObjC bindings to the WebCore GYP build
1729         https://bugs.webkit.org/show_bug.cgi?id=56671
1730
1731         It turns out we generate a bunch of ObjC bindings files that we don't
1732         actually build.  I've manually synced the list of ObjC derived source
1733         files to match the existing list.  This brings us down to 19 link
1734         errors.
1735
1736         * WebCore.gypi:
1737         * gyp/WebCore.gyp:
1738
1739 2011-03-18  Ryuan Choi  <ryuan.choi@samsung.com>
1740
1741         Reviewed by Eric Seidel.
1742
1743         [CMAKE] Split JSC related configurations from WebCore/CMakeLists.txt
1744         https://bugs.webkit.org/show_bug.cgi?id=56624
1745
1746         No new tests, just splitting jsc related configuration.
1747
1748         * CMakeLists.txt:
1749         * UseJSC.cmake: Added.
1750
1751 2011-03-16  Stephen White  <senorblanco@chromium.org>
1752
1753         Reviewed by Kenneth Russell.
1754
1755         Implement GPU-accelerated shadows.
1756         https://bugs.webkit.org/show_bug.cgi?id=56476
1757
1758         For hard shadows, we simply offset the CTM and draw in the shadow
1759         color.  For soft shadows, we use a separable Gaussian convolution,
1760         with a bilinear downsample and Mitchell-Netravali upsample in order to
1761         preserve quality.
1762
1763         * WebCore.gypi:
1764         Add BicubicShader and ConvolutionShader to the build.
1765         * platform/graphics/chromium/GLES2Canvas.cpp:
1766         (WebCore::GLES2Canvas::State::State):
1767         Add shadow-related members to the GLES2Canvas::State
1768         (WebCore::GLES2Canvas::State::shadowActive):
1769         Add a helper function to know if shadows are active.
1770         (WebCore::GLES2Canvas::clearRect):
1771         (WebCore::GLES2Canvas::scissorClear):
1772         Refactor the scissor clearing function out of clearRect().
1773         (WebCore::GLES2Canvas::fillPath):
1774         Add hook for shadow rendering in paths.  Bind framebuffer at this level.
1775         (WebCore::GLES2Canvas::fillRect):
1776         Add hook for shadow rendering in rects.  Bind framebuffer at this level.
1777         (WebCore::GLES2Canvas::fillRectInternal):
1778         Rename fillRect() -> fillRectInternal(), which does bind its vertex 
1779         buffer, but does not bind the framebuffer.
1780         (WebCore::GLES2Canvas::setShadowColor):
1781         (WebCore::GLES2Canvas::setShadowOffset):
1782         (WebCore::GLES2Canvas::setShadowBlur):
1783         (WebCore::GLES2Canvas::setShadowsIgnoreTransforms):
1784         Implement graphicsContext-style setters for shadow parameters.
1785         (WebCore::GLES2Canvas::clipPath):
1786         Call fillPathInternal(), not fillPath().
1787         (WebCore::GLES2Canvas::restore):
1788         (WebCore::GLES2Canvas::drawTexturedRect):
1789         Bind the framebuffer at this level.  Do not bind vertices here (will
1790         be done in drawTexturedQuad).
1791         (WebCore::GLES2Canvas::drawTexturedRectTile):
1792         drawQuad() -> drawTexturedQuad().
1793         (WebCore::GLES2Canvas::convolveRect):
1794         Implement one pass of a convolution filter (X or Y).
1795         (WebCore::gauss):
1796         (WebCore::buildKernel):
1797         Some helper functions to build a Gaussian convolution kernel.
1798         (WebCore::GLES2Canvas::drawTexturedQuad):
1799         Rename drawQuad() -> drawTexturedQuad(), to be more clear.  Do not
1800         bind the framebuffer at this level (it will be done higher).
1801         (WebCore::GLES2Canvas::drawTexturedQuadMitchell):
1802         Implement Mitchell-Netravali bicubic sampling, using BicubicShader.
1803         (WebCore::GLES2Canvas::fillPathInternal):
1804         Rename fillPath() -> fillPathInternal(), which does use quad vertices,
1805         but does not bind the framebuffer or set the compositing mode.
1806         (WebCore::GLES2Canvas::flipRect):
1807         Implement a helper function to flip a rectangle in Y within the canvas.
1808         (WebCore::GLES2Canvas::clearBorders):
1809         Implement a helper function to clear an n-pixel border around a rect.
1810         (WebCore::GLES2Canvas::beginShadowDraw):
1811         Setup before drawing a primitive's shadow:  for hard shadows, just
1812         offset the CTM by the shadow offset.  For soft shadows, bind to an
1813         offscreen DrawingBuffer.
1814         (WebCore::GLES2Canvas::endShadowDraw):
1815         Tear-down after drawing a primitive's shadow:  for hard shadows, just
1816         restore the CTM.  For soft shadows, downsample (if necessary), then
1817         blur in X, blur in Y, upsample if necessary).
1818         * platform/graphics/chromium/GLES2Canvas.h:
1819         * platform/graphics/gpu/BicubicShader.cpp: Added.
1820         (WebCore::BicubicShader::BicubicShader):
1821         (WebCore::BicubicShader::create):
1822         (WebCore::BicubicShader::use):
1823         * platform/graphics/gpu/BicubicShader.h: Added.
1824         Implement a bicubic image filtering shader.
1825         * platform/graphics/gpu/ConvolutionShader.cpp: Added.
1826         (WebCore::ConvolutionShader::ConvolutionShader):
1827         (WebCore::ConvolutionShader::create):
1828         (WebCore::ConvolutionShader::use):
1829         * platform/graphics/gpu/ConvolutionShader.h: Added.
1830         Implement a 1-dimensional convolution shader.  In order to minimize
1831         texture samples, this shader is parameterized at compile time by the
1832         width of the convolution kernel.
1833         * platform/graphics/gpu/DrawingBuffer.h:
1834         (WebCore::DrawingBuffer::colorBuffer):
1835         Add an accessor to retrieve a DrawingBuffer's texture ID.
1836         * platform/graphics/gpu/SharedGraphicsContext3D.cpp:
1837         (WebCore::SharedGraphicsContext3D::create):
1838         (WebCore::SharedGraphicsContext3D::SharedGraphicsContext3D):
1839         (WebCore::SharedGraphicsContext3D::useBicubicProgram):
1840         (WebCore::SharedGraphicsContext3D::useConvolutionProgram):
1841         Create BicubicShader and cMaxKernelWidth ConvolutionShader's (one for
1842         each possible kernel width).
1843         (WebCore::SharedGraphicsContext3D::getOffscreenBuffer):
1844         Implement a simple cache of offscreen DrawingBuffers, integer-indexed.
1845         This is done to minimize the VRAM usage:  only 2 buffers are used for
1846         all canvases.
1847         * platform/graphics/gpu/SharedGraphicsContext3D.h:
1848         Add bicubic and convolution shader members, and useXXX() functions.
1849         * platform/graphics/skia/GraphicsContextSkia.cpp:
1850         (WebCore::GraphicsContext::setPlatformShadow):
1851         Hook into GraphicsContextSkia's platform shadow setters to set
1852         parameters on GLES2Canvas.
1853         * platform/graphics/skia/PlatformContextSkia.cpp:
1854         (WebCore::PlatformContextSkia::canAccelerate):
1855         Remove shadows (loopers) from the list of things we can't accelerate.
1856
1857 2011-03-18  Andreas Kling  <kling@webkit.org>
1858
1859         Reviewed by Darin Adler.
1860
1861         Remove unused method FontFallbackList::fontDataForCharacters()
1862         https://bugs.webkit.org/show_bug.cgi?id=56657
1863
1864         * platform/graphics/Font.h:
1865         * platform/graphics/FontFallbackList.cpp:
1866         * platform/graphics/FontFallbackList.h:
1867
1868 2011-03-18  Andreas Kling  <kling@webkit.org>
1869
1870         Reverting accidental changes in r81498.
1871
1872 2011-03-18  Ilya Tikhonovsky  <loislo@chromium.org>
1873
1874         Reviewed by Yury Semikhatsky.
1875
1876         Web Inspector: rename console agent events.
1877         https://bugs.webkit.org/show_bug.cgi?id=56646
1878
1879         addConsoleMessage -> consoleMessage
1880         updateConsoleMessageExpiredCount -> consoleMessageExpiredCountUpdate
1881         updateConsoleMessageRepeatCount -> consoleMessageRepeatCountUpdate
1882
1883         * inspector/ConsoleMessage.cpp:
1884         (WebCore::ConsoleMessage::addToFrontend):
1885         (WebCore::ConsoleMessage::updateRepeatCountInConsole):
1886         * inspector/Inspector.json:
1887         * inspector/InspectorConsoleAgent.cpp:
1888         (WebCore::InspectorConsoleAgent::setConsoleMessagesEnabled):
1889         * inspector/front-end/ConsoleView.js:
1890         (WebInspector.ConsoleView.prototype._registerConsoleDomainDispatcher.dispatcher.consoleMessage):
1891         (WebInspector.ConsoleView.prototype._registerConsoleDomainDispatcher.dispatcher.consoleMessageExpiredCountUpdate):
1892         (WebInspector.ConsoleView.prototype._registerConsoleDomainDispatcher.dispatcher.consoleMessageRepeatCountUpdate):
1893
1894 2011-03-18  Sheriff Bot  <webkit.review.bot@gmail.com>
1895
1896         Unreviewed, rolling out r81487.
1897         http://trac.webkit.org/changeset/81487
1898         https://bugs.webkit.org/show_bug.cgi?id=56662
1899
1900         "Breaks inspector/styles/styles-add-blank-property.html"
1901         (Requested by apavlov on #webkit).
1902
1903         * inspector/Inspector.json:
1904         * inspector/InspectorCSSAgent.cpp:
1905         (WebCore::InspectorCSSAgent::getAllStyles):
1906         * inspector/InspectorCSSAgent.h:
1907         * inspector/InspectorStyleSheet.cpp:
1908         (WebCore::InspectorStyleSheet::buildObjectForStyleSheet):
1909         * inspector/InspectorStyleSheet.h:
1910         * inspector/front-end/AuditRules.js:
1911         (WebInspector.AuditRules.UnusedCssRule.prototype.doRun.styleSheetCallback):
1912         (WebInspector.AuditRules.UnusedCssRule.prototype.doRun.allStylesCallback):
1913         (WebInspector.AuditRules.UnusedCssRule.prototype.doRun):
1914         * inspector/front-end/CSSStyleModel.js:
1915         (WebInspector.CSSStyleModel.prototype._styleSheetChanged.callback):
1916         (WebInspector.CSSStyleModel.prototype._styleSheetChanged):
1917         (WebInspector.CSSStyleModel.prototype._onRevert):
1918         (WebInspector.CSSStyleSheet):
1919         (WebInspector.CSSStyleSheet.prototype.setText):
1920
1921 2011-03-18  Justin Novosad  <junov@chromium.org>
1922
1923         Reviewed by Kenneth Russell.
1924
1925         [Chromium] Canvas shadow is not working with drawImage
1926         https://bugs.webkit.org/show_bug.cgi?id=55506
1927
1928         Patch also fixes shadow blur quality and color. 
1929         Affects Chromium win/linux. Also fixes the following bugs:
1930         https://bugs.webkit.org/show_bug.cgi?id=50112
1931         https://bugs.webkit.org/show_bug.cgi?id=51989
1932         https://bugs.webkit.org/show_bug.cgi?id=55410
1933         No tests were added, impact is already covered by multiple layout tests.
1934
1935         * platform/graphics/skia/GraphicsContextSkia.cpp:
1936         (WebCore::GraphicsContext::setPlatformShadow):
1937         * platform/graphics/skia/ImageSkia.cpp:
1938         (WebCore::paintSkBitmap):
1939
1940 2011-03-15  Alexander Pavlov  <apavlov@chromium.org>
1941
1942         Reviewed by Pavel Feldman.
1943
1944         Web Inspector: Fix handling of the CSSAgent.setStyleSheetText() results in CSSStyleModel.js
1945         https://bugs.webkit.org/show_bug.cgi?id=56310
1946
1947         Instead of stylesheet ids, CSSAgent.getAllStyleSheets() now returns metainfo objects containing
1948         "styleSheetId", "sourceURL", "disabled", and "title" fields. The latter three are not returned
1949         by CSSAgent.getStyleSheet() anymore.
1950
1951         Test: inspector/styles/get-set-stylesheet-text.html
1952
1953         * inspector/Inspector.json:
1954         * inspector/InspectorCSSAgent.cpp:
1955         (WebCore::InspectorCSSAgent::getAllStyleSheets):
1956         * inspector/InspectorCSSAgent.h:
1957         * inspector/InspectorStyleSheet.cpp:
1958         (WebCore::InspectorStyleSheet::buildObjectForStyleSheet):
1959         (WebCore::InspectorStyleSheet::buildObjectForStyleSheetInfo):
1960         * inspector/InspectorStyleSheet.h:
1961         * inspector/front-end/AuditRules.js:
1962         (WebInspector.AuditRules.UnusedCssRule.prototype.doRun.styleSheetCallback):
1963         (WebInspector.AuditRules.UnusedCssRule.prototype.doRun.allStylesCallback):
1964         (WebInspector.AuditRules.UnusedCssRule.prototype.doRun):
1965         * inspector/front-end/CSSStyleModel.js:
1966         (WebInspector.CSSStyleModel.prototype._styleSheetChanged.callback):
1967         (WebInspector.CSSStyleModel.prototype._styleSheetChanged):
1968         (WebInspector.CSSStyleModel.prototype._onRevert):
1969         (WebInspector.CSSStyleSheet):
1970         (WebInspector.CSSStyleSheet.prototype.setText):
1971
1972 2011-03-18  David Keijser  <keijser@gmail.com> and Xan Lopez <xlopez@igalia.com>
1973
1974         Reviewed by Martin Robinson.
1975
1976         [GTK] On-demand event-listeners for DOM event signals
1977         https://bugs.webkit.org/show_bug.cgi?id=49649
1978
1979         Add explicit EventTarget API to add/remove event listeners instead
1980         of using GSignal, which due to internal limitations in glib makes
1981         us preemptively add listeners for all event types.
1982
1983         * bindings/gobject/GObjectEventListener.cpp: add new
1984         addEventListener/removeEventListener methods, and small
1985         refactoring to store an EventTarget internally instead of a DOM
1986         node, which is more generic and can be reused in more cases.
1987         * bindings/gobject/GObjectEventListener.h: ditto.
1988         * bindings/gobject/WebKitDOMEventTarget.cpp:
1989         (webkit_dom_event_target_add_event_listener): new iface method to
1990         add an event listener.
1991         (webkit_dom_event_target_remove_event_listener): new iface method
1992         to remove an event listener.
1993         * bindings/gobject/WebKitDOMEventTarget.h: add new iface methods.
1994         * bindings/scripts/CodeGeneratorGObject.pm: change code generation
1995         accordingly.
1996
1997 2011-03-18  Brady Eidson  <beidson@apple.com>
1998
1999         Reviewed by Sam Weinig.
2000
2001         https://bugs.webkit.org/show_bug.cgi?id=56425
2002         More groundwork for WebKit2 IconDatabase
2003
2004         -Update the synchronous method names to be prefixed with "synchronous."
2005         -Call asynchronous versions of the appropriate methods if the IconDatabase supports them.
2006
2007         Update icon database calls to be prefixed with "synchronous":
2008         * loader/archive/cf/LegacyWebArchive.cpp:
2009         (WebCore::LegacyWebArchive::create):
2010         * loader/icon/IconDatabaseBase.h:
2011         (WebCore::IconDatabaseBase::synchronousIconDataKnownForIconURL):
2012         (WebCore::IconDatabaseBase::synchronousLoadDecisionForIconURL):
2013         (WebCore::IconDatabaseBase::synchronousIconForPageURL):
2014         * loader/icon/IconDatabase.cpp:
2015         (WebCore::IconDatabase::synchronousIconForPageURL):
2016         (WebCore::IconDatabase::readIconForPageURLFromDisk):
2017         (WebCore::IconDatabase::synchronousIconURLForPageURL):
2018         (WebCore::IconDatabase::synchronousLoadDecisionForIconURL):
2019         (WebCore::IconDatabase::synchronousIconDataKnownForIconURL):
2020         * loader/icon/IconDatabase.h:
2021         * loader/icon/IconDatabaseBase.cpp:
2022         (WebCore::IconDatabaseBase::synchronousIconURLForPageURL):
2023
2024         Add nascent support for an asynchronous icon database mode:
2025         * loader/icon/IconDatabaseBase.h:
2026         (WebCore::EnumCallback::create):
2027         (WebCore::EnumCallback::~EnumCallback):
2028         (WebCore::EnumCallback::performCallback):
2029         (WebCore::EnumCallback::invalidate):
2030         (WebCore::EnumCallback::EnumCallback):
2031         (WebCore::ObjectCallback::create):
2032         (WebCore::ObjectCallback::~ObjectCallback):
2033         (WebCore::ObjectCallback::performCallback):
2034         (WebCore::ObjectCallback::invalidate):
2035         (WebCore::ObjectCallback::ObjectCallback):
2036         (WebCore::IconDatabaseBase::supportsAsynchronousMode):
2037         (WebCore::IconDatabaseBase::loadDecisionForIconURL):
2038         (WebCore::IconDatabaseBase::iconDataForIconURL):
2039
2040         Add interfaces to use the asynchronous versions of certain IconDatabase calls:
2041         * loader/DocumentLoader.cpp:
2042         (WebCore::DocumentLoader::~DocumentLoader):
2043         (WebCore::DocumentLoader::iconLoadDecisionAvailable):
2044         (WebCore::iconLoadDecisionCallback):
2045         (WebCore::DocumentLoader::getIconLoadDecisionForIconURL):
2046         (WebCore::DocumentLoader::continueIconLoadWithDecision):
2047         (WebCore::iconDataCallback):
2048         (WebCore::DocumentLoader::getIconDataForIconURL):
2049         * loader/DocumentLoader.h:
2050
2051         Break "startIconLoader" into two pieces so it can be used from both the synchronous and asynchronous 
2052         icon database modes:
2053         * loader/FrameLoader.cpp:
2054         (WebCore::FrameLoader::iconLoadDecisionReceived):
2055         (WebCore::FrameLoader::startIconLoader):
2056         (WebCore::FrameLoader::continueIconLoadWithDecision):
2057         * loader/FrameLoader.h:
2058
2059         * WebCore.exp.in:
2060
2061 2011-03-18  Pavel Feldman  <pfeldman@chromium.org>
2062
2063         Not reviewed: add missing brace to the generated Inspector.idl.
2064
2065         * inspector/generate-inspector-idl:
2066
2067 2011-03-18  Pavel Feldman  <pfeldman@chromium.org>
2068
2069         Reviewed by Yury Semikhatsky.
2070
2071         Web Inspector: migrate from Inspector.idl to InspectorAPI.json for protocol schema definition meta bug.
2072         https://bugs.webkit.org/show_bug.cgi?id=56294
2073
2074         * CMakeLists.txt:
2075         * CodeGenerators.pri:
2076         * DerivedSources.make:
2077         * GNUmakefile.am:
2078         * WebCore.gyp/WebCore.gyp:
2079         * inspector/Inspector.idl: Removed.
2080         * inspector/Inspector.json: Added.
2081         * inspector/generate-inspector-idl: Added.
2082
2083 2011-03-18  Pavel Podivilov  <podivilov@chromium.org>
2084
2085         Reviewed by Yury Semikhatsky.
2086
2087         Web Inspector: implement inspector session storage.
2088         https://bugs.webkit.org/show_bug.cgi?id=56643
2089
2090         We would like to enable debugger/profiler from frontend side only.
2091         However, when user clicks "Start Debugging JavaScript" in Safari, we
2092         need to enable debugger when frontend is opened or re-opened for the
2093         same page. The idea is to store debugger-enabled setting in session
2094         storage and check it on frontend load.
2095
2096         * inspector/InspectorFrontendClient.h:
2097         (WebCore::InspectorFrontendClient::saveSessionSetting):
2098         (WebCore::InspectorFrontendClient::loadSessionSetting):
2099         * inspector/InspectorFrontendHost.cpp:
2100         (WebCore::InspectorFrontendHost::saveSessionSetting):
2101         (WebCore::InspectorFrontendHost::loadSessionSetting):
2102         * inspector/InspectorFrontendHost.h:
2103         * inspector/InspectorFrontendHost.idl:
2104
2105 2011-03-18  Jarkko Sakkinen  <jarkko.j.sakkinen@gmail.com>
2106
2107         Reviewed by Kenneth Rohde Christiansen.
2108
2109         [Qt] Enable GraphicsContext3D only when the window surface support OpenGL
2110         https://bugs.webkit.org/show_bug.cgi?id=56555
2111
2112         Allow creation of WebGLRenderingContext in the HTMLCanvasElement
2113         only if accelerated compositing is enabled. In GraphicsContext3D,
2114         while blitting the surface check that viewport hasn't changed from
2115         creation and painter is associated to the viewport.
2116
2117         * html/HTMLCanvasElement.cpp:
2118         (WebCore::HTMLCanvasElement::getContext):
2119         * platform/graphics/qt/GraphicsContext3DQt.cpp:
2120         (WebCore::GraphicsContext3DInternal::GraphicsContext3DInternal):
2121         (WebCore::GraphicsContext3DInternal::getViewportGLWidget):
2122         (WebCore::GraphicsContext3DInternal::paint):
2123
2124 2011-03-17  Pavel Podivilov  <podivilov@chromium.org>
2125
2126         Reviewed by Pavel Feldman.
2127
2128         Web Inspector: extract content loading logic from scripts panel.
2129         https://bugs.webkit.org/show_bug.cgi?id=55237
2130
2131         Encapsulate source files creation logic in debugger presentation model
2132         to support source mappings in a pluggable way.
2133
2134         * inspector/front-end/DebuggerPresentationModel.js:
2135         (WebInspector.DebuggerPresentationModel.prototype.sourceFile):
2136         (WebInspector.DebuggerPresentationModel.prototype.requestSourceFileContent.else.didRequestSource):
2137         (WebInspector.DebuggerPresentationModel.prototype.requestSourceFileContent):
2138         (WebInspector.DebuggerPresentationModel.prototype._parsedScriptSource):
2139         (WebInspector.DebuggerPresentationModel.prototype._failedToParseScriptSource):
2140         (WebInspector.DebuggerPresentationModel.prototype._addScript.else.resourceFinished):
2141         (WebInspector.DebuggerPresentationModel.prototype._addScript):
2142         (WebInspector.DebuggerPresentationModel.prototype._ensureSourceFileAdded):
2143         (WebInspector.DebuggerPresentationModel.prototype._resourceForURL):
2144         (WebInspector.DebuggerPresentationModel.prototype._scriptSourceChanged):
2145         (WebInspector.DebuggerPresentationModel.prototype._sourceFileAdded):
2146         (WebInspector.DebuggerPresentationModel.prototype.breakpointsForSourceFileId):
2147         (WebInspector.DebuggerPresentationModel.prototype.findBreakpoint):
2148         (WebInspector.DebuggerPresentationModel.prototype._breakpointAdded):
2149         (WebInspector.DebuggerPresentationModel.prototype._breakpointRemoved):
2150         (WebInspector.DebuggerPresentationModel.prototype._breakpointResolved):
2151         (WebInspector.DebuggerPresentationModel.prototype._restoreBreakpoints):
2152         (WebInspector.DebuggerPresentationModel.prototype.set selectedCallFrame):
2153         (WebInspector.DebuggerPresentationModel.prototype._actualLocationToSourceLocation):
2154         (WebInspector.DebuggerPresentationModel.prototype.reset):
2155         * inspector/front-end/ScriptsPanel.js:
2156         (WebInspector.ScriptsPanel):
2157         (WebInspector.ScriptsPanel.prototype._sourceFileAdded):
2158         (WebInspector.ScriptsPanel.prototype._showSourceFrame):
2159         (WebInspector.ScriptsPanel.prototype._sourceFileChanged):
2160         (WebInspector.ScriptsPanel.prototype._callFrameSelected):
2161         (WebInspector.SourceFrameDelegateForScriptsPanel.prototype.requestContent):
2162
2163 2011-03-18  Yury Semikhatsky  <yurys@chromium.org>
2164
2165         Reviewed by Pavel Feldman.
2166
2167         Web Inspector: console doesn&apos;t scroll when multiline expression is being evaluated
2168         https://bugs.webkit.org/show_bug.cgi?id=56639
2169
2170         Always scoll in the console when command result is received.
2171
2172         * inspector/front-end/ConsoleView.js:
2173         (WebInspector.ConsoleView.prototype.addMessage):
2174
2175 2011-03-18  Adam Roben  <aroben@apple.com>
2176
2177         Fix a CFNumber leak seen on the leaks bot
2178
2179         Reviewed by Gavin Barraclough.
2180
2181         * platform/network/mac/FormDataStreamMac.mm:
2182         (WebCore::advanceCurrentStream): Use a RetainPtr to cause the CFNumber we allocate to be
2183         released.
2184
2185 2011-03-17  Adam Barth  <abarth@webkit.org>
2186
2187         Reviewed by Eric Seidel.
2188
2189         Add some of the remaining platform/mac files to WebCore GYP build
2190         https://bugs.webkit.org/show_bug.cgi?id=56616
2191
2192         These files used to be hard, but are now magically easy.  76 link errors.
2193
2194         * gyp/WebCore.gyp:
2195
2196 2011-03-17  Adam Klein  <adamk@chromium.org>
2197
2198         Reviewed by Adam Barth.
2199
2200         [filesystem] Rename toURI->toURL, resolveLocalFileSystemURI->resolveLocalFileSystemURL
2201         https://bugs.webkit.org/show_bug.cgi?id=56502
2202
2203         * fileapi/Entry.idl:
2204         * fileapi/EntryBase.cpp:
2205         (WebCore::EntryBase::toURL):
2206         * fileapi/EntryBase.h:
2207         * fileapi/EntrySync.idl:
2208         * page/DOMWindow.cpp:
2209         (WebCore::DOMWindow::resolveLocalFileSystemURL):
2210         * page/DOMWindow.h:
2211         * page/DOMWindow.idl:
2212
2213 2011-03-17  Adam Barth  <abarth@webkit.org>
2214
2215         Reviewed by Eric Seidel.
2216
2217         Update CSP directive parser to match spec
2218         https://bugs.webkit.org/show_bug.cgi?id=56582
2219
2220         Brandon updated the CSP spec.  I've updated our implementation to
2221         match.  In the process, I found a couple bugs in the spec, which I've
2222         sent to the working group.  This patch assumes that the bugs will be
2223         fixed in the way I suggested.  If they get fixed a different way, we
2224         might need to update the parser again.
2225
2226         Test: http/tests/security/contentSecurityPolicy/directive-parsing.html
2227
2228         * page/ContentSecurityPolicy.cpp:
2229         (WebCore::isDirectiveNameCharacter):
2230         (WebCore::isDirectiveValueCharacter):
2231         (WebCore::advanceUntil):
2232         (WebCore::ContentSecurityPolicy::parse):
2233         (WebCore::ContentSecurityPolicy::parseDirective):
2234         * page/ContentSecurityPolicy.h:
2235
2236 2011-03-17  Adam Barth  <abarth@webkit.org>
2237
2238         Reviewed by Eric Seidel.
2239
2240         WebCore GYP build should have PrivateHeaders
2241         https://bugs.webkit.org/show_bug.cgi?id=56604
2242
2243         I've manually verified that this produces the correct set of
2244         PrivateHeaders (modulo the ForwardingHeaders and icu issue).
2245         Unforunately, this patch breakes compile slightly, but I'll fix that
2246         in a followup patch.
2247
2248         * WebCore.gyp/WebCore.gyp:
2249         * WebCore.gypi:
2250         * gyp/WebCore.gyp:
2251
2252 2011-03-17  Victoria Kirst  <vrk@google.com>
2253
2254         Reviewed by Kenneth Russell.
2255
2256         [chromium] Video colors have wrong brightness/contrast
2257         https://bugs.webkit.org/show_bug.cgi?id=56598
2258
2259         This patch changes the YUV to RGB color conversion matrix
2260         to have brighter whites and darker blacks in accordance to
2261         the BT.601 standard.
2262
2263         * platform/graphics/chromium/ShaderChromium.cpp:
2264         (WebCore::FragmentShaderYUVVideo::FragmentShaderYUVVideo):
2265         (WebCore::FragmentShaderYUVVideo::init):
2266         (WebCore::FragmentShaderYUVVideo::getShaderString):
2267         * platform/graphics/chromium/ShaderChromium.h:
2268         (WebCore::FragmentShaderYUVVideo::yuvAdjLocation):
2269         * platform/graphics/chromium/VideoLayerChromium.cpp:
2270         (WebCore::VideoLayerChromium::drawYUV):
2271         * platform/graphics/chromium/VideoLayerChromium.h:
2272
2273 2011-03-17  Zhenyao Mo  <zmo@google.com>
2274
2275         Reviewed by Adam Barth.
2276
2277         RequestAnimationFrame callbacks prevent Document from being released on detach
2278         https://bugs.webkit.org/show_bug.cgi?id=56607
2279
2280         * dom/Document.cpp:
2281         (WebCore::Document::removedLastRef): Remove RequestAnimationFrame callbacks.
2282         (WebCore::Document::detach): Ditto.
2283
2284 2011-03-17  Beth Dakin  <bdakin@apple.com>
2285
2286         Reviewed by Darin Adler.
2287
2288         Fix for https://bugs.webkit.org/show_bug.cgi?id=56596 Overlay scrollbars sometimes 
2289         fail to appear
2290         -and corresponding-
2291         <rdar://problem/8953779>
2292
2293         * platform/mac/ScrollAnimatorMac.mm:
2294         (-[ScrollbarPainterDelegate setUpAnimation:scrollerPainter:part:WebCore::animateAlphaTo:duration:]):
2295
2296 2011-03-17  Dan Bernstein  <mitz@apple.com>
2297
2298         Reviewed by Beth Dakin.
2299
2300         <rdar://problem/9052166> Emphasis marks appear over combined text rather than beside it
2301         https://bugs.webkit.org/show_bug.cgi?id=56480
2302
2303         Test: fast/text/emphasis-combined-text.html
2304
2305         * rendering/InlineTextBox.cpp:
2306         (WebCore::rotation): Added this helper.
2307         (WebCore::InlineTextBox::paint): Paint a single emphasis mark beside the combined text,
2308         centered vertically.
2309
2310 2011-03-17  Jian Li  <jianli@chromium.org>
2311
2312         Reviewed by Adam Barth.
2313
2314         Blob URL should not be allow to get created from the code running from data URI
2315         https://bugs.webkit.org/show_bug.cgi?id=56600
2316
2317         Test: http/tests/fileapi/create-blob-url-from-data-url.html
2318
2319         * dom/ScriptExecutionContext.cpp:
2320         (WebCore::ScriptExecutionContext::createPublicBlobURL):
2321         * fileapi/BlobURL.cpp:
2322         (WebCore::BlobURL::createBlobURL):
2323         * fileapi/EntryBase.cpp:
2324         (WebCore::EntryBase::toURI):
2325         * fileapi/FileReaderLoader.cpp:
2326         (WebCore::FileReaderLoader::start):
2327
2328 2011-03-17  Jeff Miller  <jeffm@apple.com>
2329
2330         Use a consistent set of file patterns in the svn:ignore property for all .xcodeproj directories, specifically:
2331         
2332         *.mode*
2333         *.pbxuser
2334         *.perspective*
2335         project.xcworkspace
2336         xcuserdata
2337
2338         * WebCore.xcodeproj: Modified property svn:ignore.
2339         * manual-tests/NPN_Invoke/NPN_Invoke.xcodeproj: Modified property svn:ignore.
2340
2341 2011-03-17  Sam Weinig  <sam@webkit.org>
2342
2343         Fix Mac build.
2344
2345         * WebCore.exp.in:
2346         Add missing symbol.
2347
2348 2011-03-17  Ryosuke Niwa  <rniwa@webkit.org>
2349
2350         Reviewed by Adele Peterson and Enrica Casucci.
2351
2352         Assert that editing does not ignore position's anchorNode if position is an offset in anchor
2353         https://bugs.webkit.org/show_bug.cgi?id=56027
2354
2355         Debug build fix.
2356
2357         * dom/Element.cpp:
2358         (WebCore::Element::updateFocusAppearance): "this" can be an input element so can't always instantiate
2359         a position inside the node. Call firstPositionInOrBeforeNode instead.
2360         * editing/ReplaceSelectionCommand.cpp:
2361         (WebCore::positionAvoidingPrecedingNodes): Exit early when a node's content is ignored by editing instead
2362         of just when the node is br.
2363         * editing/htmlediting.cpp:
2364         (WebCore::lastEditablePositionBeforePositionInRoot): The shadow ancestor node is usually an input element
2365         so don't instantiate a position inside it. Call firstPositionInOrBeforeNode instead.
2366
2367 2011-03-17  Sheriff Bot  <webkit.review.bot@gmail.com>
2368
2369         Unreviewed, rolling out r81369.
2370         http://trac.webkit.org/changeset/81369
2371         https://bugs.webkit.org/show_bug.cgi?id=56579
2372
2373         breaks debugger test (Requested by podivilov on #webkit).
2374
2375         * inspector/front-end/DebuggerPresentationModel.js:
2376         (WebInspector.DebuggerPresentationModel.prototype._parsedScriptSource):
2377         (WebInspector.DebuggerPresentationModel.prototype._failedToParseScriptSource):
2378         (WebInspector.DebuggerPresentationModel.prototype._scriptSourceChanged):
2379         (WebInspector.DebuggerPresentationModel.prototype.breakpointsForSourceFileId):
2380         (WebInspector.DebuggerPresentationModel.prototype.findBreakpoint):
2381         (WebInspector.DebuggerPresentationModel.prototype._breakpointAdded):
2382         (WebInspector.DebuggerPresentationModel.prototype._breakpointRemoved):
2383         (WebInspector.DebuggerPresentationModel.prototype._breakpointResolved):
2384         (WebInspector.DebuggerPresentationModel.prototype._encodeSourceLocation):
2385         (WebInspector.DebuggerPresentationModel.prototype._restoreBreakpoints):
2386         (WebInspector.DebuggerPresentationModel.prototype.set selectedCallFrame):
2387         (WebInspector.DebuggerPresentationModel.prototype._actualLocationToSourceLocation):
2388         (WebInspector.DebuggerPresentationModel.prototype.reset):
2389         * inspector/front-end/ScriptsPanel.js:
2390         (WebInspector.ScriptsPanel):
2391         (WebInspector.ScriptsPanel.prototype._parsedScriptSource):
2392         (WebInspector.ScriptsPanel.prototype._failedToParseScriptSource):
2393         (WebInspector.ScriptsPanel.prototype._scriptSourceChanged):
2394         (WebInspector.ScriptsPanel.prototype._addScript):
2395         (WebInspector.ScriptsPanel.prototype._resourceForURL):
2396         (WebInspector.ScriptsPanel.prototype._resourceLoadingFinished):
2397         (WebInspector.ScriptsPanel.prototype._addOptionToFilesSelectAndShowSourceFrameIfNeeded):
2398         (WebInspector.ScriptsPanel.prototype._showSourceFrame):
2399         (WebInspector.ScriptsPanel.prototype._recreateSourceFrame):
2400         (WebInspector.ScriptsPanel.prototype._sourceFileIdForScript):
2401         (WebInspector.ScriptsPanel.prototype._callFrameSelected):
2402         (WebInspector.SourceFrameDelegateForScriptsPanel.prototype.requestContent):
2403
2404 2011-03-17  Ryosuke Niwa  <rniwa@webkit.org>
2405
2406         Reviewed by Justin Garcia.
2407
2408         Assert that editing does not ignore position's anchorNode if position is an offset in anchor
2409         https://bugs.webkit.org/show_bug.cgi?id=56027
2410
2411         Added the assertion in Position::Position and Position::moveToPosition. This assertion catches
2412         places where we instantiate positions inside a node on which editingIgnoresContent returns true.
2413
2414         Test: editing/execCommand/button.html
2415
2416         * dom/Position.cpp:
2417         (WebCore::Position::Position): Added an assertion.
2418         (WebCore::Position::moveToPosition): Ditto.
2419         * dom/PositionIterator.cpp:
2420         (WebCore::PositionIterator::operator Position): Avoid creating a position immediately below
2421         a node whose content is ignored by editing. While this does not avoid creation of positions
2422         inside ignored contents completely, it works in most cases. Filed the bug 56027 to resolve
2423         the underlying problem. Without this change, the assertion hits in existing layout tests.
2424         cannot be tested directly.
2425         * editing/ApplyStyleCommand.cpp:
2426         (WebCore::ApplyStyleCommand::addInlineStyleIfNeeded): Call firstPositionInOrBeforeNode
2427         instead of firstPositionInNode because startNode may as well be a br element. Without this change,
2428         the assertion hits in existing layout tests.
2429         * editing/htmlediting.cpp:
2430         (WebCore::canHaveChildrenForEditing): button is editable so content is not ignored. Added a test
2431         for this.
2432         * editing/visible_units.cpp:
2433         (WebCore::previousBoundary): Added a FIXME.
2434         (WebCore::startPositionForLine): Because br can also have an inline text box, checking that
2435         startBox is an inline text box isn't an adequate to instantiate a position inside startNode.
2436         Call startNode->isTextNode() instead. Without this change, the assertion hits in existing layout
2437         tests.
2438
2439 2011-03-17  Pavel Podivilov  <podivilov@chromium.org>
2440
2441         Reviewed by Pavel Feldman.
2442
2443         Web Inspector: extract content loading logic from scripts panel.
2444         https://bugs.webkit.org/show_bug.cgi?id=55237
2445
2446         Encapsulate source files creation logic in debugger presentation model
2447         to support source mappings in a pluggable way.
2448
2449         * inspector/front-end/DebuggerPresentationModel.js:
2450         (WebInspector.DebuggerPresentationModel.prototype.sourceFile):
2451         (WebInspector.DebuggerPresentationModel.prototype.requestSourceFileContent.else.didRequestSource):
2452         (WebInspector.DebuggerPresentationModel.prototype.requestSourceFileContent):
2453         (WebInspector.DebuggerPresentationModel.prototype._parsedScriptSource):
2454         (WebInspector.DebuggerPresentationModel.prototype._failedToParseScriptSource):
2455         (WebInspector.DebuggerPresentationModel.prototype._addScript.else.resourceFinished):
2456         (WebInspector.DebuggerPresentationModel.prototype._addScript):
2457         (WebInspector.DebuggerPresentationModel.prototype._ensureSourceFileAdded):
2458         (WebInspector.DebuggerPresentationModel.prototype._resourceForURL):
2459         (WebInspector.DebuggerPresentationModel.prototype._scriptSourceChanged):
2460         (WebInspector.DebuggerPresentationModel.prototype._sourceFileAdded):
2461         (WebInspector.DebuggerPresentationModel.prototype.breakpointsForSourceFileId):
2462         (WebInspector.DebuggerPresentationModel.prototype.findBreakpoint):
2463         (WebInspector.DebuggerPresentationModel.prototype._breakpointAdded):
2464         (WebInspector.DebuggerPresentationModel.prototype._breakpointRemoved):
2465         (WebInspector.DebuggerPresentationModel.prototype._breakpointResolved):
2466         (WebInspector.DebuggerPresentationModel.prototype._restoreBreakpoints):
2467         (WebInspector.DebuggerPresentationModel.prototype.set selectedCallFrame):
2468         (WebInspector.DebuggerPresentationModel.prototype._actualLocationToSourceLocation):
2469         (WebInspector.DebuggerPresentationModel.prototype.reset):
2470         * inspector/front-end/ScriptsPanel.js:
2471         (WebInspector.ScriptsPanel):
2472         (WebInspector.ScriptsPanel.prototype._sourceFileAdded):
2473         (WebInspector.ScriptsPanel.prototype._showSourceFrame):
2474         (WebInspector.ScriptsPanel.prototype._sourceFileChanged):
2475         (WebInspector.ScriptsPanel.prototype._callFrameSelected):
2476         (WebInspector.SourceFrameDelegateForScriptsPanel.prototype.requestContent):
2477
2478 2011-03-17  Pavel Feldman  <pfeldman@chromium.org>
2479
2480         Reviewed by Yury Semikhatsky.
2481
2482         Web Inspector: add types markup to the IDL, remove Value types from the protocol.
2483         https://bugs.webkit.org/show_bug.cgi?id=56562
2484
2485         * inspector/ConsoleMessage.cpp:
2486         (WebCore::ConsoleMessage::addToFrontend):
2487         * inspector/InjectedScript.cpp:
2488         (WebCore::InjectedScript::evaluate):
2489         (WebCore::InjectedScript::evaluateOn):
2490         (WebCore::InjectedScript::evaluateOnCallFrame):
2491         (WebCore::InjectedScript::getProperties):
2492         (WebCore::InjectedScript::setPropertyValue):
2493         (WebCore::InjectedScript::callFrames):
2494         (WebCore::InjectedScript::makeCall):
2495         (WebCore::InjectedScript::makeObjectCall):
2496         * inspector/InjectedScript.h:
2497         * inspector/InjectedScriptSource.js:
2498         (.):
2499         * inspector/Inspector.idl:
2500         * inspector/InspectorApplicationCacheAgent.cpp:
2501         (WebCore::InspectorApplicationCacheAgent::getApplicationCaches):
2502         * inspector/InspectorApplicationCacheAgent.h:
2503         * inspector/InspectorCSSAgent.cpp:
2504         (WebCore::InspectorCSSAgent::getStylesForNode):
2505         (WebCore::InspectorCSSAgent::getInlineStyleForNode):
2506         (WebCore::InspectorCSSAgent::getComputedStyleForNode):
2507         (WebCore::InspectorCSSAgent::getStyleSheet):
2508         (WebCore::InspectorCSSAgent::setPropertyText):
2509         (WebCore::InspectorCSSAgent::toggleProperty):
2510         (WebCore::InspectorCSSAgent::setRuleSelector):
2511         (WebCore::InspectorCSSAgent::addRule):
2512         * inspector/InspectorCSSAgent.h:
2513         * inspector/InspectorDOMAgent.cpp:
2514         (WebCore::InspectorDOMAgent::resolveNode):
2515         * inspector/InspectorDOMAgent.h:
2516         * inspector/InspectorDebuggerAgent.cpp:
2517         (WebCore::InspectorDebuggerAgent::editScriptSource):
2518         (WebCore::InspectorDebuggerAgent::evaluateOnCallFrame):
2519         (WebCore::InspectorDebuggerAgent::currentCallFrames):
2520         * inspector/InspectorDebuggerAgent.h:
2521         * inspector/InspectorResourceAgent.cpp:
2522         (WebCore::InspectorResourceAgent::identifierForInitialRequest):
2523         * inspector/InspectorRuntimeAgent.cpp:
2524         (WebCore::InspectorRuntimeAgent::evaluate):
2525         (WebCore::InspectorRuntimeAgent::evaluateOn):
2526         (WebCore::InspectorRuntimeAgent::getProperties):
2527         (WebCore::InspectorRuntimeAgent::setPropertyValue):
2528         * inspector/InspectorRuntimeAgent.h:
2529         * inspector/ScriptCallStack.cpp:
2530         (WebCore::ScriptCallStack::buildInspectorArray):
2531         * inspector/ScriptCallStack.h:
2532         * inspector/TimelineRecordFactory.cpp:
2533         (WebCore::TimelineRecordFactory::createGenericRecord):
2534         * inspector/front-end/NetworkManager.js:
2535         (WebInspector.NetworkDispatcher.prototype._createResource):
2536
2537 2011-03-17  Sheriff Bot  <webkit.review.bot@gmail.com>
2538
2539         Unreviewed, rolling out r81350.
2540         http://trac.webkit.org/changeset/81350
2541         https://bugs.webkit.org/show_bug.cgi?id=56560
2542
2543         "Breaks twenty Chromium Webkit Win builder webkit_gpu_tests"
2544         (Requested by apavlov on #webkit).
2545
2546         * WebCore.gypi:
2547         * platform/graphics/chromium/GLES2Canvas.cpp:
2548         (WebCore::GLES2Canvas::State::State):
2549         (WebCore::GLES2Canvas::clearRect):
2550         (WebCore::GLES2Canvas::fillPath):
2551         (WebCore::GLES2Canvas::fillRect):
2552         (WebCore::GLES2Canvas::clipPath):
2553         (WebCore::GLES2Canvas::restore):
2554         (WebCore::GLES2Canvas::drawTexturedRect):
2555         (WebCore::GLES2Canvas::drawTexturedRectTile):
2556         (WebCore::GLES2Canvas::drawQuad):
2557         * platform/graphics/chromium/GLES2Canvas.h:
2558         * platform/graphics/gpu/BicubicShader.cpp: Removed.
2559         * platform/graphics/gpu/BicubicShader.h: Removed.
2560         * platform/graphics/gpu/ConvolutionShader.cpp: Removed.
2561         * platform/graphics/gpu/ConvolutionShader.h: Removed.
2562         * platform/graphics/gpu/DrawingBuffer.h:
2563         * platform/graphics/gpu/SharedGraphicsContext3D.cpp:
2564         (WebCore::SharedGraphicsContext3D::create):
2565         (WebCore::SharedGraphicsContext3D::SharedGraphicsContext3D):
2566         * platform/graphics/gpu/SharedGraphicsContext3D.h:
2567         * platform/graphics/skia/GraphicsContextSkia.cpp:
2568         (WebCore::GraphicsContext::setPlatformShadow):
2569         * platform/graphics/skia/PlatformContextSkia.cpp:
2570         (WebCore::PlatformContextSkia::canAccelerate):
2571
2572 2011-03-17  Mikhail Naganov  <mnaganov@chromium.org>
2573
2574         Reviewed by Yury Semikhatsky.
2575
2576         Web Inspector: Clean up Inspector strings.
2577         https://bugs.webkit.org/show_bug.cgi?id=56557
2578
2579         * English.lproj/localizedStrings.js:
2580
2581 2011-03-14  Pavel Podivilov  <podivilov@chromium.org>
2582
2583         Reviewed by Yury Semikhatsky.
2584
2585         Web Inspector: refactor event listener breakpoints.
2586         https://bugs.webkit.org/show_bug.cgi?id=56305
2587
2588         - restore event listener breakpoints one by one instead of using setAllBrowserBreakpoints
2589         - store event listener breakpoints in a separate separate setting
2590         - move presentation-related code from BreakpointManager to EventListenerBreakpointsSidebarPane
2591
2592         Test: inspector/debugger/event-listener-breakpoints.html
2593
2594         * inspector/Inspector.idl:
2595         * inspector/InspectorAgent.cpp:
2596         (WebCore::InspectorAgent::setFrontend):
2597         * inspector/InspectorBrowserDebuggerAgent.cpp:
2598         (WebCore::InspectorBrowserDebuggerAgent::setEventListenerBreakpoint):
2599         (WebCore::InspectorBrowserDebuggerAgent::removeEventListenerBreakpoint):
2600         (WebCore::InspectorBrowserDebuggerAgent::pauseOnNativeEventIfNeeded):
2601         (WebCore::InspectorBrowserDebuggerAgent::clear):
2602         * inspector/InspectorBrowserDebuggerAgent.h:
2603         * inspector/InspectorInstrumentation.cpp:
2604         (WebCore::InspectorInstrumentation::didCommitLoadImpl):
2605         * inspector/front-end/BreakpointManager.js:
2606         (WebInspector.BreakpointManager.prototype.setEventListenerBreakpoint):
2607         (WebInspector.BreakpointManager.prototype.removeEventListenerBreakpoint):
2608         (WebInspector.BreakpointManager.prototype.breakpointViewForEventData):
2609         (WebInspector.BreakpointManager.prototype._projectChanged):
2610         (WebInspector.BreakpointManager.prototype._saveBreakpoints):
2611         (WebInspector.BreakpointManager.prototype._validateBreakpoints):
2612         (WebInspector.BreakpointManager.prototype._createDOMBreakpointId):
2613         * inspector/front-end/BreakpointsSidebarPane.js:
2614         (WebInspector.EventListenerBreakpointsSidebarPane):
2615         (WebInspector.EventListenerBreakpointsSidebarPane.eventNameForUI):
2616         (WebInspector.EventListenerBreakpointsSidebarPane.prototype._createCategory):
2617         (WebInspector.EventListenerBreakpointsSidebarPane.prototype._categoryCheckboxClicked):
2618         (WebInspector.EventListenerBreakpointsSidebarPane.prototype._breakpointCheckboxClicked):
2619         (WebInspector.EventListenerBreakpointsSidebarPane.prototype._setBreakpoint):
2620         (WebInspector.EventListenerBreakpointsSidebarPane.prototype._removeBreakpoint):
2621         (WebInspector.EventListenerBreakpointsSidebarPane.prototype._updateCategoryCheckbox):
2622         (WebInspector.EventListenerBreakpointsSidebarPane.prototype.highlightBreakpoint):
2623         (WebInspector.EventListenerBreakpointsSidebarPane.prototype.clearBreakpointHighlight):
2624         (WebInspector.EventListenerBreakpointsSidebarPane.prototype._saveBreakpoints):
2625         (WebInspector.EventListenerBreakpointsSidebarPane.prototype._restoreBreakpoints):
2626         * inspector/front-end/CallStackSidebarPane.js:
2627         (WebInspector.CallStackSidebarPane.prototype.update):
2628         (WebInspector.CallStackSidebarPane.prototype.setStatus):
2629         (WebInspector.CallStackSidebarPane.prototype._domBreakpointHit):
2630         * inspector/front-end/ScriptsPanel.js:
2631         (WebInspector.ScriptsPanel.prototype._debuggerPaused):
2632         (WebInspector.ScriptsPanel.prototype._clearInterface):
2633         * inspector/front-end/Settings.js:
2634         (WebInspector.Settings):
2635
2636 2011-03-16  Stephen White  <senorblanco@chromium.org>
2637
2638         Reviewed by Kenneth Russell.
2639
2640         Implement GPU-accelerated shadows.
2641         https://bugs.webkit.org/show_bug.cgi?id=56476
2642
2643         For hard shadows, we simply offset the CTM and draw in the shadow
2644         color.  For soft shadows, we use a separable Gaussian convolution,
2645         with a bilinear downsample and Mitchell-Netravali upsample in order to
2646         preserve quality.
2647
2648         * WebCore.gypi:
2649         Add BicubicShader and ConvolutionShader to the build.
2650         * platform/graphics/chromium/GLES2Canvas.cpp:
2651         (WebCore::GLES2Canvas::State::State):
2652         Add shadow-related members to the GLES2Canvas::State
2653         (WebCore::GLES2Canvas::State::shadowActive):
2654         Add a helper function to know if shadows are active.
2655         (WebCore::GLES2Canvas::clearRect):
2656         (WebCore::GLES2Canvas::scissorClear):
2657         Refactor the scissor clearing function out of clearRect().
2658         (WebCore::GLES2Canvas::fillPath):
2659         Add hook for shadow rendering in paths.  Bind framebuffer at this level.
2660         (WebCore::GLES2Canvas::fillRect):
2661         Add hook for shadow rendering in rects.  Bind framebuffer at this level.
2662         (WebCore::GLES2Canvas::fillRectInternal):
2663         Rename fillRect() -> fillRectInternal(), which does bind its vertex 
2664         buffer, but does not bind the framebuffer.
2665         (WebCore::GLES2Canvas::setShadowColor):
2666         (WebCore::GLES2Canvas::setShadowOffset):
2667         (WebCore::GLES2Canvas::setShadowBlur):
2668         (WebCore::GLES2Canvas::setShadowsIgnoreTransforms):
2669         Implement graphicsContext-style setters for shadow parameters.
2670         (WebCore::GLES2Canvas::clipPath):
2671         Call fillPathInternal(), not fillPath().
2672         (WebCore::GLES2Canvas::restore):
2673         (WebCore::GLES2Canvas::drawTexturedRect):
2674         Bind the framebuffer at this level.  Do not bind vertices here (will
2675         be done in drawTexturedQuad).
2676         (WebCore::GLES2Canvas::drawTexturedRectTile):
2677         drawQuad() -> drawTexturedQuad().
2678         (WebCore::GLES2Canvas::convolveRect):
2679         Implement one pass of a convolution filter (X or Y).
2680         (WebCore::gauss):
2681         (WebCore::buildKernel):
2682         Some helper functions to build a Gaussian convolution kernel.
2683         (WebCore::GLES2Canvas::drawTexturedQuad):
2684         Rename drawQuad() -> drawTexturedQuad(), to be more clear.  Do not
2685         bind the framebuffer at this level (it will be done higher).
2686         (WebCore::GLES2Canvas::drawTexturedQuadMitchell):
2687         Implement Mitchell-Netravali bicubic sampling, using BicubicShader.
2688         (WebCore::GLES2Canvas::fillPathInternal):
2689         Rename fillPath() -> fillPathInternal(), which does use quad vertices,
2690         but does not bind the framebuffer or set the compositing mode.
2691         (WebCore::GLES2Canvas::flipRect):
2692         Implement a helper function to flip a rectangle in Y within the canvas.
2693         (WebCore::GLES2Canvas::clearBorders):
2694         Implement a helper function to clear an n-pixel border around a rect.
2695         (WebCore::GLES2Canvas::beginShadowDraw):
2696         Setup before drawing a primitive's shadow:  for hard shadows, just
2697         offset the CTM by the shadow offset.  For soft shadows, bind to an
2698         offscreen DrawingBuffer.
2699         (WebCore::GLES2Canvas::endShadowDraw):
2700         Tear-down after drawing a primitive's shadow:  for hard shadows, just
2701         restore the CTM.  For soft shadows, downsample (if necessary), then
2702         blur in X, blur in Y, upsample if necessary).
2703         * platform/graphics/chromium/GLES2Canvas.h:
2704         * platform/graphics/gpu/BicubicShader.cpp: Added.
2705         (WebCore::BicubicShader::BicubicShader):
2706         (WebCore::BicubicShader::create):
2707         (WebCore::BicubicShader::use):
2708         * platform/graphics/gpu/BicubicShader.h: Added.
2709         Implement a bicubic image filtering shader.
2710         * platform/graphics/gpu/ConvolutionShader.cpp: Added.
2711         (WebCore::ConvolutionShader::ConvolutionShader):
2712         (WebCore::ConvolutionShader::create):
2713         (WebCore::ConvolutionShader::use):
2714         * platform/graphics/gpu/ConvolutionShader.h: Added.
2715         Implement a 1-dimensional convolution shader.  In order to minimize
2716         texture samples, this shader is parameterized at compile time by the
2717         width of the convolution kernel.
2718         * platform/graphics/gpu/DrawingBuffer.h:
2719         (WebCore::DrawingBuffer::colorBuffer):
2720         Add an accessor to retrieve a DrawingBuffer's texture ID.
2721         * platform/graphics/gpu/SharedGraphicsContext3D.cpp:
2722         (WebCore::SharedGraphicsContext3D::create):
2723         (WebCore::SharedGraphicsContext3D::SharedGraphicsContext3D):
2724         (WebCore::SharedGraphicsContext3D::useBicubicProgram):
2725         (WebCore::SharedGraphicsContext3D::useConvolutionProgram):
2726         Create BicubicShader and cMaxKernelWidth ConvolutionShader's (one for
2727         each possible kernel width).
2728         (WebCore::SharedGraphicsContext3D::getOffscreenBuffer):
2729         Implement a simple cache of offscreen DrawingBuffers, integer-indexed.
2730         This is done to minimize the VRAM usage:  only 2 buffers are used for
2731         all canvases.
2732         * platform/graphics/gpu/SharedGraphicsContext3D.h:
2733         Add bicubic and convolution shader members, and useXXX() functions.
2734         * platform/graphics/skia/GraphicsContextSkia.cpp:
2735         (WebCore::GraphicsContext::setPlatformShadow):
2736         Hook into GraphicsContextSkia's platform shadow setters to set
2737         parameters on GLES2Canvas.
2738         * platform/graphics/skia/PlatformContextSkia.cpp:
2739         (WebCore::PlatformContextSkia::canAccelerate):
2740         Remove shadows (loopers) from the list of things we can't accelerate.
2741
2742 2011-03-17  Gustavo Noronha Silva  <gustavo.noronha@collabora.co.uk>
2743
2744         Reviewed by Andreas Kling.
2745
2746         Tiled backing store should only request repaint for updated areas
2747         https://bugs.webkit.org/show_bug.cgi?id=56464
2748
2749         Reuse updateBackBuffer's dirty rectangle calculations to only
2750         invalidate the necessary parts of the window.
2751
2752         * platform/graphics/Tile.h:
2753         * platform/graphics/TiledBackingStore.cpp:
2754         (WebCore::TiledBackingStore::updateTileBuffers):
2755         * platform/graphics/qt/TileQt.cpp:
2756         (WebCore::Tile::updateBackBuffer):
2757
2758 2011-03-17  Mikhail Naganov  <mnaganov@chromium.org>
2759
2760         Reviewed by Pavel Feldman.
2761
2762         Web Inspector: [Chromium] Reduce memory consumption by detailed heap snapshots indexes.
2763         https://bugs.webkit.org/show_bug.cgi?id=56395
2764
2765         * inspector/front-end/DetailedHeapshotGridNodes.js:
2766         (WebInspector.HeapSnapshotDiffNode.prototype._createNodesProvider.createProvider):
2767         (WebInspector.HeapSnapshotDiffNode.prototype._createNodesProvider):
2768         * inspector/front-end/HeapSnapshot.js:
2769         (WebInspector.HeapSnapshotRetainerEdge): Added
2770         (WebInspector.HeapSnapshotRetainerEdgeIterator): Added
2771         (WebInspector.HeapSnapshotNode.prototype.get retainers):
2772         (WebInspector.HeapSnapshot.prototype.dispose):
2773         (WebInspector.HeapSnapshot.prototype.hasId):
2774         (WebInspector.HeapSnapshot.prototype.retainers):
2775         (WebInspector.HeapSnapshot.prototype._buildRetainers):
2776         (WebInspector.HeapSnapshot.prototype._buildIdsList):
2777         (WebInspector.HeapSnapshot.prototype._buildNodeIndex):
2778         (WebInspector.HeapSnapshot.prototype._findNodePositionInIndex):
2779         (WebInspector.HeapSnapshot.prototype._findNearestNodeIndex):
2780         (WebInspector.HeapSnapshot.prototype._getRetainerIndex):
2781         (WebInspector.HeapSnapshot.prototype._markInvisibleEdges):
2782         (WebInspector.HeapSnapshot.prototype._numbersComparator):
2783         (WebInspector.HeapSnapshotPathFinder.prototype.get _lastEdge):
2784         (WebInspector.HeapSnapshotPathFinder.prototype._nextEdgeIter):
2785         (WebInspector.HeapSnapshotPathFinder.prototype._buildNextPath):
2786         (WebInspector.HeapSnapshotPathFinder.prototype._pathToString):
2787
2788 2011-03-17  Sheriff Bot  <webkit.review.bot@gmail.com>
2789
2790         Unreviewed, rolling out r81243.
2791         http://trac.webkit.org/changeset/81243
2792         https://bugs.webkit.org/show_bug.cgi?id=56471
2793
2794         Breaks GTK 64-bit Debug tests (Requested by podivilov on
2795         #webkit).
2796
2797         * inspector/Inspector.idl:
2798         * inspector/InspectorAgent.cpp:
2799         (WebCore::InspectorAgent::setFrontend):
2800         * inspector/InspectorBrowserDebuggerAgent.cpp:
2801         (WebCore::InspectorBrowserDebuggerAgent::setFrontend):
2802         (WebCore::InspectorBrowserDebuggerAgent::setAllBrowserBreakpoints):
2803         (WebCore::InspectorBrowserDebuggerAgent::inspectedURLChanged):
2804         (WebCore::InspectorBrowserDebuggerAgent::restoreStickyBreakpoint):
2805         (WebCore::InspectorBrowserDebuggerAgent::discardBindings):
2806         (WebCore::InspectorBrowserDebuggerAgent::setEventListenerBreakpoint):
2807         (WebCore::InspectorBrowserDebuggerAgent::removeEventListenerBreakpoint):
2808         (WebCore::InspectorBrowserDebuggerAgent::pauseOnNativeEventIfNeeded):
2809         (WebCore::InspectorBrowserDebuggerAgent::clear):
2810         * inspector/InspectorBrowserDebuggerAgent.h:
2811         * inspector/InspectorInstrumentation.cpp:
2812         (WebCore::InspectorInstrumentation::didCommitLoadImpl):
2813         * inspector/front-end/BreakpointManager.js:
2814         (WebInspector.BreakpointManager.prototype.createEventListenerBreakpoint):
2815         (WebInspector.BreakpointManager.prototype._createEventListenerBreakpoint):
2816         (WebInspector.BreakpointManager.prototype.setXHRBreakpoint):
2817         (WebInspector.BreakpointManager.prototype.removeXHRBreakpoint):
2818         (WebInspector.BreakpointManager.prototype.breakpointViewForEventData):
2819         (WebInspector.BreakpointManager.prototype._projectChanged):
2820         (WebInspector.BreakpointManager.prototype._saveBreakpoints):
2821         (WebInspector.BreakpointManager.prototype._validateBreakpoints):
2822         (WebInspector.BreakpointManager.prototype._createDOMBreakpointId):
2823         (WebInspector.BreakpointManager.prototype._createEventListenerBreakpointId):
2824         (WebInspector.EventListenerBreakpoint):
2825         (WebInspector.EventListenerBreakpoint.prototype._enable):
2826         (WebInspector.EventListenerBreakpoint.prototype._disable):
2827         (WebInspector.EventListenerBreakpoint.prototype._serializeToJSON):
2828         (WebInspector.EventListenerBreakpointView):
2829         (WebInspector.EventListenerBreakpointView.eventNameForUI):
2830         (WebInspector.EventListenerBreakpointView.prototype.get eventName):
2831         (WebInspector.EventListenerBreakpointView.prototype.compareTo):
2832         (WebInspector.EventListenerBreakpointView.prototype.populateLabelElement):
2833         (WebInspector.EventListenerBreakpointView.prototype.populateStatusMessageElement):
2834         (WebInspector.EventListenerBreakpointView.prototype._uiEventName):
2835         * inspector/front-end/BreakpointsSidebarPane.js:
2836         (WebInspector.XHRBreakpointsSidebarPane.prototype._setBreakpoint):
2837         (WebInspector.XHRBreakpointsSidebarPane.prototype._removeBreakpoint):
2838         (WebInspector.EventListenerBreakpointsSidebarPane):
2839         (WebInspector.EventListenerBreakpointsSidebarPane.prototype._createCategory):
2840         (WebInspector.EventListenerBreakpointsSidebarPane.prototype._categoryCheckboxClicked):
2841         (WebInspector.EventListenerBreakpointsSidebarPane.prototype._breakpointCheckboxClicked):
2842         (WebInspector.EventListenerBreakpointsSidebarPane.prototype._breakpointAdded):
2843         (WebInspector.EventListenerBreakpointsSidebarPane.prototype._breakpointHitStateChanged):
2844         (WebInspector.EventListenerBreakpointsSidebarPane.prototype._breakpointRemoved):
2845         (WebInspector.EventListenerBreakpointsSidebarPane.prototype._updateCategoryCheckbox):
2846         (WebInspector.EventListenerBreakpointsSidebarPane.prototype._projectChanged):
2847         * inspector/front-end/CallStackSidebarPane.js:
2848         (WebInspector.CallStackSidebarPane.prototype.update):
2849         (WebInspector.CallStackSidebarPane.prototype._scriptBreakpointHit):
2850         (WebInspector.CallStackSidebarPane.prototype._xhrBreakpointHit):
2851         (WebInspector.CallStackSidebarPane.prototype._nativeBreakpointHit):
2852         * inspector/front-end/ScriptsPanel.js:
2853         (WebInspector.ScriptsPanel.prototype._debuggerPaused):
2854         (WebInspector.ScriptsPanel.prototype._clearInterface):
2855         * inspector/front-end/Settings.js:
2856         (WebInspector.Settings):
2857
2858 2011-03-17  Adam Barth  <abarth@webkit.org>
2859
2860         Reviewed by Eric Seidel.
2861
2862         Add more ObjC++ files to the build
2863         https://bugs.webkit.org/show_bug.cgi?id=56548
2864
2865         96 link errors.
2866
2867         * WebCore.gypi:
2868         * gyp/WebCore.gyp:
2869
2870 2011-03-17  Adam Barth  <abarth@webkit.org>
2871
2872         Reviewed by Eric Seidel.
2873
2874         Add a few Objective-C++ files to the WebCore GYP build
2875         https://bugs.webkit.org/show_bug.cgi?id=56547
2876
2877         464 link errors.
2878
2879         * gyp/WebCore.gyp:
2880
2881 2011-03-17  Yuta Kitamura  <yutak@chromium.org>
2882
2883         Unreviewed build fix.
2884
2885         Non-ASCII characters in XMLTreeViewer.{cpp,h}
2886         https://bugs.webkit.org/show_bug.cgi?id=56549
2887
2888         * xml/XMLTreeViewer.cpp: Replace non-ASCII characters with ASCII equivalents.
2889         * xml/XMLTreeViewer.h: Ditto.
2890
2891 2011-03-17  Adam Barth  <abarth@webkit.org>
2892
2893         Reviewed by Eric Seidel.
2894
2895         Add plugins and bridge to the WebCore GYP build
2896         https://bugs.webkit.org/show_bug.cgi?id=56546
2897
2898         506 link errors.
2899
2900         * gyp/WebCore.gyp:
2901
2902 2011-03-16  Jeff Johnson  <github@lapcatsoftware.com>
2903
2904         Reviewed by Alexey Proskuryakov.
2905
2906         Logic error in -[WebHTMLView close]
2907         https://bugs.webkit.org/show_bug.cgi?id=56445
2908
2909         The function setDraggingImageURL() is no longer called and can be deleted.
2910
2911         No new tests. Deleting dead code.
2912
2913         * page/DragController.h:
2914
2915 2011-03-16  Naoki Takano  <takano.naoki@gmail.com>
2916
2917         Reviewed by Ryosuke Niwa.
2918
2919         Textarea maxlength doesn't account for newlines
2920         https://bugs.webkit.org/show_bug.cgi?id=54443
2921
2922         When a user presses a return key, TypingCommand::insertLineBreak() is called.
2923         So before append a new line, check if we can add the new line.
2924
2925         * editing/TypingCommand.cpp:
2926         (WebCore::canAppendNewLineFeed): Implement new helper function to check if we can add new line.
2927         (WebCore::TypingCommand::insertLineBreak): Added check logic before adding the new line.
2928         (WebCore::TypingCommand::insertParagraphSeparator): Added check logic before adding the new line.
2929
2930 2011-03-16  Adam Barth  <abarth@webkit.org>
2931
2932         Reviewed by Eric Seidel.
2933
2934         WebCore GYP build should build more derived sources
2935         https://bugs.webkit.org/show_bug.cgi?id=56529
2936
2937         This patch brings us down to 597 link errors.
2938
2939         * gyp/WebCore.gyp:
2940
2941 2011-03-16  Adam Barth  <abarth@webkit.org>
2942
2943         Reviewed by Eric Seidel.
2944
2945         WebCore GYP should build (most) remaining source files
2946         https://bugs.webkit.org/show_bug.cgi?id=56515
2947
2948         We're still not building all the files and we have 1305 link errors,
2949         but this patch is progress.
2950
2951         * WebCore.gypi:
2952         * gyp/WebCore.gyp:
2953         * plugins/PluginStream.cpp:
2954
2955 2011-03-16  Dan Bernstein  <mitz@apple.com>
2956
2957         Reviewed by Alexey Proskuryakov.
2958
2959         Update the default navigator.vendor value
2960         https://bugs.webkit.org/show_bug.cgi?id=56449
2961
2962         * page/NavigatorBase.cpp: Updated the default value of
2963         WEBCORE_NAVIGATOR_VENDOR.
2964
2965 2011-03-16  John Bauman  <jbauman@chromium.org>
2966
2967         Reviewed by James Robinson.
2968
2969         texImage2D gets old contents of canvas
2970         https://bugs.webkit.org/show_bug.cgi?id=56414
2971
2972         Always update the canvas contents in copiedImage, as there's no reason
2973         to ask for an out-of-date image.
2974
2975         * html/HTMLCanvasElement.cpp:
2976         (WebCore::HTMLCanvasElement::copiedImage):
2977
2978 2011-03-16  Adam Barth  <abarth@webkit.org>
2979
2980         Reviewed by James Robinson.
2981
2982         Remove USE(BUILTIN_UTF8_CODEC)
2983         https://bugs.webkit.org/show_bug.cgi?id=56508
2984
2985         * platform/text/TextCodecICU.cpp:
2986         (WebCore::TextCodecICU::registerEncodingNames):
2987         * platform/text/TextEncodingRegistry.cpp:
2988         (WebCore::buildBaseTextCodecMaps):
2989
2990 2011-03-16  Joseph Pecoraro  <joepeck@webkit.org>
2991
2992         Reviewed by Kenneth Rohde Christiansen.
2993
2994         Viewport no longer allows an auto value for "user-scalable"
2995         https://bugs.webkit.org/show_bug.cgi?id=55416
2996
2997         This restores our behavior before r67376 the default "user-scalable"
2998         behavior can be defined by a WebKit client if a value was not
2999         explicitly provided in web content (via the viewport <meta> tag).
3000         Here, all WebKit ports default to "yes" after computing
3001         viewport arguments. However, in the future they may consider
3002         changing the default user-scalable value based on the type
3003         of the document being viewed, a user preference, or other reasons.
3004
3005         Covered by existing tests. Should be no changes.
3006
3007         * dom/ViewportArguments.cpp:
3008         (WebCore::computeViewportAttributes): be explicit about 0.
3009         (WebCore::findUserScalableValue): convert to return a float, the instance variable type.
3010         * dom/ViewportArguments.h:
3011         (WebCore::ViewportArguments::ViewportArguments): convert the boolean back to a float to
3012         allow for 3 states. Explicit no, explicit yes, and ValueAuto to be defined by the
3013         WebKit client.
3014
3015 2011-03-16  David Levin  <levin@chromium.org>
3016
3017         Reviewed by Dmitry Titov.
3018
3019         REGRESSION(r81289): Fix valgrind error (and crashes) when running the chromium unit test "test_shell_test".
3020
3021         Conditional jump or move depends on uninitialised value(s)
3022             WebCore::RenderLayerCompositor::RenderLayerCompositor(WebCore::RenderView*) (third_party/WebKit/Source/WebCore/rendering/RenderLayerCompositor.cpp:117)
3023
3024         * page/Settings.cpp:
3025         (WebCore::Settings::Settings):
3026
3027 2011-03-16  Beth Dakin  <bdakin@apple.com>
3028
3029         Reviewed by Darin Adler.
3030
3031         Fix for https://bugs.webkit.org/show_bug.cgi?id=56493 Drag-scrolling overlay 
3032         scrollbars thumb in overflow regions does not work
3033         -and corresponding-
3034         <rdar://problem/9112688> Drag-scrolling overlay scrollbars thumb in overflow 
3035         regions does not work
3036
3037         Up until now, overlay scrollbars have always been treated in the Render Tree as if 
3038         they have a thickness of 0 because they should not affect layout. However, it is 
3039         important to consider their size when hit-testing because otherwise, we have this 
3040         bug! This patch adds a boolean parameter to overflowClipRect(), 
3041         RenderLayer::verticalScrollbarWidth(), and 
3042         RenderLayer::horizontalScrollbarHeight(). This bool indicates whether to include 
3043         the actual overlay scrollbar thickness. It defaults to false and is only sent is 
3044         as true from RenderBloc::nodeAtPoint().
3045
3046         * rendering/RenderBlock.cpp:
3047         (WebCore::RenderBlock::nodeAtPoint):
3048         * rendering/RenderBox.cpp:
3049         (WebCore::RenderBox::overflowClipRect):
3050         * rendering/RenderBox.h:
3051         * rendering/RenderLayer.cpp:
3052         (WebCore::RenderLayer::verticalScrollbarWidth):
3053         (WebCore::RenderLayer::horizontalScrollbarHeight):
3054         * rendering/RenderLayer.h:
3055         * rendering/RenderTable.cpp:
3056         (WebCore::RenderTable::overflowClipRect):
3057         * rendering/RenderTable.h:
3058
3059 2011-03-16  Keith Kyzivat  <keith.kyzivat@nokia.com>
3060
3061         Reviewed by Andreas Kling.
3062
3063         [Qt] Fix std::swap not found issue on mobile Qt devices.
3064         https://bugs.webkit.org/show_bug.cgi?id=56463
3065
3066         Include <algorithm> in TextBreakIteratorQt.cpp so std::swap is found
3067         on some Qt mobile devices.
3068
3069         No new tests: No tests needed - compilation verified manually.
3070
3071         * platform/text/qt/TextBreakIteratorQt.cpp:
3072         (WebCore::acquireLineBreakIterator):
3073
3074 2011-03-16  Jarkko Sakkinen  <jarkko.j.sakkinen@gmail.com>
3075
3076         Reviewed by Kenneth Rohde Christiansen.
3077
3078         [Qt] WebGL content not shown when accelerated compositing is enabled
3079         https://bugs.webkit.org/show_bug.cgi?id=56339
3080
3081         Removed all previously implemented WebGL code from GraphicsLayerQt
3082         because API has changed. GraphicsContext3D provides PlatformLayer
3083         that is added as a child of GraphicsLayer and is therefore painted
3084         through QGraphicsView pipeline.
3085
3086         * platform/graphics/GraphicsContext3D.h:
3087         * platform/graphics/qt/GraphicsContext3DQt.cpp:
3088         (WebCore::GraphicsContext3DInternal::GraphicsContext3DInternal):
3089         (WebCore::GraphicsContext3DInternal::paint):
3090         (WebCore::GraphicsContext3DInternal::boundingRect):
3091         (WebCore::GraphicsContext3D::platformLayer):
3092         (WebCore::GraphicsContext3D::paintRenderingResultsToCanvas):
3093         (WebCore::GraphicsContext3D::reshape):
3094         * platform/graphics/qt/GraphicsLayerQt.cpp:
3095         (WebCore::GraphicsLayerQtImpl::GraphicsLayerQtImpl):
3096         (WebCore::GraphicsLayerQtImpl::paint):
3097         (WebCore::GraphicsLayerQtImpl::flushChanges):
3098         (WebCore::GraphicsLayerQt::setContentsToCanvas):
3099         * platform/graphics/qt/GraphicsLayerQt.h:
3100
3101 2011-03-16  Ryosuke Niwa  <rniwa@webkit.org>
3102
3103         Reviewed by Tony Chang.
3104
3105         Get rid of nearestMailBlockquote
3106         https://bugs.webkit.org/show_bug.cgi?id=56439
3107
3108         Removed nearestMailBlockquote and replaced the calls to the function by calls
3109         to enclosingNodeOfType and highestEnclosingNodeOfType.
3110         
3111         Also fixed a bug in BreakBlockquoteCommand and DeleteSelectionCommand not to
3112         respect editing boundaries.  Added a test for the former command.
3113
3114         Test: editing/execCommand/break-non-editable-blockquote.html
3115
3116         * editing/BreakBlockquoteCommand.cpp:
3117         (WebCore::BreakBlockquoteCommand::doApply): No longer crosses editing boundary
3118         when looking for a Mail blockquote.
3119         * editing/DeleteSelectionCommand.cpp:
3120         (WebCore::DeleteSelectionCommand::saveTypingStyleState): Ditto.
3121         (WebCore::DeleteSelectionCommand::calculateTypingStyleAfterDelete):
3122         * editing/ReplaceSelectionCommand.cpp:
3123         (WebCore::hasMatchingQuoteLevel):
3124         (WebCore::handleStyleSpansBeforeInsertion):
3125         (WebCore::ReplaceSelectionCommand::handleStyleSpans):
3126         (WebCore::ReplaceSelectionCommand::doApply):
3127         * editing/htmlediting.cpp:
3128         (WebCore::enclosingNodeOfType): Check rule upfront to improve the performance.
3129         (WebCore::highestEnclosingNodeOfType): Ditto; also add the missing check.
3130         * editing/htmlediting.h:
3131         (WebCore::firstPositionInOrBeforeNode): Added a null pointer check.
3132         (WebCore::lastPositionInOrAfterNode): Ditto.
3133         * editing/markup.cpp:
3134         (WebCore::highestAncestorToWrapMarkup):
3135         (WebCore::createMarkup):
3136
3137 2011-03-16  Jer Noble  <jer.noble@apple.com>
3138
3139         Reviewed by Beth Dakin.
3140
3141         RenderFullScreen::createFullScreenStyle() leaks
3142         https://bugs.webkit.org/show_bug.cgi?id=53384
3143
3144         Two problems: a) not calling release() on the style returned in setFullScreenRenderer
3145         causes an unnecessary ref/deref, and b) the fullscreen renderer needs to be destroyed,
3146         not just detached, when it is no longer needed.
3147
3148         * dom/Document.cpp:
3149         (WebCore::Document::setFullScreenRenderer): Destroy the current renderer when a new one is set.
3150         * rendering/RenderFullScreen.cpp:
3151         (RenderFullScreen::createFullScreenStyle): release() the return value.
3152
3153 2011-03-16  Mike Reed  <reed@google.com>
3154
3155         Reviewed by James Robinson.
3156
3157         Reestablish typeface/size/encoding when drawing stroked text
3158         https://bugs.webkit.org/show_bug.cgi?id=56481
3159
3160         No new tests. LayoutTests/svg/css/composite-shadow-text.svg
3161
3162         * platform/graphics/skia/SkiaFontWin.cpp:
3163         (WebCore::paintSkiaText):
3164
3165 2011-03-16  Daniel Sievers  <sievers@google.com>
3166
3167         Reviewed by James Robinson.
3168
3169         Add setting to always force compositing mode
3170         https://bugs.webkit.org/show_bug.cgi?id=56156
3171
3172         No new tests needed as this defaults to disabled (and is unfeasible
3173         to be tested through property overriding at runtime).
3174
3175         * page/Settings.h:
3176         (WebCore::Settings::setForceCompositingMode):
3177         (WebCore::Settings::forceCompositingMode):
3178         * rendering/RenderLayerCompositor.cpp:
3179         (WebCore::RenderLayerCompositor::RenderLayerCompositor):
3180         (WebCore::RenderLayerCompositor::computeCompositingRequirements):
3181         * rendering/RenderLayerCompositor.h:
3182
3183 2011-03-16  Vangelis Kokkevis  <vangelis@chromium.org>
3184
3185         Reviewed by Kenneth Russell.
3186
3187         [chromium] Fixing backface visibility for transformed layers.
3188         https://bugs.webkit.org/show_bug.cgi?id=56237
3189
3190         Test: platform/chromium/compositing/backface-visibility-transformed.html
3191
3192         * platform/graphics/chromium/LayerRendererChromium.cpp:
3193         (WebCore::LayerRendererChromium::drawLayer):
3194
3195 2011-03-16  Dimitri Glazkov  <dglazkov@chromium.org>
3196
3197         Reviewed by Darin Adler.
3198
3199         REGRESSION(r76147): Dragging slider thumb is impossible or results in drawing artifacts.
3200         https://bugs.webkit.org/show_bug.cgi?id=56469
3201
3202         Technically, this is not a regression, but rather uncovering of an old
3203         problem. When the RenderSlider::layout was written, the layout state was
3204         pushed with a wrong offset. However, since the whole slider track was
3205         always repainted, the problem didn't manifest itself until we actually
3206         started being more precise in our repaints.
3207
3208         Test: fast/repaint/slider-thumb-float.html
3209
3210         * rendering/RenderSlider.cpp:
3211         (WebCore::RenderSlider::layout): Changed to pass actual thumb offset
3212         to the LayoutStateMaintainer, rather than thumb size.
3213
3214 2011-03-16  Dimitri Glazkov  <dglazkov@chromium.org>
3215
3216         Reviewed by Eric Carlson.
3217
3218         Add play state callbacks to MediaControls, kill timeUpdate timer.
3219         https://bugs.webkit.org/show_bug.cgi?id=56473
3220
3221         No change in behavior, covered by existing tests.
3222
3223         * html/HTMLMediaElement.cpp:
3224         (WebCore::HTMLMediaElement::playbackProgressTimerFired): Added a call to
3225             media controls.
3226         (WebCore::HTMLMediaElement::updatePlayState): Ditto.
3227         * html/shadow/MediaControls.cpp:
3228         (WebCore::MediaControls::MediaControls): Removed initialization of the timer.
3229         (WebCore::MediaControls::playbackProgressed): Added.
3230         (WebCore::MediaControls::playbackStarted): Added, for now routing to just
3231             call playbackProgressed.
3232         (WebCore::MediaControls::playbackStopped): Ditto.
3233         (WebCore::MediaControls::update): Removed the code to start/stop the
3234             timer that's now gone.
3235         * html/shadow/MediaControls.h: Removed timer decls.
3236
3237 2011-03-16  Bill Budge  <bbudge@chromium.org>
3238
3239         Reviewed by David Levin.
3240
3241         DocumentThreadableLoaderClient needs a protected default Constructor
3242         https://bugs.webkit.org/show_bug.cgi?id=56479
3243
3244         No new tests. Exposes no new functionality.
3245
3246         * loader/DocumentThreadableLoaderClient.h:
3247         (WebCore::DocumentThreadableLoaderClient::DocumentThreadableLoaderClient):
3248
3249 2011-03-16  David Levin  <levin@chromium.org>
3250
3251         Chromium Leopard build fix attempt #2.
3252
3253         Same error as before.
3254         * bindings/v8/V8GCController.cpp:
3255
3256 2011-03-16  David Levin  <levin@chromium.org>
3257
3258         Chromium Leopard build fix attempt.
3259
3260         The error was 'WebCore::GrouperVisitor' has a field 'WebCore::GrouperVisitor::m_grouper' whose type uses the anonymous namespace.
3261
3262         * bindings/v8/V8GCController.cpp:
3263
3264 2011-03-16  Ryosuke Niwa  <rniwa@webkit.org>
3265
3266         Reviewed by Dimitri Glazkov and Darin Adler.
3267
3268         Node::isContentEditable should always call parentNode() instead of parentOrHostNode()
3269         https://bugs.webkit.org/show_bug.cgi?id=56472
3270
3271         Replaced the call to parentOrHostNode() in Node::isContentEditable by a call to parentNode().
3272         Node::isContentEditable now calls parentNode() on all nodes.
3273
3274         No tests are added since this behavior change is not visible to scripts at the moment.
3275
3276         * dom/Node.cpp:
3277         (WebCore::Node::isContentEditable):
3278
3279 2011-03-16  Chris Fleizach  <cfleizach@apple.com>
3280
3281         Reviewed by Darin Adler.
3282
3283         WK2: Need to propagate enhanced accessibility flag from UI -> web process
3284         https://bugs.webkit.org/show_bug.cgi?id=56379
3285
3286         Allow the enhanced accessibility flag to be toggleable. 
3287
3288         * accessibility/AXObjectCache.h:
3289         (WebCore::AXObjectCache::setEnhancedUserInterfaceAccessibility):
3290
3291 2011-03-16  Csaba Osztrogonác  <ossy@webkit.org>
3292
3293         [Qt] Buildfix after r81230.
3294
3295         * WebCore.pri: Missing include path added.
3296
3297 2011-03-15  Oliver Hunt  <oliver@apple.com>
3298
3299         Reviewed by Geoffrey Garen.
3300
3301         Make Structure creation require a JSGlobalData
3302         https://bugs.webkit.org/show_bug.cgi?id=56438
3303
3304         Mechanical change to make all structure creation use GlobalData
3305
3306         * bindings/js/JSAudioConstructor.cpp:
3307         (WebCore::JSAudioConstructor::JSAudioConstructor):
3308         * bindings/js/JSAudioConstructor.h:
3309         (WebCore::JSAudioConstructor::createStructure):
3310         * bindings/js/JSDOMBinding.h:
3311         (WebCore::DOMObjectWithGlobalPointer::createStructure):
3312         (WebCore::DOMConstructorObject::createStructure):
3313         (WebCore::getDOMStructure):
3314         * bindings/js/JSDOMGlobalObject.h:
3315         (WebCore::JSDOMGlobalObject::createStructure):
3316         * bindings/js/JSDOMWindowBase.h:
3317         (WebCore::JSDOMWindowBase::createStructure):
3318         * bindings/js/JSDOMWindowShell.cpp:
3319         (WebCore::JSDOMWindowShell::JSDOMWindowShell):
3320         (WebCore::JSDOMWindowShell::setWindow):
3321         * bindings/js/JSDOMWindowShell.h:
3322         (WebCore::JSDOMWindowShell::createStructure):
3323         * bindings/js/JSImageConstructor.cpp:
3324         (WebCore::JSImageConstructor::JSImageConstructor):
3325         * bindings/js/JSImageConstructor.h:
3326         (WebCore::JSImageConstructor::createStructure):
3327         * bindings/js/JSImageDataCustom.cpp:
3328         (WebCore::toJS):
3329         * bindings/js/JSOptionConstructor.cpp:
3330         (WebCore::JSOptionConstructor::JSOptionConstructor):
3331         * bindings/js/JSOptionConstructor.h:
3332         (WebCore::JSOptionConstructor::createStructure):
3333         * bindings/js/JSWorkerContextBase.h:
3334         (WebCore::JSWorkerContextBase::createStructure):
3335         * bindings/js/WorkerScriptController.cpp:
3336         (WebCore::WorkerScriptController::initScript):
3337         * bindings/scripts/CodeGeneratorJS.pm:
3338         * bridge/c/CRuntimeObject.h:
3339         (JSC::Bindings::CRuntimeObject::createStructure):
3340         * bridge/c/c_instance.cpp:
3341         (JSC::Bindings::CRuntimeMethod::createStructure):
3342         * bridge/jni/jsc/JavaInstanceJSC.cpp:
3343         (JavaRuntimeMethod::createStructure):
3344         * bridge/jni/jsc/JavaRuntimeObject.h:
3345         (JSC::Bindings::JavaRuntimeObject::createStructure):
3346         * bridge/objc/ObjCRuntimeObject.h:
3347         (JSC::Bindings::ObjCRuntimeObject::createStructure):
3348         * bridge/objc/objc_instance.mm:
3349         (ObjCRuntimeMethod::createStructure):
3350         * bridge/objc/objc_runtime.h:
3351         (JSC::Bindings::ObjcFallbackObjectImp::createStructure):
3352         * bridge/runtime_array.h:
3353         (JSC::RuntimeArray::createStructure):
3354         * bridge/runtime_method.h:
3355         (JSC::RuntimeMethod::createStructure):
3356         * bridge/runtime_object.h:
3357         (JSC::Bindings::RuntimeObject::createStructure):
3358
3359 2011-03-16  Pratik Solanki  <psolanki@apple.com>
3360
3361         Reviewed by Alexey Proskuryakov.
3362
3363         REGRESSION: Crash in adjustMIMETypeIfNecessary since r81001
3364         https://bugs.webkit.org/show_bug.cgi?id=56345
3365
3366         Add NULL check for Content-Type header field.
3367
3368         Test: http/tests/xmlhttprequest/xmlhttprequest-no-content-type.html
3369
3370         * platform/network/mac/WebCoreURLResponse.mm:
3371         (WebCore::adjustMIMETypeIfNecessary):
3372
3373 2011-03-15  Levi Weintraub  <leviw@chromium.org>
3374
3375         Reviewed by Ryosuke Niwa.
3376
3377         REGRESSION (r81165): Assert running editing/style/iframe-onload-crash.html with non-Mac editing behavior
3378         https://bugs.webkit.org/show_bug.cgi?id=56407
3379
3380         Fixing the creation of incorrect ranges from TextIterator due to passing node/offset pairs that
3381         weren't parent-anchored. Also changing canHaveChildrenForEditing to properly handle nodes that
3382         have had children appended to them that editing wouldn't normally allow.
3383
3384         Tests: editing/style/iframe-onload-crash-mac.html
3385                editing/style/iframe-onload-crash-unix.html
3386                editing/style/iframe-onload-crash-win.html
3387
3388         * editing/TextIterator.cpp:
3389         (WebCore::TextIterator::rangeFromLocationAndLength): Passing parent-anchored values to range.
3390         * editing/htmlediting.cpp:
3391         (WebCore::canHaveChildrenForEditing): Adding a condition that the nodes don't already have children
3392         for hr and datagrid, as you can append any node to another using javascript.
3393
3394 2011-03-16  Mikhail Naganov  <mnaganov@chromium.org>
3395
3396         Reviewed by Pavel Feldman.
3397
3398         [Chromium] Report object groups and single DOM-related objects
3399         to the new heap profiler.
3400         https://bugs.webkit.org/show_bug.cgi?id=53659
3401
3402         * Android.v8bindings.mk:
3403         * WebCore.gypi:
3404         * WebCore.pro:
3405         * bindings/scripts/CodeGeneratorV8.pm:
3406         * bindings/v8/RetainedDOMInfo.cpp: Added.
3407         (WebCore::RetainedDOMInfo::RetainedDOMInfo):
3408         * bindings/v8/RetainedDOMInfo.h: Added.
3409         * bindings/v8/RetainedObjectInfo.h: Added.
3410         * bindings/v8/ScriptProfiler.cpp:
3411         (WebCore::retainedDOMInfo):
3412         (WebCore::ScriptProfiler::initialize):
3413         * bindings/v8/ScriptProfiler.h:
3414         * bindings/v8/V8DOMWindowShell.cpp:
3415         (WebCore::V8DOMWindowShell::initContextIfNeeded):
3416         * bindings/v8/V8GCController.cpp:
3417         (WebCore::GroupId::GrouperItem::GrouperItem):
3418         (WebCore::GroupId::GrouperItem::groupId):
3419         (WebCore::GroupId::GrouperItem::createRetainedObjectInfo):
3420         (WebCore::calculateGroupId):
3421         (WebCore::GrouperVisitor::visitDOMWrapper):
3422         (WebCore::GrouperVisitor::applyGrouping):
3423         * bindings/v8/WrapperTypeInfo.h:
3424         * inspector/front-end/DetailedHeapshotGridNodes.js:
3425         (WebInspector.HeapSnapshotConstructorNode):
3426         (WebInspector.HeapSnapshotConstructorNode.prototype._createNodesProvider):
3427         (WebInspector.HeapSnapshotDiffNode):
3428         (WebInspector.HeapSnapshotDiffNode.prototype._createNodesProvider.createProvider):
3429         (WebInspector.HeapSnapshotDiffNode.prototype._createNodesProvider):
3430         * inspector/front-end/DetailedHeapshotView.js:
3431         (WebInspector.HeapSnapshotRetainingPathsList.prototype.setDataSource):
3432         (WebInspector.HeapSnapshotRetainingPathsList.prototype.refresh):
3433         (WebInspector.HeapSnapshotRetainingPathsList.prototype.showNext.startSearching):
3434         (WebInspector.HeapSnapshotRetainingPathsList.prototype.showNext):
3435         (WebInspector.HeapSnapshotRetainingPathsList.prototype._setRootChildrenForFinder):
3436         (WebInspector.DetailedHeapshotView.prototype._changeRetainingPathsRoot):
3437         (WebInspector.DetailedHeapshotView.prototype.get isTracingToWindowObjects):
3438         * inspector/front-end/HeapSnapshot.js:
3439         (WebInspector.HeapSnapshotNode.prototype.get className):
3440         (WebInspector.HeapSnapshot.prototype._buildAggregates):
3441         (WebInspector.HeapSnapshotPathFinder.prototype.updateRoots):
3442         (WebInspector.HeapSnapshotPathFinder.prototype._fillRootChildren):
3443         * inspector/front-end/heapProfiler.css:
3444         (.detailed-heapshot-view .retaining-paths-view .title > span):
3445         (.detailed-heapshot-view .retaining-paths-to-windows):
3446
3447 2011-03-16  Sam Weinig  <sam@webkit.org>
3448
3449         Reviewed by Adam Roben.
3450
3451         Add WebKit2 API to figure out if an input or textarea was edited
3452         https://bugs.webkit.org/show_bug.cgi?id=56474
3453
3454         Add HTMLInputElement::lastChangeWasUserEdit and HTMLTextAreaElement::lastChangeWasUserEdit
3455         and use them to implement -[DOMHTMLInputElement _isEdited] and -[DOMHTMLTextAreaElement _isEdited]
3456         as well as API in WebKit2.
3457
3458         * WebCore.exp.in:
3459         * bindings/objc/DOMHTML.mm:
3460         (-[DOMHTMLInputElement _isEdited]):
3461         (-[DOMHTMLTextAreaElement _isEdited]):
3462         * html/HTMLInputElement.cpp:
3463         (WebCore::HTMLInputElement::lastChangeWasUserEdit):
3464         * html/HTMLInputElement.h:
3465         * html/HTMLTextAreaElement.cpp:
3466         (WebCore::HTMLTextAreaElement::lastChangeWasUserEdit):
3467         * html/HTMLTextAreaElement.h:
3468
3469 2011-03-15  Pavel Feldman  <pfeldman@chromium.org>
3470
3471         Reviewed by Yury Semikhatsky.
3472
3473         Web Inspector: ASSERTION FAILED: !HashTranslator::equal(KeyTraits::emptyValue(), key)
3474         https://bugs.webkit.org/show_bug.cgi?id=56376
3475
3476         * inspector/InspectorBrowserDebuggerAgent.cpp:
3477         (WebCore::InspectorBrowserDebuggerAgent::willRemoveDOMNode):