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