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