WebCore:
[WebKit-https.git] / WebCore / ChangeLog
1 2007-11-06  Adele Peterson  <adele@apple.com>
2
3         Reviewed by Darin.
4
5         Switched all uses of HTMLImageLoader to use OwnPtrs.
6
7         * html/HTMLInputElement.h:
8         * html/HTMLInputElement.cpp:
9         (WebCore::HTMLInputElement::init):
10         (WebCore::HTMLInputElement::~HTMLInputElement):
11         (WebCore::HTMLInputElement::setInputType):
12         (WebCore::HTMLInputElement::parseMappedAttribute):
13         (WebCore::HTMLInputElement::attach):
14         * html/HTMLObjectElement.h:
15         * html/HTMLObjectElement.cpp:
16         (WebCore::HTMLObjectElement::HTMLObjectElement):
17         (WebCore::HTMLObjectElement::~HTMLObjectElement):
18         (WebCore::HTMLObjectElement::parseMappedAttribute):
19         (WebCore::HTMLObjectElement::attach):
20         * html/HTMLVideoElement.h:
21         * html/HTMLVideoElement.cpp:
22         (WebCore::HTMLVideoElement::HTMLVideoElement):
23         (WebCore::HTMLVideoElement::attach):
24         (WebCore::HTMLVideoElement::detach):
25         (WebCore::HTMLVideoElement::parseMappedAttribute):
26
27 2007-11-06  Antti Koivisto  <antti@apple.com>
28
29         Reviewed by Darin.
30         
31         Trigger media load on on src attribute changes as specified in new HTML5 draft.
32
33         Tests: media/video-src-change.html
34                media/video-src-remove.html
35                media/video-src-set.html
36
37         * html/HTMLMediaElement.cpp:
38         (WebCore::HTMLMediaElement::attributeChanged):
39         * html/HTMLMediaElement.h:
40
41 2007-11-06  Dan Bernstein  <mitz@apple.com>
42
43         Reviewed by Darin Adler.
44
45         - fix http://bugs.webkit.org/show_bug.cgi?id=15838
46           Incomplete repaint toggling "How you know this person" on Facebook
47
48         Test: fast/repaint/make-children-non-inline.html
49
50         * rendering/RenderBlock.cpp:
51         (WebCore::RenderBlock::makeChildrenNonInline): Repaint the block. This
52         is needed because the inline children may be repositioned as they move
53         into new anonymous blocks, but those blocks have no knowledge of where
54         their children used to be, so they cannot invalidate those areas.
55
56 2007-11-06  Alexey Proskuryakov  <ap@webkit.org>
57
58         Reviewed by Darin.
59
60         http://bugs.webkit.org/show_bug.cgi?id=15847
61         Some editing cleanup
62
63         No change in functionality.
64
65         * editing/TextIterator.cpp:
66         (WebCore::plainText):
67         * editing/TextIterator.h:
68         Made WebCore::plainText() return String instead of DeprecatedString.
69
70         * bridge/mac/WebCoreAXObject.mm:
71         (-[WebCoreAXObject textUnderElement]):
72         (-[WebCoreAXObject value]):
73         (-[WebCoreAXObject doAXBoundsForTextMarkerRange:]):
74         (-[WebCoreAXObject doAXNextSentenceEndTextMarkerForTextMarker:]):
75         (-[WebCoreAXObject doAXPreviousSentenceStartTextMarkerForTextMarker:]):
76         Updated for the above change. There is no need to explicitly convert to NSString now.
77
78         * editing/EditCommand.cpp:
79         (WebCore::EditCommand::EditCommand): m_startingSelection and m_endingSelection are actually
80         initialized in constructor body, so the work done in initializer list was wasted.
81
82         (WebCore::EditCommand::apply): Moved some stars.
83         (WebCore::EditCommand::unapply): Ditto.
84         (WebCore::EditCommand::reapply): Ditto.
85         (WebCore::EditCommand::setStartingSelection): The loop exit condition was evaluated twice,
86         removed one of the checks.
87
88         * editing/SelectionController.cpp:
89         (WebCore::SelectionController::toString): plainText() result type now matches what we need here.
90
91         * page/mac/WebCoreFrameBridge.h:
92         * page/mac/WebCoreFrameBridge.mm:
93         Removed unused -[WebCoreFrameBridge deleteKeyPressedWithSmartDelete:granularity:] and
94         -[WebCoreFrameBridge forwardDeleteKeyPressedWithSmartDelete:granularity:].
95
96 2007-11-05  Mark Rowe  <mrowe@apple.com>
97
98         Mac build fix.
99
100         * bindings/js/JSHTMLDocumentCustom.cpp:
101         (WebCore::writeHelper):
102
103 2007-11-05  Adam Roben  <aroben@apple.com>
104
105         Don't crash if SafariTheme can't be loaded
106
107         PlatformScrollBarSafari and RenderThemeSafari were not checking
108         whether SafariTheme was successfully loaded. All other uses of
109         SafariTheme already check this.
110
111         Reviewed by Steve.
112
113         * platform/win/PlatformScrollBarSafari.cpp: Don't paint if SafariTheme
114         couldn't be loaded.
115         (WebCore::PlatformScrollbar::paintButton):
116         (WebCore::PlatformScrollbar::paintTrack):
117         (WebCore::PlatformScrollbar::paintThumb):
118         * rendering/RenderThemeSafari.cpp:
119         (WebCore::RenderThemeSafari::isControlStyled): Always return true if
120         we couldn't load SafariTheme. This way we should never try to paint
121         themed controls (and we assert as such in the paint functions).
122         (WebCore::RenderThemeSafari::paintCheckbox):
123         (WebCore::RenderThemeSafari::paintRadio):
124         (WebCore::RenderThemeSafari::paintButton):
125         (WebCore::RenderThemeSafari::paintTextField):
126         (WebCore::RenderThemeSafari::paintCapsLockIndicator):
127         (WebCore::RenderThemeSafari::paintTextArea):
128         (WebCore::RenderThemeSafari::paintMenuList):
129         (WebCore::RenderThemeSafari::paintSliderThumb):
130         (WebCore::RenderThemeSafari::paintSearchField):
131         (WebCore::RenderThemeSafari::paintSearchFieldCancelButton):
132         (WebCore::RenderThemeSafari::paintSearchFieldResultsDecoration):
133         (WebCore::RenderThemeSafari::paintSearchFieldResultsButton):
134
135 2007-11-05  Kevin Ollivier  <kevino@theolliviers.com>
136
137         Adding the rest of wx port's graphics impl. 
138
139         Rubber-stamped by Maciej Stachowiak.
140
141         * platform/graphics/wx/AffineTransformWx.cpp: Added.
142         * platform/graphics/wx/GraphicsContextWx.cpp: Added.
143         * platform/graphics/wx/ImageBufferWx.cpp: Added.
144         * platform/graphics/wx/ImageSourceWx.cpp: Added.
145         * platform/graphics/wx/ImageWx.cpp: Added.
146         * platform/graphics/wx/PathWx.cpp: Added.
147
148 2007-11-05  Kevin Ollivier  <kevino@theolliviers.com>
149
150         wx port bug fixes and new files to get platform/wx building on trunk.
151
152         Rubber-stamped by Maciej Stachowiak.
153
154         * platform/wx/CursorWx.cpp:
155         * platform/wx/FileSystemWx.cpp: Added.
156         * platform/wx/FontCacheWx.cpp:
157         * platform/wx/FontPlatformDataWx.cpp:
158         * platform/wx/FontWx.cpp:
159         * platform/wx/KeyboardEventWx.cpp:
160         * platform/wx/LocalizedStringsWx.cpp: Added.
161         * platform/wx/LoggingWx.cpp: Added.
162         * platform/wx/RenderThemeWx.cpp:
163         * platform/wx/ScrollViewWx.cpp:
164         * platform/wx/SharedTimerWx.cpp:
165         * platform/wx/StringWx.cpp:
166         * platform/wx/ThreadingWx.cpp: Added.
167         * platform/wx/WidgetWx.cpp:
168
169 2007-11-05  Adele Peterson  <adele@apple.com>
170
171         Reviewed by Maciej.
172
173         Fix for <rdar://problem/5579999> Add poster attribute for video element
174
175         * html/HTMLAttributeNames.in: Added poster attribute.
176
177         * html/HTMLImageLoader.cpp: (WebCore::HTMLImageLoader::updateFromElement):
178           Calls imageSourceAttributeName instead of having special cases for the different kinds of elements. 
179         * dom/Element.cpp: (WebCore::Element::imageSourceAttributeName): Added.
180         * dom/Element.h:
181         * html/HTMLObjectElement.cpp: (WebCore::HTMLObjectElement::imageSourceAttributeName): Added.
182         * html/HTMLObjectElement.h:
183
184         * html/HTMLMediaElement.cpp: (WebCore::HTMLMediaElement::movieNetworkStateChanged):
185           Calls updatePosterImage when the network state is empty and when the first frame has been loaded.
186         * html/HTMLMediaElement.h: (WebCore::HTMLMediaElement::rendererIsNeeded): Made this inline.  HTMLVideoElement now also implements this.
187
188         * html/HTMLVideoElement.idl: Added case for poster attribute.
189         * html/HTMLVideoElement.h: Added image loader and flag to keep track of whether or not the poster image should be shown.
190         * html/HTMLVideoElement.cpp:
191         (WebCore::HTMLVideoElement::HTMLVideoElement): Initialize m_imageLoader and m_shouldShowPosterImage.
192         (WebCore::HTMLVideoElement::rendererIsNeeded): Calls HTMLElement::rendererIsNeeded since HTMLMediaElements have renderer by default.
193         (WebCore::HTMLVideoElement::createRenderer): Create a RenderImage or RenderVideo depending on whether or not the poster image should be shown.
194         (WebCore::HTMLVideoElement::attach): Set up image loader and RenderImage if necessary.
195         (WebCore::HTMLVideoElement::detach): Delete image loader if its no longer needed.
196         (WebCore::HTMLVideoElement::parseMappedAttribute): Added case to process poster attribute.
197         (WebCore::HTMLVideoElement::poster): Added getter for poster attribute.
198         (WebCore::HTMLVideoElement::setPoster): Added setter for poster attribute.
199         (WebCore::HTMLVideoElement::isURLAttribute): Added.
200         (WebCore::HTMLVideoElement::imageSourceAttributeName): Added.
201         (WebCore::HTMLVideoElement::updatePosterImage): Added.  Updates m_shouldShowPosterImage and if its changed, detaches and attaches so the renderer is correct.
202
203 2007-11-05  Adam Roben  <aroben@apple.com>
204
205         Fix <rdar://5563572> SVG image support is turned off
206
207         Turned on SVG images for all platforms.
208
209         Reviewed by Eric.
210
211         * WebCore.vcproj/WebCore.vcproj: Added SVGImage.{cpp,h}
212         * loader/CachedImage.cpp:
213         (WebCore::CachedImage::createImage): Removed platform checks for
214         SVGImage.
215
216 2007-11-05  Antti Koivisto  <antti@apple.com>
217
218         Reviewed by Darin.
219
220         QTMovieView can generate callbacks during paint. This can lead to crashes.
221         
222         Delay callbacks so they get handled after painting is completed. No test case,
223         I don't know how to reliably reproduce this.
224
225         * platform/graphics/mac/MoviePrivateQTKit.mm:
226         (WebCore::MoviePrivate::MoviePrivate):
227         (WebCore::MoviePrivate::~MoviePrivate):
228         (WebCore::MoviePrivate::paint):
229         (-[WebCoreMovieObserver initWithCallback:WebCore::]):
230         (-[WebCoreMovieObserver disconnect]):
231         (-[WebCoreMovieObserver loadStateChanged:]):
232         (-[WebCoreMovieObserver rateChanged:]):
233         (-[WebCoreMovieObserver sizeChanged:]):
234         (-[WebCoreMovieObserver timeChanged:]):
235         (-[WebCoreMovieObserver volumeChanged:]):
236         (-[WebCoreMovieObserver didEnd:]):
237         (-[WebCoreMovieObserver setDelayCallbacks:]):
238
239 2007-11-05  Antti Koivisto  <antti@apple.com>
240
241         Reviewed by Adam.
242
243         Add some missing WebCore* prefixes to ObjC classes
244
245         * platform/mac/FileChooserMac.mm:
246         (WebCore::FileChooser::FileChooser):
247         * platform/mac/SharedBufferMac.mm:
248         (WebCore::SharedBuffer::createNSData):
249         (WebCore::SharedBuffer::createCFData):
250         * platform/mac/SharedTimerMac.cpp:
251         (WebCore::setSharedTimerFireTime):
252
253 2007-11-05  Ada Chan  <adachan@apple.com>
254
255         <rdar://problem/5579772> Regression: AltGr does not work
256         We now store the system key event info in PlatforkKeyboardEvent().
257
258         Reviewed by Oliver.
259
260         * platform/PlatformKeyboardEvent.h:
261         (WebCore::PlatformKeyboardEvent::isSystemKey):
262         * platform/win/KeyEventWin.cpp:
263         (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
264
265 2007-11-02  Tristan O'Tierney  <tristan@apple.com>
266
267         Reviewed by Darin Adler.
268
269         * WebCore.xcodeproj/project.pbxproj:
270         Set WindowFeatures.h as a Private header.
271         
272         * loader/FrameLoader.cpp:
273         (WebCore::FrameLoader::createWindow):
274         Revised to use a single createWindow function instead of
275         two createWindow functions and one createModalDialog function.
276         The logic for this is now addressed in WebKit in an effort
277         to make this easier to follow.
278         
279         * page/Chrome.cpp:
280         (WebCore::Chrome::createWindow):
281         * page/Chrome.h:
282         * page/ChromeClient.h:
283         * page/ContextMenuController.cpp:
284         (WebCore::openNewWindow):
285         * platform/graphics/svg/SVGImageEmptyClients.h:
286         (WebCore::SVGEmptyChromeClient::createWindow):
287         Revised to take new additional windowFeatures parameter.
288
289 2007-11-04  Geoffrey Garen  <ggaren@apple.com>
290
291         Reviewed by Darin Adler.
292         
293         http://bugs.webkit.org/show_bug.cgi?id=15835
294
295         Small adaptations to new KJS::List class.
296
297         * bindings/js/kjs_window.cpp:
298         (KJS::WindowFunc::callAsFunction):
299         (KJS::ScheduledAction::ScheduledAction):
300
301 2007-11-05  Adam Roben  <aroben@apple.com>
302
303         Allow passing a base class pointer to COMPtr::copyRefTo
304
305         Reviewed by Sam.
306
307         * platform/win/COMPtr.h:
308
309 2007-11-05  Dan Bernstein  <mitz@apple.com>
310
311         Reviewed by Oliver Hunt.
312
313         - fix ASSERTION FAILED: !HashTranslator::equal(KeyTraits::emptyValue(), key) when a class attribute is all-whitespace
314
315         Test: fast/dom/class-all-whitespace.html
316
317         * dom/StyledElement.cpp:
318         (WebCore::StyledElement::parseMappedAttribute): Check if there is any
319         non-whitespace character in the class attribute.
320
321 2007-11-05  Brady Eidson  <beidson@apple.com>
322
323         Reviewed by Sam
324
325         Add transaction blocking to the DatabaseAuthorizer in preparation for the new version
326         of the sql storage API
327
328         * storage/DatabaseAuthorizer.cpp:
329         (WebCore::DatabaseAuthorizer::allowTransaction):
330         * storage/DatabaseAuthorizer.h:
331
332 2007-11-05  Mark Rowe  <mrowe@apple.com>
333
334         Reviewed by Alp Toker.
335
336         Have getMIMETypeForExtension return a null string when no MIME type is known
337         for the extension rather than returning "text/plain".  This prevents plugin data
338         being dumped into object elements when plugins are disabled.
339
340         * platform/gtk/MIMETypeRegistryGtk.cpp:
341         (WebCore::MIMETypeRegistry::getMIMETypeForExtension):
342
343 2007-11-04  Sam Weinig  <sam@webkit.org>
344
345         Rubber-stamped by Adam Roben.
346
347         Rename SecurityOrigin::allowsAccessFrom to SecurityOrigin::canAccess to 
348         clear up ambiguity.
349
350         * bindings/js/kjs_window.cpp:
351         (KJS::Window::isSafeScript):
352         * platform/SecurityOrigin.cpp:
353         (WebCore::SecurityOrigin::canAccess):
354         * platform/SecurityOrigin.h:
355
356 2007-11-04  Timothy Hatcher  <timothy@apple.com>
357
358         Reviewed by Adam.
359
360         Bug 15834: There are many subtle bugs in the Styles pane of the Web Inspector
361         http://bugs.webkit.org/show_bug.cgi?id=15834
362
363         - Broke up DocumentPanel and added three SidebarPane sub-classes.
364         - Fixed many Style pane bugs, including:
365           * Poor handling of duplicate properties in the same rule. Some of this can't be
366             fixed since we can't only get the "winning" value for duplicate properties.
367             So we should only show one entry per unique property name.
368           * Computed style does not show font shorthand sub-properties if 'font' was used.
369           * Property priority was broken, the wrong properties were crossed out.
370           * The 'border' shorthand shows null for the shorthand value.
371           * Shorthands didn't show their priority (e.g. !important).
372           * HSL and HTML hex colors didn't have preview swatch blocks.
373           * Code refactoring, making it easier to reuse for console.log later.
374
375         * page/inspector/DocumentPanel.js: Move sidebar pane code to three seperate
376           classes in new files.
377         * page/inspector/MetricsSidebarPane.js: Added.
378         * page/inspector/Panel.js: Remove an InspectorController.log() call.
379         * page/inspector/PropertiesSection.js: Add the section to the TreeOutline.
380           So TreeElements can access properties on their section.
381         * page/inspector/PropertiesSidebarPane.js: Added.
382         * page/inspector/SidebarPane.js: Remove the explicit asignment of the
383           onexpand and oncollapse to null. These were hiding prototypes.
384         * page/inspector/StylesSidebarPane.js: Added.
385         * page/inspector/inspector.html: Include the new script files.
386         * page/inspector/treeoutline.js: If a null representedObject is passed
387           in just use a empty object.
388
389 2007-11-04  David D. Kilzer  <ddkilzer@webkit.org>
390
391         Fix build when spaces appear in the WebKit source path.
392
393         Reviewed by Mark Rowe.
394
395         * bindings/scripts/IDLParser.pm: Use safer open() method which lists
396         arguments individually and prevents the need to work around spaces
397         in the path.
398
399 2007-11-04  Alp Toker  <alp@atoker.com>
400
401         Reviewed by Alexey Proskuryakov.
402
403         Fix a crash when no clipboard text is available
404
405         * platform/gtk/PasteboardGtk.cpp:
406         (WebCore::Pasteboard::plainText):
407
408 2007-11-03  Darin Adler  <darin@apple.com>
409
410         Reviewed by Maciej.
411
412         - WebCore part of http://bugs.webkit.org/show_bug.cgi?id=15821
413           remove unused PCRE features for speed
414
415         * page/Frame.cpp: (WebCore::Frame::matchLabelsAgainstElement):
416         * page/mac/FrameMac.mm: (WebCore::Frame::matchLabelsAgainstElement):
417         Remove use of "[[:digit:]]" syntax. This hasn't worked for some time.
418         Use "\d" instead.
419
420         * platform/RegularExpression.h: Remove the unused cap function. We can
421         add it back later if we find we need it.
422         * platform/RegularExpression.cpp:
423         (WebCore::RegularExpression::Private::compile): Update for JavaScriptCore
424         regular expression entry point changes.
425         (WebCore::RegularExpression::Private::~Private): Ditto.
426         (WebCore::RegularExpression::match): Remove the code to set PCRE_NOTBOL.
427         This means that regular expressions with metacharactesr like ^ in them
428         won't work any more with non-whole-string searches, but we don't use
429         any regular expressions like that.
430
431 2007-11-03  Kevin Ollivier  <kevino@theolliviers.com>
432
433         Update the link stubs to match the current build,
434         and fix coding style issues.
435
436         Reviewed by Mark Rowe.
437
438         * platform/wx/TemporaryLinkStubs.cpp:
439         (loadResourceIntoArray):
440         (findNextSentenceFromIndex):
441         (findSentenceBoundary):
442         (Frame::dashboardRegionsChanged):
443         (WebCore::historyContains):
444         (CachedPage::close):
445         (Editor::showStylesPanel):
446         (EventHandler::passSubframeEventToSubframe):
447         (EventHandler::passWheelEventToWidget):
448         (WebCore::currentTextBreakLocaleID):
449
450 2007-11-03  Kevin Ollivier  <kevino@theolliviers.com>
451
452         wx <-> WebKit conversions for IntPoint, IntRect and FloatRect
453
454         Reviewed by Mark Rowe.
455
456         * platform/graphics/wx/FloatRectWx.cpp: Added.
457         * platform/graphics/wx/IntPointWx.cpp: Added.
458         * platform/graphics/wx/IntRectWx.cpp: Added.
459
460 2007-11-03  Kevin Ollivier  <kevino@theolliviers.com>
461
462         wx <-> WebKit data type conversions for Pen and Color.
463
464         Reviewed by Darin Adler.
465
466         * platform/graphics/wx: Added.
467         * platform/graphics/wx/ColorWx.cpp: Added.
468         * platform/graphics/wx/PenWx.cpp: Added.
469
470 2007-11-03  Sam Weinig  <sam@webkit.org>
471
472         Reviewed by Oliver.
473
474         Remove dummy variable from ClassInfo reducing the size of the struct by 1 word.
475         The variable had been kept around for binary compatibility, but since nothing
476         else is there is no point in continuing to keep it around.
477
478         * bindings/js/JSDOMExceptionConstructor.cpp:
479         (WebCore::):
480         * bindings/js/JSHTMLInputElementBase.cpp:
481         (WebCore::):
482         * bindings/js/JSNamedNodesCollection.cpp:
483         (WebCore::):
484         * bindings/js/JSXMLHttpRequest.cpp:
485         (KJS::):
486         * bindings/js/JSXSLTProcessor.cpp:
487         (KJS::):
488         * bindings/js/kjs_css.cpp:
489         (WebCore::):
490         * bindings/js/kjs_events.cpp:
491         (WebCore::):
492         * bindings/js/kjs_navigator.cpp:
493         (KJS::):
494         * bindings/js/kjs_window.cpp:
495         (KJS::):
496         * bindings/scripts/CodeGeneratorJS.pm:
497
498 2007-11-03  Kevin Ollivier  <kevino@theolliviers.com>
499
500         Build fixes to get wx impls. building on trunk.
501
502         Reviewed by Mark Rowe.
503
504         * platform/wx/DragDataWx.cpp:
505         (WebCore::DragData::containsFiles):
506         (WebCore::DragData::asFilenames):
507         * platform/wx/DragImageWx.cpp:
508         (WebCore::scaleDragImage):
509         * platform/wx/MimeTypeRegistryWx.cpp:
510         (WebCore::MIMETypeRegistry::getMIMETypeForExtension):
511         * platform/wx/MouseEventWx.cpp:
512         (WebCore::PlatformMouseEvent::PlatformMouseEvent):
513         * platform/wx/MouseWheelEventWx.cpp:
514         * platform/wx/PasteboardWx.cpp:
515         (WebCore::Pasteboard::writeImage):
516         * platform/wx/WidgetWx.cpp:
517         (WebCore::Widget::setCursor):
518
519 2007-11-03  David D. Kilzer  <ddkilzer@webkit.org>
520
521         Sort files(...); sections of Xcode project files.
522
523         Rubber-stamped by Darin.
524
525         * WebCore.xcodeproj/project.pbxproj:
526         * manual-tests/NPN_Invoke/NPN_Invoke.xcodeproj/project.pbxproj:
527
528 2007-11-03  Kevin Ollivier  <kevino@theolliviers.com>
529
530         Coding style fixes for platform/wx files.
531
532         Reviewed by Mark Rowe.
533
534         * platform/wx/ClipboardWx.cpp:
535         * platform/wx/GlyphMapWx.cpp:
536         * platform/wx/ScreenWx.cpp:
537
538 2007-11-03  Alp Toker  <alp@atoker.com>
539
540         Reviewed by Mark Rowe.
541
542         Implement platform scrollbar static width/height getters
543
544         * platform/gtk/PlatformScrollBar.h:
545         * platform/gtk/PlatformScrollBarGtk.cpp:
546         (scrollbarSize):
547         (PlatformScrollbar::horizontalScrollbarHeight):
548
549 2007-11-03  Alp Toker  <alp@atoker.com>
550
551         Reviewed by Mark Rowe.
552
553         Cast function pointers to gpointer.
554
555         * platform/gtk/PlatformScrollBarGtk.cpp:
556         (PlatformScrollbar::~PlatformScrollbar):
557
558 2007-11-03  Alp Toker  <alp@atoker.com>
559
560         Reviewed by Adam Roben.
561
562         RenderThemeGtk implementation based on Mozilla's GTK+ style code
563
564         There is still work needed to complete this feature.
565
566         * WebCore.pro:
567         * platform/gtk/RenderThemeGtk.cpp:
568         (WebCore::theme):
569         (WebCore::RenderThemeGtk::RenderThemeGtk):
570         (WebCore::supportsFocus):
571         (WebCore::RenderThemeGtk::supportsFocusRing):
572         (WebCore::RenderThemeGtk::controlSupportsTints):
573         (WebCore::RenderThemeGtk::baselinePosition):
574         (WebCore::adjustMozStyle):
575         (WebCore::setMozState):
576         (WebCore::paintMozWidget):
577         (WebCore::setButtonPadding):
578         (WebCore::setToggleSize):
579         (WebCore::RenderThemeGtk::setCheckboxSize):
580         (WebCore::RenderThemeGtk::paintCheckbox):
581         (WebCore::RenderThemeGtk::setRadioSize):
582         (WebCore::RenderThemeGtk::paintRadio):
583         (WebCore::RenderThemeGtk::adjustButtonStyle):
584         (WebCore::RenderThemeGtk::paintButton):
585         (WebCore::RenderThemeGtk::adjustMenuListStyle):
586         (WebCore::RenderThemeGtk::paintMenuList):
587         (WebCore::RenderThemeGtk::adjustTextFieldStyle):
588         (WebCore::RenderThemeGtk::paintTextField):
589         (WebCore::RenderThemeGtk::adjustSearchFieldResultsButtonStyle):
590         (WebCore::RenderThemeGtk::paintSearchFieldResultsButton):
591         (WebCore::RenderThemeGtk::adjustSearchFieldResultsDecorationStyle):
592         (WebCore::RenderThemeGtk::paintSearchFieldResultsDecoration):
593         (WebCore::RenderThemeGtk::adjustSearchFieldCancelButtonStyle):
594         (WebCore::RenderThemeGtk::paintSearchFieldCancelButton):
595         (WebCore::RenderThemeGtk::adjustSearchFieldStyle):
596         (WebCore::RenderThemeGtk::paintSearchField):
597         (WebCore::RenderThemeGtk::platformActiveSelectionBackgroundColor):
598         (WebCore::RenderThemeGtk::platformInactiveSelectionBackgroundColor):
599         (WebCore::RenderThemeGtk::platformActiveSelectionForegroundColor):
600         (WebCore::RenderThemeGtk::platformInactiveSelectionForegroundColor):
601         (WebCore::RenderThemeGtk::activeListBoxSelectionBackgroundColor):
602         (WebCore::RenderThemeGtk::inactiveListBoxSelectionBackgroundColor):
603         (WebCore::RenderThemeGtk::activeListBoxSelectionForegroundColor):
604         (WebCore::RenderThemeGtk::inactiveListBoxSelectionForegroundColor):
605         (WebCore::RenderThemeGtk::caretBlinkFrequency):
606         (WebCore::RenderThemeGtk::systemFont):
607         (WebCore::gtkStyleSetCallback):
608         (WebCore::RenderThemeGtk::gtkContainer):
609         (WebCore::RenderThemeGtk::gtkEntry):
610         (WebCore::RenderThemeGtk::gtkTreeView):
611         * platform/gtk/RenderThemeGtk.h:
612         * platform/gtk/gtk2drawing.c: Added.
613         (moz_gtk_enable_style_props):
614         (ensure_window_widget):
615         (setup_widget_prototype):
616         (ensure_button_widget):
617         (ensure_checkbox_widget):
618         (ensure_radiobutton_widget):
619         (ensure_scrollbar_widget):
620         (ensure_spin_widget):
621         (ensure_scale_widget):
622         (ensure_entry_widget):
623         (ensure_option_menu_widget):
624         (ensure_arrow_widget):
625         (ensure_handlebox_widget):
626         (ensure_toolbar_widget):
627         (ensure_tooltip_widget):
628         (ensure_tab_widget):
629         (ensure_progress_widget):
630         (ensure_frame_widget):
631         (ensure_menu_bar_widget):
632         (ensure_menu_bar_item_widget):
633         (ensure_menu_popup_widget):
634         (ensure_menu_item_widget):
635         (ensure_check_menu_item_widget):
636         (ConvertGtkState):
637         (TSOffsetStyleGCArray):
638         (TSOffsetStyleGCs):
639         (moz_gtk_button_paint):
640         (moz_gtk_init):
641         (moz_gtk_checkbox_get_metrics):
642         (moz_gtk_radio_get_metrics):
643         (moz_gtk_checkbox_get_focus):
644         (moz_gtk_radio_get_focus):
645         (moz_gtk_button_get_focus):
646         (moz_gtk_option_menu_get_metrics):
647         (moz_gtk_toggle_paint):
648         (calculate_arrow_dimensions):
649         (moz_gtk_scrollbar_button_paint):
650         (moz_gtk_scrollbar_trough_paint):
651         (moz_gtk_scrollbar_thumb_paint):
652         (moz_gtk_spin_paint):
653         (moz_gtk_scale_paint):
654         (moz_gtk_scale_thumb_paint):
655         (moz_gtk_gripper_paint):
656         (moz_gtk_entry_paint):
657         (moz_gtk_option_menu_paint):
658         (moz_gtk_dropdown_arrow_paint):
659         (moz_gtk_container_paint):
660         (moz_gtk_toggle_label_paint):
661         (moz_gtk_toolbar_paint):
662         (moz_gtk_tooltip_paint):
663         (moz_gtk_frame_paint):
664         (moz_gtk_progressbar_paint):
665         (moz_gtk_progress_chunk_paint):
666         (moz_gtk_tab_paint):
667         (moz_gtk_tabpanels_paint):
668         (moz_gtk_menu_bar_paint):
669         (moz_gtk_menu_popup_paint):
670         (moz_gtk_menu_item_paint):
671         (moz_gtk_check_menu_item_paint):
672         (moz_gtk_window_paint):
673         (moz_gtk_get_widget_border):
674         (moz_gtk_get_dropdown_arrow_size):
675         (moz_gtk_get_scalethumb_metrics):
676         (moz_gtk_get_scrollbar_metrics):
677         (moz_gtk_widget_paint):
678         (moz_gtk_get_scrollbar_widget):
679         (moz_gtk_shutdown):
680         * platform/gtk/gtkdrawing.h: Added.
681
682 2007-11-03  Alp Toker  <alp@atoker.com>
683
684         Reviewed by Mark Rowe.
685
686         Do not allow scrollbars to handle wheel events
687         
688         We bubble the wheel event up so the parent can handle it instead.
689
690         * platform/gtk/PlatformScrollBarGtk.cpp:
691         (gtkScrollEventCallback):
692         (PlatformScrollbar::PlatformScrollbar):
693         (PlatformScrollbar::~PlatformScrollbar):
694
695 2007-11-03  Alp Toker  <alp@atoker.com>
696
697         Reviewed by Mark Rowe.
698
699         Frame scrolling and invalidation fixes
700
701         Make upward scroll events have a positive delta to match other ports.
702
703         Fix the invalidation rect offset for frames so that scrolling works properly.
704
705         Avoid allocating negative sizes to widgets to avoid GTK+ warnings.
706
707         Allow tabbing to all widgets and links.
708
709         Fix event returns, improving the focus situation and correcting scroll wheel
710         behavior.
711
712         * page/gtk/EventHandlerGtk.cpp:
713         (WebCore::EventHandler::tabsToAllControls):
714         (WebCore::EventHandler::passWheelEventToWidget):
715         * platform/gtk/ScrollViewGtk.cpp:
716         (WebCore::ScrollViewScrollbar::geometryChanged):
717         (WebCore::ScrollView::updateContents):
718         (WebCore::ScrollView::update):
719         (WebCore::ScrollView::wheelEvent):
720         (WebCore::ScrollView::updateScrollbars):
721         * platform/gtk/WheelEventGtk.cpp:
722         (WebCore::PlatformWheelEvent::PlatformWheelEvent):
723
724 2007-11-03  David D. Kilzer  <ddkilzer@webkit.org>
725
726         LGPL'ed files contain incorrect FSF address
727         <http://bugs.webkit.org/show_bug.cgi?id=14885>
728
729         Reviewed by NOBODY (follow-up fix).
730
731         * bindings/js/JSSVGTransformListCustom.cpp:
732         * ksvg2/svg/SVGException.idl:
733         * ksvg2/svg/SVGTextPathElement.cpp:
734         * ksvg2/svg/SVGTextPathElement.h:
735         * ksvg2/svg/SVGViewSpec.cpp:
736         * ksvg2/svg/SVGViewSpec.h:
737         * platform/mac/FontCustomPlatformData.cpp:
738         * platform/mac/FontCustomPlatformData.h:
739         * platform/mac/FontPlatformDataMac.mm:
740         * platform/win/FontCustomPlatformData.cpp:
741         * platform/win/FontCustomPlatformData.h:
742         * rendering/RenderSVGRoot.cpp:
743         * rendering/RenderSVGRoot.h:
744         * rendering/RenderSVGTextPath.cpp:
745         * rendering/RenderSVGTextPath.h:
746         * rendering/RenderSVGTransformableContainer.h:
747         * rendering/RenderSVGViewportContainer.cpp:
748         * rendering/RenderSVGViewportContainer.h:
749         * rendering/SVGCharacterLayoutInfo.cpp:
750         * rendering/SVGCharacterLayoutInfo.h:
751         * rendering/SVGRenderSupport.cpp:
752         * rendering/SVGRenderSupport.h:
753
754 2007-11-02  Antti Koivisto  <antti@apple.com>
755
756         Reviewed by Adam.
757         
758         Add video width/height DOM and content attributes from latest HTML5 draft.
759
760         Test: media/video-width-height.html
761
762         * html/HTMLVideoElement.cpp:
763         (WebCore::HTMLVideoElement::parseMappedAttribute):
764         (WebCore::HTMLVideoElement::width):
765         (WebCore::HTMLVideoElement::setWidth):
766         (WebCore::HTMLVideoElement::height):
767         (WebCore::HTMLVideoElement::setHeight):
768         * html/HTMLVideoElement.h:
769         * html/HTMLVideoElement.idl:
770
771 2007-11-02  Darin Adler  <darin@apple.com>
772
773         Reviewed by Maciej.
774
775         * DerivedSources.make: Remove a few explicit filenames from some rules by using
776         make variables a little more.
777         * WebCore.LP64.exp: Fix typo, grammar.
778
779 2007-11-02  Darin Adler  <darin@apple.com>
780
781         Reviewed by Maciej.
782
783         - use the new HashMap::take function where appropriate
784
785         * bindings/js/kjs_binding.cpp:
786         (KJS::addWrapper): Made an inline rather than a macro; inlines good, macros bad.
787         (KJS::removeWrapper): Ditto.
788         (KJS::removeWrappers): Ditto.
789         (KJS::ScriptInterpreter::putDOMObject): Use the inline instead of the macro.
790         (KJS::ScriptInterpreter::forgetDOMObject): Ditto. This involves using take instead
791         of remove -- in theory ever so slightly less efficient, but I think it's fine.
792         (KJS::ScriptInterpreter::forgetDOMNodeForDocument): Ditto.
793         (KJS::ScriptInterpreter::putDOMNodeForDocument): Use the inline instead of the macro.
794         (KJS::ScriptInterpreter::forgetAllDOMNodesForDocument): Use take instead of find/remove.
795         (KJS::ScriptInterpreter::updateDOMNodeDocument): Use the inlines instead of the macros.
796
797         * bindings/js/kjs_window.cpp: (KJS::Window::clearTimeout): Use take instead of find/remove.
798         * bridge/mac/AXObjectCacheMac.mm: (WebCore::AXObjectCache::remove): Ditto.
799         * page/AnimationController.cpp: (WebCore::AnimationControllerPrivate::clear): Ditto.
800         * rendering/RenderBlock.cpp:
801         (WebCore::RenderBlock::~RenderBlock): Ditto.
802         (WebCore::RenderBlock::setDesiredColumnCountAndWidth): Ditto.
803         * rendering/RootInlineBox.cpp: Ditto.(WebCore::RootInlineBox::detachEllipsisBox): Ditto.
804
805 2007-11-02  Antti Koivisto  <antti@apple.com>
806
807         Reviewed by Darin.
808
809         Enable video composition.
810
811         * WebCore.base.exp:
812         * platform/graphics/mac/MoviePrivateQTKit.mm:
813         (WebCore::MoviePrivate::createQTMovieView):
814         * platform/mac/WebCoreSystemInterface.h:
815         * platform/mac/WebCoreSystemInterface.mm:
816
817 2007-11-02  Darin Adler  <darin@apple.com>
818
819         Reviewed by Mitz.
820
821         - fix http://bugs.webkit.org/show_bug.cgi?id=15806
822           <rdar://problem/5561626> ASSERT(element->isRadioButton()) fires destroying form elements
823
824         Test: fast/forms/remove-radio-button-assert.html
825
826         * html/HTMLGenericFormElement.cpp: (WebCore::HTMLGenericFormElement::removeFromForm):
827         Added protected function to be used by derived classes that need to do the same sort
828         of removal from form that's automatically done by the base class in certain circumstances.
829         * html/HTMLGenericFormElement.h: Added removeFromForm.
830
831         * html/HTMLInputElement.cpp: (WebCore::HTMLInputElement::~HTMLInputElement):
832         Call removeFromForm here so the element is removed before we destroy the HTMLInputElement
833         part of this object. By the time we get to the base class's destructor it's too late.
834         The problem is specific to radio buttons so we don't have to worry about other classes
835         derived from HTMLGenericFormElement.
836
837 2007-11-02  Darin Adler  <darin@apple.com>
838
839         Reviewed by Mitz.
840
841         - speculative fix for http://bugs.webkit.org/show_bug.cgi?id=15805
842           <rdar://problem/5510779> crashes in isLoadingMultipartContent
843
844         * loader/DocumentLoader.cpp: (WebCore::DocumentLoader::isLoadingMultipartContent):
845         Instead of asserting the frame loader is non-0, return false if it is 0.
846
847 2007-11-02  Darin Adler  <darin@apple.com>
848
849         Reviewed by Mitz.
850
851         - fix <rdar://problem/5530185> WebKit does not show <object> fallback content when both
852           URL and MIME type is omitted
853
854         Already covered by existing tests (that had incorrect results).
855
856         * loader/FrameLoader.cpp: (WebCore::FrameLoader::requestObject): Return false to indicate
857         failure when both URL and MIME type are empty. The old code would not attempt a load, but
858         it would indicate success.
859
860         * rendering/RenderPartObject.cpp: (WebCore::RenderPartObject::updateWidget): Remove
861         non-helpful early exit for the case where there is no URL and no type. Returning early
862         prevents the fallback code from running.
863
864 2007-11-02  Alp Toker  <alp@atoker.com>
865
866         Reviewed by Darin.
867
868         Include Cairo headers properly
869
870         * platform/graphics/AffineTransform.h:
871         * platform/graphics/ImageBuffer.h:
872         * platform/graphics/cairo/AffineTransformCairo.cpp:
873         * platform/gtk/FontPlatformDataGtk.cpp:
874
875 2007-11-01  Oliver Hunt  <oliver@apple.com>
876
877         Reviewed by Alexey.
878
879         Make sure we send the correct events for Capslock, Shift, Ctrl, Alt and the Windows key        
880
881         * platform/win/KeyEventWin.cpp:
882         (WebCore::keyIdentifierForWindowsKeyCode):
883         (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
884
885 2007-11-01  Geoffrey Garen  <ggaren@apple.com>
886
887         Reviewed by Maciej Stachowiak.
888         
889         In preparation for making List a simple stack-allocated Vector:
890
891         Removed all instances of List copying, assignment, and/or storage.
892         
893         Layout tests and JS tests pass.
894
895         * bindings/js/kjs_window.cpp:
896         (KJS::WindowFunc::callAsFunction): Stores a Vector of protected 
897         JSValue*'s instead of a List now. Converts to List on the fly when 
898         calling the timer function. This is slightly less efficient, but the 
899         common case is 0-2 arguments, so it's no biggie.
900
901         (HTML iBench shows no regression. PLT does not use JS timers.)
902         
903         (KJS::ScheduledAction::execute): Uses the more efficient and non-copying
904         List::slice now.
905         (KJS::ScheduledAction::ScheduledAction): ditto
906
907         * bindings/objc/WebScriptObject.mm:
908         (getListFromNSArray): Takes a List out parameter now, to avoid copying.
909
910 2007-11-01  Oliver Hunt  <oliver@apple.com>
911
912         Reviewed by Geoff.
913
914         Correct event behaviour on certain control keys
915
916         Make sure we send the correct keyDown and keyUp events for the
917         control keys CapsLock, Shift, Ctrl, Alt, and Meta/Command, and
918         uses Windows key codes for the event keyCode.
919
920         * WebCore.base.exp:
921         * page/EventHandler.cpp:
922         (WebCore::EventHandler::keyEvent):
923         * platform/PlatformKeyboardEvent.h:
924         * platform/gtk/KeyEventGtk.cpp:
925         (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
926         * platform/mac/KeyEventMac.mm:
927         (WebCore::keyIdentifierForKeyEvent):
928         (WebCore::WindowsKeyCodeForKeyEvent):
929         (WebCore::isKeyUpEvent):
930         (WebCore::textFromEvent):
931         (WebCore::unmodifiedTextFromEvent):
932         (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
933         * platform/win/KeyEventWin.cpp:
934         (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
935         * platform/wx/KeyEventWin.cpp:
936         (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
937
938 2007-11-01  Timothy Hatcher  <timothy@apple.com>
939
940         Reviewed by Sam.
941
942         * page/inspector/inspector.css: Use the white disclosure triangles
943           when a parent DOM element is sepected.
944
945 2007-11-01  Justin Garcia  <justin.garcia@apple.com>
946
947         Reviewed by Oliver Hunt.
948
949         <rdar://problem/5195056> Huge plain text pastes are slow, time spent in ApplyStyleCommand::doApply
950
951         * editing/ReplaceSelectionCommand.cpp:
952         (WebCore::ReplaceSelectionCommand::doApply): No need to match style when pasting
953         into a plaintext-only region, since when we build the fragment to insert from
954         plain text, we don't put any style information on it, so it will automatically
955         match style with no intervention.
956         * editing/markup.cpp:
957         (WebCore::createFragmentFromText): Place paragraphs into clones of the
958         block being inserted into, instead of default paragraph elements,
959         so that when inserted content will match the surrounding paragraph style.
960         This was broken before, but I haven't added a layout test yet because
961         there currently isn't a way to get only plain text onto the pasteboard
962         in a layout test.
963
964 2007-11-01  Sam Weinig  <sam@webkit.org>
965
966         Reviewed by Adam Roben. 
967
968         Add a releaseRef method to COMPtr which matches the behavior
969         of the method by the same name in PassRefPtr.  This is in
970         preparation of adding autogenerated COM DOM bindings.
971
972         * platform/win/COMPtr.h:
973         (COMPtr::releaseRef):
974
975 2007-11-01  Kevin Ollivier  <kevino@theolliviers.com>
976
977         wx impl. for DragController and EventHandler interfaces.
978
979         Reviewed by Adam Roben.
980
981         * page/wx: Added.
982         * page/wx/DragControllerWx.cpp: Added.
983         (WebCore::DragController::isCopyKeyDown):
984         (WebCore::DragController::dragOperation):
985         (WebCore::DragController::maxDragImageSize):
986         * page/wx/EventHandlerWx.cpp: Added.
987         (WebCore::EventHandler::passMousePressEventToSubframe):
988         (WebCore::EventHandler::passMouseMoveEventToSubframe):
989         (WebCore::EventHandler::passMouseReleaseEventToSubframe):
990         (WebCore::EventHandler::passMousePressEventToScrollbar):
991         (WebCore::EventHandler::passWidgetMouseDownEventToWidget):
992         (WebCore::EventHandler::focusDocumentView):
993         (WebCore::EventHandler::eventActivatedView):
994         (WebCore::EventHandler::createDraggingClipboard):
995
996 2007-11-01  Kevin Ollivier  <kevino@theolliviers.com>
997
998         Adding files for wx impl. of editing interfaces.
999
1000         Reviewed by Adam Roben.
1001
1002         * editing/wx: Added.
1003         * editing/wx/EditorWx.cpp: Added.
1004         (WebCore::Editor::newGeneralClipboard):
1005
1006 2007-11-01  Sam Weinig  <sam@webkit.org>
1007
1008         Reviewed by Adam Roben.
1009
1010         Make implicit conversions from LPCSTRs and BSTRs to WebCore string
1011         types possible in preparation of adding autogenerated COM DOM bindings.
1012
1013         * platform/AtomicString.cpp: 
1014         (WebCore::AtomicString::add):
1015         * platform/AtomicString.h:
1016         (WebCore::AtomicString::AtomicString):
1017         * platform/PlatformString.h:
1018         * platform/win/BString.cpp:
1019         (WebCore::BString::BString):
1020         * platform/win/BString.h:
1021
1022 2007-11-01  Brady Eidson  <beidson@apple.com>
1023
1024         Reviewed by Anders
1025
1026         Renamed a flag inside of SQLiteTransaction and added an accessor (for future work)
1027
1028         * platform/sql/SQLiteTransaction.cpp:
1029         (WebCore::SQLiteTransaction::SQLiteTransaction):
1030         (WebCore::SQLiteTransaction::~SQLiteTransaction):
1031         (WebCore::SQLiteTransaction::begin):
1032         (WebCore::SQLiteTransaction::commit):
1033         (WebCore::SQLiteTransaction::rollback):
1034         * platform/sql/SQLiteTransaction.h:
1035         (WebCore::SQLiteTransaction::inProgress):
1036
1037 2007-11-01  Adam Roben  <aroben@apple.com>
1038
1039         Remove all duplicate xcopy commands from WebCore's post-build step
1040
1041         Also add the /d option to the copy of platform/sql.
1042
1043         Rubberstamped by Sam.
1044
1045         * WebCore.vcproj/WebCore.vcproj:
1046
1047 2007-11-01  Adele Peterson  <adele@apple.com>
1048
1049         Reviewed by Maciej.
1050
1051         Add support for the animation of the -webkit-border-raduis properties.
1052
1053         * page/AnimationController.cpp:
1054         (WebCore::blendFunc): Added for IntSize.
1055         (WebCore::ImplicitAnimation::animate): Added cases for border radius properties.
1056
1057 2007-11-01  Alp Toker  <alp@atoker.com>
1058
1059         Reviewed by Mitz Pettel.
1060
1061         Fix an unbalanced save/restore.
1062
1063         * platform/graphics/cg/ImageCG.cpp:
1064         (WebCore::BitmapImage::draw):
1065
1066 2007-11-01  David Hyatt  <hyatt@apple.com>
1067
1068         Add support for the animation of the visibility property.
1069
1070         Reviewed by oliver, aroben
1071
1072         * page/AnimationController.cpp:
1073         (WebCore::blendFunc):
1074         (WebCore::ImplicitAnimation::animate):
1075
1076 2007-11-01  Kevin McCullough  <kmccullough@apple.com>
1077
1078         Reviewed by Adam.
1079
1080         - Made COMPtr be able to be used by certain other templates,
1081         specifically HashSet.
1082
1083         * platform/win/COMPtr.h:
1084         (WTF::):
1085
1086 2007-11-01  Dan Bernstein  <mitz@apple.com>
1087
1088         Reviewed by Dave Hyatt.
1089
1090         - fix http://bugs.webkit.org/show_bug.cgi?id=15015
1091           <rdar://problem/5420308> Most of www.aol.com redraws unnecessarily when headline/photo section changes
1092
1093         Test: fast/repaint/overflow-clip-subtree-layout.html
1094
1095         This patch does not address the bigger issue of doing a full relayout
1096         of inline flows containing floats, but it addresses the problem on
1097         aol.com, where the changes that trigger layout are confined to an
1098         overflow area inside the float.
1099
1100         * page/FrameView.cpp:
1101         (WebCore::FrameView::scheduleRelayoutOfSubtree): If the new and old
1102         layout roots are different but one descends from the other, make (or
1103         keep) the ancestor as the layout root.
1104         * rendering/RenderObject.cpp:
1105         (WebCore::objectIsRelayoutBoundary): Made boxes with overflow
1106         clipping and non-auto width and height relayout boundaries.
1107
1108 2007-11-01  Alexey Proskuryakov  <ap@webkit.org>
1109
1110         Reviewed by Mark Rowe.
1111
1112         Fixed line endings that got confused in this file somehow.
1113
1114         * platform/network/ResourceResponse.cpp:
1115         (WebCore::ResourceResponse::isAttachment):
1116
1117 2007-11-01  Peter Kasting  <zerodpx@gmail.com>
1118
1119         Reviewed by Dave Hyatt.
1120
1121         http://bugs.webkit.org/show_bug.cgi?id=15778
1122         Malformed GIFs should not result in memory corruption.
1123
1124         * platform/image-decoders/gif/GIFImageDecoder.cpp:
1125         (WebCore::GIFImageDecoder::haveDecodedRow):
1126         * platform/image-decoders/gif/GIFImageReader.cpp:
1127         (GIFImageReader::output_row):
1128         (GIFImageReader::read):
1129
1130 2007-10-31  Adam Roben  <aroben@apple.com>
1131
1132         Fix a crash when parsing a cubic-bezier function
1133
1134         Reviewed by Hyatt.
1135
1136         Test: fast/css/parse-timing-function-crash.html
1137
1138         * WebCore.vcproj/WebCore.vcproj:
1139         * css/CSSParser.cpp:
1140         (WebCore::CSSParser::parseTimingFunctionValue): Don't walk off the end
1141         of the ValueList.
1142
1143 2007-10-31  David Hyatt  <hyatt@apple.com>
1144
1145         Fix a merge error from when I applied my patch to ToT.  A couple of lines should be part of an if.
1146
1147         * rendering/RenderStyle.cpp:
1148         (WebCore::RenderStyle::adjustTransitions):
1149
1150 2007-10-31  Anders Carlsson  <andersca@apple.com>
1151
1152         Reviewed by Sam.
1153
1154         Add new SQL callback interfaces and JS implementations of them.
1155         
1156         * DerivedSources.make:
1157         * WebCore.xcodeproj/project.pbxproj:
1158         * bindings/js/JSCustomSQLStatementCallback.cpp: Added.
1159         (WebCore::JSCustomSQLStatementCallback::JSCustomSQLStatementCallback):
1160         (WebCore::JSCustomSQLStatementCallback::handleEvent):
1161         * bindings/js/JSCustomSQLStatementCallback.h: Added.
1162         * bindings/js/JSCustomSQLStatementErrorCallback.cpp: Added.
1163         (WebCore::JSCustomSQLStatementErrorCallback::JSCustomSQLStatementErrorCallback):
1164         (WebCore::JSCustomSQLStatementErrorCallback::handleEvent):
1165         * bindings/js/JSCustomSQLStatementErrorCallback.h: Added.
1166         * bindings/js/JSCustomSQLTransactionCallback.cpp: Added.
1167         (WebCore::JSCustomSQLTransactionCallback::JSCustomSQLTransactionCallback):
1168         (WebCore::JSCustomSQLTransactionCallback::handleEvent):
1169         * bindings/js/JSCustomSQLTransactionCallback.h: Added.
1170         * bindings/js/JSCustomSQLTransactionErrorCallback.cpp: Added.
1171         (WebCore::JSCustomSQLTransactionErrorCallback::JSCustomSQLTransactionErrorCallback):
1172         (WebCore::JSCustomSQLTransactionErrorCallback::handleEvent):
1173         * bindings/js/JSCustomSQLTransactionErrorCallback.h: Added.
1174         * storage/JSCustomSQLStatementCallback.h: Added.
1175         * storage/JSCustomSQLStatementErrorCallback.h: Added.
1176         * storage/JSCustomSQLTransactionCallback.h: Added.
1177         * storage/JSCustomSQLTransactionErrorCallback.h: Added.
1178         * storage/SQLStatementCallback.h: Added.
1179         (WebCore::SQLStatementCallback::~SQLStatementCallback):
1180         * storage/SQLStatementCallback.idl: Added.
1181         * storage/SQLStatementErrorCallback.h: Added.
1182         (WebCore::SQLStatementErrorCallback::~SQLStatementErrorCallback):
1183         * storage/SQLStatementErrorCallback.idl: Added.
1184         * storage/SQLTransaction.h: Added.
1185         * storage/SQLTransaction.idl: Added.
1186         * storage/SQLTransactionCallback.h: Added.
1187         (WebCore::SQLTransactionCallback::~SQLTransactionCallback):
1188         * storage/SQLTransactionCallback.idl: Added.
1189         * storage/SQLTransactionErrorCallback.h: Added.
1190         (WebCore::SQLTransactionErrorCallback::~SQLTransactionErrorCallback):
1191         * storage/SQLTransactionErrorCallback.idl: Added.
1192
1193 2007-10-31  Justin Garcia  <justin.garcia@apple.com>
1194
1195         Reviewed by Dave Harrison.
1196
1197         <rdar://problem/5569741> Pasting content with a line break into a list can remove the list
1198
1199         * editing/htmlediting.cpp:
1200         (WebCore::enclosingEmptyListItem): A single list item can contain multiple 
1201         paragraphs, so if the incoming VisiblePosition is in an empty paragraph in a 
1202         list item, that list item isn't necessarily empty.
1203
1204 2007-10-31  David Hyatt  <hyatt@apple.com>
1205
1206         Disable style sharing for animating styles.
1207
1208         Reviewed by mitzpettel
1209
1210         * css/CSSStyleSelector.cpp:
1211         (WebCore::CSSStyleSelector::canShareStyleWithElement):
1212
1213 2007-10-31  Dan Bernstein  <mitz@apple.com>
1214
1215         Reviewed by Darin Adler.
1216
1217         - fix intermediate length calculation
1218
1219         * rendering/Length.h:
1220         (WebCore::Length::blend):
1221
1222 2007-10-31  Anders Carlsson  <andersca@apple.com>
1223
1224         Reviewed by Darin.
1225
1226         Add new SQLError implementation.
1227         
1228         * DerivedSources.make:
1229         * WebCore.vcproj/WebCore.vcproj:
1230         * WebCore.xcodeproj/project.pbxproj:
1231         * storage/SQLError.h: Added.
1232         (WebCore::SQLError::SQLError):
1233         (WebCore::SQLError::code):
1234         (WebCore::SQLError::message):
1235         * storage/SQLError.idl: Added.
1236
1237 2007-10-31  David Hyatt  <hyatt@apple.com>
1238
1239         Change the initial value of transition-property to all.  Change the initial value of
1240         transition-duration to 0.
1241
1242         Reviewed by antti
1243
1244         * rendering/RenderStyle.h:
1245         (WebCore::RenderStyle::initialTransitionDuration):
1246         (WebCore::RenderStyle::initialTransitionProperty):
1247
1248 2007-10-31  Alp Toker  <alp@atoker.com>
1249
1250         Reviewed by Mark Rowe.
1251
1252         The new Color must be marked valid.
1253
1254         * platform/graphics/gtk/ColorGtk.cpp:
1255
1256 2007-10-31  Simon Hausmann  <hausmann@kde.org>
1257
1258         Reviewed by Maciej;
1259
1260         Build fix for non-Qt builds.
1261
1262         * dom/XMLTokenizer.cpp:
1263         (WebCore::XMLTokenizer::XMLTokenizer):
1264
1265 2007-10-31  Simon Hausmann  <hausmann@kde.org>
1266
1267         Reviewed by Lars.
1268
1269         Fix dependency path to header files of the public API of the Qt port.
1270
1271         * WebCore.pro:
1272
1273 2007-10-31  Holger Freyther  <zecke@selfish.org>
1274
1275         Reviewed by Simon.
1276
1277         * QXmlStreamNamespaceDeclaration doesn't have the constructor we
1278         want to use for Qt4.3. Reenable the old code path which is likely
1279         to be dead as I have not checked if m_prefixToNamespaceMap is actually
1280         used.
1281         * Guard the entity resolver with the QT_VERSION as well.
1282         * Partially reverts 369506279abdaa863e15efed649ca19e062f2c30 and
1283         d2b54d0fc1b07a2480f4f7a1417abd7a636b0107 for Qt4.3.
1284
1285         * dom/XMLTokenizer.cpp:
1286         (WebCore::XMLTokenizer::XMLTokenizer):
1287         * dom/XMLTokenizer.h:
1288
1289 2007-10-31  Holger Freyther  <zecke@selfish.org>
1290
1291         Reviewed by Lars Knoll <lars@trolltech.com>.
1292
1293         * QMimeData::removeData will be new in Qt4.4, don't use it for Qt4.3 
1294         * Provide a bad fallback implementation to filter the format list.
1295
1296         * platform/qt/ClipboardQt.cpp:
1297         (WebCore::ClipboardQt::clearData):
1298
1299 2007-10-31  Lars Knoll  <lars@trolltech.com>
1300
1301         Reviewed by Simon.
1302
1303         add an entitiy resolver to QXmlStream.
1304         Fixes fast/parser/entities-in-attributes.xhtml.
1305
1306         * dom/XMLTokenizer.cpp:
1307         (WebCore::EntityResolver::resolveUndeclaredEntity):
1308         (WebCore::XMLTokenizer::XMLTokenizer):
1309         (WebCore::XMLTokenizer::~XMLTokenizer):
1310
1311 2007-10-31  Lars Knoll  <lars@trolltech.com>
1312
1313         Reviewed by Simon.
1314
1315         Fixes in the XML tokenizer when using QXmlStream.
1316         
1317         Use new functionality of QXmlStream in Qt 4.4 to simplify
1318         the code (but keep the old code for now to still support Qt 4.3).
1319         
1320         Add proper support for namespace handling when parsing into
1321         a document fragment.
1322
1323         * dom/XMLTokenizer.cpp:
1324         (WebCore::XMLTokenizer::XMLTokenizer):
1325         (WebCore::XMLTokenizer::write):
1326         (WebCore::XMLTokenizer::startElementNs):
1327         (WebCore::):
1328         * dom/XMLTokenizer.h:
1329
1330 2007-10-31  Lars Knoll  <lars@trolltech.com>
1331
1332         Reviewed by Simon.
1333
1334         add support for dragging images.
1335
1336         * platform/DragImage.h:
1337         * platform/qt/ClipboardQt.cpp:
1338         (WebCore::ClipboardQt::clearData):
1339         (WebCore::ClipboardQt::setDragImage):
1340         (WebCore::ClipboardQt::setDragImageElement):
1341         (WebCore::ClipboardQt::createDragImage):
1342         (WebCore::getCachedImage):
1343         (WebCore::ClipboardQt::declareAndWriteDragImage):
1344         * platform/qt/ClipboardQt.h:
1345
1346 2007-10-31  Lars Knoll  <lars@trolltech.com>
1347
1348         Reviewed by Simon.
1349
1350         fix most of the issues I found with Clipboard and DnD.
1351
1352         * editing/qt/EditorQt.cpp:
1353         * platform/qt/ClipboardQt.cpp:
1354         (WebCore::ClipboardQt::ClipboardQt):
1355         (WebCore::ClipboardQt::~ClipboardQt):
1356         (WebCore::ClipboardQt::clearData):
1357         (WebCore::ClipboardQt::clearAllData):
1358         (WebCore::ClipboardQt::getData):
1359         (WebCore::ClipboardQt::setData):
1360         (WebCore::ClipboardQt::types):
1361         (WebCore::ClipboardQt::setDragImage):
1362         (WebCore::ClipboardQt::setDragImageElement):
1363         (WebCore::ClipboardQt::declareAndWriteDragImage):
1364         (WebCore::ClipboardQt::writeURL):
1365         (WebCore::ClipboardQt::writeRange):
1366         (WebCore::ClipboardQt::hasData):
1367         * platform/qt/ClipboardQt.h:
1368         * platform/qt/DragDataQt.cpp:
1369         (WebCore::DragData::asURL):
1370
1371 2007-10-30  Mark Rowe  <mrowe@apple.com>
1372
1373         Fix the Gtk and Qt builds by stubbing out PlatformKeyboardEvent::currentCapsLockState.
1374
1375         * platform/gtk/KeyEventGtk.cpp:
1376         (WebCore::PlatformKeyboardEvent::currentCapsLockState):
1377         * platform/qt/PlatformKeyboardEventQt.cpp:
1378         (WebCore::PlatformKeyboardEvent::currentCapsLockState):
1379
1380 2007-10-31  Alexey Proskuryakov  <ap@webkit.org>
1381
1382         Reviewed by Anders.
1383
1384         http://bugs.webkit.org/show_bug.cgi?id=15762
1385         XSLStylesheet loads subresources from a wrong URL
1386
1387         Covered by corrected existing tests.
1388
1389         * xml/XSLStyleSheet.cpp:
1390         (WebCore::XSLStyleSheet::parseString): Pass stylesheet URL, not
1391         the document one.
1392
1393 2007-10-31  Alexey Proskuryakov  <ap@webkit.org>
1394
1395         Reviewed by Darin.
1396
1397         http://bugs.webkit.org/show_bug.cgi?id=10818
1398         String::append does 2 full copies instead of 1 (or zero!)
1399
1400         No change in functionality, thus no test.
1401
1402         * platform/String.cpp:
1403         (WebCore::String::append): Rewrote to copy once. Also removed an ancient
1404         FIXME that doesn't seem to make any sense. Note that append() behavior doesn't 
1405         match documented String behavior ("modifications to one instance will
1406         also modify all others"), but there are a lot of methods that don't.
1407
1408 2007-10-31  Adam Roben  <aroben@apple.com>
1409
1410         Windows build fix
1411
1412         * WebCore.vcproj/WebCore.vcproj: Add [JS]ProgressEvent.{cpp,h} files.
1413
1414 2007-10-30  Adam Roben  <aroben@apple.com>
1415
1416         Windows build fixes
1417
1418         I'm not completely sure why these const issues weren't caught by GCC,
1419         but MSVC was certainly not happy with them.
1420
1421         * editing/IndentOutdentCommand.cpp:
1422         (WebCore::isIndentBlockquote):
1423         * editing/markup.cpp:
1424         (WebCore::styleFromMatchedRulesAndInlineDecl):
1425
1426 2007-10-30  David Hyatt  <hyatt@apple.com>
1427
1428         transition-property was defaulting to all when it should default to none.  
1429
1430         It was taking a string type.  I figured out how to make it take an ident instead, so you can write:
1431
1432         transition-property: opacity
1433
1434         instead of
1435
1436         transition-property: "opacity"
1437
1438         Transition layers also weren't properly repeating patterns the way they were supposed to.  I fixed that.
1439
1440         Finally, I fixed a bug in the code to fix up transition layers where something was misplaced that should have been inside a null check.
1441
1442         Reviewed by aroben
1443
1444         * css/CSSHelper.h:
1445         * css/CSSParser.cpp:
1446         (WebCore::CSSParser::parseTransitionProperty):
1447         * css/CSSStyleSelector.cpp:
1448         (WebCore::CSSStyleSelector::adjustRenderStyle):
1449         * page/AnimationController.cpp:
1450         (WebCore::ImplicitAnimation::animate):
1451         * rendering/RenderStyle.cpp:
1452         (WebCore::RenderStyle::adjustTransitions):
1453         * rendering/RenderStyle.h:
1454         (WebCore::RenderStyle::initialTransitionProperty):
1455
1456 2007-10-30  Antti Koivisto  <antti@apple.com>
1457
1458         Reviewed by Geoff.
1459
1460         Leak fix
1461
1462         * platform/graphics/mac/MoviePrivateQTKit.mm:
1463         (WebCore::MoviePrivate::getSupportedTypes):
1464
1465 2007-10-30  Dan Bernstein  <mitz@apple.com>
1466
1467         Reviewed by Stephanie Lewis.
1468
1469         - fix <rdar://problem/5547237> REGRESSION (304-ToT): Repro font-related crash in fontdatawin.cpp Line 93 (many sites)
1470
1471         * platform/win/FontDataWin.cpp:
1472         (WebCore::FontData::platformInit): Handle the case where the font has no
1473         glyphs on page zero.
1474
1475 2007-10-30  David Hyatt  <hyatt@apple.com>
1476
1477         Make sure CSS transforms can be animated using the CSS transition property.
1478
1479         Reviewed by Dan and Antti
1480
1481         * css/CSSStyleSelector.cpp:
1482         (WebCore::CSSStyleSelector::applyProperty):
1483         * page/AnimationController.cpp:
1484         (WebCore::blendFunc):
1485         (WebCore::ImplicitAnimation::animate):
1486         * rendering/Length.h:
1487         (WebCore::Length::blend):
1488         * rendering/RenderStyle.cpp:
1489         (WebCore::StyleTransformData::operator==):
1490         (WebCore::TransformOperations::operator==):
1491         (WebCore::blendLengths):
1492         (WebCore::ScaleTransformOperation::blend):
1493         (WebCore::RotateTransformOperation::blend):
1494         (WebCore::SkewTransformOperation::blend):
1495         (WebCore::TranslateTransformOperation::blend):
1496         (WebCore::MatrixTransformOperation::blend):
1497         * rendering/RenderStyle.h:
1498         (WebCore::TransformOperations::operator!=):
1499         (WebCore::TransformOperations::isEmpty):
1500         (WebCore::TransformOperations::size):
1501         (WebCore::TransformOperations::operator[]):
1502         (WebCore::TransformOperations::append):
1503         (WebCore::RenderStyle::transform):
1504         (WebCore::RenderStyle::setTransform):
1505         (WebCore::RenderStyle::initialTransform):
1506
1507 2007-10-30  Antti Koivisto  <antti@apple.com>
1508
1509         Another Qt/GTK build fix.
1510
1511         * bindings/js/JSHTMLElementWrapperFactory.cpp:
1512
1513 2007-10-30  Antti Koivisto  <antti@apple.com>
1514
1515         Attempt to fix Qt/GTK build.
1516
1517         * WebCore.pro:
1518
1519 2007-10-30  Justin Garcia  <justin.garcia@apple.com>
1520
1521         Reviewed by Darin Adler.
1522
1523         <rdar://problem/5549929> CrashTracer: [USER] 35 crashes at WebCore::CharacterData::insertData
1524         
1525         We were trying to insert a tab into a br, after the br incorrectly ended up inside
1526         a tab span.
1527         
1528         * editing/DeleteButtonController.cpp: 
1529         (WebCore::isDeletableElement): Changed to take in a const Node* instead of a Node*.
1530         * editing/DeleteSelectionCommand.cpp:
1531         (WebCore::isTableRow): Ditto.
1532         * editing/IndentOutdentCommand.cpp:
1533         (WebCore::isIndentBlockquote): Ditto.
1534         (WebCore::isListOrIndentBlockquote): Ditto.
1535         * editing/InsertLineBreakCommand.cpp:
1536         (WebCore::InsertLineBreakCommand::shouldUseBreakElement): Added, moved code from
1537         doApply here.
1538         (WebCore::InsertLineBreakCommand::doApply): 
1539         Don't upstream() the insertion position.  upstream()ing it will only have an effect
1540         when the insertion position is the first in its paragraph (since we canonicalize
1541         VisiblePositions to the upstream() candidate).  In this start of paragraph case, 
1542         upstream() can move outside inline elements like tab spans or elements that might
1543         have a different whitespace mode (added two test cases to cover these).
1544         Moved code to decide whether to insert a br or a '\n' to its own method.
1545         Removed special case code for inserting at a position inside a tab span.  We instead
1546         adjust the insertion position before insertion if it is inside a tab span and
1547         handle insertion in the appropriate if-block.  This fixes a bug where we would 
1548         only insert one line break when two were needed (added a testcase).
1549         Removed special case code for inserting before and after tables and horizontal
1550         rules.  We handle these insertions in the appropriate if-block.
1551         * editing/InsertLineBreakCommand.h:
1552         * editing/ReplaceSelectionCommand.cpp:
1553         (WebCore::isMailPasteAsQuotationNode): Change to take in a const Node*.
1554         * editing/htmlediting.cpp:
1555         (WebCore::isContentEditable): Ditto.
1556         (WebCore::isBlock): Ditto.
1557         (WebCore::enclosingNodeOfType): Changed to take a function pointer to a function
1558         that takes in a const Node*.
1559         (WebCore::isTabSpanTextNode): Check to see that the node actually a text node,
1560         and not, say, a br.
1561         * editing/htmlediting.h:
1562         * editing/markup.cpp:
1563         (WebCore::styleFromMatchedRulesAndInlineDecl): Changed to take in a const Node*.
1564         (WebCore::elementHasTextDecorationProperty): Ditto.
1565
1566 2007-10-30  Antti Koivisto  <antti@apple.com>
1567
1568         Reviewed by NOBODY.
1569
1570         Add missing files.
1571
1572         * html/VoidCallback.cpp: Added.
1573         (VoidCallback::VoidCallback):
1574         (VoidCallback::~VoidCallback):
1575         (VoidCallback::handleEvent):
1576         (VoidCallback::execute):
1577         (VoidCallback::operator==):
1578         (WebCore::toVoidCallback):
1579         * html/VoidCallback.h: Added.
1580         * html/VoidCallback.idl: Added.
1581
1582 2007-10-30  David Kilzer  <ddkilzer@webkit.org>
1583
1584         Generated files missing from WebCore's Xcode project file
1585         <http://bugs.webkit.org/show_bug.cgi?id=15406>
1586
1587         Reviewed by Darin.
1588
1589         Added the following files to the Xcode project file (note that
1590         JSHTMLInputElementBaseTable.cpp is used as a header file):
1591
1592         - DOMCSSStyleSheetPrivate.h
1593         - DOMEventPrivate.h
1594         - DOMHTMLCollectionPrivate.h
1595         - DOMHTMLEmbedElementPrivate.h
1596         - DOMHTMLIFrameElementPrivate.h
1597         - DOMHTMLObjectElementPrivate.h
1598         - DOMHTMLSelectElementPrivate.h
1599         - DOMTextEventInternal.h
1600         - JSHTMLInputElementBaseTable.cpp
1601
1602         * DerivedSources.make: Removed DOMSVGException.h and JSSVGAnimatedPoints.h
1603         since their generated code was not used.
1604         * WebCore.xcodeproj/project.pbxproj: Added missing header files.
1605
1606 2007-10-29  Antti Koivisto  <antti@apple.com>
1607
1608         Rubber stamped by Adele.
1609
1610         Initial media (<video> and <audio>) support from feature branch and 
1611         QTKit based platform implementation.
1612         
1613         This will need to be updated to match current draft specification.
1614
1615         * Configurations/WebCore.xcconfig:
1616         * DerivedSources.make:
1617         * WebCore.base.exp:
1618         * WebCore.xcodeproj/project.pbxproj:
1619         * bindings/js/JSEventCustom.cpp:
1620         (WebCore::toJS):
1621         * bindings/js/JSHTMLAudioElementConstructor.cpp: Added.
1622         (WebCore::JSHTMLAudioElementConstructor::JSHTMLAudioElementConstructor):
1623         (WebCore::JSHTMLAudioElementConstructor::implementsConstruct):
1624         (WebCore::JSHTMLAudioElementConstructor::construct):
1625         * bindings/js/JSHTMLAudioElementConstructor.h: Added.
1626         * bindings/js/JSHTMLElementWrapperFactory.cpp:
1627         (WebCore::createJSHTMLWrapper):
1628         * bindings/js/kjs_window.cpp:
1629         (KJS::Window::getValueProperty):
1630         * bindings/js/kjs_window.h:
1631         (KJS::Window::):
1632         * bindings/scripts/CodeGeneratorJS.pm:
1633         * dom/Document.cpp:
1634         (WebCore::Document::createEvent):
1635         (WebCore::Document::willSaveToCache):
1636         (WebCore::Document::didRestoreFromCache):
1637         (WebCore::Document::registerForCacheCallbacks):
1638         (WebCore::Document::unregisterForCacheCallbacks):
1639         * dom/Document.h:
1640         * dom/Element.cpp:
1641         (WebCore::Element::setBooleanAttribute):
1642         * dom/Element.h:
1643         (WebCore::Element::willSaveToCache):
1644         * dom/Event.cpp:
1645         (WebCore::Event::isProgressEvent):
1646         * dom/Event.h:
1647         * dom/EventNames.h:
1648         * dom/EventTargetNode.cpp:
1649         (WebCore::EventTargetNode::dispatchProgressEvent):
1650         * dom/EventTargetNode.h:
1651         * dom/ProgressEvent.cpp: Added.
1652         (WebCore::ProgressEvent::ProgressEvent):
1653         (WebCore::ProgressEvent::initProgressEvent):
1654         (WebCore::ProgressEvent::initProgressEventNS):
1655         * dom/ProgressEvent.h: Added.
1656         (WebCore::ProgressEvent::lengthComputable):
1657         (WebCore::ProgressEvent::loaded):
1658         (WebCore::ProgressEvent::total):
1659         (WebCore::ProgressEvent::isProgressEvent):
1660         * dom/ProgressEvent.idl: Added.
1661         * history/CachedPage.cpp:
1662         (WebCore::CachedPage::CachedPage):
1663         * html/HTMLAttributeNames.in:
1664         * html/HTMLAudioElement.cpp: Added.
1665         (WebCore::HTMLAudioElement::HTMLAudioElement):
1666         * html/HTMLAudioElement.h: Added.
1667         (WebCore::HTMLAudioElement::tagPriority):
1668         * html/HTMLAudioElement.idl: Added.
1669         * html/HTMLElement.cpp:
1670         (WebCore::inlineTagList):
1671         * html/HTMLElementFactory.cpp:
1672         (WebCore::audioConstructor):
1673         (WebCore::videoConstructor):
1674         (WebCore::sourceConstructor):
1675         (WebCore::createFunctionMap):
1676         * html/HTMLInputElement.cpp:
1677         (WebCore::HTMLInputElement::~HTMLInputElement):
1678         (WebCore::HTMLInputElement::setInputType):
1679         (WebCore::HTMLInputElement::willMoveToNewOwnerDocument):
1680         (WebCore::HTMLInputElement::didMoveToNewOwnerDocument):
1681         * html/HTMLMediaElement.cpp: Added.
1682         (WebCore::HTMLMediaElement::HTMLMediaElement):
1683         (WebCore::HTMLMediaElement::~HTMLMediaElement):
1684         (WebCore::HTMLMediaElement::checkDTD):
1685         (WebCore::HTMLMediaElement::rendererIsNeeded):
1686         (WebCore::HTMLMediaElement::createRenderer):
1687         (WebCore::HTMLMediaElement::insertedIntoDocument):
1688         (WebCore::HTMLMediaElement::removedFromDocument):
1689         (WebCore::HTMLMediaElement::scheduleLoad):
1690         (WebCore::HTMLMediaElement::initAndDispatchProgressEvent):
1691         (WebCore::HTMLMediaElement::dispatchEventAsync):
1692         (WebCore::HTMLMediaElement::loadTimerFired):
1693         (WebCore::HTMLMediaElement::asyncEventTimerFired):
1694         (WebCore::serializeTimeOffset):
1695         (WebCore::parseTimeOffset):
1696         (WebCore::HTMLMediaElement::getTimeOffsetAttribute):
1697         (WebCore::HTMLMediaElement::setTimeOffsetAttribute):
1698         (WebCore::HTMLMediaElement::error):
1699         (WebCore::HTMLMediaElement::src):
1700         (WebCore::HTMLMediaElement::HTMLMediaElement::setSrc):
1701         (WebCore::HTMLMediaElement::currentSrc):
1702         (WebCore::HTMLMediaElement::networkState):
1703         (WebCore::HTMLMediaElement::bufferingRate):
1704         (WebCore::HTMLMediaElement::load):
1705         (WebCore::HTMLMediaElement::movieNetworkStateChanged):
1706         (WebCore::HTMLMediaElement::movieReadyStateChanged):
1707         (WebCore::HTMLMediaElement::setReadyState):
1708         (WebCore::HTMLMediaElement::progressEventTimerFired):
1709         (WebCore::HTMLMediaElement::seek):
1710         (WebCore::HTMLMediaElement::readyState):
1711         (WebCore::HTMLMediaElement::seeking):
1712         (WebCore::HTMLMediaElement::currentTime):
1713         (WebCore::HTMLMediaElement::setCurrentTime):
1714         (WebCore::HTMLMediaElement::duration):
1715         (WebCore::HTMLMediaElement::paused):
1716         (WebCore::HTMLMediaElement::defaultPlaybackRate):
1717         (WebCore::HTMLMediaElement::setDefaultPlaybackRate):
1718         (WebCore::HTMLMediaElement::playbackRate):
1719         (WebCore::HTMLMediaElement::setPlaybackRate):
1720         (WebCore::HTMLMediaElement::ended):
1721         (WebCore::HTMLMediaElement::autoplay):
1722         (WebCore::HTMLMediaElement::setAutoplay):
1723         (WebCore::HTMLMediaElement::play):
1724         (WebCore::HTMLMediaElement::pause):
1725         (WebCore::HTMLMediaElement::loopCount):
1726         (WebCore::HTMLMediaElement::setLoopCount):
1727         (WebCore::HTMLMediaElement::start):
1728         (WebCore::HTMLMediaElement::setStart):
1729         (WebCore::HTMLMediaElement::end):
1730         (WebCore::HTMLMediaElement::setEnd):
1731         (WebCore::HTMLMediaElement::loopStart):
1732         (WebCore::HTMLMediaElement::setLoopStart):
1733         (WebCore::HTMLMediaElement::loopEnd):
1734         (WebCore::HTMLMediaElement::setLoopEnd):
1735         (WebCore::HTMLMediaElement::currentLoop):
1736         (WebCore::HTMLMediaElement::setCurrentLoop):
1737         (WebCore::HTMLMediaElement::controls):
1738         (WebCore::HTMLMediaElement::setControls):
1739         (WebCore::HTMLMediaElement::volume):
1740         (WebCore::HTMLMediaElement::setVolume):
1741         (WebCore::HTMLMediaElement::muted):
1742         (WebCore::HTMLMediaElement::setMuted):
1743         (WebCore::HTMLMediaElement::pickMedia):
1744         (WebCore::HTMLMediaElement::checkIfSeekNeeded):
1745         (WebCore::HTMLMediaElement::movieVolumeChanged):
1746         (WebCore::HTMLMediaElement::movieDidEnd):
1747         (WebCore::HTMLMediaElement::movieCuePointReached):
1748         (WebCore::HTMLMediaElement::addCuePoint):
1749         (WebCore::HTMLMediaElement::removeCuePoint):
1750         (WebCore::HTMLMediaElement::buffered):
1751         (WebCore::HTMLMediaElement::played):
1752         (WebCore::HTMLMediaElement::seekable):
1753         (WebCore::HTMLMediaElement::effectiveStart):
1754         (WebCore::HTMLMediaElement::effectiveEnd):
1755         (WebCore::HTMLMediaElement::effectiveLoopStart):
1756         (WebCore::HTMLMediaElement::effectiveLoopEnd):
1757         (WebCore::HTMLMediaElement::activelyPlaying):
1758         (WebCore::HTMLMediaElement::endedPlayback):
1759         (WebCore::HTMLMediaElement::willSaveToCache):
1760         (WebCore::HTMLMediaElement::didRestoreFromCache):
1761         * html/HTMLMediaElement.h: Added.
1762         (WebCore::HTMLMediaElement::movie):
1763         (WebCore::HTMLMediaElement::isVideo):
1764         (WebCore::HTMLMediaElement::):
1765         (WebCore::HTMLMediaElement::CallbackEntry::CallbackEntry):
1766         * html/HTMLMediaElement.idl: Added.
1767         * html/HTMLSourceElement.cpp: Added.
1768         (WebCore::HTMLSourceElement::HTMLSourceElement):
1769         (WebCore::HTMLSourceElement::~HTMLSourceElement):
1770         (WebCore::HTMLSourceElement::insertedIntoDocument):
1771         (WebCore::HTMLSourceElement::src):
1772         (WebCore::HTMLSourceElement::setSrc):
1773         (WebCore::HTMLSourceElement::media):
1774         (WebCore::HTMLSourceElement::setMedia):
1775         (WebCore::HTMLSourceElement::type):
1776         (WebCore::HTMLSourceElement::setType):
1777         * html/HTMLSourceElement.h: Added.
1778         (WebCore::HTMLSourceElement::endTagRequirement):
1779         (WebCore::HTMLSourceElement::tagPriority):
1780         * html/HTMLSourceElement.idl: Added.
1781         * html/HTMLTagNames.in:
1782         * html/HTMLVideoElement.cpp: Added.
1783         (WebCore::HTMLVideoElement::HTMLVideoElement):
1784         (WebCore::HTMLVideoElement::videoWidth):
1785         (WebCore::HTMLVideoElement::videoHeight):
1786         * html/HTMLVideoElement.h: Added.
1787         (WebCore::HTMLVideoElement::tagPriority):
1788         (WebCore::HTMLVideoElement::isVideo):
1789         * html/HTMLVideoElement.idl: Added.
1790         * html/MediaError.h: Added.
1791         (WebCore::MediaError::):
1792         (WebCore::MediaError::MediaError):
1793         (WebCore::MediaError::code):
1794         * html/MediaError.idl: Added.
1795         * html/TimeRanges.cpp: Added.
1796         (TimeRanges::TimeRanges):
1797         (TimeRanges::start):
1798         (TimeRanges::end):
1799         (TimeRanges::add):
1800         (TimeRanges::contain):
1801         * html/TimeRanges.h: Added.
1802         (WebCore::TimeRanges::TimeRanges):
1803         (WebCore::TimeRanges::length):
1804         (WebCore::TimeRanges::Range::Range):
1805         * html/TimeRanges.idl: Added.
1806         * page/DOMWindow.idl:
1807         * platform/MIMETypeRegistry.cpp:
1808         (WebCore::initialiseSupportedMovieMIMETypes):
1809         (WebCore::initialiseMIMETypeRegistry):
1810         (WebCore::MIMETypeRegistry::isSupportedMovieMIMEType):
1811         (WebCore::MIMETypeRegistry::getSupportedMovieMIMETypes):
1812         * platform/MIMETypeRegistry.h:
1813         * platform/graphics/Movie.cpp: Added.
1814         (WebCore::Movie::Movie):
1815         (WebCore::Movie::~Movie):
1816         (WebCore::Movie::load):
1817         (WebCore::Movie::cancelLoad):
1818         (WebCore::Movie::play):
1819         (WebCore::Movie::pause):
1820         (WebCore::Movie::duration):
1821         (WebCore::Movie::currentTime):
1822         (WebCore::Movie::seek):
1823         (WebCore::Movie::paused):
1824         (WebCore::Movie::seeking):
1825         (WebCore::Movie::naturalSize):
1826         (WebCore::Movie::hasVideo):
1827         (WebCore::Movie::networkState):
1828         (WebCore::Movie::readyState):
1829         (WebCore::Movie::volume):
1830         (WebCore::Movie::setVolume):
1831         (WebCore::Movie::rate):
1832         (WebCore::Movie::setRate):
1833         (WebCore::Movie::muted):
1834         (WebCore::Movie::setMuted):
1835         (WebCore::Movie::dataRate):
1836         (WebCore::Movie::setEndTime):
1837         (WebCore::Movie::addCuePoint):
1838         (WebCore::Movie::removeCuePoint):
1839         (WebCore::Movie::clearCuePoints):
1840         (WebCore::Movie::maxTimeBuffered):
1841         (WebCore::Movie::maxTimeSeekable):
1842         (WebCore::Movie::bytesLoaded):
1843         (WebCore::Movie::totalBytesKnown):
1844         (WebCore::Movie::totalBytes):
1845         (WebCore::Movie::setRect):
1846         (WebCore::Movie::visible):
1847         (WebCore::Movie::setVisible):
1848         (WebCore::Movie::paint):
1849         (WebCore::Movie::getSupportedTypes):
1850         (WebCore::Movie::networkStateChanged):
1851         (WebCore::Movie::readyStateChanged):
1852         (WebCore::Movie::volumeChanged):
1853         (WebCore::Movie::didEnd):
1854         (WebCore::Movie::cuePointReached):
1855         * platform/graphics/Movie.h: Added.
1856         (WebCore::MovieClient::~MovieClient):
1857         (WebCore::MovieClient::movieNetworkStateChanged):
1858         (WebCore::MovieClient::movieReadyStateChanged):
1859         (WebCore::MovieClient::movieVolumeChanged):
1860         (WebCore::MovieClient::movieDidEnd):
1861         (WebCore::MovieClient::movieCuePointReached):
1862         (WebCore::Movie::parentWidget):
1863         (WebCore::Movie::setParentWidget):
1864         (WebCore::Movie::rect):
1865         (WebCore::Movie::):
1866         * platform/graphics/mac/MoviePrivateQTKit.h: Added.
1867         * platform/graphics/mac/MoviePrivateQTKit.mm: Added.
1868         (WebCore::MoviePrivate::MoviePrivate):
1869         (WebCore::MoviePrivate::~MoviePrivate):
1870         (WebCore::MoviePrivate::createQTMovie):
1871         (WebCore::MoviePrivate::createQTMovieView):
1872         (WebCore::MoviePrivate::createQTTime):
1873         (WebCore::MoviePrivate::load):
1874         (WebCore::MoviePrivate::play):
1875         (WebCore::MoviePrivate::pause):
1876         (WebCore::MoviePrivate::duration):
1877         (WebCore::MoviePrivate::currentTime):
1878         (WebCore::MoviePrivate::seek):
1879         (WebCore::MoviePrivate::setEndTime):
1880         (WebCore::MoviePrivate::addCuePoint):
1881         (WebCore::MoviePrivate::removeCuePoint):
1882         (WebCore::MoviePrivate::clearCuePoints):
1883         (WebCore::MoviePrivate::startCuePointTimerIfNeeded):
1884         (WebCore::MoviePrivate::cancelSeek):
1885         (WebCore::MoviePrivate::seekTimerFired):
1886         (WebCore::MoviePrivate::cuePointTimerFired):
1887         (WebCore::MoviePrivate::paused):
1888         (WebCore::MoviePrivate::seeking):
1889         (WebCore::MoviePrivate::naturalSize):
1890         (WebCore::MoviePrivate::hasVideo):
1891         (WebCore::MoviePrivate::setVolume):
1892         (WebCore::MoviePrivate::setMuted):
1893         (WebCore::MoviePrivate::setRate):
1894         (WebCore::MoviePrivate::dataRate):
1895         (WebCore::MoviePrivate::networkState):
1896         (WebCore::MoviePrivate::readyState):
1897         (WebCore::MoviePrivate::maxTimeBuffered):
1898         (WebCore::MoviePrivate::maxTimeSeekable):
1899         (WebCore::MoviePrivate::maxTimeLoaded):
1900         (WebCore::MoviePrivate::bytesLoaded):
1901         (WebCore::MoviePrivate::totalBytesKnown):
1902         (WebCore::MoviePrivate::totalBytes):
1903         (WebCore::MoviePrivate::cancelLoad):
1904         (WebCore::MoviePrivate::updateStates):
1905         (WebCore::MoviePrivate::loadStateChanged):
1906         (WebCore::MoviePrivate::rateChanged):
1907         (WebCore::MoviePrivate::sizeChanged):
1908         (WebCore::MoviePrivate::timeChanged):
1909         (WebCore::MoviePrivate::volumeChanged):
1910         (WebCore::MoviePrivate::didEnd):
1911         (WebCore::MoviePrivate::setRect):
1912         (WebCore::MoviePrivate::setVisible):
1913         (WebCore::MoviePrivate::paint):
1914         (WebCore::MoviePrivate::getSupportedTypes):
1915         (-[WebCoreMovieObserver loadStateChanged:]):
1916         (-[WebCoreMovieObserver rateChanged:]):
1917         (-[WebCoreMovieObserver sizeChanged:]):
1918         (-[WebCoreMovieObserver timeChanged:]):
1919         (-[WebCoreMovieObserver volumeChanged:]):
1920         (-[WebCoreMovieObserver didEnd:]):
1921         (-[WebCoreMovieObserver setCallback:WebCore::]):
1922         * platform/mac/WebCoreSystemInterface.h:
1923         * platform/mac/WebCoreSystemInterface.mm:
1924         * rendering/RenderLayer.cpp:
1925         (WebCore::RenderLayer::collectLayers):
1926         * rendering/RenderVideo.cpp: Added.
1927         (WebCore::RenderVideo::RenderVideo):
1928         (WebCore::RenderVideo::~RenderVideo):
1929         (WebCore::RenderVideo::movie):
1930         (WebCore::RenderVideo::videoSizeChanged):
1931         (WebCore::RenderVideo::paint):
1932         (WebCore::RenderVideo::layout):
1933         (WebCore::RenderVideo::updateFromElement):
1934         (WebCore::RenderVideo::updateMovie):
1935         (WebCore::RenderVideo::isWidthSpecified):
1936         (WebCore::RenderVideo::isHeightSpecified):
1937         (WebCore::RenderVideo::calcReplacedWidth):
1938         (WebCore::RenderVideo::calcReplacedHeight):
1939         (WebCore::RenderVideo::calcAspectRatioWidth):
1940         (WebCore::RenderVideo::calcAspectRatioHeight):
1941         (WebCore::RenderVideo::calcPrefWidths):
1942         * rendering/RenderVideo.h: Added.
1943         (WebCore::RenderVideo::renderName):
1944
1945 2007-10-30  Sam Weinig  <sam@webkit.org>
1946
1947         Reviewed by Adam Roben.
1948
1949         Add Interface and Class UUIDs to the IDLs in preparation of adding
1950         autogeneration of the COM DOM bindings.
1951
1952         * bindings/scripts/IDLParser.pm: Relax parsing rules to allow newlines as whitespace.
1953         * css/CSSCharsetRule.idl:
1954         * css/CSSFontFaceRule.idl:
1955         * css/CSSImportRule.idl:
1956         * css/CSSMediaRule.idl:
1957         * css/CSSPageRule.idl:
1958         * css/CSSPrimitiveValue.idl:
1959         * css/CSSRule.idl:
1960         * css/CSSRuleList.idl:
1961         * css/CSSStyleDeclaration.idl:
1962         * css/CSSStyleRule.idl:
1963         * css/CSSStyleSheet.idl:
1964         * css/CSSUnknownRule.idl:
1965         * css/CSSValue.idl:
1966         * css/CSSValueList.idl:
1967         * css/Counter.idl:
1968         * css/MediaList.idl:
1969         * css/RGBColor.idl:
1970         * css/Rect.idl:
1971         * css/StyleSheet.idl:
1972         * css/StyleSheetList.idl:
1973         * dom/Attr.idl:
1974         * dom/CDATASection.idl:
1975         * dom/CharacterData.idl:
1976         * dom/Comment.idl:
1977         * dom/DOMImplementation.idl:
1978         * dom/Document.idl:
1979         * dom/DocumentFragment.idl:
1980         * dom/DocumentType.idl:
1981         * dom/Element.idl:
1982         * dom/Entity.idl:
1983         * dom/EntityReference.idl:
1984         * dom/Event.idl:
1985         * dom/EventListener.idl:
1986         * dom/EventTarget.idl:
1987         * dom/NamedNodeMap.idl:
1988         * dom/Node.idl:
1989         * dom/NodeList.idl:
1990         * dom/Notation.idl:
1991         * dom/ProcessingInstruction.idl:
1992         * dom/Text.idl:
1993         * html/CanvasGradient.idl:
1994         * html/CanvasPattern.idl:
1995         * html/CanvasRenderingContext2D.idl:
1996         * html/HTMLAnchorElement.idl:
1997         * html/HTMLAppletElement.idl:
1998         * html/HTMLAreaElement.idl:
1999         * html/HTMLBRElement.idl:
2000         * html/HTMLBaseElement.idl:
2001         * html/HTMLBaseFontElement.idl:
2002         * html/HTMLBlockquoteElement.idl:
2003         * html/HTMLBodyElement.idl:
2004         * html/HTMLButtonElement.idl:
2005         * html/HTMLCanvasElement.idl:
2006         * html/HTMLCollection.idl:
2007         * html/HTMLDListElement.idl:
2008         * html/HTMLDirectoryElement.idl:
2009         * html/HTMLDivElement.idl:
2010         * html/HTMLDocument.idl:
2011         * html/HTMLElement.idl:
2012         * html/HTMLEmbedElement.idl:
2013         * html/HTMLFieldSetElement.idl:
2014         * html/HTMLFontElement.idl:
2015         * html/HTMLFormElement.idl:
2016         * html/HTMLFrameElement.idl:
2017         * html/HTMLFrameSetElement.idl:
2018         * html/HTMLHRElement.idl:
2019         * html/HTMLHeadElement.idl:
2020         * html/HTMLHeadingElement.idl:
2021         * html/HTMLHtmlElement.idl:
2022         * html/HTMLIFrameElement.idl:
2023         * html/HTMLImageElement.idl:
2024         * html/HTMLInputElement.idl:
2025         * html/HTMLIsIndexElement.idl:
2026         * html/HTMLLIElement.idl:
2027         * html/HTMLLabelElement.idl:
2028         * html/HTMLLegendElement.idl:
2029         * html/HTMLLinkElement.idl:
2030         * html/HTMLMapElement.idl:
2031         * html/HTMLMarqueeElement.idl:
2032         * html/HTMLMenuElement.idl:
2033         * html/HTMLMetaElement.idl:
2034         * html/HTMLModElement.idl:
2035         * html/HTMLOListElement.idl:
2036         * html/HTMLObjectElement.idl:
2037         * html/HTMLOptGroupElement.idl:
2038         * html/HTMLOptionElement.idl:
2039         * html/HTMLOptionsCollection.idl:
2040         * html/HTMLParagraphElement.idl:
2041         * html/HTMLParamElement.idl:
2042         * html/HTMLPreElement.idl:
2043         * html/HTMLQuoteElement.idl:
2044         * html/HTMLScriptElement.idl:
2045         * html/HTMLSelectElement.idl:
2046         * html/HTMLStyleElement.idl:
2047         * html/HTMLTableCaptionElement.idl:
2048         * html/HTMLTableCellElement.idl:
2049         * html/HTMLTableColElement.idl:
2050         * html/HTMLTableElement.idl:
2051         * html/HTMLTableRowElement.idl:
2052         * html/HTMLTableSectionElement.idl:
2053         * html/HTMLTextAreaElement.idl:
2054         * html/HTMLTitleElement.idl:
2055         * html/HTMLUListElement.idl:
2056
2057 2007-10-30  Adele Peterson  <adele@apple.com>
2058
2059         RS by Darin.
2060
2061         * page/AnimationController.cpp: (WebCore::blendFunc): Use lround instead of round.
2062
2063 2007-10-29  Timothy Hatcher  <timothy@apple.com>
2064
2065         Reviewed by John Sullivan.
2066
2067         - Allow showing and closing the inspector programatically.
2068         - Add showConsole() and showTimeline() methods. 
2069
2070         * WebCore.base.exp: Add exports for WebKit.
2071         * page/InspectorController.cpp:
2072         (WebCore::callSimpleFunction): Renamed from callClearFunction().
2073         (WebCore::unloading): Renamed to close().
2074         (WebCore::InspectorController::InspectorController):
2075         (WebCore::InspectorController::inspect): Moved showing code to show().
2076         (WebCore::InspectorController::setWindowVisible): Show the timeline or console if needed.
2077         (WebCore::InspectorController::show): Code factored out of inspect().
2078         (WebCore::InspectorController::showConsole): Call show() and the JS showConsole().
2079         (WebCore::InspectorController::showTimeline): Call show() and the JS showTimeline().
2080         (WebCore::InspectorController::close):
2081         (WebCore::InspectorController::clearScriptResources): Call the new callSimpleFunction.
2082         (WebCore::InspectorController::clearDatabaseScriptResources): Ditto.
2083         (WebCore::InspectorController::clearScriptConsoleMessages): Ditto.
2084         (WebCore::InspectorController::clearNetworkTimeline): Ditto.
2085         * page/InspectorController.h: Add and rename methods.
2086         * page/inspector/inspector.js: Add showConsole() and showTimeline().
2087
2088 2007-10-30  Adele Peterson  <adele@apple.com>
2089
2090         Reviewed by Sam.
2091
2092         Build fix.
2093
2094         * page/AnimationController.cpp: (WebCore::blendFunc):
2095
2096 2007-10-30  Adele Peterson  <adele@apple.com>
2097
2098         Reviewed by Darin.
2099
2100         WebCore part of fix for http://bugs.webkit.org/show_bug.cgi?id=10577
2101         <rdar://problem/5103625> REGRESSION: Caps lock icon should show in password fields
2102
2103         Test: manual-tests/password-caps-lock.html
2104
2105         * WebCore.base.exp: Added symbol for capsLockStateMayHaveChanged.
2106
2107         * page/Frame.cpp: (WebCore::Frame::setIsActive): Calls capsLockStateMayHaveChanged.
2108         * page/EventHandler.cpp: (WebCore::EventHandler::capsLockStateMayHaveChanged): Added. Tells the focused node's renderer that the capsLockStateMayHaveChanged.
2109         * page/EventHandler.h:
2110
2111         * platform/PlatformKeyboardEvent.h:
2112         * platform/mac/KeyEventMac.mm: (WebCore::PlatformKeyboardEvent::currentCapsLockState): Added.
2113         * platform/win/KeyEventWin.cpp: (WebCore::PlatformKeyboardEvent::currentCapsLockState): Added.
2114
2115         * rendering/RenderTextControl.cpp:
2116         (WebCore::RenderTextControl::RenderTextControl):
2117         (WebCore::RenderTextControl::paint): Added.  If m_shouldDrawCapsLockIndicator is true, paints the caps lock indicator after the background.
2118         (WebCore::RenderTextControl::forwardEvent): When the control gets and loses focus, update the caps lock state.
2119         (WebCore::RenderTextControl::capsLockStateMayHaveChanged): Added. Updates m_shouldDrawCapsLockIndicator, which is true if the field is a password field, 
2120          and the frame is active, and the element is focused, and the caps lock is on.  Causes a repaint when m_shouldDrawCapsLockIndicator changes state.
2121         * rendering/RenderTextControl.h: Added m_shouldDrawCapsLockIndicator.
2122         * rendering/RenderObject.h: (WebCore::RenderObject::capsLockStateMayHaveChanged): Added.
2123
2124         * rendering/RenderTheme.h: (WebCore::RenderTheme::paintCapsLockIndicator): Added.
2125         * rendering/RenderThemeMac.h:
2126         * rendering/RenderThemeMac.mm: (WebCore::RenderThemeMac::paintCapsLockIndicator): Added.  Calls wkDrawCapsLockIndicator.
2127         * rendering/RenderThemeSafari.cpp: (WebCore::RenderThemeSafari::paintCapsLockIndicator): Added.  Calls paintThemePart for the CapsLockPart.
2128         * rendering/RenderThemeSafari.h:
2129
2130 2007-10-30  David Hyatt  <hyatt@apple.com>
2131
2132         Land support for implicit animation in CSS.
2133
2134         Reviewed by mitz, darin
2135
2136         * css/CSSParser.cpp:
2137         (WebCore::CSSParser::parseTimingFunctionValue):
2138         (WebCore::CSSParser::parseTransitionTimingFunction):
2139         (WebCore::CSSParser::parseTransitionProperty):
2140         * css/CSSStyleSelector.cpp:
2141         (WebCore::CSSStyleSelector::mapTransitionDuration):
2142         (WebCore::CSSStyleSelector::mapTransitionRepeatCount):
2143         (WebCore::CSSStyleSelector::mapTransitionTimingFunction):
2144         (WebCore::CSSStyleSelector::mapTransitionProperty):
2145         * css/CSSTimingFunctionValue.h:
2146         (WebCore::CSSTimingFunctionValue::CSSTimingFunctionValue):
2147         (WebCore::CSSTimingFunctionValue::x1):
2148         (WebCore::CSSTimingFunctionValue::y1):
2149         (WebCore::CSSTimingFunctionValue::x2):
2150         (WebCore::CSSTimingFunctionValue::y2):
2151         * dom/Element.cpp:
2152         (WebCore::Element::styleForRenderer):
2153         (WebCore::Element::createRenderer):
2154         * dom/Node.cpp:
2155         (WebCore::Node::createRendererIfNeeded):
2156         (WebCore::Node::setRenderStyle):
2157         * page/AnimationController.cpp:
2158         (WebCore::CurveData::CurveData):
2159         (WebCore::CurveData::sampleCurveX):
2160         (WebCore::CurveData::sampleCurveY):
2161         (WebCore::CurveData::sampleCurveDerivativeX):
2162         (WebCore::CurveData::solveCurveX):
2163         (WebCore::solveEpsilon):
2164         (WebCore::solveCubicBezierFunction):
2165         (WebCore::ImplicitAnimation::finished):
2166         (WebCore::CompositeImplicitAnimation::~CompositeImplicitAnimation):
2167         (WebCore::CompositeImplicitAnimation::hasAnimationForProperty):
2168         (WebCore::ImplicitAnimation::ImplicitAnimation):
2169         (WebCore::ImplicitAnimation::~ImplicitAnimation):
2170         (WebCore::ImplicitAnimation::reset):
2171         (WebCore::ImplicitAnimation::progress):
2172         (WebCore::blendFunc):
2173         (WebCore::ImplicitAnimation::animate):
2174         (WebCore::CompositeImplicitAnimation::animate):
2175         (WebCore::CompositeImplicitAnimation::animating):
2176         (WebCore::CompositeImplicitAnimation::reset):
2177         (WebCore::AnimationControllerPrivate::hasImplicitAnimations):
2178         (WebCore::AnimationControllerPrivate::AnimationControllerPrivate):
2179         (WebCore::AnimationControllerPrivate::~AnimationControllerPrivate):
2180         (WebCore::AnimationControllerPrivate::get):
2181         (WebCore::AnimationControllerPrivate::clear):
2182         (WebCore::AnimationControllerPrivate::updateTimer):
2183         (WebCore::AnimationControllerPrivate::timerFired):
2184         (WebCore:::m_data):
2185         (WebCore::AnimationController::~AnimationController):
2186         (WebCore::AnimationController::cancelImplicitAnimations):
2187         (WebCore::AnimationController::updateImplicitAnimations):
2188         (WebCore::AnimationController::suspendAnimations):
2189         (WebCore::AnimationController::resumeAnimations):
2190         * page/AnimationController.h:
2191         * page/Frame.cpp:
2192         (WebCore::FramePrivate::FramePrivate):
2193         * rendering/RenderBox.cpp:
2194         (WebCore::RenderBox::setStyle):
2195         (WebCore::RenderBox::destroy):
2196         * rendering/RenderObject.cpp:
2197         (WebCore::RenderObject::setAnimatableStyle):
2198         (WebCore::RenderObject::destroy):
2199         * rendering/RenderObject.h:
2200         * rendering/RenderStyle.h:
2201         (WebCore::TimingFunction::TimingFunction):
2202         (WebCore::TimingFunction::operator==):
2203         (WebCore::TimingFunction::x1):
2204         (WebCore::TimingFunction::y1):
2205         (WebCore::TimingFunction::x2):
2206         (WebCore::TimingFunction::y2):
2207         (WebCore::TimingFunction::type):
2208         (WebCore::Transition::transitionProperty):
2209         (WebCore::Transition::setTransitionProperty):
2210         (WebCore::RenderStyle::initialTransitionProperty):
2211         * rendering/RenderWidget.cpp:
2212         (WebCore::RenderWidget::destroy):
2213
2214 2007-10-29  Beth Dakin  <bdakin@apple.com>
2215
2216         Reviewed by Hyatt.
2217
2218         Fix for <rdar://problem/5399614> anchor tag is not rendered without 
2219         text content, works in Firefox with CSS background-image (13237)
2220
2221         This patch allows empty inlines that have box decorations or width 
2222         from border/padding/margin to have line boxes.
2223
2224         * rendering/bidi.cpp:
2225         (WebCore::inlineFlowAllowsLineBox): Convenience function that 
2226         defines when we allow an inline flow to have a line box.
2227         (WebCore::requiresLineBox): Call inlineFlowAllowsLineBox.
2228         (WebCore::shouldSkipWhitespaceAfterStartObject): New function to 
2229         merge some shared code between list markers and empty inline flows 
2230         that fall at the beginning of a line.
2231         (WebCore::RenderBlock::findNextLineBreak): Make flows more like 
2232         list markers.
2233
2234         One interesting side effect of this bug appeared in our xhtml/svg 
2235         tests that generate parser error tags. The tag we generate was 
2236         actually an empty inline with box decorations. This patch causes 
2237         those inlines to draw now, and the parser errors looked strange. So 
2238         I changed it so that the parsererror tag is display:block. This 
2239         matches Firefox, and I think was the original intent of the tag 
2240         since that causes its red background and border to show up.
2241         * dom/XMLTokenizer.cpp:
2242         (WebCore::createXHTMLParserErrorHeader):
2243
2244 2007-10-29  Dan Bernstein  <mitz@apple.com>
2245
2246         Reviewed by Dave Hyatt.
2247
2248         - fix crashing tests fast/frames/inline-object-inside-frameset.html and
2249           fast/forms/form-hides-table.html
2250
2251         * rendering/RenderBox.cpp:
2252         (WebCore::RenderBox::destroy):
2253         * rendering/RenderWidget.cpp:
2254         (WebCore::RenderWidget::destroy):
2255
2256 2007-10-29  Dan Bernstein  <mitz@apple.com>
2257
2258         Reviewed by Adam Roben.
2259
2260         - fix http://bugs.webkit.org/show_bug.cgi?id=15750
2261           REGRESSION(r27173): Web Inspector freezes beneath Image::drawPattern()
2262
2263         Test: fast/backgrounds/size/zero.html
2264
2265         * platform/graphics/cg/ImageCG.cpp:
2266         (WebCore::Image::drawPattern): Added an ASSERT and an early return
2267         to guard against singular pattern transforms.
2268         * rendering/RenderBox.cpp:
2269         (WebCore::cacluateBackgroundSize): Changed to ensure a minimum tile
2270         size of 1x1.
2271
2272 2007-10-29  Alp Toker  <alp@atoker.com>
2273
2274         Reviewed by Maciej.
2275
2276         Add GTK+ convenience conversions for various primitives
2277
2278         * WebCore.pro:
2279         * platform/graphics/Color.h:
2280         * platform/graphics/IntPoint.h:
2281         * platform/graphics/IntRect.h:
2282         * platform/graphics/gtk/ColorGtk.cpp: Added.
2283         (WebCore::Color::Color):
2284         * platform/graphics/gtk/IntPointGtk.cpp: Added.
2285         (WebCore::IntPoint::IntPoint):
2286         (WebCore::IntPoint::operator GdkPoint):
2287         * platform/graphics/gtk/IntRectGtk.cpp: Added.
2288         (WebCore::IntRect::IntRect):
2289         (WebCore::IntRect::operator GdkRectangle):
2290
2291 2007-10-29  Jon Honeycutt  <jhoneycutt@apple.com>
2292
2293         Reviewed by Anders.
2294
2295         Speculative fix for <rdar://5538489> Safari 3.0.4 seed hangs at
2296         http://tgmonline.futuregamer.it/ (works fine on Safari 2.0.4 and Safari
2297         Beta for Mac)
2298         
2299         I cannot reproduce this hang, but it is likely due to our not limiting
2300         WM_USER+1 messages or InvalidateRect calls for a plugin with initially-
2301         unknown MIME type. The embed tag on the page is missing a type
2302         attribute, so as fallback, we choose to load the Flash plugin based on
2303         the file extension of "swf." However, we do not record this determined
2304         MIME type, and so our quirks cannot be established.
2305         
2306         Changed findPlugin() so that, if it fails to find a plugin for the
2307         given MIME type, it will lookup the MIME type for the file extension -
2308         overwriting its passed MIME type parameter - and search for a plugin
2309         for that MIME type.
2310
2311         * plugins/win/PluginDatabaseWin.cpp:
2312         (WebCore::PluginDatabaseWin::pluginForMIMEType): Added an early return
2313         if the MIME type is empty
2314         (WebCore::PluginDatabaseWin::MIMETypeForExtension): Added to replace
2315         pluginForExtension. Returns a String with the MIME type for the file
2316         extension. Also, changed to use case-insensitive compares
2317         (WebCore::PluginDatabaseWin::findPlugin): If we fail to find a plugin
2318         for the given extension, overwrite the incoming MIME type parameter
2319         with the MIME type for the file extension, and search for a plugin for
2320         that MIME type. Also, changed the way that the extension is determined
2321         (WebCore::PluginDatabaseWin::createPluginView): Pass a mutable String
2322         to findPlugin() so that it can be updated if necessary
2323         * plugins/win/PluginDatabaseWin.h: Changed findPlugin() to take a non-
2324         const String, removed definition of pluginForExtension, added
2325         definition for MIMETypeForExtension
2326         * plugins/win/PluginPackageWin.cpp: 
2327         (WebCore::PluginPackageWin::fetchInfo): Store the MIME type in
2328         lowercase for easier compares
2329
2330 2007-10-29  Andrew Wellington  <proton@wiretapped.net>
2331
2332         Not reviewed - build fix
2333
2334         Fix Mac Build.
2335         
2336         WebKit/WebCore/xml/XSLTProcessor.cpp:79: warning: 'level' may be used uninitialized
2337         in this function
2338
2339         * xml/XSLTProcessor.cpp:
2340         (WebCore::XSLTProcessor::parseErrorFunc):
2341
2342 2007-10-29  Alp Toker  <alp@atoker.com>
2343
2344         Reviewed by Adam Roben.
2345
2346         http://bugs.webkit.org/show_bug.cgi?id=15725
2347         [GTK] WebCore.pro header dependencies are incorrect
2348
2349         Fix header dependencies in the build system
2350
2351         INCLUDEPATH and DEPENDPATH are now up to date.
2352
2353         * WebCore.pro:
2354
2355 2007-10-29  Beth Dakin  <bdakin@apple.com>
2356
2357         Build fix.
2358
2359         * css/CSSParser.cpp:
2360         (WebCore::CSSParser::parseTimingFunctionValue):
2361         * css/CSSStyleSelector.cpp:
2362         (WebCore::CSSStyleSelector::mapTransitionTimingFunction):
2363
2364 2007-10-29  David Hyatt  <hyatt@apple.com>
2365
2366         Land the back end for CSS animated property transitions.  I am landing this in stages, so the AnimationController
2367         class is deliberately left empty.
2368
2369         Reviewed by darin/aroben
2370
2371         * WebCore.pro:
2372         * WebCore.vcproj/WebCore.vcproj:
2373         * WebCore.xcodeproj/project.pbxproj:
2374         * css/CSSComputedStyleDeclaration.cpp:
2375         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
2376         * css/CSSPropertyNames.in:
2377         * css/CSSTimingFunctionValue.cpp: Added.
2378         (WebCore::CSSTimingFunctionValue::cssText):
2379         * css/CSSTimingFunctionValue.h: Added.
2380         (WebCore::CSSTimingFunctionValue::CSSTimingFunctionValue):
2381         (WebCore::CSSTimingFunctionValue::firstPoint):
2382         (WebCore::CSSTimingFunctionValue::secondPoint):
2383         * css/CSSValueKeywords.in:
2384         * history/CachedPage.cpp:
2385         (WebCore::CachedPage::restore):
2386         * page/AnimationController.cpp: Added.
2387         (WebCore::AnimationController::AnimationController):
2388         (WebCore::AnimationController::~AnimationController):
2389         (WebCore::AnimationController::cancelTransitions):
2390         (WebCore::AnimationController::updateTransitions):
2391         (WebCore::AnimationController::suspendAnimations):
2392         (WebCore::AnimationController::resumeAnimations):
2393         * page/AnimationController.h: Added.
2394         * page/Frame.cpp:
2395         (WebCore::Frame::animationController):
2396         (WebCore::Frame::clearTimers):
2397         * page/Frame.h:
2398         * page/FramePrivate.h:
2399         * rendering/RenderBox.cpp:
2400         (WebCore::RenderBox::setStyle):
2401         (WebCore::RenderBox::destroy):
2402         * rendering/RenderObject.cpp:
2403         (WebCore::RenderObject::animationController):
2404         * rendering/RenderObject.h:
2405         * rendering/RenderStyle.cpp:
2406         (WebCore::Transition::Transition):
2407         (WebCore::Transition::~Transition):
2408         (WebCore::Transition::operator=):
2409         (WebCore::Transition::operator==):
2410         (WebCore::Transition::fillUnsetProperties):
2411         (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
2412         (WebCore::StyleRareNonInheritedData::~StyleRareNonInheritedData):
2413         (WebCore::StyleRareNonInheritedData::operator==):
2414         (WebCore::StyleRareNonInheritedData::transitionDataEquivalent):
2415         (WebCore::RenderStyle::diff):
2416         (WebCore::RenderStyle::adjustTransitions):
2417         (WebCore::RenderStyle::accessTransitions):
2418         * rendering/RenderStyle.h:
2419         (WebCore::BackgroundLayer::next):
2420         (WebCore::):
2421         (WebCore::TimingFunction::TimingFunction):
2422         (WebCore::TimingFunction::operator==):
2423         (WebCore::Transition::next):
2424         (WebCore::Transition::isTransitionDurationSet):
2425         (WebCore::Transition::isTransitionRepeatCountSet):
2426         (WebCore::Transition::isTransitionTimingFunctionSet):
2427         (WebCore::Transition::isTransitionPropertySet):
2428         (WebCore::Transition::isEmpty):
2429         (WebCore::Transition::clearTransitionDuration):
2430         (WebCore::Transition::clearTransitionRepeatCount):
2431         (WebCore::Transition::clearTransitionTimingFunction):
2432         (WebCore::Transition::clearTransitionProperty):
2433         (WebCore::Transition::transitionDuration):
2434         (WebCore::Transition::transitionRepeatCount):
2435         (WebCore::Transition::transitionTimingFunction):
2436         (WebCore::Transition::transitionProperty):
2437         (WebCore::Transition::setTransitionDuration):
2438         (WebCore::Transition::setTransitionRepeatCount):
2439         (WebCore::Transition::setTransitionTimingFunction):
2440         (WebCore::Transition::setTransitionProperty):
2441         (WebCore::Transition::setNext):
2442         (WebCore::Transition::operator!=):
2443         (WebCore::RenderStyle::transitions):
2444         (WebCore::RenderStyle::clearTransitions):
2445         (WebCore::RenderStyle::inheritTransitions):
2446         (WebCore::RenderStyle::initialTransitionDuration):
2447         (WebCore::RenderStyle::initialTransitionRepeatCount):
2448         (WebCore::RenderStyle::initialTransitionTimingFunction):
2449         (WebCore::RenderStyle::initialTransitionProperty):
2450         * rendering/RenderWidget.cpp:
2451         (WebCore::RenderWidget::destroy):
2452
2453 2007-10-29  Alexey Proskuryakov  <ap@webkit.org>
2454
2455         Reviewed by Darin.
2456
2457         http://bugs.webkit.org/show_bug.cgi?id=6040
2458         XSLT does not report errors to the user
2459
2460         Made parseErrorFunc a static member function of XSLTProcessor to be reusable from XSLStylesheet.
2461         Switched to xmlSetStructuredErrorFunc to get an error structure instead of pre-formatted console
2462         output. Got rid of DeprecatedString in XSLTProcessor.
2463
2464         * dom/Document.cpp:
2465         (WebCore::Document::applyXSLTransform):
2466         * xml/XSLStyleSheet.cpp:
2467         (WebCore::XSLStyleSheet::parseString):
2468         * xml/XSLTProcessor.cpp:
2469         (WebCore::XSLTProcessor::parseErrorFunc):
2470         (WebCore::docLoaderFunc):
2471         (WebCore::setXSLTLoadCallBack):
2472         (WebCore::writeToString):
2473         (WebCore::saveResultToString):
2474         (WebCore::transformTextStringToXHTMLDocumentString):
2475         (WebCore::xsltParamArrayFromParameterMap):
2476         (WebCore::freeXsltParamArray):
2477         (WebCore::XSLTProcessor::createDocumentFromSource):
2478         (WebCore::createFragmentFromSource):
2479         (WebCore::xsltStylesheetPointer):
2480         (WebCore::xmlDocPtrFromNode):
2481         (WebCore::resultMIMEType):
2482         (WebCore::XSLTProcessor::transformToString):
2483         (WebCore::XSLTProcessor::transformToDocument):
2484         (WebCore::XSLTProcessor::transformToFragment):
2485         * xml/XSLTProcessor.h:
2486         (WebCore::XSLTProcessor::setXSLStylesheet):
2487         (WebCore::XSLTProcessor::importStylesheet):
2488         (WebCore::XSLTProcessor::xslStylesheet):
2489
2490 2007-10-29  Dan Bernstein  <mitz@apple.com>
2491
2492         Reviewed by John Sullivan.
2493
2494         - fix <rdar://problem/5424455> REGRESSION (r21168-r21193, Tiger only): Safari scrollbar is clipped at top when loading particular RSS page
2495
2496         Test: fast/repaint/layout-state-only-positioned.html
2497
2498         * rendering/RenderBlock.cpp:
2499         (WebCore::RenderBlock::layoutOnlyPositionedObjects): Pop layout state
2500         before updating scroll info, which possibly repaints us.
2501
2502 2007-10-29  David Kilzer  <ddkilzer@webkit.org>
2503
2504         REGRESSION (r17701): Favicons should be viewable as image documents
2505         <http://bugs.webkit.org/show_bug.cgi?id=15640>
2506
2507         Reviewed by Darin.
2508
2509         On Tiger and Leopard, the image/x-icon MIME type is not returned from
2510         CGImageSourceCopyTypeIdentifiers(), so opening a URL to a favicon caused
2511         the icon to be downloaded instead being displayed in an image document.
2512
2513         Test: fast/images/favicon-as-image.html
2514
2515         * platform/MIMETypeRegistry.cpp:
2516         (WebCore::initialiseSupportedImageMIMETypes): Manually add image/x-icon to
2517         supportedImageMIMETypes and supportedImageResourceMIMETypes.  Also fixed
2518         comment about the image/bmp MIME type since it applies to both Tiger and
2519         Leopard.
2520
2521 2007-10-29  Maciej Stachowiak  <mjs@apple.com>
2522
2523         Reviewed by Mark.
2524
2525         - fixed assertion failures detected by the new assertions
2526
2527         * bindings/objc/DOMRGBColor.mm:
2528         (-[DOMRGBColor dealloc]): Clear _internal before calling [super dealloc]
2529         because it's not a pointer and shouldn't be in the normal wrapper cache.
2530         * dom/Document.cpp:
2531         (WebCore::Document::addImageMap): Don't access hashmap if name is null.
2532         (WebCore::Document::removeImageMap): ditto
2533         * dom/StyledElement.cpp:
2534         (WebCore::StyledElement::parseMappedAttribute): Don't claim we have a class
2535         when the class attribute is empty.
2536         * platform/TextCodecICU.cpp:
2537         (WebCore::gbkCallbackEscape): Don't look up 0 code points.
2538
2539 2007-10-28  Alexey Proskuryakov  <ap@webkit.org>
2540
2541         Reviewed by Darin.
2542
2543         http://bugs.webkit.org/show_bug.cgi?id=10734
2544         Made HTMLOptionElement.index read-only, matching IE and DOM standard.
2545
2546         Test: fast/dom/HTMLOptionElement/set-option-index-text.html
2547
2548         * html/HTMLOptionElement.idl: Marked index as readonly.
2549
2550         * html/HTMLOptionElement.cpp:
2551         * html/HTMLOptionElement.h:
2552         Removed setIndex().
2553
2554 2007-10-28  Eric Seidel  <eric@webkit.org>
2555
2556         Reviewed by darin.
2557
2558         Fix leaks on TOT and prevent Path code from logging to console so frequently
2559
2560         * platform/graphics/svg/SVGResourceFilter.h:
2561         (WebCore::SVGResourceFilterPlatformData::SVGResourceFilterPlatformData):
2562         (WebCore::SVGResourceFilterPlatformData::~SVGResourceFilterPlatformData):
2563         * platform/graphics/svg/cg/CgSupport.cpp:
2564         (WebCore::strokeBoundingBox):
2565         * platform/graphics/svg/cg/SVGResourceFilterCg.mm:
2566         * platform/graphics/svg/mac/SVGResourceFilterPlatformDataMac.h:
2567
2568 2007-10-28  Mark Rowe  <mrowe@apple.com>
2569
2570         Reviewed by Maciej.
2571
2572         Replace uses of isNaN and isInf with isnan and isinf.
2573
2574         * bindings/js/JSHTMLOptionsCollectionCustom.cpp:
2575         (WebCore::JSHTMLOptionsCollection::setLength):
2576
2577 2007-10-28  Maciej Stachowiak  <mjs@apple.com>
2578
2579         Reviewed by Mark.
2580
2581         - fixed REGRESSION(r27176): Reproducible crash while trying to order dinner makes bdash sad
2582         http://bugs.webkit.org/show_bug.cgi?id=15731
2583
2584         * bindings/js/kjs_window.cpp:
2585         (KJS::Window::installTimeout): Avoid putting in or accessing empty or deleted keys.
2586         (KJS::Window::clearTimeout): ditto
2587         * manual-tests/bad-clearTimeout-crash.html: Added. Automated test not possible.
2588
2589 2007-10-28  Kevin Ollivier  <kevino@theolliviers.com>
2590
2591         wx port defines for graphics and network layers.
2592
2593         Reviewed by Darin Adler.
2594
2595         * platform/graphics/AffineTransform.h:
2596         * platform/graphics/BitmapImage.h:
2597         * platform/graphics/Color.h:
2598         * platform/graphics/FloatRect.h:
2599         * platform/graphics/GraphicsContext.h:
2600         * platform/graphics/ImageSource.h:
2601         * platform/graphics/IntPoint.h:
2602         * platform/graphics/IntRect.h:
2603         * platform/graphics/Path.h:
2604         * platform/graphics/Pen.h:
2605         * platform/network/ResourceHandle.h:
2606
2607
2608 2007-10-28  Alp Toker  <alp@atoker.com>
2609
2610         Reviewed by Anders Carlsson.
2611
2612         http://bugs.webkit.org/show_bug.cgi?id=14124
2613         [CURL] Support data URLs
2614
2615         Add data URL support (both Base64 and percent-encoded formats).
2616
2617         Inspired by code from the Qt port.
2618
2619         * platform/Base64.cpp:
2620         (WebCore::base64Decode):
2621         * platform/Base64.h:
2622         * platform/network/curl/ResourceHandleManager.cpp:
2623         (WebCore::ResourceHandleManager::startScheduledJobs):
2624         (WebCore::parseDataUrl):
2625
2626 2007-10-28  Alp Toker  <alp@atoker.com>
2627
2628         Reviewed by Adam Roben.
2629
2630         http://bugs.webkit.org/show_bug.cgi?id=15701
2631         The curl http backend does not deal properly with redirects
2632
2633         Implement http redirect support.
2634
2635         * platform/network/curl/ResourceHandleManager.cpp:
2636         (WebCore::headerCallback):
2637
2638 2007-10-28  Kevin Ollivier  <kevino@theolliviers.com>
2639
2640         Define types and accessors needed for wx implementation
2641         of platform classes. Also, turn off DisallowCTypes.h because
2642         disallowed methods appear in wx headers.
2643
2644         Reviewed by Adam Roben.
2645
2646         * config.h:
2647         * platform/ContextMenuItem.h:
2648         * platform/Cursor.h:
2649         * platform/DeprecatedString.h:
2650         * platform/DragData.h:
2651         * platform/DragImage.h:
2652         * platform/FontData.h:
2653         (WebCore::FontData::getWxFont):
2654         * platform/GlyphBuffer.h:
2655         (WebCore::GlyphBuffer::glyphAt):
2656         (WebCore::GlyphBuffer::advanceAt):
2657         (WebCore::GlyphBuffer::add):
2658         * platform/PlatformKeyboardEvent.h:
2659         (WebCore::PlatformKeyboardEvent::isWxCharEvent):
2660         * platform/PlatformMenuDescription.h:
2661         * platform/PlatformMouseEvent.h:
2662         * platform/PlatformString.h:
2663         * platform/PlatformWheelEvent.h:
2664         * platform/ScrollView.h:
2665         * platform/Widget.h:
2666         * platform/image-decoders/bmp/BMPImageDecoder.cpp:
2667         * platform/image-decoders/gif/GIFImageDecoder.cpp:
2668         * platform/image-decoders/gif/GIFImageReader.cpp:
2669         * platform/image-decoders/ico/ICOImageDecoder.cpp:
2670         * platform/image-decoders/jpeg/JPEGImageDecoder.cpp:
2671         * platform/image-decoders/png/PNGImageDecoder.cpp:
2672         * platform/image-decoders/xbm/XBMImageDecoder.cpp:
2673
2674 2007-10-28  Mark Rowe  <mrowe@apple.com>
2675
2676         We don't include "config.h" in headers.
2677
2678         * dom/XMLTokenizer.h:
2679         * platform/graphics/svg/SVGResourceFilter.h:
2680         * platform/image-decoders/ImageDecoder.h:
2681         * platform/wx/FontPlatformData.h:
2682
2683 2007-10-28  Darin Adler  <darin@apple.com>
2684
2685         * platform/graphics/svg/mac/SVGResourceFilterPlatformDataMac.h:
2686         We don't include "config.h" in headers. Hope this desn't break
2687         the non-SVG build again.
2688
2689 2007-10-28  Eric Seidel  <eric@webkit.org>
2690
2691         Build fix for non-SVG build, no review.
2692
2693         * platform/graphics/svg/mac/SVGResourceFilterPlatformDataMac.h:
2694         * platform/graphics/svg/mac/SVGResourceFilterPlatformDataMac.mm:
2695
2696 2007-10-28  Eric Seidel  <eric@webkit.org>
2697
2698         Reviewed by Oliver.
2699
2700         Push SVGResourceFilter platform specific data down into m_platformData
2701         in preparation for implementing a non-mac filter solution.
2702         
2703         Also update a very old email address in copyright headers
2704
2705         * WebCore.xcodeproj/project.pbxproj:
2706         * platform/graphics/FloatPoint3D.cpp:
2707         (WebCore::FloatPoint3D::FloatPoint3D):
2708         * platform/graphics/FloatPoint3D.h:
2709         * platform/graphics/svg/SVGResourceFilter.cpp:
2710         (WebCore::SVGResourceFilter::SVGResourceFilter):
2711         * platform/graphics/svg/SVGResourceFilter.h:
2712         (WebCore::SVGResourceFilter::platformData):
2713         (WebCore::SVGResourceFilter::effects):
2714         * platform/graphics/svg/cg/SVGResourceFilterCg.mm:
2715         (WebCore::SVGResourceFilter::createPlatformData):l
2716         (WebCore::SVGResourceFilter::prepareFilter):
2717         (WebCore::SVGResourceFilter::applyFilter):
2718         * platform/graphics/svg/filters/SVGDistantLightSource.h:
2719         * platform/graphics/svg/filters/SVGFEBlend.cpp:
2720         * platform/graphics/svg/filters/SVGFEBlend.h:
2721         * platform/graphics/svg/filters/SVGFEColorMatrix.cpp:
2722         * platform/graphics/svg/filters/SVGFEColorMatrix.h:
2723         * platform/graphics/svg/filters/SVGFEComponentTransfer.cpp:
2724         * platform/graphics/svg/filters/SVGFEComponentTransfer.h:
2725         * platform/graphics/svg/filters/SVGFEComposite.cpp:
2726         * platform/graphics/svg/filters/SVGFEComposite.h:
2727         * platform/graphics/svg/filters/SVGFEConvolveMatrix.cpp:
2728         * platform/graphics/svg/filters/SVGFEConvolveMatrix.h:
2729         * platform/graphics/svg/filters/SVGFEDiffuseLighting.cpp:
2730         * platform/graphics/svg/filters/SVGFEDiffuseLighting.h:
2731         * platform/graphics/svg/filters/SVGFEDisplacementMap.cpp:
2732         * platform/graphics/svg/filters/SVGFEDisplacementMap.h:
2733         * platform/graphics/svg/filters/SVGFEFlood.cpp:
2734         * platform/graphics/svg/filters/SVGFEFlood.h:
2735         * platform/graphics/svg/filters/SVGFEGaussianBlur.cpp:
2736         * platform/graphics/svg/filters/SVGFEGaussianBlur.h:
2737         * platform/graphics/svg/filters/SVGFEImage.cpp:
2738         * platform/graphics/svg/filters/SVGFEImage.h:
2739         * platform/graphics/svg/filters/SVGFEMerge.cpp:
2740         * platform/graphics/svg/filters/SVGFEMerge.h:
2741         * platform/graphics/svg/filters/SVGFEMorphology.cpp:
2742         * platform/graphics/svg/filters/SVGFEMorphology.h:
2743         * platform/graphics/svg/filters/SVGFEOffset.cpp:
2744         * platform/graphics/svg/filters/SVGFEOffset.h:
2745         * platform/graphics/svg/filters/SVGFESpecularLighting.cpp:
2746         * platform/graphics/svg/filters/SVGFESpecularLighting.h:
2747         * platform/graphics/svg/filters/SVGFETile.h:
2748         * platform/graphics/svg/filters/SVGFETurbulence.cpp:
2749         * platform/graphics/svg/filters/SVGFETurbulence.h:
2750         * platform/graphics/svg/filters/SVGFilterEffect.cpp:
2751         * platform/graphics/svg/filters/SVGFilterEffect.h:
2752         * platform/graphics/svg/filters/SVGLightSource.cpp:
2753         * platform/graphics/svg/filters/SVGLightSource.h:
2754         * platform/graphics/svg/filters/SVGPointLightSource.h:
2755         * platform/graphics/svg/filters/SVGSpotLightSource.h:
2756         * platform/graphics/svg/filters/cg/SVGFEBlendCg.mm:
2757         (WebCore::SVGFEBlend::getCIFilter):
2758         * platform/graphics/svg/filters/cg/SVGFEColorMatrixCg.mm:
2759         (WebCore::SVGFEColorMatrix::getCIFilter):
2760         * platform/graphics/svg/filters/cg/SVGFEComponentTransferCg.mm:
2761         (WebCore::SVGFEComponentTransfer::getCIFilter):
2762         * platform/graphics/svg/filters/cg/SVGFECompositeCg.mm:
2763         (WebCore::SVGFEComposite::getCIFilter):
2764         * platform/graphics/svg/filters/cg/SVGFEDiffuseLightingCg.mm:
2765         (WebCore::SVGFEDiffuseLighting::getCIFilter):
2766         * platform/graphics/svg/filters/cg/SVGFEDisplacementMapCg.mm:
2767         (WebCore::SVGFEDisplacementMap::getCIFilter):
2768         * platform/graphics/svg/filters/cg/SVGFEFloodCg.mm:
2769         (WebCore::SVGFEFlood::getCIFilter):
2770         * platform/graphics/svg/filters/cg/SVGFEHelpersCg.h:
2771         * platform/graphics/svg/filters/cg/SVGFEImageCg.mm:
2772         (WebCore::SVGFEImage::getCIFilter):
2773         * platform/graphics/svg/filters/cg/SVGFEMergeCg.mm:
2774         (WebCore::SVGFEMerge::getCIFilter):
2775         * platform/graphics/svg/filters/cg/SVGFESpecularLightingCg.mm:
2776         (WebCore::SVGFESpecularLighting::getCIFilter):
2777         * platform/graphics/svg/mac: Added.
2778         * platform/graphics/svg/mac/SVGResourceFilterPlatformDataMac.h: Added.
2779         * platform/graphics/svg/mac/SVGResourceFilterPlatformDataMac.mm: Added.
2780         (WebCore::SVGResourceFilterPlatformDataMac::SVGResourceFilterPlatformDataMac):
2781         (WebCore::SVGResourceFilterPlatformDataMac::~SVGResourceFilterPlatformDataMac):
2782         (WebCore::SVGResourceFilterPlatformDataMac::getCIFilterStack):
2783         (WebCore::alphaImageForImage):
2784         (WebCore::SVGResourceFilterPlatformDataMac::imageForName):
2785         (WebCore::SVGResourceFilterPlatformDataMac::setImageForName):
2786         (WebCore::SVGResourceFilterPlatformDataMac::setOutputImage):
2787         (WebCore::SVGResourceFilterPlatformDataMac::inputImage):
2788
2789 2007-10-28  Alexey Proskuryakov  <ap@webkit.org>
2790
2791         Reviewed by Adam Roben.
2792
2793         http://bugs.webkit.org/show_bug.cgi?id=15217
2794         Plugin complains that xpcom_core.dll missing
2795
2796         * plugins/win/PluginDatabaseWin.cpp:
2797         (WebCore::PluginDatabaseWin::isPluginBlacklisted): Blacklist npmozax.dll.
2798
2799 2007-10-28  Timothy Hatcher  <timothy@apple.com>
2800
2801         Reviewed by Adam.
2802
2803         Pass the Document's domain to InspectorController:didOpenDatabase. This matches
2804         what the Inspector shows for other resources.
2805
2806         * storage/Database.cpp:
2807         (WebCore::Database::openDatabase):
2808
2809         * dom/Document.h: Remove KURL.h, no longer needed.
2810
2811 2007-10-28  Timothy Hatcher  <timothy@apple.com>
2812
2813         Reviewed by Adam.
2814
2815         Bug 15728: Selected Resource background image gradient has banding
2816         http://bugs.webkit.org/show_bug.cgi?id=15728
2817
2818         - Reduced images to 1px wide that are tiled horizontally in CSS.
2819         - Corrected the -webkit-background-size usage to specify auto for the width.
2820
2821         * page/inspector/Images/attachedShadow.png:
2822         * page/inspector/Images/bottomShadow.png:
2823         * page/inspector/Images/darkShadow.png:
2824         * page/inspector/Images/gradient.png:
2825         * page/inspector/Images/gradientHighlight.png:
2826         * page/inspector/Images/gradientHighlightBottom.png:
2827         * page/inspector/Images/sidebarSelection.png:
2828         * page/inspector/Images/sidebarSelectionBlurred.png:
2829         * page/inspector/Images/sidebarSelectionBlurredTall.png:
2830         * page/inspector/Images/sidebarSelectionGray.png:
2831         * page/inspector/Images/sidebarSelectionGrayTall.png:
2832         * page/inspector/Images/sidebarSelectionTall.png:
2833         * page/inspector/inspector.css:
2834
2835 2007-10-27  Timothy Hatcher  <timothy@apple.com>
2836
2837         Reviewed by Adam.
2838
2839         Bug 15727: Resizing the resource sidebar doesn't scale the font preview or network timeline
2840         http://bugs.webkit.org/show_bug.cgi?id=15727
2841
2842         Add one window resize listener and call the new resize function on the currentPanel.
2843         Also call the currentPanel's resize function when resizing the sidebar.
2844
2845         * page/inspector/DocumentPanel.js: Implement resize and call updateTreeSelection() when
2846           the panel is shown and when resizing the DOM sidebar.
2847         * page/inspector/FontPanel.js: Implement resize.
2848         * page/inspector/NetworkPanel.js: Ditto.
2849         * page/inspector/inspector.js: Add a window resize listener.
2850
2851 2007-10-27  Maciej Stachowiak  <mjs@apple.com>
2852
2853         Reviewed by Oliver.
2854         
2855         - update for HashTable changes
2856
2857         * bindings/js/JSSVGPODTypeWrapper.h:
2858         * dom/Document.h:
2859         * dom/QualifiedName.cpp:
2860         * dom/StyledElement.cpp:
2861         * ksvg2/svg/SVGAnimatedTemplate.h:
2862         * platform/FontCache.cpp:
2863         * platform/StringHash.h:
2864         (WTF::):
2865         * platform/TextEncodingRegistry.cpp:
2866         * platform/graphics/IntSizeHash.h:
2867         (WTF::):
2868         * plugins/win/PluginPackageWin.h:
2869
2870 2007-10-28  Alp Toker  <alp@atoker.com>
2871
2872         Reviewed by Adam Roben.
2873
2874         http://bugs.webkit.org/show_bug.cgi?id=15646
2875         [GTK] caretBlinkFrequency is hard-coded in Frame.cpp
2876
2877         Abstract caretBlinkFrequency to RenderTheme.
2878
2879         * page/Frame.cpp:
2880         (WebCore::Frame::selectionLayoutChanged):
2881         * platform/gtk/RenderThemeGtk.cpp:
2882         (WebCore::RenderThemeGtk::caretShouldBlink):
2883         (WebCore::RenderThemeGtk::caretBlinkFrequency):
2884         * platform/gtk/RenderThemeGtk.h:
2885         * rendering/RenderTheme.h:
2886
2887 2007-10-27  Timothy Hatcher  <timothy@apple.com>
2888
2889         Reviewed by Adam.
2890
2891         Don't print the line number in the Inspector Console if it is Zero.
2892
2893         * page/inspector/ConsolePanel.js:
2894
2895 2007-10-27  Sam Weinig  <sam@webkit.org>
2896
2897         Reviewed by Adam Roben.
2898
2899         Fix http://bugs.webkit.org/show_bug.cgi?id=14953
2900         Implement window.console in WebCore
2901
2902         - Adds a window.console object that has 4 methods (log, info, warn, and error)
2903           that send messages to the Chrome.  This moves functionality that was in the
2904           app down into WebCore.
2905
2906         * DerivedSources.make:
2907         * WebCore.pro:
2908         * WebCore.vcproj/WebCore.vcproj:
2909         * WebCore.xcodeproj/project.pbxproj:
2910         * bindings/scripts/CodeGeneratorJS.pm: Add extended attribute
2911         to mark attributes as [Replacable] which indicates they can 
2912         overridden when set.
2913         * page/Chrome.cpp:
2914         (WebCore::Chrome::addMessageToConsole): Allow all messages to go
2915         up to the ChromeClient.
2916         * page/Console.cpp: Added.
2917         (WebCore::Console::Console):
2918         (WebCore::Console::disconnectFrame):
2919         (WebCore::Console::error):
2920         (WebCore::Console::info):
2921         (WebCore::Console::log):
2922         (WebCore::Console::warn):
2923         * page/Console.h: Added.
2924         * page/Console.idl: Added.
2925         * page/DOMWindow.cpp:
2926         (WebCore::DOMWindow::clear):
2927         (WebCore::DOMWindow::console):
2928         * page/DOMWindow.h:
2929         * page/DOMWindow.idl:
2930
2931 2007-10-27  Eric Seidel  <eric@webkit.org>
2932
2933         Reviewed by aroben.
2934         
2935         Remove legacy createFilterEffect function (causing extra filter tests to fail on windows)
2936
2937         No functional changes, thus no tests.
2938
2939         * ksvg2/svg/SVGFEBlendElement.cpp:
2940         (WebCore::SVGFEBlendElement::filterEffect):
2941         * ksvg2/svg/SVGFEColorMatrixElement.cpp:
2942         (WebCore::SVGFEColorMatrixElement::filterEffect):
2943         * ksvg2/svg/SVGFEComponentTransferElement.cpp:
2944         (WebCore::SVGFEComponentTransferElement::filterEffect):
2945         * ksvg2/svg/SVGFECompositeElement.cpp:
2946         (WebCore::SVGFECompositeElement::filterEffect):
2947         * ksvg2/svg/SVGFEDiffuseLightingElement.cpp:
2948         (WebCore::SVGFEDiffuseLightingElement::filterEffect):
2949         * ksvg2/svg/SVGFEDisplacementMapElement.cpp:
2950         (WebCore::SVGFEDisplacementMapElement::filterEffect):
2951         * ksvg2/svg/SVGFEFloodElement.cpp:
2952         (WebCore::SVGFEFloodElement::filterEffect):
2953         * ksvg2/svg/SVGFEGaussianBlurElement.cpp:
2954         (WebCore::SVGFEGaussianBlurElement::filterEffect):
2955         * ksvg2/svg/SVGFEImageElement.cpp:
2956         (WebCore::SVGFEImageElement::filterEffect):
2957         * ksvg2/svg/SVGFEMergeElement.cpp:
2958         (WebCore::SVGFEMergeElement::filterEffect):
2959         * ksvg2/svg/SVGFEOffsetElement.cpp:
2960         (WebCore::SVGFEOffsetElement::filterEffect):
2961         * ksvg2/svg/SVGFESpecularLightingElement.cpp:
2962         (WebCore::SVGFESpecularLightingElement::filterEffect):
2963         * ksvg2/svg/SVGFETileElement.cpp:
2964         (WebCore::SVGFETileElement::filterEffect):
2965         * ksvg2/svg/SVGFETurbulenceElement.cpp:
2966         (WebCore::SVGFETurbulenceElement::filterEffect):
2967         * platform/graphics/svg/SVGResourceFilter.h:
2968         * platform/graphics/svg/cg/SVGResourceFilterCg.cpp:
2969         * platform/graphics/svg/cg/SVGResourceFilterCg.mm:
2970         * platform/graphics/svg/qt/SVGResourceFilterQt.cpp:
2971
2972 2007-10-27  Dan Bernstein  <mitz@apple.com>
2973
2974         Reviewed by Darin Adler.
2975
2976         - fix a crash when opening Zenoss server history view
2977           <rdar://problem/5530657>
2978
2979         Test: fast/table/colgroup-relative.html
2980
2981         * rendering/LayoutState.cpp:
2982         (WebCore::LayoutState::LayoutState): Added a hasLayer() check before
2983         accessing layer().
2984
2985 2007-10-27  Julien  <julien.chaffraix@gmail.com>
2986
2987         Reviewed by Alexey.
2988
2989         http://bugs.webkit.org/show_bug.cgi?id=13141
2990         XMLHttpRequest should set readyState to 0 after abort()
2991         
2992         Test: http/tests/xmlhttprequest/xmlhttprequest-abort-readyState.html
2993
2994         * xml/XMLHttpRequest.cpp:
2995         (WebCore::XMLHttpRequest::open):
2996         (WebCore::XMLHttpRequest::abort):
2997
2998 2007-10-27  Dan Bernstein  <mitz@apple.com>
2999
3000         Reviewed by Dave Hyatt.
3001
3002         - fix rotated border images by using a temporary subimage containing
3003           only the part we want to tile
3004
3005         Test: fast/borders/border-image-rotate-transform.html
3006
3007         * platform/graphics/cg/ImageCG.cpp:
3008         (WebCore::Image::drawPatternCallback):
3009         (WebCore::Image::drawPattern):
3010
3011 2007-10-27  Jan Michael Alonzo  <jmalonzo@unpluggable.com>
3012
3013         Reviewed by Alp.
3014
3015         http://bugs.webkit.org/show_bug.cgi?id=15722
3016         [GTK] Refactor gtk/RenderThemeGtk and implement a few more methods
3017
3018         Refactor/enhance GTK RenderTheme
3019
3020         * platform/gtk/RenderThemeGtk.cpp:
3021         (WebCore::RenderThemeGtk::supportsFocus): added TextArea, Menulist, Radio, and Checkbox Appearances
3022         (WebCore::RenderThemeGtk::supportsFocusRing): call supportsFocus() to check if focus on appearance is supported
3023         (WebCore::RenderThemeGtk::controlSupportsTints): copied from Qt and Safari ports
3024         (WebCore::RenderThemeGtk::baselinePosition): copied from Qt and Safari ports
3025         (WebCore::RenderThemeGtk::paintCheckbox): moved painting in paintButton
3026         (WebCore::RenderThemeGtk::paintRadio): moved painting in paintButton
3027         (WebCore::RenderThemeGtk::paintButton): paint the different buttons here, checking for the right appearance before doing so
3028         (WebCore::RenderThemeGtk::paintMenuList): use 0 instead of NULLs
3029         (WebCore::RenderThemeGtk::adjustTextFieldStyle):
3030         (WebCore::RenderThemeGtk::getThemeData):
3031         * platform/gtk/RenderThemeGtk.h:
3032         (WebCore::RenderThemeGtk::supportsControlTints):
3033
3034 2007-10-27  Alexey Proskuryakov  <ap@webkit.org>
3035
3036         Reviewed by Darin.
3037
3038         http://bugs.webkit.org/show_bug.cgi?id=15555
3039         XMLHttpRequest does not support charset "x-user-defined", which can
3040         facilitate loading of binary data
3041
3042         Test: http/tests/xmlhttprequest/binary-x-user-defined.html
3043
3044         * WebCore.pro:
3045         * WebCore.vcproj/WebCore.vcproj:
3046         * WebCore.xcodeproj/project.pbxproj:
3047         * platform/TextCodecUserDefined.cpp: Added.
3048         (WebCore::TextCodecUserDefined::registerEncodingNames):
3049         (WebCore::newStreamingTextDecoderUserDefined):
3050         (WebCore::TextCodecUserDefined::registerCodecs):
3051         (WebCore::TextCodecUserDefined::decode):
3052         (WebCore::encodeComplexUserDefined):
3053         (WebCore::TextCodecUserDefined::encode):
3054         * platform/TextCodecUserDefined.h: Added.
3055         * platform/TextEncodingRegistry.cpp:
3056         (WebCore::buildBaseTextCodecMaps):
3057
3058 2007-10-27  Alexey Proskuryakov  <ap@webkit.org>
3059
3060         Reviewed by Darin.
3061
3062         http://bugs.webkit.org/show_bug.cgi?id=15467
3063         Setting innerHTML to blank string in application/xhtml+xml mode
3064         throws DOM Exception 7
3065
3066         Test: fast/dom/blank-innerHTML.xhtml
3067
3068         * dom/XMLTokenizer.cpp:
3069         (WebCore::parseXMLDocumentFragment): Bail out early if the input string is empty.
3070
3071 2007-10-26  Sam Weinig  <sam@webkit.org>
3072
3073         Enable dragging the left sidebar using the separator.
3074
3075         Reviewed by Anders (unless Mitz says otherwise).
3076
3077         * page/inspector/DocumentPanel.js:
3078         * page/inspector/inspector.css:
3079         * page/inspector/inspector.html:
3080         * page/inspector/inspector.js:
3081
3082 2007-10-26  Sam Weinig  <sam@webkit.org>
3083
3084         Fix an off by one error when resizing the Inspector find window.
3085
3086         Reviewed by Hyatt.
3087
3088         * page/inspector/inspector.js:
3089
3090 2007-10-26  Jon Honeycutt  <jhoneycutt@apple.com>
3091
3092         Reviewed by Adam.
3093
3094         Fix fallout from r26072, which leads to all plugin streams for local
3095         resources being cancelled
3096
3097         * loader/win/NetscapePlugInStreamLoaderWin.cpp:
3098         (WebCore::NetscapePlugInStreamLoader::didReceiveResponse): Ensure this
3099         is an HTTP response before checking the HTTP response code
3100
3101 2007-10-26  David Hyatt  <hyatt@apple.com>
3102
3103         Fix for http://bugs.webkit.org/show_bug.cgi?id=15719, transformed box doesn't repaint properly
3104         when only translation changes.
3105
3106         Move the updating of the transform to in between the old repaint and the new repaint.
3107
3108         Reviewed by mitz
3109
3110         fast/repaint/transform-translate.html
3111
3112         * rendering/RenderLayer.cpp:
3113         (WebCore::RenderLayer::updateLayerPositions):
3114
3115 2007-10-26  Jon Honeycutt  <jhoneycutt@apple.com>
3116
3117         Reviewed by Darin.
3118
3119         <rdar://5557379> Crash in Silverlight when opening microsoft.com
3120
3121         The crash is within Silverlight, and the latest version of the plugin
3122         does not exhibit this crash, so just avoid loading this version of the
3123         plugin.
3124
3125         * plugins/win/PluginDatabaseWin.cpp: Added isPluginBlacklisted() and
3126         constants silverlightPluginMinRequiredVersionMSDWORD and
3127         silverlightPluginMinRequiredVersionLSDWORD. Their values are taken from 
3128         the version info of Silverlight 1.0.20926.0, which is a version known
3129         not to exhibit this crash
3130         (WebCore::PluginDatabaseWin::isPluginBlacklisted): Determine whether
3131         this plugin is blacklisted
3132         * plugins/win/PluginDatabaseWin.h:
3133         * plugins/win/PluginPackageWin.cpp:
3134         (WebCore::PluginPackageWin::PluginPackageWin): Initialize m_fileVersion*
3135         (WebCore::PluginPackageWin::getFileVersion):
3136         (WebCore::PluginPackageWin::storeFileVersion): Read version info for
3137         the plugin, and store the file version
3138         (WebCore::PluginPackageWin::fetchInfo): After determining the name,
3139         description, and file version, determine whether this plug-in is
3140         blacklisted. If so, return false so this plug-in isn't loaded
3141         * plugins/win/PluginPackageWin.h:
3142
3143 2007-10-26  Sam Weinig  <sam@webkit.org>
3144
3145         Reviewed by Adele Peterson.
3146
3147         Fix for <rdar://problem/5421754>
3148         m_frameName member variable in HTMLPlugInElement unnecessary
3149
3150         - Refactor the willRemove() method down into HTMLFrameOwnerElement now that
3151           we no longer need to use the m_frameName variable.
3152
3153         * html/HTMLFrameElementBase.cpp:
3154         * html/HTMLFrameElementBase.h:
3155         * html/HTMLFrameOwnerElement.cpp:
3156         (WebCore::HTMLFrameOwnerElement::willRemove):
3157         * html/HTMLFrameOwnerElement.h:
3158         * html/HTMLPlugInElement.cpp:
3159         * html/HTMLPlugInElement.h:
3160         * loader/FrameLoader.cpp:
3161         (WebCore::FrameLoader::requestObject):
3162
3163 2007-10-26  Adele Peterson  <adele@apple.com>
3164
3165         Export _wkDrawCapsLockIndicator.
3166
3167         * WebCore.base.exp:
3168
3169 2007-10-26  Adele Peterson  <adele@apple.com>
3170
3171         Reviewed by Oliver.
3172
3173         Adding WebKitSystemInterface support for the caps lock indicator
3174
3175         * platform/mac/WebCoreSystemInterface.h:
3176         * platform/mac/WebCoreSystemInterface.mm:
3177
3178 2007-10-26  Tristan O'Tierney  <tristan@apple.com>
3179
3180         Reviewed by Darin Adler.
3181
3182         <rdar://problem/5555053> REGRESSION:9A581: Window disappears when opening http://research.microsoft.com/users/darkok/
3183         The problem was caused by checkin r24654. This change moved explicit bounds checking into adjustWindowRect
3184         but failed to account for bounds checking (instead replaced with bounds clipping).  This caused issues
3185         when NaN was used. This patch goes one step further and does NaN checking to prevent the possibility of
3186         setting window bounds to NaN before an update occurs.
3187
3188         Test: fast/dom/Window/window-resize-nan.html
3189         
3190         * bindings/js/kjs_window.cpp:
3191         (KJS::adjustWindowRect):
3192         Added a new parameter, pendingChanges, which takes pending changes to the window
3193         rect, and if they are valid (not NaN) sets them on window.
3194         
3195         (KJS::WindowFunc::callAsFunction):
3196         Adjusted uses of adjustWindowRect to take new update parameter.
3197
3198 2007-10-26  Sam Weinig  <sam@webkit.org>
3199
3200         Reviewed by Tim Hatcher.
3201
3202         Fix for http://bugs.webkit.org/show_bug.cgi?id=15175
3203         Cannot copy text of errors from Web Inspector from Console view
3204
3205         * page/inspector/inspector.css: add -webkit-user-select: text for console messages.
3206
3207 2007-10-26  Sam Weinig  <sam@webkit.org>
3208
3209         Reviewed by Tim Hatcher.
3210
3211         Fix for http://bugs.webkit.org/show_bug.cgi?id=15446
3212         Web Inspector find window is not resizable
3213
3214         - Adds ability to resize the find window.
3215         - Fixes bug that messed up the find window when resizing the left sidebar. 
3216
3217         * page/inspector/inspector.css:
3218         * page/inspector/inspector.html:
3219         * page/inspector/inspector.js:
3220
3221 2007-10-26  Ada Chan  <adachan@apple.com>
3222
3223         Update m_current index after we've removed an item:
3224         - if item removed is before m_current, decrement m_current
3225         - if the current item is removed, make sure m_current is within bounds.
3226
3227         Reviewed by Darin.
3228
3229         * history/BackForwardList.cpp:
3230         (WebCore::BackForwardList::removeItem):
3231
3232 2007-10-26  Mark Rowe  <mrowe@apple.com>
3233
3234         Debug build fix.
3235
3236         * bindings/js/kjs_proxy.cpp:
3237         (WebCore::KJSProxy::~KJSProxy):
3238
3239 2007-10-26  Maciej Stachowiak  <mjs@apple.com>
3240
3241         No review, build fix.
3242
3243         * bindings/objc/WebScriptObject.mm:
3244         (+[WebScriptObject throwException:]):
3245         (-[WebScriptObject setException:]):
3246
3247 2007-10-26  Maciej Stachowiak  <mjs@apple.com>
3248
3249         Rubber Stamped by Mark.
3250
3251         - fix build
3252
3253         * bridge/mac/WebCoreScriptDebugger.mm:
3254         (-[WebCoreScriptCallFrame scopeChain]):
3255         (-[WebCoreScriptCallFrame functionName]):
3256         (-[WebCoreScriptCallFrame evaluateWebScript:]):
3257
3258 2007-10-26  Maciej Stachowiak  <mjs@apple.com>
3259
3260         Reviewed by Oliver.
3261
3262         - update for JavaScriptCore header changes
3263
3264         * bindings/objc/WebScriptObject.mm:
3265         * bridge/mac/WebCoreScriptDebugger.mm:
3266
3267 2007-10-26  Alp Toker  <alp@atoker.com>
3268
3269         Reviewed by Mark Rowe.
3270
3271         http://bugs.webkit.org/show_bug.cgi?id=15693
3272         [GTK] Paging does not work when widget is added to a GtkScrolledWindow
3273
3274         Eliminate MagicGtkScrollConstant in favour of the same calculations as
3275         GtkTextView for step and page increments. This also makes paging work,
3276         as the page increment was previously always 0.
3277
3278         * platform/gtk/ScrollViewGtk.cpp:
3279         (WebCore::ScrollView::updateScrollbars):
3280
3281 2007-10-25  Dan Bernstein  <mitz@apple.com>
3282
3283         Reviewed by Dave Hyatt and Sam Weinig.
3284
3285         Build fix
3286
3287         * platform/graphics/cg/ImageCG.cpp:
3288         (WebCore::Image::drawPattern):
3289
3290 2007-10-23  Jan Michael Alonzo  <jmalonzo@unpluggable.com>
3291
3292         Reviewed by Alp.
3293
3294         http://bugs.webkit.org/show_bug.cgi?id=15656
3295         [GTK] Implement WebCore::Widget::isEnabled/setEnabled
3296
3297         * platform/gtk/WidgetGtk.cpp:
3298         (WebCore::Widget::isEnabled):
3299         (WebCore::Widget::setEnabled): Implemented.
3300
3301 2007-10-25  David Hyatt  <hyatt@apple.com>
3302
3303         Fix for bug 15672, background images don't tile properly inside transforms.  This patch fixes background
3304         tiling to work in the presence of transforms and fixes bugs in both SVG and CSS transforms.
3305
3306         Reviewed by aroben and mitz
3307
3308         * WebCore.base.exp:
3309         * platform/graphics/Image.cpp:
3310         (WebCore::Image::setData):
3311         * platform/graphics/cg/ImageCG.cpp:
3312         (WebCore::ImageInfo::ImageInfo):
3313         (WebCore::Image::drawPatternCallback):
3314         (WebCore::Image::drawPattern):
3315         * platform/graphics/mac/GraphicsContextMac.mm:
3316         (WebCore::GraphicsContext::drawLineForMisspellingOrBadGrammar):
3317         * platform/mac/WebCoreSystemInterface.h:
3318         * platform/mac/WebCoreSystemInterface.mm:
3319
3320 2007-10-25  Brady Eidson  <beidson@apple.com>
3321
3322         Blind build fix attempt
3323
3324         * WebCore.pro:
3325
3326 2007-10-25  Brady Eidson  <beidson@apple.com>
3327
3328         Reviewed by Anders and Sam
3329
3330         Bulk rename of platform/sql/SQL* to platform/sql/SQLite*
3331         
3332         This is more accurate in that there is no realistic "SQL" abstraction, the classes are obviously
3333         tied extremely close to SQLite, and is necessitated by the introduction of "SQLTransaction" in 
3334         the HTML5 database API which we are adopting.
3335
3336         * WebCore.vcproj/WebCore.vcproj:
3337         * WebCore.xcodeproj/project.pbxproj:
3338         * loader/icon/IconDatabase.cpp:
3339         (WebCore::IconDatabase::iconDatabaseSyncThread):
3340         (WebCore::databaseVersionNumber):
3341         (WebCore::isValidDatabase):
3342         (WebCore::createDatabaseTables):
3343         (WebCore::IconDatabase::performOpenInitialization):
3344         (WebCore::IconDatabase::checkIntegrity):
3345         (WebCore::IconDatabase::performURLImport):
3346         (WebCore::IconDatabase::writeToDatabase):
3347         (WebCore::IconDatabase::pruneUnretainedIcons):
3348         (WebCore::IconDatabase::checkForDanglingPageURLs):
3349         (WebCore::IconDatabase::imported):
3350         (WebCore::IconDatabase::setImported):
3351         (WebCore::readySQLiteStatement):
3352         (WebCore::IconDatabase::setIconIDForPageURLInSQLDatabase):
3353         (WebCore::IconDatabase::removePageURLFromSQLDatabase):
3354         (WebCore::IconDatabase::getIconIDForIconURLFromSQLDatabase):
3355         (WebCore::IconDatabase::addIconURLToSQLDatabase):
3356         (WebCore::IconDatabase::getImageDataForIconURLFromSQLDatabase):
3357         (WebCore::IconDatabase::removeIconFromSQLDatabase):
3358         (WebCore::IconDatabase::writeIconSnapshotToSQLDatabase):
3359         * loader/icon/IconDatabase.h:
3360         * loader/icon/IconRecord.cpp:
3361         * platform/sql/SQLAuthorizer.cpp: Removed.
3362         * platform/sql/SQLAuthorizer.h: Removed.
3363         * platform/sql/SQLDatabase.cpp: Removed.
3364         * platform/sql/SQLDatabase.h: Removed.
3365         * platform/sql/SQLStatement.cpp: Removed.
3366         * platform/sql/SQLStatement.h: Removed.
3367         * platform/sql/SQLTransaction.cpp: Removed.
3368         * platform/sql/SQLTransaction.h: Removed.
3369         * platform/sql/SQLiteAuthorizer.cpp: Copied from platform/sql/SQLAuthorizer.cpp.
3370         * platform/sql/SQLiteAuthorizer.h: Copied from platform/sql/SQLAuthorizer.h.
3371         (WebCore::SQLiteAuthorizer::~SQLiteAuthorizer):
3372         * platform/sql/SQLiteDatabase.cpp: Copied from platform/sql/SQLDatabase.cpp.
3373         (WebCore::SQLiteDatabase::SQLiteDatabase):
3374         (WebCore::SQLiteDatabase::~SQLiteDatabase):
3375         (WebCore::SQLiteDatabase::open):
3376         (WebCore::SQLiteDatabase::close):
3377         (WebCore::SQLiteDatabase::setFullsync):
3378         (WebCore::SQLiteDatabase::setSynchronous):
3379         (WebCore::SQLiteDatabase::setBusyTimeout):
3380         (WebCore::SQLiteDatabase::setBusyHandler):
3381         (WebCore::SQLiteDatabase::executeCommand):
3382         (WebCore::SQLiteDatabase::returnsAtLeastOneResult):
3383         (WebCore::SQLiteDatabase::tableExists):
3384         (WebCore::SQLiteDatabase::clearAllTables):
3385         (WebCore::SQLiteDatabase::runVacuumCommand):
3386         (WebCore::SQLiteDatabase::lastInsertRowID):
3387         (WebCore::SQLiteDatabase::lastChanges):
3388         (WebCore::SQLiteDatabase::lastError):
3389         (WebCore::SQLiteDatabase::lastErrorMsg):
3390         (WebCore::SQLiteDatabase::authorizerFunction):
3391         (WebCore::SQLiteDatabase::setAuthorizer):
3392         (WebCore::SQLiteDatabase::lock):
3393         (WebCore::SQLiteDatabase::unlock):
3394         * platform/sql/SQLiteDatabase.h: Copied from platform/sql/SQLDatabase.h.
3395         * platform/sql/SQLiteStatement.cpp: Copied from platform/sql/SQLStatement.cpp.
3396         (WebCore::SQLiteStatement::SQLiteStatement):
3397         (WebCore::SQLiteStatement::~SQLiteStatement):
3398         (WebCore::SQLiteStatement::prepare):
3399         * platform/sql/SQLiteStatement.h: Copied from platform/sql/SQLStatement.h.
3400         (WebCore::SQLiteStatement::database):
3401         * platform/sql/SQLiteTransaction.cpp: Copied from platform/sql/SQLTransaction.cpp.
3402         (WebCore::SQLiteTransaction::SQLiteTransaction):
3403         (WebCore::SQLiteTransaction::~SQLiteTransaction):
3404         (WebCore::SQLiteTransaction::begin):
3405         (WebCore::SQLiteTransaction::commit):
3406         (WebCore::SQLiteTransaction::rollback):
3407         * platform/sql/SQLiteTransaction.h: Copied from platform/sql/SQLTransaction.h.
3408         * storage/Database.cpp:
3409         (WebCore::retrieveTextResultFromDatabase):
3410         (WebCore::setTextValueInDatabase):
3411         (WebCore::Database::performExecuteSql):
3412         (WebCore::Database::performGetTableNames):
3413         (WebCore::Database::executeSql):
3414         * storage/Database.h:
3415         * storage/DatabaseAuthorizer.h:
3416         * storage/DatabaseTracker.cpp:
3417         (WebCore::DatabaseTracker::fullPathForDatabase):
3418         (WebCore::DatabaseTracker::populateOrigins):
3419         (WebCore::DatabaseTracker::databaseNamesForOrigin):
3420         (WebCore::DatabaseTracker::addDatabase):
3421         * storage/DatabaseTracker.h:
3422
3423 2007-10-25  Alexey Proskuryakov  <ap@webkit.org>
3424
3425         Reviewed by Darin.
3426
3427         http://bugs.webkit.org/show_bug.cgi?id=15650
3428         XML attribute nodes are not importable
3429
3430         Tests: fast/dom/import-attribute-node.html
3431                fast/dom/import-document-fragment.html
3432
3433         * dom/Document.cpp:
3434         (WebCore::Document::importNode): Implemented for Attribute and DocumentFragment nodes.
3435
3436 2007-10-25  Dan Bernstein  <mitz@apple.com>
3437
3438         Reviewed by Dave Hyatt.
3439
3440         - fix http://bugs.webkit.org/show_bug.cgi?id=15362
3441           <rdar://problem/5558715> Safari Crashes when opening a JS TreeGrid widget
3442
3443         Test: fast/dynamic/insert-before-table-part-in-continuation.html
3444
3445         * rendering/RenderFlow.cpp:
3446         (WebCore::RenderFlow::addChildWithContinuation): If beforeChild's
3447         parent is an anonymous table part, let the table figure out where to
3448         insert the new child.
3449
3450 2007-10-25  Alp Toker  <alp@atoker.com>
3451
3452         Reviewed by Brady.
3453
3454         http://bugs.webkit.org/show_bug.cgi?id=15686
3455         GtkLauncher aborts on launch due to uninitialized threading subsystem
3456
3457         Re-enable database support in the GTK+ port, with a fix.
3458
3459         * WebCore.pro:
3460
3461 2007-10-25  Jon Honeycutt  <jhoneycutt@apple.com>
3462
3463         Reviewed by Steve.
3464
3465         <rdar://5548217>: [NTS] Java 6 update 3 crashes Safari when loading a 
3466         java page
3467
3468         Previous patch erroneously compared a path and a
3469         path-including-filename. This corrects that. It also caches the result
3470         of safariPluginsPath() and uses shell API funcs for determining filename
3471         and parent directory from a full path.
3472
3473         * ChangeLog:
3474         * plugins/win/PluginDatabaseWin.cpp:
3475         (WebCore::safariPluginsPath): Cache return value. Use API functions to
3476         build the path
3477         (WebCore::PluginDatabaseWin::pluginForMIMEType): Compare again plugin's
3478         parent directory, not full path
3479         (WebCore::PluginDatabaseWin::pluginForExtension): Same
3480         * plugins/win/PluginPackageWin.cpp:
3481         (WebCore::PluginPackageWin::PluginPackageWin): Store parent directory
3482         * plugins/win/PluginPackageWin.h:
3483         (WebCore::PluginPackageWin::parentDirectory):
3484         * plugins/win/PluginStreamWin.cpp:
3485         (WebCore::PluginStreamWin::didReceiveData):
3486
3487 2007-10-25  Alp Toker  <alp@atoker.com>
3488
3489         Unreviewed fix to make the GTK+ port run.
3490
3491         http://bugs.webkit.org/show_bug.cgi?id=15686
3492         GtkLauncher aborts on launch due to uninitialized threading subsystem
3493
3494         Disable database support until #15686 is fixed.
3495
3496         * WebCore.pro:
3497
3498 2007-10-25  Simon Hausmann  <hausmann@kde.org>
3499
3500         Reviewed by Lars.
3501
3502         Fixed a crash in the Qt 4.4 based text iterators when they're called with a null string.
3503
3504         * platform/qt/TextBreakIteratorQt.cpp:
3505         (WebCore::wordBreakIterator):
3506         (WebCore::characterBreakIterator):
3507         (WebCore::lineBreakIterator):
3508         (WebCore::sentenceBreakIterator):
3509
3510 2007-10-25  Holger Freyther  <zecke@selfish.org>
3511
3512         Reviewed by Simon Hausmann <hausmann@kde.org>.
3513
3514         * We need to set a != 0 status code for the fast/loader/xmlhttprequest-missing-file-exception.html
3515         * libxml2 has the semantic that when writing an empty string and finishing it will report an error. For QXmlStreamReader this is valid.
3516         * This is causing some regressions...
3517         
3518
3519         * dom/XMLTokenizer.cpp:
3520         (WebCore::XMLTokenizer::XMLTokenizer):
3521         (WebCore::XMLTokenizer::write):
3522         (WebCore::XMLTokenizer::end):
3523         * dom/XMLTokenizer.h:
3524
3525 2007-10-25  Holger Freyther  <zecke@selfish.org>
3526
3527         Reviewed by Simon Hausmann <hausmann@kde.org>.
3528
3529         * fast/dom/onerror-img.html regressed due checking the JobStates because in case of error (e.g. not being able to connect) the job will no be started.
3530         * Use the error message from Qt. It might or might not be translated.
3531         
3532
3533         WARNING: NO TEST CASES ADDED OR CHANGED
3534
3535         * platform/network/qt/ResourceHandleQt.cpp:
3536         (WebCore::WebCoreSynchronousLoader::didFail):
3537
3538 2007-10-25  Holger Freyther  <zecke@selfish.org>
3539
3540         Reviewed by Simon Hausmann <hausmann@kde.org>.
3541
3542         * Implement our own queuing of network jobs to allow special handling of synchronous jobs. This makes us pass the fast/dom/xmlhttprequest-html-response-encoding.html test without a crash. Sync jobs will get a special treatment over the normals ones and in theory more than one sync job is supported.
3543         * This should be thread-safe besides QWebNetworkJob::{ref,deref}
3544         
3545
3546         * platform/network/qt/ResourceHandleQt.cpp:
3547         (WebCore::ResourceHandle::loadResourceSynchronously):
3548
3549 2007-10-25  Alp Toker  <alp@atoker.com>
3550
3551         Reviewed by Mark Rowe.
3552
3553         Add support for list box theme colors and styled menu list buttons.
3554
3555         Remove obsolete FIXMEs.
3556
3557         * platform/gtk/RenderThemeGtk.cpp:
3558         (WebCore::RenderThemeGtk::RenderThemeGtk):
3559         (WebCore::RenderThemeGtk::paintCheckbox):
3560         (WebCore::RenderThemeGtk::paintRadio):
3561         (WebCore::RenderThemeGtk::paintButton):
3562         (WebCore::RenderThemeGtk::adjustMenuListStyle):
3563         (WebCore::RenderThemeGtk::paintMenuList):
3564         (WebCore::RenderThemeGtk::activeListBoxSelectionBackgroundColor):
3565         (WebCore::RenderThemeGtk::inactiveListBoxSelectionBackgroundColor):
3566         (WebCore::RenderThemeGtk::activeListBoxSelectionForegroundColor):
3567         (WebCore::RenderThemeGtk::inactiveListBoxSelectionForegroundColor):
3568         (WebCore::RenderThemeGtk::gtkTreeView):
3569         * platform/gtk/RenderThemeGtk.h:
3570
3571 2007-10-25  Eric Seidel  <eric@webkit.org>
3572
3573         Reviewed by Geoff.
3574
3575         * bindings/js/kjs_window.h: fix bogus comment, s/DOMNode/DOMObject/
3576
3577 2007-10-24  Eric Seidel  <eric@webkit.org>
3578
3579         Reviewed by Maciej.
3580         
3581         Make Window subclass from JSGlobalObject (for a .5% win in Sunspider)
3582         http://bugs.webkit.org/show_bug.cgi?id=15681
3583
3584         No test cases necessary, no functional changes.
3585
3586         * WebCore.xcodeproj/project.pbxproj:
3587         * bindings/js/kjs_binding.cpp:
3588         (KJS::ScriptInterpreter::ScriptInterpreter):
3589         * bindings/js/kjs_binding.h:
3590         * bindings/js/kjs_proxy.cpp:
3591         (WebCore::KJSProxy::initScriptIfNeeded):
3592         * bindings/js/kjs_window.cpp:
3593         (KJS::Window::Window):
3594         * bindings/js/kjs_window.h:
3595         * bindings/objc/WebScriptObject.mm:
3596         (_didExecute):
3597         * bridge/mac/WebCoreScriptDebugger.mm:
3598
3599 2007-10-24  Adam Roben  <aroben@apple.com>
3600
3601         Add font database initialization code to WebCore
3602
3603         Reviewed by Ada.
3604
3605         * WebCore.vcproj/WebCore.vcproj: Added FontDatabase.{cpp,h}.
3606         * platform/win/FontDatabase.cpp: Added.
3607         (WebCore::systemFontsDirectory):
3608         (WebCore::fontsPlistPath):
3609         (WebCore::systemHasFontsNewerThanFontsPlist):
3610         (WebCore::readFontPlist):
3611         (WebCore::populateFontDatabaseFromPlist):
3612         (WebCore::populateFontDatabaseFromFileSystem):
3613         (WebCore::writeFontDatabaseToPlist):
3614         (WebCore::populateFontDatabase): This is the only function callable
3615         from outside this file. It populates the font database once, either
3616         from the fonts plist, or from the filesystem (and then saves a new
3617         fonts plist).
3618         * platform/win/FontDatabase.h: Added.
3619
3620 2007-10-24  Justin Garcia  <justin.garcia@apple.com>
3621
3622         Reviewed by Darin Adler.