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