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