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