WebCore:
[WebKit-https.git] / WebCore / ChangeLog
1 2008-10-10  David Hyatt  <hyatt@apple.com>
2
3         https://bugs.webkit.org/show_bug.cgi?id=21522
4
5         Support increment/decrement/start/end on scrollbars.  Allows a fully functional scrollbar to be
6         created.  (Just :hover/:active left to finish it up.)
7
8         Reviewed by Adam Roben
9
10         Added scrollbars/scrollbar-buttons.html
11
12         * css/CSSStyleSelector.cpp:
13         (WebCore::CSSStyleSelector::SelectorChecker::checkScrollbarPseudoClass):
14
15 2008-10-10  David Hyatt  <hyatt@apple.com>
16
17         Rename some pseudoclasses.  Removing "-scrollbar-" from a bunch of the pseudoclasses.  Renaming
18         back/forward to decrement/increment.  Adding start/end pseudoclasses.
19
20         Reviewed by Eric Seidel
21
22         * css/CSSSelector.cpp:
23         (WebCore::CSSSelector::extractPseudoType):
24         * css/CSSSelector.h:
25         (WebCore::CSSSelector::):
26         * css/CSSStyleSelector.cpp:
27         (WebCore::CSSStyleSelector::SelectorChecker::checkScrollbarPseudoClass):
28
29 2008-10-10  David Hyatt  <hyatt@apple.com>
30
31         Switch window-active to window-inactive, since that will work better as far as degrading in other
32         browsers.
33
34         Reviewed by Tim Hatcher
35
36         * css/CSSSelector.cpp:
37         (WebCore::CSSSelector::extractPseudoType):
38         * css/CSSSelector.h:
39         (WebCore::CSSSelector::):
40         * css/CSSStyleSelector.cpp:
41         (WebCore::CSSStyleSelector::SelectorChecker::checkScrollbarPseudoClass):
42
43 2008-10-09  David Hyatt  <hyatt@apple.com>
44
45         Add support for scrollbar orientation as a pseudoclass.  Add support for whether or not the scrollbar
46         is active as well.
47
48         Reviewed by Tim Hatcher
49
50         Added scrollbars/scrollbar-orientation.html
51
52         * css/CSSSelector.cpp:
53         (WebCore::CSSSelector::extractPseudoType):
54         * css/CSSSelector.h:
55         (WebCore::CSSSelector::):
56         * css/CSSStyleSelector.cpp:
57         (WebCore::CSSStyleSelector::SelectorChecker::checkScrollbarPseudoClass):
58         * platform/Scrollbar.cpp:
59         (WebCore::Scrollbar::isWindowActive):
60         * platform/Scrollbar.h:
61         * rendering/RenderScrollbar.cpp:
62         (WebCore::RenderScrollbar::paint):
63         (WebCore::RenderScrollbar::partForStyleResolve):
64         * rendering/RenderScrollbar.h:
65
66 2008-10-09  David Hyatt  <hyatt@apple.com>
67
68         Add support for pseudo classes on scrollbar pseudo elements.  As an initial proof of concept only
69         :enabled/:disabled are supported.  More pseudo classes will follow quickly now that this works.
70
71         Reviewed by Tim Hatcher
72
73         Added scrollbars/disabled-scrollbar.html
74
75         * css/CSSStyleSelector.cpp:
76         (WebCore::CSSStyleSelector::SelectorChecker::checkSelector):
77         (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector):
78         (WebCore::CSSStyleSelector::SelectorChecker::checkScrollbarPseudoClass):
79         * css/CSSStyleSelector.h:
80         * rendering/RenderObject.cpp:
81         (WebCore::RenderObject::getPseudoStyle):
82         * rendering/RenderObject.h:
83         * rendering/RenderScrollbar.cpp:
84         (WebCore::RenderScrollbar::setEnabled):
85         (WebCore::RenderScrollbar::scrollbarForStyleResolve):
86         (WebCore::RenderScrollbar::getScrollbarPseudoStyle):
87         (WebCore::RenderScrollbar::paintPart):
88         * rendering/RenderScrollbar.h:
89
90 2008-10-09  Eric Carlson  <eric.carlson@apple.com>
91
92         Media controls should not show when element is not visible
93
94         https://bugs.webkit.org/show_bug.cgi?id=21155
95         
96         Reviewed by Adele Peterson.
97
98         * html/HTMLMediaElement.cpp:
99         (WebCore::HTMLMediaElement::recalcStyle): New, call renderer()->updateFromElement to stay
100         in sync with visibility changes
101         * html/HTMLMediaElement.h:
102         * rendering/RenderMedia.cpp:
103         (WebCore::RenderMedia::RenderMedia): initialize m_previousVisible
104         (WebCore::RenderMedia::updateControlVisibility): consider style()->visibility() when determining
105         if element is visible or not. Don't animate controller visibility when change triggered by
106         showing or hiding media element.
107         * rendering/RenderMedia.h: declare m_previousVisible
108
109 2008-10-09  Timothy Hatcher  <timothy@apple.com>
110
111         Annotate the Objective-C DOM APIs with the JavaScriptCore/WebKitAvailability.h
112         availability macros and version macros.
113
114         https://bugs.webkit.org/show_bug.cgi?id=21496
115         rdar://problem/6259225
116
117         Reviewed by Sam Weinig.
118
119         * bindings/objc/DOMCSS.h: Add a version #if around catgory interface.
120         * bindings/objc/DOMEventException.h: Include JavaScriptCore/WebKitAvailability.h
121         and add an #if around the enum.
122         * bindings/objc/DOMException.h: Ditto. Give the enum a name and remove the
123         comment to match the other headers.
124         * bindings/objc/DOMExtensions.h: Annotate the methods with version 3.0 or later.
125         * bindings/objc/DOMObject.h: Add a version #if around class interface.
126         * bindings/objc/DOMRangeException.h: Include JavaScriptCore/WebKitAvailability.h
127         and add a version #if around the enum.
128         * bindings/objc/DOMSVGException.h: Ditto. Use the latest version since SVG is new.
129         * bindings/objc/DOMXPathException.h: Ditto. Use the 3.0 version.
130         * bindings/objc/PublicDOMInterfaces.h: Annotate classes and protocols for
131         when they where added to WebKit. Also annotate individual methods that are
132         deprecated or where added after the class was added to WebKit.
133         * bindings/objc/WebScriptObject.h: Include JavaScriptCore/WebKitAvailability.h
134         since this header is included by most DOM headers. Annotate the JSObject method.
135
136         * bindings/scripts/CodeGeneratorObjC.pm:
137         (ReadPublicInterfaces): Parse out the availability macro for each function/property.
138         And parse out the availability version for the class/protocol. Default to
139         WEBKIT_VERSION_LATEST if the class is new.
140         (GenerateHeader): Include JavaScriptCore/WebKitAvailability.h if needed. Add the
141         interface availability version check if the class has a required version. Create
142         a public interface key (used to lookup in $publicInterfaces) and make a declaration
143         suffix that includes the availability macro (if needed). Use the "available in 1.3
144         and later but deprecated in 3.0" macro instead of "deprecated in 10.5 and later" as
145         the default availability macro for old style methods. Tweak line breaks in the generated
146         headers to look good and not have too many extra lines.
147
148 2008-10-09  Simon Fraser  <simon.fraser@apple.com>
149
150         Reviewed by Dave Hyatt
151
152         https://bugs.webkit.org/show_bug.cgi?id=20947
153
154         Refactor setStyle() methods into styleWillChange()
155         and styleDidChange(), so most of the setStyle() overrides can
156         be removed.
157
158         * rendering/RenderBR.cpp:
159         (WebCore::RenderBR::styleDidChange):
160         * rendering/RenderBR.h:
161         * rendering/RenderBlock.cpp:
162         (WebCore::RenderBlock::styleWillChange):
163         (WebCore::RenderBlock::styleDidChange):
164         * rendering/RenderBlock.h:
165         * rendering/RenderBox.cpp:
166         (WebCore::RenderBox::~RenderBox):
167         (WebCore::RenderBox::destroy):
168         (WebCore::RenderBox::styleWillChange):
169         (WebCore::RenderBox::styleDidChange):
170         * rendering/RenderBox.h:
171         * rendering/RenderButton.cpp:
172         (WebCore::RenderButton::styleWillChange):
173         (WebCore::RenderButton::styleDidChange):
174         * rendering/RenderButton.h:
175         * rendering/RenderFieldset.cpp:
176         (WebCore::RenderFieldset::styleDidChange):
177         * rendering/RenderFieldset.h:
178         * rendering/RenderFileUploadControl.cpp:
179         (WebCore::RenderFileUploadControl::styleDidChange):
180         * rendering/RenderFileUploadControl.h:
181         * rendering/RenderInline.cpp:
182         (WebCore::RenderInline::styleDidChange):
183         * rendering/RenderInline.h:
184         * rendering/RenderLayer.cpp:
185         (WebCore::RenderLayer::styleChanged):
186         * rendering/RenderLayer.h:
187         * rendering/RenderListBox.cpp:
188         (WebCore::RenderListBox::styleDidChange):
189         * rendering/RenderListBox.h:
190         * rendering/RenderListItem.cpp:
191         (WebCore::RenderListItem::styleDidChange):
192         * rendering/RenderListItem.h:
193         * rendering/RenderListMarker.cpp:
194         (WebCore::RenderListMarker::styleWillChange):
195         (WebCore::RenderListMarker::styleDidChange):
196         * rendering/RenderListMarker.h:
197         * rendering/RenderMenuList.cpp:
198         (WebCore::RenderMenuList::styleDidChange):
199         * rendering/RenderMenuList.h:
200         * rendering/RenderObject.cpp:
201         (WebCore::RenderObject::setStyle):
202         (WebCore::RenderObject::setStyleInternal):
203         (WebCore::RenderObject::styleWillChange):
204         (WebCore::RenderObject::styleDidChange):
205         * rendering/RenderObject.h:
206         * rendering/RenderReplaced.cpp:
207         (WebCore::RenderReplaced::styleDidChange):
208         * rendering/RenderReplaced.h:
209         * rendering/RenderSVGGradientStop.cpp:
210         (WebCore::RenderSVGGradientStop::styleDidChange):
211         * rendering/RenderSVGGradientStop.h:
212         * rendering/RenderScrollbarPart.cpp:
213         (WebCore::RenderScrollbarPart::styleDidChange):
214         * rendering/RenderScrollbarPart.h:
215         * rendering/RenderSlider.cpp:
216         (WebCore::RenderSlider::styleDidChange):
217         * rendering/RenderSlider.h:
218         * rendering/RenderTable.cpp:
219         (WebCore::RenderTable::styleDidChange):
220         * rendering/RenderTable.h:
221         * rendering/RenderTableCell.cpp:
222         (WebCore::RenderTableCell::styleWillChange):
223         (WebCore::RenderTableCell::styleDidChange):
224         * rendering/RenderTableCell.h:
225         * rendering/RenderTableRow.cpp:
226         (WebCore::RenderTableRow::styleWillChange):
227         * rendering/RenderTableRow.h:
228         * rendering/RenderText.cpp:
229         (WebCore::RenderText::styleDidChange):
230         * rendering/RenderText.h:
231         * rendering/RenderTextControl.cpp:
232         (WebCore::RenderTextControl::styleDidChange):
233         * rendering/RenderTextControl.h:
234         * rendering/RenderWidget.cpp:
235         (WebCore::RenderWidget::styleDidChange):
236         * rendering/RenderWidget.h:
237
238 2008-10-09  David Hyatt  <hyatt@apple.com>
239
240         Make sure to destroy a custom scrollbar's RenderObjects before the arena goes away.  When our widget
241         parent is nulled out is a good time.
242
243         Reviewed by Oliver Hunt
244
245         * rendering/RenderScrollbar.cpp:
246         (WebCore::RenderScrollbar::~RenderScrollbar):
247         (WebCore::RenderScrollbar::setParent):
248         (WebCore::RenderScrollbar::updateScrollbarPart):
249         * rendering/RenderScrollbar.h:
250
251 2008-10-09  David Hyatt  <hyatt@apple.com>
252
253         https://bugs.webkit.org/show_bug.cgi?id=21446
254
255         This patch gets CSS scrollbars up and limping.  There's no way to distinguish between states or between
256         orientation and back vs. forward on the buttons, but it's a start.
257
258         Reviewed by Oliver Hunt
259
260         Added scrollbars/basic-scrollbar.html
261
262         * WebCore.xcodeproj/project.pbxproj:
263         * css/CSSSelector.cpp:
264         (WebCore::CSSSelector::extractPseudoType):
265         * css/CSSSelector.h:
266         (WebCore::CSSSelector::):
267         * css/CSSStyleSelector.cpp:
268         (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector):
269         * platform/ScrollTypes.h:
270         (WebCore::):
271         * platform/Scrollbar.h:
272         (WebCore::Scrollbar::styleChanged):
273         * platform/ScrollbarThemeComposite.cpp:
274         (WebCore::ScrollbarThemeComposite::paint):
275         (WebCore::ScrollbarThemeComposite::splitTrack):
276         * platform/ScrollbarThemeComposite.h:
277         (WebCore::ScrollbarThemeComposite::paintScrollbarBackground):
278         (WebCore::ScrollbarThemeComposite::paintTrackBackground):
279         (WebCore::ScrollbarThemeComposite::paintTrackPiece):
280         * platform/win/ScrollbarThemeSafari.cpp:
281         (WebCore::ScrollbarThemeSafari::paintTrackBackground):
282         * platform/win/ScrollbarThemeSafari.h:
283         * platform/win/ScrollbarThemeWin.cpp:
284         (WebCore::ScrollbarThemeWin::paintTrack):
285         * platform/win/ScrollbarThemeWin.h:
286         * rendering/RenderLayer.cpp:
287         (WebCore::RenderLayer::createScrollbar):
288         (WebCore::RenderLayer::styleChanged):
289         * rendering/RenderScrollbar.cpp: Added.
290         (WebCore::RenderScrollbar::createCustomScrollbar):
291         (WebCore::RenderScrollbar::RenderScrollbar):
292         (WebCore::RenderScrollbar::~RenderScrollbar):
293         (WebCore::RenderScrollbar::getScrollbarPseudoStyle):
294         (WebCore::RenderScrollbar::updateScrollbarParts):
295         (WebCore::RenderScrollbar::updateScrollbarPart):
296         (WebCore::RenderScrollbar::paintPart):
297         (WebCore::RenderScrollbar::buttonRect):
298         (WebCore::RenderScrollbar::minimumThumbLength):
299         * rendering/RenderScrollbar.h: Added.
300         (WebCore::RenderScrollbar::styleChanged):
301         (WebCore::RenderScrollbar::owningRenderer):
302         * rendering/RenderScrollbarPart.cpp: Added.
303         (WebCore::RenderScrollbarPart::RenderScrollbarPart):
304         (WebCore::RenderScrollbarPart::~RenderScrollbarPart):
305         (WebCore::RenderScrollbarPart::layout):
306         (WebCore::RenderScrollbarPart::layoutHorizontalPart):
307         (WebCore::RenderScrollbarPart::layoutVerticalPart):
308         (WebCore::calcScrollbarThicknessUsing):
309         (WebCore::RenderScrollbarPart::computeScrollbarWidth):
310         (WebCore::RenderScrollbarPart::computeScrollbarHeight):
311         (WebCore::RenderScrollbarPart::calcPrefWidths):
312         (WebCore::RenderScrollbarPart::setStyle):
313         * rendering/RenderScrollbarPart.h: Added.
314         (WebCore::RenderScrollbarPart::renderName):
315         (WebCore::RenderScrollbarPart::requiresLayer):
316         * rendering/RenderScrollbarTheme.cpp: Added.
317         (WebCore::RenderScrollbarTheme::renderScrollbarTheme):
318         (WebCore::RenderScrollbarTheme::buttonSizesAlongTrackAxis):
319         (WebCore::RenderScrollbarTheme::hasButtons):
320         (WebCore::RenderScrollbarTheme::hasThumb):
321         (WebCore::RenderScrollbarTheme::minimumThumbLength):
322         (WebCore::RenderScrollbarTheme::backButtonRect):
323         (WebCore::RenderScrollbarTheme::forwardButtonRect):
324         (WebCore::RenderScrollbarTheme::trackRect):
325         (WebCore::RenderScrollbarTheme::paintScrollCorner):
326         (WebCore::RenderScrollbarTheme::paintScrollbarBackground):
327         (WebCore::RenderScrollbarTheme::paintTrackBackground):
328         (WebCore::RenderScrollbarTheme::paintTrackPiece):
329         (WebCore::RenderScrollbarTheme::paintButton):
330         (WebCore::RenderScrollbarTheme::paintThumb):
331         * rendering/RenderScrollbarTheme.h: Added.
332         (WebCore::RenderScrollbarTheme::~RenderScrollbarTheme):
333         (WebCore::RenderScrollbarTheme::scrollbarThickness):
334         (WebCore::RenderScrollbarTheme::buttonsPlacement):
335         (WebCore::RenderScrollbarTheme::supportsControlTints):
336         (WebCore::RenderScrollbarTheme::shouldCenterOnThumb):
337         (WebCore::RenderScrollbarTheme::initialAutoscrollTimerDelay):
338         (WebCore::RenderScrollbarTheme::autoscrollTimerDelay):
339         (WebCore::RenderScrollbarTheme::registerScrollbar):
340         (WebCore::RenderScrollbarTheme::unregisterScrollbar):
341         * rendering/style/RenderStyle.h:
342         (WebCore::RenderStyle::):
343
344 2008-10-09  Eric Seidel  <eric@webkit.org>
345
346         Reviewed by Oliver Hunt.
347
348         Fix Canvex DOOM Game
349         Gradient clips were not getting cleared after filling the
350         gradient, this was causing nothing to draw in Canvex
351         https://bugs.webkit.org/show_bug.cgi?id=21498
352         
353         Tests forthcoming.
354
355         * WebCore.xcodeproj/project.pbxproj:
356         * platform/graphics/cg/GraphicsContextCG.cpp:
357         (WebCore::GraphicsContext::fillPath):
358         (WebCore::GraphicsContext::strokePath):
359         (WebCore::GraphicsContext::fillRect):
360
361 2008-10-09  Eric Seidel  <eric@webkit.org>
362
363         Reviewed by Oliver Hunt.
364         
365         Fix transformed patterns
366         https://bugs.webkit.org/show_bug.cgi?id=21498
367         
368         Test: fast/canvas/patternfill-repeat.html
369
370         * WebCore.xcodeproj/project.pbxproj:
371         * platform/graphics/GraphicsContext.cpp:
372         (WebCore::GraphicsContext::setStrokePattern):
373         (WebCore::GraphicsContext::setFillPattern):
374         (WebCore::GraphicsContext::setStrokeGradient):
375         (WebCore::GraphicsContext::setFillGradient):
376         * platform/graphics/GraphicsContext.h:
377         * platform/graphics/cairo/GraphicsContextCairo.cpp:
378         * platform/graphics/cg/GraphicsContextCG.cpp:
379         (WebCore::applyStrokePattern):
380         (WebCore::applyFillPattern):
381         (WebCore::GraphicsContext::drawPath):
382         (WebCore::GraphicsContext::fillPath):
383         (WebCore::GraphicsContext::strokePath):
384         (WebCore::GraphicsContext::fillRect):
385         * platform/graphics/qt/GraphicsContextQt.cpp:
386         * platform/graphics/wx/GraphicsContextWx.cpp:
387
388 2008-10-09  Kevin Ollivier  <kevino@theolliviers.com>
389
390         wx build fixes.
391
392         * platform/wx/WidgetWx.cpp:
393         * plugins/wx/PluginViewWx.cpp:
394         (WebCore::PluginView::invalidateRect):
395         * webcore-base.bkl:
396
397 2008-10-09  Chris Marrin  <cmarrin@apple.com>
398
399         Reviewed by Darin Adler.
400
401         Fix for https://bugs.webkit.org/show_bug.cgi?id=21217
402         Animations assert when navigating from page
403
404         Changed assertions to test the right flag for the paused state
405
406         * page/animation/AnimationBase.cpp:
407         (WebCore::AnimationBase::updateStateMachine):
408
409 2008-10-09  Chris Marrin  <cmarrin@apple.com>
410
411         Reviewed by Dan Bernstein.
412
413         Fixed > 180 degree rotation bug
414         Ensure that validateTransformFunctionList() is called after updating keyframe styles
415
416         https://bugs.webkit.org/show_bug.cgi?id=21420
417
418         Test: animations/big-rotation.html
419
420         * page/animation/KeyframeAnimation.cpp:
421         (WebCore::KeyframeAnimation::KeyframeAnimation):
422
423 2008-10-09  Brady Eidson  <beidson@apple.com>
424
425         Reviewed by Anders
426
427         <rdar://problem/6250856> - Calling [WebView close] from within a redirection callback can cause bad things
428
429         The API usage to reveal this crash was so particular that a layout test is not possible with our current infrastructure.
430
431         * loader/FrameLoader.cpp:
432         (WebCore::FrameLoader::changeLocation): Protect the Frame from deletion
433         (WebCore::FrameLoader::continueLoadAfterNavigationPolicy): stopAllLoaders() might clear the Frame's page,
434           so perform a second null check on the page.  Bail if it has been cleared.
435
436 2008-10-09  Alp Toker  <alp@nuanti.com>
437
438         Build fix for recent DOM generation Makefile changes when custom
439         CFLAGS/CXXFLAGS are passed in.
440
441         * GNUmakefile.am:
442
443 2008-10-09  Jan Michael Alonzo  <jmalonzo@webkit.org>
444
445         Reviewed by Alp Toker.
446
447         https://bugs.webkit.org/show_bug.cgi?id=21390
448         [Gtk] Linux/Gtk: GtkLauncher crashes on Acid3 (but after test 80 this time)
449
450         * platform/gtk/ScrollViewGtk.cpp:
451         (WebCore::ScrollView::platformRemoveChild):
452
453 2008-10-09  Darin Adler  <darin@apple.com>
454
455        - try to fix Qt build
456
457         * bridge/qt/qt_runtime.cpp:
458         (JSC::Bindings::convertQVariantToValue): Pass JSGlobalData instead of ExecState to RegExp constructor.
459
460 2008-10-08  Nikolas Zimmermann  <zimmermann@kde.org>
461
462         Reviewed by Oliver Hunt & Sam Weinig.
463
464         Fixes: https://bugs.webkit.org/show_bug.cgi?id=15413 (SVGElementInstance does not implement EventTarget)
465         Fixes: https://bugs.webkit.org/show_bug.cgi?id=15430 (SVGElementInstances should rebuild themselves lazily)
466         Fixes: https://bugs.webkit.org/show_bug.cgi?id=20550 (SVGUseElement.setAttribute crashes Safari)
467
468         Rebuild SVG use element shadow tree lazily. Mark SVGElementInstance with the "needsUpdate" flag.
469         Next time SVGUseElement::recalcStyle is invoked (ie. via Document::updateDocumentsRendering()) the
470         use tree is rebuild.
471
472         Make SVGElementInstance a real EventTarget, as the SVG specification demands.
473         When dispatching events to a shadow tree element of a use element, the associated SVGElementInstance
474         is used as event target. The SVGElementInstance, the shadow tree element and the corresponding element
475         share an event listener list. Every event listener change on the SVGElementInstance object is forwared
476         to the corresponding element. Each change marks the SVGElementInstance tree dirty, and causes a reclone.
477         Each event listener defined via attributes (onclick/onkeydown/...) is copied from the correspondingElement
478         to the shadow tree element - through the cloneNode calls - if the use element's shadow tree gets rebuild.
479         Each listener, dynamically created using addEventListener, gets copied to the corersponding element as well.
480
481         Now that the target/currentTarget properties of the Events are correct, event bubbling works as expected,
482         see resources/use-instanceRoot-event-bubbling.js for details.
483
484         Tests: svg/custom/use-elementInstance-event-target.svg (reenabled)
485                svg/custom/use-elementInstance-methods.svg (reenabled)
486                svg/custom/use-setAttribute-crash.svg (covers bug 20550)
487                svg/custom/use-instanceRoot-as-event-target.xhtml (covers bug 15413)
488                svg/custom/use-instanceRoot-event-bubbling.xhtml (covers bug 15413)
489                svg/custom/use-instanceRoot-event-listeners.xhtml (covers bug 15413 & 15430)
490
491         * DerivedSources.make:
492         * GNUmakefile.am:
493         * WebCore.pro:
494         * WebCore.vcproj/WebCore.vcproj:
495         * WebCore.xcodeproj/project.pbxproj:
496         * bindings/js/JSEventListener.h:
497         (WebCore::JSLazyEventListener::wasCreatedFromMarkup):
498         * bindings/js/JSEventTarget.cpp:
499         * bindings/js/JSEventTargetSVGElementInstance.cpp: Removed.
500         * bindings/js/JSEventTargetSVGElementInstance.h: Removed.
501         * bindings/js/JSSVGElementInstanceCustom.cpp:
502         (WebCore::JSSVGElementInstance::addEventListener):
503         (WebCore::JSSVGElementInstance::removeEventListener):
504         (WebCore::JSSVGElementInstance::pushEventHandlerScope):
505         * bindings/scripts/CodeGeneratorJS.pm:
506         * bindings/scripts/CodeGeneratorObjC.pm:
507         * dom/EventListener.h:
508         (WebCore::EventListener::wasCreatedFromMarkup):
509         * dom/EventTargetNode.cpp:
510         (WebCore::updateSVGElementInstancesAfterEventListenerChange):
511         (WebCore::EventTargetNode::addEventListener):
512         (WebCore::EventTargetNode::removeEventListener):
513         (WebCore::eventTargetAsSVGElementInstance):
514         (WebCore::eventTargetRespectingSVGTargetRules):
515         (WebCore::EventTargetNode::dispatchEvent):
516         (WebCore::EventTargetNode::dispatchGenericEvent):
517         (WebCore::EventTargetNode::removeEventListenerForType):
518         * page/EventHandler.cpp:
519         (WebCore::EventHandler::clear):
520         (WebCore::instanceAssociatedWithShadowTreeElement):
521         (WebCore::EventHandler::updateMouseEventTargetNode):
522         * page/EventHandler.h:
523         * svg/EventTargetSVGElementInstance.cpp: Removed.
524         * svg/EventTargetSVGElementInstance.h: Removed.
525         * svg/SVGElementInstance.cpp:
526         (WebCore::SVGElementInstance::SVGElementInstance):
527         (WebCore::SVGElementInstance::~SVGElementInstance):
528         (WebCore::SVGElementInstance::childNodes):
529         (WebCore::SVGElementInstance::setShadowTreeElement):
530         (WebCore::SVGElementInstance::forgetWrapper):
531         (WebCore::SVGElementInstance::appendChild):
532         (WebCore::SVGElementInstance::invalidateAllInstancesOfElement):
533         (WebCore::SVGElementInstance::setNeedsUpdate):
534         (WebCore::SVGElementInstance::associatedFrame):
535         (WebCore::SVGElementInstance::addEventListener):
536         (WebCore::SVGElementInstance::removeEventListener):
537         (WebCore::SVGElementInstance::dispatchEvent):
538         (WebCore::SVGElementInstance::onabort):
539         (WebCore::SVGElementInstance::setOnabort):
540         (WebCore::SVGElementInstance::onblur):
541         (WebCore::SVGElementInstance::setOnblur):
542         (WebCore::SVGElementInstance::onchange):
543         (WebCore::SVGElementInstance::setOnchange):
544         (WebCore::SVGElementInstance::onclick):
545         (WebCore::SVGElementInstance::setOnclick):
546         (WebCore::SVGElementInstance::oncontextmenu):
547         (WebCore::SVGElementInstance::setOncontextmenu):
548         (WebCore::SVGElementInstance::ondblclick):
549         (WebCore::SVGElementInstance::setOndblclick):
550         (WebCore::SVGElementInstance::onerror):
551         (WebCore::SVGElementInstance::setOnerror):
552         (WebCore::SVGElementInstance::onfocus):
553         (WebCore::SVGElementInstance::setOnfocus):
554         (WebCore::SVGElementInstance::oninput):
555         (WebCore::SVGElementInstance::setOninput):
556         (WebCore::SVGElementInstance::onkeydown):
557         (WebCore::SVGElementInstance::setOnkeydown):
558         (WebCore::SVGElementInstance::onkeypress):
559         (WebCore::SVGElementInstance::setOnkeypress):
560         (WebCore::SVGElementInstance::onkeyup):
561         (WebCore::SVGElementInstance::setOnkeyup):
562         (WebCore::SVGElementInstance::onload):
563         (WebCore::SVGElementInstance::setOnload):
564         (WebCore::SVGElementInstance::onmousedown):
565         (WebCore::SVGElementInstance::setOnmousedown):
566         (WebCore::SVGElementInstance::onmousemove):
567         (WebCore::SVGElementInstance::setOnmousemove):
568         (WebCore::SVGElementInstance::onmouseout):
569         (WebCore::SVGElementInstance::setOnmouseout):
570         (WebCore::SVGElementInstance::onmouseover):
571         (WebCore::SVGElementInstance::setOnmouseover):
572         (WebCore::SVGElementInstance::onmouseup):
573         (WebCore::SVGElementInstance::setOnmouseup):
574         (WebCore::SVGElementInstance::onmousewheel):
575         (WebCore::SVGElementInstance::setOnmousewheel):
576         (WebCore::SVGElementInstance::onbeforecut):
577         (WebCore::SVGElementInstance::setOnbeforecut):
578         (WebCore::SVGElementInstance::oncut):
579         (WebCore::SVGElementInstance::setOncut):
580         (WebCore::SVGElementInstance::onbeforecopy):
581         (WebCore::SVGElementInstance::setOnbeforecopy):
582         (WebCore::SVGElementInstance::oncopy):
583         (WebCore::SVGElementInstance::setOncopy):
584         (WebCore::SVGElementInstance::onbeforepaste):
585         (WebCore::SVGElementInstance::setOnbeforepaste):
586         (WebCore::SVGElementInstance::onpaste):
587         (WebCore::SVGElementInstance::setOnpaste):
588         (WebCore::SVGElementInstance::ondragenter):
589         (WebCore::SVGElementInstance::setOndragenter):
590         (WebCore::SVGElementInstance::ondragover):
591         (WebCore::SVGElementInstance::setOndragover):
592         (WebCore::SVGElementInstance::ondragleave):
593         (WebCore::SVGElementInstance::setOndragleave):
594         (WebCore::SVGElementInstance::ondrop):
595         (WebCore::SVGElementInstance::setOndrop):
596         (WebCore::SVGElementInstance::ondragstart):
597         (WebCore::SVGElementInstance::setOndragstart):
598         (WebCore::SVGElementInstance::ondrag):
599         (WebCore::SVGElementInstance::setOndrag):
600         (WebCore::SVGElementInstance::ondragend):
601         (WebCore::SVGElementInstance::setOndragend):
602         (WebCore::SVGElementInstance::onreset):
603         (WebCore::SVGElementInstance::setOnreset):
604         (WebCore::SVGElementInstance::onresize):
605         (WebCore::SVGElementInstance::setOnresize):
606         (WebCore::SVGElementInstance::onscroll):
607         (WebCore::SVGElementInstance::setOnscroll):
608         (WebCore::SVGElementInstance::onsearch):
609         (WebCore::SVGElementInstance::setOnsearch):
610         (WebCore::SVGElementInstance::onselect):
611         (WebCore::SVGElementInstance::setOnselect):
612         (WebCore::SVGElementInstance::onselectstart):
613         (WebCore::SVGElementInstance::setOnselectstart):
614         (WebCore::SVGElementInstance::onsubmit):
615         (WebCore::SVGElementInstance::setOnsubmit):
616         (WebCore::SVGElementInstance::onunload):
617         (WebCore::SVGElementInstance::setOnunload):
618         * svg/SVGElementInstance.h:
619         (WebCore::SVGElementInstance::needsUpdate):
620         (WebCore::SVGElementInstance::toNode):
621         (WebCore::SVGElementInstance::toSVGElementInstance):
622         (WebCore::SVGElementInstance::correspondingElement):
623         (WebCore::SVGElementInstance::correspondingUseElement):
624         (WebCore::SVGElementInstance::shadowTreeElement):
625         (WebCore::SVGElementInstance::parentNode):
626         (WebCore::SVGElementInstance::previousSibling):
627         (WebCore::SVGElementInstance::nextSibling):
628         (WebCore::SVGElementInstance::firstChild):
629         (WebCore::SVGElementInstance::lastChild):
630         (WebCore::SVGElementInstance::ownerDocument):
631         (WebCore::SVGElementInstance::hasChildNodes):
632         (WebCore::SVGElementInstance::setFirstChild):
633         (WebCore::SVGElementInstance::setLastChild):
634         (WebCore::SVGElementInstance::setNextSibling):
635         (WebCore::SVGElementInstance::setPreviousSibling):
636         (WebCore::SVGElementInstance::refEventTarget):
637         (WebCore::SVGElementInstance::derefEventTarget):
638         * svg/SVGElementInstance.idl:
639         * svg/SVGStyledElement.cpp:
640         (WebCore::SVGStyledElement::svgAttributeChanged):
641         (WebCore::SVGStyledElement::childrenChanged):
642         * svg/SVGUseElement.cpp:
643         (WebCore::SVGUseElement::svgAttributeChanged):
644         (WebCore::shadowTreeContainsChangedNodes):
645         (WebCore::SVGUseElement::recalcStyle):
646         (WebCore::dumpInstanceTree):
647         (WebCore::SVGUseElement::buildPendingResource):
648         (WebCore::SVGUseElement::buildInstanceTree):
649         (WebCore::SVGUseElement::transferEventListenersToShadowTree):
650         * svg/SVGUseElement.h:
651
652 2008-10-08  Sam Weinig  <sam@webkit.org>
653
654         Reviewed by Cameron Zwarich.
655
656         Fix for https://bugs.webkit.org/show_bug.cgi?id=21241
657         REGRESSION (r36977): getRGBColorValue().red returning incorrect value
658
659         Update JSRGBColor to use the new static function per getter approach.
660
661         Test: fast/dom/css-RGBValue.html
662
663         * bindings/js/JSRGBColor.cpp:
664         (WebCore::):
665         (jsRGBColorRed):
666         (jsRGBColorGreen):
667         (jsRGBColorBlue):
668         * bindings/js/JSRGBColor.h:
669
670 2008-10-08  Eric Seidel  <eric@webkit.org>
671
672         Reviewed by Darin Adler, Nikolas Zimmermann and Dave Hyatt.
673
674         svgElement.className.baseValue = "foo" does not work
675         https://bugs.webkit.org/show_bug.cgi?id=20651
676
677         * dom/StyledElement.cpp:
678         (WebCore::StyledElement::classAttributeChanged):
679         (WebCore::StyledElement::parseMappedAttribute):
680         * dom/StyledElement.h:
681         * svg/SVGStyledElement.cpp:
682         (WebCore::SVGStyledElement::svgAttributeChanged):
683
684 2008-10-08  Anthony Ricaud  <rik24d@gmail.com>
685
686         Make the toolbar label text-shadow not disappear when clicking on the
687         search result count or around the search field.
688
689         Reviewed by Timothy Hatcher.
690
691         * inspector/front-end/inspector.css:
692         (.toolbar-item:active .toolbar-label): Make this rule also require the
693         toggleable class with the toolbar-item class.
694
695 2008-10-08  Tor Arne Vestbø  <tavestbo@trolltech.com>
696
697         Reviewed by Simon.
698
699         Updated the qrc file for the Web Inspector to contain the current set
700         of images.
701
702         * inspector/front-end/WebKit.qrc:
703
704 2008-10-08  Prasanth Ullattil  <pullatti@trolltech.com>
705
706         Reviewed by Simon.
707
708         Fix the linking of applications against WebKit on Qt/Windows.
709
710         The prl files that qmake creates are buggy on Unix, but we they're
711         fine on Windows and we have to have them there in order to get the
712         dependencies correct.
713
714         * WebCore.pro:
715
716 2008-10-08  Ariya Hidayat  <ariya.hidayat@trolltech.com>
717
718         Reviewed by Simon.
719
720         Speed up rectangle filling by not re-creating a QBrush all the time.
721
722         This triggers faster path in QPainter where the brush is reused.
723
724         * platform/graphics/qt/GraphicsContextQt.cpp:
725         (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate):
726         (WebCore::GraphicsContext::fillRect):
727
728 2008-10-08  Thiago Macieira  <thiago.macieira@nokia.com>
729
730         Reviewed by Simon.
731
732         Fixes: Encoding of Qt URLs
733
734         This encoding was added by Simon and I because QUrl's
735         tolerant parser wasn't tolerant enough. Now it is, so we don't need
736         this anymore.
737
738         * platform/qt/KURLQt.cpp:
739         (WebCore::KURL::operator QUrl):
740
741 2008-10-08  Marius Storm-Olsen  <marius@trolltech.com>
742
743         Reviewed by Simon.
744
745         Fixes dependencies in qmake generated visual studio projects.
746
747         Only add debug lib name if we're in the debug build_pass, else the release version.
748         The MSVC solution generator would pick up the debug javascriptcore lib as a dependency.
749
750         * WebCore.pro:
751
752 2008-10-08  Prasanth Ullattil  <pullatti@trolltech.com>
753
754         Reviewed by Simon.
755
756         Fix compilation errors on VS2008 64Bit
757
758         * platform/text/TextStream.cpp:
759         (WebCore::TextStream::operator<<):
760         * platform/text/TextStream.h:
761         * plugins/win/PluginViewWin.cpp:
762         (WebCore::PluginView::init):
763
764 2008-10-07  Alp Toker  <alp@nuanti.com>
765
766         GTK+ build fix for older automake versions (1.7). Discussed in bug
767         #21392.
768
769         * GNUmakefile.am:
770
771 2008-10-07  Anders Carlsson  <andersca@apple.com>
772
773         Reviewed by Antti Koivisto.
774
775         <rdar://problem/6273887> Crash in ApplicationCacheGroup
776         
777         Make sure to stop loading even before a cache update is in progress so that the
778         manifest load will be stopped.
779
780         * loader/appcache/ApplicationCacheGroup.cpp:
781         (WebCore::ApplicationCacheGroup::~ApplicationCacheGroup):
782         (WebCore::ApplicationCacheGroup::stopLoading):
783         (WebCore::ApplicationCacheGroup::cacheUpdateFailed):
784
785 2008-10-07  Timothy Hatcher  <timothy@apple.com>
786
787         Auto-generate DOMDocument's createNodeIterator: and createTreeWalker: methods.
788
789         https://bugs.webkit.org/show_bug.cgi?id=21433
790
791         Reviewed by Sam Weinig.
792
793         * WebCore.xcodeproj/project.pbxproj: Add ObjCNodeFilterCondition.{mm,h}.
794         * bindings/objc/DOM.mm: Remove previous category implementations
795         on DOMDocument for createNodeIterator: and createTreeWalker:. Also
796         moves ObjCNodeFilterCondition to its own file.
797         * bindings/objc/DOMTraversal.h: Remove the category methods that added
798         createNodeIterator: and createTreeWalker: to DOMDocument. This is fine
799         to do since DOmDocument.h is included still, and has these methods.
800         * bindings/objc/DOMUtility.mm:
801         (JSC::createDOMWrapper): Remove special case for JSNodeIterator and
802         JSTreeWalker now that the ObjC binding conforms to the standard wrap.
803         * bindings/objc/ObjCNodeFilterCondition.h: Split out from DOM.mm.
804         (WebCore::ObjCNodeFilterCondition::create): Moved from DOM.mm.
805         (WebCore::ObjCNodeFilterCondition::ObjCNodeFilterCondition): Ditto.
806         * bindings/objc/ObjCNodeFilterCondition.mm: Split out from DOM.mm.
807         (WebCore::ObjCNodeFilterCondition::acceptNode): Moved from DOM.mm.
808         * bindings/objc/PublicDOMInterfaces.h: Add the createNodeIterator: and
809         createTreeWalker: methods to DOMDocument.
810         * bindings/scripts/CodeGeneratorObjC.pm:
811         (GetObjCTypeGetter): Add a case for NodeFilter.
812         (AddIncludesForType): Include ObjCNodeFilterCondition.h for NodeFilter.
813         (GenerateImplementation): Remove existing NodeFilter special case that
814         used the m_filter member variable. Add a new special getter for protocol
815         types that aren't EventTarget, so the right class is used for NodeFilter.
816         Add a special case for NodeFilter where it creates an ObjCNodeFilterCondition.
817         * dom/Document.idl: Remove the #ifdef LANGUAGE_OBJECTIVE_C. Add the
818         OldStyleObjC extended attribute to createNodeIterator and createTreeWalker.
819         Rename the entityReferenceExpansion parameter to expandEntityReferences to
820         match the previous ObjC API.
821         * dom/NodeIterator.idl: Remove ObjCIvar from the filter attribute. The
822         m_filter member variable was never used in practice, it was always nil!
823         We can remove it and not pad the object because this can't be subclassed.
824         * dom/TreeWalker.idl: Ditto.
825
826 2008-10-07  Timothy Hatcher  <timothy@apple.com>
827
828         Auto-generate the DOMEventTarget protocol implementation for
829         DOMNode and DOMSVGElementInstance.
830
831         https://bugs.webkit.org/show_bug.cgi?id=21432
832
833         Reviewed by Darin Adler.
834
835         * WebCore.xcodeproj/project.pbxproj: Add ObjCEventListener.{mm,h}.
836         * bindings/objc/DOM.mm: Remove many unneeded header includes. Move
837         ObjCEventListener to it's own file. Remove the manual impelmentations
838         of the DOMEventTarget protocol for DOMNode and DOMSVGElementInstance.
839         * bindings/objc/DOMEvents.h: Remove the categories that defined
840         DOMEventTarget for DOMNode and DOMSVGElementInstance.
841         * bindings/objc/ObjCEventListener.h: Split out from DOM.mm.
842         * bindings/objc/ObjCEventListener.mm: Split out from DOM.mm.
843         (WebCore::ObjCEventListener::find): Moved from DOM.mm.
844         (WebCore::ObjCEventListener::wrap): Use PassRefPtr to prevent the
845         callers from doing a manual deref.
846         (WebCore::ObjCEventListener::ObjCEventListener): Moved from DOM.mm.
847         (WebCore::ObjCEventListener::~ObjCEventListener): Ditto.
848         * bindings/scripts/CodeGeneratorObjC.pm:
849         (GetObjCTypeGetter): Add a case for EventListener and use WTF::getPtr.
850         (AddIncludesForType): Include ObjCEventListener.h for EventListener.
851         And include EventTargetSVGElementInstance.h for SVGElementInstance.
852         (GenerateHeader): Remove the check for multiple parents.
853         (GenerateImplementation): Remove the check for multiple parents. Remove
854         the @deprecatedFunctions array since deprecated methods get generated
855         into the main @interface now to work with protocols. Add support
856         for the EventTargetNodeCast extended attribute. Add support for
857         EventListener parameters.
858         * dom/Node.idl: Define superclasses for ObjC so the implementation
859         and interface implement the DOMEventTarget protocol. Explicitly
860         specify Object as a superclass to use DOMEventTarget. Object will turn
861         into DOMObject. This is needed to take the code generator down the right
862         path of multiple super-classes as protocols. It is ObjC only for legacy
863         reasons. The event target methods are normally on NodeEventTarget, a
864         subclass of Node. But the ObjC API has never has this subclass and
865         they are on DOMNode.
866         * svg/SVGElementInstance.idl: Ditto.
867
868 2008-10-07  David Hyatt  <hyatt@apple.com>
869
870         Add new pseudo-elements and pseudo-classes that will enable scrollbars to be styled by CSS.
871
872         The new pseudo-elements are:
873             scrollbar
874             scrollbar-button
875             scrollbar-corner
876             scrollbar-thumb
877             scrollbar-track
878         
879         These elements will work with all the usual pseudo-classes (:hover, :active, :enabled, :disabled, etc.) and with
880         the following new pseudo-classes:
881             scrollbar-active
882             scrollbar-back
883             scrollbar-forward
884             scrollbar-horizontal
885             scrollbar-vertical
886         
887         Reviewed by Adele
888
889         * css/CSSSelector.cpp:
890         (WebCore::CSSSelector::extractPseudoType):
891         * css/CSSSelector.h:
892         (WebCore::CSSSelector::):
893
894 2008-10-06  Timothy Hatcher  <timothy@apple.com>
895
896         Add support to the Resources panel for queries like "#123", "foo #123",
897         "line: 123" and "foo line: 123". These will match the query limiting
898         the search only to the line specified. If only a line is specified,
899         the whole line is matched.
900
901         https://bugs.webkit.org/show_bug.cgi?id=21422
902
903         Reviewed by Darin Adler.
904
905         * inspector/front-end/SourceFrame.js:
906         (WebInspector.SourceFrame.prototype.sourceRow): Don't return the last
907         row if the index is greater than the rows collection. Let it return
908         undefined by indexing out-of-bounds.
909         * inspector/front-end/SourceView.js:
910         (WebInspector.SourceView.prototype.performSearch): Add support for
911         queries like "#123", "foo #123", "line: 123" and "foo line: 123".
912         Also match the whole query to the whole document in case there are
913         colors like "#333".
914
915 2008-10-07  Alp Toker  <alp@nuanti.com>
916
917         Reviewed by Mark Rowe.
918
919         https://bugs.webkit.org/show_bug.cgi?id=21392
920         [GTK] Auto-generate JS DOM binding sources list
921
922         Remove the huge lists of generated DOM binding sources and headers in
923         the build system. These are difficult to maintain and can be derived
924         automatically.
925
926         The new strategy is to re-use the existing lists of IDL sources (which
927         are needed for dist support anyway). This will also ease the addition
928         of new language bindings.
929
930         * GNUmakefile.am:
931
932 2008-10-07  Tor Arne Vestbø  <tavestbo@trolltech.com>
933
934         Reviewed by Simon.
935
936         Don't attempt to paint when updating control tints
937
938         We don't have a valid PlatformGraphicsContext so schedule
939         the dirty scrollbar/scrollview area for repaint instead.
940
941         * platform/qt/ScrollbarThemeQt.cpp:
942         (WebCore::ScrollbarThemeQt::paint):
943         (WebCore::ScrollbarThemeQt::paintScrollCorner):
944
945 2008-10-07  Holger Hans Peter Freyther  <zecke@selfish.org>
946
947         [qt] Build fix after Scrollbar.h and Widget.h changes.
948
949         * plugins/qt/PluginViewQt.cpp:
950         (WebCore::PluginView::getValue):
951         (WebCore::PluginView::init):
952
953 2008-10-06  David Hyatt  <hyatt@apple.com>
954
955         Enable viewless Mac WebKit to (kinda sorta) paint basic pages (with no frames on them).
956
957         Reviewed by Sam Weinig
958
959         * WebCore.base.exp:
960         * WebCore.xcodeproj/project.pbxproj:
961         * loader/EmptyClients.h:
962         (WebCore::EmptyFrameLoaderClient::hasWebView):
963         * loader/FrameLoader.cpp:
964         (WebCore::FrameLoader::loadWithDocumentLoader):
965         (WebCore::FrameLoader::transitionToCommitted):
966         * loader/FrameLoaderClient.h:
967         * page/FocusController.cpp:
968         (WebCore::FocusController::setActive):
969         * page/FrameView.cpp:
970         (WebCore::FrameView::FrameView):
971         (WebCore::FrameView::init):
972         (WebCore::FrameView::layoutIfNeededRecursive):
973         * page/FrameView.h:
974
975 2008-10-06  Dan Bernstein  <mitz@apple.com>
976
977         - build fix
978
979         * bindings/objc/DOMEvents.h:
980
981 2008-10-06  Mark Mentovai  <mark@moxienet.com>
982
983         Reviewed by Tim Hatcher.
984
985         Use #if ENABLE(feature) where possible, and #if ENABLE_feature where
986         Platform.h is not available, in preference to #ifdef ENABLE_feature.
987         #ifdef is wrong now that features are disabled by #defining
988         ENABLE_feature to 0.
989
990         https://bugs.webkit.org/show_bug.cgi?id=21338
991
992         * bindings/objc/DOMEvents.h:
993         * bindings/objc/PublicDOMInterfaces.h:
994         * dom/Document.idl:
995         * page/DOMWindow.idl:
996         * svg/svgtags.in:
997
998 2008-10-06  Mark Mentovai  <mark@moxienet.com>
999
1000         Reviewed by Sam Weinig.
1001
1002         * platform/network/mac/FormDataStreamMac.mm: #import <wtf/Threading.h>
1003         to get the declaration for isMainThread().
1004
1005 2008-10-06  Jeremy Moskovich  <jeremy@chromium.org>
1006
1007         Reviewed by Tim Hatcher.
1008
1009         WebCoreObjCExtras.c is actually an obj-c++ file, so change its name
1010         to reflect that.
1011
1012         * WebCore.xcodeproj/project.pbxproj:
1013         * platform/mac/WebCoreObjCExtras.c: Removed.
1014         * platform/mac/WebCoreObjCExtras.mm: Copied from WebCore/platform/mac/WebCoreObjCExtras.c.
1015
1016 2008-10-06  Jeremy Moskovich  <jeremy@chromium.org>
1017
1018         Reviewed by Dan Bernstein.
1019         
1020         Added C++ forward declaration for the NSURLAuthenticationChallenge class
1021         so that the m_currentMacChallenge variable doesn't cause a
1022         compilation error when ResourceHandleInternal.h is included from a C++ file.
1023         Fixes: https://bugs.webkit.org/show_bug.cgi?id=21411
1024
1025         * platform/network/ResourceHandleInternal.h:
1026
1027 2008-10-06  Steve Falkenburg  <sfalken@apple.com>
1028
1029         Windows build fix.
1030
1031         * WebCore.vcproj/WebCore.vcproj:
1032
1033 2008-10-06  Steve Falkenburg  <sfalken@apple.com>
1034
1035         https://bugs.webkit.org/show_bug.cgi?id=21416
1036         Add missing null checks identified by Application Verifier.
1037         
1038         Reviewed by Darin Adler.
1039
1040         * platform/win/SharedTimerWin.cpp:
1041         (WebCore::clearTimer):
1042
1043 2008-10-06  Kevin McCullough  <kmccullough@apple.com>
1044
1045         Reviewed by Tim Hatcher.
1046
1047         Removed accidentally left in debugging statement.
1048
1049         * inspector/front-end/inspector.js:
1050
1051 2008-10-06  Kevin McCullough  <kmccullough@apple.com>
1052
1053         Reviewed by Tim Hatcher and Oliver Hunt.
1054
1055         https://bugs.webkit.org/show_bug.cgi?id=21412
1056         Bug 21412: Refactor user initiated profile count to be more stable
1057
1058         * inspector/InspectorController.cpp: Keep track of the user-initiated
1059         profiles here now.
1060         (WebCore::InspectorController::InspectorController):
1061         (WebCore::InspectorController::startUserInitiatedProfiling):
1062         (WebCore::InspectorController::stopUserInitiatedProfiling):
1063         * inspector/InspectorController.h:
1064         The front end will now need to check for the existence of the user-
1065         initiated profile title and use its count instead of keeping its own.
1066         * inspector/front-end/ProfilesPanel.js:
1067
1068 2008-10-06  Dan Bernstein  <mitz@apple.com>
1069
1070         Reviewed by Sam Weinig.
1071
1072         - separate GDI text drawing into its own function
1073
1074         * platform/graphics/win/FontCGWin.cpp:
1075         (WebCore::drawGDIGlyphs):
1076         (WebCore::Font::drawGlyphs):
1077
1078 2008-10-03  Steve Falkenburg  <sfalken@apple.com>
1079
1080         <rdar://problem/6249833> Fix default button appearance
1081         
1082         Reviewed by Adele Peterson.
1083
1084         * rendering/RenderThemeWin.cpp:
1085         (WebCore::RenderThemeWin::supportsFocus):
1086         (WebCore::RenderThemeWin::determineClassicState):
1087         (WebCore::RenderThemeWin::determineButtonState):
1088         (WebCore::RenderThemeWin::getClassicThemeData):
1089         (WebCore::RenderThemeWin::getThemeData):
1090         (WebCore::drawControl):
1091         * rendering/RenderThemeWin.h:
1092
1093 2008-10-06  Tor Arne Vestbø  <tavestbo@trolltech.com>
1094
1095         Reviewed by Simon.
1096
1097         Add native virtual keycode to PlatformKeyboardEvent
1098
1099         * platform/PlatformKeyboardEvent.h:
1100         * platform/gtk/KeyEventGtk.cpp:
1101         (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
1102         * platform/mac/KeyEventMac.mm:
1103         (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
1104         * platform/qt/PlatformKeyboardEventQt.cpp:
1105         (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
1106         * platform/win/KeyEventWin.cpp:
1107         (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
1108         * platform/wx/KeyboardEventWx.cpp:
1109         (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
1110
1111 2008-10-06  Tor Arne Vestbø  <tavestbo@trolltech.com>
1112
1113         Reviewed by Simon.
1114
1115         Enable WebCore::String <> CFStringRef conversion functions for QtWebKit/Mac
1116
1117         * platform/text/PlatformString.h:
1118         * platform/text/StringImpl.h:
1119         * platform/text/cf/StringCF.cpp:
1120         * platform/text/cf/StringImplCF.cpp:
1121
1122 2008-10-06  Tor Arne Vestbø  <tavestbo@trolltech.com>
1123
1124         Reviewed by Simon.
1125
1126         Use bundles on QtWebKit/Mac for platform modules
1127
1128         * platform/FileSystem.h:
1129         * platform/qt/FileSystemQt.cpp:
1130         (WebCore::unloadModule):
1131
1132 2008-10-06  Ariya Hidayat  <ariya.hidayat@trolltech.com>
1133
1134         Reviewed by Simon.
1135
1136         Build fix for MinGW.
1137
1138         * platform/win/SystemTimeWin.cpp:
1139         * plugins/win/PluginViewWin.cpp:
1140         (WebCore::PluginView::invalidateRect):
1141
1142 2008-10-06  Adam Roben  <aroben@apple.com>
1143
1144         Mimic the inspector/ directory structure in WebCore.vcproj
1145
1146         * WebCore.vcproj/WebCore.vcproj:
1147
1148 2008-10-06  Adam Roben  <aroben@apple.com>
1149
1150         Windows build fix
1151
1152         * WebCore.vcproj/WebCore.vcproj: Update the Include path for all
1153         configurations to include WebCore/inspector.
1154
1155 2008-10-04  Eric Seidel  <eric@webkit.org>
1156
1157         Reviewed by Darin Adler.
1158
1159         SVG should support ascent and descent properties <font-face> instead of <font>!
1160         https://bugs.webkit.org/show_bug.cgi?id=21365
1161         
1162         Tested by many many existing SVG tests.
1163
1164         * svg/SVGFontFaceElement.cpp:
1165         (WebCore::SVGFontFaceElement::ascent):
1166         (WebCore::SVGFontFaceElement::descent):
1167
1168 2008-10-05  Darin Fisher  <darin@chromium.org>
1169
1170         Reviewed by Eric Seidel.
1171
1172         REGRESSION: crash in ScriptElement::notifyFinished
1173         Fixes https://bugs.webkit.org/show_bug.cgi?id=21329
1174
1175         * dom/ScriptElement.cpp:
1176         (WebCore::ScriptElementData::notifyFinished): Revert part of r35744 to
1177         ensure that the ScriptElementData object is not destroyed prematurely.
1178
1179 2008-10-05  Chris Lord  <chris@openedhand.com>
1180
1181         Reviewed by Alp Toker. Landed by Jan Alonzo.
1182
1183         https://bugs.webkit.org/show_bug.cgi?id=20624
1184         WebKit-gtk uses deprecated GtkType/GtkObject
1185
1186         * plugins/gtk/gtk2xtbin.c:
1187         (gtk_xtbin_get_type):
1188         * plugins/gtk/gtk2xtbin.h:
1189
1190 2008-10-05  Luke Kenneth Casson Leighton  <lkcl@lkcl.net>
1191
1192         Reviewed by David Hyatt.
1193
1194         GTK_WINDOW_HWND not GTK_WINDOWING_HWND
1195         https://bugs.webkit.org/show_bug.cgi?id=20725
1196
1197         Updated to ToT by Jan Alonzo.
1198
1199         * plugins/gtk/PluginViewGtk.cpp:
1200         (WebCore::PluginView::getValue):
1201
1202 2008-10-05  Jan Michael Alonzo  <jmalonzo@webkit.org>
1203
1204         Reviewed by Darin Adler.
1205
1206         Invalid cast from GdkWindow to GtkWidget
1207         https://bugs.webkit.org/show_bug.cgi?id=21391
1208
1209         Fix a misplaced closing parenthesis to actually cast the widget, not the window
1210
1211         * platform/gtk/PlatformScreenGtk.cpp:
1212         (WebCore::screenDepth):
1213
1214 2008-10-05  Adam Barth  <abarth@webkit.org>
1215
1216         Reviewed by Darin Alder.
1217
1218         Attach the Origin header to POST requests to help defend against
1219         cross-site request forgery.
1220
1221         https://bugs.webkit.org/show_bug.cgi?id=20792
1222
1223         Collin Jackson <collinj@webkit.org> also contributed to this patch.
1224
1225         Tests: http/tests/security/originHeader/origin-header-for-data.html
1226                http/tests/security/originHeader/origin-header-for-empty.html
1227                http/tests/security/originHeader/origin-header-for-get.html
1228                http/tests/security/originHeader/origin-header-for-https.html
1229                http/tests/security/originHeader/origin-header-for-post.html
1230
1231         * bindings/js/JSDOMWindowBase.cpp:
1232         (WebCore::createWindow):
1233         * loader/FrameLoader.cpp:
1234         (WebCore::FrameLoader::createWindow):
1235         (WebCore::FrameLoader::urlSelected):
1236         (WebCore::FrameLoader::submitForm):
1237         (WebCore::FrameLoader::outgoingOrigin):
1238         (WebCore::FrameLoader::loadURL):
1239         (WebCore::FrameLoader::addExtraFieldsToRequest):
1240         (WebCore::FrameLoader::loadPostRequest):
1241         (WebCore::FrameLoader::loadResourceSynchronously):
1242         (WebCore::FrameLoader::loadItem):
1243         * loader/FrameLoader.h:
1244         * loader/SubresourceLoader.cpp:
1245         (WebCore::SubresourceLoader::create):
1246         * loader/loader.cpp:
1247         (WebCore::Loader::Host::servePendingRequests):
1248         * platform/SecurityOrigin.cpp:
1249         (WebCore::SecurityOrigin::toHTTPOrigin):
1250         * platform/SecurityOrigin.h:
1251         * platform/network/ResourceRequestBase.h:
1252         (WebCore::ResourceRequestBase::httpOrigin):
1253         (WebCore::ResourceRequestBase::setHTTPOrigin):
1254         (WebCore::ResourceRequestBase::clearHTTPOrigin):
1255         * xml/XMLHttpRequest.cpp:
1256         (WebCore::XMLHttpRequest::makeSimpleCrossSiteAccessRequest):
1257         (WebCore::XMLHttpRequest::makeCrossSiteAccessRequestWithPreflight):
1258         (WebCore::XMLHttpRequest::handleAsynchronousPreflightResult):
1259         (WebCore::XMLHttpRequest::didReceiveResponsePreflight):
1260
1261 2008-10-04  Oliver Hunt  <oliver@apple.com>
1262
1263         Reviewed by Tim Hatcher.
1264
1265         Bug 21381: Incremental parsing of html causes bogus line numbers in some cases
1266         <https://bugs.webkit.org/show_bug.cgi?id=21381>
1267
1268         If we hit a parsing boundary (end of a packet, etc) in the middle of a
1269         <script> element when we are doing an incremental parse, we exit the
1270         parser, and reenter later when more data is available.  During this
1271         reentry we incorrectly reset the scriptStartLineno to the current line
1272         in the parser, which is now part way through the script element.
1273
1274         The solution is to track whether we are entering or reentering the parsing
1275         of a script element.  We do this simply by 0 checking scriptStartLineno,
1276         and resetting it after we complete parsing of each script element. 
1277
1278         Test: http/tests/incremental/pause-in-script-element.pl
1279
1280         * ChangeLog:
1281         * html/HTMLTokenizer.cpp:
1282         (WebCore::HTMLTokenizer::parseSpecial):
1283         (WebCore::HTMLTokenizer::scriptHandler):
1284
1285 2008-10-04  Alp Toker  <alp@nuanti.com>
1286
1287         Reviewed by David Hyatt. Landed by Jan Alonzo.
1288
1289         https://bugs.webkit.org/show_bug.cgi?id=20924
1290         [Gtk] Linux/Gtk: Recent tree revisions fail Acid2 and Acid3
1291
1292         https://bugs.webkit.org/show_bug.cgi?id=19578
1293         [CURL] problem in parseDataUrl
1294
1295         De-obfuscate parseDataUrl() and fix regressions introduced in r35954.
1296         This patch also fixes encoding support in escaped (non-Base64) data
1297         URLs. All manual data URL tests now pass in both GLib and non-GLib
1298         code paths.
1299
1300         * platform/network/curl/ResourceHandleManager.cpp:
1301         (WebCore::parseDataUrl):
1302
1303 2008-10-04  Timothy Hatcher  <timothy@apple.com>
1304
1305         Makes breakpoints and debugging code during page load work in the
1306         Web Inspector's debugger. Specifically, this makes the source
1307         code for loading resources show up in the Scripts panel.
1308
1309         https://bugs.webkit.org/show_bug.cgi?id=19053
1310         rdar://problem/5933408
1311
1312         Reviewed by Mark Rowe.
1313
1314         * WebCore.xcodeproj/project.pbxproj: Mark the inspector group as
1315         not using tabs and a tab width of 8.
1316         * inspector/InspectorController.cpp:
1317         (WebCore::addResourceSourceToFrame): Return a bool to report if the
1318         source was added successfully or not.
1319         (WebCore::addSourceToFrame): Ditto.
1320         * inspector/front-end/ScriptView.js:
1321         (WebInspector.ScriptView.prototype.setupSourceFrameIfNeeded):
1322         Return early if the InspectorController.addSourceToFrame fails.
1323         Moved the delete of the _frameNeedsSetup property after that call so
1324         if the source wasn't added it will be attempted again.
1325         * inspector/front-end/SourceView.js:
1326         (WebInspector.SourceView.prototype.detach): Move a comment.
1327         (WebInspector.SourceView.prototype.setupSourceFrameIfNeeded):
1328         Don't check if the resource is finished or failed, just attempt
1329         to add the source to the frame. WebCore has the source, but the
1330         finished property hasn't been set yet. Return early if the
1331         InspectorController.addSourceToFrame fails. Moved the delete
1332         of the _frameNeedsSetup property after that call so if the source
1333         wasn't added it will be attempted again.
1334         (WebInspector.SourceView.prototype._resourceLoadingFinished):
1335         Clear the _frameNeedsSetup and _sourceFrameSetup properties so
1336         the source frame will we populated again now that the resource
1337         load has finished.
1338         * manual-tests/inspector/debugger-pause-during-load.html: Added.
1339
1340 2008-10-04  Mark Rowe  <mrowe@apple.com>
1341
1342         Reviewed by Tim Hatcher.
1343
1344         Add a 'Check For Weak VTables' build phase to catch weak vtables as early as possible.
1345
1346         * WebCore.xcodeproj/project.pbxproj:
1347
1348 2008-10-04  David Hyatt  <hyatt@apple.com>
1349
1350         https://bugs.webkit.org/show_bug.cgi?id=21373
1351
1352         Tear down scrollbars in FrameView rather than ScrollView so that the connection to the hostWindow()
1353         is still present.
1354
1355         Reviewed by Mark Rowe
1356
1357         * page/FrameView.cpp:
1358         (WebCore::FrameView::~FrameView):
1359
1360 2008-10-04  Sam Weinig  <sam@webkit.org>
1361
1362         Reviewed by Dan Bernstein.
1363
1364         Avoid copying a Vector when using getSupportedKeySizes.
1365
1366         * html/HTMLKeygenElement.cpp:
1367         (WebCore::HTMLKeygenElement::HTMLKeygenElement):
1368         * platform/SSLKeyGenerator.h:
1369         * platform/gtk/TemporaryLinkStubs.cpp:
1370         (WebCore::getSupportedKeySizes):
1371         * platform/mac/SSLKeyGeneratorMac.mm:
1372         (WebCore::getSupportedKeySizes):
1373         * platform/qt/TemporaryLinkStubs.cpp:
1374         (WebCore::getSupportedKeySizes):
1375         * platform/win/TemporaryLinkStubs.cpp:
1376         (WebCore::getSupportedKeySizes):
1377         * platform/wx/TemporaryLinkStubs.cpp:
1378         (WebCore::getSupportedKeySizes):
1379
1380 2008-10-04  Darin Adler  <darin@apple.com>
1381
1382         Reviewed by Cameron Zwarich.
1383
1384         - prepare for https://bugs.webkit.org/show_bug.cgi?id=21295
1385           Bug 21295: Replace ExecState with a call frame Register pointer
1386
1387         * bindings/js/JSQuarantinedObjectWrapper.cpp:
1388         (WebCore::JSQuarantinedObjectWrapper::allowsUnwrappedAccessFrom):
1389         Remove bogus "const".
1390         * bindings/js/JSQuarantinedObjectWrapper.h: Ditto.
1391
1392 2008-10-04  David Hyatt  <hyatt@apple.com>
1393
1394         Make PopupMenuClient obey the platform abstraction.  Remove any connection to Document and RenderStyle.
1395
1396         Reviewed by Darin Adler
1397
1398         * WebCore.xcodeproj/project.pbxproj:
1399         * platform/PopupMenuClient.h:
1400         * platform/gtk/PopupMenuGtk.cpp:
1401         (WebCore::PopupMenu::show):
1402         * platform/mac/PopupMenuMac.mm:
1403         (WebCore::PopupMenu::populate):
1404         (WebCore::PopupMenu::show):
1405         * platform/qt/PopupMenuQt.cpp:
1406         (WebCore::PopupMenu::populate):
1407         * platform/win/PopupMenuWin.cpp:
1408         (WebCore::PopupMenu::calculatePositionAndSize):
1409         (WebCore::PopupMenu::paint):
1410         (WebCore::PopupWndProc):
1411         * rendering/RenderMenuList.cpp:
1412         (WebCore::RenderMenuList::itemStyle):
1413         (WebCore::RenderMenuList::menuStyle):
1414         (WebCore::RenderMenuList::hostWindow):
1415         * rendering/RenderMenuList.h:
1416         * rendering/RenderTextControl.cpp:
1417         (WebCore::RenderTextControl::itemStyle):
1418         (WebCore::RenderTextControl::menuStyle):
1419         (WebCore::RenderTextControl::hostWindow):
1420         * rendering/RenderTextControl.h:
1421
1422 2008-10-04  Matt Lilek  <webkit@mattlilek.com>
1423
1424         Build fix - restore Private role to headers that had it before the move.
1425
1426         * WebCore.xcodeproj/project.pbxproj:
1427
1428 2008-10-04  Darin Adler  <darin@apple.com>
1429
1430         - try to fix build
1431
1432         * DerivedSources.make: Add new inspector directory to VPATH.
1433         * GNUmakefile.am: Add new inspector directory to includes.
1434         Re-sort the IDL_BINDINGS list. Add new inspector directory
1435         to VPATH.
1436
1437 2008-10-04  Matt Lilek  <webkit@mattlilek.com>
1438
1439         Not reviewed, attempt to fix Gtk build.
1440
1441         * GNUmakefile.am:
1442
1443 2008-10-03  Timothy Hatcher  <timothy@apple.com>
1444
1445         Move the Web Inspector files into a top-level "inspector" folder.
1446
1447         https://bugs.webkit.org/show_bug.cgi?id=21359
1448
1449         Reviewed by Dave Hyatt.
1450
1451         * GNUmakefile.am:
1452         * WebCore.pro:
1453         * WebCore.vcproj/WebCore.vcproj:
1454         * WebCore.xcodeproj/project.pbxproj:
1455         * WebCoreSources.bkl:
1456         * inspector/InspectorClient.h: Renamed from WebCore/page/InspectorClient.h.
1457         * inspector/InspectorController.cpp: Renamed from WebCore/page/InspectorController.cpp.
1458         * inspector/InspectorController.h: Renamed from WebCore/page/InspectorController.h.
1459         * inspector/JavaScriptCallFrame.cpp: Renamed from WebCore/page/JavaScriptCallFrame.cpp.
1460         * inspector/JavaScriptCallFrame.h: Renamed from WebCore/page/JavaScriptCallFrame.h.
1461         * inspector/JavaScriptCallFrame.idl: Renamed from WebCore/page/JavaScriptCallFrame.idl.
1462         * inspector/JavaScriptDebugListener.h: Renamed from WebCore/page/JavaScriptDebugListener.h.
1463         * inspector/JavaScriptDebugServer.cpp: Renamed from WebCore/page/JavaScriptDebugServer.cpp.
1464         * inspector/JavaScriptDebugServer.h: Renamed from WebCore/page/JavaScriptDebugServer.h.
1465         * inspector/JavaScriptProfile.cpp: Renamed from WebCore/page/JavaScriptProfile.cpp.
1466         * inspector/JavaScriptProfile.h: Renamed from WebCore/page/JavaScriptProfile.h.
1467         * inspector/JavaScriptProfileNode.cpp: Renamed from WebCore/page/JavaScriptProfileNode.cpp.
1468         * inspector/JavaScriptProfileNode.h: Renamed from WebCore/page/JavaScriptProfileNode.h.
1469         * inspector/front-end/Breakpoint.js: Renamed from WebCore/page/inspector/Breakpoint.js.
1470         * inspector/front-end/BreakpointsSidebarPane.js: Renamed from WebCore/page/inspector/BreakpointsSidebarPane.js.
1471         * inspector/front-end/CallStackSidebarPane.js: Renamed from WebCore/page/inspector/CallStackSidebarPane.js.
1472         * inspector/front-end/Console.js: Renamed from WebCore/page/inspector/Console.js.
1473         * inspector/front-end/DataGrid.js: Renamed from WebCore/page/inspector/DataGrid.js.
1474         * inspector/front-end/Database.js: Renamed from WebCore/page/inspector/Database.js.
1475         * inspector/front-end/DatabaseQueryView.js: Renamed from WebCore/page/inspector/DatabaseQueryView.js.
1476         * inspector/front-end/DatabaseTableView.js: Renamed from WebCore/page/inspector/DatabaseTableView.js.
1477         * inspector/front-end/DatabasesPanel.js: Renamed from WebCore/page/inspector/DatabasesPanel.js.
1478         * inspector/front-end/ElementsPanel.js: Renamed from WebCore/page/inspector/ElementsPanel.js.
1479         * inspector/front-end/ElementsTreeOutline.js: Renamed from WebCore/page/inspector/ElementsTreeOutline.js.
1480         * inspector/front-end/FontView.js: Renamed from WebCore/page/inspector/FontView.js.
1481         * inspector/front-end/ImageView.js: Renamed from WebCore/page/inspector/ImageView.js.
1482         * inspector/front-end/Images/back.png: Renamed from WebCore/page/inspector/Images/back.png.
1483         * inspector/front-end/Images/checker.png: Renamed from WebCore/page/inspector/Images/checker.png.
1484         * inspector/front-end/Images/clearConsoleButtons.png: Renamed from WebCore/page/inspector/Images/clearConsoleButtons.png.
1485         * inspector/front-end/Images/closeButtons.png: Renamed from WebCore/page/inspector/Images/closeButtons.png.
1486         * inspector/front-end/Images/consoleButtons.png: Renamed from WebCore/page/inspector/Images/consoleButtons.png.
1487         * inspector/front-end/Images/database.png: Renamed from WebCore/page/inspector/Images/database.png.
1488         * inspector/front-end/Images/databaseTable.png: Renamed from WebCore/page/inspector/Images/databaseTable.png.
1489         * inspector/front-end/Images/databasesIcon.png: Renamed from WebCore/page/inspector/Images/databasesIcon.png.
1490         * inspector/front-end/Images/debuggerContinue.png: Renamed from WebCore/page/inspector/Images/debuggerContinue.png.
1491         * inspector/front-end/Images/debuggerPause.png: Renamed from WebCore/page/inspector/Images/debuggerPause.png.
1492         * inspector/front-end/Images/debuggerStepInto.png: Renamed from WebCore/page/inspector/Images/debuggerStepInto.png.
1493         * inspector/front-end/Images/debuggerStepOut.png: Renamed from WebCore/page/inspector/Images/debuggerStepOut.png.
1494         * inspector/front-end/Images/debuggerStepOver.png: Renamed from WebCore/page/inspector/Images/debuggerStepOver.png.
1495         * inspector/front-end/Images/debuggingButtons.png: Renamed from WebCore/page/inspector/Images/debuggingButtons.png.
1496         * inspector/front-end/Images/disclosureTriangleSmallDown.png: Renamed from WebCore/page/inspector/Images/disclosureTriangleSmallDown.png.
1497         * inspector/front-end/Images/disclosureTriangleSmallDownBlack.png: Renamed from WebCore/page/inspector/Images/disclosureTriangleSmallDownBlack.png.
1498         * inspector/front-end/Images/disclosureTriangleSmallDownWhite.png: Renamed from WebCore/page/inspector/Images/disclosureTriangleSmallDownWhite.png.
1499         * inspector/front-end/Images/disclosureTriangleSmallRight.png: Renamed from WebCore/page/inspector/Images/disclosureTriangleSmallRight.png.
1500         * inspector/front-end/Images/disclosureTriangleSmallRightBlack.png: Renamed from WebCore/page/inspector/Images/disclosureTriangleSmallRightBlack.png.
1501         * inspector/front-end/Images/disclosureTriangleSmallRightDown.png: Renamed from WebCore/page/inspector/Images/disclosureTriangleSmallRightDown.png.
1502         * inspector/front-end/Images/disclosureTriangleSmallRightDownBlack.png: Renamed from WebCore/page/inspector/Images/disclosureTriangleSmallRightDownBlack.png.
1503         * inspector/front-end/Images/disclosureTriangleSmallRightDownWhite.png: Renamed from WebCore/page/inspector/Images/disclosureTriangleSmallRightDownWhite.png.
1504         * inspector/front-end/Images/disclosureTriangleSmallRightWhite.png: Renamed from WebCore/page/inspector/Images/disclosureTriangleSmallRightWhite.png.
1505         * inspector/front-end/Images/dockButtons.png: Renamed from WebCore/page/inspector/Images/dockButtons.png.
1506         * inspector/front-end/Images/elementsIcon.png: Renamed from WebCore/page/inspector/Images/elementsIcon.png.
1507         * inspector/front-end/Images/errorIcon.png: Renamed from WebCore/page/inspector/Images/errorIcon.png.
1508         * inspector/front-end/Images/errorMediumIcon.png: Renamed from WebCore/page/inspector/Images/errorMediumIcon.png.
1509         * inspector/front-end/Images/excludeButtons.png: Renamed from WebCore/page/inspector/Images/excludeButtons.png.
1510         * inspector/front-end/Images/focusButtons.png: Renamed from WebCore/page/inspector/Images/focusButtons.png.
1511         * inspector/front-end/Images/forward.png: Renamed from WebCore/page/inspector/Images/forward.png.
1512         * inspector/front-end/Images/glossyHeader.png: Renamed from WebCore/page/inspector/Images/glossyHeader.png.
1513         * inspector/front-end/Images/glossyHeaderPressed.png: Renamed from WebCore/page/inspector/Images/glossyHeaderPressed.png.
1514         * inspector/front-end/Images/glossyHeaderSelected.png: Renamed from WebCore/page/inspector/Images/glossyHeaderSelected.png.
1515         * inspector/front-end/Images/glossyHeaderSelectedPressed.png: Renamed from WebCore/page/inspector/Images/glossyHeaderSelectedPressed.png.
1516         * inspector/front-end/Images/goArrow.png: Renamed from WebCore/page/inspector/Images/goArrow.png.
1517         * inspector/front-end/Images/largerResourcesButtons.png: Renamed from WebCore/page/inspector/Images/largerResourcesButtons.png.
1518         * inspector/front-end/Images/nodeSearchButtons.png: Renamed from WebCore/page/inspector/Images/nodeSearchButtons.png.
1519         * inspector/front-end/Images/paneBottomGrow.png: Renamed from WebCore/page/inspector/Images/paneBottomGrow.png.
1520         * inspector/front-end/Images/paneBottomGrowActive.png: Renamed from WebCore/page/inspector/Images/paneBottomGrowActive.png.
1521         * inspector/front-end/Images/paneGrowHandleLine.png: Renamed from WebCore/page/inspector/Images/paneGrowHandleLine.png.
1522         * inspector/front-end/Images/pauseOnExceptionButtons.png: Renamed from WebCore/page/inspector/Images/pauseOnExceptionButtons.png.
1523         * inspector/front-end/Images/percentButtons.png: Renamed from WebCore/page/inspector/Images/percentButtons.png.
1524         * inspector/front-end/Images/profileGroupIcon.png: Renamed from WebCore/page/inspector/Images/profileGroupIcon.png.
1525         * inspector/front-end/Images/profileIcon.png: Renamed from WebCore/page/inspector/Images/profileIcon.png.
1526         * inspector/front-end/Images/profileSmallIcon.png: Renamed from WebCore/page/inspector/Images/profileSmallIcon.png.
1527         * inspector/front-end/Images/profilesIcon.png: Renamed from WebCore/page/inspector/Images/profilesIcon.png.
1528         * inspector/front-end/Images/recordButtons.png: Renamed from WebCore/page/inspector/Images/recordButtons.png.
1529         * inspector/front-end/Images/reloadButtons.png: Renamed from WebCore/page/inspector/Images/reloadButtons.png.
1530         * inspector/front-end/Images/resourceCSSIcon.png: Renamed from WebCore/page/inspector/Images/resourceCSSIcon.png.
1531         * inspector/front-end/Images/resourceDocumentIcon.png: Renamed from WebCore/page/inspector/Images/resourceDocumentIcon.png.
1532         * inspector/front-end/Images/resourceDocumentIconSmall.png: Renamed from WebCore/page/inspector/Images/resourceDocumentIconSmall.png.
1533         * inspector/front-end/Images/resourceJSIcon.png: Renamed from WebCore/page/inspector/Images/resourceJSIcon.png.
1534         * inspector/front-end/Images/resourcePlainIcon.png: Renamed from WebCore/page/inspector/Images/resourcePlainIcon.png.
1535         * inspector/front-end/Images/resourcePlainIconSmall.png: Renamed from WebCore/page/inspector/Images/resourcePlainIconSmall.png.
1536         * inspector/front-end/Images/resourcesIcon.png: Renamed from WebCore/page/inspector/Images/resourcesIcon.png.
1537         * inspector/front-end/Images/resourcesSizeGraphIcon.png: Renamed from WebCore/page/inspector/Images/resourcesSizeGraphIcon.png.
1538         * inspector/front-end/Images/resourcesTimeGraphIcon.png: Renamed from WebCore/page/inspector/Images/resourcesTimeGraphIcon.png.
1539         * inspector/front-end/Images/scriptsIcon.png: Renamed from WebCore/page/inspector/Images/scriptsIcon.png.
1540         * inspector/front-end/Images/searchSmallBlue.png: Renamed from WebCore/page/inspector/Images/searchSmallBlue.png.
1541         * inspector/front-end/Images/searchSmallBrightBlue.png: Renamed from WebCore/page/inspector/Images/searchSmallBrightBlue.png.
1542         * inspector/front-end/Images/searchSmallGray.png: Renamed from WebCore/page/inspector/Images/searchSmallGray.png.
1543         * inspector/front-end/Images/searchSmallWhite.png: Renamed from WebCore/page/inspector/Images/searchSmallWhite.png.
1544         * inspector/front-end/Images/segment.png: Renamed from WebCore/page/inspector/Images/segment.png.
1545         * inspector/front-end/Images/segmentEnd.png: Renamed from WebCore/page/inspector/Images/segmentEnd.png.
1546         * inspector/front-end/Images/segmentHover.png: Renamed from WebCore/page/inspector/Images/segmentHover.png.
1547         * inspector/front-end/Images/segmentHoverEnd.png: Renamed from WebCore/page/inspector/Images/segmentHoverEnd.png.
1548         * inspector/front-end/Images/segmentSelected.png: Renamed from WebCore/page/inspector/Images/segmentSelected.png.
1549         * inspector/front-end/Images/segmentSelectedEnd.png: Renamed from WebCore/page/inspector/Images/segmentSelectedEnd.png.
1550         * inspector/front-end/Images/splitviewDimple.png: Renamed from WebCore/page/inspector/Images/splitviewDimple.png.
1551         * inspector/front-end/Images/splitviewDividerBackground.png: Renamed from WebCore/page/inspector/Images/splitviewDividerBackground.png.
1552         * inspector/front-end/Images/statusbarBackground.png: Renamed from WebCore/page/inspector/Images/statusbarBackground.png.
1553         * inspector/front-end/Images/statusbarBottomBackground.png: Renamed from WebCore/page/inspector/Images/statusbarBottomBackground.png.
1554         * inspector/front-end/Images/statusbarButtons.png: Renamed from WebCore/page/inspector/Images/statusbarButtons.png.
1555         * inspector/front-end/Images/statusbarMenuButton.png: Renamed from WebCore/page/inspector/Images/statusbarMenuButton.png.
1556         * inspector/front-end/Images/statusbarMenuButtonSelected.png: Renamed from WebCore/page/inspector/Images/statusbarMenuButtonSelected.png.
1557         * inspector/front-end/Images/statusbarResizerHorizontal.png: Renamed from WebCore/page/inspector/Images/statusbarResizerHorizontal.png.
1558         * inspector/front-end/Images/statusbarResizerVertical.png: Renamed from WebCore/page/inspector/Images/statusbarResizerVertical.png.
1559         * inspector/front-end/Images/timelinePillBlue.png: Renamed from WebCore/page/inspector/Images/timelinePillBlue.png.
1560         * inspector/front-end/Images/timelinePillGray.png: Renamed from WebCore/page/inspector/Images/timelinePillGray.png.
1561         * inspector/front-end/Images/timelinePillGreen.png: Renamed from WebCore/page/inspector/Images/timelinePillGreen.png.
1562         * inspector/front-end/Images/timelinePillOrange.png: Renamed from WebCore/page/inspector/Images/timelinePillOrange.png.
1563         * inspector/front-end/Images/timelinePillPurple.png: Renamed from WebCore/page/inspector/Images/timelinePillPurple.png.
1564         * inspector/front-end/Images/timelinePillRed.png: Renamed from WebCore/page/inspector/Images/timelinePillRed.png.
1565         * inspector/front-end/Images/timelinePillYellow.png: Renamed from WebCore/page/inspector/Images/timelinePillYellow.png.
1566         * inspector/front-end/Images/tipBalloon.png: Renamed from WebCore/page/inspector/Images/tipBalloon.png.
1567         * inspector/front-end/Images/tipBalloonBottom.png: Renamed from WebCore/page/inspector/Images/tipBalloonBottom.png.
1568         * inspector/front-end/Images/tipIcon.png: Renamed from WebCore/page/inspector/Images/tipIcon.png.
1569         * inspector/front-end/Images/tipIconPressed.png: Renamed from WebCore/page/inspector/Images/tipIconPressed.png.
1570         * inspector/front-end/Images/toolbarItemSelected.png: Renamed from WebCore/page/inspector/Images/toolbarItemSelected.png.
1571         * inspector/front-end/Images/treeDownTriangleBlack.png: Renamed from WebCore/page/inspector/Images/treeDownTriangleBlack.png.
1572         * inspector/front-end/Images/treeDownTriangleWhite.png: Renamed from WebCore/page/inspector/Images/treeDownTriangleWhite.png.
1573         * inspector/front-end/Images/treeRightTriangleBlack.png: Renamed from WebCore/page/inspector/Images/treeRightTriangleBlack.png.
1574         * inspector/front-end/Images/treeRightTriangleWhite.png: Renamed from WebCore/page/inspector/Images/treeRightTriangleWhite.png.
1575         * inspector/front-end/Images/treeUpTriangleBlack.png: Renamed from WebCore/page/inspector/Images/treeUpTriangleBlack.png.
1576         * inspector/front-end/Images/treeUpTriangleWhite.png: Renamed from WebCore/page/inspector/Images/treeUpTriangleWhite.png.
1577         * inspector/front-end/Images/userInputIcon.png: Renamed from WebCore/page/inspector/Images/userInputIcon.png.
1578         * inspector/front-end/Images/userInputPreviousIcon.png: Renamed from WebCore/page/inspector/Images/userInputPreviousIcon.png.
1579         * inspector/front-end/Images/warningIcon.png: Renamed from WebCore/page/inspector/Images/warningIcon.png.
1580         * inspector/front-end/Images/warningMediumIcon.png: Renamed from WebCore/page/inspector/Images/warningMediumIcon.png.
1581         * inspector/front-end/Images/warningsErrors.png: Renamed from WebCore/page/inspector/Images/warningsErrors.png.
1582         * inspector/front-end/MetricsSidebarPane.js: Renamed from WebCore/page/inspector/MetricsSidebarPane.js.
1583         * inspector/front-end/Object.js: Renamed from WebCore/page/inspector/Object.js.
1584         * inspector/front-end/ObjectPropertiesSection.js: Renamed from WebCore/page/inspector/ObjectPropertiesSection.js.
1585         * inspector/front-end/Panel.js: Renamed from WebCore/page/inspector/Panel.js.
1586         * inspector/front-end/Placard.js: Renamed from WebCore/page/inspector/Placard.js.
1587         * inspector/front-end/ProfileView.js: Renamed from WebCore/page/inspector/ProfileView.js.
1588         * inspector/front-end/ProfilesPanel.js: Renamed from WebCore/page/inspector/ProfilesPanel.js.
1589         * inspector/front-end/PropertiesSection.js: Renamed from WebCore/page/inspector/PropertiesSection.js.
1590         * inspector/front-end/PropertiesSidebarPane.js: Renamed from WebCore/page/inspector/PropertiesSidebarPane.js.
1591         * inspector/front-end/Resource.js: Renamed from WebCore/page/inspector/Resource.js.
1592         * inspector/front-end/ResourceCategory.js: Renamed from WebCore/page/inspector/ResourceCategory.js.
1593         * inspector/front-end/ResourceView.js: Renamed from WebCore/page/inspector/ResourceView.js.
1594         * inspector/front-end/ResourcesPanel.js: Renamed from WebCore/page/inspector/ResourcesPanel.js.
1595         * inspector/front-end/ScopeChainSidebarPane.js: Renamed from WebCore/page/inspector/ScopeChainSidebarPane.js.
1596         * inspector/front-end/Script.js: Renamed from WebCore/page/inspector/Script.js.
1597         * inspector/front-end/ScriptView.js: Renamed from WebCore/page/inspector/ScriptView.js.
1598         * inspector/front-end/ScriptsPanel.js: Renamed from WebCore/page/inspector/ScriptsPanel.js.
1599         * inspector/front-end/SidebarPane.js: Renamed from WebCore/page/inspector/SidebarPane.js.
1600         * inspector/front-end/SidebarTreeElement.js: Renamed from WebCore/page/inspector/SidebarTreeElement.js.
1601         * inspector/front-end/SourceFrame.js: Renamed from WebCore/page/inspector/SourceFrame.js.
1602         * inspector/front-end/SourceView.js: Renamed from WebCore/page/inspector/SourceView.js.
1603         * inspector/front-end/StylesSidebarPane.js: Renamed from WebCore/page/inspector/StylesSidebarPane.js.
1604         * inspector/front-end/TextPrompt.js: Renamed from WebCore/page/inspector/TextPrompt.js.
1605         * inspector/front-end/View.js: Renamed from WebCore/page/inspector/View.js.
1606         * inspector/front-end/WebKit.qrc: Renamed from WebCore/page/inspector/WebKit.qrc.
1607         * inspector/front-end/inspector.css: Renamed from WebCore/page/inspector/inspector.css.
1608         * inspector/front-end/inspector.html: Renamed from WebCore/page/inspector/inspector.html.
1609         * inspector/front-end/inspector.js: Renamed from WebCore/page/inspector/inspector.js.
1610         * inspector/front-end/treeoutline.js: Renamed from WebCore/page/inspector/treeoutline.js.
1611         * inspector/front-end/utilities.js: Renamed from WebCore/page/inspector/utilities.js.
1612
1613 2008-10-03  Timothy Hatcher  <timothy@apple.com>
1614
1615         Adds support to the Web Inspector's Elements panel for fast tag name,
1616         class name, id and attribute name searching. The panel first tries
1617         using getElementById, getElementsByClassName and getElementsByTagName
1618         with the search query. Then does a slower search using XPath for partial
1619         matches, text and comment matches.
1620
1621         Adds support for search queries like "<div>", "<h" and "frame>".
1622         These forms limit the search to tag names, text and comment matches.
1623
1624         https://bugs.webkit.org/show_bug.cgi?id=21353
1625
1626         Reviewed by Maciej Stachowiak.
1627
1628         * page/inspector/ElementsPanel.js:
1629         (WebInspector.ElementsPanel.prototype.performSearch): Add tag syntax
1630         support. Add new search functions that try exact matches first.
1631
1632 2008-10-03  Timothy Hatcher  <timothy@apple.com>
1633
1634         Changes how searching works in the Web Inspector's Elements
1635         panel. The search tasks are divided into chunks that are small
1636         units of work that are performed at a time interval. This
1637         change also prevents queries that will select all elements,
1638         since that isn't useful.
1639
1640         https://bugs.webkit.org/show_bug.cgi?id=21285
1641
1642         Reviewed by Oliver Hunt.
1643
1644         * page/inspector/ElementsPanel.js:
1645         (WebInspector.ElementsPanel.prototype.searchCancled):
1646         Remove the searchResultsProperty form results since there might
1647         be an unfinished search.
1648         (WebInspector.ElementsPanel.prototype.performSearch): Divide the
1649         documents and search functions into chunks that are performed on
1650         a interval of 25ms. Prevent searches for "//*" and "*".
1651
1652 2008-10-03  Maciej Stachowiak  <mjs@apple.com>
1653
1654         Reviewed by Cameron Zwarich.
1655
1656         - "this" object in methods called on primitives should be wrapper object
1657         https://bugs.webkit.org/show_bug.cgi?id=21362
1658
1659         Updated so toThis conversion for the split window is handled properly.
1660
1661         * bindings/scripts/CodeGeneratorJS.pm:
1662
1663 2008-10-03  Sam Weinig  <sam@webkit.org>
1664
1665         Reviewed by David "The Motivator" Hyatt.
1666
1667         Patch for https://bugs.webkit.org/show_bug.cgi?id=21355
1668         Move SecurityOrigin out of platform/ to page/.
1669
1670         It was a layering violation for SecurityOrigin to be in platform
1671         as it depended on FrameLoader.
1672
1673         * GNUmakefile.am:
1674         * WebCore.pro:
1675         * WebCore.vcproj/WebCore.vcproj:
1676         * WebCore.xcodeproj/project.pbxproj:
1677         * WebCoreSources.bkl:
1678         * page/SecurityOrigin.cpp: Copied from platform/SecurityOrigin.cpp.
1679         * page/SecurityOrigin.h: Copied from platform/SecurityOrigin.h.
1680         * page/SecurityOriginHash.h: Copied from platform/SecurityOriginHash.h.
1681         * platform/SecurityOrigin.cpp: Removed.
1682         * platform/SecurityOrigin.h: Removed.
1683         * platform/SecurityOriginHash.h: Removed.
1684
1685 2008-10-03  Marco Barisione  <marco.barisione@collabora.co.uk>
1686
1687         Reviewed by Alp Toker.
1688
1689         http://bugs.webkit.org/show_bug.cgi?id=18832
1690         [curl] file upload does not work
1691
1692         The curl_off_t integer type has a different size depending if large
1693         file support is enabled or not. There is no different public API for
1694         the two cases, so the same function accepts a different type based on
1695         a compilation option the could be different in WebKit and libcurl.
1696         To fix the bug we query libcurl at runtime for large file support and
1697         pass the right type based on that.
1698
1699         * platform/network/curl/ResourceHandleManager.cpp:
1700         (WebCore::ResourceHandleManager::setupPOST):
1701
1702 2008-10-03  Jan Michael Alonzo  <jmalonzo@webkit.org>
1703
1704         Reviewed by David Hyatt.
1705
1706         Gtk build fixes.
1707
1708         * platform/gtk/FileChooserGtk.cpp:
1709         (WebCore::FileChooser::openFileChooser):
1710         * platform/gtk/PlatformScreenGtk.cpp:
1711         (WebCore::screenDepth):
1712         (WebCore::screenDepthPerComponent):
1713         (WebCore::screenAvailableRect):
1714         * platform/gtk/PopupMenuGtk.cpp:
1715         (WebCore::PopupMenu::show):
1716         * platform/gtk/ScrollViewGtk.cpp:
1717         (WebCore::ScrollView::platformAddChild):
1718         (WebCore::ScrollView::platformRemoveChild):
1719         * platform/gtk/WidgetGtk.cpp:
1720         (WebCore::Widget::setCursor):
1721         * plugins/gtk/PluginViewGtk.cpp:
1722         (WebCore::PluginView::getValue):
1723         (WebCore::PluginView::forceRedraw):
1724         (WebCore::PluginView::init):
1725
1726 2008-10-03  David Hyatt  <hyatt@apple.com>
1727
1728         Fix Qt bustage from missing include.
1729
1730         * platform/qt/PlatformScreenQt.cpp:
1731
1732 2008-10-03  David Hyatt  <hyatt@apple.com>
1733
1734         Fix Windows scrollbar bustage in popup menus.
1735
1736         * platform/win/PopupMenuWin.cpp:
1737         (WebCore::PopupWndProc):
1738
1739 2008-10-03  David Hyatt  <hyatt@apple.com>
1740
1741         Fix Windows bustage.
1742
1743         * platform/win/FileChooserWin.cpp:
1744         (WebCore::FileChooser::openFileChooser):
1745         * platform/win/PlatformScreenWin.cpp:
1746         (WebCore::monitorInfoForWidget):
1747         * platform/win/WidgetWin.cpp:
1748         * plugins/win/PluginViewWin.cpp:
1749         (WebCore::PluginView::getValue):
1750         (WebCore::PluginView::forceRedraw):
1751         (WebCore::PluginView::init):
1752
1753 2008-10-03  Darin Adler  <darin@apple.com>
1754
1755         * bindings/js/JSInspectedObjectWrapper.cpp: Try to fix a build failure
1756         seen on some machines but not others by adding an include.
1757
1758 2008-10-03  Darin Adler  <darin@apple.com>
1759
1760         - Qt build fix
1761
1762         * bridge/qt/qt_runtime.cpp: Remove long-obsolete codeType and
1763         execute functions. Declarations for these relied on the CodeType
1764         enumeration, which used to be in ExecState.h; but the functions
1765         aren't needed at all.
1766         * bridge/qt/qt_runtime.h: Ditto.
1767
1768 2008-10-03  Darin Adler  <darin@apple.com>
1769
1770         Reviewed by Geoff Garen.
1771
1772         - next step of https://bugs.webkit.org/show_bug.cgi?id=21295
1773           Turn ExecState into a call frame pointer.
1774
1775         Remove m_globalObject and m_globalData from ExecState.
1776
1777         * bindings/js/JSDOMWindowBase.cpp:
1778         (WebCore::JSDOMWindowBase::JSDOMWindowBaseData::JSDOMWindowBaseData):
1779         Removed an argument now that JSGlobalObject doesn't need it any more.
1780         (WebCore::JSDOMWindowBase::JSDOMWindowBase): Removed the argument from
1781         the JSDOMWindowBaseData constructor, and added the this argument to the
1782         JSGlobalObject constructor. This is because a couple key bits of
1783         initialization moved from the data constructor to the JSGlobalObject
1784         constructor.
1785         * bindings/js/JSDOMWindowBase.h: Ditto.
1786
1787         * bridge/qt/qt_runtime.cpp:
1788         (JSC::Bindings::QtRuntimeMethod::QtRuntimeMethod):
1789         * bridge/runtime_method.cpp:
1790         (JSC::RuntimeMethod::RuntimeMethod):
1791         Pass JSGlobalData* instead of ExecState* to the InternalFunction
1792         constructor.
1793
1794 2008-10-03  David Hyatt  <hyatt@apple.com>
1795
1796         Fix Windows/Qt build bustage.
1797
1798         Reviewed by ggaren
1799
1800         * loader/EmptyClients.h:
1801         (WebCore::EmptyChromeClient::platformWindow):
1802         * page/Chrome.cpp:
1803         (WebCore::Chrome::platformWindow):
1804         * page/Chrome.h:
1805         * page/ChromeClient.h:
1806         * platform/HostWindow.h:
1807         * platform/qt/PlatformScreenQt.cpp:
1808         (WebCore::screenDepth):
1809         (WebCore::screenDepthPerComponent):
1810         (WebCore::screenIsMonochrome):
1811         (WebCore::screenRect):
1812         (WebCore::screenAvailableRect):
1813         * platform/qt/PopupMenuQt.cpp:
1814         (WebCore::PopupMenu::show):
1815         * platform/win/PopupMenuWin.cpp:
1816         (WebCore::PopupMenu::show):
1817         (WebCore::PopupMenu::calculatePositionAndSize):
1818         (WebCore::PopupWndProc):
1819
1820 2008-10-03  Simon Fraser  <simon.fraser@apple.com>
1821
1822         Reviewed by Dave Hyatt
1823
1824         Make setStyle() take a const RenderStyle, to ensure that an
1825         earlier RenderStyle::diff() remains valid.
1826
1827         * rendering/RenderBR.cpp:
1828         * rendering/RenderBR.h:
1829         * rendering/RenderBlock.cpp:
1830         * rendering/RenderBlock.h:
1831         * rendering/RenderBox.cpp:
1832         * rendering/RenderBox.h:
1833         * rendering/RenderButton.cpp:
1834         * rendering/RenderButton.h:
1835         * rendering/RenderFieldset.cpp:
1836         * rendering/RenderFieldset.h:
1837         * rendering/RenderFileUploadControl.cpp:
1838         * rendering/RenderFileUploadControl.h:
1839         * rendering/RenderInline.cpp:
1840         * rendering/RenderInline.h:
1841         * rendering/RenderListBox.cpp:
1842         * rendering/RenderListBox.h:
1843         * rendering/RenderListItem.cpp:
1844         * rendering/RenderListItem.h:
1845         * rendering/RenderListMarker.cpp:
1846         * rendering/RenderListMarker.h:
1847         * rendering/RenderMenuList.cpp:
1848         * rendering/RenderMenuList.h:
1849         * rendering/RenderObject.cpp:
1850         (WebCore::RenderObject::setStyle):
1851         * rendering/RenderObject.h:
1852         * rendering/RenderReplaced.cpp:
1853         * rendering/RenderReplaced.h:
1854         * rendering/RenderSVGBlock.cpp:
1855         (WebCore::RenderSVGBlock::setStyle):
1856         * rendering/RenderSVGBlock.h:
1857         * rendering/RenderSVGGradientStop.cpp:
1858         * rendering/RenderSVGGradientStop.h:
1859         * rendering/RenderSlider.cpp:
1860         * rendering/RenderSlider.h:
1861         * rendering/RenderTable.cpp:
1862         * rendering/RenderTable.h:
1863         * rendering/RenderTableCell.cpp:
1864         * rendering/RenderTableCell.h:
1865         * rendering/RenderTableRow.cpp:
1866         * rendering/RenderTableRow.h:
1867         * rendering/RenderText.cpp:
1868         * rendering/RenderText.h:
1869         * rendering/RenderTextControl.cpp:
1870         * rendering/RenderTextControl.h:
1871         * rendering/RenderWidget.cpp:
1872         * rendering/RenderWidget.h:
1873         * rendering/style/RenderStyle.h:
1874         (WebCore::RenderStyle::isDisplayReplacedType):
1875         (WebCore::RenderStyle::isDisplayInlineType):
1876
1877 2008-10-03  David Hyatt  <hyatt@apple.com>
1878
1879         Preparation for enabling scrollbars to hit test properly inside transforms.  Clean up the scrollbar
1880         event handlers to no longer be virtual.  Don't pass a mouse event where none is needed.  Add a new
1881         method on Scrollbars called transformEvent that will apply all of the transforms to make a new event
1882         that will work properly for hit testing.  This patch just stubs out that method to return the same
1883         event untransformed.
1884
1885         Reviewed by Darin Adler
1886
1887         * page/EventHandler.cpp:
1888         (WebCore::EventHandler::handleMouseDoubleClickEvent):
1889         (WebCore::EventHandler::handleMouseMoveEvent):
1890         (WebCore::EventHandler::handleMouseReleaseEvent):
1891         (WebCore::EventHandler::passMousePressEventToScrollbar):
1892         * page/gtk/EventHandlerGtk.cpp:
1893         * page/mac/EventHandlerMac.mm:
1894         * page/qt/EventHandlerQt.cpp:
1895         * page/win/EventHandlerWin.cpp:
1896         * page/wx/EventHandlerWx.cpp:
1897         * platform/Scrollbar.cpp:
1898         (WebCore::Scrollbar::mouseMoved):
1899         (WebCore::Scrollbar::mouseExited):
1900         (WebCore::Scrollbar::mouseUp):
1901         (WebCore::Scrollbar::mouseDown):
1902         (WebCore::Scrollbar::transformEvent):
1903         * platform/Scrollbar.h:
1904
1905 2008-10-03  David Hyatt  <hyatt@apple.com>
1906
1907         https://bugs.webkit.org/show_bug.cgi?id=21340
1908         
1909         Remove "containingWindow()/setContainingWindow()" from Widget.  HostWindow covers this now.
1910     
1911         Reviewed by Dan Bernstein & Darin Adler
1912         
1913         * platform/ScrollView.cpp:
1914         (WebCore::ScrollView::addChild):
1915         * platform/Widget.cpp:
1916         (WebCore::Widget::init):
1917         * platform/Widget.h:
1918         * platform/mac/WidgetMac.mm:
1919         * platform/win/PopupMenuWin.cpp:
1920         (WebCore::PopupMenu::show):
1921
1922 2008-10-03  Adele Peterson  <adele@apple.com>
1923
1924         Reviewed by Sam Weinig.
1925
1926         * css/CSSFontSelector.cpp: (WebCore::fontDataForGenericFamily):
1927         Return early if settings is nil.
1928
1929 2008-10-03  Rob Buis  <buis@kde.org>
1930
1931         Reviewed by Darin.
1932
1933         https://bugs.webkit.org/show_bug.cgi?id=20134
1934         REGRESSION (2.0.4-3.0.4): No default value set for <input type=range> with an even difference of (max - min)
1935
1936         Make sure the input element gets the right default value when no value is set.
1937
1938         Test: fast/forms/range-default-value.html
1939
1940         * rendering/RenderSlider.cpp:
1941         (WebCore::RenderSlider::setPositionFromValue):
1942
1943 2008-10-03  David Hyatt  <hyatt@apple.com>
1944
1945         Instead of a cross-platform init/destroy that forces every ScrollView platform to have a constructor/
1946         destructor that calls them, switch to having a cross-platform constructor/destructor that calls
1947         platform-specific init/destroy methods.
1948
1949         With this change, ScrollViewWin.cpp can be removed from the build (yay!).
1950
1951         Reviewed by Darin Adler
1952
1953         * WebCore.vcproj/WebCore.vcproj:
1954         * platform/ScrollView.cpp:
1955         (WebCore::ScrollView::ScrollView):
1956         (WebCore::ScrollView::~ScrollView):
1957         (WebCore::ScrollView::platformInit):
1958         (WebCore::ScrollView::platformDestroy):
1959         (WebCore::ScrollView::platformAddChild):
1960         (WebCore::ScrollView::platformRemoveChild):
1961         * platform/ScrollView.h:
1962         * platform/gtk/ScrollViewGtk.cpp:
1963         (WebCore::ScrollView::platformInit):
1964         (WebCore::ScrollView::platformDestroy):
1965         * platform/mac/ScrollViewMac.mm:
1966         * platform/qt/ScrollViewQt.cpp:
1967         (WebCore::ScrollView::platformInit):
1968         (WebCore::ScrollView::platformDestroy):
1969         * platform/win/ScrollViewWin.cpp: Removed.
1970         * platform/wx/ScrollViewWx.cpp:
1971         (WebCore::ScrollView::platformInit):
1972         (WebCore::ScrollView::platformDestroy):
1973         (WebCore::ScrollView::setPlatformWidget):
1974
1975 2008-10-03  Adele Peterson  <adele@apple.com>
1976
1977         Reviewed by Dan Bernstein.
1978
1979         Fix for <rdar://problem/6012018> 
1980         https://bugs.webkit.org/show_bug.cgi?id=21335
1981         CrashTracer: [USER] 4959 crashes in Safari at com.apple.WebCore: WebCore::Frame::settings const + 8
1982
1983         * css/CSSFontSelector.cpp: (WebCore::fontDataForGenericFamily): Return early if the frame is nil.
1984
1985 2008-10-03  Ariya Hidayat  <ariya.hidayat@trolltech.com>
1986
1987         Build fix.
1988
1989         * platform/qt/WidgetQt.cpp:
1990         (WebCore::Widget::invalidateRect):
1991
1992 2008-10-03  Alp Toker  <alp@nuanti.com>
1993
1994         Remove some left-over GTK+ includes. No change in functionality.
1995
1996         * platform/Cursor.h:
1997         * platform/graphics/Icon.h:
1998         * platform/gtk/RenderThemeGtk.h:
1999
2000 2008-10-03  Alp Toker  <alp@nuanti.com>
2001
2002         Build fix for trailing comment after #endif
2003
2004         * dom/ElementRareData.h:
2005
2006 2008-10-03  David Hyatt  <hyatt@apple.com>
2007
2008         Remove addToDirtyRegion.
2009         
2010         Reviewed by Oliver Hunt
2011
2012         * page/Chrome.cpp:
2013         * page/Chrome.h:
2014         * page/ChromeClient.h:
2015         * platform/ScrollView.h:
2016         * platform/gtk/ScrollViewGtk.cpp:
2017         * platform/qt/ScrollViewQt.cpp:
2018         * platform/win/ScrollViewWin.cpp:
2019
2020 2008-10-03  Dan Bernstein  <mitz@apple.com>
2021
2022         Reviewed by Maciej Stachowiak.
2023
2024         - fix a CachedResource leak introduced in r37176 
2025
2026         Undo r37176 and instead allow pruneDeadResources() to be re-entered, but
2027         afterwards bail out of the outer pruneDeadResources().
2028
2029         * loader/Cache.cpp:
2030         (WebCore::Cache::Cache):
2031         (WebCore::Cache::pruneDeadResources):
2032         (WebCore::Cache::remove):
2033         * loader/Cache.h:
2034
2035 2008-10-03  David Hyatt  <hyatt@apple.com>
2036
2037         https://bugs.webkit.org/show_bug.cgi?id=21330
2038
2039         Fix Gtk adjustments so that they are properly checked again before creating horizontal/vertical
2040         scrollbars.
2041         
2042         Reviewed by Oliver Hunt
2043
2044         * platform/ScrollView.cpp:
2045         (WebCore::ScrollView::setHasHorizontalScrollbar):
2046         (WebCore::ScrollView::setHasVerticalScrollbar):
2047         (WebCore::ScrollView::platformHasHorizontalAdjustment):
2048         (WebCore::ScrollView::platformHasVerticalAdjustment):
2049         * platform/ScrollView.h:
2050         * platform/gtk/ScrollViewGtk.cpp:
2051         (WebCore::ScrollView::adjustmentChanged):
2052         (WebCore::ScrollView::ScrollView):
2053         (WebCore::ScrollView::~ScrollView):
2054         (WebCore::ScrollView::setGtkAdjustments):
2055         (WebCore::ScrollView::platformHandleHorizontalAdjustment):
2056         (WebCore::ScrollView::platformHandleVerticalAdjustment):
2057
2058 2008-10-03  Julien Chaffraix  <jchaffraix@webkit.org>
2059
2060         Reviewed by Maciej Stachowiak.
2061
2062         Bug 21106: .in format discussed changes
2063         https://bugs.webkit.org/show_bug.cgi?id=21106
2064
2065         Change "upperCase" to "interfaceName" per-tag parameter as
2066         discussed on the mailing list. Removed the per-attribute version
2067         as it was not used.
2068
2069         Also add the "Element" suffix to all interfaceName parameter to match
2070         the class name (and thus remove it from make_names.pl).
2071
2072         * dom/make_names.pl:
2073         * html/HTMLTagNames.in:
2074         * svg/svgtags.in:
2075
2076 2008-10-03  David Hyatt  <hyatt@apple.com>
2077
2078         Preserve Qt's disabling of blitting when any native widgets are present anywhere on the page (ick).
2079         Hopefully this is a temporary hack that could eventually be removed.
2080
2081         Reviewed by Sam Weinig
2082
2083         * platform/ScrollView.cpp:
2084         (WebCore::ScrollView::scrollContents):
2085         * platform/ScrollView.h:
2086         (WebCore::ScrollView::rootPreventsBlitting):
2087         * platform/qt/ScrollViewQt.cpp:
2088         (WebCore::ScrollView::ScrollView):
2089         (WebCore::ScrollView::~ScrollView):
2090         (WebCore::ScrollView::platformAddChild):
2091         (WebCore::ScrollView::platformRemoveChild):
2092
2093 2008-10-02  David Hyatt  <hyatt@apple.com>
2094
2095         https://bugs.webkit.org/show_bug.cgi?id=21328
2096         
2097         Make widget invalidation more cross-platform.
2098         
2099         (1) Make invalidateRect a pure virtual function on Widget.  All leaf widgets must now implement this function.
2100         
2101         (2) Scrollbars now send invalidations through the ScrollbarClient.  windowClipRect on ScrollbarClient has been removed and replaced with this invalidation call.
2102         This allows all scrollbar invalidations to go through the render tree so that transforms and reflections will be respected.
2103         
2104         (3) Plugins now have the native window invalidation code for windowed plugins.  Windowless plugins do a repaintRectangle on the plugin's renderer.
2105         
2106         (4) FrameViews now do a repaintRectangle on their owner element's renderer.
2107
2108         Reviewed by Sam Weinig
2109
2110         * WebCore.base.exp:
2111         * page/FrameView.cpp:
2112         (WebCore::FrameView::invalidateRect):
2113         (WebCore::FrameView::invalidateScrollbarRect):
2114         * page/FrameView.h:
2115         * platform/PopupMenu.h:
2116         * platform/ScrollView.cpp:
2117         (WebCore::ScrollView::scrollContents):
2118         * platform/ScrollView.h:
2119         * platform/Scrollbar.cpp:
2120         (WebCore::Scrollbar::setEnabled):
2121         (WebCore::Scrollbar::invalidateRect):
2122         * platform/Scrollbar.h:
2123         * platform/ScrollbarClient.h:
2124         * platform/Widget.h:
2125         * platform/gtk/WidgetGtk.cpp:
2126         * platform/mac/WidgetMac.mm:
2127         * platform/win/PopupMenuWin.cpp:
2128         (WebCore::PopupMenu::invalidateScrollbarRect):
2129         * platform/win/WidgetWin.cpp:
2130         * plugins/PluginView.cpp:
2131         (WebCore::PluginView::invalidateTimerFired):
2132         (WebCore::PluginView::invalidateWindowlessPluginRect):
2133         * plugins/PluginView.h:
2134         * plugins/gtk/PluginViewGtk.cpp:
2135         (WebCore::PluginView::invalidateRect):
2136         * plugins/qt/PluginViewQt.cpp:
2137         (WebCore::PluginView::invalidateRect):
2138         * plugins/win/PluginViewWin.cpp:
2139         (WebCore::PluginView::invalidateRect):
2140         (WebCore::PluginView::invalidateRegion):
2141         * rendering/RenderLayer.cpp:
2142         (WebCore::RenderLayer::invalidateScrollbarRect):
2143         * rendering/RenderLayer.h:
2144         * rendering/RenderListBox.cpp:
2145         (WebCore::RenderListBox::paintObject):
2146         (WebCore::RenderListBox::paintScrollbar):
2147         (WebCore::RenderListBox::invalidateScrollbarRect):
2148         * rendering/RenderListBox.h:
2149
2150 2008-10-02  Dan Bernstein  <mitz@apple.com>
2151
2152         Reviewed by Geoffrey Garen and Sam Weinig.
2153
2154         - fix SVGFontFaceElement leaks seen in Acid3
2155         - make font-face elements take effect only when they are in the document tree
2156
2157         Test: svg/custom/font-face-not-in-document.svg
2158
2159         * svg/SVGFontData.h: Changed the m_svgFontFaceElement member from a
2160         RefPtr to a plain pointer to break a ref cycle.
2161         (WebCore::SVGFontData::svgFontFaceElement):
2162
2163         * svg/SVGFontFaceElement.cpp: Changed to insert and remove the
2164         @font-face rule from the document's mapped element sheet when the
2165         element is inserted and removed from the document, and to update it
2166         only when the element is in the document.
2167         (WebCore::SVGFontFaceElement::SVGFontFaceElement):
2168         (WebCore::SVGFontFaceElement::parseMappedAttribute):
2169         (WebCore::SVGFontFaceElement::rebuildFontFace):
2170         (WebCore::SVGFontFaceElement::insertedIntoDocument):
2171         (WebCore::SVGFontFaceElement::removedFromDocument):
2172         (WebCore::SVGFontFaceElement::childrenChanged):
2173         (WebCore::SVGFontFaceElement::removeFromMappedElementSheet):
2174         * svg/SVGFontFaceElement.h:
2175
2176 2008-10-01  Simon Fraser  <simon.fraser@apple.com>
2177
2178         Reviewed by Dave Hyatt
2179
2180         Fix RenderFileUploadControl::setStyle() and 
2181         RenderMenuList::setStyle() to not touch the style; replace
2182         with html4.css and CSSStyleSelector changes.
2183
2184         https://bugs.webkit.org/show_bug.cgi?id=21287
2185
2186         * css/CSSStyleSelector.cpp:
2187         (WebCore::CSSStyleSelector::adjustRenderStyle):
2188         * css/html4.css:
2189         * rendering/RenderBlock.cpp:
2190         (WebCore::RenderBlock::setStyle):
2191         * rendering/RenderFileUploadControl.cpp:
2192         * rendering/RenderMenuList.cpp:
2193         (WebCore::RenderMenuList::setStyle):
2194
2195 2008-10-01  Simon Fraser  <simon.fraser@apple.com>
2196
2197         Reviewed by Dave Hyatt
2198
2199         Clean up code that changes the RenderStyle passed in to
2200         table renderer setStyle() methods.
2201         
2202         https://bugs.webkit.org/show_bug.cgi?id=21287
2203         
2204         Tests: fast/table/floating-th.html
2205                fast/table/table-display-types-strict.html
2206                fast/table/table-display-types.html
2207
2208         * css/CSSStyleSelector.cpp:
2209         (WebCore::CSSStyleSelector::adjustRenderStyle):
2210         * rendering/RenderTableCell.cpp:
2211         (WebCore::RenderTableCell::setStyle):
2212         * rendering/RenderTableRow.cpp:
2213         (WebCore::RenderTableRow::setStyle):
2214         * rendering/RenderTableSection.cpp:
2215         (WebCore::RenderTableSection::setStyle):
2216
2217 2008-10-02  Darin Adler  <darin@apple.com>
2218
2219         - fix build
2220
2221         * bindings/scripts/CodeGeneratorJS.pm: Need to replace the -> with a . here too.
2222         Not just locally in my generated file!
2223
2224 2008-10-02  Adele Peterson  <adele@apple.com>
2225
2226         Reviewed by Dan Bernstein.
2227
2228         Fix for https://bugs.webkit.org/show_bug.cgi?id=21299
2229         REGRESSION: <input> color specified in inline style applies to placeholder
2230
2231         I recently added a pseudo-class for the placeholder, but that can be overridden by inline style changes.  A pseudo-element
2232         is more appropriate.  This change adds "-webkit-input-placeholder".
2233
2234         * css/CSSSelector.cpp: (WebCore::CSSSelector::extractPseudoType):
2235         Added definition for "-webkit-input-placeholder" pseudo element.
2236         * css/CSSSelector.h: (WebCore::CSSSelector::): Added PseudoInputPlaceholder.
2237         * css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector):
2238         Added case for PseudoInputPlaceholder.
2239         * css/html4.css: Added rule for -webkit-input-placeholder pseudo-element.
2240         * rendering/style/RenderStyle.h: (WebCore::RenderStyle::): Added INPUT_PLACEHOLDER.
2241
2242         * html/HTMLInputElement.cpp:
2243         (WebCore::HTMLInputElement::setValue): Check that its a text field before calling updatePlaceholderVisibility.
2244         (WebCore::HTMLInputElement::setValueFromRenderer): ditto.
2245         (WebCore::HTMLInputElement::updatePlaceholderVisibility): Instead of calling setChanged(), call updatePlaceholderVisibility on the renderer.
2246         setChanged wouldn't actually trigger setStyle since the style for the input element won't actually change.
2247         * rendering/RenderTextControl.cpp:
2248         (WebCore::RenderTextControl::createInnerTextStyle): Get the pseudoStyle when the placeholder is visible.
2249         (WebCore::RenderTextControl::updatePlaceholderVisibility): Sets the style on the inner text block, and calls updateFromElement so
2250         the text will be updated correctly.
2251         * rendering/RenderTextControl.h:
2252
2253 2008-10-02  Chris Fleizach  <cfleizach@apple.com>
2254
2255         Reviewed by Darin Adler.
2256
2257         https://bugs.webkit.org/show_bug.cgi?id=21280
2258         <rdar://problem/6227690> There are a bunch of tables on this page that don't seem to be real tables
2259
2260         Updated AXTable detection to be more robust to false-positives. Specifically, added checks
2261         to ensure that there is more than one valid table cell, and that at least half of the cells
2262         have borders or have specific background colors. Modified the table detection layout test
2263         to test for the tables mentioned in the bug
2264
2265         * page/AccessibilityTable.cpp:
2266         (WebCore::AccessibilityTable::isTableExposableThroughAccessibility):
2267
2268 2008-10-02  Darin Adler  <darin@apple.com>
2269
2270         Reviewed by Geoff Garen.
2271
2272         - https://bugs.webkit.org/show_bug.cgi?id=21321
2273           Bug 21321: speed up JavaScriptCore by inlining Heap in JSGlobalData
2274
2275         * bindings/js/GCController.cpp:
2276         (WebCore::collect): Use heap. instead of heap-> to work with the heap.
2277         (WebCore::GCController::gcTimerFired): Ditto.
2278         (WebCore::GCController::garbageCollectNow): Ditto.
2279         * bindings/js/JSDOMWindowShell.cpp:
2280         (WebCore::JSDOMWindowShell::operator new): Ditto.
2281         * storage/Database.cpp:
2282         (WebCore::Database::Database): Ditto.
2283
2284 2008-10-02  Dan Bernstein  <mitz@apple.com>
2285
2286         Reviewed by Alexey Proskuryakov.
2287
2288         - fix a Database leak that resulted in Document leaks
2289
2290         * storage/Database.cpp:
2291         (WebCore::Database::openDatabase): Account for the fact that RefCounted 
2292         objects start out with a ref count of 1.
2293
2294 2008-10-02  Sam Weinig  <sam@webkit.org>
2295
2296         Reviewed by Mr. Geoffrey Garen.
2297
2298         Always mark your parent before marking members.
2299
2300         * bindings/js/JSDOMWindowCustom.cpp:
2301         (WebCore::JSDOMWindow::mark):
2302
2303 2008-10-02  David Hyatt  <hyatt@apple.com>
2304
2305         https://bugs.webkit.org/show_bug.cgi?id=21314
2306         
2307         Make scrollBackingStore cross-platform.
2308
2309         Reviewed by Sam Weinig
2310
2311         * loader/EmptyClients.h:
2312         (WebCore::EmptyChromeClient::repaint):
2313         (WebCore::EmptyChromeClient::scroll):
2314         * page/Chrome.cpp:
2315         (WebCore::Chrome::repaint):
2316         (WebCore::Chrome::scroll):
2317         * page/Chrome.h:
2318         * page/ChromeClient.h:
2319         * page/EventHandler.cpp:
2320         (WebCore::EventHandler::handleAutoscroll):
2321         * platform/HostWindow.h:
2322         * platform/ScrollView.cpp:
2323         (WebCore::ScrollView::scrollContents):
2324         (WebCore::ScrollView::addPanScrollIcon):
2325         (WebCore::ScrollView::removePanScrollIcon):
2326         * platform/ScrollView.h:
2327         * platform/gtk/ScrollViewGtk.cpp:
2328         * platform/qt/ScrollViewQt.cpp:
2329         (WebCore::ScrollView::ScrollViewPrivate::ScrollViewPrivate):
2330         (WebCore::ScrollView::~ScrollView):
2331         * platform/win/ScrollViewWin.cpp:
2332         (WebCore::ScrollView::ScrollView):
2333         (WebCore::ScrollView::~ScrollView):
2334
2335 2008-10-02  Kevin Ollivier  <kevino@theolliviers.com>
2336
2337         wx build fixes after Frame/ScrollView changes.
2338
2339         * WebCoreSources.bkl:
2340         * platform/wx/ScrollViewWx.cpp:
2341         (WebCore::ScrollView::platformContentsToScreen):
2342         (WebCore::ScrollView::platformScreenToContents):
2343         (WebCore::ScrollView::platformIsOffscreen):
2344
2345 2008-10-02  Brett Wilson  <brettw@chromium.org>
2346
2347         Reviewed by Sam Weinig
2348
2349         https://bugs.webkit.org/show_bug.cgi?id=21292
2350
2351         Revert the changes to enclosingIntRect made in r12530 since the new code
2352         doesn't round correctly.
2353
2354         * ChangeLog:
2355         * platform/graphics/FloatRect.cpp:
2356         (WebCore::enclosingIntRect):
2357
2358 2008-10-02  Dan Bernstein  <mitz@apple.com>
2359
2360         Reviewed by Anders Carlsson and Eric Seidel.
2361
2362         - fix HTMLCanvaseElement leak from -webkit-canvas() values
2363
2364         Changed the m_element member of CSSCanvasValue from a RefPtr to a plain
2365         pointer, as the document owns the canvas elements. Added code to release
2366         those elements in Document::removedLastRef() because they reference
2367         the document.
2368
2369         * css/CSSCanvasValue.cpp:
2370         (WebCore::CSSCanvasValue::element):
2371         * css/CSSCanvasValue.h:
2372         (WebCore::CSSCanvasValue::CSSCanvasValue):
2373         * dom/Document.cpp:
2374         (WebCore::Document::removedLastRef):
2375
2376 2008-10-02  Alexey Proskuryakov  <ap@webkit.org>
2377
2378         Reviewed by Maciej Stachowiak.
2379
2380         Build fix for platforms that don't implement WTF::ThreadSpecific.
2381
2382         * bindings/js/JSDOMBinding.cpp: (WebCore::wrapperSet):
2383         Guard ThreadSpecific use with #if ENABLE(WORKERS). No platform defines this yet, but this
2384         code is only needed for JS bindings in worker threads.
2385
2386 2008-10-01  David Hyatt  <hyatt@apple.com>
2387
2388         https://bugs.webkit.org/show_bug.cgi?id=21298
2389         
2390         Make updateScrollbars cross-platform.  For now a stubbed out scrollContents function is invoked to do the scrolling of the backing store.  Next patch
2391         will make that cross-platform.  
2392         
2393         The ScrollView now implements ScrollbarClient, which means that there was a clash of windowClipRect methods from the
2394         multiple inheritance.  For now I solved this by adding a Scrollbar* to the ScrollbarClient version of the method, but longer term
2395         windowClipRect is going to be removed from ScrollbarClient (when Widget invalidation gets rewritten).
2396         
2397         Reviewed by Sam Weinig
2398
2399         * page/FrameView.cpp:
2400         (WebCore::FrameView::windowClipRect):
2401         (WebCore::FrameView::isActive):
2402         * page/FrameView.h:
2403         (WebCore::FrameView::visibleContentsResized):
2404         * platform/PopupMenu.h:
2405         * platform/ScrollView.cpp:
2406         (WebCore::ScrollView::init):
2407         (WebCore::ScrollView::destroy):
2408         (WebCore::ScrollView::setHasHorizontalScrollbar):
2409         (WebCore::ScrollView::setHasVerticalScrollbar):
2410         (WebCore::ScrollView::valueChanged):
2411         (WebCore::ScrollView::updateScrollbars):
2412         (WebCore::ScrollView::scrollContents):
2413         (WebCore::ScrollView::platformHandleHorizontalAdjustment):
2414         (WebCore::ScrollView::platformHandleVerticalAdjustment):
2415         * platform/ScrollView.h:
2416         * platform/Scrollbar.cpp:
2417         (WebCore::Scrollbar::windowClipRect):
2418         * platform/ScrollbarClient.h:
2419         * platform/gtk/ScrollViewGtk.cpp:
2420         (WebCore::ScrollView::platformHandleHorizontalAdjustment):
2421         (WebCore::ScrollView::platformHandleVerticalAdjustment):
2422         * platform/qt/ScrollViewQt.cpp:
2423         (WebCore::ScrollView::scrollContents):
2424         * platform/win/PopupMenuWin.cpp:
2425         (WebCore::PopupMenu::windowClipRect):
2426         * platform/win/ScrollViewWin.cpp:
2427         (WebCore::ScrollView::scrollContents):
2428         * rendering/RenderLayer.cpp:
2429         (WebCore::RenderLayer::windowClipRect):
2430         * rendering/RenderLayer.h:
2431         * rendering/RenderListBox.cpp:
2432         (WebCore::RenderListBox::panScroll):
2433         (WebCore::RenderListBox::windowClipRect):
2434         * rendering/RenderListBox.h:
2435
2436 2008-10-02  Alexey Proskuryakov  <ap@webkit.org>
2437
2438         Reviewed by Darin Adler.
2439
2440         https://bugs.webkit.org/show_bug.cgi?id=21304
2441         Stop using a static wrapper map for WebCore JS bindings
2442
2443         The static domObjects map was not thread safe.
2444
2445         * dom/Document.h:
2446         (WebCore::Document::messagePorts): Added an accessor for JSDocument to iterate over message
2447         ports.
2448         (WebCore::Document::xmlHttpRequests): Ditto for XMLHttpRequests.
2449
2450         * dom/Document.cpp:
2451         (WebCore::Document::createdXMLHttpRequest):
2452         (WebCore::Document::destroyedXMLHttpRequest):
2453         Moved XMLHttpRequest tracking from a global map to Document.
2454
2455         * GNUmakefile.am:
2456         * WebCore.pro:
2457         * WebCore.vcproj/WebCore.vcproj:
2458         * WebCore.xcodeproj/project.pbxproj:
2459         * WebCoreSources.bkl:
2460         * webcore-base.bkl:
2461         * bindings/DOMProtect.cpp: Removed.
2462         * bindings/DOMProtect.h: Removed.
2463         Removed gcProtect(Unprotect)DOMObject - its callers do not have a JSGlobalData reference,
2464         so they can no longer protect bindings objects.
2465
2466         * dom/MessagePort.cpp:
2467         (WebCore::CloseMessagePortTimer::CloseMessagePortTimer):
2468         (WebCore::CloseMessagePortTimer::fired):
2469         (WebCore::MessagePort::MessagePort):
2470         (WebCore::MessagePort::queueCloseEvent):
2471         (WebCore::MessagePort::setPendingActivity):
2472         (WebCore::MessagePort::unsetPendingActivity):
2473         * dom/MessagePort.h:
2474         (WebCore::MessagePort::hasPendingActivity):
2475         MessagePort now counts outstanding async events, so JSDocument::mark can decide whether
2476         to protect it.
2477
2478         * xml/XMLHttpRequest.h:
2479         (WebCore::XMLHttpRequest::hasPendingActivity):
2480         * xml/XMLHttpRequest.cpp:
2481         (WebCore::XMLHttpRequest::XMLHttpRequest):
2482         (WebCore::XMLHttpRequest::~XMLHttpRequest):
2483         (WebCore::XMLHttpRequest::loadRequestAsynchronously):
2484         (WebCore::XMLHttpRequest::dropProtection):
2485         (WebCore::XMLHttpRequest::didFinishLoadingPreflight):
2486         (WebCore::XMLHttpRequest::cancelRequests):
2487         (WebCore::XMLHttpRequest::detachRequests):
2488         (WebCore::XMLHttpRequest::setPendingActivity):
2489         (WebCore::XMLHttpRequest::unsetPendingActivity):
2490         Moved XMLHttpRequest tracking from a global map to Document. 
2491
2492         * bindings/js/JSDOMBinding.cpp:
2493         (WebCore::wrapperSet):
2494         (WebCore::DOMObjectWrapperMap::mapFor):
2495         (WebCore::DOMObjectWrapperMap::get):
2496         (WebCore::DOMObjectWrapperMap::set):
2497         (WebCore::DOMObjectWrapperMap::remove):
2498         (WebCore::getCachedDOMObjectWrapper):
2499         (WebCore::cacheDOMObjectWrapper):
2500         (WebCore::forgetDOMObject):
2501         (WebCore::getCachedDOMNodeWrapper):
2502         (WebCore::forgetDOMNode):
2503         (WebCore::cacheDOMNodeWrapper):
2504         (WebCore::markActiveObjectsForDocument):
2505         * bindings/js/JSDOMBinding.h:
2506         (WebCore::createDOMObjectWrapper):
2507         (WebCore::getDOMObjectWrapper):
2508         Wrapper map is now kept as JSGlobalData::clientData. Also changed debug-only wrapperSet
2509         to be per-thread (this is slower than going to JSGlobalData, but fast enough for debug).
2510         WebCore objects can never migrate between threads.
2511
2512         * bindings/js/JSDocumentCustom.cpp:
2513         (WebCore::JSDocument::mark):
2514         Call markActiveObjectsForDocument() from JSDOMBinding.
2515
2516         * bindings/js/JSCSSRuleCustom.cpp:
2517         (WebCore::toJS):
2518         * bindings/js/JSCSSValueCustom.cpp:
2519         (WebCore::toJS):
2520         * bindings/js/JSDOMWindowCustom.cpp:
2521         (WebCore::markDOMObjectWrapper):
2522         (WebCore::JSDOMWindow::mark):
2523         * bindings/js/JSEventCustom.cpp:
2524         (WebCore::toJS):
2525         * bindings/js/JSEventTarget.cpp:
2526         (WebCore::toJS):
2527         * bindings/js/JSHTMLCollectionCustom.cpp:
2528         (WebCore::toJS):
2529         * bindings/js/JSImageDataCustom.cpp:
2530         (WebCore::toJS):
2531         * bindings/js/JSMessageChannelCustom.cpp:
2532         (WebCore::JSMessageChannel::mark):
2533         * bindings/js/JSMessagePortCustom.cpp:
2534         (WebCore::JSMessagePort::mark):
2535         * bindings/js/JSNodeCustom.cpp:
2536         (WebCore::JSNode::mark):
2537         * bindings/js/JSSVGPathSegCustom.cpp:
2538         (WebCore::toJS):
2539         * bindings/js/JSStyleSheetCustom.cpp:
2540         (WebCore::toJS):
2541         * bindings/js/JSXMLHttpRequestCustom.cpp:
2542         (WebCore::JSXMLHttpRequest::mark):
2543         * bindings/js/JSXMLHttpRequestUploadCustom.cpp:
2544         (WebCore::JSXMLHttpRequestUpload::mark):
2545         * bindings/js/ScriptController.cpp:
2546         (WebCore::ScriptController::finishedWithEvent):
2547         * bindings/scripts/CodeGeneratorJS.pm:
2548         Pass a JSGlobalData reference to functions that track JS wrapper objects.
2549
2550 2008-10-02  Dan Bernstein  <mitz@apple.com>
2551
2552         - build fix
2553
2554         * page/JavaScriptCallFrame.idl:
2555
2556 2008-10-02  Oliver Hunt  <oliver@apple.com>
2557
2558         Reviewed by NOBODY (Build fix).
2559
2560         Add new file to project files
2561
2562         * GNUmakefile.am:
2563         * WebCore.pro:
2564         * WebCore.vcproj/WebCore.vcproj:
2565
2566 2008-10-02  Geoffrey Garen  <ggaren@apple.com>
2567
2568         Not reviewed.
2569
2570         Try to fix some more builds.
2571
2572         * GNUmakefile.am:
2573         * WebCore.pro:
2574
2575 2008-10-02  Geoffrey Garen  <ggaren@apple.com>
2576
2577         Not reviewed.
2578         
2579         Try to fix Windows build.
2580
2581         * WebCore.vcproj/WebCore.vcproj:
2582
2583 2008-10-01  Geoffrey Garen  <ggaren@apple.com>
2584
2585         Reviewed by Darin Adler and Cameron Zwarich.
2586
2587         Updated for JavaScriptCore API changes: use a SourceCode instead of
2588         broken out parameters; treat sourceId as intptr_t.
2589
2590         * ForwardingHeaders/kjs/SourceRange.h: Copied from ForwardingHeaders/kjs/SourceProvider.h.
2591         * bindings/js/JSXMLHttpRequestCustom.cpp:
2592         (WebCore::JSXMLHttpRequest::send):
2593         * bindings/js/ScriptController.cpp:
2594         (WebCore::ScriptController::evaluate):
2595         * bindings/js/StringSourceProvider.h:
2596         (WebCore::StringSourceProvider::create):
2597         (WebCore::StringSourceProvider::StringSourceProvider):
2598
2599         (WebCore::makeSource): Added a makeSource function for convenience.
2600
2601         * bindings/objc/WebScriptObject.mm:
2602         (-[WebScriptObject evaluateWebScript:]):
2603         * bridge/NP_jsobject.cpp:
2604         (_NPN_Evaluate):
2605         * bridge/jni/jni_jsobject.mm:
2606         (JavaJSObject::call):
2607         (JavaJSObject::eval):
2608         (JavaJSObject::getMember):
2609         (JavaJSObject::setMember):
2610         (JavaJSObject::removeMember):
2611
2612         * bridge/jni/jni_runtime.h:
2613         (JSC::Bindings::JavaString::operator UString): Replaced the explicit
2614         ustring() function with an implicit operator because this class already
2615         holds a UString::rep.
2616
2617         * page/Console.cpp:
2618         (WebCore::retrieveLastCaller):
2619         (WebCore::Console::trace):
2620         * page/InspectorController.cpp:
2621         (WebCore::jsStringRef):
2622         (WebCore::InspectorController::addBreakpoint):
2623         (WebCore::InspectorController::removeBreakpoint):
2624         (WebCore::InspectorController::didParseSource):
2625         (WebCore::InspectorController::failedToParseSource):
2626         * page/InspectorController.h:
2627         * page/JavaScriptCallFrame.cpp:
2628         (WebCore::JavaScriptCallFrame::JavaScriptCallFrame):
2629         * page/JavaScriptCallFrame.h:
2630         (WebCore::JavaScriptCallFrame::create):
2631         (WebCore::JavaScriptCallFrame::sourceIdentifier):
2632         (WebCore::JavaScriptCallFrame::update):
2633         * page/JavaScriptDebugListener.h:
2634         * page/JavaScriptDebugServer.cpp:
2635         (WebCore::JavaScriptDebugServer::addBreakpoint):
2636         (WebCore::JavaScriptDebugServer::removeBreakpoint):
2637         (WebCore::JavaScriptDebugServer::hasBreakpoint):
2638         (WebCore::dispatchDidParseSource):
2639         (WebCore::dispatchFailedToParseSource):
2640         (WebCore::JavaScriptDebugServer::sourceParsed):
2641         (WebCore::JavaScriptDebugServer::callEvent):
2642         (WebCore::JavaScriptDebugServer::atStatement):
2643         (WebCore::JavaScriptDebugServer::returnEvent):
2644         (WebCore::JavaScriptDebugServer::exception):
2645         (WebCore::JavaScriptDebugServer::willExecuteProgram):
2646         (WebCore::JavaScriptDebugServer::didExecuteProgram):
2647         (WebCore::JavaScriptDebugServer::didReachBreakpoint):
2648         * page/JavaScriptDebugServer.h:
2649         * page/inspector/ScriptsPanel.js: Renamed internal uses of sourceId and 
2650         sourceIdentifier to sourceID.
2651
2652 2008-10-01  Dan Bernstein  <mitz@apple.com>
2653
2654         Reviewed by Geoffrey Garen.
2655
2656         - fix SVGFontFaceElement leak seen on svg/custom/acid3-test-77.html
2657
2658         Broke a ref cycle by changing the m_svgFontFaceElement members of
2659         CSSFontFaceSource and CSSFontFaceSrcValue from RefPtrs to plain
2660         pointers. Also made sure that the @font-face rule added by
2661         SVGFontFaceElement to the document's mapped element sheet is removed
2662         when the font-face element is deleted or moved to another document.
2663
2664         * css/CSSFontFaceSource.cpp:
2665         (WebCore::CSSFontFaceSource::CSSFontFaceSource):
2666         (WebCore::CSSFontFaceSource::getFontData):
2667         * css/CSSFontFaceSource.h:
2668         (WebCore::CSSFontFaceSource::svgFontFaceElement):
2669         * css/CSSFontFaceSrcValue.h:
2670         (WebCore::CSSFontFaceSrcValue::svgFontFaceElement):
2671         (WebCore::CSSFontFaceSrcValue::CSSFontFaceSrcValue):
2672         * svg/SVGFontFaceElement.cpp:
2673         (WebCore::SVGFontFaceElement::~SVGFontFaceElement):
2674         (WebCore::SVGFontFaceElement::willMoveToNewOwnerDocument):
2675         (WebCore::SVGFontFaceElement::didMoveToNewOwnerDocument):
2676         (WebCore::SVGFontFaceElement::removeFromMappedElementSheet):
2677         * svg/SVGFontFaceElement.h:
2678
2679 2008-10-01  Oliver Hunt  <oliver@apple.com>
2680
2681         Reviewed by Maciej Stachowiak.
2682
2683         Bug 20315: Memory leak with Canvas getImageData
2684         <https://bugs.webkit.org/show_bug.cgi?id=20315>
2685
2686         This wasn't a leak, the issue was that we were reporting the cost
2687         of the CanvasPixelArray when creating the JSCanvasPixelArray wrapper
2688         and we should have been reporting the cost when we create the
2689         JSImageData wrapper.
2690
2691         * WebCore.xcodeproj/project.pbxproj:
2692         * bindings/js/JSCanvasPixelArrayCustom.cpp: Removed.
2693           This was only needed to report the extra memory cost
2694           of the CPA.
2695         * bindings/js/JSImageDataCustom.cpp:
2696         (WebCore::toJS):
2697           We need a custom toJS function now so that we can report
2698           the extra memory cost.
2699         * bindings/scripts/CodeGeneratorJS.pm:
2700           Need to replace the reference to CanvasPixelArray with ImageData
2701           to be able to create the custom toJS implementation.
2702         * html/CanvasPixelArray.idl:
2703         * html/ImageData.idl:
2704
2705 2008-10-01  Dan Bernstein  <mitz@apple.com>
2706
2707         Reviewed by Mark Rowe.
2708
2709         - https://bugs.webkit.org/show_bug.cgi?id=21293
2710           REGRESSION: Crash beneath RenderSVGViewportContainer::viewportTransform() during SVGSVGElement destruction
2711
2712         * svg/SVGMarkerElement.cpp:
2713         (WebCore::SVGMarkerElement::~SVGMarkerElement): Call detach() here so
2714         that renderer destruction happens before the SVGMarkerElement is
2715         destroyed.
2716         * svg/SVGSVGElement.cpp:
2717         (WebCore::SVGSVGElement::~SVGSVGElement): Ditto for SVGSVGElement.
2718
2719 2008-10-01  Evan Martin  <evan@chromium.org>
2720
2721         Reviewed by Eric Seidel.
2722         
2723         https://bugs.webkit.org/show_bug.cgi?id=20669
2724
2725         * css/makeprop.pl:
2726         Die if gperf fails.
2727
2728 2008-10-01  Evan Martin  <evan@chromium.org>
2729
2730         Reviewed by Eric Seidel.
2731
2732         * loader/icon/IconDatabase.h:
2733         IconDatabase uses HashMap, so it needs to #include the header.
2734
2735 2008-10-01  Dan Bernstein  <mitz@apple.com>
2736
2737         Reviewed by Mark Rowe.
2738
2739         - fix an assertion failure in http/tests/security/canvas-remote-read-svg-image.html due to re-entry into Cache::pruneDeadResources()
2740
2741         * loader/Cache.cpp:
2742         (WebCore::Cache::remove): Disable pruning temporarily during 
2743         CachedResource deletion.
2744
2745 2008-10-01  Dan Bernstein  <mitz@apple.com>
2746
2747         Reviewed by Mark Rowe.
2748
2749         - fix SVGFontElement leaks seen on buildbot by breaking a ref cycle
2750
2751         * svg/SVGFontFaceElement.cpp:
2752         (WebCore::SVGFontFaceElement::rebuildFontFace):
2753         * svg/SVGFontFaceElement.h:
2754         (WebCore::SVGFontFaceElement::associatedFontElement):
2755
2756 2008-10-01  Brett Wilson  <brettw@chromium.org>
2757
2758         Reviewed by Maciej Stachowiak.
2759
2760         Document the rounding behavior of the mapRect(IntRect) function in
2761         AffineTransform.h.
2762
2763         * platform/graphics/AffineTransform.h:
2764
2765 2008-10-01  David Hyatt  <hyatt@apple.com>
2766
2767         Move prohibitsScrolling from the Frame to the ScrollView.
2768
2769         Reviewed by Sam Weinig
2770
2771         * WebCore.base.exp:
2772         * page/Frame.cpp:
2773         (WebCore::FramePrivate::FramePrivate):
2774         * page/Frame.h:
2775         * page/FramePrivate.h:
2776         * page/FrameView.cpp:
2777         (WebCore::FrameView::scrollRectIntoViewRecursively):
2778         (WebCore::FrameView::setScrollPosition):
2779         * platform/ScrollView.cpp:
2780         (WebCore::ScrollView::init):
2781         (WebCore::ScrollView::scrollRectIntoViewRecursively):
2782         (WebCore::ScrollView::setScrollPosition):
2783         * platform/ScrollView.h:
2784         (WebCore::ScrollView::setProhibitsScrolling):
2785         (WebCore::ScrollView::prohibitsScrolling):
2786         * platform/gtk/ScrollViewGtk.cpp:
2787         (WebCore::ScrollView::updateScrollbars):
2788         * platform/qt/ScrollViewQt.cpp:
2789         (WebCore::ScrollView::updateScrollbars):
2790         * platform/win/ScrollViewWin.cpp:
2791         (WebCore::ScrollView::updateScrollbars):
2792
2793 2008-10-01  Mark Rowe  <mrowe@apple.com>
2794
2795         Reviewed by Geoff Garen.
2796
2797         Fix leaks seen during http/tests/xmlhttprequest/access-control-basic-non-simple-allow.html.
2798
2799         * xml/XMLHttpRequest.cpp:
2800         (WebCore::XMLHttpRequest::didFinishLoadingPreflight): Balance the ref and GC protect
2801         that we do during the loadRequestAsynchronously of the preflight request with a deref and
2802         GC unprotect.
2803
2804 2008-10-01  David Hyatt  <hyatt@apple.com>
2805
2806         Rename allowsScrolling/setAllowsScrolling to canHaveScrollbars/setCanHaveScrollbars to make it more
2807         clear that the boolean doesn't actually stop all scrolling.  It just gets rid of scrollbars.
2808
2809         Reviewed by Tim Hatcher
2810
2811         * WebCore.base.exp:
2812         * page/FrameView.cpp:
2813         (WebCore::FrameView::setCanHaveScrollbars):
2814         * page/FrameView.h:
2815         * platform/ScrollView.cpp:
2816         (WebCore::ScrollView::setCanHaveScrollbars):
2817         (WebCore::ScrollView::wheelEvent):
2818         * platform/ScrollView.h:
2819         (WebCore::ScrollView::canHaveScrollbars):
2820
2821 2008-10-01  Dan Bernstein  <mitz@apple.com>
2822
2823         Reviewed by Mark Rowe.
2824
2825         - fix some CachedResource leaks seen on buildbot
2826
2827         The issue here was that emptying the cache was a no-op when it only
2828         contained resources with no data. Changed to go after those
2829         resources when the desired cache capacity is zero.
2830
2831         * loader/Cache.cpp:
2832         (WebCore::Cache::pruneLiveResources):
2833         (WebCore::Cache::pruneDeadResources):
2834         * loader/Cache.h:
2835         (WebCore::Cache::prune):
2836
2837 2008-10-01  David Hyatt  <hyatt@apple.com>
2838
2839         Make isOffscreen cross-platform.  Only Mac implements this method, so hold off on adding API to the
2840         HostWindow object until other platforms decide they want this method.  (We need it for Win though at some point.)
2841
2842         Reviewed by Adam Roben
2843
2844         * platform/ScrollView.cpp:
2845         (WebCore::ScrollView::isOffscreen):
2846         (WebCore::ScrollView::platformIsOffscreen):
2847         * platform/ScrollView.h:
2848         * platform/gtk/ScrollViewGtk.cpp:
2849         * platform/mac/ScrollViewMac.mm:
2850         (WebCore::ScrollView::platformIsOffscreen):
2851         * platform/qt/ScrollViewQt.cpp:
2852         * platform/wx/ScrollViewWx.cpp:
2853
2854 2008-10-01  David Hyatt  <hyatt@apple.com>
2855
2856         Make show/hide/setParentVisible cross-platform on ScrollView.
2857
2858         Reviewed by Adam Roben
2859
2860         * platform/ScrollView.cpp:
2861         (WebCore::ScrollView::setParentVisible):
2862         (WebCore::ScrollView::show):
2863         (WebCore::ScrollView::hide):
2864         * platform/ScrollView.h:
2865         * platform/win/ScrollViewWin.cpp:
2866
2867 2008-10-01  Kevin McCullough  <kmccullough@apple.com>
2868
2869         Reviewed by Dan Bernstein.
2870
2871         https://bugs.webkit.org/show_bug.cgi?id=21284
2872         Bug 21284: Max height affects max width
2873         - Looks like a cut and paste bug
2874         - Added layout test fast/css/max-height-and-max-width.html
2875
2876         * css/CSSComputedStyleDeclaration.cpp:
2877         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
2878
2879 2008-10-01  David Hyatt  <hyatt@apple.com>
2880
2881         https://bugs.webkit.org/show_bug.cgi?id=21282
2882         
2883         Make contentsToScreen/screenToContents cross-platform.  Only implemented by Mac/Win right now.
2884         
2885         Reviewed by Adam Roben
2886
2887         * loader/EmptyClients.h:
2888         (WebCore::EmptyChromeClient::screenToWindow):
2889         (WebCore::EmptyChromeClient::windowToScreen):
2890         * page/Chrome.cpp:
2891         (WebCore::Chrome::screenToWindow):
2892         (WebCore::Chrome::windowToScreen):
2893         * page/Chrome.h:
2894         * page/ChromeClient.h:
2895         * platform/HostWindow.h:
2896         * platform/ScrollView.cpp:
2897         (WebCore::ScrollView::contentsToScreen):
2898         (WebCore::ScrollView::screenToContents):
2899         (WebCore::ScrollView::platformContentsToScreen):
2900         (WebCore::ScrollView::platformScreenToContents):
2901         * platform/ScrollView.h:
2902         * platform/mac/ScrollViewMac.mm:
2903         (WebCore::ScrollView::platformContentsToScreen):
2904         (WebCore::ScrollView::platformScreenToContents):
2905         * platform/win/ScrollViewWin.cpp:
2906
2907 2008-10-01  Dan Bernstein  <mitz@apple.com>
2908
2909         Reviewed by Darin Adler.
2910
2911         - fix <rdar://problem/6255862> domfuzz: null deref in WebCore::HTMLParser::handleResidualStyleCloseTagAcrossBlocks(WebCore::HTMLStackElem*)
2912
2913         Test: fast/parser/residual-style-close-across-removed-block.html
2914
2915         * html/HTMLParser.cpp:
2916         (WebCore::HTMLParser::handleResidualStyleCloseTagAcrossBlocks): Removed
2917         an assertion that turned out to be wrong in this case, and changed to
2918         terminate the algorithm at the first empty block.
2919
2920 2008-10-01  David Hyatt  <hyatt@apple.com>
2921
2922         Make setFrameRect on ScrollView cross-platform.
2923
2924         Reviewed by Sam Weinig
2925
2926         * page/FrameView.h:
2927         (WebCore::FrameView::contentsResized):
2928         * platform/ScrollView.cpp:
2929         (WebCore::ScrollView::setFrameRect):
2930         * platform/ScrollView.h:
2931         * platform/gtk/ScrollViewGtk.cpp:
2932         * platform/qt/ScrollViewQt.cpp:
2933         * platform/win/ScrollViewWin.cpp:
2934
2935 2008-10-01  Sam Weinig  <sam@webkit.org>
2936
2937         Reviewed by Adele Peterson.
2938
2939         Move setTimeout, clearTimeout, setInterval, clearInterval, atob and btoa
2940         to JSDOMWindow from JSDOMWindowBase.
2941
2942         * WebCore.xcodeproj/project.pbxproj:
2943         * bindings/js/JSDOMWindowBase.cpp:
2944         (WebCore::JSDOMWindowBase::removeTimeout):
2945         * bindings/js/JSDOMWindowBase.h:
2946         * bindings/js/JSDOMWindowCustom.cpp:
2947         (WebCore::setTimeoutOrInterval):
2948         (WebCore::JSDOMWindow::setTimeout):
2949         (WebCore::JSDOMWindow::clearTimeout):
2950         (WebCore::JSDOMWindow::setInterval):
2951         (WebCore::JSDOMWindow::clearInterval):
2952         (WebCore::JSDOMWindow::atob):
2953         (WebCore::JSDOMWindow::btoa):
2954         * page/DOMWindow.idl:
2955
2956 2008-10-01  Dan Bernstein  <mitz@apple.com>
2957
2958         - Mac build fix
2959
2960         * WebCore.base.exp:
2961
2962 2008-10-01  Timothy Hatcher  <timothy@apple.com>
2963
2964         Prevent stealing focus from the search field when focusing a DOM node.
2965
2966         https://bugs.webkit.org/show_bug.cgi?id=21275
2967
2968         Reviewed by Kevin McCullough.
2969
2970         * page/inspector/ElementsPanel.js:
2971         (WebInspector.ElementsPanel.treeOutline.focusedNodeChanged):
2972         Don't steal focus if the current focus element is the search field.
2973
2974 2008-09-30  Sam Weinig  <sam@webkit.org>
2975
2976         Reviewed by Nikolas Zimmermann and Alexey Proskuryakov.
2977
2978         Final patch for https://bugs.webkit.org/show_bug.cgi?id=21122
2979         Autogenerate JS event listeners
2980
2981         - Generate getting/setting of EventListeners.
2982
2983         - Adding a new named EventListener now has the same process as adding any other DOM
2984           attribute. (Add a method with the same name in the c++ file).
2985
2986         (The EventListeners for MessagePort have been intentionally left custom so that we
2987         can continue to experiment with making those EventListeners work in a frame-less world.)
2988
2989         * bindings/js/JSDOMApplicationCacheCustom.cpp: Remove custom methods.
2990         * bindings/js/JSDOMWindowCustom.cpp: ditto.
2991         * bindings/js/JSEventTargetNodeCustom.cpp: ditto.
2992         * bindings/js/JSXMLHttpRequestCustom.cpp: ditto.
2993         * bindings/js/JSXMLHttpRequestUploadCustom.cpp: ditto.
2994         * bindings/scripts/CodeGeneratorJS.pm: Add code to generate EventListener
2995         getter/setters
2996         * dom/EventTargetNode.cpp: Add getter/setters for named EventListener.
2997         * dom/EventTargetNode.h: ditto.
2998         * dom/EventTargetNode.idl: Mark EventListeners as Protected so that the codegenerator
2999         will use JSEventListerner instead of JSUnprotectedEventListener.
3000         * loader/appcache/DOMApplicationCache.idl: Remove custom attributes..
3001         * page/DOMWindow.cpp: Add getter/setters for named EventListener
3002         * page/DOMWindow.h: ditto.
3003         * page/DOMWindow.idl: Mark EventListeners as Protected so that the codegenerator
3004         will use JSEventListerner instead of JSUnprotectedEventListener.
3005         * xml/XMLHttpRequest.idl: Remove custom attributes.
3006         * xml/XMLHttpRequestUpload.idl: ditto.
3007
3008 2008-09-30  Mark Rowe  <mrowe@apple.com>
3009
3010         Reviewed by Dan Bernstein.
3011
3012         Add a leak counter for CachedResources since we've had two recent leaks involving them.
3013
3014         * loader/CachedResource.cpp:
3015         (WebCore::CachedResource::CachedResource):
3016         (WebCore::CachedResource::~CachedResource):
3017
3018 2008-09-30  Dan Bernstein  <mitz@apple.com>
3019
3020         Reviewed by Dave Hyatt.
3021
3022         - fix https://bugs.webkit.org/show_bug.cgi?id=21127
3023           <rdar://problem/6259134> REGRESSION: CFF format fonts fail to load
3024
3025         If TTLoadEmbeddedFont fails, use AddFontMemResourceEx after changing
3026         the font name in memory.
3027
3028         * WebCore.vcproj/WebCore.vcproj: Renamed GetEOTHeader.* to
3029         OpenTypeUtilities.*.
3030
3031         * platform/graphics/win/FontCustomPlatformData.cpp:
3032         (WebCore::FontCustomPlatformData::~FontCustomPlatformData): Added a call
3033         to RemoveFontMemResourceEx to match AddFontMemResourceEx when it is
3034         used.
3035         (WebCore::FontCustomPlatformData::fontPlatformData): Added a code path
3036         for fonts loaded using AddFontMemResourceEx.
3037         (WebCore::createFontCustomPlatformData): Added a call to
3038         renameAndActivateFont() if TTLoadEmbeddedFont fails. If
3039         TTLoadEmbeddedFont succeeds, set the font name to the null string, as
3040         fontPlatformData() will retrieve the name from the font reference.
3041
3042         * platform/graphics/win/FontCustomPlatformData.h:
3043         (WebCore::FontCustomPlatformData::FontCustomPlatformData): Added a
3044         font name member.
3045
3046         * platform/graphics/win/GetEOTHeader.cpp: Renamed.
3047         * platform/graphics/win/GetEOTHeader.h: Renamed.
3048
3049         * platform/graphics/win/OpenTypeUtilities.cpp: Copied from platform/graphics/win/GetEOTHeader.cpp.
3050         (WebCore::BigEndianUShort::BigEndianUShort): Added a constructor.
3051         (WebCore::BigEndianULong::BigEndianULong): Ditto.
3052         (WebCore::renameAndActivateFont): Added. Creates an in-memory copy of
3053         the font data and modifies it to have the given name, then activates
3054         it using AddFontMemResourceEx.
3055
3056         * platform/graphics/win/OpenTypeUtilities.h: Copied from platform/graphics/win/GetEOTHeader.h.
3057
3058 2008-09-30  Mark Rowe  <mrowe@apple.com>
3059
3060         Reviewed by Dan Bernstein.
3061
3062         Fix many leaks seen on fast/backgrounds/svg-as-mask.html.
3063
3064         * rendering/RenderObject.cpp:
3065         (WebCore::RenderObject::arenaDelete): Balance the calls to addClient on maskLayer's images
3066         with calls to removeClient when we're being destroyed.
3067
3068 2008-09-30  Eric Carlson  <eric.carlson@apple.com>
3069
3070         Reviewed by Antti Koivisto.
3071
3072         https://bugs.webkit.org/show_bug.cgi?id=21243
3073
3074         Fix loopstart and loopend default values.
3075
3076         Tests: media/loopend-limits.html
3077                media/loopstart-limits.html
3078
3079         * html/HTMLMediaElement.cpp:
3080         (WebCore::HTMLMediaElement::loopStart): the spec says start() is the default value
3081         (WebCore::HTMLMediaElement::loopEnd): the spec says end() is the default value
3082
3083 2008-09-30  Kevin Ollivier  <kevino@theolliviers.com>
3084
3085         wx build fixes. Add file to build and remove call to (now gone) ScrollView::update.
3086
3087         * WebCoreSources.bkl:
3088         * platform/wx/ScrollViewWx.cpp:
3089         (WebCore::ScrollView::ScrollViewPrivate::OnScrollWinEvents):
3090
3091 2008-09-30  Dan Bernstein  <mitz@apple.com>
3092
3093         Reviewed by Sam Weinig.
3094
3095         - fix HTMLViewSourceDocument leaks by breaking a ref cycle which
3096           was fixed in r17249 and re-introduced in r31435. 
3097
3098         * html/HTMLViewSourceDocument.cpp:
3099         (WebCore::HTMLViewSourceDocument::HTMLViewSourceDocument):
3100         (WebCore::HTMLViewSourceDocument::addSpanWithClassName):
3101         (WebCore::HTMLViewSourceDocument::addLine):
3102         (WebCore::HTMLViewSourceDocument::addLink):
3103         * html/HTMLViewSourceDocument.h:
3104
3105 2008-09-30  Sam Weinig  <sam@webkit.org>
3106
3107         Reviewed by Eric Seidel.
3108
3109         More for https://bugs.webkit.org/show_bug.cgi?id=21122
3110         Autogenerate JS event listeners
3111
3112         - Make EventListener getter/setters names in c++ files match those in 
3113           JS (ie. onLoadListener -> onload).
3114         - Add standard way to access the frame associated with the EventTarget
3115           for EventListener lookup.
3116         - Autogenerate dispatchEvent, it wasn't doing anything custom.
3117
3118         * bindings/js/JSDOMApplicationCacheCustom.cpp:
3119         (WebCore::JSDOMApplicationCache::mark):
3120         (WebCore::JSDOMApplicationCache::addEventListener):
3121         (WebCore::JSDOMApplicationCache::removeEventListener):
3122         (WebCore::JSDOMApplicationCache::setOnchecking):
3123         (WebCore::JSDOMApplicationCache::onchecking):
3124         (WebCore::JSDOMApplicationCache::setOnerror):
3125         (WebCore::JSDOMApplicationCache::onerror):
3126         (WebCore::JSDOMApplicationCache::setOnnoupdate):
3127         (WebCore::JSDOMApplicationCache::onnoupdate):
3128         (WebCore::JSDOMApplicationCache::setOndownloading):
3129         (WebCore::JSDOMApplicationCache::ondownloading):
3130         (WebCore::JSDOMApplicationCache::setOnprogress):
3131         (WebCore::JSDOMApplicationCache::onprogress):
3132         (WebCore::JSDOMApplicationCache::setOnupdateready):
3133         (WebCore::JSDOMApplicationCache::onupdateready):
3134         (WebCore::JSDOMApplicationCache::setOncached):
3135         (WebCore::JSDOMApplicationCache::oncached):
3136         * bindings/js/JSEventTargetNodeCustom.cpp:
3137         (WebCore::JSEventTargetNode::addEventListener):
3138         (WebCore::JSEventTargetNode::removeEventListener):
3139         (WebCore::JSEventTargetNode::getListener):
3140         (WebCore::JSEventTargetNode::setListener):
3141         * bindings/js/JSMessagePortCustom.cpp:
3142         (WebCore::JSMessagePort::mark):
3143         (WebCore::JSMessagePort::addEventListener):
3144         (WebCore::JSMessagePort::removeEventListener):
3145         (WebCore::JSMessagePort::setOnmessage):
3146         (WebCore::JSMessagePort::onmessage):
3147         (WebCore::JSMessagePort::setOnclose):
3148         (WebCore::JSMessagePort::onclose):
3149         * bindings/js/JSXMLHttpRequestCustom.cpp:
3150         (WebCore::JSXMLHttpRequest::mark):
3151         (WebCore::JSXMLHttpRequest::onreadystatechange):
3152         (WebCore::JSXMLHttpRequest::setOnreadystatechange):
3153         (WebCore::JSXMLHttpRequest::onabort):
3154         (WebCore::JSXMLHttpRequest::setOnabort):
3155         (WebCore::JSXMLHttpRequest::onerror):
3156         (WebCore::JSXMLHttpRequest::setOnerror):
3157         (WebCore::JSXMLHttpRequest::onload):
3158         (WebCore::JSXMLHttpRequest::setOnload):
3159         (WebCore::JSXMLHttpRequest::onloadstart):
3160         (WebCore::JSXMLHttpRequest::setOnloadstart):
3161         (WebCore::JSXMLHttpRequest::onprogress):
3162         (WebCore::JSXMLHttpRequest::setOnprogress):
3163         (WebCore::JSXMLHttpRequest::addEventListener):
3164         (WebCore::JSXMLHttpRequest::removeEventListener):
3165         * bindings/js/JSXMLHttpRequestUploadCustom.cpp:
3166         (WebCore::JSXMLHttpRequestUpload::mark):
3167         (WebCore::JSXMLHttpRequestUpload::onabort):
3168         (WebCore::JSXMLHttpRequestUpload::setOnabort):
3169         (WebCore::JSXMLHttpRequestUpload::onerror):
3170         (WebCore::JSXMLHttpRequestUpload::setOnerror):
3171         (WebCore::JSXMLHttpRequestUpload::onload):
3172         (WebCore::JSXMLHttpRequestUpload::setOnload):
3173         (WebCore::JSXMLHttpRequestUpload::onloadstart):
3174         (WebCore::JSXMLHttpRequestUpload::setOnloadstart):
3175         (WebCore::JSXMLHttpRequestUpload::onprogress):
3176         (WebCore::JSXMLHttpRequestUpload::setOnprogress):
3177         (WebCore::JSXMLHttpRequestUpload::addEventListener):
3178         (WebCore::JSXMLHttpRequestUpload::removeEventListener):
3179         * bindings/scripts/CodeGeneratorJS.pm:
3180         * dom/EventTarget.h:
3181         * dom/EventTargetNode.cpp:
3182         (WebCore::EventTargetNode::associatedFrame):
3183         * dom/EventTargetNode.h:
3184         * dom/EventTargetNode.idl:
3185         * dom/MessagePort.cpp:
3186         (WebCore::MessagePort::associatedFrame):
3187         * dom/MessagePort.h:
3188         (WebCore::MessagePort::setOnmessage):
3189         (WebCore::MessagePort::onmessage):
3190         (WebCore::MessagePort::setOnclose):
3191         (WebCore::MessagePort::onclose):
3192         * dom/MessagePort.idl:
3193         * loader/appcache/DOMApplicationCache.h:
3194         (WebCore::DOMApplicationCache::setOnchecking):
3195         (WebCore::DOMApplicationCache::onchecking):
3196         (WebCore::DOMApplicationCache::setOnerror):
3197         (WebCore::DOMApplicationCache::onerror):
3198         (WebCore::DOMApplicationCache::setOnnoupdate):
3199         (WebCore::DOMApplicationCache::onnoupdate):
3200         (WebCore::DOMApplicationCache::setOndownloading):
3201         (WebCore::DOMApplicationCache::ondownloading):
3202         (WebCore::DOMApplicationCache::setOnprogress):
3203         (WebCore::DOMApplicationCache::onprogress):
3204         (WebCore::DOMApplicationCache::setOnupdateready):
3205         (WebCore::DOMApplicationCache::onupdateready):
3206         (WebCore::DOMApplicationCache::setOncached):
3207         (WebCore::DOMApplicationCache::oncached):
3208         (WebCore::DOMApplicationCache::associatedFrame):
3209         * loader/appcache/DOMApplicationCache.idl:
3210         * svg/EventTargetSVGElementInstance.cpp:
3211         (WebCore::EventTargetSVGElementInstance::associatedFrame):
3212         (WebCore::EventTargetSVGElementInstance::addEventListener):
3213         (WebCore::EventTargetSVGElementInstance::removeEventListener):
3214         (WebCore::EventTargetSVGElementInstance::dispatchEvent):
3215         * svg/EventTargetSVGElementInstance.h:
3216         * xml/XMLHttpRequest.cpp:
3217         (WebCore::XMLHttpRequest::associatedFrame):
3218         * xml/XMLHttpRequest.h:
3219         (WebCore::XMLHttpRequest::setOnreadystatechange):
3220         (WebCore::XMLHttpRequest::onreadystatechange):
3221         (WebCore::XMLHttpRequest::setOnabort):
3222         (WebCore::XMLHttpRequest::onabort):
3223         (WebCore::XMLHttpRequest::setOnerror):
3224         (WebCore::XMLHttpRequest::onerror):
3225         (WebCore::XMLHttpRequest::setOnload):
3226         (WebCore::XMLHttpRequest::onload):
3227         (WebCore::XMLHttpRequest::setOnloadstart):
3228         (WebCore::XMLHttpRequest::onloadstart):
3229         (WebCore::XMLHttpRequest::setOnprogress):
3230         (WebCore::XMLHttpRequest::onprogress):
3231         * xml/XMLHttpRequest.idl:
3232         * xml/XMLHttpRequestUpload.cpp:
3233         (WebCore::XMLHttpRequestUpload::associatedFrame):
3234         * xml/XMLHttpRequestUpload.h:
3235         (WebCore::XMLHttpRequestUpload::setOnabort):
3236         (WebCore::XMLHttpRequestUpload::onabort):
3237         (WebCore::XMLHttpRequestUpload::setOnerror):
3238         (WebCore::XMLHttpRequestUpload::onerror):
3239         (WebCore::XMLHttpRequestUpload::setOnload):
3240         (WebCore::XMLHttpRequestUpload::onload):
3241         (WebCore::XMLHttpRequestUpload::setOnloadstart):
3242         (WebCore::XMLHttpRequestUpload::onloadstart):
3243         (WebCore::XMLHttpRequestUpload::setOnprogress):
3244         (WebCore::XMLHttpRequestUpload::onprogress):
3245         * xml/XMLHttpRequestUpload.idl:
3246
3247 2008-09-30  Darin Adler  <darin@apple.com>
3248
3249         - roll out assertion breaking regression tests
3250
3251         * platform/ScrollView.cpp:
3252         (WebCore::ScrollView::repaintContentRectangle): Temporarily remove assertion
3253         that fires in regression tests. Hyatt can add it back later. The assertion
3254         fires in the regression test because of layout that triggers repaint occuring
3255         during the process of removing a frame.
3256
3257 2008-09-30  Adele Peterson  <adele@apple.com>
3258
3259         Reviewed by Darin Adler.
3260
3261         Fix for https://bugs.webkit.org/show_bug.cgi?id=21227
3262         <rdar://problem/6222134> add a way to set color for input placeholder text
3263
3264         Test: fast/forms/placeholder-pseudo-style.html
3265
3266         This change adds "-webkit-input-placeholder-mode" as a pseudo class that can be used to style
3267         input elements when they are displaying the placeholder text.
3268
3269         * css/CSSSelector.cpp: (WebCore::CSSSelector::extractPseudoType): Add case for inputPlaceholderMode.
3270         * css/CSSSelector.h: (WebCore::CSSSelector::): Add PseudoInputPlaceholderMode.
3271         * css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector):
3272         Add check for PseudoInputPlaceholderMode that asks the node if placeholderShouldBeVisible is true.
3273         * css/html4.css: Add rule to make placeholder text default to darkGray.
3274
3275         * html/HTMLInputElement.cpp:
3276         (WebCore::HTMLInputElement::init): Initialize m_placeholderShouldBeVisible.
3277         (WebCore::HTMLInputElement::dispatchFocusEvent): Call updatePlaceholderVisibility.
3278         (WebCore::HTMLInputElement::dispatchBlurEvent): ditto.
3279         (WebCore::HTMLInputElement::parseMappedAttribute): ditto.
3280         (WebCore::HTMLInputElement::setValue): ditto.
3281         (WebCore::HTMLInputElement::setValueFromRenderer): ditto.
3282         (WebCore::HTMLInputElement::updatePlaceholderVisibility): Sets m_placeholderShouldBeVisible based on the current value and the focus state.
3283          This calculation used to be done in the renderer, but since the node knows everything about the state, it can make that decision, and the
3284          renderer will just ask the node if it should draw the placeholder.
3285         * html/HTMLInputElement.h: (WebCore::HTMLInputElement::placeholderShouldBeVisible):
3286
3287         * rendering/RenderTextControl.cpp:
3288         (WebCore::disabledTextColor): Moved to the top of the file.  If there's not very much contrast between the disabled color and the background color,
3289         just leave the text color alone.  We don't want to change a good contrast color scheme so that it has really bad contrast.
3290         If the the contrast was already poor, then it doesn't do any good to change it to a different poor contrast color scheme.
3291         (WebCore::RenderTextControl::createInnerTextStyle): If the node says the placeholder should be visible, prepare by overriding the text security to be "none".
3292         This can only happen as a result of either a setStyle call (which will be followed by a call to updateFromElement) or from createSubtreeIfNeeded, which
3293         is called directly from updateFromElement.  updateFromElement will immediately update the text displayed.
3294         (WebCore::RenderTextControl::updateFromElement): If the placeholder visibility has changed, update the text that is displayed.
3295         (WebCore::RenderTextControl::forwardEvent): Remove calls to update the placeholder state.  This is now done in HTMLInputElement.
3296         * rendering/RenderTextControl.h:
3297
3298 2008-09-30  Beth Dakin  <bdakin@apple.com>
3299
3300         Reviewed by Darin Adler.
3301
3302         Fix for https://bugs.webkit.org/show_bug.cgi?id=20396 Abort caused 
3303         by failed allocation due to invalid counter/attr
3304         and corresponding: <rdar://problem/6152371>
3305
3306         * css/CSSParser.cpp:
3307         (WebCore::CSSParser::parseCounterContent): The spec indicates that 
3308         only identifiers should be accepted here.
3309
3310 2008-09-30  Kevin McCullough  <kmccullough@apple.com>
3311
3312         Reviewed by Oliver Hunt.
3313
3314         Bug 21255: console.profileEnd() without a console.profile() crashes the
3315         web inspector
3316
3317         * page/Console.cpp:
3318         (WebCore::Console::profileEnd):
3319
3320 2008-09-30  Kevin McCullough  <kmccullough@apple.com>
3321
3322         Reviewed by Tim Hatcher.
3323
3324         Bug 21252: calling console.profile() with a title that is 2 chars or
3325         shorter does not linkify it
3326
3327         - Previously we tried to not linkify very short URLs but since profile
3328         titles can be any length this is not always true.
3329
3330         * page/inspector/inspector.js:
3331
3332 2008-09-30  Dave Hyatt  <hyatt@apple.com>
3333
3334         Remove the update() method on ScrollView.  This method was only called in one place, and its purpose
3335         was to cause a display/flush to happen.  Here is a breakdown of the method use on each platform:
3336         (1) Not used on Mac
3337         (2) Used on Windows
3338         (3) Used on Qt, but implemented incorrectly to cause a full repaint for no reason.
3339         (4) Used on Gtk, but implemented incorrectly to cause a full repaint for no reason.
3340         (5) Used on wx, but probably not needed (since wx has platform widgets like Mac).
3341         
3342         There is now a paint method on HostWindow that does an immediate mode repaint of an empty rect to
3343         cause the display/flush to happen if needed (thus saving an extra method on ChromeClient).
3344         With the changes to this method, the new behavior is as follows:
3345         (1) Not used on Mac
3346         (2) Used on Windows
3347         (3) Nothing happens on Qt, but only because they have not implemented immediate mode updating.
3348         (4) Gtk now behaves like Windows and will process updates but not do any incorrect additional invalidation.
3349         (5) Not used on wx
3350         
3351         This method was originally added for Windows. It's not clear the display/flush is really even necessary on the other
3352         platforms.  At the very least stopping unnecessary full invalidations on Qt/Gtk is a good thing. :)
3353         
3354         Reviewed by Sam Weinig
3355
3356         * ChangeLog:
3357         * dom/Document.cpp:
3358         (WebCore::Document::implicitClose):
3359         * platform/HostWindow.h:
3360         (WebCore::HostWindow::paint):
3361         * platform/ScrollView.h:
3362         * platform/gtk/ScrollViewGtk.cpp:
3363         * platform/mac/ScrollViewMac.mm:
3364         * platform/qt/ScrollViewQt.cpp:
3365         * platform/win/ScrollViewWin.cpp:
3366         * platform/wx/ScrollViewWx.cpp:
3367
3368 2008-09-30  Timothy Hatcher  <timothy@apple.com>
3369
3370         Focus the DOM tree in the Web Inspector when a node is inspected.
3371         So when the search field has focus, the focus moves to the tree,
3372         allowing the arrow keys work. This can happen when using the new
3373         find in page feature.
3374
3375         https://bugs.webkit.org/show_bug.cgi?id=21251
3376
3377         Reviewed by Geoff Garen.
3378
3379         * page/inspector/ElementsPanel.js:
3380         (WebInspector.ElementsPanel): Set currentFocusElement to
3381         the main-panels element if the panel is visible.
3382         (WebInspector.ElementsPanel.prototype.updateBreadcrumb):
3383         Remove a set of currentFocusElement since this moved.
3384         * page/inspector/inspector.js:
3385         (WebInspector.set currentFocusElement): Always focus the element.
3386         This ensures that when focus changes in the page and we don't
3387         catch it, we will still focus the elements even if we think it
3388         was already focused.
3389
3390 2008-09-30  Timothy Hatcher  <timothy@apple.com>
3391
3392         Make the Web Inspector's toolbar icons darker when the mouse is
3393         pressed on them. This matches the standard NSToolbar look.
3394
3395         https://bugs.webkit.org/show_bug.cgi?id=21249
3396         rdar://problem/6033752
3397
3398         Reviewed by Adam Roben.
3399
3400         * page/inspector/Images/databasesIcon.png:
3401         * page/inspector/Images/elementsIcon.png:
3402         * page/inspector/Images/profilesIcon.png:
3403         * page/inspector/Images/resourcesIcon.png:
3404         * page/inspector/Images/scriptsIcon.png:
3405         * page/inspector/Panel.js:
3406         * page/inspector/inspector.css:
3407
3408 2008-09-30  Kevin McCullough  <kmccullough@apple.com>
3409
3410         Reviewed by Tim Hatcher.
3411
3412         Bug 21139: Profiler log message is wrong
3413         - Correctly fix =(
3414         Don't call _format twice.
3415
3416         * page/Page.h:
3417         * page/inspector/Console.js:
3418         * page/inspector/ProfilesPanel.js:
3419         * page/inspector/inspector.js:
3420
3421 2008-09-30  Dave Hyatt  <hyatt@apple.com>
3422
3423         http://bugs.webkit.org/show_bug.cgi?id=21250
3424         
3425         Rename updateContents to repaintContentRectangle and make it cross-platform by always sending
3426         repaints up through the ChromeClient.
3427
3428         Reviewed by Darin Adler
3429
3430         * loader/EmptyClients.h:
3431         (WebCore::EmptyChromeClient::repaint):
3432         * page/Chrome.cpp:
3433         (WebCore::Chrome::repaint):
3434         * page/Chrome.h:
3435         * page/ChromeClient.h:
3436         * page/FrameView.cpp:
3437         (WebCore::FrameView::hostWindow):
3438         (WebCore::FrameView::repaintContentRectangle):
3439         * page/FrameView.h:
3440         * platform/HostWindow.h:
3441         * platform/ScrollView.cpp:
3442         (WebCore::ScrollView::repaintContentRectangle):
3443         (WebCore::ScrollView::platformRepaintContentRectangle):
3444         * platform/ScrollView.h:
3445         * platform/gtk/ScrollViewGtk.cpp:
3446         * platform/mac/ScrollViewMac.mm:
3447         (WebCore::ScrollView::platformRepaintContentRectangle):
3448         * platform/qt/ScrollViewQt.cpp:
3449         * platform/win/ScrollViewWin.cpp:
3450         * platform/wx/ScrollViewWx.cpp:
3451         (WebCore::ScrollView::platformRepaintContentRectangle):
3452
3453 2008-09-30  Alexey Proskuryakov  <ap@webkit.org>
3454
3455         Non-Mac build fixes.
3456
3457         * GNUmakefile.am:
3458         * WebCore.pro:
3459         * WebCore.vcproj/WebCore.vcproj:
3460         * WebCoreSources.bkl:
3461         * webcore-base.bkl:
3462         Added DOMProtect.{cpp,h}.
3463
3464 2008-09-39  Kevin Decker  <kdecker@apple.com>
3465
3466         Reviewed by John Sullivan.
3467
3468         * bridge/npapi.h: Added skeleton for a new plug-in drawing model, the NPCoreAnimationDrawingModel. This model will eventually pave the way
3469         for hardware accelerated drawing in plug-ins and out of process plug-in rendering.
3470
3471 2008-09-29  Julien Chaffraix  <jchaffraix@webkit.org>
3472
3473         Reviewed by Maciej Stachowiak.
3474
3475         Bug 21106: .in format discussed changes
3476         https://bugs.webkit.org/show_bug.cgi?id=21106
3477
3478         - Removed "cppNamespace" global parameter and hard-coded "WebCore" as it
3479         is the only namespace used.
3480
3481         - Removed "generateFactory" and "generateWrapperFactory" parameters and
3482         re-introduced the command line options.
3483
3484         - Cleaned up the output of make_names.pl (removed unneeded new line).
3485
3486         * DerivedSources.make: Added factories command line options.
3487         * GNUmakefile.am: Ditto.
3488         * WebCore.pro: Ditto and removed some arguments that were migrated to
3489         the .in files.
3490
3491         * dom/make_names.pl: Clean up (see above).
3492
3493         * html/HTMLAttributeNames.in: Removed "cppNamespace", "generateFactory"
3494         and "generateWrapperFactory" occurences.
3495         * html/HTMLTagNames.in: Ditto.
3496         * svg/svgattrs.in: Ditto.
3497         * svg/svgtags.in: Ditto.
3498         * svg/xlinkattrs.in: Ditto.
3499         * xml/xmlattrs.in: Ditto.
3500
3501 2008-09-29  Chris Fleizach  <cfleizach@apple.com>
3502
3503         Reviewed by John Sullivan.
3504
3505         <rdar://problem/6255456> AX: <file> input button shouldn't have children exposed
3506         Make sure that certain types of elements do not return children and, moreover, do not waste their
3507         energy trying to return children
3508
3509         Test: accessibility/nochildren-elements.html
3510
3511         * page/AccessibilityObject.h:
3512         (WebCore::AccessibilityObject::canHaveChildren):
3513         * page/AccessibilityRenderObject.cpp:
3514         (WebCore::AccessibilityRenderObject::canHaveChildren):
3515         (WebCore::AccessibilityRenderObject::addChildren):
3516         * page/AccessibilityRenderObject.h:
3517
3518 2008-09-30  Alexey Proskuryakov  <ap@webkit.org>
3519
3520         Reviewed by Sam Weinig.
3521
3522         https://bugs.webkit.org/show_bug.cgi?id=21213
3523         MessagePort crash when GC collects an object with a pending close event
3524
3525         Test: fast/events/message-channel-gc-2.html
3526               fast/events/message-channel-listener-circular-ownership.html
3527
3528         * bindings/DOMProtect.cpp: Added.
3529         (WebCore::gcProtectDOMObject):
3530         (WebCore::gcUnprotectDOMObject):
3531         * bindings/DOMProtect.h: Added.
3532         Added an abstraction for GC protection to avoid the need to call JS bindings code from
3533         DOM objects directly.
3534
3535         * dom/MessagePort.cpp:
3536         (WebCore::CloseMessagePortTimer::fired):
3537         (WebCore::MessagePort::queueCloseEvent):
3538         GC protect MessagePort wrapper while there is a pending close event.
3539         This may be necessary for message events, too, but that case is not a crasher, and actually
3540         behaves to the letter of the current HTML5 text, so I'll consider it later.
3541
3542         * xml/XMLHttpRequest.cpp:
3543         (WebCore::XMLHttpRequest::loadRequestAsynchronously):
3544         (WebCore::XMLHttpRequest::dropProtection):
3545         Use gcProtectDOMObject here, too. Unfortunately, XMLHttpRequest has more dependencies on JSC.
3546
3547         * bindings/js/JSMessagePortCustom.cpp:
3548         (WebCore::JSMessagePort::addEventListener):
3549         (WebCore::JSMessagePort::removeEventListener):
35