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