2009-07-07 Jiahua Huang <jhuangjiahua@gmail.com>
[WebKit-https.git] / WebCore / ChangeLog
1 2009-07-07  Jiahua Huang  <jhuangjiahua@gmail.com>
2
3         Reviewed by Jan Alonzo.
4
5         [Gtk] Paste of rich text from firefox results garbled markup
6         https://bugs.webkit.org/show_bug.cgi?id=26791
7
8         Fix problem with UTF-16 clipboard pasted.
9
10         * manual-tests/gtk/paste-richtext-from-firefox.html: Added.
11         * platform/gtk/PasteboardGtk.cpp:
12         (WebCore::Pasteboard::documentFragment):
13
14 2009-07-07  Yury Semikhatsky  <yurys@chromium.org>
15
16         Reviewed by Timothy Hatcher.
17
18         Change 'Continue debug' shortcut from F5 to F8 for consistency with Firebug.
19
20         https://bugs.webkit.org/show_bug.cgi?id=23849
21
22         * inspector/front-end/ScriptsPanel.js:
23         (WebInspector.ScriptsPanel):
24
25 2009-07-06  Albert J. Wong  <ajwong@chromium.org>
26
27         Reviewed by Maciej Stachowiak.
28
29         Update RenderThemeChromiumMac for wkDrawMediaUIPart and wkDrawMediaSlider API
30         change.
31
32         Fix compile RenderThemeChromiumMac.mm due to API changes from r45572
33         https://bugs.webkit.org/show_bug.cgi?id=27018
34
35         This is mainly an API change update to fix the chromium compile.  It
36         also has a small fix of a typo in RenderThemeMac.mm.
37
38         Compilation against the head of chromium trunk passed.  Since this is
39         a compile fix, that should be sufficient.
40
41         * rendering/RenderThemeChromiumMac.mm:
42         (WebCore::):
43         (WebCore::RenderThemeChromiumMac::paintMediaFullscreenButton):
44         (WebCore::RenderThemeChromiumMac::paintMediaMuteButton):
45         (WebCore::RenderThemeChromiumMac::paintMediaPlayButton):
46         (WebCore::RenderThemeChromiumMac::paintMediaSeekBackButton):
47         (WebCore::RenderThemeChromiumMac::paintMediaSeekForwardButton):
48         (WebCore::RenderThemeChromiumMac::paintMediaSliderTrack):
49         (WebCore::RenderThemeChromiumMac::paintMediaSliderThumb):
50         * rendering/RenderThemeMac.mm:
51         (WebCore::):
52
53 2009-07-06  David Kilzer  <ddkilzer@apple.com>
54
55         Bug 27002: Build fix when DASHBOARD_SUPPORT is disabled with -Wunused-parameter
56
57         <https://bugs.webkit.org/show_bug.cgi?id=27002>
58
59         Reviewed by Geoff Garen.
60
61         * html/CanvasRenderingContext2D.cpp:
62         (WebCore::CanvasRenderingContext2D::prepareGradientForDashboard):
63         Mark gradient as an unused parameter when DASHBOARD_SUPPORT is
64         disabled.
65
66 2009-07-06  David Kilzer  <ddkilzer@apple.com>
67
68         Bug 27001: Fix improper use of PassRefPtr<Node> to RefPtr<Node>
69
70         <https://bugs.webkit.org/show_bug.cgi?id=27001>
71
72         Reviewed by Geoff Garen.
73
74         PassRefPtr<> should only be used for arguments to functions that
75         take ownership of the object, or as return values from functions
76         that relinquish ownership of the object.
77
78         * editing/Editor.cpp:
79         (WebCore::Editor::increaseSelectionListLevelOrdered): Changed
80         stack-allocated PassRefPtr<Node> to RefPtr<Node> and call
81         release() on returned object.
82         (WebCore::Editor::increaseSelectionListLevelUnordered): Ditto.
83
84 2009-07-06  Eric Carlson  <eric.carlson@apple.com>
85
86         Reviewed by Simon Fraser.
87
88         <rdar://problem/7035474> Make new media controller UI default on SnowLeopard
89
90         * rendering/RenderThemeMac.mm:
91         (WebCore::mediaControllerTheme):
92             New media controller UI is enabled by default on SnowLeopard.
93
94 2009-07-06  Nate Chapin  <japhet@chromium.org>
95
96         Unreviewed, build fix.
97
98         Roll out r45559 to fix Chromium canary.
99
100         https://bugs.webkit.org/show_bug.cgi?id=26857
101
102         * bindings/scripts/CodeGeneratorV8.pm:
103         * bindings/v8/V8Binding.cpp: Removed.
104         * bindings/v8/V8Binding.h:
105         (WebCore::toInt32):
106         (WebCore::toWebCoreString):
107         (WebCore::fromWebCoreString):
108         (WebCore::toWebCoreStringWithNullCheck):
109         (WebCore::isUndefinedOrNull):
110         (WebCore::v8Boolean):
111         * bindings/v8/V8LazyEventListener.cpp:
112         (WebCore::V8LazyEventListener::getListenerFunction):
113         * bindings/v8/V8Proxy.cpp:
114         (WebCore::handleConsoleMessage):
115         (WebCore::V8Proxy::compileScript):
116         (WebCore::V8Proxy::sourceName):
117         * bindings/v8/WorkerContextExecutionProxy.cpp:
118         (WebCore::handleConsoleMessage):
119         * bindings/v8/custom/V8CSSStyleDeclarationCustom.cpp:
120         (WebCore::NAMED_PROPERTY_SETTER):
121         * bindings/v8/custom/V8CanvasRenderingContext2DCustom.cpp:
122         (WebCore::CALLBACK_FUNC_DECL):
123         * bindings/v8/custom/V8CustomXPathNSResolver.cpp:
124         (WebCore::V8CustomXPathNSResolver::lookupNamespaceURI):
125         * bindings/v8/custom/V8DOMWindowCustom.cpp:
126         (WebCore::CALLBACK_FUNC_DECL):
127         * bindings/v8/custom/V8HTMLCanvasElementCustom.cpp:
128         (WebCore::CALLBACK_FUNC_DECL):
129         * bindings/v8/custom/V8HTMLIFrameElementCustom.cpp:
130         (WebCore::ACCESSOR_SETTER):
131         * bindings/v8/custom/V8HTMLOptionsCollectionCustom.cpp:
132         (WebCore::CALLBACK_FUNC_DECL):
133         * bindings/v8/custom/V8HTMLSelectElementCustom.cpp:
134         (WebCore::removeElement):
135         * bindings/v8/custom/V8SQLTransactionCustom.cpp:
136         (WebCore::CALLBACK_FUNC_DECL):
137         * bindings/v8/custom/V8WorkerContextCustom.cpp:
138         (WebCore::SetTimeoutOrInterval):
139         * bindings/v8/custom/V8XMLHttpRequestCustom.cpp:
140         (WebCore::CALLBACK_FUNC_DECL):
141
142 2009-07-06  Eric Carlson  <eric.carlson@apple.com>
143
144         Reviewed by Darin Adler.
145
146         <rdar://problem/7008093> Media controller can’t be used to scrub when movie is 
147         narrow — track is too narrow
148
149         Do not show media controller time display elements when the a movie is too narrow.
150
151         * platform/mac/WebCoreSystemInterface.h:
152         * platform/mac/WebCoreSystemInterface.mm:
153             The 'state' parameter to wkDrawMediaUIPart is now an unsigned bitfield.
154
155         * rendering/MediaControlElements.cpp:
156         (WebCore::MediaControlTimeDisplayElement::MediaControlTimeDisplayElement):
157             Give current time and time remaining controls a common base class.
158         (WebCore::MediaControlTimeDisplayElement::setVisible):
159             New method, hide and show the element.
160         * rendering/MediaControlElements.h:
161
162         * rendering/RenderMedia.cpp:
163         (WebCore::RenderMedia::RenderMedia):
164             Initialize m_previousVisible.
165         (WebCore::RenderMedia::layout):
166             Show/hide the time display elements as the movie width changes.
167         (WebCore::RenderMedia::createCurrentTimeDisplay):
168         (WebCore::RenderMedia::createTimeRemainingDisplay):
169             Base class is now MediaControlTimeDisplayElement, not MediaControlElement.
170         (WebCore::RenderMedia::shouldShowTimeDisplayControls):
171             New, decide if time display elements should be visible or not.
172         * rendering/RenderMedia.h:
173
174         * rendering/RenderThemeMac.mm:
175         (WebCore::):
176         (WebCore::RenderThemeMac::paintMediaFullscreenButton):
177         (WebCore::RenderThemeMac::paintMediaMuteButton):
178         (WebCore::RenderThemeMac::paintMediaPlayButton):
179         (WebCore::RenderThemeMac::paintMediaSeekBackButton):
180         (WebCore::RenderThemeMac::paintMediaSeekForwardButton):
181         (WebCore::RenderThemeMac::paintMediaSliderTrack):
182         (WebCore::RenderThemeMac::paintMediaSliderThumb):
183         (WebCore::RenderThemeMac::paintMediaRewindButton):
184         (WebCore::RenderThemeMac::paintMediaReturnToRealtimeButton):
185         (WebCore::RenderThemeMac::paintMediaControlsBackground):
186         (WebCore::RenderThemeMac::paintMediaCurrentTime):
187         (WebCore::RenderThemeMac::paintMediaTimeRemaining):
188             The 'state' parameter to wkDrawMediaUIPart is now an unsigned bitfield.
189
190 2009-07-06  David Kilzer  <ddkilzer@apple.com>
191
192         Bug 27000: Minor clean up to runtime_root.{cpp|h}
193
194         <https://bugs.webkit.org/show_bug.cgi?id=27000>
195
196         Reviewed by Geoff Garen.
197
198         * bridge/runtime_root.cpp: Added blank line between license and
199         the first #include statement.
200         * bridge/runtime_root.h: Added comment to #endif.
201
202 2009-07-06  Roland Steiner  <rolandsteiner@google.com>
203
204         Reviewed by Maciej Stachowiak.
205
206         generalize the special height treatment for SVG (to be re-used for ruby):
207             renamed InlineBox::m_isSVG to m_hasVirtualHeight
208             renamed InlineBox::isSVG() to hasVirtualHeight()
209             renamed InlineBox::setIsSVG() to setHasVirtualHeight()
210
211         * rendering/InlineBox.cpp:
212         (WebCore::InlineBox::height):
213         * rendering/InlineBox.h:
214         (WebCore::InlineBox::InlineBox):
215         (WebCore::InlineBox::isText):
216         (WebCore::InlineBox::setIsText):
217         (WebCore::InlineBox::isSVGRootInlineBox):
218         (WebCore::InlineBox::hasVirtualHeight):
219         (WebCore::InlineBox::setHasVirtualHeight):
220         (WebCore::InlineBox::virtualHeight):
221         * rendering/RenderSVGInline.cpp:
222         (WebCore::RenderSVGInline::createFlowBox):
223         * rendering/RenderSVGInlineText.cpp:
224         (WebCore::RenderSVGInlineText::createTextBox):
225         * rendering/RenderSVGText.cpp:
226         (WebCore::RenderSVGText::createRootBox):
227         * rendering/SVGInlineFlowBox.h:
228         (WebCore::SVGInlineFlowBox::virtualHeight):
229         * rendering/SVGInlineTextBox.h:
230         (WebCore::SVGInlineTextBox::virtualHeight):
231         * rendering/SVGRootInlineBox.h:
232         (WebCore::SVGRootInlineBox::virtualHeight):
233
234 2009-07-06  Alice Liu  <alice.liu@apple.com>
235
236         Reviewed by Darin Adler.
237
238         REGRESSION(r45285): focus rings are black on windows safari
239         https://bugs.webkit.org/show_bug.cgi?id=26821
240         <rdar://problem/7018252>
241
242         Add a mechanism for setting a custom focus ring color, and relocate the 
243         determination of focus ring color to base class RenderTheme.
244
245         No new tests.  Already-existing tests run in pixel mode would have caught this regression
246
247         * css/CSSStyleSelector.cpp:
248         (WebCore::CSSStyleSelector::getColorFromPrimitiveValue): Move the responsibility
249         of determining focus color to base class RenderTheme.
250         * rendering/RenderTheme.cpp:
251         (WebCore::customFocusRingColor): Added static local.
252         (WebCore::RenderTheme::setCustomFocusRingColor): Added
253         (WebCore::RenderTheme::focusRingColor): Use custom color over platform color.
254         * rendering/RenderTheme.h:
255         (WebCore::RenderTheme::platformFocusRingColor): default implementation, black color
256         * rendering/RenderThemeSafari.cpp:
257         (WebCore::RenderTheme::themeForPage): Circumstances that lead to returning the RenderThemeWin
258         are the same under which we want to use the focus ring color from SafariTheme.
259         (WebCore::RenderThemeSafari::platformFocusRingColor): Renamed from focusRingColor
260         * rendering/RenderThemeSafari.h:
261
262         Renaming focusRingColor to platformFocusRingColor in these files:
263         * rendering/RenderThemeChromiumMac.h:
264         * rendering/RenderThemeChromiumMac.mm:
265         (WebCore::RenderThemeChromiumMac::platformFocusRingColor):
266         * rendering/RenderThemeChromiumSkia.cpp:
267         (WebCore::RenderThemeChromiumSkia::platformFocusRingColor):
268         * rendering/RenderThemeChromiumSkia.h:
269         * rendering/RenderThemeMac.h:
270         * rendering/RenderThemeMac.mm:
271         (WebCore::RenderThemeMac::platformFocusRingColor):
272
273         Cleanup leftover from removal of WebCore::Color in r45285 in these files:
274         * WebCore.order:
275         * platform/graphics/Color.h:
276
277 2009-07-06  Shinichiro Hamaji  <hamaji@chromium.org>
278
279         Reviewed by David Hyatt.
280
281         Bug 15135: REGRESSION (r19843-r19850): Changing a flexbox's
282         contents makes its container scroll to the top
283         https://bugs.webkit.org/show_bug.cgi?id=15135
284
285         Delay updateing scroll bar of descendants of flexbox until their
286         positions are determined.  In this way we can prevent descendants
287         of flexible boxes from changing positions of their scrollbars
288         using tentative positions.
289
290         Test: fast/flexbox/repaint-scrollbar.html
291
292         * rendering/RenderBlock.cpp:
293         (WebCore::RenderBlock::startDelayUpdateScrollInfo):
294         (WebCore::RenderBlock::finishDelayUpdateScrollInfo):
295         (WebCore::RenderBlock::updateScrollInfoAfterLayout):
296         (WebCore::RenderBlock::layoutBlock):
297         (WebCore::RenderBlock::layoutOnlyPositionedObjects):
298         * rendering/RenderBlock.h:
299         * rendering/RenderFlexibleBox.cpp:
300         (WebCore::RenderFlexibleBox::layoutHorizontalBox):
301         (WebCore::RenderFlexibleBox::layoutVerticalBox):
302
303 2009-07-06  Hironori Bono  <hbono@chromium.org>
304
305         Reviewed by Maciej Stachowiak.
306
307         Make unconfirmed IME text affect textarea's value.
308         This matches input and contentEditable elements as well
309         IE and Firefox.
310
311         This fixes https://bugs.webkit.org/show_bug.cgi?id=25061.
312
313         Input elements would go down this code path because it
314         would always get a null compositionNode from frame->editor().
315         Special casing compositionNodes is wrong because we explicitly
316         want unconfirmed IME input in the textarea's value (assuming we
317         want to match IE and Firefox here).
318
319         This change is originally created by Ojan Vafai <ojan@chromium.org> and
320         I just changed its manual tests with an automated test on his behalf.
321
322         Test: platform/mac/editing/input/text-control-ime-input.html
323
324         * rendering/RenderTextControl.cpp:
325         (WebCore::RenderTextControl::text):
326         (WebCore::RenderTextControl::textWithHardLineBreaks):
327
328 2009-07-06  Anders Carlsson  <andersca@apple.com>
329
330         Reviewed by Adele Peterson.
331
332         Add the ability for wheel events to latch to a node.
333         
334         * WebCore.base.exp:
335         * page/EventHandler.cpp:
336         (WebCore::EventHandler::EventHandler):
337         (WebCore::EventHandler::clear):
338         (WebCore::EventHandler::handleWheelEvent):
339         * page/EventHandler.h:
340         * page/mac/EventHandlerMac.mm:
341         (WebCore::EventHandler::wheelEvent):
342         * platform/mac/WebCoreSystemInterface.h:
343         * platform/mac/WebCoreSystemInterface.mm:
344
345 2009-07-06  Nate Chapin  <japhet@chromium.org>
346
347         Reviewed by Dimitri Glazkov.
348
349         Fix a bunch of layout test crahses in Chromium caused by a bad usage of DEFINE_STATIC_LOCAL.
350
351         https://bugs.webkit.org/show_bug.cgi?id=26997
352
353         * bindings/v8/V8Binding.cpp:
354         (WebCore::v8ValueToWebCoreString): Use a regular static declaration instead of DEFINE_STATIC_LOCAL.
355
356 2009-07-06  Pavel Feldman  <pfeldman@chromium.org>
357
358         Reviewed by Timothy Hatcher.
359
360         WebInspector: suggest global properties based on async evaluation.
361
362         https://bugs.webkit.org/show_bug.cgi?id=26976
363
364         Before this change, empty string was evaluated to the global object
365         (or scope chain object) synchronously. This is now fixed and global
366         object is evaluated using the same control flow.
367
368         * inspector/front-end/Console.js:
369         (WebInspector.Console.prototype.completions):
370         (WebInspector.Console.prototype._evalInInspectedWindow):
371         * inspector/front-end/ScriptsPanel.js:
372         (WebInspector.ScriptsPanel.prototype._variablesInScope):
373
374 2009-07-06  Ojan Vafai  <ojan@chromium.org>
375
376         Reviewed by Eric Seidel.
377
378         Fix crash when indenting in an empty table cell.
379         https://bugs.webkit.org/show_bug.cgi?id=26872
380
381         The crash is that we would call splitTreeToNode where the node
382         and the nodeToSplitTo were the same node.
383
384         Test: editing/execCommand/indent-empty-table-cell.html
385
386         * editing/CompositeEditCommand.cpp:
387         (WebCore::CompositeEditCommand::splitTreeToNode):
388         Added an assert in that node and nodeToSplitTo
389         are different nodes to make this assumption explicit.
390
391         * editing/IndentOutdentCommand.cpp:
392         (WebCore::IndentOutdentCommand::isAtUnsplittableElement):
393         (WebCore::IndentOutdentCommand::indentRegion):
394         * editing/IndentOutdentCommand.h:
395
396 2009-07-06  Nate Chapin  <japhet@chromium.org>
397
398         Reviewed by David Levin.
399
400         Upstream V8Binding and update some function names.
401
402         https://bugs.webkit.org/show_bug.cgi?id=26857
403
404         * bindings/scripts/CodeGeneratorV8.pm: Update function names in auto-generated files.
405         * bindings/v8/V8Binding.cpp: Upstreamed from src.chromium.org.
406         * bindings/v8/V8Binding.h: Upstreamed from src.chromium.org.
407         * bindings/v8/V8LazyEventListener.cpp:
408         (WebCore::V8LazyEventListener::getListenerFunction):
409         * bindings/v8/V8Proxy.cpp:
410         (WebCore::handleConsoleMessage):
411         (WebCore::V8Proxy::compileScript):
412         (WebCore::V8Proxy::sourceName):
413         * bindings/v8/WorkerContextExecutionProxy.cpp:
414         (WebCore::handleConsoleMessage):
415         * bindings/v8/custom/V8CSSStyleDeclarationCustom.cpp:
416         (WebCore::NAMED_PROPERTY_SETTER):
417         * bindings/v8/custom/V8CanvasRenderingContext2DCustom.cpp:
418         (WebCore::CALLBACK_FUNC_DECL):
419         * bindings/v8/custom/V8CustomXPathNSResolver.cpp:
420         (WebCore::V8CustomXPathNSResolver::lookupNamespaceURI):
421         * bindings/v8/custom/V8DOMWindowCustom.cpp:
422         (WebCore::CALLBACK_FUNC_DECL):
423         * bindings/v8/custom/V8HTMLCanvasElementCustom.cpp:
424         (WebCore::CALLBACK_FUNC_DECL):
425         * bindings/v8/custom/V8HTMLIFrameElementCustom.cpp:
426         (WebCore::ACCESSOR_SETTER):
427         * bindings/v8/custom/V8HTMLOptionsCollectionCustom.cpp:
428         (WebCore::CALLBACK_FUNC_DECL):
429         * bindings/v8/custom/V8HTMLSelectElementCustom.cpp:
430         (WebCore::removeElement):
431         * bindings/v8/custom/V8SQLTransactionCustom.cpp:
432         (WebCore::CALLBACK_FUNC_DECL):
433         * bindings/v8/custom/V8WorkerContextCustom.cpp:
434         (WebCore::SetTimeoutOrInterval):
435         * bindings/v8/custom/V8XMLHttpRequestCustom.cpp:
436         (WebCore::CALLBACK_FUNC_DECL):
437
438 2009-07-06  Gustavo Noronha Silva  <gustavo.noronha@collabora.co.uk>
439
440         Reviewed by Jan Alonzo.
441
442         Use soup's content sniffing
443         https://bugs.webkit.org/show_bug.cgi?id=26982
444
445         Drop our hackish content sniffing code, and use the new libsoup
446         feature to do that job for us.
447
448         Testing this is in a cross-platform way is not obvious or possible
449         while we are using platform-specific code for sniffing.
450
451         * platform/network/ResourceHandleInternal.h:
452         (WebCore::ResourceHandleInternal::ResourceHandleInternal):
453         * platform/network/soup/ResourceHandleSoup.cpp:
454         (WebCore::gotHeadersCallback):
455         (WebCore::contentSniffedCallback):
456         (WebCore::gotChunkCallback):
457         (WebCore::ResourceHandle::startHttp):
458
459 2009-07-05  Antonio Gomes  <antonio.gomes@openbossa.org>
460
461         Reviewed by Darin Adler.
462
463         REGRESSION (r40499): fast/dom/cssTarget-crash.html fails
464         https://bugs.webkit.org/show_bug.cgi?id=20342
465
466         Re-added code removed by commit r40499.
467         Without this, both Qt and Mac were crashing while running the test.
468
469         Note that this does not entirely fix the bug. It fixes the WebCore
470         crash, but the test no longer seems to work due to loader changes.
471         So this patch does not reenable the test. The test probably has to
472         be rewritten.
473
474         * dom/ContainerNode.cpp:
475         (WebCore::ContainerNode::removedFromDocument): Re-added code to
476         set the CSS target of the document to 0.
477
478 2009-07-05  Chris Marrin  <cmarrin@apple.com>
479
480         Reviewed by Simon Fraser.
481
482         https://bugs.webkit.org/show_bug.cgi?id=26943
483
484         When one transition finishes slightly before another the longer
485         one will fire a second time. This is because the second
486         ImplicitAnmation object is culled too early, before its final
487         RenderStyle is in place. This is done by cleanupFinishedAnimations()
488         so I got rid of that method completely and now cleanup each
489         transition or animation at the point where I am setting the final
490         style, or when I detect that the transition or animation has been
491         terminated early (which happens when you remove it from the style).
492
493         Test: transitions/extra-transition.html
494
495         * page/animation/AnimationController.cpp:
496         (WebCore::AnimationControllerPrivate::updateStyleIfNeededDispatcherFired):
497         * page/animation/CompositeAnimation.cpp:
498         (WebCore::CompositeAnimation::updateTransitions):
499         (WebCore::CompositeAnimation::updateKeyframeAnimations):
500         (WebCore::CompositeAnimation::animate):
501         * page/animation/CompositeAnimation.h:
502
503         * page/animation/AnimationBase.cpp:
504         (WebCore::AnimationBase::getTimeToNextEvent):
505         Avoid a divide by zero if m_animation->duration() is zero, which can happen
506         if the duration is changed to zero while the animation is running.
507
508 2009-07-05  Simon Fraser  <simon.fraser@apple.com>
509
510         Revert the previous commit because it broke the
511         animations/transition-and-animation-1.html
512         testcase.
513
514         * page/animation/AnimationBase.cpp:
515         (WebCore::AnimationBase::getTimeToNextEvent):
516         * page/animation/AnimationController.cpp:
517         (WebCore::AnimationControllerPrivate::updateStyleIfNeededDispatcherFired):
518         * page/animation/CompositeAnimation.cpp:
519         (WebCore::CompositeAnimation::updateTransitions):
520         (WebCore::CompositeAnimation::updateKeyframeAnimations):
521         (WebCore::CompositeAnimation::animate):
522         (WebCore::CompositeAnimation::cleanupFinishedAnimations):
523         * page/animation/CompositeAnimation.h:
524
525 2009-07-05  Chris Marrin  <cmarrin@apple.com>
526
527         Reviewed by Simon Fraser.
528
529         https://bugs.webkit.org/show_bug.cgi?id=26943
530
531         When one transition finishes slightly before another the longer
532         one will fire a second time. This is because the second 
533         ImplicitAnmation object is culled too early, before its final
534         RenderStyle is in place. This is done by cleanupFinishedAnimations()
535         so I got rid of that method completely and now cleanup each 
536         transition or animation at the point where I am setting the final
537         style, or when I detect that the transition or animation has been
538         terminated early (which happens when you remove it from the style).
539
540         Test: transitions/extra-transition.html
541
542         * page/animation/AnimationController.cpp:
543         (WebCore::AnimationControllerPrivate::updateStyleIfNeededDispatcherFired):
544         * page/animation/CompositeAnimation.cpp:
545         (WebCore::CompositeAnimation::updateTransitions):
546         (WebCore::CompositeAnimation::updateKeyframeAnimations):
547         (WebCore::CompositeAnimation::animate):
548         * page/animation/CompositeAnimation.h:
549
550         * page/animation/AnimationBase.cpp:
551         (WebCore::AnimationBase::getTimeToNextEvent):
552         Avoid a divide by zero if m_animation->duration() is zero, which can happen
553         if the duration is changed to zero while the animation is running.
554
555 2009-07-05  Lars Knoll  <lars.knoll@nokia.com>
556
557         Reviewed by Maciej Stachowiak.
558
559         https://bugs.webkit.org/show_bug.cgi?id=26843
560
561         Fix run-time crashes in JavaScriptCore with the Metrowerks compiler on Symbian.
562
563         The Metrowerks compiler on the Symbian platform moves the globally
564         defined Hashtables into read-only memory, despite one of the members
565         being mutable. This causes crashes at run-time due to write access to
566         read-only memory.
567
568         Avoid the use of const with this compiler by introducing the
569         JSC_CONST_HASHTABLE macro.
570
571         Based on idea by Norbert Leser.
572
573         * bindings/scripts/CodeGeneratorJS.pm: Use JSC_CONST_HASHTABLE for hash tables
574         define in the bindings.
575
576 2009-07-05  Rob Buis  <rwlbuis@gmail.com>
577
578         Reviewed by Maciej Stachowiak.
579
580         Bug 26897 - Dynamic SVG images do not display correctly
581         https://bugs.webkit.org/show_bug.cgi?id=26897
582
583         Use repaint() to fix a rendering problem with a SVG image embedded in xhtml.
584
585         Test: svg/custom/createImageElement2.xhtml
586
587         * rendering/RenderSVGImage.cpp:
588         (WebCore::RenderSVGImage::imageChanged):
589
590 2009-07-05  Xan Lopez  <xlopez@igalia.com>
591
592         Reviewed by Jan Alonzo.
593
594         https://bugs.webkit.org/show_bug.cgi?id=26960
595         [Gtk] caret offset not updated when selecting text
596
597         Report the caret offset from the end of the selection so it works
598         correctly for multi-char selections too (ie, anything that is not
599         the zero width caret).
600
601         * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
602         (webkit_accessible_text_get_caret_offset):
603
604 2009-07-05  Holger Hans Peter Freyther  <zecke@selfish.org>
605
606         Unreviewed link fix for Qt.
607
608         Fix Qt link error by adding two new localized strings
609
610         In r45474 two new strings got added to LocalizedStrings.h add
611         the definition of them to Qt.
612
613         * platform/qt/Localizations.cpp:
614         (WebCore::mediaElementLoadingStateText):
615         (WebCore::mediaElementLiveBroadcastStateText):
616
617 2009-07-03  Darin Adler  <darin@apple.com>
618
619         Reviewed by Adele Peterson.
620
621         REGRESSION (r44670-r44680): Typing is suprisingly slow in password field on reddit.com
622         https://bugs.webkit.org/show_bug.cgi?id=26959
623         rdar://problem/7029882
624
625         The code to handle iteration boundaries was malfunctioning when the boundary was
626         at the edge of a shadow tree. This happens all the time with <input> elements.
627
628         It's not immediately obvious how to make a regression test for this since the
629         symptom was a performance problem, not incorrect behavior. I'll add a test if I
630         figure out a way to make one.
631
632         * editing/TextIterator.cpp:
633         (WebCore::parentCrossingShadowBoundaries): Renamed from parentOrShadowParent.
634         (WebCore::depthCrossingShadowBoundaries): Updated for name change.
635         (WebCore::nextInPreOrderCrossingShadowBoundaries): Added.
636         (WebCore::previousInPostOrderCrossingShadowBoundaries): Added.
637         (WebCore::setUpFullyClippedStack): Updated for name change.
638         (WebCore::TextIterator::TextIterator): Updated for name change. Use
639         nextInPreOrderCrossingShadowBoundaries instead of Range::pastLastNode to fix the bug.
640         (WebCore::TextIterator::advance): Updated for name change.
641         (WebCore::SimplifiedBackwardsTextIterator::SimplifiedBackwardsTextIterator):
642         Tweaked formatting.
643         (WebCore::SimplifiedBackwardsTextIterator::advance): Ditto. Changed code that
644         initializes m_pastStartNode to use previousInPostOrderCrossingShadowBoundaries.
645         (WebCore::SimplifiedBackwardsTextIterator::handleNonTextNode): Tweaked formatting.
646         (WebCore::SimplifiedBackwardsTextIterator::exitNode): Ditto.
647
648 2009-07-03  Simon Fraser  <simon.fraser@apple.com>
649
650         Reviewed by Sam Weinig.
651
652         Background audio stops playing when JS GC runs
653         https://bugs.webkit.org/show_bug.cgi?id=26956
654         
655         Ensure we keep the Audio object around while it is playing, so that it
656         doesn't get collected.
657         
658         Not testable because there's no way to know whether the audio keeps
659         playing without holding a reference to it.
660
661         * bindings/js/JSDOMBinding.cpp:
662         (WebCore::isObservableThroughDOM):
663
664 2009-07-02  Xan Lopez  <xlopez@igalia.com>
665
666         Reviewed by Jan Alonzo.
667
668         https://bugs.webkit.org/show_bug.cgi?id=26814
669         [Gtk] Caret-moved events are not issued for the correct offset
670         when text is selected forward
671
672         Report the caret offset from the end of the selection, otherwise
673         we'll report the same offset when moving the caret while
674         modififying the selection (eg, with Shift + Right).
675
676         * editing/gtk/SelectionControllerGtk.cpp:
677         (WebCore::SelectionController::notifyAccessibilityForSelectionChange):
678
679 2009-07-02  Xan Lopez  <xlopez@igalia.com>
680
681         Reviewed by Jan Alonzo.
682
683         https://bugs.webkit.org/show_bug.cgi?id=26815
684         [Gtk] text-selection-changed events are not issued for the correct
685         object when the selection spans multiple objects
686
687         Get the focused node from the end of the selection, not the start,
688         so we can detect when we cross object boundaries.
689
690         * editing/gtk/SelectionControllerGtk.cpp:
691         (WebCore::SelectionController::notifyAccessibilityForSelectionChange):
692
693 2009-07-02  Pierre d'Herbemont  <pdherbemont@apple.com>
694
695         Reviewed by Simon Fraser.
696
697         https://bugs.webkit.org/show_bug.cgi?id=26947
698
699         Fix the media controls hit tests. They may lose click events.
700
701         Test cases already covered in the video-controls-zoomed tests.
702
703         Don't trust wkHitTestMediaUIPart for the tests. We are accurate enough.
704
705         * rendering/RenderThemeMac.h: Remove hitTestMediaControlPart.
706         * rendering/RenderThemeMac.mm: Remove hitTestMediaControlPart.
707
708 2009-07-02  Roland Steiner  <rolandsteiner@google.com>
709
710         Reviewed by Eric Seidel.
711
712         RenderBlock and RenderInline have confusingly named object creation methods:
713         RenderBlock::createRootBox/createRootInlineBox
714         RenderInline::createFlowBox/createInlineFlowBox
715         where the 2nd method in both cases just calls the first and then appends the created object.
716         I therefore renamed those methods to something IMHO more informative:
717         
718         createRootBox()         -> createRootInlineBox()
719         createRootInlineBox()   -> createAndAppendRootInlineBox();
720         createFlowBox()         -> createInlineFlowBox();
721         createInlineFlowBox()   -> createAndAppendInlineFlowBox();
722
723         https://bugs.webkit.org/show_bug.cgi?id=26828
724
725         * rendering/RenderBlock.cpp:
726         (WebCore::RenderBlock::createRootInlineBox):
727         (WebCore::RenderBlock::createAndAppendRootInlineBox):
728         * rendering/RenderBlock.h:
729         * rendering/RenderInline.cpp:
730         (WebCore::RenderInline::createInlineFlowBox):
731         (WebCore::RenderInline::createAndAppendInlineFlowBox):
732         * rendering/RenderInline.h:
733         * rendering/RenderSVGInline.cpp:
734         (WebCore::RenderSVGInline::createInlineFlowBox):
735         * rendering/RenderSVGInline.h:
736         * rendering/RenderSVGText.cpp:
737         (WebCore::RenderSVGText::createRootInlineBox):
738         * rendering/RenderSVGText.h:
739         * rendering/bidi.cpp:
740         (WebCore::createInlineBoxForRenderer):
741
742 2009-07-02  Pavel Feldman  <pfeldman@chromium.org>
743
744         Reviewed by Timothy Hatcher.
745
746         WebInspector: Fix typo in the resource panel enabler caption.
747
748         https://bugs.webkit.org/show_bug.cgi?id=26753
749
750         * English.lproj/localizedStrings.js:
751         * inspector/front-end/ResourcesPanel.js:
752         (WebInspector.ResourcesPanel):
753
754 2009-07-02  Erik Arvidsson  <arv@chromium.org>
755
756         Reviewed by Adam Roben.
757
758         [Win] HTML5 Drag and drop, dragend is not fired when pressing Esc
759         https://bugs.webkit.org/show_bug.cgi?id=26699
760
761         * manual-tests/drag-escape.html: Added.
762         * page/EventHandler.cpp:
763         (WebCore::EventHandler::dragSourceEndedAt):
764
765 2009-07-02  Pierre d'Herbemont  <pdherbemont@apple.com>
766
767         Reviewed by Simon Fraser. 
768         
769         https://bugs.webkit.org/show_bug.cgi?id=26944
770
771         Make sure we support full page zoom in video controls.
772
773         This is tracked by a the video-controls-zoom test case.
774
775         * css/mediaControlsQT.css: Make sure we don't have any inherited margin.
776         * rendering/MediaControlElements.cpp:
777         (WebCore::MediaControlElement::updateStyle): Propagate the style to the innertext.
778         * rendering/RenderThemeMac.mm: Adjust the painting rect.
779         (WebCore::getUnzoomedRectAndAdjustCurrentContext):
780         (WebCore::RenderThemeMac::paintMediaSliderTrack):
781         (WebCore::RenderThemeMac::paintMediaCurrentTime):
782         (WebCore::RenderThemeMac::paintMediaTimeRemaining):
783
784 2009-07-02  Pierre d'Herbemont  <pdherbemont@apple.com>
785
786         Fix the Gtk build after r45474. The localized strings should
787         have been added there.
788
789         * platform/gtk/LocalizedStringsGtk.cpp:
790         (WebCore::mediaElementLoadingStateText):
791         (WebCore::mediaElementLiveBroadcastStateText):
792
793 2009-07-02  Pierre d'Herbemont  <pdherbemont@apple.com>
794
795         Reviewed by Simon Fraser.
796
797         https://bugs.webkit.org/show_bug.cgi?id=26939
798
799         Media controller is rendered badly at http://www.mozilla.com/en-US/firefox/video/firefox-3.5.html
800
801         We fix two things:
802         - We use px instead of em, because px is used everywhere else
803         and because 0.09em hit the font size limit.
804         - We use -webkit-box instead of inline-block because in strict mode
805         inline-block has a different behavior.
806
807         Test: media/controls-strict.html
808
809         * css/mediaControlsQT.css:
810
811 2009-07-02  David Hyatt  <hyatt@apple.com>
812
813         Reviewed by Dan Bernstein.
814
815         TextIterator should use hasOverflowClip when checking for overflow instead of looking at the style.
816         https://bugs.webkit.org/show_bug.cgi?id=26942
817
818         * editing/TextIterator.cpp:
819         (WebCore::fullyClipsContents):
820
821 2009-07-02  Sam Weinig  <sam@webkit.org>
822
823         Reviewed by Dave Hyatt.
824
825         Fix for <rdar://problem/5230700>
826         Remove local .xhtml file workaround
827
828         * platform/network/mac/ResourceResponseMac.mm:
829         (WebCore::ResourceResponse::platformLazyInit): Work around is no longer necessary.
830
831 2009-07-02  Anders Carlsson  <andersca@apple.com>
832
833         Reviewed by Dan Bernstein.
834
835         Sort, add functions used by WebKit.
836         
837         * WebCore.base.exp:
838
839 2009-07-02  Brady Eidson  <beidson@apple.com>
840
841         Rubberstamped by Sam Weinig.
842
843         More of <rdar://problem/6969425> Safari 4.0 doesn't recognize text/plain files if their extension is unknown.
844
845         * platform/network/mac/WebCoreURLResponse.mm:
846         (webNSURLResponseMIMEType): Give Tiger a chance to query the UTI machinery.
847
848 2009-07-02  Adam Langley  <agl@google.com>
849
850         Reviewed by Eric Seidel.
851
852         Chromium Linux: fix complex text rendering with line break characters.
853
854         https://bugs.webkit.org/show_bug.cgi?id=26935
855
856         If the CSS white-space property is inhibiting line breaking, we might
857         find end-of-line characters rendered via the complex text path. Fonts
858         don't provide glyphs for these code points so, if we find one, we
859         simulate the space glyph being interposed in this case.  Because the
860         input is variable-length per code point, we walk the input in step
861         with the output.
862
863         Covered by:
864             LayoutTests/fast/text/international/bidi-linebreak-002.html
865             LayoutTests/fast/text/international/bidi-linebreak-003.html
866             LayoutTests/fast/text/international/hindi-whitespace.html
867
868         * platform/graphics/chromium/HarfbuzzSkia.cpp:
869         (WebCore::stringToGlyphs):
870
871 2009-07-02  Victor Wang  <victorw@chromium.org>
872
873         Reviewed by Darin Fisher.
874
875         https://bugs.webkit.org/show_bug.cgi?id=26521
876         Expose file size to chromium.
877
878         Implement getFileSize() for Chromium.
879
880         * platform/chromium/ChromiumBridge.h:
881         * platform/chromium/FileSystemChromium.cpp:
882         (WebCore::getFileSize):
883
884 2009-07-02  Nate Chapin  <japhet@chromium.org>
885
886         Unreviewed, build fix.
887
888         * bindings/v8/V8SVGPODTypeWrapper.h: Lost a space in nested template argument list.
889
890 2009-07-02  Simon Fraser  <simon.fraser@apple.com>
891
892         Build fix: add missing #include.
893
894         * platform/mac/ThemeMac.mm:
895
896 2009-07-02  Simon Fraser  <simon.fraser@apple.com>
897
898         Reviewed by Dave Hyatt.
899
900         <rdar://problem/7028682> ThemeMac::paintRadio() throws Obj-C exceptions when zoomed
901
902         Add BEGIN_BLOCK_OBJC_EXCEPTIONS/END_BLOCK_OBJC_EXCEPTIONS guards around code
903         that can possibly throw Objective-C exceptions when drawing Mac form controls.
904
905         * platform/mac/ThemeMac.mm:
906         (WebCore::paintCheckbox):
907         (WebCore::paintRadio):
908         (WebCore::paintButton):
909         (WebCore::ThemeMac::inflateControlPaintRect):
910
911 2009-07-02  Nate Chapin  <japhet@chromium.org>
912
913         Reviewed by David Levin.
914
915         Upstream V8SVGPODTypeWrapper.
916
917         https://bugs.webkit.org/show_bug.cgi?id=26907
918
919         * bindings/scripts/CodeGeneratorV8.pm: Update function being renamed in V8SVGPODTypeWrapper.h.
920         * bindings/v8/V8SVGPODTypeWrapper.h: Upstreamed from src.chromium.org.
921
922 2009-07-02  Dumitru Daniliuc  <dumi@chromium.org>
923
924         Reviewed by Dimitri Glazkov.
925
926         Adds an abstraction layer between the DB classes and the file
927         system, which allows us to add our own logic for storing, opening,
928         deleting, etc. databases.
929
930         The patch was tested using the tests in WebCore/storage.
931
932         https://bugs.webkit.org/show_bug.cgi?id=26054
933
934         * GNUmakefile.am:
935         * WebCore.pro:
936         * WebCore.vcproj/WebCore.vcproj:
937         * WebCore.xcodeproj/project.pbxproj:
938         * platform/sql/SQLiteDatabase.cpp:
939         (WebCore::SQLiteDatabase::open): Delegating the job of opening DB files to SQLiteFileSystem to allow use of custom VFSs.
940         * platform/sql/SQLiteFileSystem.cpp: Added.
941         * platform/sql/SQLiteFileSystem.h: Added.
942         * platform/win/FileSystemWin.cpp:
943         (WebCore::directoryName): Implemented.
944         * storage/Database.cpp:
945         (WebCore::Database::databaseSize): The code that returns the size of a DB file moved to SQLiteFileSystem.
946         * storage/DatabaseTracker.cpp:
947         (WebCore::DatabaseTracker::DatabaseTracker): Added the ability to register a custom SQLite VFS.
948         (WebCore::DatabaseTracker::trackerDatabasePath): DB file-related operations moved to SQLiteFileSystem.
949         (WebCore::DatabaseTracker::openTrackerDatabase): DB file-related operations moved to SQLiteFileSystem.
950         (WebCore::DatabaseTracker::originPath): DB file-related operations moved to SQLiteFileSystem.
951         (WebCore::DatabaseTracker::fullPathForDatabase): DB file-related operations moved to SQLiteFileSystem.
952         (WebCore::DatabaseTracker::usageForDatabase): DB file-related operations moved to SQLiteFileSystem.
953         (WebCore::DatabaseTracker::deleteOrigin): DB file-related operations moved to SQLiteFileSystem.
954         (WebCore::DatabaseTracker::deleteDatabaseFile): DB file-related operations moved to SQLiteFileSystem.
955         * storage/OriginUsageRecord.cpp:
956         (WebCore::OriginUsageRecord::diskUsage): DB file-related operations moved to SQLiteFileSystem.
957
958 2009-07-02  David Hyatt  <hyatt@apple.com>
959
960         Reviewed by Simon Fraser.
961
962         Always clip replaced elements to border radii.
963         https://bugs.webkit.org/show_bug.cgi?id=26933
964
965         Make sure to always clip replaced elements to border radii, even when overflow is visible.
966         Stop defaulting those elements to overflow:hidden in the UA sheet, since it is now no longer
967         necessary.
968
969         Covered by existing tests (since the UA default changing keeps the behavior exactly the same).
970
971         * css/html.css:
972         * rendering/RenderReplaced.cpp:
973         (WebCore::RenderReplaced::paint):
974         * rendering/RenderWidget.cpp:
975         (WebCore::RenderWidget::paint):
976
977 2009-07-02  Jeremy Orlow  <jorlow@chromium.org>
978
979         Reviewed by Simon Fraser.
980
981         convertFromScrollbarToContainingView and friends should be in ScrollView
982         https://bugs.webkit.org/show_bug.cgi?id=26929
983
984         This is breaking Chromium's build because PopupMenuChromium inherits
985         from ScrollView, but these functions are pure virtual in it.  I could
986         put it directly in PopupMenuChromium, but that seems a bit silly since
987         the functions are fairly generic.
988
989         Passes existing layout tests.
990
991         * page/FrameView.cpp:  Remove the 4 functions Hyatt just added
992         (IntRect WebCore::FrameView::convertFromScrollbarToContainingView):
993         (IntRect WebCore::FrameView::convertFromContainingViewToScrollBar):
994         (IntPoint WebCore::FrameView::convertFromScrollbarToContainingView):
995         (IntPoint WebCore::FrameView::convertFromContainingViewToScrollBar):
996         * page/FrameView.h: ditto
997         * platform/ScrollView.cpp:  Move the 4 functions from FrameView here
998         (IntRect WebCore::ScrollView::convertFromScrollbarToContainingView):
999         (IntRect WebCore::ScrollView::convertFromContainingViewToScrollBar):
1000         (IntPoint WebCore::ScrollView::convertFromScrollbarToContainingView):
1001         (IntPoint WebCore::ScrollView::convertFromContainingViewToScrollBar):
1002         * platform/ScrollView.h: ditto
1003
1004 2009-07-02  Dirk Pranke  <dpranke@chromium.org>
1005
1006         Reviewed by Darin Fisher.
1007
1008         Fix https://bugs.webkit.org/show_bug.cgi?id=26088 - TransparencyWin 
1009         doesn't handle errors well at all; revise it to fail silently 
1010         (drawing nothing), and bulletproof FontChromiumWin to handle the
1011         failure accordingly.
1012
1013         Tests: fast/text/text-large-negative-letter-spacing-with-opacity.html
1014                fast/text/text-letter-spacing.html
1015
1016         * platform/graphics/chromium/FontChromiumWin.cpp:
1017         (WebCore::TransparencyAwareFontPainter::TransparencyAwareFontPainter::initializeForGDI):
1018         (WebCore::TransparencyAwareFontPainter::TransparencyAwareFontPainter::~TransparencyAwareFontPainter):
1019         (WebCore::TransparencyAwareFontPainter::TransparencyAwareGlyphPainter::TransparencyAwareGlyphPainter):
1020         (WebCore::TransparencyAwareFontPainter::TransparencyAwareGlyphPainter::~TransparencyAwareGlyphPainter):
1021         (WebCore::TransparencyAwareFontPainter::TransparencyAwareGlyphPainter::drawGlyphs):
1022         (WebCore::Font::drawGlyphs):
1023         (WebCore::Font::drawComplexText):
1024         * platform/graphics/chromium/TransparencyWin.cpp:
1025         (WebCore::TransparencyWin::TransparencyWin):
1026         (WebCore::TransparencyWin::setupLayerForNoLayer):
1027         (WebCore::TransparencyWin::setupLayerForOpaqueCompositeLayer):
1028         (WebCore::TransparencyWin::setupLayerForWhiteLayer):
1029         (WebCore::TransparencyWin::setupTransformForKeepTransform):
1030         (WebCore::TransparencyWin::setupTransformForScaleTransform):
1031         (WebCore::TransparencyWin::initializeNewContext):
1032         (WebCore::TransparencyWin::compositeOpaqueComposite):
1033         (WebCore::TransparencyWin::compositeTextComposite):
1034         (WebCore::TransparencyWin::makeLayerOpaque):
1035         * platform/graphics/chromium/TransparencyWin.h:
1036         (WebCore::TransparencyWin::platformContext):
1037
1038 2009-07-02  Eric Carlson  <eric.carlson@apple.com>
1039
1040         Change #import to #include to fix non-ObjC builds.
1041
1042         * rendering/MediaControlElements.cpp:
1043
1044 2009-07-02  Anders Carlsson  <andersca@apple.com>
1045
1046         Build fix.
1047         
1048         * platform/network/mac/WebCoreURLResponse.mm:
1049         (mimeTypeFromUTITree):
1050
1051 2009-07-02  David Hyatt  <hyatt@apple.com>
1052
1053         Reviewed by Simon Fraser.
1054
1055         Fix for bug 22119, clicks in the scrollbars of transformed content don't work.  Add new
1056         conversion methods for going across parent/child widget boundaries that can be implemented
1057         by the FrameView and ScrollbarClient to be transform-aware.
1058
1059         Test cases added in platform/mac/fast/forms and platform/mac/fast/overflow.
1060
1061         * WebCore.base.exp:
1062         * page/EventHandler.cpp:
1063         (WebCore::EventHandler::handleMouseMoveEvent):
1064         * page/FrameView.cpp:
1065         (WebCore::FrameView::convertFromScrollbarToContainingView):
1066         (WebCore::FrameView::convertFromContainingViewToScrollbar):
1067         (WebCore::FrameView::convertFromRenderer):
1068         (WebCore::FrameView::convertToRenderer):
1069         (WebCore::FrameView::convertToContainingView):
1070         (WebCore::FrameView::convertFromContainingView):
1071         * page/FrameView.h:
1072         * platform/ScrollView.h:
1073         * platform/Scrollbar.cpp:
1074         (WebCore::Scrollbar::convertToContainingView):
1075         (WebCore::Scrollbar::convertFromContainingView):
1076         * platform/Scrollbar.h:
1077         * platform/ScrollbarClient.h:
1078         (WebCore::ScrollbarClient::convertFromScrollbarToContainingView):
1079         (WebCore::ScrollbarClient::convertFromContainingViewToScrollbar):
1080         * platform/Widget.cpp:
1081         (WebCore::Widget::convertFromContainingWindow):
1082         (WebCore::Widget::convertToContainingWindow):
1083         (WebCore::Widget::convertFromRootToContainingWindow):
1084         (WebCore::Widget::convertFromContainingWindowToRoot):
1085         (WebCore::Widget::convertToContainingView):
1086         (WebCore::Widget::convertFromContainingView):
1087         * platform/Widget.h:
1088         * platform/graphics/IntPoint.h:
1089         (WebCore::IntPoint::move):
1090         * platform/mac/WidgetMac.mm:
1091         (WebCore::Widget::convertFromRootToContainingWindow):
1092         (WebCore::Widget::convertFromContainingWindowToRoot):
1093         * rendering/RenderBlock.cpp:
1094         (WebCore::RenderBlock::isPointInOverflowControl):
1095         * rendering/RenderDataGrid.cpp:
1096         (WebCore::RenderDataGrid::convertFromScrollbarToContainingView):
1097         (WebCore::RenderDataGrid::convertFromContainingViewToScrollbar):
1098         * rendering/RenderDataGrid.h:
1099         * rendering/RenderLayer.cpp:
1100         (WebCore::RenderLayer::convertFromScrollbarToContainingView):
1101         (WebCore::RenderLayer::convertFromContainingViewToScrollbar):
1102         (WebCore::RenderLayer::scrollbarOffset):
1103         (WebCore::RenderLayer::hitTestOverflowControls):
1104         * rendering/RenderLayer.h:
1105         * rendering/RenderListBox.cpp:
1106         (WebCore::RenderListBox::isPointInOverflowControl):
1107         (WebCore::RenderListBox::convertFromScrollbarToContainingView):
1108         (WebCore::RenderListBox::convertFromContainingViewToScrollbar):
1109         * rendering/RenderListBox.h:
1110
1111 2009-07-02  Dan Bernstein  <mitz@apple.com>
1112
1113         Reviewed by Dave Hyatt and Simon Fraser.
1114
1115         - fix <rdar://problem/6933052> SPOD playing video in a div with a box
1116           shadow
1117
1118         Test: fast/box-shadow/transform-fringing.html
1119
1120         * rendering/RenderBoxModelObject.cpp:
1121         (WebCore::RenderBoxModelObject::paintBoxShadow): Clip out the
1122         box even if it has an opaque background, but in that case, inset the
1123         clip path by 1 pixel, to avoid antialiasing artifacts.
1124         Do not inset the clip rect by 1 pixel if the CTM is purely a
1125         translation.
1126         Move the shadow-casting path away in the non-rounded-rect case (it
1127         was already being done in the rounded-rect case), to avoid a black
1128         fringe when the CTM is not purely a translation.
1129
1130 2009-07-02  Brady Eidson  <beidson@apple.com>
1131
1132         Reviewed by Sam Weinig.
1133
1134         <rdar://problem/6969425> Safari 4.0 doesn't recognize text/plain files if their extension is unknown.
1135
1136         Walk the CoreTypes UTI tree for extensions with unknown MIME types, using the first MIME type found.
1137
1138         For many types of text files (such as source code files) this ends up being text/plain.
1139
1140         * platform/network/mac/ResourceHandleMac.mm:
1141         (-[WebCoreResourceHandleAsDelegate connection:didReceiveResponse:]): Tweak the logging output.
1142
1143         * platform/network/mac/WebCoreURLResponse.h:
1144         * platform/network/mac/WebCoreURLResponse.mm:
1145         (mimeTypeFromUTITree): 
1146         (webNSURLResponseMIMEType): Use mimeTypeFromUTITree() to find a UTI-based MIME type for this file's extension.
1147         (-[NSURLResponse _webcore_reportedMIMEType]): Return the actual MIME type that CFNetwork gave us.
1148
1149 2009-07-02  Pierre d'Herbemont  <pdherbemont@apple.com>
1150
1151         Reviewed by Simon Fraser.
1152
1153         <rdar://problem/6518119>
1154
1155         Add a rewind button and hide the timeline for live broadcasts when
1156         in MediaUI mode.
1157
1158         * css/CSSPrimitiveValueMappings.h: 
1159         (WebCore::CSSPrimitiveValue::CSSPrimitiveValue): Add the new pseudo element.
1160
1161         * css/CSSSelector.cpp:
1162         (WebCore::CSSSelector::extractPseudoType): Ditto.
1163         * css/CSSSelector.h: 
1164
1165         * css/CSSStyleSelector.cpp:
1166         (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector): Ditto.
1167
1168         * css/CSSValueKeywords.in: Ditto.
1169         * css/mediaControls.css: Ditto.
1170         * css/mediaControlsQT.css: Ditto.
1171
1172         * html/HTMLMediaElement.cpp:
1173         (WebCore::HTMLMediaElement::rewind): New.
1174         (WebCore::HTMLMediaElement::returnToRealTime): New.
1175         (WebCore::HTMLMediaElement::isStreaming): New.
1176         * html/HTMLMediaElement.h:
1177
1178         * page/mac/WebCoreViewFactory.h: Declare mediaElementLoadingStateText and mediaElementLiveBroadcastStateText.
1179
1180         * platform/LocalizedStrings.h: Add localized media state messages.
1181
1182         * platform/ThemeTypes.h: Add the new pseudo element.
1183
1184         * platform/mac/LocalizedStringsMac.mm: 
1185         (WebCore::mediaElementLoadingStateText): Add localized media state.
1186         (WebCore::mediaElementLiveBroadcastStateText): Ditto.
1187
1188         * platform/mac/WebCoreSystemInterface.h: Change BOOL param wkDrawMediaUIPart to an int to support
1189            multiple states.
1190         * platform/mac/WebCoreSystemInterface.mm: Ditto.
1191
1192         * rendering/MediaControlElements.cpp: 
1193         (WebCore::MediaControlElement::MediaControlElement): Deal with new elements.
1194         (WebCore::MediaControlElement::attachToParent): Ditto.
1195         (WebCore::MediaControlElement::update): Ditto.
1196         (WebCore::MediaControlElement::updateStyle): Ditto.
1197         (WebCore::MediaControlTimelineContainerElement::MediaControlTimelineContainerElement): Ditto.
1198         (WebCore::MediaControlTimelineContainerElement::rendererIsNeeded): Ditto.
1199         (WebCore::MediaControlStatusDisplayElement::MediaControlStatusDisplayElement): Ditto.
1200         (WebCore::MediaControlStatusDisplayElement::update): Ditto.
1201         (WebCore::MediaControlStatusDisplayElement::rendererIsNeeded): Ditto.
1202         (WebCore::MediaControlInputElement::MediaControlInputElement): Ditto.
1203         (WebCore::MediaControlInputElement::attachToParent): Ditto.
1204         (WebCore::MediaControlInputElement::updateStyle): Ditto.
1205         (WebCore::MediaControlRewindButtonElement::MediaControlRewindButtonElement): Ditto.
1206         (WebCore::MediaControlRewindButtonElement::defaultEventHandler): Ditto.
1207         (WebCore::MediaControlReturnToRealtimeButtonElement::MediaControlReturnToRealtimeButtonElement): Ditto.
1208         (WebCore::MediaControlReturnToRealtimeButtonElement::defaultEventHandler): Ditto.
1209         (WebCore::MediaControlReturnToRealtimeButtonElement::rendererIsNeeded): Ditto.
1210         (WebCore::MediaControlTimelineElement::defaultEventHandler): Ditto.
1211         (WebCore::MediaControlTimelineElement::update): Ditto.
1212         (WebCore::MediaControlFullscreenButtonElement::rendererIsNeeded): Ditto.
1213         * rendering/MediaControlElements.h: Ditto.
1214
1215         * rendering/RenderMedia.cpp: 
1216         (WebCore::RenderMedia::styleDidChange): Deal with the new elements.
1217         (WebCore::RenderMedia::createPanel): Ditto.
1218         (WebCore::RenderMedia::createRewindButton): Ditto.
1219         (WebCore::RenderMedia::createReturnToRealtimeButton): Ditto.
1220         (WebCore::RenderMedia::createStatusDisplay): Ditto.
1221         (WebCore::RenderMedia::createTimelineContainer): Ditto.
1222         (WebCore::RenderMedia::createCurrentTimeDisplay): Ditto.
1223         (WebCore::RenderMedia::createTimeRemainingDisplay): Ditto.
1224         (WebCore::RenderMedia::updateControls): Ditto.
1225         (WebCore::RenderMedia::forwardEvent): Ditto.
1226         * rendering/RenderMedia.h:
1227
1228         * rendering/RenderTheme.cpp:
1229         (WebCore::RenderTheme::paint): Deal with the new elements.
1230
1231         * rendering/RenderTheme.h:
1232         (WebCore::RenderTheme::paintMediaRewindButton): Deal with the new elements.
1233         (WebCore::RenderTheme::paintMediaReturnToRealtimeButton): Ditto.
1234         (WebCore::RenderTheme::paintMediaControlsBackground): Ditto.
1235
1236         * rendering/RenderThemeMac.h:
1237         * rendering/RenderThemeMac.mm:
1238         (WebCore::RenderThemeMac::paintMediaRewindButton): Deal with the new elements.
1239         (WebCore::RenderThemeMac::paintMediaReturnToRealtimeButton): Ditto.
1240         (WebCore::RenderThemeMac::paintMediaControlsBackground): Ditto.
1241
1242         * rendering/style/RenderStyleConstants.h: Add constants for the new elements.
1243
1244 2009-07-01  John Abd-El-Malek  <jam@chromium.org>
1245
1246         Reviewed by Darin Fisher.
1247
1248         Small refactoring of MessagePortChannel so that PlatformMessagePortChannel
1249         may be defined at the WebKit layer.
1250
1251         https://bugs.webkit.org/show_bug.cgi?id=26905
1252
1253         * dom/MessageChannel.cpp:
1254         (WebCore::MessageChannel::MessageChannel):
1255         * dom/MessagePortChannel.cpp:
1256         * dom/MessagePortChannel.h:
1257         * dom/default/PlatformMessagePortChannel.cpp:
1258         (WebCore::MessagePortChannel::createChannel):
1259         (WebCore::MessagePortChannel::create):
1260         (WebCore::MessagePortChannel::MessagePortChannel):
1261         (WebCore::MessagePortChannel::~MessagePortChannel):
1262
1263 2009-07-01  Simon Fraser  <simon.fraser@apple.com>
1264
1265         Reviewed by Dan Bernstein.
1266
1267         <video> fails to show on http://camendesign.com/code/video_for_everybody
1268         <rdar://problem/7026010>
1269         https://bugs.webkit.org/show_bug.cgi?id=26919
1270
1271         Fix an issue introduced in r44961. In that revision we changed to only update
1272         compositing layer geometry when all siblings had been laid out (i.e. we pushed
1273         the updates one level down). However, that left out the root layer, so this
1274         fix ensures that the root layer geometry gets updated at the end.
1275
1276         Test: compositing/geometry/root-layer-update.html
1277
1278         * rendering/RenderLayerBacking.cpp:
1279         (WebCore::RenderLayerBacking::updateAfterLayout):
1280
1281 2009-07-01  Simon Fraser  <simon.fraser@apple.com>
1282
1283         Reviewed by Dan Bernstein
1284         
1285         <rdar://problem/7026010> <video> fails to show on http://camendesign.com/code/video_for_everybody
1286
1287         First part of fix: when outline width changes, don't to a synchronous
1288         layer update right away, but just set the flag to say that compositing
1289         layers need updating. The synchronous layer update left the layer geometries
1290         out of whack when it happened in the middle of layout (e.g. when inside ::first-letter).
1291         
1292         Test: compositing/geometry/outline-change.html
1293
1294         * rendering/RenderView.cpp:
1295         (WebCore::RenderView::setMaximalOutlineSize):
1296
1297 2009-07-01  Kwang Yul Seo  <skyul@company100.net>
1298
1299         Reviewed by Eric Seidel.
1300
1301         https://bugs.webkit.org/show_bug.cgi?id=26842
1302         Build fix when ENABLE_DATABASE is off
1303
1304         Move Database.h into ENABLE(DATABASE) guard so toggling ENABLE_DATABASE
1305         off does not break builds.
1306
1307         * bindings/js/ScriptObjectQuarantine.cpp:
1308
1309 2009-07-01  Daniel Bates  <dbates@intudata.com>
1310
1311         Reviewed by Adam Barth.
1312         
1313         https://bugs.webkit.org/show_bug.cgi?id=26899
1314         
1315         Modified XSSAuditor::decodeURL to only remove null characters so that 
1316         it is consistent with the behavior of HTMLTokenizer and prevents 
1317         injected scripts that contain control characters. 
1318
1319         Tests: http/tests/security/xssAuditor/script-tag-control-char.html
1320                http/tests/security/xssAuditor/script-tag-null-char.html
1321
1322         * page/XSSAuditor.cpp:
1323         (WebCore::XSSAuditor::decodeURL): Modified to only remove null characters. 
1324         * page/XSSAuditor.h: Reverted naming of third argument of method XSSAuditor::decodeURL
1325         from allowControlCharacters back to allowNullCharacters.
1326         * platform/network/ResourceResponseBase.cpp: Reverted back to rev #45003.
1327         (WebCore::isControlCharacter):
1328         * platform/network/ResourceResponseBase.h: Reverted back to rev #45003.  
1329
1330 2009-07-01  Yury Semikhatsky  <yurys@chromium.org>
1331
1332         Reviewed by Timothy Hatcher.
1333
1334         - supported keyboard shortcuts compatible with Firebug in Scripts Debugger:
1335         F5, Ctrl+/ (win,lin), Command+/ (mac) - continue
1336         F10, Ctrl+' (win, lin), Command+' (mac) - step over
1337         F11, Ctrl+; (win, lin), Command+; (mac) - step into
1338         Shift+F11, Ctrl+Shift+; (win, lin), Command+Shift+; (mac) - step out
1339
1340         - added call stack navigation shortcuts:
1341         Ctrl+. - next call frame
1342         Ctrl+, - previouse call frame
1343
1344         https://bugs.webkit.org/show_bug.cgi?id=23849
1345
1346         * inspector/front-end/CallStackSidebarPane.js:
1347         (WebInspector.CallStackSidebarPane):
1348         (WebInspector.CallStackSidebarPane.prototype.handleKeyEvent):
1349         (WebInspector.CallStackSidebarPane.prototype._selectNextCallFrameOnStack):
1350         (WebInspector.CallStackSidebarPane.prototype._selectPreviousCallFrameOnStack):
1351         (WebInspector.CallStackSidebarPane.prototype._selectedPlacardByIndex):
1352         (WebInspector.CallStackSidebarPane.prototype._selectedCallFrameIndex):
1353         * inspector/front-end/KeyboardShortcut.js: Added.
1354         (WebInspector.KeyboardShortcut):
1355         (WebInspector.KeyboardShortcut.makeKey):
1356         (WebInspector.KeyboardShortcut.makeKeyFromEvent):
1357         (WebInspector.KeyboardShortcut.makeKeyFromCodeAndModifiers_):
1358         * inspector/front-end/ScriptsPanel.js:
1359         (WebInspector.ScriptsPanel):
1360         (WebInspector.ScriptsPanel.prototype.handleKeyEvent):
1361         * inspector/front-end/WebKit.qrc:
1362         * inspector/front-end/inspector.html:
1363
1364 2009-07-01  Daniel Erat  <derat@google.com>
1365
1366         Reviewed by David Levin.
1367
1368         Chromium Linux: Move the scrollbar thumb on middle-click.
1369
1370         https://bugs.webkit.org/show_bug.cgi?id=26910
1371         http://code.google.com/p/chromium/issues/detail?id=11976
1372
1373         Tested by building Chrome and checking that the scrollbar moves as expected.
1374
1375         * platform/chromium/ScrollbarThemeChromium.cpp:
1376         * platform/chromium/ScrollbarThemeChromium.h:
1377         * platform/chromium/ScrollbarThemeChromiumLinux.cpp:
1378         * platform/chromium/ScrollbarThemeChromiumLinux.h:
1379         * platform/chromium/ScrollbarThemeChromiumWin.cpp:
1380         * platform/chromium/ScrollbarThemeChromiumWin.h:
1381
1382 2009-07-01  Brady Eidson  <beidson@apple.com>
1383
1384         Reviewed by Sam Weinig.
1385
1386         Add a preference/setting to toggle whether content sniffing is enabled for file URLs.
1387
1388         * WebCore.base.exp:
1389
1390         * page/Settings.cpp:
1391         (WebCore::Settings::setLocalFileContentSniffingEnabled):
1392         * page/Settings.h:
1393         (WebCore::Settings::localFileContentSniffingEnabled):
1394
1395         * platform/network/mac/ResourceHandleMac.mm:
1396         (WebCore::ResourceHandle::start):
1397         (-[WebCoreResourceHandleAsDelegate connection:didReceiveResponse:]):
1398
1399 2009-07-01  Chris Fleizach  <cfleizach@apple.com>
1400
1401         Reviewed by Oliver Hunt.
1402
1403         Bug 26909: aria-label needs to be supported
1404         https://bugs.webkit.org/show_bug.cgi?id=26909
1405
1406         Test: accessibility/aria-label.html
1407
1408         * accessibility/AccessibilityRenderObject.cpp:
1409         (WebCore::AccessibilityRenderObject::accessibilityDescription):
1410         * html/HTMLAttributeNames.in:
1411
1412 2009-07-01  David Hyatt  <hyatt@apple.com>
1413
1414         Reviewed by Oliver Hunt.
1415
1416         More datagrid columns work.  Make sure columns cache both a style for the column header as well
1417         as a style for the column background (behind the cells).
1418
1419         Hook up to CSSStyleSelector methods for obtaining the pseudo styles for columns (stubbed out and
1420         unimplemented).
1421
1422         * css/CSSStyleSelector.cpp:
1423         (WebCore::CSSStyleSelector::pseudoStyleForDataGridColumn):
1424         (WebCore::CSSStyleSelector::pseudoStyleForDataGridColumnHeader):
1425         * css/CSSStyleSelector.h:
1426         * html/DataGridColumn.h:
1427         (WebCore::DataGridColumn::setColumnList):
1428         (WebCore::DataGridColumn::columnStyle):
1429         (WebCore::DataGridColumn::setColumnStyle):
1430         (WebCore::DataGridColumn::headerStyle):
1431         (WebCore::DataGridColumn::setHeaderStyle):
1432         * rendering/RenderDataGrid.cpp:
1433         (WebCore::RenderDataGrid::recalcStyleForColumn):
1434         (WebCore::RenderDataGrid::columnStyle):
1435         (WebCore::RenderDataGrid::headerStyle):
1436         (WebCore::RenderDataGrid::paintColumnHeaders):
1437         * rendering/RenderDataGrid.h:
1438
1439 2009-07-01  Eric Carlson  <eric.carlson@apple.com>
1440
1441         Reviewed by Oliver Hunt.
1442         
1443         <rdar://problem/7009870> After <audio> movie finishes playing, Pause button fails to change 
1444         back to Play button
1445
1446         Grab onto the current time when QTKit "ended" notification fires and use it as 
1447         duration from that point on as QuickTime sometimes refuses to play all the way to
1448         the time it reports for duration and buffered. HTMLMediaElement assumes that there
1449         more to play in this situation and tries to restart playback, endlessly.
1450
1451         * platform/graphics/mac/MediaPlayerPrivateQTKit.h:
1452             Rename m_duration to m_reportedDuration. Declare m_cachedDuration.
1453         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
1454         (WebCore::MediaPlayerPrivate::MediaPlayerPrivate):
1455             Rename m_duration to m_reportedDuration. Initialize m_cachedDuration.
1456         (WebCore::MediaPlayerPrivate::duration):
1457             Return m_cachedDuration once it has been set.
1458         (WebCore::MediaPlayerPrivate::updateStates):
1459             Rename m_duration to m_reportedDuration.
1460         (WebCore::MediaPlayerPrivate::didEnd):
1461             Set m_cachedDuration to currentTime().
1462
1463 2009-07-01  Chris Fleizach  <cfleizach@apple.com>
1464
1465         Reviewed by Beth Dakin.
1466
1467         Bug 26900: AX: Manual spell check with Command-; does not bring up suggestions
1468         https://bugs.webkit.org/show_bug.cgi?id=26900
1469
1470         Editable web areas should have a clickpoint that uses where the selection is.
1471
1472         Test: accessibility/editable-webarea-context-menu-point.html
1473
1474         * accessibility/AccessibilityObject.h:
1475         * accessibility/AccessibilityRenderObject.cpp:
1476         (WebCore::AccessibilityRenderObject::clickPoint):
1477         * accessibility/AccessibilityRenderObject.h:
1478         * accessibility/mac/AccessibilityObjectWrapper.mm:
1479         (-[AccessibilityObjectWrapper accessibilityAttributeValue:]):
1480
1481 2009-07-01  David Levin  <levin@chromium.org>
1482
1483         Reviewed by Eric Seidel.
1484
1485         Remove unused code in SVGTransformList and SVGTransformDistance
1486         <https://bugs.webkit.org/show_bug.cgi?id=26891>
1487
1488         * svg/SVGTransformDistance.cpp:
1489         (WebCore::SVGTransformDistance::SVGTransformDistance):
1490         * svg/SVGTransformList.cpp:
1491         * svg/SVGTransformList.h:
1492
1493 2009-07-01  David Hyatt  <hyatt@apple.com>
1494
1495         Reviewed by Anders Carlsson.
1496
1497         Begin stubbing out functions for layout, painting and style/geometry caching on columns.  Not enough
1498         is implemented for this to do much of anything yet, but it should help keep patch sizes down. :)
1499
1500         * html/DataGridColumn.cpp:
1501         (WebCore::DataGridColumn::columnChanged):
1502         * html/DataGridColumn.h:
1503         (WebCore::DataGridColumn::setId):
1504         (WebCore::DataGridColumn::setLabel):
1505         (WebCore::DataGridColumn::setType):
1506         (WebCore::DataGridColumn::setSortable):
1507         (WebCore::DataGridColumn::setSortDirection):
1508         (WebCore::DataGridColumn::setColumnList):
1509         (WebCore::DataGridColumn::style):
1510         (WebCore::DataGridColumn::setStyle):
1511         (WebCore::DataGridColumn::rect):
1512         (WebCore::DataGridColumn::setRect):
1513         * html/DataGridColumnList.cpp:
1514         (WebCore::DataGridColumnList::DataGridColumnList):
1515         (WebCore::DataGridColumnList::setDataGridNeedsLayout):
1516         (WebCore::DataGridColumnList::add):
1517         (WebCore::DataGridColumnList::remove):
1518         (WebCore::DataGridColumnList::move):
1519         (WebCore::DataGridColumnList::clear):
1520         (WebCore::DataGridColumnList::primaryColumnChanged):
1521         * html/DataGridColumnList.h:
1522         (WebCore::DataGridColumnList::create):
1523         (WebCore::DataGridColumnList::dataGrid):
1524         (WebCore::DataGridColumnList::clearDataGrid):
1525         * html/HTMLDataGridColElement.cpp:
1526         (WebCore::HTMLDataGridColElement::HTMLDataGridColElement):
1527         (WebCore::HTMLDataGridColElement::findDataGridAncestor):
1528         (WebCore::HTMLDataGridColElement::insertedIntoTree):
1529         (WebCore::HTMLDataGridColElement::removedFromTree):
1530         * html/HTMLDataGridColElement.h:
1531         (WebCore::HTMLDataGridColElement::dataGrid):
1532         * html/HTMLDataGridElement.cpp:
1533         (WebCore::HTMLDataGridElement::HTMLDataGridElement):
1534         (WebCore::HTMLDataGridElement::~HTMLDataGridElement):
1535         * rendering/RenderDataGrid.cpp:
1536         (WebCore::RenderDataGrid::styleDidChange):
1537         (WebCore::RenderDataGrid::recalcStyleForColumns):
1538         (WebCore::RenderDataGrid::recalcStyleForColumn):
1539         (WebCore::RenderDataGrid::styleForColumn):
1540         (WebCore::RenderDataGrid::layout):
1541         (WebCore::RenderDataGrid::layoutColumns):
1542         (WebCore::RenderDataGrid::paintColumnHeaders):
1543         (WebCore::RenderDataGrid::paintColumnHeader):
1544         * rendering/RenderDataGrid.h:
1545         (WebCore::RenderDataGrid::renderName):
1546         (WebCore::RenderDataGrid::canHaveChildren):
1547
1548 2009-07-01  Daniel Bates  <dbates@intudata.com>
1549
1550         Reviewed by Adam Barth.
1551
1552         https://bugs.webkit.org/show_bug.cgi?id=26807
1553         
1554         Fixes this address by checking whether frame->document()->decoder() is null. 
1555
1556         * page/XSSAuditor.cpp:
1557         (WebCore::XSSAuditor::findInRequest):
1558
1559 2009-07-01  Nikolas Zimmermann  <nikolas.zimmermann@torchmobile.com>
1560
1561         Reviewed by George Staikos.
1562
1563         Fixes: https://bugs.webkit.org/show_bug.cgi?id=26885
1564
1565         Correctly reset history length to '0', not '1'. Old relict from early WML days.
1566         Add some new WML testcases covering the use of history length (by onenterforward event handling)
1567
1568         Tests: wml/onenterforward-event.html
1569                wml/onenterforward-inline-event.html
1570                wml/ontimer-event.html
1571  
1572         * wml/WMLPageState.cpp:
1573         (WebCore::WMLPageState::reset):
1574
1575 2009-07-01  David Hyatt  <hyatt@apple.com>
1576
1577         Reviewed by Simon Fraser.
1578
1579         Make sure setting attributes on dcol elements properly updates the corresponding DataGridColumn object.
1580
1581         Added new test in fast/dom/HTMLDataGridElement.
1582
1583         * html/HTMLDataGridColElement.cpp:
1584         (WebCore::HTMLDataGridColElement::parseMappedAttribute):
1585         * html/HTMLDataGridColElement.h:
1586
1587 2009-07-01  David Hyatt  <hyatt@apple.com>
1588
1589         Reviewed by Tim Hatcher.
1590
1591         <rdar://problem/6998524> REGRESSION (r44474): Form text field has focus ring, looks focused,
1592         even though the field is not actually focused for keyboard input
1593         
1594         Add the concept of whether or not the Page is focused by adding a boolean to the focusController.  This allows the
1595         focused frame and focused node to both be cached and changed programmatically even when the Page itself doesn't
1596         actually happen to have focus at that time.
1597
1598         * WebCore.base.exp:
1599         * page/FocusController.cpp:
1600         (WebCore::FocusController::FocusController):
1601         (WebCore::FocusController::setFocusedFrame):
1602         (WebCore::FocusController::setFocused):
1603         (WebCore::FocusController::setActive):
1604         * page/FocusController.h:
1605         (WebCore::FocusController::isFocused):
1606
1607 2009-07-01  Jakub Wieczorek  <faw217@gmail.com>
1608
1609         Reviewed by Simon Hausmann.
1610
1611         [Qt] Move some API headers from WebCore.pro to headers.pri so that they
1612         get installed when running make install from the build directory.
1613
1614         * WebCore.pro:
1615
1616 2009-07-01  Simon Hausmann  <simon.hausmann@nokia.com>
1617
1618         Rubber-stamped by Ariya Hidayat.
1619
1620         Ran WebKitTools/Scripts/generate-qt-inspector-resource to update the
1621         qrc file with new png files from the web inspector.
1622
1623         * inspector/front-end/WebKit.qrc:
1624
1625 2009-06-30  Mark Rowe  <mrowe@apple.com>
1626
1627         Land some code that has a hope of compiling.
1628
1629         * platform/graphics/cg/ImageSourceCG.cpp:
1630         (WebCore::imageSourceOptions):
1631
1632 2009-06-30  Stephanie Lewis  <slewis@apple.com>
1633
1634         Reviewed by Simon Fraser.
1635
1636         Flip back on block caching. Throwing away block data, while 
1637         a perceived memory win, is a performance hit in cases where we 
1638         are repainting large images (i.e. backgrounds) frequently 
1639         (i.e. a flash video playing on top).  
1640         <rdar://problem/6933515> REGRESSION(L-SL): Large JPEG images are 
1641         decoded on drawing, slowing down painting of sites that frequently 
1642         repaint e.g. because of Flash (pandora.com, Starcraft 2)
1643
1644         * platform/graphics/cg/ImageSourceCG.cpp:
1645         (WebCore::imageSourceOptions):
1646
1647 2009-06-30  Maciej Stachowiak  <mjs@apple.com>
1648
1649         Reviewed by Sam Weinig.
1650
1651         - Rename html4.css to html.css, since we target HTML5 now
1652         https://bugs.webkit.org/show_bug.cgi?id=26873
1653
1654         * DerivedSources.make:
1655         * GNUmakefile.am:
1656         * WebCore.pro:
1657         * WebCore.vcproj/WebCore.vcproj:
1658         * WebCore.xcodeproj/project.pbxproj:
1659         * css/CSSStyleSelector.cpp:
1660         (WebCore::loadFullDefaultStyle):
1661         * css/html.css: Copied from css/html4.css.
1662         * css/html4.css: Removed.
1663         * css/themeWin.css:
1664         * platform/Theme.h:
1665         * platform/qt/RenderThemeQt.cpp:
1666         (WebCore::RenderThemeQt::adjustMenuListButtonStyle):
1667         * rendering/RenderTheme.h:
1668
1669 2009-06-30  Zan Dobersek  <zandobersek@gmail.com>
1670
1671         Reviewed by Gustavo Noronha.
1672
1673         [GTK] Drag and drop support
1674         https://bugs.webkit.org/show_bug.cgi?id=23642
1675
1676         Define DragImageRef as GdkPixbuf and implement essential
1677         functions which manipulate drag images.
1678
1679         * platform/DragImage.h:
1680         * platform/gtk/DragImageGtk.cpp:
1681         (WebCore::dragImageSize):
1682         (WebCore::deleteDragImage):
1683         (WebCore::scaleDragImage):
1684         (WebCore::createDragImageFromImage):
1685
1686 2009-06-30  Maxime Simon  <simon.maxime@gmail.com>
1687
1688         Reviewed by Eric Seidel.
1689
1690         StorageNamespace.cpp build issue
1691         https://bugs.webkit.org/show_bug.cgi?id=26859
1692
1693         Moved #endif //ENABLE(DOM_STORAGE) position
1694         so that the build doesn't fail.
1695         The namespace WebCore was started after the #if ENABLE(DOM_STORAGE)
1696         but closed after the #endif.
1697
1698         * storage/StorageNamespace.cpp:
1699
1700 2009-06-30  Eric Carlson  <eric.carlson@apple.com>
1701
1702         Reviewed by Oliver Hunt.
1703
1704         <rdar://problem/7020825> HTMLMediaElement should not assume seeking is only possible in 
1705         buffered time ranges
1706
1707         * html/HTMLMediaElement.cpp:
1708             Don't ASSERT if the network state goes to Idle when when the ready state is 
1709             HaveEnoughData or higher, it is perfectly legal.
1710         (WebCore::HTMLMediaElement::setReadyState): 
1711             Don't clear m_seeking after posting a 'seeking' event.
1712
1713         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
1714         (WebCore::MediaPlayerPrivate::seek):
1715             Do nothing when asked to seek to the same time we are already seeking to. Check requested
1716             seek time against maxTimeSeekable, not maxTimeLoaded.
1717         (WebCore::MediaPlayerPrivate::doSeek):
1718             Don't bother stopping a movie that isn't playing. Minor cleanup to make the code more readable.
1719         (WebCore::MediaPlayerPrivate::seekTimerFired):
1720             Check requested seek time against maxTimeSeekable, not maxTimeLoaded.
1721         (WebCore::MediaPlayerPrivate::updateStates):
1722             A streaming movie has as much data as it needs once it reaches "playable", so 
1723             set the ready state to HaveFutureData. A movie with metadata doesn't drop back 
1724             to "have nothing" when seeking. A streaming movie doesn't use the network when paused.
1725         (WebCore::MediaPlayerPrivate::timeChanged):
1726             It may not be possible to seek to a specific time in a streamed movie but when seeking 
1727             in a streaming movie QuickTime sets the time to closest time possible and posts a  
1728             timechanged notification, so update m_seekTo so we can detect when the seek completes.
1729
1730 2009-06-30  Steve Falkenburg  <sfalken@apple.com>
1731
1732         https://bugs.webkit.org/show_bug.cgi?id=26860
1733
1734         Reviewed by Sam Weinig.
1735
1736         Blacklist Yahoo Application State plug-in for versions prior to 1.0.0.6.
1737         Earlier versions cause corruption crashes.
1738
1739         * plugins/win/PluginPackageWin.cpp:
1740         (WebCore::PluginPackage::isPluginBlacklisted):
1741
1742 2009-06-30  Dean Jackson  <dino@apple.com>
1743
1744         Reviewed by Simon Fraser.
1745
1746         <rdar://problem/7005207> <video> in canvas broken with ACCEL_COMPOSITING
1747         
1748         Fix drawImage of video in CanvasRenderingContext2D when
1749         accelerated compositing is enabled. This is done by
1750         adding a new paint method to HTMLVideoElement that
1751         is only called from canvas, which will create the software
1752         renderer if necessary, but otherwise calls the regular
1753         paint method. Meanwhile, add logic to the software video
1754         renderer so that it can be created without calling repaint
1755         every time it sees a new frame.
1756         
1757         * html/CanvasRenderingContext2D.cpp:
1758         (WebCore::CanvasRenderingContext2D::drawImage):
1759         * html/HTMLVideoElement.cpp:
1760         (WebCore::HTMLVideoElement::paintCurrentFrameInContext):
1761         * html/HTMLVideoElement.h:
1762         * platform/graphics/MediaPlayer.cpp:
1763         (WebCore::MediaPlayer::paintCurrentFrameInContext):
1764         * platform/graphics/MediaPlayer.h:
1765         * platform/graphics/MediaPlayerPrivate.h:
1766         (WebCore::MediaPlayerPrivateInterface::paintCurrentFrameInContext):
1767         * platform/graphics/mac/MediaPlayerPrivateQTKit.h:
1768         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
1769         (WebCore::MediaPlayerPrivate::createQTMovie):
1770         (WebCore::MediaPlayerPrivate::createQTVideoRenderer):
1771         (WebCore::MediaPlayerPrivate::currentRenderingMode):
1772         (WebCore::MediaPlayerPrivate::setUpVideoRendering):
1773         (WebCore::MediaPlayerPrivate::tearDownVideoRendering):
1774         (WebCore::MediaPlayerPrivate::paintCurrentFrameInContext):
1775
1776 2009-06-30  David Hyatt  <hyatt@apple.com>
1777
1778         Reviewed by Beth Dakin.
1779
1780         https://bugs.webkit.org/show_bug.cgi?id=26858
1781
1782         Get <dcol> elements reflected into the datagrid's column list.  Make sure columns get added/removed
1783         properly.  (Attribute changes are still not caught.  That is coming in a separate patch.)
1784
1785         Added fast/dom/HTMLDataGridElement/DataGridColumns-dom.html
1786
1787         * html/DataGridColumn.h:
1788         (WebCore::DataGridColumn::create):
1789         (WebCore::DataGridColumn::setColumnList):
1790         (WebCore::DataGridColumn::DataGridColumn):
1791         * html/DataGridColumnList.cpp:
1792         (WebCore::DataGridColumnList::add):
1793         (WebCore::DataGridColumnList::remove):
1794         (WebCore::DataGridColumnList::clear):
1795         * html/DataGridColumnList.h:
1796         * html/HTMLDataGridColElement.cpp:
1797         (WebCore::HTMLDataGridColElement::HTMLDataGridColElement):
1798         (WebCore::HTMLDataGridColElement::findDatagridAncestor):
1799         (WebCore::HTMLDataGridColElement::ensureColumn):
1800         (WebCore::HTMLDataGridColElement::insertedIntoTree):
1801         (WebCore::HTMLDataGridColElement::removedFromTree):
1802         (WebCore::HTMLDataGridColElement::sortable):
1803         (WebCore::HTMLDataGridColElement::setSortable):
1804         * html/HTMLDataGridColElement.h:
1805         (WebCore::HTMLDataGridColElement::column):
1806         (WebCore::HTMLDataGridColElement::setColumn):
1807         (WebCore::HTMLDataGridColElement::datagrid):
1808         * html/HTMLDataGridElement.cpp:
1809         (WebCore::HTMLDataGridElement::setDataSource):
1810         (WebCore::HTMLDataGridElement::dataSource):
1811
1812 2009-06-30  Jeremy Orlow (jorlow@chromium.org)
1813
1814         Reviewed by David Levin.
1815
1816         https://bugs.webkit.org/show_bug.cgi?id=26852
1817
1818         Fix some minor build issues in the v8 bindings.
1819
1820         * bindings/v8/custom/V8StorageCustom.cpp:
1821         (WebCore::V8Custom::v8StorageNamedPropertyEnumerator):
1822         (WebCore::storageGetter):
1823         (WebCore::storageSetter):
1824         (WebCore::storageDeleter):
1825         * storage/StorageArea.cpp:
1826
1827 2009-06-30  Adam Langley  <agl@google.com>
1828
1829         Reviewed by Eric Seidel.
1830
1831         Chromium Linux: use different fonts for each script run.
1832
1833         https://bugs.webkit.org/show_bug.cgi?id=26853
1834
1835         Previously, when rendering complex text, we picked a single font which
1836         could render all the glyphs needed for the run. However, this meant
1837         that sometimes lines were rendered with, for example, [LATIN, THAI,
1838         LATIN] and we could end up with a different font for the Latin parts
1839         than for lines without Thai in them.
1840
1841         With this patch, we pick a font for each script run.
1842
1843         This change is covered by existing layout tests.
1844
1845         * platform/graphics/chromium/FontLinux.cpp:
1846         (WebCore::Font::drawGlyphs):
1847         (WebCore::TextRunWalker::TextRunWalker):
1848         (WebCore::TextRunWalker::~TextRunWalker):
1849         (WebCore::TextRunWalker::nextScriptRun):
1850         (WebCore::TextRunWalker::fontPlatformDataForScriptRun):
1851         (WebCore::TextRunWalker::setupFontForScriptRun):
1852         (WebCore::TextRunWalker::allocHarfbuzzFont):
1853         (WebCore::setupForTextPainting):
1854         (WebCore::Font::drawComplexText):
1855         (WebCore::Font::floatWidthForComplexText):
1856         (WebCore::Font::offsetForPositionForComplexText):
1857         (WebCore::Font::selectionRectForComplexText):
1858         * platform/graphics/chromium/FontPlatformDataLinux.cpp:
1859         (WebCore::FontPlatformData::setupPaint):
1860
1861 2009-06-30  Simon Fraser  <simon.fraser@apple.com>
1862
1863         Reviewed by Dave Hyatt, Dan Bernstein.
1864         
1865         <rdar://problem/6191676> Redraw issues scrolling overflow:scroll div with compositing
1866
1867         There are two parts to this fix. First, if a compositing layer has overflow clipping
1868         or a mask, then the compositing layer does not need to be sized to encompass all
1869         non-composited children.
1870         
1871         Second, when scrolling, we have to back up to the compositing ancestor and have
1872         it reposition descendant compositing layers, because overflow doesn't follow
1873         the z-order tree.
1874         
1875         Test: compositing/overflow/overflow-scroll.html
1876
1877         * page/FrameView.cpp:
1878         (WebCore::FrameView::layout):
1879         Pass the UpdateCompositingLayers flag when updating layers after layout, so that
1880         we can reposition compositing layers if we're not about to do a layer rebuild.
1881         
1882         * rendering/RenderLayer.cpp:
1883         (WebCore::RenderLayer::updateLayerPositions):
1884         Only update compositing layers if the flag is set.
1885         
1886         (WebCore::RenderLayer::scrollToOffset):
1887         Do compositing layer updates from the compositing ancestor in one fell swoop.
1888
1889         * rendering/RenderLayer.h:
1890         Replace the unused FullUpdate flag with one that allows us to specify whether
1891         compositing layers should be updated.
1892         
1893         * rendering/RenderLayerBacking.cpp:
1894         (WebCore::RenderLayerBacking::updateAfterLayout):
1895         * rendering/RenderLayerBacking.h:
1896         New param that we can pass to updateCompositingDescendantGeometry to control
1897         whether the update goes deep.
1898
1899         * rendering/RenderLayerCompositor.cpp:
1900         (WebCore::RenderLayerCompositor::calculateCompositedBounds):
1901         We can return earlier if this is not a self-painting layer.
1902         If the layer has overflow clip or a mask, then the composited bounds are just the
1903         local bounds, excluding descendants.
1904         
1905         (WebCore::RenderLayerCompositor::updateCompositingDescendantGeometry):
1906         * rendering/RenderLayerCompositor.h:
1907         Renamed from updateCompositingChildrenGeometry, and added a flag that allows
1908         us to do a deep update.
1909
1910 2009-06-30  Alexey Proskuryakov  <ap@webkit.org>
1911
1912         Reviewed by Dan Bernstein.
1913
1914         https://bugs.webkit.org/show_bug.cgi?id=26764
1915         Uncaught NOT_FOUND_ERR: DOMException 8 loading empty text file
1916
1917         Test: fast/parser/empty-text-resource.html
1918
1919         * loader/TextDocument.cpp: (WebCore::TextTokenizer::finish): Create document tree if it
1920         hasn't been created yet.
1921
1922 2009-06-30  Brian Weinstein  <bweinstein@apple.com>
1923
1924         Reviewed by Adam Roben.
1925
1926         Renamed scrollbarUnderPoint to scrollbarAtPoint.
1927
1928         * page/EventHandler.cpp:
1929         (WebCore::EventHandler::hitTestResultAtPoint):
1930         (WebCore::EventHandler::handleMousePressEvent):
1931         (WebCore::EventHandler::handleMouseMoveEvent):
1932         * platform/ScrollView.cpp:
1933         (WebCore::ScrollView::scrollbarAtPoint):
1934         * platform/ScrollView.h:
1935         * platform/chromium/PopupMenuChromium.cpp:
1936         (WebCore::PopupListBox::handleMouseDownEvent):
1937         (WebCore::PopupListBox::handleMouseMoveEvent):
1938
1939 2009-06-30  Oliver Hunt  <oliver@apple.com>
1940
1941         Reviewed by Geoff Garen.
1942
1943         <rdar://problem/6960286> CrashTracer: [REGRESSION] 1120 crashes in Safari at com.apple.WebCore WebCore::JSLazyEventListener::parseCode const + 62
1944
1945         <select> elements and other elements the produce popups can keep their popups
1946         live across a page load.  If this occurs and the <select> element has an
1947         onchange handler it is possible to get into a state where we try to execute
1948         JS on a page that no longer has an execution context. 
1949
1950         * bindings/js/JSLazyEventListener.cpp:
1951         (WebCore::JSLazyEventListener::parseCode):
1952           Be paranoid and add a null check, but assert as well because we shouldn't
1953           actually get to this point.
1954         * rendering/RenderMenuList.cpp:
1955         (WebCore::RenderMenuList::valueChanged):
1956
1957 2009-06-30  Drew Wilson  <atwilson@google.com>
1958
1959         Reviewed by David Levin.
1960
1961         <https://bugs.webkit.org/show_bug.cgi?id=25435>
1962
1963         Added support for sending MessagePorts to/from Workers via postMessage().
1964
1965         * bindings/js/JSWorkerContextCustom.cpp:
1966         (WebCore::JSWorkerContext::messageChannel):
1967         Exposes MessageChannel constructor WorkerContext.
1968         * bindings/js/JSWorkerCustom.cpp:
1969         * bindings/v8/custom/V8MessageChannelConstructor.cpp:
1970         (WebCore::CALLBACK_FUNC_DECL):
1971         Now correctly handles being instantiated from within a Worker.
1972        * platform/CrossThreadCopier.h:
1973         (WebCore::GenericWorkerTaskTraits<PassOwnPtr>):
1974         Added support for passing PassOwnPtr as argument to GenericWorkerTask
1975        * workers/GenericWorkerTask.h:
1976         (WebCore::):
1977         * workers/Worker.cpp:
1978         (WebCore::Worker::postMessage):
1979         Now handles disentangling/entangling MessagePorts sent to/from via postMessage.
1980         (WebCore::Worker::dispatchMessage):
1981         * workers/Worker.h:
1982         * workers/Worker.idl:
1983         Added an optional MessagePort argument to postMessage()
1984         * workers/WorkerContext.cpp:
1985         (WebCore::WorkerContext::hasPendingActivity):
1986         Workers now report pending activity whenever there are remotely entangled ports.
1987         (WebCore::WorkerContext::postMessage):
1988         Now handles disentangling/entangling MessagePorts sent to/from via postMessage.
1989         (WebCore::WorkerContext::dispatchMessage):
1990         * workers/WorkerContext.h:
1991         * workers/WorkerContext.idl:
1992         Added an optional MessagePort argument to postMessage()
1993         * workers/WorkerContextProxy.h:
1994         * workers/WorkerMessagingProxy.cpp:
1995         Updated messaging infrastructure to transport an optional MessagePort/MessagePortChannel.
1996         (WebCore::MessageWorkerContextTask::create):
1997         (WebCore::MessageWorkerContextTask::MessageWorkerContextTask):
1998         (WebCore::MessageWorkerContextTask::performTask):
1999         (WebCore::MessageWorkerTask::create):
2000         (WebCore::MessageWorkerTask::MessageWorkerTask):
2001         (WebCore::MessageWorkerTask::performTask):
2002         (WebCore::WorkerMessagingProxy::postMessageToWorkerObject):
2003         (WebCore::WorkerMessagingProxy::postMessageToWorkerContext):
2004         * workers/WorkerMessagingProxy.h:
2005         Added additional postMessage() API that accepts a MessagePort
2006         * workers/WorkerObjectProxy.h:
2007         Added additional postMessage() API that accepts a MessagePort
2008
2009 2009-06-30  Adam Langley  <agl@google.com>
2010
2011         Reviewed by Eric Seidel.
2012
2013         Chromium: Add complex text support on Linux.
2014
2015         https://bugs.webkit.org/show_bug.cgi?id=25068
2016
2017         This patch adds complex text support on Linux using Harfbuzz. It's not
2018         the fastest code possible: some caching of font tables will certainly
2019         be required. However, it's probably the simplest code that works.
2020
2021         This will require checking in new baselines in the Chromium tree for
2022         those layout tests which now pass.
2023
2024         * platform/graphics/chromium/FontLinux.cpp:
2025         (WebCore::Font::drawGlyphs):
2026         (WebCore::truncateFixedPointToInteger):
2027         (WebCore::TextRunWalker::TextRunWalker):
2028         (WebCore::TextRunWalker::~TextRunWalker):
2029         (WebCore::TextRunWalker::reset):
2030         (WebCore::TextRunWalker::setXOffsetToZero):
2031         (WebCore::TextRunWalker::rtl):
2032         (WebCore::TextRunWalker::setBackwardsIteration):
2033         (WebCore::TextRunWalker::nextScriptRun):
2034         (WebCore::TextRunWalker::glyphs):
2035         (WebCore::TextRunWalker::length):
2036         (WebCore::TextRunWalker::xPositions):
2037         (WebCore::TextRunWalker::advances):
2038         (WebCore::TextRunWalker::width):
2039         (WebCore::TextRunWalker::logClusters):
2040         (WebCore::TextRunWalker::numCodePoints):
2041         (WebCore::TextRunWalker::widthOfFullRun):
2042         (WebCore::TextRunWalker::allocHarfbuzzFont):
2043         (WebCore::TextRunWalker::deleteGlyphArrays):
2044         (WebCore::TextRunWalker::createGlyphArrays):
2045         (WebCore::TextRunWalker::expandGlyphArrays):
2046         (WebCore::TextRunWalker::shapeGlyphs):
2047         (WebCore::TextRunWalker::setGlyphXPositions):
2048         (WebCore::setupForTextPainting):
2049         (WebCore::fontPlatformDataForTextRun):
2050         (WebCore::Font::drawComplexText):
2051         (WebCore::Font::floatWidthForComplexText):
2052         (WebCore::glyphIndexForXPositionInScriptRun):
2053         (WebCore::Font::offsetForPositionForComplexText):
2054         (WebCore::Font::selectionRectForComplexText):
2055         * platform/graphics/chromium/HarfbuzzSkia.cpp: Added.
2056         (WebCore::SkiaScalarToHarfbuzzFixed):
2057         (WebCore::stringToGlyphs):
2058         (WebCore::glyphsToAdvances):
2059         (WebCore::canRender):
2060         (WebCore::getOutlinePoint):
2061         (WebCore::getGlyphMetrics):
2062         (WebCore::getFontMetric):
2063         (WebCore::harfbuzzSkiaGetTable):
2064
2065 2009-06-30  Eric Carlson  <eric.carlson@apple.com>
2066
2067         Reviewed by Simon Fraser.
2068
2069         <rdar://problem/7019799> Slow loading MediaDocument can fall back to plug-in unnecessarily
2070
2071         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
2072         (WebCore::MediaPlayerPrivate::updateStates):
2073             Always fall back to a plug-in if m_hasUnsupportedTracks is set.
2074         (WebCore::MediaPlayerPrivate::disableUnsupportedTracks):
2075             Set m_hasUnsupportedTracks if we disable a track.
2076
2077 2009-06-30  Nate Chapin  <japhet@chromium.org>
2078
2079         Reviewed by Dimitri Glazkov.
2080
2081         Fix inverted if/else that's causing a layout test in src.chromium.org to fail.
2082
2083         https://bugs.webkit.org/show_bug.cgi?id=26820
2084
2085         * bindings/v8/V8Proxy.cpp:
2086         (WebCore::GCPrologueVisitor::visitDOMWrapper): if (port2), not if (!port2).
2087
2088 2009-06-30  Dan Bernstein  <mitz@apple.com>
2089
2090         Reviewed by Dave Hyatt.
2091
2092         - fix <rdar://problem/6946611> REGRESSION (r30673): Shade10:" D_Snap
2093           to Grid" window is clipping
2094
2095         Added an app-specific quirk to revert the behavior of <link> elements
2096         to the way it was before r30673, namely that if the rel attribute
2097         is not "stylesheet" but the type attribute contains "text/css", the
2098         link behaves as a stylesheet link.
2099
2100         * WebCore.base.exp: Exported setTreatsAnyTextCSSLinkAsStylesheet().
2101         * html/HTMLLinkElement.cpp:
2102         (WebCore::HTMLLinkElement::process): Check
2103             Settings::treatsAnyTextCSSLinkAsStylesheet() and if true, allow a
2104             style sheet link if the type contains "text/css".
2105         * page/Settings.cpp:
2106         (WebCore::Settings::Settings):
2107             Initialize m_treatsAnyTextCSSLinkAsStylesheet.
2108         (WebCore::Settings::setTreatsAnyTextCSSLinkAsStylesheet): Added.
2109         * page/Settings.h:
2110         (WebCore::Settings::treatsAnyTextCSSLinkAsStylesheet): Added.
2111
2112 2009-06-30  Adrien Nader  <camaradetux@gmail.com>
2113
2114         Reviewed by Xan Lopez.
2115
2116         Fix typo in GNUMakefile.am: it reads WebCOre instead of WebCore.
2117
2118         * GNUmakefile.am:
2119
2120 2009-06-30  Jan Michael Alonzo  <jmalonzo@webkit.org>
2121
2122         Reviewed by Xan Lopez.
2123
2124         [Gtk] Turn on ENABLE_DATAGRID so we can run the layout tests.
2125
2126         * GNUmakefile.am:
2127
2128 2009-06-30  Raju Kunnath  <raju.kunnath@nokia.com>
2129
2130         Reviewed by Simon Hausmann.
2131
2132         <https://bugs.webkit.org/show_bug.cgi?id=26752>
2133
2134         [Qt] Windows release build issue with Qt4.5 due to -GL flag on msvc2005 and msvc2008. 
2135
2136         * WebCore.pro: Removed -GL compiler option for win32-msvc2005|win32-msvc2008.
2137
2138 2009-06-30  Xan Lopez  <xlopez@igalia.com>
2139
2140         Reviewed by Jan Alonzo.
2141
2142         Initialize member variables in the right order. Fixes compiler
2143         warning.
2144
2145         * platform/image-decoders/bmp/BMPImageReader.cpp:
2146         (WebCore::BMPImageReader::BMPImageReader):
2147
2148 2009-06-29  Xan Lopez  <xlopez@igalia.com>
2149
2150         Reviewed by David Levin.
2151
2152         https://bugs.webkit.org/show_bug.cgi?id=26831
2153         Fix compiler warning in WorkerLoaderProxy.h
2154
2155         Forward declaration of a class within a class is not allowed,
2156         since the compiler can't know if the declaration is legal at that
2157         point. This gives the following compiler warning:
2158
2159         ../../WebCore/workers/WorkerLoaderProxy.h:40: warning: declaration
2160         "class WebCore::ScriptExecutionContext::Task" does not declare
2161         anything
2162
2163         Include the full ScriptExecutionHeader header instead.
2164
2165         * workers/WorkerLoaderProxy.h:
2166
2167 2009-06-29  Xan Lopez  <xlopez@igalia.com>
2168
2169         Reviewed by Jan Alonzo.
2170
2171         Remove unused function.
2172
2173         * plugins/gtk/PluginPackageGtk.cpp:
2174
2175 2009-06-29  Simon Fraser  <simon.fraser@apple.com>
2176
2177         Reviewed by Dan Bernstein.
2178
2179         Change RenderLayer::updateLayerPositions() to use a bitmask instead of two
2180         boolean arguments. FullUpdate is unused at present, but will be used soon.
2181
2182         * page/FrameView.cpp:
2183         (WebCore::FrameView::layout):
2184         * rendering/RenderLayer.cpp:
2185         (WebCore::RenderLayer::updateLayerPositions):
2186         (WebCore::RenderLayer::scrollToOffset):
2187         * rendering/RenderLayer.h:
2188         (WebCore::RenderLayer::):
2189
2190 2009-06-29  Nate Chapin  <japhet@chromium.org>
2191
2192         Reviewed by Dimitri Glazkov.
2193
2194         Fix one more bad merge in V8Proxy.
2195
2196         https://bugs.webkit.org/show_bug.cgi?id=26819
2197
2198         * bindings/v8/V8Proxy.cpp:
2199         (WebCore::V8Proxy::setDOMException): setDOMExceptionHelper() instead of convertToV8Object().
2200
2201 2009-06-29  Sam Weinig  <sam@webkit.org>
2202
2203         Reviewed by Mark Rowe.
2204
2205         Remove more unused scons support.
2206
2207         * SConstruct: Removed.
2208
2209 2009-06-29  Sam Weinig  <sam@webkit.org>
2210
2211         Reviewed by Dave Hyatt.
2212
2213         Fix some incorrect create functions.
2214
2215         * html/DataGridColumn.h:
2216         (WebCore::DataGridColumn::create):
2217         * html/DataGridColumnList.h:
2218         (WebCore::DataGridColumnList::create):
2219
2220 2009-06-29  Sam Weinig  <sam@webkit.org>
2221
2222         Reviewed by Dave Hyatt.
2223
2224         Remove initialize method from DataGridDataSource and add
2225         DOMDataGridDataSource.
2226
2227         * GNUmakefile.am:
2228         * WebCore.pro:
2229         * WebCore.vcproj/WebCore.vcproj:
2230         * WebCore.xcodeproj/project.pbxproj:
2231         * WebCoreSources.bkl:
2232         * bindings/js/JSDataGridDataSource.cpp:
2233         * bindings/js/JSDataGridDataSource.h:
2234         * bindings/js/JSHTMLDataGridElementCustom.cpp:
2235         (WebCore::JSHTMLDataGridElement::setDataSource):
2236         * html/DOMDataGridDataSource.cpp: Added.
2237         (WebCore::DOMDataGridDataSource::DOMDataGridDataSource):
2238         (WebCore::DOMDataGridDataSource::~DOMDataGridDataSource):
2239         * html/DOMDataGridDataSource.h: Added.
2240         (WebCore::DOMDataGridDataSource::create):
2241         (WebCore::DOMDataGridDataSource::isDOMDataGridDataSource):
2242         (WebCore::asDOMDataGridDataSource):
2243         * html/DataGridDataSource.h:
2244         (WebCore::DataGridDataSource::isDOMDataGridDataSource):
2245         (WebCore::DataGridDataSource::isJSDataGridDataSource):
2246         * html/HTMLDataGridElement.cpp:
2247         (WebCore::HTMLDataGridElement::HTMLDataGridElement):
2248         (WebCore::HTMLDataGridElement::setDataSource):
2249         (WebCore::HTMLDataGridElement::dataSource):
2250         * html/HTMLDataGridElement.h:
2251
2252 2009-06-29  Nate Chapin  <japhet@chromium.org>
2253
2254         Reviewed by Dimitri Glazkov.
2255
2256         Fix a couple of bad merge items from my previous V8Proxy patch.
2257
2258         https://bugs.webkit.org/show_bug.cgi?id=26813
2259
2260         * bindings/v8/V8Collection.h:
2261         (WebCore::nodeCollectionNamedPropertyGetter):  Fix a bad function name that slipped through.
2262         * bindings/v8/V8Proxy.cpp:
2263         (WebCore::V8Proxy::setDOMException):  Fix a bad merge that caused a couple of lines of extraneous, breaking code to get in.
2264
2265 2009-06-29  Chris Marrin  <cmarrin@apple.com>
2266
2267         Reviewed by Simon Fraser  <simon.fraser@apple.com>.
2268
2269         https://bugs.webkit.org/show_bug.cgi?id=26706
2270
2271         Fixed crash due to dereference of m_toStyle
2272
2273         * page/animation/ImplicitAnimation.cpp:
2274         (WebCore::ImplicitAnimation::isTargetPropertyEqual):
2275
2276 2009-06-29  Eric Carlson  <eric.carlson@apple.com>
2277
2278         Reviewed by Simon Fraser.
2279
2280         <rdar://problem/7014813> Ask media engine if a movie is streamed or downloaded.
2281
2282         * WebCore.base.exp: 
2283             Export _wkQTMovieGetType
2284
2285         * platform/graphics/MediaPlayer.cpp:
2286         (WebCore::MediaPlayer::hasSingleSecurityOrigin):
2287             Move to keep with other non-callback functions.
2288         (WebCore::MediaPlayer::movieLoadType):
2289             New, returns the movie type.
2290         * platform/graphics/MediaPlayer.h:
2291             Declare MovieLoadType enum and movieLoadType method.
2292
2293         * platform/graphics/MediaPlayerPrivate.h:
2294         (WebCore::MediaPlayerPrivateInterface::movieLoadType):
2295             Default implementation of movieLoadType
2296
2297         * platform/graphics/mac/MediaPlayerPrivateQTKit.h:
2298         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
2299         (WebCore::MediaPlayerPrivate::createQTMovie):
2300             Don't base m_isStreaming on protocol, there are other types of streaming movies.
2301         (WebCore::MediaPlayerPrivate::maxTimeBuffered):
2302             Don't assume all streams are unbuffered.
2303         (WebCore::MediaPlayerPrivate::updateStates):
2304             Update m_isStreaming once we have metadata.
2305         (WebCore::MediaPlayerPrivate::disableUnsupportedTracks):
2306             Tracks that are disabled to begin with shouldn't be included in m_enabledTrackCount.
2307         (WebCore::MediaPlayerPrivate::movieLoadType):
2308             New, return movie type.
2309
2310         * platform/mac/WebCoreSystemInterface.h:
2311         * platform/mac/WebCoreSystemInterface.mm:
2312             Add wkQTMovieGetType.
2313
2314 2009-06-29  Alice Liu  <alice.liu@apple.com>
2315
2316         Fixed <rdar://problem/6930280> Reproducible crash at USA Today photo gallery
2317
2318         Reviewed by Anders Carlsson.
2319
2320         No test added because the crash requires a flash plugin
2321
2322         * plugins/win/PluginMessageThrottlerWin.cpp:
2323         Rely on the hWnd of the plugin to tell us whether the PluginView has 
2324         been deleted during execution of its wndProc.
2325         (WebCore::PluginMessageThrottlerWin::messageThrottleTimerFired):
2326
2327 2009-06-29  Dmitry Titov  <dimich@chromium.org>
2328
2329         Reviewed by David Levin.
2330
2331         https://bugs.webkit.org/show_bug.cgi?id=26811
2332          [Chromium] Remove a flag and functions used to enable workers in runtime.
2333
2334         * bindings/v8/WorkerContextExecutionProxy.cpp:
2335         * bindings/v8/WorkerContextExecutionProxy.h:
2336
2337 2009-06-29  Simon Fraser  <simon.fraser@apple.com>
2338
2339         Reviewed by Dave Hyatt.
2340         
2341         <rdar://problem/6976712> Text antialiasing problems when rendering into compositing layers.
2342         
2343         Improve the appearance of text in compositing layers by making use of
2344         CA's layer geometry flipping, rather that doing it ourselves with a flip
2345         transform. This allows CG to use font autohinting in the layer text.
2346
2347         * platform/graphics/GraphicsLayer.h:
2348         (WebCore::GraphicsLayer::setGeometryOrientation):
2349         (WebCore::GraphicsLayer::geometryOrientation):
2350         New methods to set whether this layer uses flipped geometry.
2351         
2352         * platform/graphics/mac/GraphicsLayerCA.h:
2353         * platform/graphics/mac/GraphicsLayerCA.mm:
2354         (WebCore::GraphicsLayerCA::setGeometryOrientation):
2355         (WebCore::GraphicsLayerCA::geometryOrientation):
2356         Subclass in order to call into CA
2357         
2358         (WebCore::GraphicsLayerCA::setContentsLayer):
2359         Now that CA is doing the geometry flipping, we no longer need to flip the content
2360         layers for image and video manually
2361         
2362         * rendering/RenderLayerCompositor.cpp:
2363         (WebCore::RenderLayerCompositor::ensureRootPlatformLayer):
2364         Turn on flipping on the root layer.
2365
2366 2009-06-29  Nikolas Zimmermann  <nikolas.zimmermann@torchmobile.com>
2367
2368         Reviewed by Adam Treat.
2369
2370         Fixes: https://bugs.webkit.org/show_bug.cgi?id=26246
2371
2372         Implement most WML specific <select> element features.
2373         Add 'iname' / 'ivalue' support and support variable references.
2374
2375         Add two tests covering most select/variable related functionality.
2376         Needs more tests when adding full 'iname' / 'ivalue' support (used in conjuction with onpick).
2377
2378         Tests: http/tests/wml/post-data-to-server.html
2379                wml/select-element-variables.html
2380
2381         * dom/SelectElement.cpp:
2382         (WebCore::SelectElement::optionCount): Refactored from HTMLSelectElement::length() for use within HTML & WML.
2383         * dom/SelectElement.h:
2384         * html/HTMLSelectElement.cpp:
2385         (WebCore::HTMLSelectElement::length): Use new SelectElement::optionCount() function. (no functional changes for HTML).
2386         * wml/WMLCardElement.cpp:
2387         (WebCore::WMLCardElement::handleIntrinsicEventIfNeeded): Activated commented code taking care of WMLSelectElement initialization.
2388         * wml/WMLSelectElement.cpp: Add a bunch of new code handling WML specific feature processing.
2389         (WebCore::WMLSelectElement::title):
2390         (WebCore::WMLSelectElement::formControlName):
2391         (WebCore::WMLSelectElement::defaultEventHandler):
2392         (WebCore::WMLSelectElement::selectInitialOptions):
2393         (WebCore::WMLSelectElement::calculateDefaultOptionIndices):
2394         (WebCore::WMLSelectElement::selectDefaultOptions):
2395         (WebCore::WMLSelectElement::initializeVariables):
2396         (WebCore::WMLSelectElement::updateVariables):
2397         (WebCore::WMLSelectElement::parseIndexValueString):
2398         (WebCore::WMLSelectElement::valueStringToOptionIndices):
2399         (WebCore::WMLSelectElement::optionIndicesToValueString):
2400         (WebCore::WMLSelectElement::optionIndicesToString):
2401         (WebCore::WMLSelectElement::name):
2402         (WebCore::WMLSelectElement::value):
2403         (WebCore::WMLSelectElement::iname):
2404         (WebCore::WMLSelectElement::ivalue):
2405         * wml/WMLSelectElement.h:
2406
2407 2009-06-29  David Hyatt  <hyatt@apple.com>
2408
2409         Reviewed by Adam Roben.
2410
2411         Put <datagrid> behind an ifdef.
2412
2413         * Configurations/FeatureDefines.xcconfig:
2414         * bindings/js/JSDataGridColumnListCustom.cpp:
2415         * bindings/js/JSDataGridDataSource.cpp:
2416         * bindings/js/JSDataGridDataSource.h:
2417         * bindings/js/JSHTMLDataGridElementCustom.cpp:
2418         * html/DataGridColumn.cpp:
2419         * html/DataGridColumn.h:
2420         * html/DataGridColumn.idl:
2421         * html/DataGridColumnList.cpp:
2422         * html/DataGridColumnList.h:
2423         * html/DataGridColumnList.idl:
2424         * html/DataGridDataSource.h:
2425         * html/HTMLDataGridCellElement.cpp:
2426         * html/HTMLDataGridCellElement.h:
2427         * html/HTMLDataGridCellElement.idl:
2428         * html/HTMLDataGridColElement.cpp:
2429         * html/HTMLDataGridColElement.h:
2430         * html/HTMLDataGridColElement.idl:
2431         * html/HTMLDataGridElement.cpp:
2432         * html/HTMLDataGridElement.h:
2433         * html/HTMLDataGridElement.idl:
2434         * html/HTMLDataGridRowElement.cpp:
2435         * html/HTMLDataGridRowElement.h:
2436         * html/HTMLDataGridRowElement.idl:
2437         * html/HTMLTagNames.in:
2438         * page/DOMWindow.idl:
2439         * rendering/RenderDataGrid.cpp:
2440         * rendering/RenderDataGrid.h:
2441
2442 2009-06-29  Simon Hausmann  <simon.hausmann@nokia.com>
2443
2444         Reviewed by Ariya Hidayat and Adam Roben.
2445
2446         Fix compilation with MINGW. Ported MSVC inline assembly to
2447         GNU inline assembly. Also fixed casting errors where gcc
2448         refused to cast a pointer-to-function to a pointer-to-object,
2449         without an intermediate cast to a non-pointer type.
2450
2451         * plugins/win/PluginViewWin.cpp:
2452         (WebCore::PluginView::hookedBeginPaint):
2453         (WebCore::PluginView::hookedEndPaint):
2454         (WebCore::hook):
2455         (WebCore::setUpOffscreenPaintingHooks):
2456
2457 2009-06-26  John Sullivan  <sullivan@apple.com>
2458
2459         Added Speech submenu to context menu on Mac when there's a non-editable selection
2460         (it was already present when there's an editable selection). 
2461         Also added support for disabling "Stop Speaking" when there is no speaking to stop.
2462
2463         Reviewed by Tim Hatcher.
2464
2465         * loader/EmptyClients.h:
2466         (WebCore::EmptyContextMenuClient::isSpeaking):
2467         implemented this new virtual function to return false
2468         
2469         * page/ContextMenuClient.h:
2470         declared this new pure virtual function
2471         
2472         * platform/ContextMenu.cpp:
2473         (WebCore::ContextMenu::populate):
2474         insert Speech item (after a separator) on Mac when there's selected non-editable text
2475         (WebCore::ContextMenu::checkOrEnableIfNeeded):
2476         enable Stop Speaking item only if the context menu client returns true for isSpeaking()
2477
2478 2009-06-28  Dan Bernstein  <mitz@apple.com>
2479
2480         Reviewed by Simon Fraser.
2481
2482         - fix https://bugs.webkit.org/show_bug.cgi?id=26783
2483           <rdar://problem/7014543> REGRESSION (r45296): Subfolders not displayed
2484           in MobileMe iDisk Web App
2485
2486         Test: added a case to fast/dom/Element/scrollWidth.html
2487
2488         Ensure that scroll{Width, Height} is greater or equal to
2489         client{Width, Height}.
2490
2491         * rendering/RenderBox.cpp:
2492         (WebCore::RenderBox::scrollWidth):
2493         (WebCore::RenderBox::scrollHeight):
2494
2495 2009-06-27  Simon Fraser  <simon.fraser@apple.com>
2496
2497         Reviewed by Eric Seidel.
2498
2499         https://bugs.webkit.org/show_bug.cgi?id=26780
2500         
2501         Do not make compositing layers for non-self-painting RenderLayers,
2502         since these exist only to push a clip onto the clipping stack. If such
2503         a layer gets compositied for some other reason, it should not paint.
2504         
2505         Also ensure that we update composited layer positions correctly
2506         inside overflow:scroll layers. We can't assume that the contents
2507         are child layers, so we have to go up to the compositing ancestor,
2508         and tell it to update all its child layer positions as we do 
2509         after layout.
2510
2511         Tests: compositing/layers-inside-overflow-scroll.html
2512                compositing/self-painting-layers.html
2513
2514         * rendering/RenderLayer.cpp:
2515         (WebCore::RenderLayer::scrollToOffset):
2516         * rendering/RenderLayerBacking.cpp:
2517         (WebCore::RenderLayerBacking::paintIntoLayer):
2518         * rendering/RenderLayerCompositor.cpp:
2519         (WebCore::RenderLayerCompositor::calculateCompositedBounds):
2520         (WebCore::RenderLayerCompositor::needsToBeComposited):
2521
2522 2009-06-28  Luke Kenneth Casson Leighton  <lkcl@lkcl.net>
2523
2524         Reviewed by Eric Seidel.
2525
2526         PurgeableBuffer #defines leave out functions on gtk MacOSX 10.4 build
2527         https://bugs.webkit.org/show_bug.cgi?id=23057
2528
2529         Define these functions for Gtk as well.
2530
2531         * platform/PurgeableBuffer.h:
2532
2533 2009-06-28  Nate Chapin  <japhet@chromium.org>
2534
2535         Reviewed by Dimitri Glazkov.
2536
2537         Update CodeGeneratorV8.pm to match the new api for V8Proxy.
2538
2539         https://bugs.webkit.org/show_bug.cgi?id=26765
2540
2541         * bindings/scripts/CodeGeneratorV8.pm: Match the current version of V8Proxy.
2542
2543 2009-06-28  Nicolas Sylvain  <nsylvain@chromium.org>
2544
2545         Reviewed by Dimitri Glazkov.
2546
2547         If loading a font fails because of the sandbox, we ask the browser process to 
2548         try to load it by calling ensureFontLoaded. If it still fails after 
2549         ensureFontLoaded, we hit a ASSERT_NOT_REACHED. 
2550
2551         This case happens once in a while during browser shutdown. The browser will 
2552         queue a message to the renderer to shutdown, and will then stop answering sync 
2553         messages from the renderer. If the renderer is still loading a page during this 
2554         time, it might try to call the browser process to ask to load a font. The 
2555         browser process will ignore the request, and the font will fail to load, even 
2556         after the second try. 
2557
2558         This is unfortunate, but there is no real risk here, since the renderer will be 
2559         going away as soon as it processes another message. 
2560
2561         This can't be layout tested as it depends on the sandbox. 
2562
2563         https://bugs.webkit.org/show_bug.cgi?id=26743 
2564
2565         * platform/graphics/chromium/FontChromiumWin.cpp:
2566         * platform/graphics/chromium/FontPlatformDataChromiumWin.cpp:
2567         * platform/graphics/chromium/GlyphPageTreeNodeChromiumWin.cpp:
2568         * platform/graphics/chromium/SimpleFontDataChromiumWin.cpp:
2569
2570 2009-06-28  John Abd-El-Malek  <jam@chromium.org>
2571
2572         Reviewed by Eric Seidel.
2573
2574         https://bugs.webkit.org/show_bug.cgi?id=15457
2575
2576         Test: plugins/netscape-plugin-map-data-to-src.html
2577
2578         Fix problems with Real or WMP plugins not displaying because "data" was set
2579         on the OBJECT tag instead of "src".  This is based on what Firefox does, see
2580         http://mxr.mozilla.org/mozilla-central/source/layout/generic/nsObjectFrame.cpp#3045
2581
2582         * rendering/RenderPartObject.cpp:
2583         (WebCore::mapDataParamToSrc):
2584         (WebCore::RenderPartObject::updateWidget):
2585
2586 2009-06-27  Laszlo Gombos  <laszlo.1.gombos@nokia.com>
2587
2588         Reviewed by Jan Alonzo.
2589
2590         [Qt] Build fix after r45290
2591         https://bugs.webkit.org/show_bug.cgi?id=26769
2592
2593         * WebCore.pro:
2594
2595 2009-06-27  Emilio Pozuelo Monfort  <pochu27@gmail.com>
2596
2597         Reviewed by Jan Alonzo.
2598
2599         [GTK] Don't use deprecated GTK+ symbols.
2600         https://bugs.webkit.org/show_bug.cgi?id=26583
2601
2602         * plugins/gtk/gtk2xtbin.c:
2603         (gtk_xtbin_class_init):
2604         (gtk_xtbin_new):
2605         (gtk_xtbin_destroy):
2606
2607 2009-06-27  Simon Fraser  <simon.fraser@apple.com>
2608
2609         Reviewed by Dan Bernstein.
2610
2611         https://bugs.webkit.org/show_bug.cgi?id=26780
2612         
2613         Fix up previous change. When computeCompositingRequirements() determines
2614         that the current layer is composited, it needs to inform its parent
2615         by setting compositingState.m_subtreeIsCompositing() to true. That didn't
2616         always happen after the previous patch. Clarified the logic here.
2617         
2618         * rendering/RenderLayerCompositor.cpp:
2619         (WebCore::CompositingState::CompositingState):
2620         (WebCore::RenderLayerCompositor::computeCompositingRequirements):
2621
2622 2009-06-27  Simon Fraser  <simon.fraser@apple.com>
2623
2624         Reviewed by Dan Bernstein.
2625
2626         https://bugs.webkit.org/show_bug.cgi?id=26780
2627         
2628         First part: fix the RenderLayer::hasCompositingDescendant() flag to be set
2629         correctly.
2630
2631         * rendering/RenderLayerCompositor.cpp:
2632         (WebCore::RenderLayerCompositor::computeCompositingRequirements):
2633         Do not unconditionally set compositingState.m_subtreeIsCompositing, because
2634         that can clobber the value from an earlier sibling. Add some more comments.
2635         
2636         Remove a final use of Vector iterators.
2637         
2638         (WebCore::RenderLayerCompositor::recursiveRepaintLayerRect):
2639         Move the normalFlowList() processing outside the test for isStackingContext().
2640
2641 2009-06-27  Dan Bernstein  <mitz@apple.com>
2642
2643         Reviewed by Simon Fraser and Antti Koivisto.
2644
2645         - make paintFillLayerExtended() non-virtual and remove its clipY and
2646           clipH parameters
2647
2648         These parameters were computed and passed along to
2649         paintFillLayerExtended in order to vertically constrain the rect fill to
2650         the damage rect, because Qt cannot paint tall rectangles (see
2651         <http://websvn.kde.org/?view=rev&revision=42721>). Since the damage rect
2652         is passed along in the PaintInfo, the extra parameters are redundant,
2653         and the intersection can just take place in paintFillLayerExtended().
2654
2655         * rendering/InlineFlowBox.cpp:
2656         (WebCore::InlineFlowBox::paintFillLayers):
2657         (WebCore::InlineFlowBox::paintFillLayer):
2658         (WebCore::InlineFlowBox::paintBoxDecorations):
2659         (WebCore::InlineFlowBox::paintMask):
2660         * rendering/InlineFlowBox.h:
2661         * rendering/RenderBox.cpp:
2662         (WebCore::RenderBox::paintRootBoxDecorations):
2663         (WebCore::RenderBox::paintBoxDecorations):
2664         (WebCore::RenderBox::paintMask):
2665         (WebCore::RenderBox::paintMaskImages):
2666         (WebCore::RenderBox::paintFillLayers):
2667         (WebCore::RenderBox::paintFillLayer):
2668         * rendering/RenderBox.h:
2669         * rendering/RenderBoxModelObject.cpp:
2670         (WebCore::RenderBoxModelObject::paintFillLayerExtended):
2671         * rendering/RenderBoxModelObject.h:
2672         * rendering/RenderFieldset.cpp:
2673         (WebCore::RenderFieldset::paintBoxDecorations):
2674         (WebCore::RenderFieldset::paintMask):
2675         * rendering/RenderTable.cpp:
2676         (WebCore::RenderTable::paintBoxDecorations):
2677         (WebCore::RenderTable::paintMask):
2678         * rendering/RenderTableCell.cpp:
2679         (WebCore::RenderTableCell::paintBackgroundsBehindCell):
2680         (WebCore::RenderTableCell::paintMask):
2681
2682 2009-06-27  Ryosuke Niwa  <rniwa@google.com>
2683
2684         Reviewed by Eric Seidel.
2685
2686         https://bugs.webkit.org/show_bug.cgi?id=26762
2687
2688         Clean up for IndentOutdentCommand::indentRegion, and solved most of problems related to the bug 21712.
2689         https://bugs.webkit.org/show_bug.cgi?id=21712
2690
2691         Added few utility functions to htmlediting.h/cpp
2692
2693         isVisibilyAdjacent checks whether the first position is visibly next to the second position.
2694         i.e. there is no visible node between the first and second positions
2695
2696         canMergeLists checks whether two lists can be merged.
2697         It checks the type of list, the editing boundary, and adjacency of the lists.
2698
2699         Tests: editing/execCommand/indent-nested-lists-1.html
2700                editing/execCommand/indent-nested-lists-2.html
2701                editing/execCommand/indent-nested-lists-3.html
2702                editing/execCommand/indent-nested-lists-4.html
2703                editing/execCommand/indent-nested-lists-5.html
2704                editing/execCommand/indent-nested-lists-6.html
2705                editing/execCommand/indent-nested-lists-7.html
2706                editing/execCommand/outdent-nested-lists-1.html
2707                editing/execCommand/outdent-nested-lists-2.html
2708                editing/execCommand/outdent-nested-lists-3.html
2709                editing/execCommand/outdent-nested-lists-4.html
2710
2711         * editing/IndentOutdentCommand.cpp:
2712         (WebCore::IndentOutdentCommand::prepareBlockquoteLevelForInsertion):
2713         (WebCore::IndentOutdentCommand::tryIndentingAsListItem):
2714         (WebCore::IndentOutdentCommand::indentIntoBlockquote):
2715         (WebCore::IndentOutdentCommand::indentRegion):
2716         * editing/IndentOutdentCommand.h:
2717         * editing/htmlediting.cpp:
2718         (WebCore::enclosingListChild):
2719         (WebCore::canMergeLists):
2720         (WebCore::isVisibilyAdjacent):
2721         * editing/htmlediting.h:
2722
2723 2009-06-27  Pavel Feldman  <pfeldman@chromium.org>
2724
2725         Reviewed by Timothy Hatcher.
2726
2727         WebInspector: Fix completion when iterating options using Tab.
2728
2729         https://bugs.webkit.org/show_bug.cgi?id=26722
2730
2731         * inspector/front-end/TextPrompt.js:
2732         (WebInspector.TextPrompt.prototype._completionsReady):
2733
2734 2009-06-27  Gustavo Noronha Silva  <gns@gnome.org>
2735
2736         Reviewed by Holger Freyther.
2737
2738         https://bugs.webkit.org/show_bug.cgi?id=25889
2739         [GTK] scrollbar policy for main frame is not implementable
2740
2741         Override visibleContentRect to handle GTK+'s case, in which
2742         scrollbars or equivalent decoration are painted by the parent
2743         widget.
2744
2745         * platform/ScrollView.cpp:
2746         * platform/gtk/ScrollViewGtk.cpp:
2747         (WebCore::ScrollView::visibleContentRect):
2748
2749 2009-06-27  Daniel Bates  <dbates@intudata.com>
2750
2751         Reviewed by Adam Barth.
2752
2753         https://bugs.webkit.org/show_bug.cgi?id=26708
2754         
2755         Fix addresses false negatives with respect to scheme relative paths, iFrame JavaScript URLs,
2756         and UTF-7 encoded payloads.   
2757
2758         Tests: http/tests/security/xssAuditor/http-equiv-utf-7-encoded.html
2759                http/tests/security/xssAuditor/iframe-javascript-url.html
2760                http/tests/security/xssAuditor/script-tag-utf-7-encoded.html
2761                http/tests/security/xssAuditor/script-tag-with-source-relative-scheme.html
2762
2763         * html/HTMLTokenizer.cpp:
2764         (WebCore::HTMLTokenizer::scriptHandler): Moved XSSAuditor check to HTMLTokenizer::parseTag.
2765         (WebCore::HTMLTokenizer::parseTag):
2766         * loader/FrameLoader.cpp:
2767         (WebCore::FrameLoader::loadSubframe): Modified to inform XSSAuditor of parent frame so
2768         as to compare against iFrame javascript URL.
2769         * page/XSSAuditor.cpp: Removed method XSSAuditor::isControlCharacter. Instead, exposed method
2770         isControlCharacter in ResourceResponseBase.cpp.
2771         (WebCore::XSSAuditor::XSSAuditor):
2772         (WebCore::XSSAuditor::decodeURL): Modified to decode string using specified encoder.
2773         (WebCore::XSSAuditor::findInRequest): Generalized to arbitrary frame so as to prevent execution
2774         of iFrame javascript URL.
2775         * page/XSSAuditor.h: Added field m_parentFrame.
2776         * platform/network/ResourceResponseBase.cpp:
2777         (WebCore::isControlCharacter):
2778         * platform/network/ResourceResponseBase.h:
2779
2780 2009-06-27  Oliver Hunt  <oliver@apple.com>
2781
2782         Reviewed by Maciej Stachowiak.
2783
2784         Bug 26771: Canvas is incorrectly tainted when drawing from a video element that uses <source> elements
2785
2786         The drawImage(<video>) logic naively assumes that it just needs
2787         to check the src attribute of the video element when in fact it
2788         needs to look at the url that is being played instead.  Failure
2789         to do this means that video provided through source elements 
2790         taints the canvas.
2791
2792         Test: media/video-canvas-source.html
2793
2794         * html/CanvasRenderingContext2D.cpp:
2795         (WebCore::CanvasRenderingContext2D::checkOrigin):
2796         (WebCore::CanvasRenderingContext2D::drawImage):
2797         * html/CanvasRenderingContext2D.h:
2798
2799 2009-06-26  Brian Weinstein  <bweinstein@apple.com>
2800
2801         Reviewed by Simon Fraser.
2802
2803         https://bugs.webkit.org/show_bug.cgi?id=26695
2804         
2805         Added the ability to do scrollbar hit testing in EventHandler, changed the
2806         signature of a PlatformWheelEvent constructor, and changed scrollbarUnderMouse
2807         to scrollbarUnderPoint, and updated all calls to that function.        
2808
2809         * page/EventHandler.cpp:
2810         (WebCore::EventHandler::hitTestResultAtPoint):
2811         (WebCore::EventHandler::handleMousePressEvent):
2812         (WebCore::EventHandler::handleMouseMoveEvent):
2813         * page/EventHandler.h:
2814         (WebCore::):
2815         * platform/PlatformWheelEvent.h:
2816         * platform/ScrollView.cpp:
2817         (WebCore::ScrollView::scrollbarUnderPoint):
2818         * platform/ScrollView.h:
2819         * platform/chromium/PopupMenuChromium.cpp:
2820         (WebCore::PopupListBox::handleMouseDownEvent):
2821         (WebCore::PopupListBox::handleMouseMoveEvent):
2822         * platform/win/WheelEventWin.cpp:
2823         (WebCore::PlatformWheelEvent::PlatformWheelEvent):
2824
2825
2826 2009-06-26  Simon Fraser  <simon.fraser@apple.com>
2827
2828         Reviewed by Dan Bernstein.
2829
2830         <rdar://problem/7011924> Opacity transitions should not trigger hardware compositing mode
2831         
2832         Don't go into compositing mode just for opacity transitions, but they will be
2833         hardware acclerated if we're already compositing.
2834
2835         * rendering/RenderLayerCompositor.cpp:
2836         (WebCore::RenderLayerCompositor::requiresCompositingLayer):
2837         (WebCore::RenderLayerCompositor::requiresCompositingForTransform):
2838         (WebCore::RenderLayerCompositor::requiresCompositingForAnimation):
2839         * rendering/RenderLayerCompositor.h:
2840
2841 2009-06-26  Simon Fraser  <simon.fraser@apple.com>
2842
2843         Rubber-stamped by Dave Levin
2844
2845         Rename ioCompState to compositingState to better match WebCore coding style.
2846         
2847         * rendering/RenderLayerCompositor.cpp:
2848         (WebCore::RenderLayerCompositor::computeCompositingRequirements):
2849         (WebCore::RenderLayerCompositor::rebuildCompositingLayerTree):
2850
2851 2009-06-26  Dan Bernstein  <mitz@apple.com>
2852
2853         Reviewed by Mark Rowe.
2854
2855         - revert unintentional project changes from r45277
2856
2857         * WebCore.xcodeproj/project.pbxproj:
2858
2859 2009-06-26  Mark Rowe  <mrowe@apple.com>
2860
2861         Fix the Windows build.
2862
2863         * WebCore.vcproj/WebCore.vcproj: Remove ColorSafari.cpp as
2864         the file was deleted from SVN.
2865
2866 2009-06-26  Simon Fraser  <simon.fraser@apple.com>
2867
2868         Reviewed by Dan Bernstein.
2869
2870         https://bugs.webkit.org/show_bug.cgi?id=26766
2871
2872         Change to use array indexing rather than Vector enumerators; the former
2873         are preferred style.
2874
2875         * rendering/RenderLayerBacking.cpp:
2876         (WebCore::RenderLayerBacking::hasNonCompositingContent):
2877         * rendering/RenderLayerCompositor.cpp:
2878         (WebCore::RenderLayerCompositor::calculateCompositedBounds):
2879         (WebCore::RenderLayerCompositor::computeCompositingRequirements):
2880         (WebCore::RenderLayerCompositor::rebuildCompositingLayerTree):
2881         (WebCore::RenderLayerCompositor::updateCompositingChildrenGeometry):
2882         (WebCore::RenderLayerCompositor::recursiveRepaintLayerRect):
2883         (WebCore::RenderLayerCompositor::layerHas3DContent):
2884
2885 2009-06-26  Dan Bernstein  <mitz@apple.com>
2886
2887         Reviewed by Oliver Hunt.
2888
2889         - fix <rdar://problem/6961476> REGRESSION (r42043): scrollWidth reported
2890           as 1 px
2891
2892         Test: fast/dom/Element/scrollWidth.html
2893
2894         Changed scrollWidth and scrollHeight to use the same logic for
2895         visible overflow boxes that is used for clipped overflow boxes. In
2896         particular, borders are not included and
2897         {leftmost,rightmost,lowest}Position() are used. This logic matches IE8.
2898
2899         * rendering/RenderBox.cpp:
2900         (WebCore::RenderBox::scrollWidth):
2901         (WebCore::RenderBox::scrollHeight):
2902
2903 2009-06-26  Chris Fleizach  <cfleizach@apple.com>
2904
2905         Reviewed by Oliver Hunt.
2906
2907         Bug 26725: aria-hidden, aria-disabled, aria-readonly need to be implemented
2908         https://bugs.webkit.org/show_bug.cgi?id=26725
2909
2910         Tests: accessibility/aria-disabled.html
2911                accessibility/aria-hidden.html
2912                accessibility/aria-readonly.html
2913
2914         * accessibility/AccessibilityRenderObject.cpp:
2915         (WebCore::AccessibilityRenderObject::ariaIsHidden):
2916         (WebCore::AccessibilityRenderObject::accessibilityIsIgnored):
2917         (WebCore::AccessibilityRenderObject::isEnabled):
2918         (WebCore::AccessibilityRenderObject::canSetValueAttribute):
2919         * accessibility/AccessibilityRenderObject.h:
2920         * html/HTMLAttributeNames.in:
2921
2922 2009-06-26  Brett Wilson  <brettw@chromium.org>
2923
2924         Reviewed by David Levin.
2925
2926         https://bugs.webkit.org/show_bug.cgi?id=26759
2927
2928         GIFImageDecoder is broken.
2929
2930         Make the GIFImageDecoder.repetitionCount function const to match the
2931         base class. The mismatched definitions were causing the function to not
2932         get called.
2933
2934         * platform/image-decoders/gif/GIFImageDecoder.cpp:
2935         (WebCore::GIFImageDecoder::repetitionCount):
2936         * platform/image-decoders/gif/GIFImageDecoder.h:
2937
2938 2009-06-26  Chris Marrin  <cmarrin@apple.com>
2939
2940         Reviewed by Simon Fraser  <simon.fraser@apple.com>.
2941
2942         Additional fix for https://bugs.webkit.org/show_bug.cgi?id=26651
2943
2944         The flag should always default to true to avoid it getting set
2945         to false in a build with accelerated compositing turned off
2946         and then disabling accelerated compositing when subsequently
2947         running a build with it turned on.
2948
2949         * page/Settings.cpp:
2950         (WebCore::Settings::Settings):
2951
2952 2009-06-26  Brady Eidson  <beidson@apple.com>
2953
2954         Reviewed by Sam Weinig.
2955
2956         Followup for the fix for <rdar://problem/6961578> REGRESSION (r43511): Opening .fdf files from Acrobat Professional fails
2957
2958         Now that other MIME type correction stuff is in our swizzled method, Tiger needs it too!
2959
2960         * platform/network/mac/ResourceHandleMac.mm:
2961         (-[WebCoreResourceHandleAsDelegate connection:didReceiveResponse:]):
2962         * platform/network/mac/WebCoreURLResponse.h:
2963
2964 2009-06-26  Jeremy Orlow  <jorlow@chromium.org>
2965
2966         Reviewed by Darin Fisher.
2967
2968         https://bugs.webkit.org/show_bug.cgi?id=26732
2969
2970         For the final step of https://bugs.webkit.org/show_bug.cgi?id=25376,
2971         combine LocalStorage and SessionStorage into StorageNamespace. The
2972         synching code (for LocalStorage) has already been removed, so these
2973         classes are now very similar.  All they do is essentially contain a
2974         logical grouping of origins that are attached to specific contexts
2975         (be it PageGroups for LocalStorage and Page for SessionStorage).
2976
2977         * GNUmakefile.am:
2978         * WebCore.vcproj/WebCore.vcproj:
2979         * WebCore.xcodeproj/project.pbxproj:
2980         * WebCoreSources.bkl:
2981         * page/Chrome.cpp:
2982         (WebCore::Chrome::createWindow):
2983         * page/DOMWindow.cpp:
2984         (WebCore::DOMWindow::localStorage):
2985         * page/DOMWindow.h:
2986         * page/Page.cpp:
2987         (WebCore::Page::sessionStorage):
2988         (WebCore::Page::setSessionStorage):
2989         * page/Page.h:
2990         * page/PageGroup.cpp:
2991         (WebCore::PageGroup::localStorage):
2992         * page/PageGroup.h:
2993         * storage/LocalStorage.cpp: Removed.
2994         * storage/LocalStorage.h: Removed.
2995         * storage/LocalStorageTask.cpp:
2996         * storage/LocalStorageThread.cpp:
2997         * storage/SessionStorage.cpp: Removed.
2998         * storage/SessionStorage.h: Removed.
2999         * storage/StorageArea.cpp:
3000         (WebCore::StorageArea::create):
3001         (WebCore::StorageArea::StorageArea):
3002         (WebCore::StorageArea::copy):
3003         (WebCore::StorageArea::length):
3004         (WebCore::StorageArea::key):
3005         (WebCore::StorageArea::getItem):
3006         (WebCore::StorageArea::setItem):
3007         (WebCore::StorageArea::removeItem):
3008         (WebCore::StorageArea::clear):
3009         (WebCore::StorageArea::contains):
3010         (WebCore::StorageArea::importItem):
3011         (WebCore::StorageArea::close):
3012         (WebCore::StorageArea::dispatchStorageEvent):
3013         * storage/StorageArea.h:
3014         (WebCore::):
3015         * storage/StorageAreaSync.cpp:
3016         (WebCore::StorageAreaSync::scheduleFinalSync):
3017         * storage/StorageNamespace.cpp: Copied from WebCore/storage/LocalStorage.cpp.
3018         (WebCore::localStorageNamespaceMap):
3019         (WebCore::StorageNamespace::localStorageNamespace):
3020         (WebCore::StorageNamespace::sessionStorageNamespace):
3021         (WebCore::StorageNamespace::StorageNamespace):
3022         (WebCore::StorageNamespace::~StorageNamespace):
3023         (WebCore::StorageNamespace::copy):
3024         (WebCore::StorageNamespace::storageArea):
3025         (WebCore::StorageNamespace::close):
3026         * storage/StorageNamespace.h: Copied from WebCore/storage/LocalStorage.h.
3027
3028 2009-06-26  Nate Chapin  <japhet@chromium.org>
3029
3030         Reviewed by David Levin.
3031
3032         Upstream V8Proxy.  This involved updating a lot of function and variable names to match WebKit style, hence the large size.
3033
3034         https://bugs.webkit.org/show_bug.cgi?id=26623
3035
3036         * bindings/v8/ScheduledAction.cpp:
3037         (WebCore::ScheduledAction::ScheduledAction):
3038         (WebCore::ScheduledAction::~ScheduledAction):
3039         (WebCore::ScheduledAction::execute):
3040         * bindings/v8/ScriptCallStack.cpp:
3041         (WebCore::ScriptCallStack::ScriptCallStack):
3042         * bindings/v8/ScriptController.cpp:
3043         (WebCore::ScriptController::isSafeScript):
3044         (WebCore::ScriptController::gcProtectJSWrapper):
3045         (WebCore::ScriptController::gcUnprotectJSWrapper):
3046         (WebCore::ScriptController::processingUserGesture):
3047         (WebCore::ScriptController::evaluate):
3048         (WebCore::ScriptController::setEventHandlerLineNumber):
3049         (WebCore::ScriptController::bindToWindowObject):
3050         (WebCore::ScriptController::collectGarbage):
3051         (WebCore::ScriptController::haveInterpreter):
3052         (WebCore::createScriptObject):
3053         (WebCore::ScriptController::createScriptObjectForPluginElement):
3054         * bindings/v8/ScriptInstance.cpp:
3055         (WebCore::V8ScriptInstance::clear):
3056         (WebCore::V8ScriptInstance::set):
3057         * bindings/v8/ScriptObject.cpp:
3058         (WebCore::ScriptGlobalObject::set):
3059         * bindings/v8/ScriptObjectQuarantine.cpp:
3060         (WebCore::getQuarantinedScriptObject):
3061         * bindings/v8/ScriptScope.cpp:
3062         (WebCore::ScriptScope::ScriptScope):
3063         * bindings/v8/ScriptValue.h:
3064         (WebCore::ScriptValue::ScriptValue):
3065         (WebCore::ScriptValue::operator=):
3066         (WebCore::ScriptValue::clear):
3067         * bindings/v8/V8AbstractEventListener.cpp:
3068         (WebCore::V8AbstractEventListener::invokeEventHandler):
3069         (WebCore::V8AbstractEventListener::handleEvent):
3070         (WebCore::V8AbstractEventListener::disposeListenerObject):
3071         (WebCore::V8AbstractEventListener::getReceiverObject):
3072         * bindings/v8/V8Collection.cpp:
3073         (WebCore::toOptionsCollectionSetter):
3074         * bindings/v8/V8Collection.h:
3075         (WebCore::getV8Object):
3076         (WebCore::getNamedPropertyOfCollection):
3077         (WebCore::nodeCollectionNamedPropertyGetter):
3078         (WebCore::getIndexedPropertyOfCollection):
3079         (WebCore::nodeCollectionIndexedPropertyGetter):
3080         (WebCore::nodeCollectionIndexedPropertyEnumerator):
3081         (WebCore::collectionIndexedPropertyEnumerator):
3082         (WebCore::collectionStringOrNullIndexedPropertyGetter):
3083         * bindings/v8/V8DOMMap.cpp:
3084         (WebCore::weakDOMObjectCallback):
3085         (WebCore::DOMData::removeObjectsFromWrapperMap):
3086         * bindings/v8/V8Helpers.cpp:
3087         (WebCore::wrapNPObject):
3088         (WebCore::toV8Context):
3089         * bindings/v8/V8LazyEventListener.cpp:
3090         (WebCore::V8LazyEventListener::~V8LazyEventListener):
3091         (WebCore::V8LazyEventListener::getListenerFunction):
3092         (WebCore::V8LazyEventListener::callListenerFunction):
3093         (WebCore::V8LazyEventListener::getWrappedListenerFunction):
3094         * bindings/v8/V8NodeFilterCondition.cpp:
3095         (WebCore::V8NodeFilterCondition::V8NodeFilterCondition):
3096         (WebCore::V8NodeFilterCondition::~V8NodeFilterCondition):
3097         (WebCore::V8NodeFilterCondition::acceptNode):
3098         * bindings/v8/V8ObjectEventListener.cpp:
3099         (WebCore::weakObjectEventListenerCallback):
3100         (WebCore::V8ObjectEventListener::~V8ObjectEventListener):
3101         * bindings/v8/V8Proxy.cpp: Added.
3102         * bindings/v8/V8Proxy.h:
3103         (WebCore::):
3104         (WebCore::GlobalHandleInfo::GlobalHandleInfo):
3105         (WebCore::V8Proxy::):
3106         (WebCore::V8Proxy::V8Proxy):
3107         (WebCore::V8Proxy::frame):
3108         (WebCore::V8Proxy::inlineCode):
3109         (WebCore::V8Proxy::setInlineCode):
3110         (WebCore::V8Proxy::timerCallback):
3111         (WebCore::V8Proxy::setTimerCallback):
3112         (WebCore::V8Proxy::setEventHandlerLineNumber):
3113         (WebCore::V8Proxy::finishedWithEvent):
3114         (WebCore::V8Proxy::wrapCPointer):
3115         (WebCore::V8Proxy::extractCPointer):
3116         (WebCore::V8Proxy::convertDOMWrapperToNative):
3117         (WebCore::V8Proxy::convertDOMWrapperToNode):
3118         (WebCore::V8Proxy::convertToV8Object):
3119         (WebCore::V8Proxy::convertToNativeObject):
3120         (WebCore::V8Proxy::convertToNativeEvent):
3121         (WebCore::V8Proxy::context):
3122         (WebCore::V8Proxy::extractCPointerImpl):
3123         (WebCore::V8Proxy::utilityContext):
3124         (WebCore::V8Proxy::constructDOMObject):
3125         (WebCore::throwError):
3126         (WebCore::toV8):
3127         * bindings/v8/V8Utilities.h:
3128         * bindings/v8/WorkerContextExecutionProxy.cpp:
3129         (WebCore::WorkerContextExecutionProxy::retrieve):
3130         (WebCore::WorkerContextExecutionProxy::initContextIfNeeded):
3131         (WebCore::WorkerContextExecutionProxy::GetConstructor):
3132         (WebCore::WorkerContextExecutionProxy::ToV8Object):
3133         (WebCore::WorkerContextExecutionProxy::EventToV8Object):
3134         (WebCore::WorkerContextExecutionProxy::toV8):
3135         (WebCore::WorkerContextExecutionProxy::forgetV8EventObject):
3136         (WebCore::WorkerContextExecutionProxy::evaluate):
3137         (WebCore::WorkerContextExecutionProxy::runScript):
3138         * bindings/v8/custom/V8AttrCustom.cpp:
3139         (WebCore::ACCESSOR_SETTER):
3140         * bindings/v8/custom/V8CSSStyleDeclarationCustom.cpp:
3141         (WebCore::NAMED_PROPERTY_GETTER):
3142         (WebCore::NAMED_PROPERTY_SETTER):
3143         * bindings/v8/custom/V8CanvasPixelArrayCustom.cpp:
3144         (WebCore::INDEXED_PROPERTY_GETTER):
3145         (WebCore::INDEXED_PROPERTY_SETTER):
3146         * bindings/v8/custom/V8CanvasRenderingContext2DCustom.cpp:
3147         (WebCore::toV8):
3148         (WebCore::toCanvasStyle):
3149         (WebCore::ACCESSOR_GETTER):
3150         (WebCore::ACCESSOR_SETTER):
3151         (WebCore::CALLBACK_FUNC_DECL):
3152         * bindings/v8/custom/V8ClientRectListCustom.cpp:
3153         (WebCore::INDEXED_PROPERTY_GETTER):
3154         * bindings/v8/custom/V8ClipboardCustom.cpp:
3155         (WebCore::ACCESSOR_GETTER):
3156         (WebCore::CALLBACK_FUNC_DECL):
3157         * bindings/v8/custom/V8CustomBinding.cpp:
3158         (WebCore::allowSettingFrameSrcToJavascriptUrl):
3159         (WebCore::ACCESSOR_GETTER):
3160         (WebCore::INDEXED_ACCESS_CHECK):
3161         (WebCore::NAMED_ACCESS_CHECK):
3162         (WebCore::V8Custom::GetTargetFrame):
3163         * bindings/v8/custom/V8CustomEventListener.cpp:
3164         (WebCore::V8EventListener::V8EventListener):
3165         (WebCore::V8EventListener::~V8EventListener):
3166         (WebCore::V8EventListener::callListenerFunction):
3167         * bindings/v8/custom/V8CustomSQLStatementCallback.cpp:
3168         (WebCore::V8CustomSQLStatementCallback::handleEvent):
3169         * bindings/v8/custom/V8CustomSQLStatementErrorCallback.cpp:
3170         (WebCore::V8CustomSQLStatementErrorCallback::handleEvent):
3171         * bindings/v8/custom/V8CustomSQLTransactionCallback.cpp:
3172         (WebCore::V8CustomSQLTransactionCallback::handleEvent):
3173         * bindings/v8/custom/V8CustomSQLTransactionErrorCallback.cpp:
3174         (WebCore::V8CustomSQLTransactionErrorCallback::handleEvent):
3175         * bindings/v8/custom/V8CustomVoidCallback.cpp:
3176         (WebCore::V8CustomVoidCallback::handleEvent):
3177         (WebCore::invokeCallback):
3178         * bindings/v8/custom/V8CustomXPathNSResolver.cpp:
3179         (WebCore::V8CustomXPathNSResolver::lookupNamespaceURI):
3180         * bindings/v8/custom/V8DOMParserConstructor.cpp:
3181         (WebCore::CALLBACK_FUNC_DECL):
3182         * bindings/v8/custom/V8DOMWindowCustom.cpp:
3183         (WebCore::V8Custom::WindowSetTimeoutImpl):
3184         (WebCore::convertBase64):
3185         (WebCore::ACCESSOR_SETTER):
3186         (WebCore::CALLBACK_FUNC_DECL):
3187         (WebCore::ACCESSOR_GETTER):
3188         (WebCore::createWindow):
3189         (WebCore::INDEXED_PROPERTY_GETTER):
3190         (WebCore::NAMED_PROPERTY_GETTER):
3191         (WebCore::V8Custom::ClearTimeoutImpl):
3192         (WebCore::NAMED_ACCESS_CHECK):
3193         (WebCore::INDEXED_ACCESS_CHECK):
3194         * bindings/v8/custom/V8DatabaseCustom.cpp:
3195         (WebCore::CALLBACK_FUNC_DECL):
3196         * bindings/v8/custom/V8DocumentCustom.cpp:
3197         (WebCore::CALLBACK_FUNC_DECL):
3198         * bindings/v8/custom/V8DocumentLocationCustom.cpp:
3199         (WebCore::ACCESSOR_GETTER):
3200         (WebCore::ACCESSOR_SETTER):
3201         * bindings/v8/custom/V8ElementCustom.cpp:
3202         (WebCore::CALLBACK_FUNC_DECL):
3203         (WebCore::ACCESSOR_SETTER):
3204         (WebCore::ACCESSOR_GETTER):
3205         * bindings/v8/custom/V8EventCustom.cpp:
3206         (WebCore::ACCESSOR_SETTER):
3207         (WebCore::ACCESSOR_GETTER):
3208         * bindings/v8/custom/V8HTMLCanvasElementCustom.cpp:
3209         (WebCore::CALLBACK_FUNC_DECL):
3210         * bindings/v8/custom/V8HTMLCollectionCustom.cpp:
3211         (WebCore::getNamedItems):
3212         (WebCore::getItem):
3213         (WebCore::NAMED_PROPERTY_GETTER):
3214         (WebCore::CALLBACK_FUNC_DECL):
3215         * bindings/v8/custom/V8HTMLDocumentCustom.cpp:
3216         (WebCore::NAMED_PROPERTY_GETTER):
3217         (WebCore::CALLBACK_FUNC_DECL):
3218         (WebCore::ACCESSOR_GETTER):
3219         * bindings/v8/custom/V8HTMLFormElementCustom.cpp:
3220         (WebCore::INDEXED_PROPERTY_GETTER):
3221         (WebCore::NAMED_PROPERTY_GETTER):
3222         (WebCore::CALLBACK_FUNC_DECL):
3223         * bindings/v8/custom/V8HTMLFrameElementCustom.cpp:
3224         (WebCore::ACCESSOR_SETTER):
3225         * bindings/v8/custom/V8HTMLFrameSetElementCustom.cpp:
3226         (WebCore::NAMED_PROPERTY_GETTER):
3227         * bindings/v8/custom/V8HTMLIFrameElementCustom.cpp:
3228         (WebCore::ACCESSOR_SETTER):
3229         * bindings/v8/custom/V8HTMLImageElementConstructor.cpp:
3230         (WebCore::CALLBACK_FUNC_DECL):
3231         * bindings/v8/custom/V8HTMLInputElementCustom.cpp:
3232         (WebCore::ACCESSOR_GETTER):
3233         (WebCore::ACCESSOR_SETTER):
3234         (WebCore::CALLBACK_FUNC_DECL):
3235         * bindings/v8/custom/V8HTMLOptionElementConstructor.cpp:
3236         (WebCore::CALLBACK_FUNC_DECL):
3237         * bindings/v8/custom/V8HTMLOptionsCollectionCustom.cpp:
3238         (WebCore::CALLBACK_FUNC_DECL):
3239         (WebCore::ACCESSOR_GETTER):
3240         (WebCore::ACCESSOR_SETTER):
3241         (WebCore::INDEXED_PROPERTY_GETTER):
3242         (WebCore::INDEXED_PROPERTY_SETTER):
3243         * bindings/v8/custom/V8HTMLPlugInElementCustom.cpp:
3244         (WebCore::NAMED_PROPERTY_GETTER):
3245         (WebCore::NAMED_PROPERTY_SETTER):
3246         (WebCore::INDEXED_PROPERTY_GETTER):
3247         (WebCore::INDEXED_PROPERTY_SETTER):
3248         * bindings/v8/custom/V8HTMLSelectElementCollectionCustom.cpp:
3249         (WebCore::NAMED_PROPERTY_GETTER):
3250         (WebCore::INDEXED_PROPERTY_SETTER):
3251         * bindings/v8/custom/V8HTMLSelectElementCustom.cpp:
3252         (WebCore::CALLBACK_FUNC_DECL):
3253         (WebCore::removeElement):
3254         * bindings/v8/custom/V8InspectorControllerCustom.cpp:
3255         (WebCore::CALLBACK_FUNC_DECL):
3256         * bindings/v8/custom/V8LocationCustom.cpp:
3257         (WebCore::ACCESSOR_SETTER):
3258         (WebCore::ACCESSOR_GETTER):
3259         (WebCore::CALLBACK_FUNC_DECL):
3260         (WebCore::INDEXED_ACCESS_CHECK):
3261         (WebCore::NAMED_ACCESS_CHECK):
3262         * bindings/v8/custom/V8MessageChannelConstructor.cpp:
3263         (WebCore::CALLBACK_FUNC_DECL):
3264         * bindings/v8/custom/V8MessagePortCustom.cpp:
3265         (WebCore::ACCESSOR_GETTER):
3266         (WebCore::ACCESSOR_SETTER):
3267         (WebCore::CALLBACK_FUNC_DECL):
3268         * bindings/v8/custom/V8NamedNodeMapCustom.cpp:
3269         (WebCore::INDEXED_PROPERTY_GETTER):
3270         (WebCore::NAMED_PROPERTY_GETTER):
3271         * bindings/v8/custom/V8NavigatorCustom.cpp:
3272         (WebCore::ACCESSOR_GETTER):
3273         * bindings/v8/custom/V8NodeCustom.cpp:
3274         (WebCore::CALLBACK_FUNC_DECL):
3275         * bindings/v8/custom/V8NodeIteratorCustom.cpp:
3276         (WebCore::toV8):
3277         (WebCore::CALLBACK_FUNC_DECL):
3278         * bindings/v8/custom/V8NodeListCustom.cpp:
3279         (WebCore::NAMED_PROPERTY_GETTER):
3280         * bindings/v8/custom/V8SQLResultSetRowListCustom.cpp:
3281         (WebCore::CALLBACK_FUNC_DECL):
3282         * bindings/v8/custom/V8SQLTransactionCustom.cpp:
3283         (WebCore::CALLBACK_FUNC_DECL):
3284         * bindings/v8/custom/V8SVGElementInstanceCustom.cpp:
3285         (WebCore::CALLBACK_FUNC_DECL):
3286         * bindings/v8/custom/V8SVGLengthCustom.cpp:
3287         (WebCore::ACCESSOR_GETTER):
3288         (WebCore::CALLBACK_FUNC_DECL):
3289         * bindings/v8/custom/V8SVGMatrixCustom.cpp:
3290         (WebCore::CALLBACK_FUNC_DECL):
3291         * bindings/v8/custom/V8StyleSheetListCustom.cpp:
3292         (WebCore::NAMED_PROPERTY_GETTER):
3293         * bindings/v8/custom/V8TreeWalkerCustom.cpp:
3294         (WebCore::toV8):
3295         (WebCore::CALLBACK_FUNC_DECL):
3296         * bindings/v8/custom/V8WebKitCSSMatrixConstructor.cpp:
3297         (WebCore::CALLBACK_FUNC_DECL):
3298         * bindings/v8/custom/V8WebKitPointConstructor.cpp:
3299         (WebCore::CALLBACK_FUNC_DECL):
3300         * bindings/v8/custom/V8WorkerContextCustom.cpp:
3301         (WebCore::ACCESSOR_GETTER):
3302         (WebCore::ACCESSOR_SETTER):
3303         (WebCore::SetTimeoutOrInterval):
3304         (WebCore::CALLBACK_FUNC_DECL):
3305         * bindings/v8/custom/V8WorkerCustom.cpp:
3306         (WebCore::CALLBACK_FUNC_DECL):
3307         (WebCore::getEventListener):
3308         (WebCore::ACCESSOR_GETTER):
3309         (WebCore::ACCESSOR_SETTER):
3310         * bindings/v8/custom/V8XMLHttpRequestConstructor.cpp:
3311         (WebCore::CALLBACK_FUNC_DECL):
3312         * bindings/v8/custom/V8XMLHttpRequestCustom.cpp:
3313         (WebCore::getEventListener):
3314         (WebCore::ACCESSOR_GETTER):
3315         (WebCore::ACCESSOR_SETTER):
3316         (WebCore::CALLBACK_FUNC_DECL):
3317         * bindings/v8/custom/V8XMLHttpRequestUploadCustom.cpp:
3318         (WebCore::ACCESSOR_GETTER):
3319         (WebCore::ACCESSOR_SETTER):
3320         (WebCore::CALLBACK_FUNC_DECL):
3321         * bindings/v8/custom/V8XMLSerializerConstructor.cpp:
3322         (WebCore::CALLBACK_FUNC_DECL):
3323         * bindings/v8/custom/V8XPathEvaluatorConstructor.cpp:
3324         (WebCore::CALLBACK_FUNC_DECL):
3325         * bindings/v8/custom/V8XSLTProcessorCustom.cpp:
3326         (WebCore::CALLBACK_FUNC_DECL):
3327
3328 2009-06-26  Kevin McCullough  <kmccullough@apple.com>
3329
3330         Reviewed by Tim Hatcher.
3331
3332         <rdar://problem/7011047> Profiler shows the record button 'on' even
3333         though it's finished
3334
3335         I consolidated the creation of the user initiated profile name into
3336         its own function and then called it from console::profile instead of
3337         calling startUserInitiatedProfiling().  This way we don't call
3338         toggleRecordButton() which turns on the record button.
3339
3340         * inspector/InspectorController.cpp:
3341         (WebCore::InspectorController::didCommitLoad):
3342         (WebCore::InspectorController::getCurrentUserInitiatedProfileName):
3343         (WebCore::InspectorController::startUserInitiatedProfiling):
3344         (WebCore::InspectorController::stopUserInitiatedProfiling):
3345         * inspector/InspectorController.h:
3346         * page/Console.cpp:
3347         (WebCore::Console::profile):
3348         (WebCore::Console::profileEnd):
3349
3350 2009-06-26  Jeremy Moskovich  <jeremy@chromium.org>
3351
3352         Reviewed by Eric Seidel.
3353
3354         https://bugs.webkit.org/show_bug.cgi?id=26691
3355
3356         Cleanup: Move focusRingColor to RenderTheme.
3357
3358         Most of this CL involves deleting files and removing dead code.
3359
3360         focusRingColor() is now defined in RenderTheme rather than in
3361         misc. places on each port.  The default color is specified as
3362         black in renderTheme and ports can override it in their own
3363         custom renderThemes.
3364
3365         Behavior should be identical except for the following cases,
3366         this lists platform and what the focus ring color used to be
3367         before this cl and the file where it used to be defined:
3368
3369         Android - red
3370         WebCore/platform/android/TemporaryLinkStubs.cpp
3371
3372         Cairo - aqua focus ring color - 0xFF7DADD9
3373         WebCore/platform/graphics/cairo/GraphicsContextCairo.cpp
3374
3375         wx - red
3376         WebCore/platform/wx/TemporaryLinkStubs.cpp
3377
3378         QT - black
3379         WebCore/platform/graphics/qt/GraphicsContextQt.cpp
3380
3381         Manual test: manual-tests/focusringcolor-change-on-theme-change.html
3382
3383         * css/CSSStyleSelector.cpp:
3384         (WebCore::CSSStyleSelector::getColorFromPrimitiveValue):
3385         * manual-tests/focusringcolor-change-on-theme-change.html: Added.
3386         * platform/android/TemporaryLinkStubs.cpp:
3387         * platform/graphics/cairo/GraphicsContextCairo.cpp:
3388         * platform/graphics/chromium/ColorChromium.cpp: Removed.
3389         * platform/graphics/chromium/ColorChromiumMac.mm: Removed.
3390         * platform/graphics/mac/ColorMac.h:
3391         * platform/graphics/mac/ColorMac.mm:
3392         (WebCore::oldAquaFocusRingColor):
3393         (WebCore::setUsesTestModeFocusRingColor):
3394         (WebCore::usesTestModeFocusRingColor):
3395         * platform/graphics/qt/GraphicsContextQt.cpp:
3396         * platform/graphics/skia/GraphicsContextSkia.cpp:
3397         (WebCore::GraphicsContext::drawFocusRing):
3398         * platform/graphics/win/ColorSafari.cpp: Removed.
3399         * platform/wx/TemporaryLinkStubs.cpp:
3400         * rendering/RenderTheme.cpp:
3401         (WebCore::RenderTheme::focusRingColor):
3402         * rendering/RenderTheme.h:
3403         * rendering/RenderThemeChromiumMac.h:
3404         * rendering/RenderThemeChromiumMac.mm:
3405         (WebCore::RenderThemeChromiumMac::focusRingColor):
3406         (WebCore::RenderThemeChromiumMac::systemColor):
3407         * rendering/RenderThemeChromiumSkia.cpp:
3408         (WebCore::RenderThemeChromiumSkia::focusRingColor):
3409         * rendering/RenderThemeChromiumSkia.h:
3410         * rendering/RenderThemeMac.h:
3411         * rendering/RenderThemeMac.mm:
3412         (WebCore::RenderThemeMac::focusRingColor):
3413         (WebCore::RenderThemeMac::systemColor):
3414         * rendering/RenderThemeSafari.cpp:
3415         (WebCore::makeRGBAFromCGColor):
3416         (WebCore::RenderThemeSafari::focusRingColor):
3417         * rendering/RenderThemeSafari.h:
3418
3419 2009-06-26  Dmitry Titov  <dimich@chromium.org>
3420
3421         Reviewed by David Levin.
3422
3423         https://bugs.webkit.org/show_bug.cgi?id=26761
3424         [Chromium] Enable Dedicated Workers in Chromium.
3425
3426         * bindings/v8/custom/V8WorkerCustom.cpp:
3427         (WebCore::CALLBACK_FUNC_DECL):
3428         Remove the check that prevented workers from being created w/o a command-line switch.
3429         The flag itself and methods will be removed in a subsequent patch, after
3430         corresponding change in Chromium.
3431
3432 2009-06-26  Jessie Berlin  <jberlin@apple.com>
3433
3434         Reviewed by Mark Rowe.
3435         
3436         Fix: https://bugs.webkit.org/show_bug.cgi?id=26723
3437         Where the m_mouseDown event was never being set on windows, so the
3438         client X and Y coordinates were always being reported as zero in a
3439         dragstart handler.
3440
3441         Test: editing/selection/drag-start-event-client-x-y.html
3442
3443         * page/EventHandler.cpp:
3444         (WebCore::EventHandler::handleMousePressEvent):
3445         Set the m_mouseDown event when the mouse press is handled.
3446         * page/mac/EventHandlerMac.mm:
3447         (WebCore::EventHandler::mouseDown):
3448         Removed now redundant setting of m_mouseDown.
3449
3450 2009-06-26  Brady Eidson  <beidson@apple.com>
3451
3452         Tiger build fix
3453
3454         * WebCore.xcodeproj/project.pbxproj:
3455         * platform/network/mac/WebCoreURLResponse.mm:
3456         (swizzleMIMETypeMethodIfNecessary):
3457
3458 2009-06-26  Alexey Proskuryakov  <ap@webkit.org>
3459
3460         Reviewed by Sam Weinig.
3461
3462         https://bugs.webkit.org/show_bug.cgi?id=26681
3463         Problem updating applicationCache when server returns 304
3464         
3465         Improve the fix, make the test pass on Tiger.
3466
3467         * loader/appcache/ApplicationCacheGroup.cpp:
3468         (WebCore::ApplicationCacheGroup::didReceiveResponse): Fix another code path to remove the
3469         current item from list.
3470
3471         * platform/network/mac/ResourceHandleMac.mm: (WebCore::ResourceHandle::start): On Tiger,
3472         conditional requests that cannot be cached by network layer cause errors with default cache
3473         policy.
3474
3475 2009-06-26  Brady Eidson  <beidson@apple.com>
3476
3477         Reviewed by Sam Weinig
3478
3479         <rdar://problem/6961578> REGRESSION (r43511): Opening .fdf files from Acrobat Professional fails
3480
3481         When we disabled content sniffing for file urls we lost knowledge of many file extensions that we
3482         didn't intend to lose.  Turns out the CoreTypes UTI database doesn't know about every extension Gatekeeper
3483         knew about.
3484
3485         By comparing CoreTypes' database to Gatekeepers, this patch adds a hardcoded list of file extension to MIME
3486         type mappings that are missing in CoreType's database.
3487
3488         Test: platform/mac/fast/loader/file-url-mimetypes.html
3489
3490         * platform/network/mac/ResourceHandleMac.mm:
3491         (-[WebCoreResourceHandleAsDelegate connection:didReceiveResponse:]): Move the MIME Type swizzling code to
3492           WebCoreURLResponse.
3493
3494         * platform/network/mac/ResourceResponseMac.mm:
3495         (WebCore::ResourceResponse::platformLazyInit): _webcore_MIMEType -> MIMEType, as we now have only one place
3496           where we do all MIMEType correction.
3497
3498         * platform/network/mac/WebCoreURLResponse.h: Remove _webcore_MIMEType, as it is now folded into the swizzled
3499           implementation of MIMEType.
3500         * platform/network/mac/WebCoreURLResponse.mm:
3501         (createBinaryExtensionsSet):
3502         (createExtensionToMIMETypeMap):
3503         (swizzleMIMETypeMethodIfNecessary):
3504         (webNSURLResponseMIMEType): If it's a file URL and there's no MIME type, see if the extension exists in the 
3505           extension -> MIME type map before turning to the default MIME type.  Also roll in what was previously
3506           implemented in _webcore_MIMEType.
3507
3508         * svg/graphics/SVGImage.cpp:
3509         (WebCore::SVGImage::~SVGImage): Tweak this ASSERT - SVGImages might get destroyed without ever having a client.
3510
3511 2009-06-25  Pierre d'Herbemont  <pdherbemont@apple.com>
3512
3513         Reviewed by Simon Fraser.
3514
3515         Show the fullscreen button only if the backend has support for it.
3516
3517         https://bugs.webkit.org/show_bug.cgi?id=26661
3518
3519         No test since this is not reachable via the DOM.
3520
3521         * html/HTMLMediaElement.h:
3522         (WebCore::HTMLMediaElement::supportsFullscreen): new
3523         * html/HTMLVideoElement.h:
3524         (WebCore::HTMLVideoElement::supportsFullscreen): new
3525         * platform/graphics/MediaPlayer.cpp:
3526         (WebCore::NullMediaPlayerPrivate::supportsFullscreen): new
3527         (WebCore::MediaPlayer::supportsFullscreen): new
3528         * platform/graphics/MediaPlayer.h: new
3529         * platform/graphics/MediaPlayerPrivate.h: new
3530         (WebCore::MediaPlayerPrivateInterface::supportsFullscreen): new
3531         * rendering/MediaControlElements.cpp:
3532         (WebCore::MediaControlFullscreenButtonElement::rendererIsNeeded): new
3533         * rendering/MediaControlElements.h:
3534
3535 2009-06-25  Pierre d'Herbemont  <pdherbemont@apple.com>
3536
3537         Reviewed by Simon Fraser.
3538
3539         <rdar://problem/7007776> Controller doesn't automatically update counters when file
3540         is playing ( http://www.jazzguitar.be/mp3/Michael%20Lewis%20-%20SSSJ.mp3 )
3541
3542         Update the time display when the movie time changes.
3543
3544         * rendering/RenderMedia.cpp:
3545         (WebCore::RenderMedia::updateControls):
3546
3547 2009-06-25  Pierre d'Herbemont  <pdherbemont@apple.com>
3548
3549         Reviewed by Simon Fraser.
3550
3551         https://bugs.webkit.org/show_bug.cgi?id=26659
3552
3553         Support hidding a control bar element from the Media element controller.
3554
3555         Update layout tests since the fullscreen button no longer has a renderer.
3556
3557         * rendering/MediaControlElements.cpp:
3558         (WebCore::MediaTextDisplayElement::update): call updateStyle() so everything
3559         is updated properly.
3560         (WebCore::MediaControlInputElement::MediaControlInputElement):
3561         (WebCore::MediaControlInputElement::update): call updateStyle()
3562         (WebCore::MediaControlInputElement::updateStyle): create the renderer properly
3563         or not depending on what rendererIsNeeded() return.
3564         * rendering/MediaControlElements.h:
3565
3566 2009-06-26  Kevin McCullough  <kmccullough@apple.com>
3567
3568         Reviewed by Oliver Hunt.
3569
3570         <rdar://problem/6968137> Profiler title numbers increment even after a
3571         reload.
3572
3573         - Now the numbers are reset when the profiles are.
3574
3575         * inspector/InspectorController.cpp:
3576         (WebCore::InspectorController::didCommitLoad):
3577
3578 2009-06-26  Adele Peterson  <adele@apple.com>
3579
3580         Reviewed by Darin Adler.
3581
3582         Fix for <rdar://problem/7000796>
3583         REGRESSION(34681): Breaking up quoted text makes new, unquoted text blue after certain steps; repros with some messages
3584
3585         Test: editing/inserting/break-blockquote-after-delete.html
3586
3587         Keep track of whether the typing style should be preserved after the TypingCommand is applied.  When adding onto an open
3588         typing command, keep that flag up to date.
3589
3590         In this case, an InsertParagraphSeparatorInQuotedContent command, which shou