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