WebCore:
[WebKit-https.git] / WebCore / ChangeLog
1 2008-11-10  Justin Garcia  <justin.garcia@apple.com>
2
3         Reviewed by Beth Dakin.
4
5         <rdar://problem/4037481> REGRESSION (Mail): pasting quoted text 
6         into quoted text yields double-quoting
7         
8         Don't nest inserted content in Mail blockquotes.  Perform a 
9         BreakBlockquoteCommand if we're in
10         one and insert the incoming fragment between the split blockquotes.
11
12         * editing/ReplaceSelectionCommand.cpp:
13         (WebCore::ReplaceSelectionCommand::shouldMerge): Renamed from -> 
14         source and to -> destination.
15         (WebCore::ReplaceSelectionCommand::doApply):
16
17 2008-11-10  Adam Roben  <aroben@apple.com>
18
19         Fix Bug 22158: Would like to turn on WebCore logging channels via an
20         environment variable
21
22         <https://bugs.webkit.org/show_bug.cgi?id=22158>
23
24         Logging channels can now be enabled by setting the WebCoreLogLevel
25         environment variable to a hexadecimal number.
26
27         Reviewed by Anders Carlsson.
28
29         * WebCore.vcproj/WebCore.vcproj: Added LoggingWin.cpp.
30         * platform/win/LoggingWin.cpp: Copied from WebCore/platform/mac/LoggingMac.mm.
31         (WebCore::initializeWithUserDefault): Read in the WebCoreLogLevel
32         environment variable, parse its value as a hexadecimal number, and
33         turn the channel on/off based on whether the mask bit is set.
34         (WebCore::InitializeLoggingChannelsIfNecessary): Initialize each
35         logging channel in turn.
36
37 2008-11-10  Darin Adler  <darin@apple.com>
38
39         Reviewed by Adam Roben.
40
41         - fix https://bugs.webkit.org/show_bug.cgi?id=22103
42           Changing fonts in preferences does not immediately update WebViews
43
44         This broke when the meaning of FrameView::invalidate changed.
45         I changed setNeedsReapplyStyles to no longer depend on invalidate.
46
47         * dom/Document.cpp: (WebCore::Document::shouldScheduleLayout):
48         Removed the part of this function that duplicated what's already in
49         FrameView::needsLayout, since the copy here left out a few key things.
50         For example, it didn't handle the fact that "needs reapply styles"
51         counts as needing layout.
52
53         * page/Frame.cpp: (WebCore::Frame::setNeedsReapplyStyles): This called
54         FrameView::invalidate before. There were two things wrong with that.
55         1) It requested that the entire view repaint even if the style change
56         didn't necessitate that. 2) FrameView::invalidate no longer causes any
57         repainting at all in certain cases, because of Hyatt's changes to how
58         widgets and the host window are involved in the repainting process.
59         So call FrameView::scheduleRelayout instead, which is more precisely
60         what we want and need here.
61
62         * page/FrameView.cpp:
63         (WebCore::FrameView::scheduleRelayout): Add a call to needsLayout here
64         so that Document::shouldScheduleLayout doesn't have to replicate the
65         logic that's in needsLayout and can instead rely on the fact that it
66         was already called.
67         (WebCore::FrameView::needsLayout): Tweaked the comments and formatting
68         in this function.
69
70 2008-11-10  Darin Adler  <darin@apple.com>
71
72         Reviewed by Adam Roben.
73
74         - speculative fix for <rdar://problem/5557243> crashes in Safari at
75           WebCore::HTMLSelectElement::updateListBoxSelection + 280
76
77         * html/HTMLSelectElement.cpp:
78         (WebCore::HTMLSelectElement::updateListBoxSelection):
79         Check index against size of vector before indexing into the vector.
80
81 2008-11-10  Tom Cooksey  <thomas.cooksey@trolltech.com>
82
83         Reviewed by Tor Arne Vestbø.
84
85         Fix QtWebkit build failure on arm.
86
87         pen.widthF() is a qreal, which means it's a float on arm.
88
89         * platform/graphics/qt/GraphicsContextQt.cpp:
90         (WebCore::GraphicsContext::setLineDash):
91
92 2008-11-10  Morten Sørvig  <msorvig@trolltech.com>
93
94         Reviewed by Simon Hausmann.
95
96         Improve mouse wheel scolling on Qt/Cocoa.
97         Cocoa differs from Carbon (and other platforms I think) in that the
98         mouse wheel events we get have a much higher acceleration factor.
99
100         This submit switches over to scroll-per-pixel from scroll-per-line
101         for most of our scrolling views. This matches the native views
102         and works well with the increased acceleration.
103
104         * platform/qt/WheelEventQt.cpp:
105
106 2008-11-09  Cameron Zwarich  <zwarich@apple.com>
107
108         Reviewed by Darin Adler.
109
110         Bug 19541: Null pointer in showModalDialog()
111         <https://bugs.webkit.org/show_bug.cgi?id=19541>
112
113         Add null frame->page() checks to JSDOMWindowBase::canShowModalDialog()
114         and JSDOMWindowBase::canShowModalDialogNow()C
115
116         * bindings/js/JSDOMWindowBase.cpp:
117         (WebCore::canShowModalDialog):
118         (WebCore::canShowModalDialogNow):
119
120 2008-11-09  Darin Adler  <darin@apple.com>
121
122         - try to fix Windows build
123
124         * platform/graphics/Color.cpp: For some reason MSVC doesn't follow the rules
125         about needed a separate definition for static const integer data members.
126         Until I get to the bottom of this, put the definitions inside an ifdef.
127
128 2008-11-09  David Kilzer  <ddkilzer@apple.com>
129
130         BUILD FIX: Qt build broke after r38235.
131
132         Added HAVE(ACCESSIBILITY) header guards to platform implementation
133         source files.
134
135         * page/gtk/AccessibilityObjectAtk.cpp: Added HAVE(ACCESSIBILITY)
136         guards.
137         * page/gtk/AccessibilityObjectWrapperAtk.cpp: Ditto.
138         * page/qt/AccessibilityObjectQt.cpp: Ditto.
139         * page/win/AccessibilityObjectWin.cpp: Ditto.
140         * page/wx/AccessibilityObjectWx.cpp: Ditto.
141
142 2008-11-09  Alexey Proskuryakov  <ap@webkit.org>
143
144         Reviewed by Darin Adler.
145
146         https://bugs.webkit.org/show_bug.cgi?id=22104
147         Javascript URL percent encoding/decoding broken by some characters
148
149         Test: fast/loader/javascript-url-encoding-2.html
150
151         * platform/KURL.cpp: (WebCore::encodeRelativeString): Don't try to break down javascript URLs.
152
153 2008-11-09  Holger Hans Peter Freyther  <zecke@selfish.org>
154
155         Reviewed and tweaked by Darin Adler.
156
157         * platform/graphics/Color.cpp: Added definitions for the static data members
158         in this class. Static data members need a definition, even when they are the
159         simple integer constant kind that can be initialized in the header.
160
161 2008-11-08  Antti Koivisto  <antti@apple.com>
162
163         Reviewed by Sam Weinig.
164         
165         Fix https://bugs.webkit.org/show_bug.cgi?id=22141
166         REGRESSION: Safari error page is not fully styled when loaded from cache
167         
168         Reset text decoder on flush so it does not pass through the BOM when it is reused.
169
170         Test: fast/encoding/css-cached-bom.html
171
172         * loader/TextResourceDecoder.cpp:
173         (WebCore::TextResourceDecoder::flush):
174
175 2008-11-08  Kevin Ollivier  <kevino@theolliviers.com>
176  
177         Reviewed by Mark Rowe.
178
179         Send URL errors to stderr rather than stdout. While debugging wx DumpRenderTree,
180         it was causing these errors to end up in the page's text representation.
181
182         * platform/network/curl/ResourceHandleManager.cpp:
183         (WebCore::ResourceHandleManager::downloadTimerCallback):
184
185 2008-11-08  Kevin Ollivier  <kevino@theolliviers.com>
186
187         wx build fixes after addition of JSCore parser and bycompiler dirs. 
188
189         * webcore-base.bkl:
190         * webcore-wx.bkl:
191
192 2008-11-08  Simon Fraser  <simon.fraser@apple.com>
193
194         Reviewed by Dan Bernstein
195
196         https://bugs.webkit.org/show_bug.cgi?id=21906
197         
198         Override addFocusRingRects() in RenderTextControl to avoid
199         the RenderFlow behavior of recursing on descendent renderers.
200         RenderTextControl should only ever need a simple focus rect.
201         
202         This fixes focus ring issues with transforms on text controls.
203         
204         Test: fast/transforms/transformed-focused-text-input.html
205
206         * rendering/RenderTextControl.cpp:
207         (WebCore::RenderTextControl::addFocusRingRects):
208         * rendering/RenderTextControl.h:
209
210 2008-11-08  Dimitri Dupuis-Latour  <dupuislatour@apple.com>
211
212         Make sure the icon thumbnail width/height is at least 1px in
213         the Web Inspector's resource panel.
214
215         <rdar://problem/5988888>
216
217         Reviewed by Tim Hatcher.
218
219         * inspector/front-end/inspector.css:
220
221 2008-11-08  David Kilzer  <ddkilzer@apple.com>
222
223         Bug 22137: PLATFORM(MAC) build broken with HAVE(ACCESSIBILITY) disabled
224
225         <https://bugs.webkit.org/show_bug.cgi?id=22137>
226
227         Reviewed by Darin Adler.
228
229         * page/AccessibilityObject.h:
230         (WebCore::AccessibilityObject::accessibilityIgnoreAttachment):
231         Provide a default implementation when HAVE(ACCESSIBILITY) is false.
232         * page/mac/AXObjectCacheMac.mm: Added HAVE(ACCESSIBILITY) guard.
233         * page/mac/AccessibilityObjectMac.mm: Ditto.
234         * page/mac/AccessibilityObjectWrapper.mm: Ditto.
235
236 2008-11-08  Dan Bernstein  <mitz@apple.com>
237
238         Reviewed by Darin Adler.
239
240         - WebCore part of adding WebPreferences for controlling databases and local storage
241
242         * WebCore.base.exp: Exported Settings::setDatabasesEnabled() and
243         Settings::setLocalStorageEnabled().
244         * page/DOMWindow.cpp:
245         (WebCore::DOMWindow::localStorage): Changed to return 0 if local storage
246         is disabled in settings.
247         (WebCore::DOMWindow::openDatabase): Changed to return 0 if databases
248         are disabled in settings.
249         * page/Settings.cpp:
250         (WebCore::Settings::Settings): Initialize m_databasesEnabled and
251         m_localStorageEnabled.
252         (WebCore::Settings::setDatabasesEnabled): Added.
253         (WebCore::Settings::setLocalStorageEnabled): Added.
254         * page/Settings.h:
255         (WebCore::Settings::databasesEnabled): Added.
256         (WebCore::Settings::localStorageEnabled): Added.
257
258 2008-11-07  Alp Toker  <alp@nuanti.com>
259
260         Fix build with bleeding edge GTK+ versions. GTK+ and other libraries
261         now require that only their top-level header file is included.
262
263         Patch tested and still builds fine with older GTK+ versions (back to
264         2.8).
265
266         Future WebKit GTK+ contributions are required to adhere to this
267         policy.
268
269         * platform/gtk/FileSystemGtk.cpp:
270         * platform/gtk/KeyEventGtk.cpp:
271         * platform/gtk/MouseEventGtk.cpp:
272         * platform/gtk/WheelEventGtk.cpp:
273         * platform/gtk/gtkdrawing.h:
274         * plugins/gtk/gtk2xtbin.c:
275         * plugins/gtk/gtk2xtbin.h:
276
277 2008-11-07  Anders Carlsson  <andersca@apple.com>
278
279         Reviewed by Kevin Decker
280
281         Explicitly initialize the NPDrawingModelCoreAnimation.
282
283         * bridge/npapi.h:
284
285 2008-11-07  Alp Toker  <alp@nuanti.com>
286
287         autotools fix. Always use the configured perl binary (which may be
288         different to the one in $PATH) when generating sources.
289
290         * GNUmakefile.am:
291
292 2008-11-07  Simon Fraser  <simon.fraser@apple.com>
293
294         Reviewed by Dan Bernstein
295
296         https://bugs.webkit.org/show_bug.cgi?id=22122
297         
298         Use a stack-based object to simplify the pushLayoutState/popLayoutState
299         code. LayoutStateMaintainer either pushes in the constructor, or allows
300         an explicit push() later. Both cases require an explicit pop().
301
302         * rendering/RenderBlock.cpp:
303         (WebCore::RenderBlock::layoutBlock):
304         (WebCore::RenderBlock::layoutOnlyPositionedObjects):
305         * rendering/RenderContainer.cpp:
306         (WebCore::RenderContainer::layout):
307         * rendering/RenderFlexibleBox.cpp:
308         (WebCore::RenderFlexibleBox::layoutBlock):
309         * rendering/RenderTable.cpp:
310         (WebCore::RenderTable::layout):
311         * rendering/RenderTableRow.cpp:
312         (WebCore::RenderTableRow::layout):
313         * rendering/RenderTableSection.cpp:
314         (WebCore::RenderTableSection::setCellWidths):
315         (WebCore::RenderTableSection::calcRowHeight):
316         (WebCore::RenderTableSection::layoutRows):
317         * rendering/RenderView.h:
318         (WebCore::LayoutStateMaintainer::LayoutStateMaintainer):
319         (WebCore::LayoutStateMaintainer::~LayoutStateMaintainer):
320         (WebCore::LayoutStateMaintainer::pop):
321         (WebCore::LayoutStateMaintainer::push):
322         (WebCore::LayoutStateMaintainer::didPush):
323
324 2008-11-07  Tor Arne Vestbø  <tavestbo@trolltech.com>
325
326         Fix the QtWebKit build on Mac
327
328         * platform/qt/TemporaryLinkStubs.cpp:
329         (PluginView::invalidateRect):
330
331 2008-11-07  Tor Arne Vestbø  <tavestbo@trolltech.com>
332
333         Rubber-stamped by Simon Hausmann.
334
335         Don't allow Phonon's invisible video widget to keep the app running
336
337         * platform/graphics/qt/MediaPlayerPrivatePhonon.cpp:
338         (WebCore::MediaPlayerPrivate::MediaPlayerPrivate):
339
340 2008-11-07  Henrik Hartz  <henrik.hartz@nokia.com>
341
342         Reviewed by Simon Hausmann.
343
344         Fix valgrind warning about uninitialized lastStop variable.
345
346         * platform/graphics/qt/GradientQt.cpp:
347         (WebCore::Gradient::platformGradient):
348
349 2008-11-07  Alexey Proskuryakov  <ap@webkit.org>
350
351         Reviewed by Maciej Stachowiak.
352
353         Fix layout test brokenness following r38211.
354
355         * page/EventHandler.cpp: (WebCore::EventHandler::handleAccessKey):
356         Restore old Shift key behavior. We ignore Shift key state when matching access keys (which
357         matches neither IE nor Firefox), and this patch made WebKit behave like Firefox
358         inadvertently. This may or may not be a good thing, but it's certainly not something that
359         should change by accident.
360
361 2008-11-06  Antti Koivisto  <antti@apple.com>
362
363         Eh, this trivial last minute change was wrong.
364
365         * loader/CachedCSSStyleSheet.cpp:
366         (WebCore::CachedCSSStyleSheet::sheetText):
367
368 2008-11-06  Antti Koivisto  <antti@apple.com>
369
370         Reviewed by Dan Bernstein.
371
372         https://bugs.webkit.org/show_bug.cgi?id=22093
373         
374         Delaying the text decoding caused regression since the decoding
375         also determines the encoding in case of @charset rule. 
376         
377         Decode immediately in data() and keep the decoded string around
378         during the checkNotify().
379
380         * loader/CachedCSSStyleSheet.cpp:
381         (WebCore::CachedCSSStyleSheet::sheetText):
382         (WebCore::CachedCSSStyleSheet::data):
383         * loader/CachedCSSStyleSheet.h:
384
385 2008-11-06  Alexey Proskuryakov  <ap@webkit.org>
386
387         Reviewed by Darin Adler.
388
389         https://bugs.webkit.org/show_bug.cgi?id=22097
390         Expose MessageEvent constructor on WorkerContext
391
392         * bindings/js/JSWorkerContext.cpp:
393         (WebCore::jsWorkerContextMessageEvent):
394         (WebCore::setJSWorkerContextMessageEvent):
395
396 2008-11-06  Alexey Proskuryakov  <ap@webkit.org>
397
398         Reviewed by Darin Adler.
399
400         https://bugs.webkit.org/show_bug.cgi?id=21107
401         <rdar://problem/6264219> New access key combination conflicts with VoiceOver
402
403         * page/EventHandler.h:
404         * page/gtk/EventHandlerGtk.cpp:
405         (WebCore::EventHandler::accessKeyModifiers):
406         * page/qt/EventHandlerQt.cpp:
407         (WebCore::EventHandler::accessKeyModifiers):
408         * page/win/EventHandlerWin.cpp:
409         (WebCore::EventHandler::accessKeyModifiers):
410         * page/wx/EventHandlerWx.cpp:
411         (WebCore::EventHandler::accessKeyModifiers):
412         Access access key modifiers via a function, not a static variable.
413
414         * page/mac/EventHandlerMac.mm: (WebCore::EventHandler::accessKeyModifiers):
415         Use Ctrl when VoiceOver is enabled, because a conflict with Emacs-style key bindings is
416         less troublesome than one with VO keys.
417
418         * page/EventHandler.cpp: (WebCore::EventHandler::handleAccessKey):
419         Also fix an access key matching bug introduced in r32424 - Any superset of specified
420         modifier set invoked access keys. We can use simple equality comparison instead because
421         CapsLock is not part of modifiers(), so it doesn't need to be ignored explicitly.
422
423 2008-11-06  Anders Carlsson  <andersca@apple.com>
424
425         Reviewed by Kevin Decker.
426
427         https://bugs.webkit.org/show_bug.cgi?id=22115
428         NPN_HasPropertyUPP and NPN_HasMethodUPP entries in NPNetscapeFuncs are NULL
429
430         Export _NPN_HasMethod and _NPN_HasProperty.
431         
432         * WebCore.NPAPI.exp:
433
434 2008-11-06  Simon Fraser  <simon.fraser@apple.com>
435
436         Reviewed by Antti Koivisto
437
438         https://bugs.webkit.org/show_bug.cgi?id=15678
439         
440         Fix transformed menu selects to show the popup in the correct
441         location.
442
443         * rendering/RenderMenuList.cpp:
444         (WebCore::RenderMenuList::showPopup):
445
446 2008-11-06  David Kilzer  <ddkilzer@apple.com>
447
448         BUILD FIX: Backed out r38189 (and r38203) for Xcode 3.0.
449
450         Apparently older versions of gcc have issues with this patch.
451         Backing out a second time until the issues are resolved.
452
453 2008-11-06  Julien Chaffraix  <jchaffraix@pleyo.com>
454
455         Reviewed by Maciej Stachowiak.
456
457         Bug 21106: .in format discussed changes
458         https://bugs.webkit.org/show_bug.cgi?id=21106
459
460         Include the namespace into the interfaceName.
461
462         * dom/make_names.pl: Do not append the namespace when
463         using the interfaceName.
464         * html/HTMLTagNames.in: Added namespace prefix for custom
465         interfaceName.
466         * svg/svgtags.in: Ditto.
467
468 2008-11-06  Cameron Zwarich  <zwarich@apple.com>
469
470         Reviewed by Geoff Garen.
471
472         Move the remaining files in the kjs subdirectory of JavaScriptCore to
473         a new parser subdirectory, and remove the kjs subdirectory entirely.
474
475         * ForwardingHeaders/kjs: Removed.
476         * ForwardingHeaders/kjs/Parser.h: Removed.
477         * ForwardingHeaders/kjs/SavedBuiltins.h: Removed.
478         * ForwardingHeaders/kjs/SourceCode.h: Removed.
479         * ForwardingHeaders/kjs/SourceProvider.h: Removed.
480         * ForwardingHeaders/parser: Added.
481         * ForwardingHeaders/parser/Parser.h: Copied from ForwardingHeaders/kjs/Parser.h.
482         * ForwardingHeaders/parser/SourceCode.h: Copied from ForwardingHeaders/kjs/SourceCode.h.
483         * ForwardingHeaders/parser/SourceProvider.h: Copied from ForwardingHeaders/kjs/SourceProvider.h.
484         * WebCore.pro:
485         * WebCore.vcproj/WebCore.vcproj:
486         * bindings/js/StringSourceProvider.h:
487         * bindings/js/WorkerScriptController.cpp:
488         * bridge/NP_jsobject.cpp:
489         * bridge/jni/jni_jsobject.mm:
490         * bridge/testbindings.pro:
491         * inspector/JavaScriptDebugServer.cpp:
492
493 2008-11-06  David Kilzer  <ddkilzer@apple.com>
494
495         BUILD WAS NOT BROKEN: Rolling r38189 back in.
496
497         Please perform a clean build if you see crashes.
498
499 2008-11-06  David Kilzer  <ddkilzer@apple.com>
500
501         BUILD FIX: Backed out r38189 since it apparently broke the world.
502
503 2008-11-06  Chris Fleizach  <cfleizach@apple.com>
504
505         Reviewed by Beth Dakin.
506
507         Bug 22112: if a <body> has contenteditable=true, it should report a writable AXValue
508         https://bugs.webkit.org/show_bug.cgi?id=22112
509
510         Test: accessibility/content-editable.html
511
512         * page/AccessibilityRenderObject.cpp:
513         (WebCore::AccessibilityRenderObject::isReadOnly):
514
515 2008-11-06  Sam Weinig  <sam@webkit.org>
516
517         Reviewed by Alice Liu.
518
519         Fix failed assert at launch caused by unintialized data member on the mac.
520
521         * platform/network/mac/NetworkStateNotifierMac.cpp:
522         (WebCore::NetworkStateNotifier::NetworkStateNotifier):
523
524 2008-11-06  Steve Falkenburg  <sfalken@apple.com>
525
526         Fix failed assert at launch caused by unintialized data member.
527         
528         Reviewed by Maciej Stachowiak.
529
530         * platform/network/win/NetworkStateNotifierWin.cpp:
531         (WebCore::NetworkStateNotifier::NetworkStateNotifier):
532
533 2008-11-06  Simon Fraser  <simon.fraser@apple.com>
534
535         Reviewed by Antti Koivisto
536
537         https://bugs.webkit.org/show_bug.cgi?id=22109
538         Make <input type="range"> work correctly with transforms
539
540         Test: fast/forms/slider-transformed.html
541
542         * html/HTMLInputElement.cpp:
543         (WebCore::HTMLInputElement::defaultEventHandler):
544             Compute a correct local point when the event is retargeted
545         * rendering/RenderSlider.cpp:
546         (WebCore::HTMLSliderThumbElement::defaultEventHandler):
547             Compute m_initialClickPoint in slider-local coords, so that
548             deltas are computed correctly with transforms
549         (WebCore::RenderSlider::mouseEventIsInThumb):
550             Rather than computing an absolute bounds for the thumb,
551             convert the point to local coords and compare it with the border box.
552
553 2008-11-06  Greg Bolsinga  <bolsinga@apple.com>
554
555         Reviewed by Darin Adler.
556
557         Bug 21810: Remove use of static C++ objects that are destroyed at exit time (destructors)
558         https://bugs.webkit.org/show_bug.cgi?id=21810
559
560         * bindings/js/GCController.cpp:
561         (WebCore::gcController): Changed to leak an object to avoid an exit-time destructor.
562         * bindings/js/JSDOMBinding.cpp:
563         (WebCore::wrapperSet): Ditto
564         * bindings/js/JSInspectedObjectWrapper.cpp:
565         (WebCore::wrappers): Ditto
566         * bindings/js/JSInspectorCallbackWrapper.cpp:
567         (WebCore::wrappers): Ditto
568         * bridge/runtime_root.cpp:
569         (JSC::Bindings::rootObjectSet): Ditto
570         * css/CSSMutableStyleDeclaration.cpp:
571         (WebCore::CSSMutableStyleDeclaration::removeProperty): Ditto
572         * css/CSSPrimitiveValue.cpp:
573         (WebCore::CSSPrimitiveValue::cssText): Ditto
574         * css/CSSSelector.cpp:
575         (WebCore::CSSSelector::extractPseudoType): Ditto
576         * css/CSSStyleSelector.cpp:
577         (WebCore::screenEval): Ditto
578         (WebCore::printEval): Ditto
579         * dom/DOMImplementation.cpp:
580         (WebCore::isSVG10Feature): Ditto
581         (WebCore::isSVG11Feature): Ditto
582         (WebCore::DOMImplementation::isXMLMIMEType): Ditto
583         * dom/Document.cpp:
584         (WebCore::Document::hasPrefixNamespaceMismatch): Ditto
585         * dom/ScriptElement.cpp:
586         (WebCore::isSupportedJavaScriptLanguage): Ditto
587         * editing/ApplyStyleCommand.cpp:
588         (WebCore::styleSpanClassString): Ditto
589         * editing/HTMLInterchange.cpp:
590         (WebCore::): Ditto
591         * editing/IndentOutdentCommand.cpp:
592         (WebCore::indentBlockquoteString): Ditto
593         * editing/ReplaceSelectionCommand.cpp:
594         (WebCore::isInterchangeNewlineNode): Ditto
595         (WebCore::isInterchangeConvertedSpaceSpan): Ditto
596         * editing/htmlediting.cpp:
597         (WebCore::stringWithRebalancedWhitespace): Ditto
598         (WebCore::nonBreakingSpaceString): Ditto
599         * editing/markup.cpp:
600         (WebCore::appendAttributeValue): Ditto
601         (WebCore::appendEscapedContent): Ditto
602         (WebCore::shouldAddNamespaceAttr): Ditto
603         (WebCore::appendNamespace): Ditto
604         (WebCore::appendStartMarkup): Ditto
605         (WebCore::createMarkup): Ditto
606         * html/HTMLButtonElement.cpp:
607         (WebCore::HTMLButtonElement::type): Ditto
608         * html/HTMLElement.cpp:
609         (WebCore::HTMLElement::isRecognizedTagName): Ditto
610         (WebCore::inlineTagList): Ditto
611         (WebCore::blockTagList): Ditto
612         * html/HTMLFieldSetElement.cpp:
613         (WebCore::HTMLFieldSetElement::type): Ditto
614         * html/HTMLInputElement.cpp:
615         (WebCore::HTMLInputElement::type): Ditto
616         * html/HTMLKeygenElement.cpp:
617         (WebCore::HTMLKeygenElement::type): Ditto
618         * html/HTMLLegendElement.cpp:
619         (WebCore::HTMLLegendElement::type): Ditto
620         * html/HTMLOptGroupElement.cpp:
621         (WebCore::HTMLOptGroupElement::type): Ditto
622         * html/HTMLOptionElement.cpp:
623         (WebCore::HTMLOptionElement::type): Ditto
624         * html/HTMLParser.cpp:
625         (WebCore::HTMLParser::getNode): Ditto
626         (WebCore::HTMLParser::isHeaderTag): Ditto
627         (WebCore::HTMLParser::isResidualStyleTag): Ditto
628         (WebCore::HTMLParser::isAffectedByResidualStyle): Ditto
629         * html/HTMLSelectElement.cpp:
630         (WebCore::HTMLSelectElement::type): Ditto
631         * html/HTMLTextAreaElement.cpp:
632         (WebCore::HTMLTextAreaElement::type): Ditto
633         * inspector/InspectorController.cpp:
634         (WebCore::platform): Ditto
635         * inspector/JavaScriptDebugServer.cpp:
636         (WebCore::JavaScriptDebugServer::shared): Ditto
637         * inspector/JavaScriptProfile.cpp:
638         (WebCore::profileCache): Ditto
639         * inspector/JavaScriptProfileNode.cpp:
640         (WebCore::profileNodeCache): Ditto
641         * loader/FrameLoader.cpp:
642         (WebCore::localSchemes): Ditto
643         * loader/appcache/ApplicationCacheStorage.cpp:
644         (WebCore::cacheStorage): Ditto
645         * loader/archive/ArchiveFactory.cpp:
646         (WebCore::archiveMIMETypes): Ditto
647         * loader/icon/IconDatabase.cpp:
648         (WebCore::IconDatabase::defaultDatabaseFilename): Ditto
649         * page/EventHandler.cpp:
650         (WebCore::EventHandler::dragState): Ditto
651         * page/Frame.cpp:
652         (WebCore::createRegExpForLabels): Ditto
653         (WebCore::keepAliveSet): Ditto
654         * page/Page.cpp:
655         (WebCore::Page::groupName): Ditto
656         * page/SecurityOrigin.cpp:
657         (WebCore::isDefaultPortForProtocol): Ditto
658         (WebCore::SecurityOrigin::databaseIdentifier): Ditto
659         * page/mac/FrameMac.mm:
660         (WebCore::regExpForLabels): Ditto
661         * platform/KURL.cpp:
662         (WebCore::blankURL): Ditto
663         * platform/graphics/FontCache.cpp:
664         (WebCore::alternateFamilyName): Ditto
665         * platform/graphics/mac/FontCacheMac.mm:
666         (WebCore::FontCache::getSimilarFontPlatformData): Ditto
667         (WebCore::FontCache::getLastResortFallbackFont): Ditto
668         * platform/mac/ScrollbarThemeMac.mm:
669         (WebCore::ScrollbarTheme::nativeTheme): Ditto
670         * platform/mac/ThemeMac.mm:
671         (WebCore::platformTheme): Ditto
672         * platform/mac/ThreadCheck.mm:
673         (WebCoreReportThreadViolation): Ditto
674         * platform/network/NetworkStateNotifier.cpp:
675         (WebCore::networkStateNotifier): Ditto
676         * platform/network/mac/FormDataStreamMac.mm:
677         (WebCore::getStreamFormDataMap): Ditto
678         (WebCore::getStreamResourceHandleMap): Ditto
679         * platform/network/mac/ResourceResponseMac.mm:
680         (WebCore::ResourceResponse::platformLazyInit): Ditto
681         * platform/text/TextEncoding.cpp:
682         (WebCore::TextEncoding::isJapanese): Ditto
683         * rendering/RenderBlock.cpp:
684         (WebCore::continuationOutlineTable): Ditto
685         * rendering/RenderCounter.cpp:
686         (WebCore::counterMaps): Ditto
687         * rendering/RenderFlexibleBox.cpp:
688         (WebCore::RenderFlexibleBox::layoutVerticalBox): Ditto
689         * rendering/RenderListItem.cpp:
690         (WebCore::RenderListItem::markerText): Ditto
691         * rendering/RenderScrollbarTheme.cpp:
692         (WebCore::RenderScrollbarTheme::renderScrollbarTheme): Ditto
693         * rendering/RenderThemeMac.mm:
694         (WebCore::RenderThemeMac::systemFont): Ditto
695         * rendering/bidi.cpp:
696         (WebCore::RenderBlock::checkLinesForTextOverflow): Ditto
697         * rendering/style/RenderStyle.cpp:
698         (WebCore::RenderStyle::initialDashboardRegions): Ditto
699         (WebCore::RenderStyle::noneDashboardRegions): Ditto
700         * storage/LocalStorage.cpp:
701         (WebCore::localStorageMap): Ditto
702         * svg/SVGAnimateMotionElement.cpp:
703         (WebCore::SVGAnimateMotionElement::rotateMode): Ditto
704         * svg/SVGAnimationElement.cpp:
705         (WebCore::SVGAnimationElement::calcMode): Ditto
706         (WebCore::SVGAnimationElement::attributeType): Ditto
707         (WebCore::SVGAnimationElement::isAdditive): Ditto
708         (WebCore::SVGAnimationElement::isAccumulated): Ditto
709         * svg/SVGLangSpace.cpp:
710         (WebCore::SVGLangSpace::xmlspace): Ditto
711         * svg/SVGSVGElement.cpp:
712         (WebCore::SVGSVGElement::contentScriptType): Ditto
713         (WebCore::SVGSVGElement::contentStyleType): Ditto
714         * svg/SVGStyleElement.cpp:
715         (WebCore::SVGStyleElement::type): Ditto
716         (WebCore::SVGStyleElement::media): Ditto
717         * svg/SVGTextContentElement.cpp:
718         (WebCore::SVGTextContentElement::parseMappedAttribute): Ditto
719         * svg/animation/SVGSMILElement.cpp:
720         (WebCore::SVGSMILElement::parseClockValue): Ditto
721         (WebCore::SVGSMILElement::restart): Ditto
722         (WebCore::SVGSMILElement::fill): Ditto
723         (WebCore::SVGSMILElement::repeatCount): Ditto
724         (WebCore::SVGSMILElement::notifyDependentsIntervalChanged): Ditto
725         * svg/graphics/SVGResource.cpp:
726         (WebCore::clientMap): Ditto
727         * svg/graphics/SVGResourceMarker.cpp:
728         (WebCore::SVGResourceMarker::draw): Ditto
729         * xml/XMLHttpRequest.cpp:
730         (WebCore::preflightResultCache): Ditto
731         (WebCore::isSafeRequestHeader): Ditto
732         (WebCore::isOnAccessControlResponseHeaderWhitelist): Ditto
733         * xml/XPathExpressionNode.cpp:
734         (WebCore::XPath::Expression::evaluationContext): Ditto
735         * xml/XPathParser.cpp:
736         (WebCore::XPath::isAxisName): Ditto
737         (WebCore::XPath::isNodeTypeName): Ditto
738         * xml/XPathValue.cpp:
739         (WebCore::XPath::Value::toNodeSet): Ditto
740
741 2008-11-06  Tor Arne Vestbø  <tavestbo@trolltech.com>
742
743         Rubber-stamped by Simon Hausmann.
744
745         Remove a bunch of unused methods in the Qt media element implementation
746
747         * platform/graphics/qt/MediaPlayerPrivatePhonon.cpp:
748         (WebCore::MediaPlayerPrivate::MediaPlayerPrivate):
749         * platform/graphics/qt/MediaPlayerPrivatePhonon.h:
750
751 2008-11-05  Simon Fraser  <simon.fraser@apple.com>
752
753         Reviewed by Dave Hyatt
754
755         https://bugs.webkit.org/show_bug.cgi?id=21870
756         
757         Implement absoluteToLocal() to convert a point from absolute
758         to local coordinates, optionally taking transforms into account.
759         
760         Use this to set offsetX/offsetY in mouse events, thus fixing
761         offsetX/offsetY in events on elements with transforms.
762
763         Test: fast/events/offsetX-offsetY.html
764
765         * dom/MouseRelatedEvent.cpp:
766         (WebCore::MouseRelatedEvent::receivedTarget):
767         * rendering/RenderBox.cpp:
768         (WebCore::RenderBox::localToAbsolute):
769         (WebCore::RenderBox::absoluteToLocal):
770         (WebCore::RenderBox::offsetFromContainer):
771         * rendering/RenderBox.h:
772         * rendering/RenderObject.cpp:
773         (WebCore::RenderObject::absoluteToLocal):
774         * rendering/RenderObject.h:
775         * rendering/RenderTableCell.cpp:
776         (WebCore::RenderTableCell::localToAbsolute):
777         (WebCore::RenderTableCell::absoluteToLocal):
778         * rendering/RenderTableCell.h:
779         * rendering/RenderView.cpp:
780         (WebCore::RenderView::absoluteToLocal):
781         * rendering/RenderView.h:
782
783 2008-11-06  Alp Toker  <alp@nuanti.com>
784
785         Reviewed by Cameron Zwarich.
786
787         https://bugs.webkit.org/show_bug.cgi?id=22067
788         [GTK] Sun Java plugin segfaults at PluginPackage::createPackage()
789
790         null-check symbols loaded from plugin modules, initialize the function
791         table (like Win already does) and update it with the latest
792         additions. Adjust whitespace for easy diff'ing with the Win port code
793         from which it was forked.
794
795         This fixes crashes with libnspr4.so and any other plugins that don't
796         provide the symbols we expect.
797
798         * plugins/gtk/PluginPackageGtk.cpp:
799         (WebCore::PluginPackage::fetchInfo):
800         (WebCore::PluginPackage::load):
801
802 2008-11-06  Kristian Amlie  <kristian.amlie@nokia.com>
803
804         Reviewed by Simon Hausmann.
805
806         Removed dead (and broken) code from an ancient Symbian port.
807
808         * config.h:
809         * platform/text/AtomicString.h:
810         * platform/text/PlatformString.h:
811
812 2008-11-06  Kristian Amlie  <kristian.amlie@nokia.com>
813
814         Reviewed by Simon Hausmann.
815
816         Use QLibrary as PlatformModule when compiling with Qt for S60.
817
818         * platform/FileSystem.h:
819
820 2008-11-06  Kristian Amlie  <kristian.amlie@nokia.com>
821
822         Reviewed by Simon Hausmann.
823
824         Compile fix for Symbian.
825         The snprintf function is defined in stdio.h, the inclusion
826         of snprintf.h inside this PLATFORM(SYMBIAN) block does not
827         compile.
828
829         * config.h:
830
831 2008-11-06  Kristian Amlie  <kristian.amlie@nokia.com>
832
833         Reviewed by Simon Hausmann.
834
835         Disable webkit plugins for Symbian.
836
837         * WebCore.pro:
838
839 2008-11-06  Tor Arne Vestbø  <tavestbo@trolltech.com>
840
841         Fix build break in debug mode when XSLT is not enabled
842
843         * loader/Cache.cpp:
844         (WebCore::Cache::dumpStats):
845
846 2008-11-06  Tor Arne Vestbø  <tavestbo@trolltech.com>
847
848         Reviewed by Simon Hausmann.
849
850         Repaint video on UpdateRequest to prevent recursive painting
851
852         Calling QWidget::render() to update the video generates a paint
853         event that's then picked up by the event filter once more :(
854
855         We're really only interested in updates from Phonon, which we
856         get through the UpdateRequest for each new frame.
857
858         * platform/graphics/qt/MediaPlayerPrivatePhonon.cpp:
859         (WebCore::MediaPlayerPrivate::eventFilter):
860
861 2008-11-06  Cameron Zwarich  <zwarich@apple.com>
862
863         Not reviewed.
864
865         Fix the WebCore build for some platforms by changing build scripts to
866         account for the recent move of the create_hash_table script from the kjs
867         subdirectory of JavaScriptCore to the root directory.
868
869         * WebCore.pro:
870         * make-generated-sources.sh:
871
872 2008-11-06  Cameron Zwarich  <zwarich@apple.com>
873
874         Not reviewed.
875
876         Fix a case-sensitivity issue in Mac forwarding headers. Strangely
877         enough, this does not always cause the build to break, even with a
878         case-sensitive filesystem.
879
880         * ForwardingHeaders/runtime/Interpreter.h:
881
882 2008-11-05  Alexey Proskuryakov  <ap@webkit.org>
883
884         Reviewed by Maciej Stachowiak.
885
886         https://bugs.webkit.org/show_bug.cgi?id=22083
887         MessageEvents cannot be used across threads
888
889         * dom/Event.idl:
890         * dom/MessageEvent.idl:
891         Add a NoStaticTables attribute - MessageEvent is used in worker threads, so static tables
892         won't work.
893
894         * dom/MessagePort.cpp:
895         (WebCore::MessagePort::EventData::EventData):
896         (WebCore::MessagePort::EventData::~EventData):
897         (WebCore::MessagePort::clone):
898         (WebCore::MessagePort::postMessage):
899         (WebCore::MessagePort::startConversation):
900         (WebCore::MessagePort::dispatchMessages):
901         * dom/MessagePort.h:
902         Don't create a MessageEvent until dispatch time - messages can be posted across threads,
903         but MessageEvents are tied to the thread that they were created in.
904
905 2008-11-05  Alexey Proskuryakov  <ap@webkit.org>
906
907         Reviewed by Darin Adler.
908
909         https://bugs.webkit.org/show_bug.cgi?id=22066
910         Implement Worker global object
911
912         * DerivedSources.make: Added WorkerLocation IDL and JSWorkerContext lookup table.
913
914         * WebCore.xcodeproj/project.pbxproj: Only adding files to Mac project for now, as Worker
915         support is still disabled by default.
916
917         * bindings/js/JSDOMGlobalObject.cpp: (WebCore::toJSDOMGlobalObject): Implemented Worker case.
918
919         * bindings/js/JSMessageChannelConstructor.cpp:
920         (WebCore::JSMessageChannelConstructor::JSMessageChannelConstructor): Ditto.
921
922         * bindings/js/JSWorkerContext.cpp: Added.
923         * bindings/js/JSWorkerContext.h: Added.
924         * bindings/js/WorkerScriptController.cpp: Added.
925         * bindings/js/WorkerScriptController.h: Added.
926         * dom/WorkerContext.cpp: Added.
927         * dom/WorkerContext.h: Added.
928         Added an implementation of worker contexts.
929
930         * dom/DedicatedWorker.cpp:
931         (WebCore::DedicatedWorker::startLoad): Fixed a lifetime bug I saw on my tests.
932         (WebCore::DedicatedWorker::notifyFinished): Create a thread. Currently, object ownership
933         and lifetime is not clear at all.
934
935         * dom/WorkerLocation.cpp: Added.
936         * dom/WorkerLocation.h: Added.
937         * dom/WorkerLocation.idl: Added.
938         Added WorkerLocation, which is one of the objects available to workers.
939
940         * dom/WorkerThread.cpp: Added.
941         (WebCore::WorkerThread::WorkerThread):
942         (WebCore::WorkerThread::start):
943         (WebCore::WorkerThread::workerThreadStart):
944         (WebCore::WorkerThread::workerThread):
945         * dom/WorkerThread.h: Added.
946         (WebCore::WorkerThread::create):
947         Run some code in a worker thread (no message loop yet).
948
949 2008-11-05  Antti Koivisto  <antti@apple.com>
950
951         Reviewed by Dan Bernstein.
952         
953         https://bugs.webkit.org/show_bug.cgi?id=22093
954         Don't keep decoded stylesheet data in cache
955         
956         <rdar://problem/6343588>
957
958         Don't keep decoded stylesheet string around in the cache. There are no sharing benefits and
959         performance benefits are negligible (no measured PLT impact). Reduces memory consumption of
960         style sheet data in cache by 2/3 in common case.  
961
962         * loader/CachedCSSStyleSheet.cpp:
963         (WebCore::CachedCSSStyleSheet::sheetText):
964         (WebCore::CachedCSSStyleSheet::data):
965         * loader/CachedCSSStyleSheet.h:
966
967 2008-11-05  David Kilzer  <ddkilzer@apple.com>
968
969         Bug 21596: WebCore::Cache should use parsed Pragma and Cache-Control headers
970
971         <https://bugs.webkit.org/show_bug.cgi?id=21596>
972
973         Reviewed by Antti.
974
975         This patch adds real parsing for Pragma and Cache-Control headers
976         based on RFC 2616, Sections 2, 14.9 and 14.32.  It also adds some
977         new String and StringImpl methods to assist with the parsing.
978
979         * loader/Cache.cpp:
980         (WebCore::Cache::dumpStats): Added.  Convenience method for dumping
981         stats outside of Safari.
982         * loader/Cache.h: Declared dumpStats().
983
984         * loader/CachedResource.cpp:
985         (WebCore::CachedResource::mustRevalidate): Updated to use
986         ResourceResponseBase::cacheControlDirectives() instead of substring
987         matching of the entire Cache-Control header.
988
989         * loader/loader.cpp:
990         (WebCore::Loader::Host::didReceiveResponse): Used the local
991         'resource' variable instead of 'request->cachedResource()'.
992
993         * platform/network/ResourceResponseBase.cpp:
994         (WebCore::ResourceResponseBase::setHTTPHeaderField): Set
995         m_haveParsedCacheControlHeader to false when a "Cache-Control"
996         header is set.  Ditto for m_haveParsedPragmaHeader and "Pragma".
997         (WebCore::ResourceResponseBase::parsePragmaDirectives): Added.
998         Provides parsed Pragma header directives.
999         (WebCore::ResourceResponseBase::parseCacheControlDirectives): Added.
1000         Provides parsed Cache-Control header directives.
1001         (WebCore::isCacheHeaderSeparator): Added.  Returns true if a
1002         character is a separator character per RFC 2616, Section 2.2, else
1003         returns false.
1004         (WebCore::isControlCharacter): Added.  Returns true if a character
1005         is a control character per RFC 2616 Section 2.2, else returns false.
1006         (WebCore::trimToNextSeparator): Added.  Returns a string truncated
1007         at the first separator character per isCacheHeaderSeparator().
1008         (WebCore::parseCacheHeader): Added.  This is the main parsing
1009         routine for both Cache-Control and Pragma headers.
1010         (WebCore::parseCacheControlDirectiveValues): Added.  This splits
1011         certain Cache-Control directive values into a vector of strings.
1012         * platform/network/ResourceResponseBase.h:
1013         (WebCore::CacheControlDirectiveMap): Added.  Typedef for a parsed
1014         Cache-Control header.
1015         (WebCore::PragmaDirectiveMap): Added.  Typedef for a parsed Pragma
1016         header.
1017         (WebCore::ResourceResponseBase::parsePragmaDirectives): Added
1018         declaration.
1019         (WebCore::ResourceResponseBase::parseCacheControlDirectives): Ditto.
1020         (WebCore::ResourceResponseBase::m_haveParsedCacheControlHeader):
1021         Added.  Boolean to describe when the "Cache-Control" header needs to
1022         be reparsed.
1023         (WebCore::ResourceResponseBase::m_haveParsedPragmaHeader):  Added.
1024         Boolean to describe when the "Pragma" header needs to be reparsed.
1025         (WebCore::ResourceResponseBase::m_cacheControlDirectiveMap): Added.
1026         Cached map to hold parsed "Cache-Control" headers.
1027         (WebCore::ResourceResponseBase::m_pragmaDirectiveMap): Added.
1028         Cached map to hold parsed "Pragma" headers.
1029
1030         * platform/text/PlatformString.h:
1031         (WebCore::String::find): Added.  Returns the first match based on
1032         the character-matching function pointer passed in.
1033         (WebCore::String::removeCharacters): Added declaration.
1034         (WebCore::find): Added.  Inline method that takes a character-
1035         matching function pointer.  Called by StringImpl::find().
1036         * platform/text/String.cpp:
1037         (WebCore::String::removeCharacters): Added.  Calls
1038         StringImpl::removeCharacters().
1039         * platform/text/StringImpl.cpp:
1040         (WebCore::StringImpl::removeCharacters): Added.  Returns a string
1041         with all characters removed that match the character-matching
1042         function pointer passed in.  If there is no change to the string, it
1043         returns itself.  Based heavily on StringImpl::simplifyWhitespace().
1044         (WebCore::StringImpl::find): Added.  Calls WebCore::find().
1045         * platform/text/StringImpl.h:
1046         (WebCore::FindMatchFunctionPtr): Added.  Typedef for a character-
1047         matching function pointer.
1048         (WebCore::StringImpl::removeCharacters): Added declaration.
1049         (WebCore::StringImpl::find): Ditto.
1050
1051 2008-11-05  Justin Garcia  <justin.garcia@apple.com>
1052
1053         Reviewed by Beth Dakin.
1054
1055         <rdar://problem/5480736> In Mail and Gmail, copied indented text pastes with line break
1056         
1057         As a rule, we don't allow merges out of blockquotes.  In the bug, we are inserting a text node 
1058         between two blockquotes.  Because the start merge moves the text node into a blockquote, when we
1059         determine whether or not we should do the end merge, it incorrectly appears as though the end merge 
1060         is merging out of a blockquote.  The fix is to determine whether or not we should do the end merge
1061         before we do the start merge, so that the start merge doesn't effect our decision.
1062
1063         * editing/ReplaceSelectionCommand.cpp:
1064         (WebCore::ReplaceSelectionCommand::ReplaceSelectionCommand): Initialize the new boolean.
1065         (WebCore::ReplaceSelectionCommand::mergeEndIfNeeded): Moved code from doApply() here for clarity.
1066         (WebCore::ReplaceSelectionCommand::doApply): Set m_shouldMergeEnd before we do the start merge.
1067         * editing/ReplaceSelectionCommand.h: Added m_shouldMergeEnd.
1068
1069 2008-11-05  Cameron Zwarich  <zwarich@apple.com>
1070
1071         Not reviewed.
1072
1073         Speculatively fix the Windows build, even though these changes may not
1074         actually matter for anything in the build, because the Windows bots are
1075         behind.
1076
1077         * WebCore.vcproj/WebCore.vcproj:
1078
1079 2008-11-05  Cameron Zwarich  <zwarich@apple.com>
1080
1081         Not reviewed.
1082
1083         Fix the Qt build.
1084
1085         * bridge/qt/qt_class.cpp:
1086         * bridge/qt/qt_runtime.h:
1087
1088 2008-11-05  Cameron Zwarich  <zwarich@apple.com>
1089
1090         Rubber-stamped by Sam Weinig.
1091
1092         Move more files to the runtime subdirectory of JavaScriptCore.
1093
1094         * ForwardingHeaders/kjs/collector.h: Removed.
1095         * ForwardingHeaders/kjs/completion.h: Removed.
1096         * ForwardingHeaders/kjs/identifier.h: Removed.
1097         * ForwardingHeaders/kjs/interpreter.h: Removed.
1098         * ForwardingHeaders/kjs/lookup.h: Removed.
1099         * ForwardingHeaders/kjs/operations.h: Removed.
1100         * ForwardingHeaders/kjs/protect.h: Removed.
1101         * ForwardingHeaders/kjs/ustring.h: Removed.
1102         * ForwardingHeaders/runtime/Collector.h: Copied from ForwardingHeaders/kjs/collector.h.
1103         * ForwardingHeaders/runtime/Completion.h: Copied from ForwardingHeaders/kjs/completion.h.
1104         * ForwardingHeaders/runtime/Identifier.h: Copied from ForwardingHeaders/kjs/identifier.h.
1105         * ForwardingHeaders/runtime/Interpreter.h: Copied from ForwardingHeaders/kjs/interpreter.h.
1106         * ForwardingHeaders/runtime/Lookup.h: Copied from ForwardingHeaders/kjs/lookup.h.
1107         * ForwardingHeaders/runtime/Operations.h: Copied from ForwardingHeaders/kjs/operations.h.
1108         * ForwardingHeaders/runtime/Protect.h: Copied from ForwardingHeaders/kjs/protect.h.
1109         * ForwardingHeaders/runtime/UString.h: Copied from ForwardingHeaders/kjs/ustring.h.
1110         * bindings/js/GCController.cpp:
1111         * bindings/js/JSCustomPositionCallback.h:
1112         * bindings/js/JSCustomPositionErrorCallback.h:
1113         * bindings/js/JSCustomSQLStatementCallback.h:
1114         * bindings/js/JSCustomSQLStatementErrorCallback.h:
1115         * bindings/js/JSCustomSQLTransactionErrorCallback.h:
1116         * bindings/js/JSCustomVoidCallback.h:
1117         * bindings/js/JSDOMBinding.h:
1118         * bindings/js/JSDOMWindowBase.h:
1119         * bindings/js/JSEventListener.h:
1120         * bindings/js/ScheduledAction.h:
1121         * bindings/js/ScriptController.cpp:
1122         * bindings/js/ScriptController.h:
1123         * bindings/objc/WebScriptObject.mm:
1124         * bindings/scripts/CodeGeneratorJS.pm:
1125         * bridge/NP_jsobject.cpp:
1126         * bridge/c/c_class.cpp:
1127         * bridge/jni/jni_class.cpp:
1128         * bridge/jni/jni_jsobject.mm:
1129         * bridge/npruntime.cpp:
1130         * bridge/runtime_root.h:
1131         * history/CachedPage.h:
1132         * html/CanvasRenderingContext2D.cpp:
1133         * html/HTMLCanvasElement.cpp:
1134         * inspector/InspectorController.cpp:
1135         * inspector/JavaScriptCallFrame.cpp:
1136         * page/Console.cpp:
1137         * page/Page.cpp:
1138         * platform/text/AtomicString.cpp:
1139         * platform/text/PlatformString.h:
1140
1141 2008-11-05  Sam Weinig  <sam@webkit.org>
1142
1143         Reviewed by Anders Carlsson.
1144
1145         Fix https://bugs.webkit.org/show_bug.cgi?id=22085
1146         The Plugin JS object should expose item() and namedItem() methods to match Firefox
1147
1148         * bindings/js/JSPluginCustom.cpp:
1149         (WebCore::JSPlugin::nameGetter):
1150         * plugins/Plugin.cpp:
1151         (WebCore::Plugin::namedItem):
1152         * plugins/Plugin.h:
1153         * plugins/Plugin.idl:
1154
1155 2008-11-05  Alexey Proskuryakov  <ap@webkit.org>
1156
1157         Reviewed by Maciej Stachowiak.
1158
1159         https://bugs.webkit.org/show_bug.cgi?id=21060
1160         Range#surroundContents incorrectly throws BAD_BOUNDARYPOINTS_ERR
1161
1162         Test: fast/dom/Range/surroundContents-check-boundary-points.html
1163
1164         * dom/Range.cpp: (WebCore::Range::surroundContents): Fix BAD_BOUNDARYPOINTS_ERR checks.
1165
1166 2008-11-05  Anders Carlsson  <andersca@apple.com>
1167
1168         Reviewed by Dan Bernstein.
1169
1170         Remove two global destructors from CoreTextController.
1171         
1172         * platform/graphics/mac/CoreTextController.cpp:
1173         (WebCore::CoreTextController::collectCoreTextRunsForCharacters):
1174
1175 2008-11-05  Darin Fisher  <darin@chromium.org>
1176
1177         Reviewed by Darin Adler.
1178
1179         CRASH at Scrollbar::invalidateRect due to null m_client
1180         https://bugs.webkit.org/show_bug.cgi?id=22080
1181
1182         * platform/Scrollbar.cpp:
1183         (WebCore::Scrollbar::isWindowActive):
1184         (WebCore::Scrollbar::invalidateRect):
1185
1186 2008-11-04  Sam Weinig  <sam@webkit.org>
1187
1188         Reviewed by Simon Hausmann.
1189
1190         Fix https://bugs.webkit.org/show_bug.cgi?id=21648
1191         navigator.mimeTypes and navigator.plugins don't expose item and namedItem to JS
1192
1193         - Also adds constructors for Plugin, PluginArray, MimeType and MimeTypeArray.
1194
1195         * bindings/js/JSMimeTypeArrayCustom.cpp:
1196         (WebCore::JSMimeTypeArray::nameGetter):
1197         * bindings/js/JSPluginArrayCustom.cpp:
1198         (WebCore::JSPluginArray::nameGetter):
1199         * page/DOMWindow.idl:
1200         * plugins/MimeType.idl:
1201         * plugins/MimeTypeArray.cpp:
1202         (WebCore::MimeTypeArray::namedItem):
1203         * plugins/MimeTypeArray.h:
1204         * plugins/MimeTypeArray.idl:
1205         * plugins/Plugin.idl:
1206         * plugins/PluginArray.cpp:
1207         (WebCore::PluginArray::namedItem):
1208         * plugins/PluginArray.h:
1209         * plugins/PluginArray.idl:
1210
1211 2008-11-05  Steve Falkenburg  <sfalken@apple.com>
1212
1213         Build fix.
1214
1215         * plugins/PluginPackage.cpp:
1216
1217 2008-11-05  Jeff Cook  <cookiecaper@gmail.com>
1218
1219         Reviewed by Simon Hausmann and Tor Arne.
1220
1221         Fix crash in the Qt port when unloading swfdec and Flash 10
1222         by reordering window destruction and plugin stop.
1223
1224         See https://bugs.webkit.org/show_bug.cgi?id=20779
1225
1226         * plugins/qt/PluginViewQt.cpp:
1227         (WebCore::PluginView::stop):
1228
1229 2008-11-05  Simon Hausmann  <hausmann@webkit.org>
1230
1231         Reviewed by Tor Arne Vestbø
1232
1233         Fix loading of Flash 10 in the Qt port by faking the toolkit to be Gtk.
1234
1235         Otherwise Flash refuses to load and function :(
1236
1237         * plugins/PluginPackage.cpp:
1238         (WebCore::PluginPackage::determineQuirks):
1239         * plugins/PluginQuirkSet.h:
1240         (WebCore::):
1241         * plugins/qt/PluginViewQt.cpp:
1242         (WebCore::PluginView::getValue):
1243
1244 2008-11-05  Simon Hausmann  <hausmann@webkit.org>
1245
1246         Reviewed by Tor Arne Vestbø
1247
1248         Unify determineQuirks between the Qt and the Gtk PluginPackage.
1249         Share the code for parsing the module version from the description.
1250         This is currently used to determine Flash based quirks.
1251
1252         * plugins/PluginPackage.cpp:
1253         (WebCore::PluginPackage::createPackage):
1254         (WebCore::PluginPackage::determineQuirks):
1255         (WebCore::PluginPackage::determineModuleVersionFromDescription):
1256         * plugins/PluginPackage.h:
1257         * plugins/gtk/PluginPackageGtk.cpp:
1258         (WebCore::PluginPackage::fetchInfo):
1259         * plugins/qt/PluginPackageQt.cpp:
1260         (WebCore::PluginPackage::fetchInfo):
1261
1262 2008-11-04  Cameron Zwarich  <zwarich@apple.com>
1263
1264         Rubber-stamped by Sam Weinig.
1265
1266         Move kjs/dtoa.h to the wtf subdirectory of JavaScriptCore.
1267
1268         * ForwardingHeaders/kjs/dtoa.h: Removed.
1269         * ForwardingHeaders/wtf/dtoa.h: Copied from ForwardingHeaders/kjs/dtoa.h.
1270         * css/CSSParser.cpp:
1271         * platform/text/String.cpp:
1272         * platform/text/StringImpl.cpp:
1273
1274 2008-11-04  Jonathan Haas  <myrdred@gmail.com>
1275
1276         Addiitonal tweaks and patch prep by Pamela Greene <pam@chromium.org>
1277
1278         Reviewed by Darin Adler.
1279
1280         Fixed an issue which could cause memory corruption using ToT libxml.
1281         See https://bugs.webkit.org/show_bug.cgi?id=15715
1282
1283         Test: fast/xsl/xslt-nested-stylesheets.xml
1284
1285         * xml/XSLImportRule.cpp:
1286         (WebCore::XSLImportRule::setXSLStyleSheet): Set parent rather than owner document
1287         * xml/XSLStyleSheet.cpp:
1288         (WebCore::XSLStyleSheet::XSLStyleSheet): Initialize m_parentStyleSheet
1289         (WebCore::XSLStyleSheet::parseString): Make all child stylesheets use parent's dictionary
1290         (WebCore::XSLStyleSheet::setParentStyleSheet): Added
1291         * xml/XSLStyleSheet.h: Added m_parentStyleSheet member
1292
1293 2008-11-04  Simon Fraser  <simon.fraser@apple.com>
1294
1295         No review.
1296
1297         Improved buid fix: include MathExtras.h to get roundf on all platforms.
1298
1299         * platform/graphics/FloatPoint.h:
1300
1301 2008-11-04  Brady Eidson  <beidson@apple.com>
1302
1303         Reviewed by John Sullivan
1304
1305         Add a simple "visited" method to HistoryItem for use by global history
1306
1307         * WebCore.base.exp:
1308
1309         * history/HistoryItem.cpp:
1310         (WebCore::HistoryItem::visited):  Update the title on the item, set last visited time,
1311           and bump the visit count.  All things that should happen when a url is visited again!
1312         * history/HistoryItem.h:
1313
1314 2008-11-04  Jan Michael Alonzo  <jmalonzo@webkit.org>
1315
1316         Build fix. Not reviewed.
1317
1318         * platform/graphics/FloatPoint.h: include math.h.
1319         reported by zdobersek in #webkit.
1320
1321 2008-11-04  Darin Fisher  <darin@chromium.org>
1322  
1323         Reviewed by Anders Carlsson.
1324  
1325         No need to clobber all ResourceRequest fields in FrameLoader::reload()
1326         https://bugs.webkit.org/show_bug.cgi?id=21949
1327  
1328         * loader/FrameLoader.cpp:
1329         (WebCore::FrameLoader::reload):
1330
1331 2008-11-04  Darin Adler  <darin@apple.com>
1332
1333         Reviewed by Tim Hatcher.
1334
1335         * storage/Database.cpp:
1336         (WebCore::databaseVersionKey): Tweaked formatting.
1337
1338 2008-11-03  Darin Adler  <darin@apple.com>
1339
1340         Reviewed by Tim Hatcher.
1341
1342         - https://bugs.webkit.org/show_bug.cgi?id=22061
1343           create script to check for exit-time destructors
1344
1345         * WebCore.xcodeproj/project.pbxproj: Added a script
1346         phase that runs the check-for-exit-time-destructors script.
1347
1348         * html/HTMLAttributeNames.in: Removed some unused attribute names.
1349
1350         * html/HTMLEmbedElement.cpp:
1351         (WebCore::HTMLEmbedElement::parseMappedAttribute): Removed code that
1352         sets the write-only m_pluginPage.
1353         * html/HTMLEmbedElement.h: Ditto.
1354
1355         * platform/mac/CursorMac.mm:
1356         (WebCore::leakNamedCursor): Changed to return a Cursor&.
1357         (WebCore::pointerCursor): Changed to leak an object to avoid an
1358         exit-time destructor.
1359         (WebCore::crossCursor): Ditto.
1360         (WebCore::handCursor): Ditto.
1361         (WebCore::moveCursor): Ditto.
1362         (WebCore::verticalTextCursor): Ditto.
1363         (WebCore::cellCursor): Ditto.
1364         (WebCore::contextMenuCursor): Ditto.
1365         (WebCore::aliasCursor): Ditto.
1366         (WebCore::zoomInCursor): Ditto.
1367         (WebCore::zoomOutCursor): Ditto.
1368         (WebCore::copyCursor): Ditto.
1369         (WebCore::noneCursor): Ditto.
1370         (WebCore::progressCursor): Ditto.
1371         (WebCore::noDropCursor): Ditto.
1372         (WebCore::notAllowedCursor): Ditto.
1373         (WebCore::iBeamCursor): Ditto.
1374         (WebCore::waitCursor): Ditto.
1375         (WebCore::helpCursor): Ditto.
1376         (WebCore::eastResizeCursor): Ditto.
1377         (WebCore::northResizeCursor): Ditto.
1378         (WebCore::northEastResizeCursor): Ditto.
1379         (WebCore::northWestResizeCursor): Ditto.
1380         (WebCore::southResizeCursor): Ditto.
1381         (WebCore::southEastResizeCursor): Ditto.
1382         (WebCore::southWestResizeCursor): Ditto.
1383         (WebCore::westResizeCursor): Ditto.
1384         (WebCore::northSouthResizeCursor): Ditto.
1385         (WebCore::eastWestResizeCursor): Ditto.
1386         (WebCore::northEastSouthWestResizeCursor): Ditto.
1387         (WebCore::northWestSouthEastResizeCursor): Ditto.
1388         (WebCore::columnResizeCursor): Ditto.
1389         (WebCore::rowResizeCursor): Ditto.
1390         (WebCore::grabCursor): Ditto.
1391         (WebCore::grabbingCursor): Ditto.
1392
1393         * storage/Database.cpp:
1394         (WebCore::guidMutex): Changed to leak an object to avoid an
1395         exit-time destructor. Also added a comment explaining why it's
1396         thread safe.
1397         (WebCore::guidToVersionMap): Ditto.
1398         (WebCore::guidToDatabaseMap): Ditto.
1399         (WebCore::Database::databaseInfoTableName): Ditto.
1400         (WebCore::databaseVersionKey): Ditto.
1401         (WebCore::Database::getVersionFromDatabase): Ditto.
1402         (WebCore::Database::setVersionInDatabase): Ditto.
1403         (WebCore::guidForOriginAndName): Ditto.
1404         * storage/DatabaseTracker.cpp:
1405         (WebCore::DatabaseTracker::tracker): Ditto.
1406         (WebCore::notificationMutex): Ditto.
1407         (WebCore::notificationQueue): Ditto.
1408         (WebCore::DatabaseTracker::notifyDatabasesChanged): Ditto.
1409
1410 2008-11-04  Simon Fraser  <simon.fraser@apple.com>
1411
1412         Reviewed by Dave Hyatt
1413
1414         https://bugs.webkit.org/show_bug.cgi?id=21941
1415
1416         Rename absolutePosition() to localToAbsolute(), and add the ability
1417         to optionally take transforms into account (which will eventually be the
1418         default behavior).
1419
1420         * WebCore.base.exp:
1421         * WebCore.xcodeproj/project.pbxproj:
1422         * dom/ContainerNode.cpp:
1423         (WebCore::ContainerNode::getUpperLeftCorner):
1424         (WebCore::ContainerNode::getLowerRightCorner):
1425         (WebCore::ContainerNode::getRect):
1426         * dom/ContainerNode.h:
1427         * dom/MouseRelatedEvent.cpp:
1428         (WebCore::MouseRelatedEvent::receivedTarget):
1429         * dom/Node.cpp:
1430         (WebCore::Node::getRect):
1431         * editing/SelectionController.cpp:
1432         (WebCore::SelectionController::layout):
1433         (WebCore::SelectionController::caretRect):
1434         * editing/visible_units.cpp:
1435         (WebCore::previousLinePosition):
1436         (WebCore::nextLinePosition):
1437         * html/HTMLAnchorElement.cpp:
1438         (WebCore::HTMLAnchorElement::isKeyboardFocusable):
1439         (WebCore::HTMLAnchorElement::defaultEventHandler):
1440         * html/HTMLAreaElement.cpp:
1441         (WebCore::HTMLAreaElement::getRect):
1442         * html/HTMLImageElement.cpp:
1443         (WebCore::HTMLImageElement::x):
1444         (WebCore::HTMLImageElement::y):
1445         * html/HTMLInputElement.cpp:
1446         (WebCore::HTMLInputElement::defaultEventHandler):
1447         * html/HTMLInputElement.h:
1448         * page/AccessibilityRenderObject.cpp:
1449         (WebCore::AccessibilityRenderObject::boundingBoxRect):
1450         * page/EventHandler.cpp:
1451         (WebCore::EventHandler::handleDrag):
1452         * platform/graphics/FloatPoint.h:
1453         (WebCore::roundedIntPoint):
1454         * platform/graphics/IntSize.h:
1455         (WebCore::IntSize::expand):
1456         * rendering/LayoutState.cpp:
1457         (WebCore::LayoutState::LayoutState):
1458         * rendering/RenderBlock.cpp:
1459         (WebCore::RenderBlock::layoutBlock):
1460         (WebCore::RenderBlock::paintObject):
1461         (WebCore::RenderBlock::selectionGapRects):
1462         (WebCore::RenderBlock::fillBlockSelectionGaps):
1463         (WebCore::RenderBlock::nodeAtPoint):
1464         (WebCore::RenderBlock::positionForCoordinates):
1465         * rendering/RenderBox.cpp:
1466         (WebCore::RenderBox::localToAbsolute):
1467         (WebCore::RenderBox::computeAbsoluteRepaintRect):
1468         (WebCore::RenderBox::caretRect):
1469         * rendering/RenderBox.h:
1470         (WebCore::RenderBox::relativePositionOffset):
1471         * rendering/RenderContainer.cpp:
1472         (WebCore::RenderContainer::addLineBoxRects):
1473         * rendering/RenderFlow.cpp:
1474         (WebCore::RenderFlow::absoluteClippedOverflowRect):
1475         (WebCore::RenderFlow::caretRect):
1476         (WebCore::RenderFlow::addFocusRingRects):
1477         * rendering/RenderLayer.cpp:
1478         (WebCore::RenderLayer::updateLayerPosition):
1479         (WebCore::RenderLayer::convertToLayerCoords):
1480         (WebCore::RenderLayer::addScrolledContentOffset):
1481         (WebCore::RenderLayer::subtractScrolledContentOffset):
1482         (WebCore::RenderLayer::scrollRectToVisible):
1483         * rendering/RenderLayer.h:
1484         (WebCore::RenderLayer::scrolledContentOffset):
1485         (WebCore::RenderLayer::relativePositionOffset):
1486         * rendering/RenderListBox.cpp:
1487         (WebCore::RenderListBox::panScroll):
1488         (WebCore::RenderListBox::scrollToward):
1489         * rendering/RenderListMarker.cpp:
1490         (WebCore::RenderListMarker::selectionRect):
1491         * rendering/RenderObject.cpp:
1492         (WebCore::RenderObject::absoluteBoundingBoxRect):
1493         (WebCore::RenderObject::computeAbsoluteRepaintRect):
1494         (WebCore::RenderObject::localToAbsolute):
1495         (WebCore::RenderObject::addDashboardRegions):
1496         (WebCore::RenderObject::absoluteContentBox):
1497         (WebCore::RenderObject::absoluteOutlineBox):
1498         * rendering/RenderObject.h:
1499         (WebCore::RenderObject::localToAbsoluteForContent):
1500         * rendering/RenderPart.cpp:
1501         (WebCore::RenderPart::updateWidgetPosition):
1502         * rendering/RenderReplaced.cpp:
1503         (WebCore::RenderReplaced::selectionRect):
1504         * rendering/RenderSVGInlineText.cpp:
1505         (WebCore::RenderSVGInlineText::computeAbsoluteRectForRange):
1506         * rendering/RenderSVGText.cpp:
1507         (WebCore::RenderSVGText::absoluteRects):
1508         * rendering/RenderTableCell.cpp:
1509         (WebCore::RenderTableCell::localToAbsolute):
1510         * rendering/RenderTableCell.h:
1511         * rendering/RenderText.cpp:
1512         (WebCore::RenderText::addLineBoxRects):
1513         (WebCore::RenderText::caretRect):
1514         (WebCore::RenderText::selectionRect):
1515         * rendering/RenderVideo.cpp:
1516         (WebCore::RenderVideo::updatePlayer):
1517         * rendering/RenderView.cpp:
1518         (WebCore::RenderView::localToAbsolute):
1519         * rendering/RenderView.h:
1520         * rendering/RenderWidget.cpp:
1521         (WebCore::RenderWidget::updateWidgetPosition):
1522         * svg/SVGSVGElement.cpp:
1523         (WebCore::SVGSVGElement::getScreenCTM):
1524
1525 2008-11-03  Yael Aharon  <yael.aharon@nokia.com>
1526
1527         Reviewed by Simon Hausmann.
1528
1529         Add methods for getting and setting user data on History Item.
1530         This change is limited to QT port only. Tests were added in
1531         the patch for https://bugs.webkit.org/show_bug.cgi?id=21864.
1532
1533         Minor change by Simon: made the functions inline and added a missing
1534         const.
1535
1536         * history/HistoryItem.h:
1537
1538 2008-11-01  Alexey Proskuryakov  <ap@webkit.org>
1539
1540         Reviewed by Darin Adler.
1541
1542         https://bugs.webkit.org/show_bug.cgi?id=22030
1543         Make EventNames usable from multiple threads
1544
1545         * platform/text/AtomicString.cpp:
1546         (WebCore::stringTable):
1547         (WebCore::AtomicString::add):
1548         (WebCore::AtomicString::remove):
1549         (WebCore::AtomicString::find):
1550         (WebCore::AtomicString::init):
1551         * platform/text/AtomicString.h:
1552         Atomic string table is now per-thread. Individual strings cannot be shared between threads,
1553         so global AtomicString constants cannot be used from threads other than the main one.
1554
1555         * dom/EventNames.cpp:
1556         (WebCore::EventNames::EventNames):
1557         (WebCore::eventNames):
1558         (WebCore::EventNames::init):
1559         * dom/EventNames.h:
1560         Made EventNames a ThreadSpecific struct. Individual event names are now accessed as
1561         eventNames().fooEvent, not EventNames::fooEvent. This makes EventNames usable from all
1562         threads.
1563
1564         * WebCore.base.exp:
1565         * bindings/js/JSDOMWindowBase.cpp:
1566         * bindings/js/JSEventListener.cpp:
1567         * bindings/js/ScriptController.cpp:
1568         (WebCore::ScriptController::processingUserGesture):
1569         * dom/BeforeTextInsertedEvent.cpp:
1570         (WebCore::BeforeTextInsertedEvent::BeforeTextInsertedEvent):
1571         * dom/BeforeUnloadEvent.cpp:
1572         (WebCore::BeforeUnloadEvent::BeforeUnloadEvent):
1573         * dom/CharacterData.cpp:
1574         (WebCore::CharacterData::dispatchModifiedEvent):
1575         * dom/ContainerNode.cpp:
1576         (WebCore::dispatchChildInsertionEvents):
1577         (WebCore::dispatchChildRemovalEvents):
1578         * dom/DedicatedWorker.cpp:
1579         (WebCore::DedicatedWorker::dispatchErrorEvent):
1580         * dom/Document.cpp:
1581         (WebCore::Document::implicitClose):
1582         (WebCore::Document::setFocusedNode):
1583         (WebCore::Document::addListenerTypeIfNeeded):
1584         (WebCore::Document::removeWindowInlineEventListenerForType):
1585         (WebCore::Document::addWindowEventListener):
1586         (WebCore::Document::removeWindowEventListener):
1587         (WebCore::Document::finishedParsing):
1588         * dom/EventTargetNode.cpp:
1589         (WebCore::EventTargetNode::dispatchGenericEvent):
1590         (WebCore::EventTargetNode::dispatchSubtreeModifiedEvent):
1591         (WebCore::EventTargetNode::dispatchWindowEvent):
1592         (WebCore::EventTargetNode::dispatchUIEvent):
1593         (WebCore::EventTargetNode::dispatchSimulatedClick):
1594         (WebCore::EventTargetNode::dispatchMouseEvent):
1595         (WebCore::EventTargetNode::dispatchFocusEvent):
1596         (WebCore::EventTargetNode::dispatchBlurEvent):
1597         (WebCore::EventTargetNode::defaultEventHandler):
1598         (WebCore::EventTargetNode::on*): (multiple methods)
1599         (WebCore::EventTargetNode::setOn*): (multiple methods)
1600         * dom/KeyboardEvent.cpp:
1601         (WebCore::eventTypeForKeyboardEventType):
1602         (WebCore::KeyboardEvent::keyCode):
1603         (WebCore::KeyboardEvent::charCode):
1604         * dom/MessageEvent.cpp:
1605         (WebCore::MessageEvent::MessageEvent):
1606         * dom/MessagePort.cpp:
1607         (WebCore::MessagePort::dispatchMessages):
1608         (WebCore::MessagePort::dispatchCloseEvent):
1609         * dom/MouseEvent.cpp:
1610         (WebCore::MouseEvent::isDragEvent):
1611         (WebCore::MouseEvent::toElement):
1612         (WebCore::MouseEvent::fromElement):
1613         * dom/OverflowEvent.cpp:
1614         (WebCore::OverflowEvent::OverflowEvent):
1615         * dom/TextEvent.cpp:
1616         (WebCore::TextEvent::TextEvent):
1617         * dom/WebKitAnimationEvent.cpp:
1618         (WebCore::WebKitAnimationEvent::WebKitAnimationEvent):
1619         (WebCore::WebKitAnimationEvent::~WebKitAnimationEvent):
1620         (WebCore::WebKitAnimationEvent::initWebKitAnimationEvent):
1621         (WebCore::WebKitAnimationEvent::animationName):
1622         (WebCore::WebKitAnimationEvent::elapsedTime):
1623         * dom/WebKitTransitionEvent.cpp:
1624         (WebCore::WebKitTransitionEvent::WebKitTransitionEvent):
1625         (WebCore::WebKitTransitionEvent::~WebKitTransitionEvent):
1626         (WebCore::WebKitTransitionEvent::initWebKitTransitionEvent):
1627         (WebCore::WebKitTransitionEvent::propertyName):
1628         (WebCore::WebKitTransitionEvent::elapsedTime):
1629         * dom/WheelEvent.cpp:
1630         (WebCore::WheelEvent::WheelEvent):
1631         (WebCore::WheelEvent::initWheelEvent):
1632         * dom/XMLTokenizerLibxml2.cpp:
1633         * dom/XMLTokenizerQt.cpp:
1634         * editing/DeleteButton.cpp:
1635         (WebCore::DeleteButton::defaultEventHandler):
1636         * editing/EditCommand.cpp:
1637         * editing/Editor.cpp:
1638         (WebCore::Editor::canDHTMLCut):
1639         (WebCore::Editor::canDHTMLCopy):
1640         (WebCore::Editor::canDHTMLPaste):
1641         (WebCore::Editor::tryDHTMLCopy):
1642         (WebCore::Editor::tryDHTMLCut):
1643         (WebCore::Editor::tryDHTMLPaste):
1644         (WebCore::dispatchEditableContentChangedEvents):
1645         * editing/ReplaceSelectionCommand.cpp:
1646         (WebCore::ReplacementFragment::ReplacementFragment):
1647         * editing/SelectionController.cpp:
1648         (WebCore::SelectionController::setFocused):
1649         * html/HTMLAnchorElement.cpp:
1650         (WebCore::HTMLAnchorElement::defaultEventHandler):
1651         * html/HTMLBodyElement.cpp:
1652         (WebCore::HTMLBodyElement::parseMappedAttribute):
1653         * html/HTMLButtonElement.cpp:
1654         (WebCore::HTMLButtonElement::parseMappedAttribute):
1655         (WebCore::HTMLButtonElement::defaultEventHandler):
1656         * html/HTMLElement.cpp:
1657         (WebCore::HTMLElement::parseMappedAttribute):
1658         * html/HTMLFormControlElement.cpp:
1659         (WebCore::HTMLFormControlElement::onChange):
1660         * html/HTMLFormElement.cpp:
1661         (WebCore::HTMLFormElement::handleLocalEvents):
1662         (WebCore::HTMLFormElement::prepareSubmit):
1663         (WebCore::HTMLFormElement::reset):
1664         (WebCore::HTMLFormElement::parseMappedAttribute):
1665         * html/HTMLFrameElementBase.cpp:
1666         (WebCore::HTMLFrameElementBase::parseMappedAttribute):
1667         * html/HTMLFrameSetElement.cpp:
1668         (WebCore::HTMLFrameSetElement::parseMappedAttribute):
1669         * html/HTMLImageElement.cpp:
1670         (WebCore::HTMLImageElement::parseMappedAttribute):
1671         * html/HTMLImageLoader.cpp:
1672         (WebCore::HTMLImageLoader::dispatchLoadEvent):
1673         * html/HTMLInputElement.cpp:
1674         (WebCore::HTMLInputElement::parseMappedAttribute):
1675         (WebCore::HTMLInputElement::setValueFromRenderer):
1676         (WebCore::HTMLInputElement::preDispatchEventHandler):
1677         (WebCore::HTMLInputElement::postDispatchEventHandler):
1678         (WebCore::HTMLInputElement::defaultEventHandler):
1679         (WebCore::HTMLInputElement::onSearch):
1680         * html/HTMLLabelElement.cpp:
1681         (WebCore::HTMLLabelElement::defaultEventHandler):
1682         * html/HTMLMediaElement.cpp:
1683         (WebCore::HTMLMediaElement::load):
1684         (WebCore::HTMLMediaElement::mediaPlayerNetworkStateChanged):
1685         (WebCore::HTMLMediaElement::setReadyState):
1686         (WebCore::HTMLMediaElement::progressEventTimerFired):
1687         (WebCore::HTMLMediaElement::seek):
1688         (WebCore::HTMLMediaElement::setDefaultPlaybackRate):
1689         (WebCore::HTMLMediaElement::setPlaybackRate):
1690         (WebCore::HTMLMediaElement::play):
1691         (WebCore::HTMLMediaElement::pause):
1692         (WebCore::HTMLMediaElement::setVolume):
1693         (WebCore::HTMLMediaElement::setMuted):
1694         (WebCore::HTMLMediaElement::mediaPlayerTimeChanged):
1695         (WebCore::HTMLMediaElement::documentWillBecomeInactive):
1696         * html/HTMLObjectElement.cpp:
1697         (WebCore::HTMLObjectElement::parseMappedAttribute):
1698         * html/HTMLOptionElement.cpp:
1699         * html/HTMLScriptElement.cpp:
1700         (WebCore::HTMLScriptElement::parseMappedAttribute):
1701         (WebCore::HTMLScriptElement::dispatchLoadEvent):
1702         (WebCore::HTMLScriptElement::dispatchErrorEvent):
1703         * html/HTMLSelectElement.cpp:
1704         (WebCore::HTMLSelectElement::parseMappedAttribute):
1705         (WebCore::HTMLSelectElement::defaultEventHandler):
1706         (WebCore::HTMLSelectElement::menuListDefaultEventHandler):
1707         (WebCore::HTMLSelectElement::listBoxDefaultEventHandler):
1708         * html/HTMLTextAreaElement.cpp:
1709         (WebCore::HTMLTextAreaElement::parseMappedAttribute):
1710         (WebCore::HTMLTextAreaElement::defaultEventHandler):
1711         * html/HTMLTokenizer.cpp:
1712         (WebCore::HTMLTokenizer::notifyFinished):
1713         * loader/FrameLoader.cpp:
1714         (WebCore::FrameLoader::stopLoading):
1715         (WebCore::FrameLoader::canCachePage):
1716         * loader/ImageDocument.cpp:
1717         (WebCore::ImageEventListener::handleEvent):
1718         * loader/ImageLoader.cpp:
1719         * loader/MediaDocument.cpp:
1720         (WebCore::MediaDocument::defaultEventHandler):
1721         * loader/appcache/DOMApplicationCache.cpp:
1722         (WebCore::DOMApplicationCache::callCheckingListener):
1723         (WebCore::DOMApplicationCache::callErrorListener):
1724         (WebCore::DOMApplicationCache::callNoUpdateListener):
1725         (WebCore::DOMApplicationCache::callDownloadingListener):
1726         (WebCore::DOMApplicationCache::callProgressListener):
1727         (WebCore::DOMApplicationCache::callUpdateReadyListener):
1728         (WebCore::DOMApplicationCache::callCachedListener):
1729         * page/AccessibilityObject.cpp:
1730         * page/AccessibilityRenderObject.cpp:
1731         (WebCore::AccessibilityRenderObject::mouseButtonListener):
1732         * page/ContextMenuController.cpp:
1733         (WebCore::ContextMenuController::handleContextMenuEvent):
1734         * page/DOMWindow.cpp:
1735         (WebCore::DOMWindow::on*): (multiple methods)
1736         (WebCore::DOMWindow::setOn*): (multiple methods)
1737         * page/EventHandler.cpp:
1738         (WebCore::EventHandler::handleMousePressEvent):
1739         (WebCore::EventHandler::handleMouseDoubleClickEvent):
1740         (WebCore::EventHandler::handleMouseMoveEvent):
1741         (WebCore::EventHandler::handleMouseReleaseEvent):
1742         (WebCore::EventHandler::updateDragAndDrop):
1743         (WebCore::EventHandler::cancelDragAndDrop):
1744         (WebCore::EventHandler::performDragAndDrop):
1745         (WebCore::EventHandler::updateMouseEventTargetNode):
1746         (WebCore::EventHandler::dispatchMouseEvent):
1747         (WebCore::EventHandler::sendContextMenuEvent):
1748         (WebCore::EventHandler::canMouseDownStartSelect):
1749         (WebCore::EventHandler::canMouseDragExtendSelect):
1750         (WebCore::EventHandler::defaultKeyboardEventHandler):
1751         (WebCore::EventHandler::dragSourceMovedTo):
1752         (WebCore::EventHandler::dragSourceEndedAt):
1753         (WebCore::EventHandler::handleDrag):
1754         (WebCore::EventHandler::handleTextInputEvent):
1755         * page/FocusController.cpp:
1756         * page/Frame.cpp:
1757         (WebCore::Frame::sendResizeEvent):
1758         (WebCore::Frame::sendScrollEvent):
1759         * page/Page.cpp:
1760         (WebCore::networkStateChanged):
1761         * page/animation/AnimationBase.cpp:
1762         (WebCore::AnimationBase::updateStateMachine):
1763         (WebCore::AnimationBase::animationTimerCallbackFired):
1764         (WebCore::AnimationBase::primeEventTimers):
1765         * page/animation/ImplicitAnimation.cpp:
1766         (WebCore::ImplicitAnimation::onAnimationEnd):
1767         (WebCore::ImplicitAnimation::sendTransitionEvent):
1768         * page/animation/KeyframeAnimation.cpp:
1769         (WebCore::KeyframeAnimation::onAnimationStart):
1770         (WebCore::KeyframeAnimation::onAnimationIteration):
1771         (WebCore::KeyframeAnimation::onAnimationEnd):
1772         (WebCore::KeyframeAnimation::sendAnimationEvent):
1773         * page/gtk/EventHandlerGtk.cpp:
1774         * page/mac/EventHandlerMac.mm:
1775         (WebCore::isKeyboardOptionTab):
1776         * page/mac/FrameMac.mm:
1777         * page/qt/EventHandlerQt.cpp:
1778         (WebCore::isKeyboardOptionTab):
1779         * plugins/PluginView.cpp:
1780         * plugins/gtk/PluginViewGtk.cpp:
1781         * plugins/qt/PluginViewQt.cpp:
1782         * plugins/win/PluginViewWin.cpp:
1783         (WebCore::PluginView::handleKeyboardEvent):
1784         (WebCore::PluginView::handleMouseEvent):
1785         * rendering/MediaControlElements.cpp:
1786         (WebCore::MediaControlMuteButtonElement::defaultEventHandler):
1787         (WebCore::MediaControlPlayButtonElement::defaultEventHandler):
1788         (WebCore::MediaControlSeekButtonElement::defaultEventHandler):
1789         (WebCore::MediaControlTimelineElement::defaultEventHandler):
1790         (WebCore::MediaControlFullscreenButtonElement::defaultEventHandler):
1791         * rendering/RenderFrameSet.cpp:
1792         (WebCore::RenderFrameSet::userResize):
1793         * rendering/RenderLayer.cpp:
1794         (WebCore::RenderLayer::scrollToOffset):
1795         * rendering/RenderListBox.cpp:
1796         (WebCore::RenderListBox::valueChanged):
1797         * rendering/RenderMedia.cpp:
1798         (WebCore::RenderMedia::forwardEvent):
1799         * rendering/RenderObject.cpp:
1800         * rendering/RenderSlider.cpp:
1801         (WebCore::HTMLSliderThumbElement::defaultEventHandler):
1802         * rendering/RenderTextControl.cpp:
1803         (WebCore::RenderTextControl::forwardEvent):
1804         (WebCore::RenderTextControl::selectionChanged):
1805         * rendering/RenderWidget.cpp:
1806         * rendering/TextControlInnerElements.cpp:
1807         (WebCore::TextControlInnerTextElement::defaultEventHandler):
1808         (WebCore::SearchFieldResultsButtonElement::defaultEventHandler):
1809         (WebCore::SearchFieldCancelButtonElement::defaultEventHandler):
1810         * storage/LocalStorageArea.cpp:
1811         (WebCore::LocalStorageArea::dispatchStorageEvent):
1812         * storage/SessionStorageArea.cpp:
1813         (WebCore::SessionStorageArea::dispatchStorageEvent):
1814         * svg/SVGAElement.cpp:
1815         (WebCore::SVGAElement::defaultEventHandler):
1816         * svg/SVGDocument.cpp:
1817         (WebCore::SVGDocument::dispatchZoomEvent):
1818         (WebCore::SVGDocument::dispatchScrollEvent):
1819         * svg/SVGElement.cpp:
1820         (WebCore::SVGElement::parseMappedAttribute):
1821         (WebCore::hasLoadListener):
1822         (WebCore::SVGElement::sendSVGLoadEventIfPossible):
1823         * svg/SVGElementInstance.cpp:
1824         (WebCore::SVGElementInstance::on*): (multiple methods)
1825         (WebCore::SVGElementInstance::setOn*): (multiple methods)
1826         * svg/SVGImageLoader.cpp:
1827         (WebCore::SVGImageLoader::dispatchLoadEvent):
1828         * svg/SVGSVGElement.cpp:
1829         (WebCore::SVGSVGElement::parseMappedAttribute):
1830         * svg/SVGScriptElement.cpp:
1831         (WebCore::SVGScriptElement::dispatchErrorEvent):
1832         * xml/XMLHttpRequest.cpp:
1833         (WebCore::XMLHttpRequest::dispatchReadyStateChangeEvent):
1834         (WebCore::XMLHttpRequest::dispatchAbortEvent):
1835         (WebCore::XMLHttpRequest::dispatchErrorEvent):
1836         (WebCore::XMLHttpRequest::dispatchLoadEvent):
1837         (WebCore::XMLHttpRequest::dispatchLoadStartEvent):
1838         (WebCore::XMLHttpRequest::dispatchProgressEvent):
1839         * xml/XMLHttpRequestUpload.cpp:
1840         (WebCore::XMLHttpRequestUpload::dispatchAbortEvent):
1841         (WebCore::XMLHttpRequestUpload::dispatchErrorEvent):
1842         (WebCore::XMLHttpRequestUpload::dispatchLoadEvent):
1843         (WebCore::XMLHttpRequestUpload::dispatchLoadStartEvent):
1844         (WebCore::XMLHttpRequestUpload::dispatchProgressEvent):
1845         * xml/XPathResult.cpp:
1846         (WebCore::XPathResult::XPathResult):
1847         (WebCore::XPathResult::~XPathResult):
1848         (WebCore::XPathResult::invalidateIteratorState):
1849         Access event names via eventNames() function.
1850
1851 2008-11-04  Cameron Zwarich  <zwarich@apple.com>
1852
1853         Reviewed by Mark Rowe.
1854
1855         Delete unused forwarding headers.
1856
1857         * ForwardingHeaders/kjs/Activation.h: Removed.
1858         * ForwardingHeaders/kjs/Register.h: Removed.
1859         * ForwardingHeaders/kjs/RegisterID.h: Removed.
1860
1861 2008-11-04  Cameron Zwarich  <zwarich@apple.com>
1862
1863         Not reviewed.
1864
1865         Fix stupid typo in previous build fix.
1866
1867         * bindings/js/JSStorageCustom.cpp:
1868         * bindings/scripts/CodeGeneratorJS.pm:
1869         * bridge/NP_jsobject.cpp:
1870
1871 2008-11-03  Cameron Zwarich  <zwarich@apple.com>
1872
1873         Not reviewed.
1874
1875         Fix the build for all non-Mac platforms.
1876
1877         * ForwardingHeaders/kjs/PropertyNameArray.h: Removed.
1878         * ForwardingHeaders/runtime/PropertyNameArray.h: Copied from ForwardingHeaders/kjs/PropertyNameArray.h.
1879         * bindings/js/JSStorageCustom.cpp:
1880         * bindings/scripts/CodeGeneratorJS.pm:
1881         * bridge/NP_jsobject.cpp:
1882
1883 2008-11-03  Cameron Zwarich  <zwarich@apple.com>
1884
1885         Not reviewed.
1886
1887         Fix the wxWindows build.
1888
1889         * bridge/c/c_instance.cpp:
1890
1891 2008-11-03  Cameron Zwarich  <zwarich@apple.com>
1892
1893         Rubber-stamped by Maciej Stachowiak.
1894
1895         Move more files into the runtime subdirectory of JavaScriptCore.
1896
1897         * ForwardingHeaders/kjs/ArgList.h: Removed.
1898         * ForwardingHeaders/kjs/CollectorHeapIterator.h: Removed.
1899         * ForwardingHeaders/kjs/ExecState.h: Removed.
1900         * ForwardingHeaders/kjs/InitializeThreading.h: Removed.
1901         * ForwardingHeaders/kjs/JSGlobalData.h: Removed.
1902         * ForwardingHeaders/kjs/JSLock.h: Removed.
1903         * ForwardingHeaders/kjs/SymbolTable.h: Removed.
1904         * ForwardingHeaders/runtime/ArgList.h: Copied from ForwardingHeaders/kjs/ArgList.h.
1905         * ForwardingHeaders/runtime/CollectorHeapIterator.h: Copied from ForwardingHeaders/kjs/CollectorHeapIterator.h.
1906         * ForwardingHeaders/runtime/ExecState.h: Copied from ForwardingHeaders/kjs/ExecState.h.
1907         * ForwardingHeaders/runtime/InitializeThreading.h: Copied from ForwardingHeaders/kjs/InitializeThreading.h.
1908         * ForwardingHeaders/runtime/JSGlobalData.h: Copied from ForwardingHeaders/kjs/JSGlobalData.h.
1909         * ForwardingHeaders/runtime/JSLock.h: Copied from ForwardingHeaders/kjs/JSLock.h.
1910         * ForwardingHeaders/runtime/SymbolTable.h: Copied from ForwardingHeaders/kjs/SymbolTable.h.
1911         * bindings/js/GCController.cpp:
1912         * bindings/js/JSCustomPositionCallback.cpp:
1913         * bindings/js/JSCustomPositionErrorCallback.cpp:
1914         * bindings/js/JSCustomSQLStatementCallback.cpp:
1915         * bindings/js/JSCustomSQLStatementErrorCallback.cpp:
1916         * bindings/js/JSCustomSQLTransactionCallback.cpp:
1917         * bindings/js/JSCustomSQLTransactionErrorCallback.cpp:
1918         * bindings/js/JSCustomVoidCallback.cpp:
1919         * bindings/js/JSCustomXPathNSResolver.cpp:
1920         * bindings/js/JSDOMWindowBase.cpp:
1921         * bindings/js/JSEventCustom.cpp:
1922         * bindings/js/JSEventListener.cpp:
1923         * bindings/js/JSNodeFilterCondition.cpp:
1924         * bindings/js/ScheduledAction.cpp:
1925         * bindings/js/ScriptController.cpp:
1926         * bindings/js/ScriptControllerMac.mm:
1927         * bindings/objc/WebScriptObject.mm:
1928         * bridge/NP_jsobject.cpp:
1929         * bridge/c/c_class.cpp:
1930         * bridge/c/c_instance.cpp:
1931         * bridge/c/c_runtime.cpp:
1932         * bridge/c/c_utility.cpp:
1933         * bridge/jni/jni_class.cpp:
1934         * bridge/jni/jni_instance.cpp:
1935         * bridge/jni/jni_jsobject.mm:
1936         * bridge/jni/jni_objc.mm:
1937         * bridge/jni/jni_runtime.cpp:
1938         * bridge/jni/jni_runtime.h:
1939         * bridge/jni/jni_utility.cpp:
1940         * bridge/npruntime.cpp:
1941         * bridge/objc/objc_instance.mm:
1942         * bridge/objc/objc_runtime.mm:
1943         * bridge/objc/objc_utility.mm:
1944         * bridge/runtime.cpp:
1945         * dom/Document.cpp:
1946         * dom/Node.cpp:
1947         * dom/NodeFilter.cpp:
1948         * dom/NodeIterator.cpp:
1949         * dom/TreeWalker.cpp:
1950         * history/CachedPage.cpp:
1951         * inspector/InspectorController.cpp:
1952         * inspector/JavaScriptCallFrame.cpp:
1953         * inspector/JavaScriptCallFrame.h:
1954         * inspector/JavaScriptDebugServer.cpp:
1955         * inspector/JavaScriptProfileNode.cpp:
1956         * loader/FrameLoader.cpp:
1957         * loader/icon/IconDatabase.cpp:
1958         * page/Console.cpp:
1959         * page/Page.cpp:
1960         * page/mac/FrameMac.mm:
1961         * plugins/PluginView.cpp:
1962         * plugins/gtk/PluginViewGtk.cpp:
1963         * plugins/qt/PluginViewQt.cpp:
1964         * plugins/win/PluginViewWin.cpp:
1965         * storage/Database.cpp:
1966         * xml/XMLHttpRequest.cpp:
1967
1968 2008-11-03  Cameron Zwarich  <zwarich@apple.com>
1969
1970         Reviewed by Sam Weinig.
1971
1972         Remove the forwarding header for FunctionCallProfile, because it was
1973         renamed to ProfileNode in r33466.
1974
1975         * ForwardingHeaders/kjs/FunctionCallProfile.h: Removed.
1976
1977 2008-11-03  Simon Fraser  <simon.fraser@apple.com>
1978
1979         Reviewed by Dave Hyatt
1980
1981         https://bugs.webkit.org/show_bug.cgi?id=22026
1982
1983         When computing the bounds of the transparency layer, we need to
1984         map the clipRect through the enclosing transform.
1985         
1986         Test: fast/layers/opacity-transforms.html
1987
1988         * rendering/RenderLayer.cpp:
1989         (WebCore::transparencyClipBox):
1990
1991 2008-11-03  Kevin Decker  <kdecker@apple.com>
1992
1993         Reviewed by Anders Carlsson.
1994
1995         https://bugs.webkit.org/show_bug.cgi?id=22053
1996
1997         Added additional support needed for the NPDrawingModelCoreAnimation drawing model. 
1998
1999         * bridge/npapi.h:
2000
2001 2008-11-03  Xan Lopez  <xan@gnome.org>
2002
2003         Reviewed by Alp Toker.
2004
2005         Update parseDataUrl() function in the libsoup http backend with
2006         the one from the curl backend which has recent correctness and crash
2007         fixes.
2008
2009         * platform/network/soup/ResourceHandleSoup.cpp:
2010         (WebCore::parseDataUrl):
2011
2012 2008-11-03  Holger Hans Peter Freyther  <zecke@selfish.org>
2013
2014         Reviewed by Alp Toker.
2015
2016         https://bugs.webkit.org/show_bug.cgi?id=22041
2017         Fix CURL crashes on the test suite
2018
2019         Fix segfault with setDefersLoading(). Do not call into curl when we
2020         don't have a CURL handle.
2021
2022         It is attempted to defer the loading before the load has been
2023         started (no curl handle was allocated yet). If that happens then
2024         just remember that. ResourceHandleManager::startJob is already taking
2025         care of this and in initResourceHandle the the downloading will
2026         be paused if needed.
2027
2028         Fixes fast/loader/simultaneous-reloads-assert.html
2029
2030         * platform/network/curl/ResourceHandleCurl.cpp:
2031         (WebCore::ResourceHandle::setDefersLoading):
2032
2033 2008-11-03  Holger Hans Peter Freyther  <zecke@selfish.org>
2034
2035         Reviewed by Alp Toker.
2036
2037         https://bugs.webkit.org/show_bug.cgi?id=22041
2038         Fix CURL crashes on the test suite
2039
2040         Do not send "no data" to WebCore in parseDataUrl().
2041
2042         Fixes assert on fast/tokenizer/image-empty-crash.html
2043
2044         * platform/network/curl/ResourceHandleManager.cpp:
2045         (WebCore::parseDataUrl):
2046
2047 2008-11-02  Xan Lopez  <xan@gnome.org>
2048
2049         Reviewed by Holger Freyther.
2050
2051         https://bugs.webkit.org/show_bug.cgi?id=22009
2052         HTML5 Video with GStreamer pulls gnome-vfs without using it
2053
2054         * platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp:
2055         Remove gnome-vfs include.
2056
2057 2008-11-01  Adam Barth  <abarth@webkit.org>
2058
2059         Reviewed by Sam Weinig.
2060
2061         Be sure to check the final URLs of requested resources to make sure we
2062         don't get fooled by HTTP redirects.
2063
2064         https://bugs.webkit.org/show_bug.cgi?id=21963
2065
2066         Tests: http/tests/security/xss-DENIED-xsl-document-redirect.xml
2067                http/tests/security/xss-DENIED-xsl-external-entity-redirect.xml
2068
2069         * dom/XMLTokenizerLibxml2.cpp:
2070         (WebCore::openFunc):
2071         * loader/DocLoader.cpp:
2072         (WebCore::DocLoader::canRequest):
2073         (WebCore::DocLoader::requestResource):
2074         * loader/DocLoader.h:
2075         * xml/XSLTProcessor.cpp:
2076         (WebCore::docLoaderFunc):
2077
2078 2008-11-01  Alexey Proskuryakov  <ap@webkit.org>
2079
2080         Reviewed by Darin Adler.
2081
2082         https://bugs.webkit.org/show_bug.cgi?id=22001
2083         AtomicStringImpl* keys of event listener maps can outlive their strings
2084
2085         Test: fast/events/destroyed-atomic-string.html
2086
2087         * dom/MessagePort.cpp:
2088         (WebCore::MessagePort::addEventListener):
2089         (WebCore::MessagePort::removeEventListener):
2090         (WebCore::MessagePort::dispatchEvent):
2091         * dom/MessagePort.h:
2092         * loader/appcache/DOMApplicationCache.cpp:
2093         (WebCore::DOMApplicationCache::addEventListener):
2094         (WebCore::DOMApplicationCache::removeEventListener):
2095         (WebCore::DOMApplicationCache::dispatchEvent):
2096         * loader/appcache/DOMApplicationCache.h:
2097         * xml/XMLHttpRequest.cpp:
2098         (WebCore::XMLHttpRequest::addEventListener):
2099         (WebCore::XMLHttpRequest::removeEventListener):
2100         (WebCore::XMLHttpRequest::dispatchEvent):
2101         * xml/XMLHttpRequest.h:
2102         * xml/XMLHttpRequestUpload.cpp:
2103         (WebCore::XMLHttpRequestUpload::addEventListener):
2104         (WebCore::XMLHttpRequestUpload::removeEventListener):
2105         (WebCore::XMLHttpRequestUpload::dispatchEvent):
2106         * xml/XMLHttpRequestUpload.h:
2107         Changed EventListenersMap to use AtomicString as key (instead of AtomicStringImpl*).
2108
2109 2008-10-31  Alexey Proskuryakov  <ap@webkit.org>
2110
2111         Reviewed by Darin Adler.
2112
2113         https://bugs.webkit.org/show_bug.cgi?id=21998
2114         Use JSDOMGlobalObject in EventListener-related bindings
2115
2116         * dom/MessagePort.idl: Auto-generate bindings for onclose and onmessage.
2117
2118         * bindings/scripts/CodeGeneratorJS.pm: Use JSDOMGlobalObject instead of JSDOMWindow in JS
2119         bindings for inline event handlers.
2120
2121         * bindings/js/JSDOMApplicationCacheCustom.cpp:
2122         (WebCore::JSDOMApplicationCache::addEventListener):
2123         (WebCore::JSDOMApplicationCache::removeEventListener):
2124         * bindings/js/JSEventTargetNodeCustom.cpp:
2125         (WebCore::JSEventTargetNode::addEventListener):
2126         (WebCore::JSEventTargetNode::removeEventListener):
2127         * bindings/js/JSMessagePortCustom.cpp:
2128         (WebCore::JSMessagePort::removeEventListener):
2129         * bindings/js/JSSVGElementInstanceCustom.cpp:
2130         (WebCore::JSSVGElementInstance::addEventListener):
2131         (WebCore::JSSVGElementInstance::removeEventListener):
2132         * bindings/js/JSXMLHttpRequestCustom.cpp:
2133         (WebCore::JSXMLHttpRequest::addEventListener):
2134         (WebCore::JSXMLHttpRequest::removeEventListener):
2135         * bindings/js/JSXMLHttpRequestUploadCustom.cpp:
2136         (WebCore::JSXMLHttpRequestUpload::addEventListener):
2137         (WebCore::JSXMLHttpRequestUpload::removeEventListener):
2138         Use ScriptExecutionContext and JSDOMGlobalObject in bindings.
2139
2140         * dom/EventTarget.h:
2141         * dom/EventTargetNode.cpp:
2142         (WebCore::EventTargetNode::scriptExecutionContext):
2143         * dom/EventTargetNode.h:
2144         * dom/MessagePort.cpp:
2145         * dom/MessagePort.h:
2146         (WebCore::MessagePort::scriptExecutionContext):
2147         * loader/appcache/DOMApplicationCache.cpp:
2148         (WebCore::DOMApplicationCache::scriptExecutionContext):
2149         * loader/appcache/DOMApplicationCache.h:
2150         * svg/SVGElementInstance.cpp:
2151         (WebCore::SVGElementInstance::scriptExecutionContext):
2152         * svg/SVGElementInstance.h:
2153         * xml/XMLHttpRequest.cpp:
2154         (WebCore::XMLHttpRequest::scriptExecutionContext):
2155         * xml/XMLHttpRequest.h:
2156         * xml/XMLHttpRequestUpload.cpp:
2157         (WebCore::XMLHttpRequestUpload::scriptExecutionContext):
2158         * xml/XMLHttpRequestUpload.h:
2159         Remove associatedFrame() method, and provide scriptExecutionContext() where it wasn't
2160         available yet.
2161
2162 2008-10-31  Cameron Zwarich  <zwarich@apple.com>
2163
2164         Rubber-stamped by Geoff Garen.
2165
2166         Rename SourceRange.h to SourceCode.h.
2167
2168         * ForwardingHeaders/kjs/SourceCode.h: Copied from ForwardingHeaders/kjs/SourceRange.h.
2169         * ForwardingHeaders/kjs/SourceRange.h: Removed.
2170         * bindings/js/StringSourceProvider.h:
2171         * bridge/NP_jsobject.cpp:
2172
2173 2008-10-31  Cameron Zwarich  <zwarich@apple.com>
2174
2175         Reviewed by Darin Adler.
2176
2177         Bug 22019: Move JSC::Interpreter::shouldPrintExceptions() to WebCore::Console
2178         <https://bugs.webkit.org/show_bug.cgi?id=22019>
2179
2180         * WebCore.base.exp:
2181         * page/Console.cpp:
2182         (WebCore::printToStandardOut):
2183         (WebCore::Console::shouldPrintExceptions):
2184         (WebCore::Console::setShouldPrintExceptions):
2185         * page/Console.h:
2186
2187 2008-10-31  Dan Bernstein  <mitz@apple.com>
2188
2189         Reviewed by John Sullivan.
2190
2191         - WebCore part of <rdar://problem/6334641> Add WebView SPI for disabling document.cookie
2192
2193         * dom/Document.cpp:
2194         (WebCore::Document::cookie): Added checking if cookies are disabled.
2195         (WebCore::Document::setCookie): Ditto.
2196         * page/Navigator.cpp:
2197         (WebCore::Navigator::cookieEnabled): Ditto.
2198         * page/Page.cpp:
2199         (WebCore::Page::Page): Initialize m_cookieEnabled to true.
2200         * page/Page.h:
2201         (WebCore::Page::cookieEnabled): Added.
2202         (WebCore::Page::setCookieEnabled): Added.
2203
2204 2008-10-31  Adele Peterson  <adele@apple.com>
2205
2206         Reviewed by Darin Adler.
2207
2208         WebCore Windows part of fix for <rdar://problem/5839256> FILE CONTROL: multi-file upload.
2209         https://bugs.webkit.org/show_bug.cgi?id=22008
2210
2211         * platform/FileChooser.cpp: (WebCore::FileChooser::chooseIcon): 
2212         Rename newIconForFile and newIconForFiles to createIconForFile and createIconForFiles.
2213         * platform/graphics/Icon.h: ditto.
2214         * platform/graphics/gtk/IconGtk.cpp:
2215         (WebCore::Icon::createIconForFile): ditto.
2216         (WebCore::Icon::createIconForFiles): ditto.
2217         * platform/graphics/mac/IconMac.mm:
2218         (WebCore::Icon::createIconForFile): ditto.
2219         (WebCore::Icon::createIconForFiles): ditto.
2220         * platform/graphics/qt/IconQt.cpp:
2221         (WebCore::Icon::createIconForFile): ditto.
2222         (WebCore::Icon::createIconForFiles): ditto.
2223         * platform/wx/TemporaryLinkStubs.cpp:
2224         (Icon::createIconForFile): ditto.
2225         (Icon::createIconForFiles): ditto.
2226         * platform/graphics/win/IconWin.cpp:
2227         (WebCore::Icon::createIconForFile): ditto.
2228         (WebCore::Icon::createIconForFiles): Add creation of an icon for multiple files.
2229
2230         * rendering/RenderThemeWin.cpp: (WebCore::RenderThemeWin::paintSearchFieldResultsDecoration):        
2231         Improve icon creation code to match new code in Icon::createIconForFiles
2232         
2233 2008-10-31  Timothy Hatcher  <timothy@apple.com>
2234
2235         Add manual tests that check breakpoints on a blockless body of "for" loops.
2236
2237         https://bugs.webkit.org/show_bug.cgi?id=22004
2238
2239         Reviewed by Darin Adler.
2240
2241         * manual-tests/inspector/debugger-pause-on-for-in-statements.html: Added.
2242         * manual-tests/inspector/debugger-pause-on-for-statements.html: Added.
2243
2244 2008-10-31  Darin Adler  <darin@apple.com>
2245
2246         - fix build
2247
2248         * platform/win/WCDataObject.cpp: Added missing include of "config.h".
2249
2250 2008-10-30  Alexey Proskuryakov  <ap@webkit.org>
2251
2252         Reviewed by Darin Adler.
2253
2254         https://bugs.webkit.org/show_bug.cgi?id=21970
2255         Make MessagePort event dispatch work in workers
2256
2257         * bindings/js/JSDOMGlobalObject.cpp:
2258         (WebCore::JSDOMGlobalObject::JSDOMGlobalObjectData::JSDOMGlobalObjectData):
2259         (WebCore::JSDOMGlobalObject::~JSDOMGlobalObject):
2260         (WebCore::JSDOMGlobalObject::findJSEventListener):
2261         (WebCore::JSDOMGlobalObject::findOrCreateJSEventListener):
2262         (WebCore::JSDOMGlobalObject::findJSUnprotectedEventListener):
2263         (WebCore::JSDOMGlobalObject::findOrCreateJSUnprotectedEventListener):
2264         (WebCore::JSDOMGlobalObject::jsEventListeners):
2265         (WebCore::JSDOMGlobalObject::jsInlineEventListeners):
2266         (WebCore::JSDOMGlobalObject::jsUnprotectedEventListeners):
2267         (WebCore::JSDOMGlobalObject::jsUnprotectedInlineEventListeners):
2268         (WebCore::JSDOMGlobalObject::setCurrentEvent):
2269         (WebCore::JSDOMGlobalObject::currentEvent):
2270         (WebCore::toJSDOMGlobalObject):
2271         * bindings/js/JSDOMGlobalObject.h:
2272         * bindings/js/JSDOMWindowBase.cpp:
2273         (WebCore::JSDOMWindowBase::JSDOMWindowBaseData::JSDOMWindowBaseData):
2274         (WebCore::JSDOMWindowBase::~JSDOMWindowBase):
2275         (WebCore::JSDOMWindowBase::clearHelperObjectProperties):
2276         * bindings/js/JSDOMWindowBase.h:
2277         Moved event listener tracking from JSDOMWindow to JSDOMGlobalObject.
2278
2279         * bindings/js/JSEventListener.cpp:
2280         (WebCore::JSAbstractEventListener::handleEvent):
2281         (WebCore::JSUnprotectedEventListener::JSUnprotectedEventListener):
2282         (WebCore::JSUnprotectedEventListener::~JSUnprotectedEventListener):
2283         (WebCore::JSUnprotectedEventListener::globalObject):
2284         (WebCore::JSUnprotectedEventListener::clearGlobalObject):
2285         (WebCore::JSEventListener::JSEventListener):
2286         (WebCore::JSEventListener::~JSEventListener):
2287         (WebCore::JSEventListener::globalObject):
2288         (WebCore::JSEventListener::clearGlobalObject):
2289         (WebCore::JSLazyEventListener::JSLazyEventListener):
2290         (WebCore::JSLazyEventListener::parseCode):
2291         * bindings/js/JSEventListener.h:
2292         (WebCore::JSUnprotectedEventListener::create):
2293         (WebCore::JSEventListener::create):
2294         (WebCore::JSLazyEventListener::create):
2295         Changed to use JSDOMGlobalObject and ScriptExecutionContext.
2296
2297         * bindings/js/JSMessagePortCustom.cpp:
2298         (WebCore::JSMessagePort::startConversation):
2299         (WebCore::JSMessagePort::addEventListener):
2300         (WebCore::JSMessagePort::removeEventListener):
2301         (WebCore::JSMessagePort::setOnmessage):
2302         (WebCore::JSMessagePort::setOnclose):
2303         Updated bindings to work with JSDOMGlobalObject. Next step is to make code generator emit
2304         such code, and stop using a custom implementation for JSMessagePort inline event handler
2305         getters and setters.
2306
2307         * dom/Document.cpp:
2308         (WebCore::Document::virtualURL):
2309         * dom/Document.h:
2310         * dom/ScriptExecutionContext.h:
2311         Expose url() method on ScriptExecutionContext (necessary for compiling scripts in
2312         JSLazyEventListener).
2313
2314 2008-10-31  Cameron Zwarich  <zwarich@apple.com>
2315
2316         Not reviewed.
2317
2318         Speculative wxWindows build fix.
2319
2320         * webcore-base.bkl:
2321
2322 2008-10-30  Mark Rowe  <mrowe@apple.com>
2323
2324         Reviewed by Jon Homeycutt.
2325
2326         Explicitly default to building for only the native architecture in debug and release builds.
2327
2328         * Configurations/DebugRelease.xcconfig:
2329
2330 2008-10-30  Cameron Zwarich  <zwarich@apple.com>
2331
2332         Rubber-stamped by Sam Weinig.
2333
2334         Create a debugger directory in JavaScriptCore and move the relevant
2335         files to it.
2336
2337         * ForwardingHeaders/debugger: Added.
2338         * ForwardingHeaders/debugger/Debugger.h: Copied from ForwardingHeaders/kjs/debugger.h.
2339         * ForwardingHeaders/debugger/DebuggerCallFrame.h: Copied from ForwardingHeaders/kjs/DebuggerCallFrame.h.
2340         * ForwardingHeaders/kjs/DebuggerCallFrame.h: Removed.
2341         * ForwardingHeaders/kjs/debugger.h: Removed.
2342         * WebCore.pro:
2343         * bindings/js/ScriptController.cpp:
2344         * inspector/JavaScriptCallFrame.cpp:
2345         * inspector/JavaScriptCallFrame.h:
2346         * inspector/JavaScriptDebugServer.cpp:
2347         * inspector/JavaScriptDebugServer.h:
2348
2349 2008-10-30  Tony Chang <tony@chromium.org>
2350
2351         Fix 2 Windows theme bugs:
2352         1) Checkboxes marked readonly were rendered incorrectly
2353         2) If a button has focus and is pressed, it was rendered
2354            as focused rather than pressed.
2355
2356         https://bugs.webkit.org/show_bug.cgi?id=21859
2357
2358         Reviewed by Dave Hyatt.
2359
2360         * rendering/RenderThemeWin.cpp:
2361         (WebCore::RenderThemeWin::determineState):
2362         (WebCore::RenderThemeWin::determineButtonState):
2363
2364 2008-10-30  Benjamin K. Stuhl  <bks24@cornell.edu>
2365
2366         gcc 4.3.3/linux-x86 generates "suggest parentheses around && within ||"
2367         warnings; add some parentheses to disambiguate things. No functional
2368         changes, so no tests.
2369
2370         https://bugs.webkit.org/show_bug.cgi?id=21973
2371         Add parentheses to clean up some gcc warnings
2372
2373         Reviewed by Dan Bernstein.
2374
2375         * platform/graphics/Font.h:
2376         (WebCore::Font::treatAsZeroWidthSpace):
2377
2378 2008-10-30  Aaron Boodman  <aa@chromium.org>
2379
2380         Added an explicit dependency on HashMap.h. It was getting pulled in via
2381         <kjs/identifier.h> in the case of JSC, causing errors for the Chromium port.
2382
2383         Reviewed by Darin Adler.
2384
2385         * platform/text/PlatformString.h:
2386
2387 2008-10-30  Greg Bolsinga  <bolsinga@apple.com>
2388
2389         Reviewed by Sam Weinig
2390
2391         https://bugs.webkit.org/show_bug.cgi?id=21967
2392         
2393         For some platforms the GeolocationService must be suspended and resumed.
2394
2395         * page/Geolocation.cpp:
2396         (WebCore::Geolocation::clearWatch): now uses Geolocation::hasListeners()
2397         (WebCore::Geolocation::suspend): calls GeolocationService::suspend() if there are listeners
2398         (WebCore::Geolocation::resume): calls GeolocationService::resume() if there are listeners
2399         (WebCore::Geolocation::geolocationServicePositionChanged): now uses Geolocation::hasListeners()
2400         * page/Geolocation.h:
2401         (WebCore::Geolocation::hasListeners): Indicates of the Geolocation has interested GeolocationService listeners
2402         * platform/GeolocationService.h:
2403         (WebCore::GeolocationService::suspend): empty implementation
2404         (WebCore::GeolocationService::resume): empty implementation
2405
2406 2008-10-30  Greg Bolsinga  <bolsinga@apple.com>
2407
2408         Reviewed by Sam Weinig
2409
2410         https://bugs.webkit.org/show_bug.cgi?id=21966
2411         
2412         The Geolocation spec was updated on 10/27/2008. This brings WebCore up to date.
2413         http://dev.w3.org/geo/api/spec-source.html
2414
2415         * page/Geolocation.cpp:
2416         (WebCore::Geolocation::GeoNotifier::GeoNotifier): PositionOptions' timeout now unsigned
2417         * page/Geoposition.cpp: velocity is now called speed
2418         (WebCore::Geoposition::toString):
2419         * page/Geoposition.h: velocity is now called speed
2420         (WebCore::Geoposition::create):
2421         (WebCore::Geoposition::speed):
2422         (WebCore::Geoposition::Geoposition):
2423         * page/Geoposition.idl: velocity is now called speed
2424         * page/PositionOptions.h: timeout is now unsigned
2425         (WebCore::PositionOptions::create):
2426         (WebCore::PositionOptions::timeout):
2427         (WebCore::PositionOptions::setTimeout):
2428         (WebCore::PositionOptions::PositionOptions):
2429         * page/PositionOptions.idl: timeout is now unsigned long
2430
2431 2008-10-30  Justin Garcia  <justin.garcia@apple.com>
2432
2433         Also handle preserved newlines.
2434
2435         * editing/BreakBlockquoteCommand.cpp:
2436         (WebCore::BreakBlockquoteCommand::doApply):
2437
2438 2008-10-30  Justin Garcia  <justin.garcia@apple.com>
2439
2440         Reviewed by Beth Dakin.
2441
2442         <rdar://problem/6104369> Hitting return at the end of a quoted line creates an extraneous quoted line
2443
2444         * editing/BreakBlockquoteCommand.cpp:
2445         (WebCore::BreakBlockquoteCommand::doApply): 
2446         Don't store the endingSelection() in selection, just call endingSelection() in the few places it's 
2447         needed.  This function is cheap since it just returns a reference to a Selection instead of creating one.
2448         Don't store an affinity.  In the one place that it was used, isLastVisiblePositionInNode(VisiblePosition(pos, affinity), topBlockquote),
2449         we now use visiblePos (in order to avoid VisiblePosition creation).
2450         Set pos after we delete the current selection (if there is one), and be consistent about what we set 
2451         pos to.  Before, we upstream()ed it if there was a selection to delete and left it alone otherwise.  In fact...
2452         ...we need to use downstream() for pos so that when a caret is at the boundary between two nodes, pos is 
2453         in the first node that we want to move.  This fixes the bug, since it lets code that checks for the case 
2454         where the caret is between text and a br work correctly.
2455
2456 2008-10-30  Yael Aharon  <yael.aharon@nokia.com>
2457
2458         Reviewed by Darin Adler.
2459
2460         Fix the Qt build.
2461
2462         https://bugs.webkit.org/show_bug.cgi?id=21969
2463
2464         * inspector/front-end/WebKit.qrc:
2465         * platform/graphics/qt/ImageBufferQt.cpp:
2466         (WebCore::ImageBufferData::ImageBufferData):
2467         (WebCore::ImageBuffer::ImageBuffer):
2468         (WebCore::ImageBuffer::context):
2469         (WebCore::ImageBuffer::image):
2470         (WebCore::ImageBuffer::toDataURL):
2471
2472 2008-10-30  Justin Garcia  <justin.garcia@apple.com>
2473
2474         Reviewed by Darin Adler.
2475
2476         More preparation for:
2477         <rdar://problem/6104369> Hitting return at the end of a quoted line creates an extraneous quoted line
2478
2479         * editing/BreakBlockquoteCommand.cpp:
2480         (WebCore::BreakBlockquoteCommand::doApply): Added comments.  Don't need to use newStartNode.  If the 
2481         startNode needs to change, change it.  Afterwords, check to make sure that it hasn't left topBlockquote.  
2482         This is slightly stricter than before, where we just made sure that it still had a topBlockquote.  This 
2483         doesn't really fix a bug, since we can't really get into a situation where we move to a different 
2484         topBlockquote, but it simplifies the code.
2485
2486 2008-10-30  Dirk Schulze  <vbs85@gmx.de>
2487
2488         Reviewed by Alp Toker.
2489
2490         https://bugs.webkit.org/show_bug.cgi?id=21883
2491         [CAIRO] globalAlpha has to be stored and restored
2492
2493         Cairo's globalAlpha has to be stored and reloaded on calling
2494         save() and restore(). We use the power of GraphicsContextState for this.
2495
2496         * platform/graphics/GraphicsContextPrivate.h:
2497         (WebCore::GraphicsContextState::GraphicsContextState):
2498         * platform/graphics/cairo/GraphicsContextCairo.cpp:
2499         (WebCore::GraphicsContext::fillPath):
2500         (WebCore::GraphicsContext::strokePath):
2501         (WebCore::GraphicsContext::setAlpha):
2502         (WebCore::GraphicsContext::getAlpha):
2503         * platform/graphics/cairo/GraphicsContextPlatformPrivateCairo.h:
2504         (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate):
2505
2506 2008-10-29  Alexey Proskuryakov  <ap@webkit.org>
2507
2508         Reviewed by Maciej Stachowiak.
2509
2510         Rename "attachedToEventTargetNode" to "isInline".
2511
2512         Inline (onXXX) attributes are used not just with event target nodes, but also with Window,
2513         XMLHttpRequest, MessagePort et al.
2514
2515         Also renamed createHTMLEventHandler() (which was a leftover from earlier isHTMLEvent ->
2516         attachedToEventTargetNode rename made for SVG) to createInlineEventListener().
2517         And also renamed EventTargetNode, Document and Window "eventListenerForType" methods to
2518         "inlineEventListenerForType", as they work with inline listeners.
2519
2520         * bindings/js/JSDOMApplicationCacheCustom.cpp:
2521         (WebCore::JSDOMApplicationCache::addEventListener):
2522         (WebCore::JSDOMApplicationCache::removeEventListener):
2523         * bindings/js/JSMessagePortCustom.cpp:
2524         (WebCore::JSMessagePort::setOnmessage):
2525         (WebCore::JSMessagePort::setOnclose):
2526         * bindings/js/JSXMLHttpRequestCustom.cpp:
2527         (WebCore::JSXMLHttpRequest::addEventListener):
2528         (WebCore::JSXMLHttpRequest::removeEventListener):
2529         * bindings/js/JSXMLHttpRequestUploadCustom.cpp:
2530         (WebCore::JSXMLHttpRequestUpload::addEventListener):
2531         (WebCore::JSXMLHttpRequestUpload::removeEventListener):
2532         Pass a correct value for this argument - callers used to be confused, because they didn't
2533         consider themselves event target nodes. This doesn't affect behavior however, as the only
2534         difference between inline and non-inline event handlers is that the former treat
2535         "return false" as "event.preventDefault()", which is not important to any of these objects.
2536
2537         * bindings/js/JSEventListener.cpp: (WebCore::JSLazyEventListener::parseCode):
2538         Assert that isInline is true instead of checking its value, as the constructor of this class
2539         always sets it to true.
2540
2541         * bindings/js/JSDOMWindowBase.cpp:
2542         (WebCore::JSDOMWindowBase::~JSDOMWindowBase):
2543         (WebCore::JSDOMWindowBase::findJSEventListener):
2544         (WebCore::JSDOMWindowBase::findOrCreateJSEventListener):
2545         (WebCore::JSDOMWindowBase::findJSUnprotectedEventListener):
2546         (WebCore::JSDOMWindowBase::findOrCreateJSUnprotectedEventListener):
2547         (WebCore::JSDOMWindowBase::jsInlineEventListeners):
2548         (WebCore::JSDOMWindowBase::jsUnprotectedInlineEventListeners):
2549         * bindings/js/JSDOMWindowBase.h:
2550         * bindings/js/JSEventListener.cpp:
2551         (WebCore::JSAbstractEventListener::handleEvent):
2552         (WebCore::JSAbstractEventListener::isInline):
2553         (WebCore::JSUnprotectedEventListener::JSUnprotectedEventListener):
2554         (WebCore::JSUnprotectedEventListener::~JSUnprotectedEventListener):
2555         (WebCore::JSEventListener::JSEventListener):
2556         (WebCore::JSEventListener::~JSEventListener):
2557         (WebCore::JSLazyEventListener::parseCode):
2558         * bindings/js/JSEventListener.h:
2559         (WebCore::JSAbstractEventListener::JSAbstractEventListener):
2560         (WebCore::JSUnprotectedEventListener::create):
2561         (WebCore::JSEventListener::create):
2562         * bindings/js/ScriptController.cpp:
2563         (WebCore::ScriptController::createInlineEventHandler):
2564         * bindings/js/ScriptController.h:
2565         * dom/Document.cpp:
2566         (WebCore::Document::setWindowInlineEventListenerForType):
2567         (WebCore::Document::windowInlineEventListenerForType):
2568         (WebCore::Document::removeWindowInlineEventListenerForType):
2569         (WebCore::Document::createEventListener):
2570         (WebCore::Document::setWindowInlineEventListenerForTypeAndAttribute):
2571         * dom/Document.h:
2572         * dom/EventListener.h:
2573         (WebCore::EventListener::isInline):
2574         * dom/EventTargetNode.cpp:
2575         (WebCore::EventTargetNode::removeInlineEventListenerForType):
2576         (WebCore::EventTargetNode::setInlineEventListenerForType):
2577         (WebCore::EventTargetNode::setInlineEventListenerForTypeAndAttribute):
2578         (WebCore::EventTargetNode::inlineEventListenerForType):
2579         (WebCore::EventTargetNode::on*): (many methods)
2580         (WebCore::EventTargetNode::setOn*): (many methods)
2581         * dom/EventTargetNode.h:
2582         * editing/ReplaceSelectionCommand.cpp:
2583         (WebCore::ReplacementFragment::ReplacementFragment):
2584         * html/HTMLBodyElement.cpp:
2585         (WebCore::HTMLBodyElement::parseMappedAttribute):
2586         * html/HTMLButtonElement.cpp:
2587         (WebCore::HTMLButtonElement::parseMappedAttribute):
2588         * html/HTMLElement.cpp:
2589         (WebCore::HTMLElement::parseMappedAttribute):
2590         * html/HTMLFormElement.cpp:
2591         (WebCore::HTMLFormElement::parseMappedAttribute):
2592         * html/HTMLFrameElementBase.cpp:
2593         (WebCore::HTMLFrameElementBase::parseMappedAttribute):
2594         * html/HTMLFrameSetElement.cpp:
2595         (WebCore::HTMLFrameSetElement::parseMappedAttribute):
2596         * html/HTMLImageElement.cpp:
2597         (WebCore::HTMLImageElement::parseMappedAttribute):
2598         * html/HTMLInputElement.cpp:
2599         (WebCore::HTMLInputElement::parseMappedAttribute):
2600         * html/HTMLObjectElement.cpp:
2601         (WebCore::HTMLObjectElement::parseMappedAttribute):
2602         * html/HTMLScriptElement.cpp:
2603         (WebCore::HTMLScriptElement::parseMappedAttribute):
2604         * html/HTMLSelectElement.cpp:
2605         (WebCore::HTMLSelectElement::parseMappedAttribute):
2606         * html/HTMLTextAreaElement.cpp:
2607         (WebCore::HTMLTextAreaElement::parseMappedAttribute):
2608         * page/AccessibilityRenderObject.cpp:
2609         (WebCore::AccessibilityRenderObject::mouseButtonListener):
2610         * page/DOMWindow.cpp:
2611         (WebCore::DOMWindow::setInlineEventListenerForType):
2612         (WebCore::DOMWindow::inlineEventListenerForType):
2613         (WebCore::DOMWindow::on*): (many methods)
2614         (WebCore::DOMWindow::setOn*): (many methods)
2615         * page/DOMWindow.h:
2616         * svg/SVGElement.cpp:
2617         (WebCore::SVGElement::parseMappedAttribute):
2618         * svg/SVGElementInstance.cpp:
2619         (WebCore::SVGElementInstance::on*): (many methods)
2620         (WebCore::SVGElementInstance::setOn*): (many methods)
2621         * svg/SVGSVGElement.cpp:
2622         (WebCore::SVGSVGElement::parseMappedAttribute):
2623         Rename things, as described above.
2624
2625 2008-10-29  Gustavo Noronha Silva  <gns@gnome.org>
2626
2627         Reviewed and slightly changed by Holger Freyther.
2628
2629         Added all the files that need to be installed for the Inspector to
2630         work.
2631
2632         * GNUmakefile.am: Invoke the shell to get the files.
2633
2634 2008-10-29  Andrew Scherkus  <scherkus@chromium.org>
2635
2636         Reviewed by Darin Adler
2637
2638         Add MediaPlayerPrivateChromium to MediaPlayer
2639         https://bugs.webkit.org/show_bug.cgi?id=21930
2640
2641         * platform/graphics/MediaPlayer.cpp:
2642
2643 2008-10-29  Justin Garcia  <justin.garcia@apple.com>
2644
2645         Reviewed by Darin Adler.
2646
2647         Some preparation for:
2648         <rdar://problem/6104369> Hitting return at the end of a quoted line creates an extraneous quoted line
2649         
2650         Added an early return to avoid a level of if-nesting.  No other changes.  We probably don't
2651         need to rebalance whitespace before the early return but for now don't risk any change in behavior
2652         I'll revisit that later.
2653
2654         * editing/BreakBlockquoteCommand.cpp:
2655         (WebCore::BreakBlockquoteCommand::doApply):
2656
2657 2008-10-29  Kevin Ollivier  <kevino@theolliviers.com>
2658
2659         wx build fixes after addition of runtime and ImageBuffer changes.
2660         
2661         * platform/graphics/wx/ImageBufferData.h: Added.
2662         * platform/graphics/wx/ImageBufferWx.cpp:
2663         (WebCore::ImageBufferData::ImageBufferData):
2664         (WebCore::ImageBuffer::ImageBuffer):
2665         (WebCore::ImageBuffer::context):
2666         * webcore-base.bkl:
2667
2668 2008-10-29  Brett Wilson  <brettw@chromium.org>
2669
2670         Reviewed by Darin Adler
2671         https://bugs.webkit.org/attachment.cgi?id=24745
2672
2673         Allow Skia implementations to get text style changed notifications.
2674
2675         * platform/graphics/GraphicsContext.cpp:
2676
2677 2008-10-29  Timothy Hatcher  <timothy@apple.com>
2678
2679         Add a manual test that checks breakpoints on a blockless body of
2680         an "else" statement.
2681
2682         https://bugs.webkit.org/show_bug.cgi?id=21944
2683
2684         Reviewed by Maciej Stachowiak.
2685
2686         * manual-tests/inspector/debugger-pause-on-else-statements.html: Added.
2687
2688 2008-10-29  Alexey Proskuryakov  <ap@webkit.org>
2689
2690         Reviewed by Darin Adler.
2691
2692         https://bugs.webkit.org/show_bug.cgi?id=21921
2693         MessagePort messages are dispatched to documents that are not fully active
2694
2695         Covered by corrected fast/events/message-port-inactive-document.html
2696
2697         * bindings/js/JSEventListener.cpp:
2698         (WebCore::JSAbstractEventListener::handleEvent): Don't dispatch messages to contexts
2699         that are not fully active.
2700
2701 2008-10-29  Alexey Proskuryakov  <ap@webkit.org>
2702
2703         Reviewed by Sam Weinig.
2704
2705         https://bugs.webkit.org/show_bug.cgi?id=21922
2706         Expose MessagePort global constructor
2707
2708         Covered by existing dumper tests.
2709
2710         * dom/MessagePort.idl:
2711         * page/DOMWindow.idl:
2712
2713 2008-10-29  Alexey Proskuryakov  <ap@webkit.org>
2714
2715         Reviewed by Darin Adler.
2716
2717         https://bugs.webkit.org/show_bug.cgi?id=21924
2718         HashTable internal index is not always deleted
2719
2720         * bindings/js/JSDOMBinding.cpp: (WebCore::DOMObjectHashTableMap::~DOMObjectHashTableMap):
2721         Call deleteTable for HashTables that are being deleted.
2722
2723 2008-10-28  Alexey Proskuryakov  <ap@webkit.org>
2724
2725         Reviewed by Darin Adler.
2726
2727         https://bugs.webkit.org/show_bug.cgi?id=21923
2728         Create an abstraction for script execution context
2729
2730         * GNUmakefile.am:
2731         * WebCore.pro:
2732         * WebCore.vcproj/WebCore.vcproj:
2733         * WebCore.xcodeproj/project.pbxproj:
2734         * WebCoreSources.bkl:
2735         Added ScriptExecutionContext.{h,cpp}.
2736
2737         * bindings/js/JSAudioConstructor.cpp:
2738         (WebCore::JSAudioConstructor::JSAudioConstructor):
2739         * bindings/js/JSAudioConstructor.h:
2740         * bindings/js/JSImageConstructor.cpp:
2741         (WebCore::JSImageConstructor::JSImageConstructor):
2742         * bindings/js/JSImageConstructor.h:
2743         * bindings/js/JSOptionConstructor.cpp:
2744         (WebCore::JSOptionConstructor::JSOptionConstructor):
2745         * bindings/js/JSOptionConstructor.h:
2746         * bindings/js/JSXMLHttpRequestConstructor.cpp:
2747         (WebCore::JSXMLHttpRequestConstructor::JSXMLHttpRequestConstructor):
2748         * bindings/js/JSXMLHttpRequestConstructor.h:
2749         Pass ScriptExecutionContext instead of Document to make getDOMConstructor() happy.
2750         Since these objects can only work within documents now, it is immediately converted back
2751         to Document.
2752
2753         * bindings/js/JSMessageChannelConstructor.cpp:
2754         (WebCore::JSMessageChannelConstructor::JSMessageChannelConstructor):
2755         (WebCore::JSMessageChannelConstructor::construct):
2756         * bindings/js/JSMessageChannelConstructor.h:
2757         (WebCore::JSMessageChannelConstructor::scriptExecutionContext):
2758         MessageChannel needs to be supported in workers right away, so the constructor operates with
2759         it directly.
2760
2761         * dom/ActiveDOMObject.cpp:
2762         (WebCore::ActiveDOMObject::ActiveDOMObject):
2763         (WebCore::ActiveDOMObject::~ActiveDOMObject):
2764         (WebCore::ActiveDOMObject::contextDestroyed):
2765         * dom/ActiveDOMObject.h:
2766         (WebCore::ActiveDOMObject::scriptExecutionContext):
2767         * bindings/js/JSDOMBinding.cpp:
2768         (WebCore::markActiveObjectsForContext):
2769         (WebCore::markCrossHeapDependentObjectsForContext):
2770         Use ScriptExecutionContext instead of Document, now that ActiveDOMObject and MessagePort
2771         tracking is handled by ScriptExecutionContext.
2772
2773         * bindings/js/JSDOMBinding.h: (WebCore::getDOMPrototype): Moved to JSDOMGlobalObject.
2774
2775         * bindings/js/JSDOMGlobalObject.h:
2776         (WebCore::getDOMConstructor): Moved to this file, as constructors live in JSDOMGlobalObject.
2777         Also, the two-argument version that used to be in JSDOMWindowBase.cpp need to be accessible
2778         to worker context implementation.
2779         (WebCore::scriptExecutionContext): Added a pure virtual method to access
2780         ScriptExecutionContext, implemented by subclasses.
2781
2782         * bindings/js/JSDOMWindowBase.h:
2783         * bindings/js/JSDOMWindowBase.cpp: (WebCore::JSDOMWindowBase::scriptExecutionContext):
2784         Implement by returning the associated document. Note that this method currently gives bogus
2785         results after navigation - DOMWindow Frame reference is not zeroed out, so we get a document
2786         that is currently in the frame, not the one associated with this window.
2787
2788         * bindings/js/JSDedicatedWorkerConstructor.cpp: Removed unnecessary include of DOMWindow.h.
2789
2790         * bindings/js/JSDocumentCustom.cpp: (WebCore::JSDocument::mark):
2791         Call markActiveObjectsForContext() by its new name.
2792
2793         * dom/DedicatedWorker.cpp:
2794         (WebCore::DedicatedWorker::DedicatedWorker):
2795         (WebCore::DedicatedWorker::document):
2796         * dom/DedicatedWorker.h:
2797         * xml/XMLHttpRequest.cpp:
2798         (WebCore::XMLHttpRequest::document):
2799         * xml/XMLHttpRequest.h:
2800         Added a document() function that upcasts ScriptExecutionContext, as these objects only work
2801         within documents currently (at least for XMLHttpRequest, this will change soon though).
2802
2803         * dom/Document.cpp:
2804         (WebCore::Document::Document):
2805         (WebCore::Document::~Document):
2806         Moved active object and MessagePort tracking up to ScriptExecutionContext, to share code
2807         with workers.
2808         
2809         * dom/Document.h:
2810         (WebCore::Document::isDocument):
2811         (WebCore::Document::refScriptExecutionContext):
2812         (WebCore::Document::derefScriptExecutionContext):
2813         Inherit from ScriptExecutionContext.
2814
2815         * dom/MessageChannel.cpp:
2816         (WebCore::MessageChannel::MessageChannel):
2817         * dom/MessageChannel.h:
2818         (WebCore::MessageChannel::create):
2819         Use ScriptExecutionContext instead of Document.
2820
2821         * dom/MessagePort.cpp:
2822         (WebCore::CloseMessagePortTimer::CloseMessagePortTimer): Make m_port a RefPtr, because
2823         MessagePort doesn't ref() itself when posting this event any more (this is a fix for an
2824         unrelated issue that was causing random crashes in layout tests).
2825         (WebCore::MessagePort::MessagePort):
2826         (WebCore::MessagePort::~MessagePort):
2827         (WebCore::MessagePort::associatedFrame):
2828         (WebCore::MessagePort::clone):
2829         (WebCore::MessagePort::postMessage):
2830         (WebCore::MessagePort::startConversation):
2831         (WebCore::MessagePort::start):
2832         (WebCore::MessagePort::contextDestroyed):
2833         (WebCore::MessagePort::dispatchMessages):
2834         * dom/MessagePort.h:
2835         (WebCore::MessagePort::create):
2836         (WebCore::MessagePort::scriptExecutionContext):
2837         Use ScriptExecutionContext instead of Document. This is a step toward making MessagePort
2838         work in worker contexts - we need to also make some its method thread safe for cross-thread
2839         messaging, and make event dispatching thread safe.
2840
2841         * dom/ScriptExecutionContext.cpp: Added.
2842         * dom/ScriptExecutionContext.h: Added.
2843         ActiveDOMObject and MessagePort tracking is moved from Document.
2844         It is debatable whether ScriptExecutionContext should be a parent of Document or DOMWindow,
2845         but as I'm just moving Document code, and it is Document that is the main context object
2846         in our implementation currently.
2847         Changing ScriptExecutionContext to be a parent of DOMWindow causes a number of bugs that
2848         seem non-trivial to fix, and isn't really a part of this task.
2849
2850 2008-10-28  Alp Toker  <alp@nuanti.com>
2851
2852         List newly-added ImageBufferData.h in build system.
2853
2854         * GNUmakefile.am:
2855
2856 2008-10-28  Alp Toker  <alp@nuanti.com>
2857
2858         Reviewed by Cameron Zwarich.
2859
2860         De-list unused WebCore ForwardingHeaders to fix the dist target.
2861
2862         * GNUmakefile.am:
2863
2864 2008-10-28  Cameron Zwarich  <zwarich@apple.com>
2865
2866         Not reviewed.
2867
2868         Attempt to fix the Windows build by generating Forwardingheaders for the
2869         runtime directory in JavaScriptCore.
2870
2871         * WebCore.vcproj/WebCore.vcproj:
2872
2873 2008-10-28  Justin Garcia  <justin.garcia@apple.com>
2874
2875         Reviewed by Darin Adler.
2876
2877         <rdar://problem/5188560> REGRESSION: Spell checker doesn't clear spelling/grammar marker after error is marked as Ignored
2878
2879         * editing/Editor.cpp:
2880         (WebCore::Editor::ignoreSpelling): Remove misspelling markers from the word.
2881         (WebCore::Editor::learnSpelling): Added a FIXME about <rdar://problem/5396072>, which 
2882         will probably require a change more complicated than just marking the learned word as 
2883         misspelled.  I'll address it with a separate patch.
2884         * editing/EditorCommand.cpp:
2885         (WebCore::executeIgnoreSpelling): Added.
2886         (WebCore::CommandEntry::): Added an entry for IgnoreSpelling.
2887
2888 2008-10-28  Cameron Zwarich  <zwarich@apple.com>
2889
2890         Reviewed by Mark Rowe.
2891
2892         Move ForwardingHeaders to their correct location after the creation of
2893         the runtime directory in JavaScriptCore.
2894
2895         * ForwardingHeaders/kjs/ArrayPrototype.h: Removed.
2896         * ForwardingHeaders/kjs/BooleanObject.h: Removed.
2897         * ForwardingHeaders/kjs/CallData.h: Removed.
2898         * ForwardingHeaders/kjs/ConstructData.h: Removed.
2899         * ForwardingHeaders/kjs/DateInstance.h: Removed.
2900         * ForwardingHeaders/kjs/Error.h: Removed.
2901         * ForwardingHeaders/kjs/FunctionConstructor.h: Removed.
2902         * ForwardingHeaders/kjs/FunctionPrototype.h: Removed.
2903         * ForwardingHeaders/kjs/InternalFunction.h: Removed.
2904         * ForwardingHeaders/kjs/JSArray.h: Removed.
2905         * ForwardingHeaders/kjs/JSFunction.h: Removed.
2906         * ForwardingHeaders/kjs/JSGlobalObject.h: Removed.
2907         * ForwardingHeaders/kjs/JSNumberCell.h: Removed.
2908         * ForwardingHeaders/kjs/JSObject.h: Removed.
2909         * ForwardingHeaders/kjs/JSString.h: Removed.
2910         * ForwardingHeaders/kjs/JSValue.h: Removed.
2911         * ForwardingHeaders/kjs/ObjectPrototype.h: Removed.
2912         * ForwardingHeaders/kjs/PropertyMap.h: Removed.
2913         * ForwardingHeaders/kjs/PrototypeFunction.h: Removed.
2914         * ForwardingHeaders/kjs/StringObject.h: Removed.
2915         * ForwardingHeaders/kjs/StringObjectThatMasqueradesAsUndefined.h: Removed.
2916         * ForwardingHeaders/kjs/StringPrototype.h: Removed.
2917         * ForwardingHeaders/kjs/StructureID.h: Removed.
2918         * ForwardingHeaders/runtime: Added.
2919         * ForwardingHeaders/runtime/ArrayPrototype.h: Copied from ForwardingHeaders/kjs/ArrayPrototype.h.
2920         * ForwardingHeaders/runtime/BooleanObject.h: Copied from ForwardingHeaders/kjs/BooleanObject.h.
2921         * ForwardingHeaders/runtime/CallData.h: Copied from ForwardingHeaders/kjs/CallData.h.
2922         * ForwardingHeaders/runtime/ConstructData.h: Copied from ForwardingHeaders/kjs/ConstructData.h.
2923         * ForwardingHeaders/runtime/DateInstance.h: Copied from ForwardingHeaders/kjs/DateInstance.h.
2924         * ForwardingHeaders/runtime/Error.h: Copied from ForwardingHeaders/kjs/Error.h.
2925         * ForwardingHeaders/runtime/FunctionConstructor.h: Copied from ForwardingHeaders/kjs/FunctionConstructor.h.
2926         * ForwardingHeaders/runtime/FunctionPrototype.h: Copied from ForwardingHeaders/kjs/FunctionPrototype.h.
2927         * ForwardingHeaders/runtime/InternalFunction.h: Copied from ForwardingHeaders/kjs/InternalFunction.h.
2928         * ForwardingHeaders/runtime/JSArray.h: Copied from ForwardingHeaders/kjs/JSArray.h.
2929         * ForwardingHeaders/runtime/JSFunction.h: Copied from ForwardingHeaders/kjs/JSFunction.h.
2930         * ForwardingHeaders/runtime/JSGlobalObject.h: Copied from ForwardingHeaders/kjs/JSGlobalObject.h.
2931         * ForwardingHeaders/runtime/JSNumberCell.h: Copied from ForwardingHeaders/kjs/JSNumberCell.h.
2932         * ForwardingHeaders/runtime/JSObject.h: Copied from ForwardingHeaders/kjs/JSObject.h.
2933         * ForwardingHeaders/runtime/JSString.h: Copied from ForwardingHeaders/kjs/JSString.h.
2934         * ForwardingHeaders/runtime/JSValue.h: Copied from ForwardingHeaders/kjs/JSValue.h.
2935         * ForwardingHeaders/runtime/ObjectPrototype.h: Copied from ForwardingHeaders/kjs/ObjectPrototype.h.
2936         * ForwardingHeaders/runtime/PropertyMap.h: Copied from ForwardingHeaders/kjs/PropertyMap.h.
2937         * ForwardingHeaders/runtime/PrototypeFunction.h: Copied from ForwardingHeaders/kjs/PrototypeFunction.h.
2938         * ForwardingHeaders/runtime/StringObject.h: Copied from ForwardingHeaders/kjs/StringObject.h.
2939         * ForwardingHeaders/runtime/StringObjectThatMasqueradesAsUndefined.h: Copied from ForwardingHeaders/kjs/StringObjectThatMasqueradesAsUndefined.h.
2940         * ForwardingHeaders/runtime/StringPrototype.h: Copied from ForwardingHeaders/kjs/StringPrototype.h.
2941         * ForwardingHeaders/runtime/StructureID.h: Copied from ForwardingHeaders/kjs/StructureID.h.
2942         * bindings/js/JSCSSStyleDeclarationCustom.cpp:
2943         * bindings/js/JSCanvasRenderingContext2DCustom.cpp:
2944         * bindings/js/JSClipboardCustom.cpp:
2945         * bindings/js/JSConsoleCustom.cpp:
2946         * bindings/js/JSCustomPositionCallback.h:
2947         * bindings/js/JSCustomPositionErrorCallback.h:
2948         * bindings/js/JSCustomSQLStatementCallback.h:
2949         * bindings/js/JSCustomSQLStatementErrorCallback.h:
2950         * bindings/js/JSCustomSQLTransactionErrorCallback.h:
2951         * bindings/js/JSCustomVoidCallback.h:
2952         * bindings/js/JSCustomXPathNSResolver.h:
2953         * bindings/js/JSDOMBinding.cpp:
2954         * bindings/js/JSDOMBinding.h:
2955         * bindings/js/JSDOMGlobalObject.h:
2956         * bindings/js/JSDOMWindowBase.cpp:
2957         * bindings/js/JSDOMWindowCustom.cpp:
2958         * bindings/js/JSDOMWindowShell.cpp:
2959         * bindings/js/JSDatabaseCustom.cpp:
2960         * bindings/js/JSEventListener.cpp:
2961         * bindings/js/JSEventTarget.h:
2962         * bindings/js/JSHTMLDocumentCustom.cpp:
2963         * bindings/js/JSHistoryCustom.cpp:
2964         * bindings/js/JSInspectedObjectWrapper.cpp:
2965         * bindings/js/JSJavaScriptCallFrameCustom.cpp:
2966         * bindings/js/JSLocationCustom.cpp:
2967         * bindings/js/JSNodeFilterCondition.h:
2968         * bindings/js/JSQuarantinedObjectWrapper.cpp:
2969         * bindings/js/JSQuarantinedObjectWrapper.h:
2970         * bindings/js/JSXMLHttpRequestCustom.cpp:
2971         * bindings/js/JSXMLHttpRequestUploadCustom.cpp:
2972         * bindings/objc/WebScriptObject.mm:
2973         * bindings/objc/WebScriptObjectPrivate.h:
2974         * bindings/scripts/CodeGeneratorJS.pm:
2975         * bridge/NP_jsobject.cpp:
2976         * bridge/c/c_instance.cpp:
2977         * bridge/c/c_utility.cpp:
2978         * bridge/c/c_utility.h:
2979         * bridge/jni/jni_instance.cpp:
2980         * bridge/jni/jni_jsobject.h:
2981         * bridge/jni/jni_jsobject.mm:
2982         * bridge/jni/jni_runtime.cpp:
2983         * bridge/jni/jni_utility.cpp:
2984         * bridge/jni/jni_utility.h:
2985         * bridge/objc/objc_instance.mm:
2986         * bridge/objc/objc_runtime.h:
2987         * bridge/objc/objc_runtime.mm:
2988         * bridge/objc/objc_utility.h:
2989         * bridge/objc/objc_utility.mm:
2990         * bridge/runtime.h:
2991         * bridge/runtime_array.cpp:
2992         * bridge/runtime_array.h:
2993         * bridge/runtime_method.cpp:
2994         * bridge/runtime_method.h:
2995         * bridge/runtime_object.cpp:
2996         * bridge/runtime_object.h:
2997         * bridge/runtime_root.cpp:
2998         * inspector/JavaScriptCallFrame.cpp:
2999         * inspector/JavaScriptProfile.cpp:
3000         * inspector/JavaScriptProfile.h:
3001         * inspector/JavaScriptProfileNode.cpp:
3002         * inspector/JavaScriptProfileNode.h:
3003         * loader/FrameLoader.cpp:
3004         * page/Console.cpp:
3005         * plugins/PluginView.cpp:
3006         * plugins/gtk/PluginViewGtk.cpp:
3007         * plugins/qt/PluginViewQt.cpp:
3008         * plugins/win/PluginViewWin.cpp:
3009
3010 2008-10-28  Adele Peterson  <adele@apple.com>
3011
3012         Windows build fix.  This removes Cairo include directories from non-Cairbo build configurations.
3013
3014         * WebCore.vcproj/WebCore.vcproj:
3015
3016 2008-10-28  Adele Peterson  <adele@apple.com>
3017
3018         Windows build fix.
3019
3020         * platform/graphics/ImageBuffer.h:
3021         (WebCore::ImageBuffer::create):
3022
3023 2008-10-28  Cameron Zwarich  <zwarich@apple.com>
3024
3025         Not reviewed.
3026
3027         Roll out a mistaken attempt at fixing the GTK build in r37947.
3028
3029         * GNUmakefile.am:
3030
3031 2008-10-28  Adele Peterson  <adele@apple.com>
3032
3033         Reviewed by John Sullivan.
3034
3035         Fix for https://bugs.webkit.org/show_bug.cgi?id=21880
3036         "files" string for multifile uploads needs to be localized
3037
3038         * page/mac/WebCoreViewFactory.h:
3039         * platform/LocalizedStrings.h:
3040         * platform/gtk/FileChooserGtk.cpp: (WebCore::FileChooser::basenameForWidth):
3041         * platform/gtk/LocalizedStringsGtk.cpp: (WebCore::multipleFileUploadText):
3042         * platform/mac/FileChooserMac.mm: (WebCore::FileChooser::basenameForWidth):
3043         * platform/mac/LocalizedStringsMac.mm: (WebCore::multipleFileUploadText):
3044         * platform/qt/Localizations.cpp: (WebCore::multipleFileUploadText):
3045         * platform/wx/LocalizedStringsWx.cpp: (WebCore::multipleFileUploadText):
3046
3047 2008-10-28  Brett Wilson  <brettw@chromium.org>
3048
3049         Reviewed by Darin Adler.
3050
3051         https://bugs.webkit.org/show_bug.cgi?id=21816
3052
3053         Remove platform ifdefs in ImageBuffer.h by moving platform specific code
3054         into a new PlatformImageBuffer class. Move the static create function
3055         into the header because it can be cross-platform. Initialization now
3056         happens in the cunstructor which sets a flag that create uses to know
3057         whether it should return null or not. I also made passing of IntSize
3058         more consistent (always by reference).
3059
3060         This change also changes the ifdefs in GraphicsContext to allow Skia
3061         ports to implement text drawing modes.
3062
3063         * platform/graphics/ImageBuffer.h:
3064         (WebCore::ImageBuffer::create):
3065         (WebCore::ImageBuffer::size):
3066         * platform/graphics/cairo/ImageBufferCairo.cpp:
3067         (WebCore::ImageBufferData::ImageBufferData):
3068         (WebCore::ImageBuffer::ImageBuffer):
3069         (WebCore::ImageBuffer::~ImageBuffer):
3070         (WebCore::ImageBuffer::image):
3071         (WebCore::ImageBuffer::getImageData):
3072         (WebCore::ImageBuffer::putImageData):
3073         * platform/graphics/cairo/ImageBufferData.h:
3074         * platform/graphics/cg/ImageBufferCG.cpp:
3075         (WebCore::ImageBufferData::ImageBufferData):
3076         (WebCore::ImageBuffer::ImageBuffer):
3077         (WebCore::ImageBuffer::~ImageBuffer):
3078         (WebCore::ImageBuffer::getImageData):
3079         (WebCore::ImageBuffer::putImageData):
3080         * platform/graphics/cg/ImageBufferData.h:
3081         * platform/graphics/qt/ImageBufferData.h:
3082         * platform/graphics/qt/ImageBufferQt.cpp:
3083         (WebCore::ImageBufferData::ImageBufferData):
3084         (WebCore::ImageBuffer::ImageBuffer):
3085         (WebCore::ImageBuffer::~ImageBuffer):
3086
3087 2008-10-28  Cameron Zwarich  <zwarich@apple.com>
3088
3089         Not reviewed.
3090
3091         Fix the GTK build.
3092
3093         * GNUmakefile.am:
3094
3095 2008-10-28  Cameron Zwarich  <zwarich@apple.com>
3096
3097         Not reviewed.
3098
3099         Another Qt build fix.
3100
3101         * WebCore.pro:
3102
3103 2008-10-28  Greg Bolsinga  <bolsinga@apple.com>
3104
3105         Reviewed by David Kilzer.
3106
3107         https://bugs.webkit.org/show_bug.cgi?id=21932
3108         Add non-pointer constant lookups to SoftLinking.h
3109
3110         * platform/mac/SoftLinking.h:
3111
3112 2008-10-28  Greg Bolsinga  <bolsinga@apple.com>
3113
3114         Reviewed by David Kilzer.
3115
3116         https://bugs.webkit.org/show_bug.cgi?id=2192
3117         Missing semi-colons in Geoposition.idl
3118
3119         * page/Geoposition.idl: Add missing semi-colons
3120
3121 2008-10-28  Timothy Hatcher  <timothy@apple.com>
3122
3123         Make the Profiles panel in the Web Inspector have an enable screen.
3124         Profiling now needs to be enabled before console.profile() works.
3125
3126         <rdar://problem/6211578> Make the JavaScript profiler opt-in, so it does
3127         not slow down JavaScript all the time
3128
3129         Reviewed by Darin Adler and Kevin McCullough.
3130
3131         * English.lproj/localizedStrings.js: New strings.
3132         * WebCore.base.exp: New and changed exports.
3133         * WebCore.vcproj/WebCore.vcproj: Add the PanelEnablerView.js file.
3134         * bindings/js/JSDOMWindowBase.cpp:
3135         (WebCore::JSDOMWindowBase::supportsProfiling): Call InspectorController:profilerEnabled.
3136         * inspector/InspectorController.cpp:
3137         (WebCore::InspectorController::InspectorController): Initialize the m_startProfiling
3138         Timer to call InspectorController::startUserInitiatedProfiling.
3139         (WebCore::InspectorController::startUserInitiatedProfilingSoon): Start a one-shot timer
3140         that calls InspectorController::startUserInitiatedProfiling.
3141         (WebCore::InspectorController::startUserInitiatedProfiling): Recompile all JavaScript
3142         and enable the profiler if the profiler was not enabled.
3143         (WebCore::InspectorController::stopUserInitiatedProfiling): Rearrange code for readability.
3144         (WebCore::InspectorController::enableProfiler): Recompile all the JavaScript functions
3145         if the skipRecompile argument is false. Call the profilerWasEnabled script function.
3146         (WebCore::InspectorController::disableProfiler): Recompile all the JavaScript functions.
3147         Call the profilerWasEnabled script function.
3148         (WebCore::InspectorController::disableDebugger): Set m_attachDebuggerWhenShown to false,
3149         so it won't be started later.
3150         * inspector/InspectorController.h:
3151         (WebCore::InspectorController::profilerEnabled): Return enabled() && m_profilerEnabled.
3152         * inspector/front-end/Images/debuggingButtons.png: Remove.
3153         * inspector/front-end/Images/enableButtons.png: Added.
3154         * inspector/front-end/Images/profilesSilhouette.png: Added.
3155         * inspector/front-end/Images/scriptsSilhouette.png: Added.
3156         * inspector/front-end/PanelEnablerView.js: Added.
3157         (WebInspector.PanelEnablerView):
3158         (WebInspector.PanelEnablerView.prototype._enableButtonCicked): Fire the "enable clicked"
3159         event so listeners can do their thing.
3160         (WebInspector.PanelEnablerView.prototype._windowResized): Test if the icon should be hidden.
3161         * inspector/front-end/ProfilesPanel.js:
3162         (WebInspector.ProfilesPanel): Create the PanelEnablerView and the strings needed for it.
3163         (WebInspector.ProfilesPanel.prototype.get statusBarItems): Include the enableToggleButton.
3164         (WebInspector.ProfilesPanel.prototype.profilerWasEnabled): Call reset and populateInterface.
3165         (WebInspector.ProfilesPanel.prototype.profilerWasDisabled): Call reset.
3166         (WebInspector.ProfilesPanel.prototype.reset): Call _updateInterface.
3167         (WebInspector.ProfilesPanel.prototype.setRecordingProfile): Moved in the code, no changes.
3168         (WebInspector.ProfilesPanel.prototype._updateInterface): Update the toggle button and
3169         show/hide other buttons. Also show/hide the PanelEnablerView.
3170         (WebInspector.ProfilesPanel.prototype._enableProfiling): Call _toggleProfiling if not enabled.
3171         (WebInspector.ProfilesPanel.prototype._toggleProfiling): Call InspectorController's
3172         disableProfiler or enableProfiler.
3173         * inspector/front-end/ScriptsPanel.js:
3174         (WebInspector.ScriptsPanel): Replace the overlay element with a PanelEnablerView. Replace the
3175         debuggingButton with the enableToggleButton.
3176         (WebInspector.ScriptsPanel.prototype.get statusBarItems): Replace the debuggingButton with
3177         the enableToggleButton.
3178         (WebInspector.ScriptsPanel.prototype._updateDebuggerButtons): Hide/show the pauseOnExceptionButton
3179         when needed. Replace the overlay element with a PanelEnablerView. Replace the debuggingButton
3180         with the enableToggleButton.
3181         (WebInspector.ScriptsPanel.prototype._enableDebugging): Call _toggleDebugging when not enabled.
3182         (WebInspector.ScriptsPanel.prototype._toggleDebugging): Remove the call to _clearInterface,
3183         since reset is called from debuggerWasEnabled and debuggerWasDisabled.
3184         * inspector/front-end/View.js: Inherit from WebInspector.Object.
3185         * inspector/front-end/WebKit.qrc: Add the PanelEnablerView.js file.
3186         * inspector/front-end/inspector.css: New styles for the PanelEnablerView.
3187         * inspector/front-end/inspector.html: Add the PanelEnablerView.js file.
3188         * inspector/front-end/inspector.js:
3189         (WebInspector.profilerWasEnabled): Added. Calls the ProfilesPanel.
3190         (WebInspector.profilerWasDisabled): Ditto.
3191         * page/Console.cpp:
3192         (WebCore::Console::error): Remove null check for m_frame, since m_frame isn't used.
3193         (WebCore::Console::info): Ditto.
3194         (WebCore::Console::log): Ditto.
3195         (WebCore::Console::assertCondition): Ditto.
3196         (WebCore::Console::dirxml): Remove null check for m_frame and use this->page().
3197         (WebCore::Console::count): Ditto.
3198         (WebCore::Console::profile): Return early if InspectorController::profilerEnabled is false.
3199         (WebCore::Console::profileEnd): Ditto.
3200         (WebCore::Console::warn): Remove null check for m_frame, since m_frame isn't used.
3201         * page/Settings.cpp:
3202         (WebCore::Settings::Settings): Remove initialization of m_didInitializeDeveloperExtrasEnabled.
3203         (WebCore::Settings::setDeveloperExtrasEnabled): Remove code that recompiled functions.
3204         Now just sets the member boolean.
3205         * page/Settings.h: Remove m_didInitializeDeveloperExtrasEnabled.
3206
3207 2008-10-28  Timothy Hatcher  <timothy@apple.com>
3208
3209         Rename a few methods related to attaching and detaching the debugger. Also
3210         adds stub methods for enabling and disabling the profiler.
3211
3212         * Rename attachDebugger to enableDebugger.
3213         * Rename detachDebugger to disableDebugger.
3214         * Rename the debuggerAttached getter to debuggerEnabled.
3215         * Rename the debuggerAttached callback to debuggerWasEnabled.
3216         * Rename the debuggerDetached callback to debuggerWasDisabled.
3217
3218         Reviewed by Darin Adler.
3219
3220         * WebCore.base.exp:
3221         * inspector/InspectorController.cpp:
3222         (WebCore::InspectorController::InspectorController):
3223         (WebCore::InspectorController::setWindowVisible):
3224         (WebCore::InspectorController::windowScriptObjectAvailable):
3225         (WebCore::InspectorController::close):
3226         (WebCore::InspectorController::enableProfiler):
3227         (WebCore::InspectorController::disableProfiler):
3228         (WebCore::InspectorController::enableDebugger):
3229         (WebCore::InspectorController::disableDebugger):
3230         (WebCore::InspectorController::pauseInDebugger):
3231         (WebCore::InspectorController::resumeDebugger):
3232         (WebCore::InspectorController::stepOverStatementInDebugger):
3233         (WebCore::InspectorController::stepIntoStatementInDebugger):
3234         (WebCore::InspectorController::stepOutOfFunctionInDebugger):
3235         * inspector/InspectorController.h:
3236         (WebCore::InspectorController::profilerEnabled):
3237         (WebCore::InspectorController::debuggerEnabled):
3238         * inspector/front-end/BreakpointsSidebarPane.js:
3239         (WebInspector.BreakpointsSidebarPane.prototype.addBreakpoint):
3240         (WebInspector.BreakpointsSidebarPane.prototype.removeBreakpoint):
3241         (WebInspector.BreakpointsSidebarPane.prototype._breakpointEnableChanged):
3242         * inspector/front-end/Object.js:
3243         * inspector/front-end/ProfilesPanel.js:
3244         (WebInspector.ProfilesPanel):
3245         * inspector/front-end/ScriptsPanel.js:
3246         (WebInspector.ScriptsPanel):
3247         (WebInspector.ScriptsPanel.prototype.get statusBarItems):
3248         (WebInspector.ScriptsPanel.prototype.debuggerWasEnabled):
3249         (WebInspector.ScriptsPanel.prototype.debuggerWasDetached):
3250         (WebInspector.ScriptsPanel.prototype.reset):
3251         (WebInspector.ScriptsPanel.prototype.canShowResource):
3252         (WebInspector.ScriptsPanel.prototype._updatePauseOnExceptionsButton):
3253         (WebInspector.ScriptsPanel.prototype._updateDebuggerButtons):
3254         (WebInspector.ScriptsPanel.prototype._toggleDebugging):
3255         * inspector/front-end/View.js:
3256         * inspector/front-end/inspector.css:
3257         * inspector/front-end/inspector.html:
3258         * inspector/front-end/inspector.js:
3259         (WebInspector.addResource):
3260         (WebInspector.debuggerWasEnabled):
3261         (WebInspector.debuggerWasDisabled):
3262
3263 2008-10-28  Timothy Hatcher  <timothy@apple.com>
3264
3265         Fix an exception when searching the Resources panel while there
3266         and resources queued to be added to the list.
3267
3268         Reviewed by Kevin McCullough.
3269
3270         * inspector/front-end/ResourcesPanel.js:
3271         (WebInspector.ResourcesPanel.prototype.searchCanceled): Null check
3272         the _resourcesTreeElement property.
3273         (WebInspector.ResourcesPanel.prototype.performSearch): Ditto.
3274
3275 2008-10-28  Alp Toker  <alp@nuanti.com>
3276
3277         GTK+ build fix for older versions of Pango where PANGO_VERSION_CHECK
3278         isn't defined.
3279
3280         * platform/graphics/gtk/FontGtk.cpp:
3281         (WebCore::getDefaultPangoLayout):
3282         * platform/graphics/gtk/FontPlatformDataPango.cpp:
3283
3284 2008-10-28  Alexey Proskuryakov  <ap@webkit.org>
3285
3286         Reviewed by Darin Adler.
3287
3288         https://bugs.webkit.org/show_bug.cgi?id=21893
3289         Character set is incorrect for external scripts in XHTML pages
3290
3291         <rdar://problem/6317451> Incorrect encoding for text in a popup at http://xpoint.ru/
3292
3293         Test: fast/encoding/external-script-charset.xhtml
3294
3295         Expose scriptCharset() function on all ScriptElements, and call it from XML tokenizer.
3296
3297         * dom/ScriptElement.h:
3298         * dom/XMLTokenizerLibxml2.cpp:
3299         (WebCore::XMLTokenizer::endElementNs):
3300         * dom/XMLTokenizerQt.cpp:
3301         (WebCore::XMLTokenizer::parseEndElement):
3302         * html/HTMLScriptElement.h:
3303         * svg/SVGScriptElement.cpp:
3304         (WebCore::SVGScriptElement::scriptCharset):
3305         * svg/SVGScriptElement.h:
3306
3307 2008-10-28  Alp Toker  <alp@nuanti.com>
3308
3309         Include copyright license files in the autotools dist target and
3310         exclude unused zlib headers.
3311
3312         Change suggested by Mike Hommey.
3313
3314         * GNUmakefile.am:
3315
3316 2008-10-27  Sam Weinig  <sam@webkit.org>
3317
3318         Reviewed by Maciej Stachowiak.
3319
3320         Clear the window shell when destroying a page to allow documents
3321         which have no way of being reached anymore, to be torn down.
3322
3323         * page/Frame.cpp:
3324         (WebCore::Frame::pageDestroyed):
3325
3326 2008-10-27  Kevin Watters  <kevinwatters@gmail.com>
3327
3328         Reviewed by Kevin Ollivier.
3329         
3330         Update the active state as well as the focused state as both need to be true
3331         for the caret to be drawn.
3332         
3333         https://bugs.webkit.org/show_bug.cgi?id=21900
3334
3335         * WebView.cpp:
3336         (wxWebView::OnSetFocus):
3337         (wxWebView::OnKillFocus):
3338
3339 2008-10-27  Kevin Ollivier  <kevino@theolliviers.com>
3340
3341         wx build fix on Linux/GTK. Enable support for #include <JavaScriptCore/XYZ.h> style includes.
3342
3343         * webcore-wx.bkl:
3344
3345 2008-10-27  Michael Knaup  <michael.knaup@mac.com>
3346
3347         Reviewed and tweaked by Darin Adler.
3348
3349         - https://bugs.webkit.org/show_bug.cgi?id=8988
3350
3351         Bug 8988: Add support for Mozilla CSS custom cursors.
3352         Added -webkit-grab and -webkit-grabbing cursor suppport
3353         for the Mac, dummy implementations for other platforms.
3354
3355         * css/CSSParser.cpp:
3356         (WebCore::CSSParser::parseValue): Updated since the
3357         -webkit-grabbing cursor is now the last one.
3358
3359         * css/CSSPrimitiveValueMappings.h:
3360         (WebCore::CSSPrimitiveValue::CSSPrimitiveValue): Added
3361         CURSOR_WEBKIT_GRAB and CURSOR_WEBKIT_GRABBING.
3362
3363         * css/CSSValueKeywords.in: Added -webkit-grab and
3364         -webkit-grabbing.
3365
3366         * manual-tests/cursor.html: Added -webkit-zoom-in,
3367         webkit-zoom-out, -webkit-grab, and -webkit-grabbing.
3368
3369         * page/EventHandler.cpp:
3370         (WebCore::EventHandler::selectCursor): Added
3371         CURSOR_WEBKIT_GRAB and CURSOR_WEBKIT_GRABBING.
3372
3373         * platform/Cursor.h: Added grabCursor and grabbingCursor.
3374
3375         * platform/gtk/CursorGtk.cpp:
3376         (WebCore::grabCursor): Added.
3377         (WebCore::grabbingCursor): Added.
3378         * platform/mac/CursorMac.mm:
3379         (WebCore::grabCursor): Added.
3380         (WebCore::grabbingCursor): Added.
3381         * platform/qt/CursorQt.cpp:
3382         (WebCore::grabCursor): Added.
3383         (WebCore::grabbingCursor): Added.
3384         * platform/win/CursorWin.cpp:
3385         (WebCore::grabCursor): Added.
3386         (WebCore::grabbingCursor): Added.
3387         * platform/wx/CursorWx.cpp:
3388         (WebCore::grabCursor): Added.
3389         (WebCore::grabbingCursor): Added.
3390
3391         * rendering/style/RenderStyleConstants.h:
3392         Added CURSOR_WEBKIT_GRAB and CURSOR_WEBKIT_GRABBING.
3393         Also broke ECursor out into a single constant per line.
3394         Also added a couple of comments.
3395
3396 2008-10-27  Dimitri Glazkov  <dglazkov@chromium.org>
3397
3398         Reviewed by Darin Adler.
3399
3400         * svg/SVGAnimatedTemplate.h: needed a HashMap define
3401
3402 2008-10-21  Eric Seidel  <eric@webkit.org>
3403
3404         Reviewed by Dave Hyatt.
3405
3406         Infinite recursion crash in WebCore::RenderSVGRoot::absoluteClippedOverflowRect on a <stop> element outside of a gradient block
3407         https://bugs.webkit.org/show_bug.cgi?id=20400
3408
3409         Test: svg/custom/stop-crash.svg
3410
3411         * WebCore.xcodeproj/project.pbxproj:
3412         * rendering/RenderSVGGradientStop.h:
3413         (WebCore::RenderSVGGradientStop::absoluteClippedOverflowRect):
3414
3415 2008-10-27  Anders Carlsson  <andersca@apple.com>
3416
3417         Reviewed by Sam Weinig.
3418
3419         No need to call release if the connection is null.
3420         
3421         * platform/network/mac/ResourceHandleMac.mm:
3422         (WebCore::ResourceHandle::start):
3423
3424 2008-10-27  Anders Carlsson  <andersca@apple.com>
3425
3426         Reviewed by Kevin Decker.
3427
3428         <rdar://problem/6322650> Crash in fast/loader/simultaneous-reloads-assert.html
3429         
3430         Make sure to null check the NSURLConnection object.
3431         
3432         * platform/network/mac/ResourceHandleMac.mm:
3433         (WebCore::ResourceHandle::start):
3434         (WebCore::ResourceHandle::setDefersLoading):
3435
3436 2008-10-27  Alexey Proskuryakov  <ap@webkit.org>
3437
3438         Fix non-Mac builds.
3439
3440         * GNUmakefile.am:
3441         * WebCore.pro:
3442         * WebCore.vcproj/WebCore.vcproj:
3443         * WebCoreSources.bkl:
3444         Renamed JSHTMLOptionElementConstructor to JSOptionConstructor.
3445
3446 2008-10-26  Alexey Proskuryakov  <ap@webkit.org>
3447
3448         Reviewed by Sam Weinig.
3449
3450         https://bugs.webkit.org/show_bug.cgi?id=21886
3451         window.HTMLOptionElement == "[object HTMLElementConstructor]" instead of HTMLOptionElementConstructor
3452
3453         Test: fast/dom/HTMLOptionElement/option-prototype.html
3454
3455         We now have separate objects for window.Option and window.HTMLOptionElement - the latter
3456         "constructor" cannot be used to construct anything. This matches Firefox behavior.
3457
3458         * WebCore.xcodeproj/project.pbxproj:
3459         * bindings/js/JSDOMWindowBase.cpp:
3460         (jsDOMWindowBaseOption):
3461         * bindings/js/JSHTMLOptionElementConstructor.cpp: Removed.
3462         * bindings/js/JSHTMLOptionElementConstructor.h: Removed.
3463         * bindings/js/JSOptionConstructor.cpp: Copied from WebCore/bindings/js/JSHTMLOptionElementConstructor.cpp.
3464         * bindings/js/JSOptionConstructor.h: Copied from WebCore/bindings/js/JSHTMLOptionElementConstructor.h.
3465         * html/HTMLOptionElement.idl:
3466         Renamed JSHTMLOptionElementConstructor to JSOptionConstructor.
3467
3468         * html/HTMLOptionElement.idl: Generate a constructor.
3469
3470 2008-10-25  Geoffrey Garen  <ggaren@apple.com>
3471
3472         Not reviewed.
3473         
3474         Try to fix Mac debug build on the buildbot.
3475
3476         * platform/FileChooser.cpp:
3477         (WebCore::FileChooserClient::~FileChooserClient):
3478         * platform/FileChooser.h: Moved destructor to .cpp file, to avoid a
3479         weak exported symbol.
3480
3481 2008-10-25  Jade Han  <jade.han@nokia.com>
3482
3483         Reviewed by Anders.
3484
3485         Enable custom properties for Qt runtime objects in QtWebKit
3486
3487         https://bugs.webkit.org/show_bug.cgi?id=21813
3488
3489         * bridge/runtime_object.cpp:
3490         (JSC::RuntimeObjectImp::getOwnPropertySlot):
3491         (JSC::RuntimeObjectImp::put):
3492
3493 2008-10-24  Sam Weinig  <sam@webkit.org>
3494
3495         Fix windows build.
3496
3497         * page/Chrome.cpp:
3498         * page/Chrome.h:
3499
3500 2008-10-24  Sam Weinig  <sam@webkit.org>
3501
3502         Fix Qt build.
3503
3504         * platform/qt/FileChooserQt.cpp:
3505
3506 2008-10-24  Sam Weinig  <sam@webkit.org>
3507
3508         Reviewed by Dan Bernstein.
3509
3510         Fix https://bugs.webkit.org/show_bug.cgi?id=21759
3511         Layering violation: FileChooser should not depend on Document/Frame/Page
3512
3513         Move file choosing into WebKit ChromeClient.
3514
3515         * loader/EmptyClients.h:
3516         (WebCore::EmptyChromeClient::runOpenPanel):
3517         * page/Chrome.cpp:
3518         (WebCore::Chrome::runOpenPanel):
3519         * page/Chrome.h:
3520         * page/ChromeClient.h:
3521         * page/mac/ChromeMac.mm:
3522         * platform/FileChooser.h:
3523         * platform/mac/FileChooserMac.mm:
3524         * platform/qt/FileChooserQt.cpp:
3525         * platform/win/FileChooserWin.cpp:
3526         * platform/wx/TemporaryLinkStubs.cpp:
3527         * rendering/RenderFileUploadControl.cpp:
3528         (WebCore::RenderFileUploadControl::click):
3529
3530 2008-10-24  Kevin Ollivier  <kevino@theolliviers.com>
3531
3532         wx build fix - add newIconForFiles stub.
3533
3534         * platform/wx/TemporaryLinkStubs.cpp:
3535         (Icon::newIconForFiles):
3536
3537 2008-10-24  Kevin Watters  <kevinwatters@gmail.com>
3538
3539         Reviewed by Kevin Ollivier.
3540
3541         Use the CGFont metrics APIs for more accurate measurements, and tweak the y
3542         value the text is drawn at (it was a couple pixels off before because wx
3543         internally adds to the y value.
3544
3545         https://bugs.webkit.org/show_bug.cgi?id=21853
3546
3547         * platform/wx/wxcode/mac/carbon/fontprops.cpp:
3548         (wxFontProperties::wxFontProperties):
3549         * platform/wx/wxcode/mac/carbon/non-kerned-drawing.cpp:
3550         (WebCore::drawTextWithSpacing):
3551
3552 2008-10-24  Eric Seidel  <eric@webkit.org>
3553
3554         Reviewed by Sam Weinig.
3555
3556         Generate missing constructors and add test to prevent missing ones in the future
3557         https://bugs.webkit.org/show_bug.cgi?id=21846
3558
3559         Test: fast/js/global-constructors.html
3560
3561         * css/CSSStyleSheet.idl:
3562         * css/RGBColor.idl:
3563         * dom/NodeIterator.idl:
3564         * dom/TreeWalker.idl:
3565         * xml/XPathExpression.idl:
3566
3567 2008-10-24  Alexey Proskuryakov  <ap@webkit.org>
3568
3569         Reviewed by Darin Adler.
3570
3571         https://bugs.webkit.org/show_bug.cgi?id=21836
3572         REGRESSION: Sign-in on Fancast.com causes crash in Webkit nightly
3573
3574         Test: http/tests/xmlhttprequest/detaching-frame.html
3575
3576         * xml/XMLHttpRequest.cpp: (WebCore::XMLHttpRequest::dropProtection): Null check the window -
3577         even though XHR needs a context (AKA frame) to be serviced, the frame may be disconnected
3578         when dispatching the same callback that results in this function being called.
3579
3580 2008-10-24  David Kilzer  <ddkilzer@apple.com>
3581
3582         Gtk build fix.
3583
3584         * platform/gtk/TemporaryLinkStubs.cpp:
3585         (WebCore::setFocusRingColorChangeFunction): Removed in r37858.
3586
3587 2008-10-24  Mark Rowe  <mrowe@apple.com>
3588
3589         Reviewed by Sam Weinig.
3590
3591         <rdar://problem/6164952> Use constant kCGInterpolationMedium in GraphicsContextCG.cpp rather than hard-coded values.
3592
3593         * platform/graphics/cg/GraphicsContextCG.cpp:
3594         (WebCore::GraphicsContext::setImageInterpolationQuality):
3595         (WebCore::GraphicsContext::imageInterpolationQuality):
3596
3597 2008-10-24  Anders Carlsson  <andersca@apple.com>
3598
3599         Reviewed by Sam Weinig.
3600
3601         <rdar://problem/5440917> Support NPN_Construct
3602                 
3603         * WebCore.NPAPI.exp:
3604         Export _NPN_Construct.
3605         
3606         * bridge/NP_jsobject.cpp:
3607         (_NPN_Construct):
3608         Implement this.
3609         
3610         * bridge/c/c_instance.cpp:
3611         (JSC::Bindings::CInstance::supportsConstruct):
3612         (JSC::Bindings::CInstance::invokeConstruct):
3613         Have this call the appropriate NPClass method.
3614         
3615         * bridge/npruntime.h:
3616         Add NPN_Construct.
3617
3618         * bridge/npruntime_impl.h:
3619         Add _NPN_Construct.
3620         
3621         * bridge/runtime.h:
3622         (JSC::Bindings::Instance::supportsConstruct):
3623         (JSC::Bindings::Instance::invokeConstruct):
3624         New methods.
3625         
3626         * bridge/runtime_object.cpp:
3627         (JSC::callRuntimeConstructor):
3628         Call the native instance.
3629         
3630         (JSC::RuntimeObjectImp::getConstructData):
3631         Implement this.
3632         
3633         * bridge/runtime_object.h:
3634         Add new method declarations.
3635         
3636         * plugins/gtk/PluginPackageGtk.cpp:
3637         (WebCore::PluginPackage::load):
3638         * plugins/qt/PluginPackageQt.cpp:
3639         (WebCore::PluginPackage::load):
3640         * plugins/win/PluginPackageWin.cpp:
3641         (WebCore::PluginPackage::load):
3642         Initialize m_pluginFuncs.construct.
3643
3644 2008-10-24  Adele Peterson  <adele@apple.com>
3645
3646         Build fix.
3647
3648         * platform/FileChooser.h: (WebCore::FileChooserClient::~FileChooserClient):
3649         * platform/graphics/mac/IconMac.mm: (WebCore::Icon::newIconForFiles):
3650
3651 2008-10-24  Greg Bolsinga  <bolsinga@apple.com>
3652
3653         Fix GTK build break.
3654
3655         Reviewed by David Kilzer.
3656
3657         * GNUmakefile.am: Do not include .idl files whose generated files should not be
3658         compiled.
3659
3660 2008-10-24  David Kilzer  <ddkilzer@apple.com>
3661
3662         Wx build fix.
3663
3664         * platform/wx/TemporaryLinkStubs.cpp:
3665         (WebCore::setFocusRingColorChangeFunction): Removed in r37858.
3666
3667 2008-10-24  Adele Peterson  <adele@apple.com>
3668
3669         Reviewed by Sam Weinig.
3670
3671         WebCore part of fix for <rdar://problem/5839256> FILE CONTROL: multi-file upload.
3672
3673         This change adds support for multiple file selection in an <input type="file"> control when the "multiple" attribute is used.
3674         This is consistent with the direction HTML5 will be going in the future.
3675
3676         The initial implementation here will show "n files" as the text next to the control when multiple files are selected.  You can view
3677         the individual files in a tooltip for now.  Improvements to this control will come later.  
3678
3679         Web developers will be able to access the FileList from the HTMLInputElement element, where they can get a base name and a size for each file.  
3680         These FileList Files can also be sent in an XMLHTTPRequest.
3681
3682         * manual-tests/post-multi-file-upload.html: Added.
3683         * manual-tests/resources/multiFileResources: Added.
3684         * manual-tests/resources/multiFileResources/post-echo-and-notify-done.cgi: Added.
3685         * manual-tests/resources/multiFileResources/testFile1.html: Added.
3686         * manual-tests/resources/multiFileResources/testFile2.html: Added.
3687         * manual-tests/resources/multiFileResources/testFile3.html: Added.
3688
3689         * WebCore.base.exp: Added support to export the new "chooseFilenames" method to be used in WebKit.
3690
3691         * html/HTMLInputElement.cpp:
3692         (WebCore::HTMLInputElement::parseMappedAttribute): Add support for the multiple attribute.
3693         (WebCore::HTMLInputElement::value): Added comments.  The HTML5 spec says that value shouldn't apply for the file upload control,
3694         but we don't want to break the behavior for existing websites that may rely on this.
3695         (WebCore::HTMLInputElement::setValue): ditto.
3696         (WebCore::HTMLInputElement::setValueFromRenderer): This is no longer used for file upload controls. setFileListFromRenderer is used instead.
3697         (WebCore::HTMLInputElement::setFileListFromRenderer): Added. 
3698         * html/HTMLInputElement.h:
3699
3700         * page/Chrome.cpp: (WebCore::Chrome::setToolTip): Show a tooltip with the file name list for the multi-file upload control.
3701
3702         * page/DragController.cpp: (WebCore::DragController::concludeDrag): Updated to support multiple files.
3703
3704         * platform/FileChooser.cpp: Add support for maintaining a list of file paths that can be retrieved by the renderer.
3705         (WebCore::FileChooser::FileChooser):
3706         (WebCore::FileChooser::create):
3707         (WebCore::FileChooser::clear):
3708         (WebCore::FileChooser::chooseFile):
3709         (WebCore::FileChooser::chooseFiles):
3710         (WebCore::FileChooser::chooseIcon):
3711         * platform/FileChooser.h:
3712         (WebCore::FileChooser::filePaths):
3713         (WebCore::FileChooser::allowsMultipleFiles):
3714
3715         * platform/graphics/Icon.h:
3716         * platform/graphics/mac/IconMac.mm: (WebCore::Icon::newIconForFiles): Returns a generic icon for multiple files.
3717         * platform/graphics/gtk/IconGtk.cpp: (WebCore::Icon::newIconForFiles): stubbed out.
3718         * platform/graphics/qt/IconQt.cpp: (WebCore::Icon::newIconForFiles): ditto.
3719         * platform/graphics/win/IconWin.cpp: (WebCore::Icon::newIconForFiles): ditto.
3720
3721         * platform/gtk/FileChooserGtk.cpp: (WebCore::FileChooser::basenameForWidth):  Updated to deal with new filenames vector.
3722         * platform/mac/FileChooserMac.mm: (WebCore::FileChooser::basenameForWidth): ditto.
3723         * platform/qt/FileChooserQt.cpp:
3724         (WebCore::FileChooser::openFileChooser):
3725         (WebCore::FileChooser::basenameForWidth):
3726         * platform/win/FileChooserWin.cpp: (WebCore::FileChooser::basenameForWidth):
3727
3728         * platform/network/mac/FormDataStreamMac.mm: (WebCore::disassociateStreamWithResourceHandle):
3729         Removed unnecessary assertion.  This can get hit when connectionDidFinishLoading and cancel
3730         both get called for the same ResourceHandle.  This getting called twice has no negative effect.
3731
3732         * rendering/RenderFileUploadControl.cpp:
3733         (WebCore::RenderFileUploadControl::valueChanged):  Calls setFileListFromRenderer.
3734         (WebCore::RenderFileUploadControl::allowsMultipleFiles):  Added.
3735         (WebCore::RenderFileUploadControl::updateFromElement):  Uses the new filenames call from FileChooser.
3736         (WebCore::RenderFileUploadControl::receiveDroppedFiles):  Updated to support multiple files.
3737         * rendering/RenderFileUploadControl.h:
3738
3739 2008-10-23  Peter Kasting  <pkasting@google.com>
3740
3741         Reviewed by David Hyatt.
3742
3743         https://bugs.webkit.org/show_bug.cgi?id=21844
3744         Remove setFocusRingColorChangeFunction.
3745
3746         * page/Page.cpp:
3747         (WebCore::Page::Page):
3748         * platform/graphics/Color.h:
3749         * platform/graphics/mac/ColorMac.mm:
3750         (WebCore::focusRingColor):
3751         * platform/graphics/qt/GraphicsContextQt.cpp:
3752         * platform/graphics/win/ColorSafari.cpp:
3753
3754 2008-10-24  David Kilzer  <ddkilzer@apple.com>
3755
3756         Build fix for Qt.
3757
3758         Reviewed by Greg.
3759
3760         * WebCore.pro: Added missing *.idl files.
3761
3762 2008-10-24  Greg Bolsinga  <bolsinga@apple.com>
3763
3764         Reviewed by Sam Weinig.
3765
3766         https://bugs.webkit.org/show_bug.cgi?id=21475
3767         
3768         Provide support for the Geolocation API
3769         
3770         http://dev.w3.org/geo/api/spec-source.html
3771
3772         Test: geolocation/geolocation-not-implemented.html
3773
3774         * DerivedSources.make:
3775         * GNUmakefile.am: Added Geolocation support
3776         * WebCore.pro: Added Geolocation support
3777         * WebCore.vcproj/WebCore.vcproj: Added Geolocation support
3778         * WebCore.xcodeproj/project.pbxproj: Added Geolocation support
3779         * WebCoreSources.bkl: Added Geolocation support
3780         * bindings/js/JSCustomPositionCallback.cpp: Added.
3781         (WebCore::JSCustomPositionCallback::JSCustomPositionCallback):
3782         (WebCore::JSCustomPositionCallback::handleEvent):
3783         * bindings/js/JSCustomPositionCallback.h: Added.
3784         (WebCore::JSCustomPositionCallback::create):
3785         * bindings/js/JSCustomPositionErrorCallback.cpp: Added.
3786         (WebCore::JSCustomPositionErrorCallback::JSCustomPositionErrorCallback):
3787         (WebCore::JSCustomPositionErrorCallback::handleEvent):
3788         * bindings/js/JSCustomPositionErrorCallback.h: Added.
3789         (WebCore::JSCustomPositionErrorCallback::create):
3790         * bindings/js/JSDOMBinding.cpp: move markDOMObjectWrapper here from JSDOMWindowCustom
3791         (WebCore::markDOMObjectWrapper):
3792         * bindings/js/JSDOMBinding.h: move markDOMObjectWrapper here from JSDOMWindowCustom
3793         * bindings/js/JSDOMWindowCustom.cpp: move markDOMObjectWrapper to JSDOMBinding
3794         * bindings/js/JSGeolocationCustom.cpp: Added.
3795         (WebCore::JSGeolocation::getCurrentPosition):
3796         (WebCore::JSGeolocation::watchPosition):
3797         * bindings/js/JSNavigatorCustom.cpp: handle marking Geolocation
3798         (WebCore::JSNavigator::mark):
3799         * dom/Document.cpp:
3800         (WebCore::Document::Document):
3801         * dom/Document.h:
3802         (WebCore::Document::setUsingGeolocation):
3803         (WebCore::Document::usingGeolocation):
3804         * loader/FrameLoader.cpp: don't add to back forward cache if using Geolocation
3805         (WebCore::FrameLoader::canCachePage):
3806         * page/Geolocation.cpp: Added.
3807         (WebCore::Geolocation::GeoNotifier::GeoNotifier):
3808         (WebCore::Geolocation::GeoNotifier::timerFired):
3809         (WebCore::Geolocation::Geolocation):
3810         (WebCore::Geolocation::disconnectFrame):
3811         (WebCore::Geolocation::getCurrentPosition):
3812         (WebCore::Geolocation::watchPosition):
3813         (WebCore::Geolocation::clearWatch):
3814         (WebCore::Geolocation::stopUpdatingIfEmpty):
3815         (WebCore::Geolocation::sendErrorToOneShots):
3816         (WebCore::Geolocation::sendErrorToWatchers):
3817         (WebCore::Geolocation::sendPositionToOneShots):
3818         (WebCore::Geolocation::sendPositionToWatchers):
3819         (WebCore::Geolocation::handleError):
3820         (WebCore::Geolocation::geolocationServicePositionChanged):
3821         (WebCore::Geolocation::geolocationServiceErrorOccurred):
3822         * page/Geolocation.h: Added.
3823         (WebCore::Geolocation::create):
3824         (WebCore::Geolocation::~Geolocation):
3825         (WebCore::Geolocation::lastPosition):
3826         (WebCore::Geolocation::GeoNotifier::create):
3827         * page/Geolocation.idl: Added.
3828         * page/Geoposition.cpp: Added.
3829         (WebCore::Geoposition::toString):
3830         * page/Geoposition.h: Added.
3831         (WebCore::Geoposition::create):
3832         (WebCore::Geoposition::latitude):
3833         (WebCore::Geoposition::longitude):
3834         (WebCore::Geoposition::altitude):
3835         (WebCore::Geoposition::accuracy):
3836         (WebCore::Geoposition::altitudeAccuracy):
3837         (WebCore::Geoposition::heading):
3838         (WebCore::Geoposition::velocity):
3839         (WebCore::Geoposition::timestamp):
3840         (WebCore::Geoposition::Geoposition):
3841         * page/Geoposition.idl: Added.
3842         * page/Navigator.cpp:
3843         (WebCore::Navigator::disconnectFrame): disconnect Geolocation
3844         (WebCore::Navigator::geolocation): accessor for Geolocation
3845         * page/Navigator.h:
3846         (WebCore::Navigator::optionalGeolocation): accessor for Geolocation
3847         * page/Navigator.idl: accessor for Geolocation
3848         * page/PositionCallback.h: Added.
3849         (WebCore::PositionCallback::~PositionCallback):
3850         * page/PositionCallback.idl: Added.
3851         * page/PositionError.h: Added.
3852         (WebCore::PositionError::):
3853         (WebCore::PositionError::create):
3854         (WebCore::PositionError::code):
3855         (WebCore::PositionError::message):
3856         (WebCore::PositionError::PositionError):
3857         * page/PositionError.idl: Added.
3858         * page/PositionErrorCallback.h: Added.
3859         (WebCore::PositionErrorCallback::~PositionErrorCallback):
3860         * page/PositionErrorCallback.idl: Added.
3861         * page/PositionOptions.h: Added.
3862         (WebCore::PositionOptions::create):
3863         (WebCore::PositionOptions::enableHighAccuracy):
3864         (WebCore::PositionOptions::setEnableHighAccuracy):
3865         (WebCore::PositionOptions::timeout):
3866         (WebCore::PositionOptions::setTimeout):
3867         (WebCore::PositionOptions::PositionOptions):
3868         * page/PositionOptions.idl: Added.
3869         * platform/GeolocationService.cpp: Added.
3870         (WebCore::GeolocationService::GeolocationService):
3871         (WebCore::GeolocationService::positionChanged):
3872         (WebCore::GeolocationService::errorOccurred):
3873         * platform/GeolocationService.h: Added.
3874         (WebCore::GeolocationServiceClient::~GeolocationServiceClient):
3875         (WebCore::GeolocationServiceClient::geolocationServicePositionChanged):
3876         (WebCore::GeolocationServiceClient::geolocationServiceErrorOccurred):
3877         (WebCore::GeolocationService::~GeolocationService):
3878
3879 2008-10-24  Simon Fraser  <simon.fraser@apple.com>
3880
3881         Reviewed by Darin Adler
3882
3883         https://bugs.webkit.org/show_bug.cgi?id=21818
3884         
3885         Add HashTraits for AtomicString so that AtomicString can be used as
3886         the key for a HashMap or HashSet.
3887
3888         * GNUmakefile.am: add AtomicStringHash.h
3889         * WebCore.vcproj/WebCore.vcproj: add AtomicStringHash.h
3890         * WebCore.xcodeproj/project.pbxproj: add AtomicStringHash.h
3891         * platform/text/AtomicString.h:
3892         (WebCore::AtomicString::AtomicString):
3893         (WebCore::AtomicString::isHashTableDeletedValue):
3894             specialize DefaultHash for AtomicString to use AtomicStringHash
3895         * platform/text/AtomicStringHash.h: Added.
3896         * platform/text/StringImpl.cpp:
3897         (WebCore::StringImpl::StringImpl):
3898             compute the hash up-front for the empty string
3899         * platform/text/StringImpl.h:
3900         (WebCore::StringImpl::existingHash):
3901             method to get the hash without a test and branch, for callers like
3902             AtomicStringHash who can guarantee that the hash has already been computed.
3903
3904 2008-10-24  Simon Fraser  <simon.fraser@apple.com>
3905
3906         Reviewed by Sam Weinig
3907
3908         https://bugs.webkit.org/show_bug.cgi?id=21857
3909
3910         Add WebKitCSSKeyframeRule and WebKitCSSKeyframesRule to the
3911         switch in _wrapCSSRule.
3912         
3913         * bindings/objc/DOMCSS.mm:
3914         (+[DOMCSSRule _wrapCSSRule:WebCore::]):
3915
3916 2008-10-24  Adam Roben  <aroben@apple.com>
3917
3918         Windows build fix
3919
3920         * plugins/PluginView.cpp:
3921
3922 2008-10-24  Dan Bernstein  <mitz@apple.com>
3923
3924         Reviewed by Sam Weinig.
3925
3926         - fix https://bugs.webkit.org/show_bug.cgi?id=21851
3927           <rdar://problem/6304151> REGRESSION (r36513): Crash when removing a widget with percent height
3928
3929         Test: fast/replaced/percent-height-in-anonymous-block-widget.html
3930
3931         * rendering/RenderWidget.cpp:
3932         (WebCore::RenderWidget::destroy): Copied code added to
3933         RenderBox::destroy() in r36513 into this function.
3934
3935 2008-10-24  Timothy Hatcher  <timothy@apple.com>
3936
3937         Add a mechanism to ask the InspectorClient for key/value setting pairs.
3938         These settings can be strings, numbers, booleans or string vectors. The
3939         settings are also bridged to and from JavaScript.
3940
3941         https://bugs.webkit.org/show_bug.cgi?id=21856
3942
3943         Reviewed by Darin Adler.
3944
3945         * WebCore.base.exp: Expose the String CFStringRef constructor.
3946         * inspector/InspectorClient.h:
3947         (WebCore::InspectorClient::populateSetting): Added, pure virtual.
3948         (WebCore::InspectorClient::storeSetting): Ditto.
3949         (WebCore::InspectorClient::removeSetting): Ditto.
3950         * inspector/InspectorController.cpp:
3951         (WebCore::setting): Calls InspectorController::setting and wraps the result in script types.
3952         (WebCore::setSetting): Calls InspectorController::setSetting after converting from script types.
3953         (WebCore::InspectorController::InspectorController): Increment a global static
3954         to track the number of live InspectorControllers.
3955         (WebCore::InspectorController::~InspectorController): Decrement the global static
3956         that tracks the number of live InspectorControllers. Delete the setting cache if there
3957         are no more live controllers.
3958         (WebCore::InspectorController::setting): Check the cache and return the setting from there,
3959         otherwise make a new Setting and ask the client to populate it.
3960         (WebCore::InspectorController::setSetting): Change the cache and ask the client to store it.
3961         (WebCore::InspectorController::windowScriptObjectAvailable): Add setting and setSetting
3962         to the InspectorController script class.
3963         * inspector/InspectorController.h:
3964         (WebCore::InspectorController::Setting::Setting):
3965         (WebCore::InspectorController::Setting::operator=):
3966         (WebCore::InspectorController::Setting::type): Return m_type.
3967         (WebCore::InspectorController::Setting::string): Return m_string. Assert the type is correct.
3968         (WebCore::InspectorController::Setting::stringVector): Return m_stringVector.
3969         Assert the type is correct.
3970         (WebCore::InspectorController::Setting::doubleValue): Return m_simpleContent.m_double.
3971         Assert the type is correct.
3972         (WebCore::InspectorController::Setting::integerValue): Return m_simpleContent.m_integer.
3973         Assert the type is correct.
3974         (WebCore::InspectorController::Setting::booleanValue): Return m_simpleContent.m_boolean.
3975         Assert the type is correct.
3976         (WebCore::InspectorController::Setting::set): Overloaded for each data type, sets the right
3977         field and the type.
3978         * loader/EmptyClients.h:
3979         (WebCore::EmptyInspectorClient::populateSetting): Added, empty method.
3980         (WebCore::EmptyInspectorClient::storeSetting): Ditto.
3981         (WebCore::EmptyInspectorClient::removeSetting): Ditto.
3982
3983 2008-10-24  Cameron Zwarich  <zwarich@apple.com>
3984
3985         Reviewed by Sam Weinig.
3986
3987         Remove some C-style casts.
3988
3989         * html/HTMLViewSourceDocument.cpp:
3990         (WebCore::HTMLViewSourceDocument::addViewSourceToken):
3991
3992 2008-10-24  Darin Adler  <darin@apple.com>
3993
3994         - finish rolling out https://bugs.webkit.org/show_bug.cgi?id=21732
3995
3996         * bindings/js/JSAttrCustom.cpp:
3997         * bindings/js/JSCSSRuleCustom.cpp:
3998         * bindings/js/JSCSSStyleDeclarationCustom.cpp:
3999         * bindings/js/JSCSSValueCustom.cpp:
4000         * bindings/js/JSCanvasPixelArrayCustom.h:
4001         * bindings/js/JSCanvasRenderingContext2DCustom.cpp:
4002         * bindings/js/JSClipboardCustom.cpp:
4003         * bindings/js/JSConsoleCustom.cpp:
4004         * bindings/js/JSCustomSQLStatementCallback.cpp:
4005         * bindings/js/JSCustomSQLStatementErrorCallback.cpp:
4006         * bindings/js/JSCustomSQLTransactionCallback.cpp:
4007         * bindings/js/JSCustomSQLTransactionErrorCallback.cpp:
4008         * bindings/js/JSCustomVoidCallback.cpp:
4009         * bindings/js/JSCustomVoidCallback.h:
4010         * bindings/js/JSCustomXPathNSResolver.cpp:
4011         * bindings/js/JSCustomXPathNSResolver.h:
4012         * bindings/js/JSDOMApplicationCacheCustom.cpp:
4013         * bindings/js/JSDOMBinding.cpp:
4014         * bindings/js/JSDOMBinding.h:
4015         * bindings/js/JSDOMWindowBase.cpp:
4016         * bindings/js/JSDOMWindowBase.h:
4017         * bindings/js/JSDOMWindowCustom.cpp:
4018         * bindings/js/JSDOMWindowCustom.h:
4019         * bindings/js/JSDOMWindowShell.cpp:
4020         * bindings/js/JSDOMWindowShell.h:
4021         * bindings/js/JSDatabaseCustom.cpp:
4022         * bindings/js/JSDedicatedWorkerCustom.cpp:
4023         * bindings/js/JSDocumentCustom.cpp:
4024         * bindings/js/JSElementCustom.cpp:
4025         * bindings/js/JSEventCustom.cpp:
4026         * bindings/js/JSEventListener.cpp:
4027         * bindings/js/JSEventTarget.cpp:
4028         * bindings/js/JSEventTarget.h:
4029         * bindings/js/JSEventTargetBase.h:
4030         * bindings/js/JSEventTargetNodeCustom.cpp:
4031         * bindings/js/JSHTMLAllCollection.h:
4032         * bindings/js/JSHTMLAppletElementCustom.cpp:
4033         * bindings/js/JSHTMLCollectionCustom.cpp:
4034         * bindings/js/JSHTMLDocumentCustom.cpp:
4035         * bindings/js/JSHTMLEmbedElementCustom.cpp:
4036         * bindings/js/JSHTMLFormElementCustom.cpp:
4037         * bindings/js/JSHTMLFrameElementCustom.cpp:
4038         * bindings/js/JSHTMLFrameSetElementCustom.cpp:
4039         * bindings/js/JSHTMLIFrameElementCustom.cpp:
4040         * bindings/js/JSHTMLInputElementCustom.cpp:
4041         * bindings/js/JSHTMLObjectElementCustom.cpp:
4042         * bindings/js/JSHTMLOptionsCollectionCustom.cpp:
4043         * bindings/js/JSHTMLSelectElementCustom.cpp:
4044         * bindings/js/JSHTMLSelectElementCustom.h:
4045         * bindings/js/JSHistoryCustom.cpp:
4046         * bindings/js/JSImageDataCustom.cpp:
4047         * bindings/js/JSInspectedObjectWrapper.cpp:
4048         * bindings/js/JSInspectedObjectWrapper.h:
4049         * bindings/js/JSInspectorCallbackWrapper.cpp:
4050         * bindings/js/JSInspectorCallbackWrapper.h:
4051         * bindings/js/JSJavaScriptCallFrameCustom.cpp:
4052         * bindings/js/JSLocationCustom.cpp:
4053         * bindings/js/JSMessagePortCustom.cpp:
4054         * bindings/js/JSMimeTypeArrayCustom.cpp:
4055         * bindings/js/JSNamedNodeMapCustom.cpp:
4056         * bindings/js/JSNamedNodesCollection.cpp:
4057         * bindings/js/JSNamedNodesCollection.h:
4058         * bindings/js/JSNavigatorCustom.cpp:
4059         * bindings/js/JSNodeCustom.cpp:
4060         * bindings/js/JSNodeFilterCondition.cpp:
4061         * bindings/js/JSNodeFilterCondition.h:
4062         * bindings/js/JSNodeFilterCustom.cpp:
4063         * bindings/js/JSNodeIteratorCustom.cpp:
4064         * bindings/js/JSNodeListCustom.cpp:
4065         * bindings/js/JSPluginArrayCustom.cpp:
4066         * bindings/js/JSPluginCustom.cpp:
4067         * bindings/js/JSPluginElementFunctions.cpp:
4068         * bindings/js/JSPluginElementFunctions.h:
4069         * bindings/js/JSQuarantinedObjectWrapper.cpp:
4070         * bindings/js/JSQuarantinedObjectWrapper.h:
4071         * bindings/js/JSRGBColor.cpp:
4072         * bindings/js/JSRGBColor.h:
4073         * bindings/js/JSSQLResultSetRowListCustom.cpp:
4074         * bindings/js/JSSQLTransactionCustom.cpp:
4075         * bindings/js/JSSVGElementInstanceCustom.cpp:
4076         * bindings/js/JSSVGLengthCustom.cpp:
4077         * bindings/js/JSSVGMatrixCustom.cpp:
4078         * bindings/js/JSSVGPathSegCustom.cpp:
4079         * bindings/js/JSSVGPathSegListCustom.cpp:
4080         * bindings/js/JSSVGPointListCustom.cpp:
4081         * bindings/js/JSSVGTransformListCustom.cpp:
4082         * bindings/js/JSStorageCustom.cpp:
4083         * bindings/js/JSStyleSheetCustom.cpp:
4084         * bindings/js/JSStyleSheetListCustom.cpp:
4085         * bindings/js/JSTextCustom.cpp:
4086         * bindings/js/JSTreeWalkerCustom.cpp:
4087         * bindings/js/JSXMLHttpRequestCustom.cpp:
4088         * bindings/js/JSXMLHttpRequestUploadCustom.cpp:
4089         * bindings/js/JSXSLTProcessorCustom.cpp:
4090         * bindings/js/ScheduledAction.cpp:
4091         * bindings/js/ScheduledAction.h:
4092         * bindings/js/ScriptController.cpp:
4093         * bindings/js/ScriptController.h:
4094         * bindings/objc/WebScriptObject.mm:
4095         * bindings/objc/WebScriptObjectPrivate.h:
4096         * bindings/scripts/CodeGeneratorJS.pm:
4097         * bridge/NP_jsobject.cpp:
4098         * bridge/c/c_instance.cpp:
4099         * bridge/c/c_instance.h:
4100         * bridge/c/c_runtime.cpp:
4101         * bridge/c/c_runtime.h:
4102         * bridge/c/c_utility.cpp:
4103         * bridge/c/c_utility.h:
4104         * bridge/jni/jni_instance.cpp:
4105         * bridge/jni/jni_instance.h:
4106         * bridge/jni/jni_jsobject.h:
4107         * bridge/jni/jni_jsobject.mm:
4108         * bridge/jni/jni_objc.mm:
4109         * bridge/jni/jni_runtime.cpp:
4110         * bridge/jni/jni_runtime.h:
4111         * bridge/jni/jni_utility.cpp:
4112         * bridge/jni/jni_utility.h:
4113         * bridge/objc/WebScriptObject.h:
4114         * bridge/objc/objc_class.h:
4115         * bridge/objc/objc_class.mm:
4116         * bridge/objc/objc_instance.h:
4117         * bridge/objc/objc_instance.mm:
4118         * bridge/objc/objc_runtime.h:
4119         * bridge/objc/objc_runtime.mm:
4120         * bridge/objc/objc_utility.h:
4121         * bridge/objc/objc_utility.mm:
4122         * bridge/qt/qt_class.cpp:
4123         * bridge/qt/qt_class.h:
4124         * bridge/qt/qt_instance.cpp:
4125         * bridge/qt/qt_instance.h:
4126         * bridge/qt/qt_runtime.cpp:
4127         * bridge/qt/qt_runtime.h:
4128         * bridge/runtime.cpp:
4129         * bridge/runtime.h:
4130         * bridge/runtime_array.cpp:
4131         * bridge/runtime_array.h:
4132         * bridge/runtime_method.cpp:
4133         * bridge/runtime_method.h:
4134         * bridge/runtime_object.cpp:
4135         * bridge/runtime_object.h:
4136         * bridge/testqtbindings.cpp:
4137         * inspector/JavaScriptCallFrame.cpp:
4138         * inspector/JavaScriptCallFrame.h:
4139         * inspector/JavaScriptProfile.cpp:
4140         * inspector/JavaScriptProfile.h:
4141         * inspector/JavaScriptProfileNode.cpp:
4142         * inspector/JavaScriptProfileNode.h:
4143         * loader/FrameLoader.cpp:
4144         * loader/FrameLoader.h:
4145         * page/Console.cpp:
4146         * page/Console.h:
4147         * plugins/MimeTypeArray.h:
4148         * plugins/Plugin.h:
4149         * plugins/PluginArray.h:
4150         * plugins/PluginView.cpp:
4151         * xml/XMLHttpRequest.cpp:
4152         Use JSValue* instead of JSValuePtr.
4153
4154 2008-10-24  Simon Hausmann  <hausmann@webkit.org>
4155
4156         Fix the Qt build.
4157
4158         * bridge/qt/qt_instance.cpp:
4159         (JSC::Bindings::QtField::valueFromInstance):
4160
4161 2008-10-24  David Kilzer  <ddkilzer@apple.com>
4162
4163         Rolled out r37840 and r37841.
4164
4165         * DerivedSources.make:
4166         * GNUmakefile.am:
4167         * WebCore.pro:
4168         * WebCore.vcproj/WebCore.vcproj:
4169         * WebCore.xcodeproj/project.pbxproj:
4170         * WebCoreSources.bkl:
4171         * bindings/js/JSCustomPositionCallback.cpp: Removed.
4172         * bindings/js/JSCustomPositionCallback.h: Removed.
4173         * bindings/js/JSCustomPositionErrorCallback.cpp: Removed.
4174         * bindings/js/JSCustomPositionErrorCallback.h: Removed.
4175         * bindings/js/JSDOMBinding.cpp:
4176         * bindings/js/JSDOMBinding.h:
4177         * bindings/js/JSDOMWindowCustom.cpp:
4178         (WebCore::markDOMObjectWrapper):
4179         * bindings/js/JSGeolocationCustom.cpp: Removed.
4180         * bindings/js/JSNavigatorCustom.cpp:
4181         * dom/Document.cpp:
4182         (WebCore::Document::Document):
4183         * dom/Document.h:
4184         * loader/FrameLoader.cpp:
4185         (WebCore::FrameLoader::canCachePage):
4186         * page/Geolocation.cpp: Removed.
4187         * page/Geolocation.h: Removed.
4188         * page/Geolocation.idl: Removed.
4189         * page/Geoposition.cpp: Removed.
4190         * page/Geoposition.h: Removed.
4191         * page/Geoposition.idl: Removed.
4192         * page/Navigator.cpp:
4193         (WebCore::Navigator::disconnectFrame):
4194         * page/Navigator.h:
4195         * page/Navigator.idl:
4196         * page/PositionCallback.h: Removed.
4197         * page/PositionCallback.idl: Removed.
4198         * page/PositionError.h: Removed.
4199         * page/PositionError.idl: Removed.
4200         * page/PositionErrorCallback.h: Removed.
4201         * page/PositionErrorCallback.idl: Removed.
4202         * page/PositionOptions.h: Re