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