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