72c3f48f50fdc0bb486e9c6b29d3cc4ae7835dc1
[WebKit-https.git] / WebCore / ChangeLog
1 2007-11-12  Julien Chaffraix  <julien.chaffraix@gmail.com>
2
3         Reviewed by Darin.
4
5         http://bugs.webkit.org/show_bug.cgi?id=15334
6         Split ResourceResponse into platform specific files
7
8         * WebCore.base.exp:
9         * WebCore.pro:
10         * WebCore.vcproj/WebCore.vcproj:
11         * WebCore.xcodeproj/project.pbxproj:
12         * platform/network/ResourceResponse.cpp: Removed.
13         * platform/network/ResourceResponse.h: Removed.
14         * platform/network/ResourceResponseBase.cpp: Copied from platform/network/ResourceResponse.cpp.
15         (WebCore::ResourceResponseBase::asResourceResponse):
16         (WebCore::ResourceResponseBase::isHTTP):
17         (WebCore::ResourceResponseBase::url):
18         (WebCore::ResourceResponseBase::setUrl):
19         (WebCore::ResourceResponseBase::mimeType):
20         (WebCore::ResourceResponseBase::setMimeType):
21         (WebCore::ResourceResponseBase::expectedContentLength):
22         (WebCore::ResourceResponseBase::setExpectedContentLength):
23         (WebCore::ResourceResponseBase::textEncodingName):
24         (WebCore::ResourceResponseBase::setTextEncodingName):
25         (WebCore::ResourceResponseBase::suggestedFilename):
26         (WebCore::ResourceResponseBase::setSuggestedFilename):
27         (WebCore::ResourceResponseBase::httpStatusCode):
28         (WebCore::ResourceResponseBase::setHTTPStatusCode):
29         (WebCore::ResourceResponseBase::httpStatusText):
30         (WebCore::ResourceResponseBase::setHTTPStatusText):
31         (WebCore::ResourceResponseBase::httpHeaderField):
32         (WebCore::ResourceResponseBase::setHTTPHeaderField):
33         (WebCore::ResourceResponseBase::httpHeaderFields):
34         (WebCore::ResourceResponseBase::isAttachment):
35         (WebCore::ResourceResponseBase::setExpirationDate):
36         (WebCore::ResourceResponseBase::expirationDate):
37         (WebCore::ResourceResponseBase::setLastModifiedDate):
38         (WebCore::ResourceResponseBase::lastModifiedDate):
39         (WebCore::ResourceResponseBase::updateResourceResponse):
40         * platform/network/ResourceResponseBase.h: Copied from platform/network/ResourceResponse.h.
41         (WebCore::ResourceResponseBase::ResourceResponseBase):
42         * platform/network/cf/ResourceResponse.h: Added.
43         (WebCore::ResourceResponse::ResourceResponse):
44         * platform/network/curl/ResourceResponse.h: Added.
45         (WebCore::ResourceResponse::ResourceResponse):
46         (WebCore::ResourceResponse::doUpdateResourceResponse):
47         * platform/network/mac/ResourceResponse.h: Added.
48         (WebCore::ResourceResponse::ResourceResponse):
49         * platform/network/qt/ResourceResponse.h: Added.
50         (WebCore::ResourceResponse::ResourceResponse):
51         (WebCore::ResourceResponse::doUpdateResourceResponse):
52
53 2007-11-11  Justin Haygood  <jhaygood@reaktix.com>
54
55         Reviewed by Adam Roben.
56
57         http://bugs.webkit.org/show_bug.cgi?id=15939
58         Adds a currentThread API for use by SQLiteDatabase, etc.
59
60         * platform/Threading.h:
61         * platform/ThreadingNone.cpp:
62         (WebCore::currentThread):
63         * platform/gtk/ThreadingGtk.cpp:
64         (WebCore::identifierByGthreadHandle):
65         (WebCore::):
66         * platform/pthreads/ThreadingPthreads.cpp:
67         (WebCore::identifierByPthreadHandle):
68         (WebCore::currentThread):
69
70 2007-11-11  Dan Bernstein  <mitz@apple.com>
71
72         Reviewed by Adam Roben.
73
74         - fix http://bugs.webkit.org/show_bug.cgi?id=15942
75           REGRESSION: Selecting "Edit Html" tab in Blogger causes crash (Assertion failed: isRange())
76
77         Test: editing/selection/cleared-by-relayout.html
78
79         * editing/Selection.cpp:
80         (WebCore::Selection::toRange): Check if the selection has been cleared
81         by updating layout.
82
83 2007-11-11  Darin Adler  <darin@apple.com>
84
85         Reviewed by Mark Rowe.
86
87         - fix line numbers that were off since my recent patch
88
89         * platform/SegmentedString.h:
90         (WebCore::SegmentedSubstring::SegmentedSubstring): Reversed the sense of m_excludeLineNumbers
91         and rename it to m_doNotExcludeLineNumbers.
92         (WebCore::SegmentedSubstring::excludeLineNumbers): Updated.
93         (WebCore::SegmentedSubstring::doNotExcludeLineNumbers): Added.
94         (WebCore::SegmentedSubstring::setExcludeLineNumbers): Updated.
95         (WebCore::SegmentedString::advance): Use doNotExcludeLineNumbers to reverse the sense and fix
96         the regression, but keep the speediness. I accidentally had removed a ! here.
97
98         * platform/SegmentedString.cpp:
99         (WebCore::SegmentedString::advanceSlowCase): Use doNotExcludeLineNumbers.
100
101 2007-11-11  Oliver Hunt  <oliver@apple.com>
102
103         Reviewed by Darin.
104
105         Fix for <rdar://problem/5585334> numfuzz: integer overflows opening
106         malformed SVG file in WebCore::ImageBuffer::create. Add protection
107         against a potential overflow.
108
109         * platform/graphics/cg/ImageBufferCG.cpp:
110
111 2007-11-11  Antti Koivisto  <antti@apple.com>
112
113         Reviewed by Darin.
114
115         Fix a bunch of cases where the exception code is checked by the function but is not zeroed first.
116
117         * bindings/js/kjs_binding.cpp:
118         (KJS::setDOMException):
119         * dom/Attr.cpp:
120         (WebCore::Attr::setPrefix):
121         * dom/Document.cpp:
122         (WebCore::Document::createElement):
123         * dom/Element.cpp:
124         (WebCore::Element::setPrefix):
125         * dom/Range.cpp:
126         (WebCore::Range::setStart):
127         (WebCore::Range::setEnd):
128         (WebCore::Range::isPointInRange):
129         (WebCore::Range::comparePoint):
130         (WebCore::Range::compareBoundaryPoints):
131         (WebCore::Range::deleteContents):
132         (WebCore::Range::processContents):
133         (WebCore::Range::extractContents):
134         (WebCore::Range::insertNode):
135         (WebCore::Range::setStartAfter):
136         (WebCore::Range::setEndBefore):
137         (WebCore::Range::setEndAfter):
138         (WebCore::Range::selectNode):
139         (WebCore::Range::surroundContents):
140         (WebCore::Range::setStartBefore):
141         * editing/TextIterator.cpp:
142         (WebCore::TextIterator::TextIterator):
143         * html/CanvasRenderingContext2D.cpp:
144         (WebCore::CanvasRenderingContext2D::createPattern):
145         * html/HTMLMediaElement.cpp:
146         (WebCore::HTMLMediaElement::play):
147         (WebCore::HTMLMediaElement::pause):
148         * html/HTMLSelectElement.cpp:
149         (WebCore::HTMLSelectElement::add):
150         (WebCore::HTMLSelectElement::setOption):
151         * xml/XPathEvaluator.cpp:
152         (WebCore::XPathEvaluator::evaluate):
153
154 2007-11-11  Darin Adler  <darin@apple.com>
155
156         Reviewed by Mitz.
157
158         - http://bugs.webkit.org/show_bug.cgi?id=15945
159           speed up GraphicsContextCG typical case by skipping roundToDevicePixels
160
161         * platform/graphics/cg/GraphicsContextCG.cpp:
162         (WebCore::GraphicsContext::restorePlatformState): Clear the flag since we no
163         longer know if the transform is identity or not.
164         (WebCore::GraphicsContext::strokeArc): Removed an extra set of redundant
165         CGContextSave/RestoreGState.
166         (WebCore::GraphicsContext::beginTransparencyLayer): Clear the flag since we no
167         longer know if the transform is identity or not.
168         (WebCore::GraphicsContext::endTransparencyLayer): Ditto.
169         (WebCore::GraphicsContext::scale): Ditto.
170         (WebCore::GraphicsContext::rotate): Ditto.
171         (WebCore::GraphicsContext::translate): Ditto.
172         (WebCore::GraphicsContext::concatCTM): Ditto.
173         (WebCore::GraphicsContext::roundToDevicePixels): Return quickly if the transform
174         is known to be identity, and record that fact when we discover it otherwise.
175
176         * platform/graphics/cg/GraphicsContextPlatformPrivate.h:
177         (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate):
178         Added a m_userToDeviceTransformKnownToBeIdentity flag, initialized to false.
179
180 2007-11-11  Darin Adler  <darin@apple.com>
181
182         Reviewed by Mitz.
183
184         - http://bugs.webkit.org/show_bug.cgi?id=15944
185           streamline SegmentedString to speed up parsing
186
187         I measured a speed-up of the page load test while developing this patch. I don't
188         have a precise figure, though.
189
190         * html/HTMLTokenizer.h: Removed unneeded lineNumberPtr() function. Also renamed
191         lineno to m_lineNumber.
192         * html/HTMLTokenizer.cpp:
193         (WebCore::HTMLTokenizer::processListing): Don't pass 0 to the advance function
194         since we don't want to update a line number.
195         (WebCore::HTMLTokenizer::parseSpecial): Ditto.
196         (WebCore::HTMLTokenizer::parseComment): Pass the line number data member directly
197         instead of lineNumberPtr() since the advance function now takes a reference.
198         (WebCore::HTMLTokenizer::parseServer): Ditto.
199         (WebCore::HTMLTokenizer::parseProcessingInstruction): Ditto.
200         (WebCore::HTMLTokenizer::parseText): Ditto.
201         (WebCore::HTMLTokenizer::parseEntity): Ditto.
202         (WebCore::HTMLTokenizer::parseTag): Ditto.
203         (WebCore::HTMLTokenizer::write): Ditto.
204
205         * loader/FTPDirectoryDocument.cpp: (WebCore::FTPDirectoryTokenizer::write):
206         * loader/TextDocument.cpp: (WebCore::TextTokenizer::write):
207         Don't pass 0 to the advance function.
208
209         * platform/SegmentedString.h: (WebCore::SegmentedString::advance): Streamlined
210         the most common case, and pushed less common cases into a separate function
211         that is not inlined. Also got rid of a branch by separating the case with a
212         line number from the case without one.
213
214         * platform/SegmentedString.cpp: (WebCore::SegmentedString::advanceSlowCase):
215         Added. The aforementioned less common cases are here.
216
217 2007-11-11  Antti Koivisto  <antti@apple.com>
218
219         Forgot to do this review change (and test HTTP commit).
220
221         * html/HTMLMediaElement.cpp:
222         (WebCore::HTMLMediaElement::play):
223
224 2007-11-11  Antti Koivisto  <antti@apple.com>
225
226         Reviewed by Darin.
227         
228         - Update play() and pause() to match current HTML5 draft
229             - send events asynchronously
230             - add timeupdate event to pause
231             - rethrow load() exception, not others
232         - Use list for async events to get ordering right
233
234         Tests: media/video-pause-empty-events.html
235                media/video-play-empty-events.html
236                media/video-play-pause-events.html
237                media/video-play-pause-exception.html
238
239         * html/HTMLMediaElement.cpp:
240         (WebCore::HTMLMediaElement::dispatchEventAsync): 
241         (WebCore::HTMLMediaElement::asyncEventTimerFired):
242         (WebCore::HTMLMediaElement::play):
243         (WebCore::HTMLMediaElement::pause):
244         * html/HTMLMediaElement.h:
245
246 2007-11-11  Nikolas Zimmermann  <zimmermann@kde.org>
247
248         Reviewed by Eric.
249
250         Fixes: http://bugs.webkit.org/show_bug.cgi?id=6424 (<text>, <tspan> dominant-baseline attribute is not respected)
251
252         Add (basic) support for dominant-baseline / alignment-baseline text properties.
253         Note: there are no official testcases, and no-one implemented it before. Only ASV3
254               supported dominant-baseline, but not correct it seems.
255
256         * rendering/SVGRootInlineBox.cpp:
257         (WebCore::dominantBaselineToShift):
258         (WebCore::alignmentBaselineToShift):
259         (WebCore::SVGRootInlineBox::buildLayoutInformationForTextBox):
260
261 2007-11-11  Adam Roben  <aroben@apple.com>
262
263         Add wrappers around CoCreateInstance to COMPtr
264
265         I followed the example of the Query constructor and query method by
266         adding a Create constructor and create method.
267
268         Reviewed by Darin.
269
270         * platform/win/COMPtr.h:
271         (COMPtr::COMPtr): Added a new constructor that calls
272         CoCreateInstance.
273         (COMPtr::create): Added.
274         (COMPtr::createInstance): Added.
275
276 2007-11-11  Alexey Proskuryakov  <ap@nypop.com>
277
278         Reviewed by Darin.
279
280         http://bugs.webkit.org/show_bug.cgi?id=15896
281         More editing cleanup
282
283         No functionality changes.
284
285         * dom/Node.h: Moved several editing-related methods elsewhere.
286         * dom/Node.cpp: (WebCore::Node::maxCharacterOffset): Renamed from maxOffset()
287         to highlight that it is a match to offsetInCharacters(), and much different from other
288         offset-related methods. Added ASSERT_NOT_REACHED(), as callers are supposed to check
289         offsetInCharacters() before calling this.
290
291         * dom/CharacterData.cpp: (WebCore::CharacterData::maxCharacterOffset):
292         * dom/CharacterData.h: (WebCore::CharacterData::isCharacterDataNode):
293         Updated for above renamings.
294
295         * dom/Comment.{h,cpp}: Removed an override for offsetInCharacters(), which is already present in CharacterData.
296
297         * dom/Document.{h,cpp}: Folded updateSelection() into Frame::selectionLayoutChanged().
298
299         * dom/Position.h:
300         * dom/Position.cpp:
301         (WebCore::Position::uncheckedPreviousOffset): Moved from Node::previousOffset().
302         (WebCore::Position::uncheckedNextOffset): Moved from Node::NextOffset().
303         (WebCore::Position::previous): Adapted to the above move.
304         (WebCore::Position::next): Ditto.
305         (WebCore::Position::upstream): Removed an isBR() check, since a non-BR element cannot have a BR renderer (I think),
306         and BR elements are covered by editingIgnoresContent().
307         (WebCore::Position::downstream): Ditto.
308         (WebCore::caretMaxRenderedOffset): Moved from Node::caretMaxRenderedOffset().
309         (WebCore::Position::rendersInDifferentPosition): Updated for the above moves.
310
311         * dom/PositionIterator.h: Added a comment describing this class from the original check-in.
312         * dom/PositionIterator.cpp:
313         (WebCore::PositionIterator::increment): Updated for the above moves.
314         (WebCore::PositionIterator::decrement): Ditto.
315
316         * dom/ProcessingInstruction.h:
317         * dom/ProcessingInstruction.cpp: (WebCore::ProcessingInstruction::maxCharacterOffset):
318         ProcessingInstruction was already returning true from offsetInCharacters(), but didn't override maxCharacterOffset().
319         I think that implementing it has no actual effect, as PIs are not rendered, but it looks cleaner this way.
320
321         * dom/Range.cpp:
322         (WebCore::Range::selectNodeContents):
323         * editing/ApplyStyleCommand.cpp:
324         (WebCore::ApplyStyleCommand::applyRelativeFontStyleChange):
325         (WebCore::ApplyStyleCommand::applyInlineStyle):
326         (WebCore::maxRangeOffset):
327         (WebCore::ApplyStyleCommand::removeInlineStyle):
328         (WebCore::ApplyStyleCommand::splitTextAtStartIfNeeded):
329         (WebCore::ApplyStyleCommand::splitTextAtEndIfNeeded):
330         (WebCore::ApplyStyleCommand::splitTextElementAtStartIfNeeded):
331         (WebCore::ApplyStyleCommand::splitTextElementAtEndIfNeeded):
332         (WebCore::ApplyStyleCommand::mergeEndWithNextIfIdentical):
333         * editing/CompositeEditCommand.cpp:
334         (WebCore::CompositeEditCommand::insertNodeAt):
335         (WebCore::CompositeEditCommand::positionOutsideTabSpan):
336         * editing/DeleteSelectionCommand.cpp:
337         (WebCore::DeleteSelectionCommand::handleGeneralDelete):
338         * editing/InsertLineBreakCommand.cpp:
339         (WebCore::InsertLineBreakCommand::doApply):
340         * editing/InsertParagraphSeparatorCommand.cpp:
341         (WebCore::InsertParagraphSeparatorCommand::doApply):
342         * editing/InsertTextCommand.cpp:
343         (WebCore::InsertTextCommand::insertTab):
344         * editing/visible_units.cpp:
345         (WebCore::previousLinePosition):
346         (WebCore::nextLinePosition):
347         Updated for the above moves.
348
349         * editing/Editor.cpp:
350         (WebCore::Editor::advanceToNextMisspelling): Added a missing rangeCompliantEquivalent() call.
351
352         * editing/TextIterator.cpp:
353         (WebCore::SimplifiedBackwardsTextIterator::SimplifiedBackwardsTextIterator): Changed the condition to obviously
354         match a maxCharacterOffset() call made after it; hopefully, this doesn't break any border cases.
355         (WebCore::SimplifiedBackwardsTextIterator::advance): Updated for the above moves.
356
357         * editing/htmlediting.h:
358         * editing/htmlediting.cpp:
359         (WebCore::canHaveChildrenForEditing): Removed a bogus comment: I don't thin BRs have a special ability to accept
360         child nodes, other than via DOM manipulation, which is not specific to BRs.
361         (WebCore::rangeCompliantEquivalent): Removed a check for BR, which is already covered by editingIgnoresContent().
362         (WebCore::maxDeepOffset): Ditto.
363         (WebCore::caretMinOffset): Moved from Node. Changed some runtime checks that seemingly cannot fail into assertions.
364         (WebCore::caretMaxOffset): Ditto.
365
366         * page/EventHandler.cpp:
367         (WebCore::EventHandler::handleMousePressEventSingleClick): Pass 0 to VisiblePosition constructor instead of
368         caretMinOffset. I didn't want to include htmlediting.h here, and I think that VisiblePosition constructor
369         will take care of adjusting the offset.
370
371         * page/Frame.cpp: (WebCore::Frame::selectionLayoutChanged): Folded Document::updateSelection() here.
372         * page/mac/WebCoreFrameBridge.mm:
373         (-[WebCoreFrameBridge smartDeleteRangeForProposedRange:]): Added missing rangeCompliantEquivalent() calls.
374         * rendering/RenderBlock.cpp: (WebCore::RenderBlock::positionForRenderer): Changed to not round-trip via editing.
375         Changed some runtime checks that seemingly cannot fail into assertions.
376
377 2007-11-11  Darin Adler  <darin@apple.com>
378
379         Reviewed by Sam.
380
381         - updated for JSRegExp function changes
382
383         * platform/RegularExpression.cpp:
384         (WebCore::RegularExpression::Private::compile):
385         (WebCore::RegularExpression::match):
386
387 2007-11-10  Mark Rowe  <mrowe@apple.com>
388
389         Qt Linux build fix.
390
391         * platform/UnicodeRange.h:
392
393 2007-11-10  Mark Rowe  <mrowe@apple.com>
394
395         Qt Windows build fix.
396
397         * platform/UnicodeRange.h:
398
399 2007-11-10  Nikolas Zimmermann  <zimmermann@kde.org>
400
401         Reviewed by Eric.
402
403         Fixes: http://bugs.webkit.org/show_bug.cgi?id=15937 (Add glyph-orientation-horizontal/vertical support)
404         Fixes: http://bugs.webkit.org/show_bug.cgi?id=13971 (text-anchor support on vertical text seems slightly off)
405
406         Add glyph-orientation-* support for text & textPath. (90/180/270 and 'auto')
407         Also fix all vertical text handling - for text & textPath! (especially latin1 characters auto orientation in vertical writing modes)
408
409         * WebCore.pro: Add platform/UnicodeRange.cpp to build
410         * WebCore.xcodeproj/project.pbxproj: Dito.
411         * rendering/SVGCharacterLayoutInfo.cpp: Respect orientationShiftX/Y & angle in characterTransform()
412         (WebCore::SVGChar::characterTransform):
413         * rendering/SVGCharacterLayoutInfo.h: New variables.
414         (WebCore::SVGCharOnPath::SVGCharOnPath):
415         (WebCore::SVGChar::SVGChar):
416         * rendering/SVGRootInlineBox.cpp: Added glyph-orientation-* handling.
417         (WebCore::glyphOrientationToAngle):
418         (WebCore::glyphOrientationIsMultiplyOf180Degrees):
419         (WebCore::calculateGlyphAdvanceAndShiftRespectingOrientation):
420         (WebCore::cummulatedHeightOfInlineBoxCharacterRange):
421         (WebCore::cummulatedWidthOrHeightOfTextChunk):
422         (WebCore::SVGRootInlineBox::buildLayoutInformationForTextBox):
423
424 2007-11-10  Timothy Hatcher  <timothy@apple.com>
425
426         Reviewed by Sam Weinig.
427
428         * page/inspector/StylesSidebarPane.js: Fix the wording of a comment
429           and switch over to use getUniqueProperties in another place.
430
431 2007-11-10  John Sullivan  <sullivan@apple.com>
432
433         Reviewed by Sam Weinig
434
435         Rest of fix for 5394877
436
437         * bindings/js/kjs_window.cpp:
438         (KJS::Window::isSafeScript):
439         Don't log unsafe JavaScript attempts in the other version of isSafeScript() if in
440         private browsing mode either.
441
442 2007-11-10  Nikolas Zimmermann  <zimmermann@kde.org>
443
444         Reviewed by Oliver.
445
446         Fix function name difference - header said 'unicodeRangeForCharacter', actually
447         implemented function is 'findCharUnicodeRange'. They are not compiled yet.
448
449         * platform/UnicodeRange.h:
450
451 2007-11-10  Dan Bernstein  <mitz@apple.com>
452
453         Reviewed by Darin Adler.
454
455         - fix <rdar://problem/5450655> Control-clicking text in a link can surprisingly select only part of the link, should select entire link
456
457         No test because context menu events cannot be tested in DumpRenderTree.
458
459         * page/EventHandler.cpp:
460         (WebCore::EventHandler::selectClosestWordOrLinkFromMouseEvent): Added.
461         If the click occurred in an active link, selects the entire link
462         element. Otherwise selects the closest word.
463         (WebCore::EventHandler::sendContextMenuEvent): Call
464         selectClosestWordOrLinkFromMouseEvent().
465         * page/EventHandler.h:
466
467 2007-11-10  John Sullivan  <sullivan@apple.com>
468
469         Reviewed by Tim Hatcher
470
471         - fixed <rdar://problem/5394877> Safari should not log unsafe JavaScript attempts when 
472           in private browsing mode (only an issue if Log JavaScript Exceptions is turned on)
473
474         * bindings/js/kjs_window.cpp:
475         (KJS::Window::isSafeScript):
476         Don't log unsafe JavaScript attempts to console or chromeClient if in private browsing mode
477
478 2007-11-10  Alexey Proskuryakov  <ap@webkit.org>
479
480         Reviewed by Darin.
481
482         http://bugs.webkit.org/show_bug.cgi?id=15922
483         Implement more of Mozilla Selection API
484
485         Tests: editing/selection/containsNode.html
486                editing/selection/deleteFromDocument.html
487                editing/selection/extend.html
488                editing/selection/selectAllChildren.html
489
490         * editing/SelectionController.cpp:
491         (WebCore::SelectionController::deleteFromDocument):
492         (WebCore::SelectionController::containsNode):
493         (WebCore::SelectionController::selectAllChildren):
494         (WebCore::SelectionController::extend):
495         * editing/SelectionController.h:
496         Added deleteFromDocument(), containsNode(), and selectAllChildren(). Reimplemented extend(),
497         which existed, but didn't match Firefox behavior and wasn't exposed via bindings.
498         Removed a comment mentioning removeRange(), as this method makes no sense without multiple
499         selection range support.
500
501         * page/DOMSelection.cpp:
502         (WebCore::DOMSelection::extend):
503         (WebCore::DOMSelection::deleteFromDocument):
504         (WebCore::DOMSelection::containsNode):
505         (WebCore::DOMSelection::selectAllChildren):
506         * page/DOMSelection.h:
507         * page/DOMSelection.idl:
508         Exposed the new methods.
509
510 2007-11-10  Alexey Proskuryakov  <ap@webkit.org>
511
512         Reviewed by Darin.
513
514         http://bugs.webkit.org/show_bug.cgi?id=15892
515         DOM Range operations are not implemented for ProcessingInstruction nodes
516
517         Test: fast/dom/Range/range-processing-instructions.html
518
519         * dom/Range.cpp:
520         (WebCore::Range::processContents): Implemented ProcessingInstruction cases.
521         (WebCore::Range::checkNodeWOffset): Removed a FIXME - yes, I think that we are supposed
522         to use ProcessingInstruction.data.
523
524 2007-11-09  Timothy Hatcher  <timothy@apple.com>
525
526         Reviewed by Mark Rowe.
527
528         Bug 12054: Ability to serialize an element subtree (into clipboard?) from the DOM inspector
529         http://bugs.webkit.org/show_bug.cgi?id=12054
530
531         - Add support code for routing copy events to the focused element.
532         - Implement copying the currently selected DOM node. The node
533           and it's subtree is copied to the clipboard. If the node has no
534           outerHTML, the nodeValue is copied (text nodes, etc.)
535         - Implement copy for the resource sidebar. The URL is copied for the
536           currently selected resource.
537
538         * page/inspector/DocumentPanel.js:
539         * page/inspector/inspector.js:
540
541 2007-11-09  Antti Koivisto  <antti@apple.com>
542
543         Reviewed by Adele.
544
545         Fix occasional blank video with poster attribute.
546
547         * ChangeLog:
548         * html/HTMLMediaElement.cpp:
549         (WebCore::HTMLMediaElement::load):
550         (WebCore::HTMLMediaElement::didRestoreFromCache):
551         Just calling updateFromElement() does the right thing for both poster image and video.
552
553 2007-11-04  Sam Weinig  <sam@webkit.org>
554
555         Reviewed by Adam Roben.
556
557         <rdar://problem/5435940>
558         The COM bindings for the DOM should be autogenerated like the other DOM bindings
559
560         Initial commit of the autogeneration of the COM DOM Bindings.  No behavior change
561         is being introduced in this patch and to insure that no conflicts arise, a temporary
562         prefix of "GEN_" has been used for all the new classes.
563
564         The build architecture for these bindings differs slightly from the other autogenerated
565         bindings.  Instead of building in WebCore and migrating the resuting code to WebKit (as
566         is done for the Objective-C bindigs currently), the IDLs and generation scripts are
567         migrated to WebKit and built there.  This is done with a series of scripts and Makefiles.
568
569         This commit includes:
570             - Hand rolled root class/Interface GEN_DOMObject used to facilated object creation
571               and ref-counting.
572             - Generating all of the Core DOM and most of HTML and CSS
573             - Generating Event, EventTarget, and EventListener
574
575         * WebCore.vcproj/MigrateIDLAndScripts.make: Added.
576         * WebCore.vcproj/WebCore.vcproj:
577         * WebCore.vcproj/migrate-idls.sh: Added.
578         * bindings/scripts/CodeGenerator.pm:
579         * bindings/scripts/CodeGeneratorCOM.pm: Added.
580         * dom/EventListener.h: Make the isWindowEvent parameter default to false
581         to allow autogeneration based on the IDL.
582
583 2007-11-09  Tristan O'Tierney  <tristan@apple.com>
584
585         Reviewed by Timothy Hatcher.
586         
587         This patch is for the WebKit side of <rdar://problem/5591115>.
588         We need a way to tell context menu navigations, such as "Open in New Window"
589         to override any sort of browser preference for tab based navigation.
590
591         * bridge/WindowFeatures.h:
592         (WebCore::WindowFeatures::WindowFeatures):
593         Added a new struct member var, preferredType
594         and an accompanying enum type PreferredType
595         to send a window type recommendation up to the Chrome. 
596         
597         * page/ContextMenuController.cpp:
598         (WebCore::openNewWindow):
599         Set the window features to recommend a new Window for
600         "Open in New Window" context menu action.
601
602 2007-11-08  Adam Roben  <aroben@apple.com>
603
604         Fix <rdar://5483519> Pressing Enter on selected buttons should fire onclick
605
606         We now match the behavior of Firefox and IE, which is to always just
607         send a click event to the focused button when the Enter key is pressed
608         (previously we were submitting forms directly in some cases).
609
610         Reviewed by Adele.
611
612         Test: fast/forms/enter-clicks-buttons.html
613
614         * html/HTMLButtonElement.cpp:
615         (WebCore::HTMLButtonElement::defaultEventHandler): Don't do anything
616         fancy when Enter is pressed on a <button type=button> -- just send a
617         click event like we do for other button types.
618         * html/HTMLInputElement.cpp:
619         (WebCore::HTMLInputElement::defaultEventHandler): Treat type=button
620         the same way we treat type=submit and type=reset: just send a click
621         event when Enter is pressed.
622
623 2007-11-09  Dan Bernstein  <mitz@apple.com>
624
625         Reviewed by Antti Koivisto.
626
627         - fix a bug in invisible layer culling: dynamically changing a 
628           descendant of an invisible layer to be visible did not work
629
630         Test: fast/layers/layer-content-visibility-change.html
631
632         * rendering/RenderLayer.cpp:
633         (WebCore::RenderLayer::setHasVisibleContent): If we got visible content,
634         make sure that our stacking context rebuilds its z-order lists to
635         include us.
636
637 2007-11-09  David Hyatt  <hyatt@apple.com>
638
639         Clean up matrix() parsing.  Make sure the first four arguments can be lengths or numbers.  The last two
640         args can be lengths or numbers or percents.
641
642         Reviewed by Beth
643
644         * WebCore.xcodeproj/project.pbxproj:
645         * css/CSSParser.cpp:
646         (WebCore::TransformOperationInfo::TransformOperationInfo):
647         (WebCore::CSSParser::parseTransform):
648         * rendering/RenderStyle.h:
649         (WebCore::MatrixTransformOperation::apply):
650
651 2007-11-09  Beth Dakin  <bdakin@apple.com>
652
653         Reviewed by Oliver.
654
655         Fix for <rdar://problem/5586370> CSS Transform - incorrect matrix 
656         math leads to crazy problems
657
658         Transform matrices accept the first four parameters as CSS lengths. 
659         CSS lengths get mapped into WebCore::Lengths as percents by 
660         WebCore::convertToLength(). Percent lengths cannot call value(). It 
661         does not yield a correct result and it asserts on Debug builds. 
662
663         * rendering/RenderStyle.h:
664         (WebCore::MatrixTransformOperation::apply): Instead of calling 
665         value() on the lengths, call calcValue. This fixes the assert and 
666         the bad rendering. 
667
668 2007-11-09  Simon Hausmann  <hausmann@kde.org>
669
670         Reviewed by nobody, build/link fix for Qt/Windows.
671
672         userIdleTime() is stubbed in win/SystemTimeWin.cpp, so don't
673         define it twice.
674
675         * platform/qt/TemporaryLinkStubs.cpp:
676
677 2007-11-09  Simon Hausmann  <hausmann@kde.org>
678
679         Reviewed by Holger.
680
681         Fix ContextMenu allocation in the Qt port.
682
683         Store all items and submenus value based in ContextMenu and ContextMenuItem.
684         That fixes the crashes when the context menu was populated with sub-menus because
685         of the use of temporary ContextMenu objects like this:
686
687         ContextMenu subMenu(...);
688         subMenu.appendItem(...);
689         subMenu.appendItem(...);
690
691         subMenuItem.setSubMenu(&subMenu); // temporary pointer, need to _copy_ contents
692
693         * platform/ContextMenu.h:
694         * platform/ContextMenuItem.h:
695         * platform/PlatformMenuDescription.h:
696         * platform/qt/ContextMenuItemQt.cpp:
697         (WebCore::ContextMenuItem::ContextMenuItem):
698         (WebCore::ContextMenuItem::platformSubMenu):
699         * platform/qt/ContextMenuQt.cpp:
700         (WebCore::ContextMenu::ContextMenu):
701         (WebCore::ContextMenu::~ContextMenu):
702         (WebCore::ContextMenu::appendItem):
703         (WebCore::ContextMenu::itemCount):
704
705 2007-11-09  Peter Kasting  <zerodpx@gmail.com>
706
707         Reviewed by Mark Rowe.
708
709         http://bugs.webkit.org/show_bug.cgi?id=15909
710         Malformed GIFs should not result in memory corruption.
711
712         * platform/image-decoders/gif/GIFImageDecoder.cpp:
713         (WebCore::GIFImageDecoder::haveDecodedRow):
714
715 2007-11-08  Timothy Hatcher  <timothy@apple.com>
716
717         Reviewed by Sam Weinig.
718
719         Some Web Inspector CSS editing changes.
720         - Only delete the property if all the text is delete or the new user input correctly parses.
721           This prevents deleting the existing property if the new text is invalid.
722         - Intercept the Escape key and cancel editing, not saving any changes.
723
724         * page/inspector/StylesSidebarPane.js:
725
726 2007-11-08  Kevin Ollivier  <kevino@theolliviers.com>
727
728         Bakefiles for building WebCore, needed by wx port.
729
730         Reviewed by Mark Rowe.
731
732         * WebCoreSources.bkl: Added.
733         * webcore-base.bkl: Added.
734         * webcore-wx.bkl: Added.
735
736 2007-11-08  Justin Haygood  <jhaygood@reaktix.com>
737
738         Reviewed by Mark Rowe.
739
740         http://bugs.webkit.org/show_bug.cgi?id=15905
741
742         Fix builds with HTML 5 Storage support disabled.
743         ENABLE(DATABASE) needs to be added in a few places.
744
745         * page/InspectorController.cpp:
746         * storage/Database.h:
747
748 2007-11-08  Steve Falkenburg  <sfalken@apple.com>
749
750         <rdar://problem/5524082> Allow images to be dragged out directly into other apps
751         
752         We weren't including CF_HDROP in our image drops.  This broke drag of
753         images out of the browser window directly into other apps (examples
754         include notepad, mspaint, msword).
755         
756         Reviewed by Oliver, Ada.
757
758         * platform/win/ClipboardWin.cpp:
759         (WebCore::createGlobalImageFileContent): Removed unused variable.
760         (WebCore::createGlobalHDropContent): Added
761         (WebCore::writeFileToDataObject): Write HDROP data if available.
762         (WebCore::writeImageToDataObject): Write HDROP for dragged images.
763         (WebCore::ClipboardWin::writeURL): Don't write HDROP for dragged URLs.
764
765 2007-11-08  Xan Lopez  <xan@gnome.org>
766
767         Reviewed by Alp.
768
769         http://bugs.webkit.org/show_bug.cgi?id=15908
770         Use g_object_ref_sink when available
771
772         * platform/gtk/PopupMenuGtk.cpp:
773         (WebCore::PopupMenu::show):
774         * platform/gtk/ScrollViewGtk.cpp:
775         (WebCore::ScrollView::setGtkAdjustments):
776
777 2007-11-08  Dan Bernstein  <mitz@apple.com>
778
779         Reviewed by Beth Dakin.
780
781         - fix <rdar://problem/5491922> REGRESSION (Safari 2-3): Flash-based "Cash Optimizer" on etrade.com does not draw completely
782
783         Test: fast/dom/length-attribute-mapping.html
784
785         * dom/StyledElement.cpp:
786         (WebCore::StyledElement::addCSSLength): Changed the garbage-stripping
787         logic to stop after the first "%" or "*" in the string. This allows for
788         "100%25" to be mapped to "100%" like it is in Firefox and WinIE.
789
790 2007-11-08  Kevin McCullough  <kmccullough@apple.com>
791
792         - Build fix.
793
794         * loader/FrameLoaderClient.h:
795         * platform/graphics/svg/SVGImageEmptyClients.h:
796         (WebCore::SVGEmptyFrameLoaderClient::windowObjectCleared):
797
798 2007-11-08  Kevin McCullough  <kmccullough@apple.com>
799
800         Reviewed by Sam.
801
802         - windowObjectCleared() is no longer const.  It needs to setup the
803         script debugger and cannot be const to do so.
804
805         * loader/FrameLoaderClient.h:
806         * platform/graphics/svg/SVGImageEmptyClients.h:
807         (WebCore::SVGEmptyFrameLoaderClient::windowObjectCleared):
808
809 2007-11-08  Adam Roben  <aroben@apple.com>
810
811         Hopeful Windows build fix
812
813         * rendering/RenderObject.cpp: Touch this file to make it recompile.
814
815 2007-11-08  Sam Weinig  <sam@webkit.org>
816
817         Reviewed by Darin.
818
819         Convert JavaScript internal function objects to use one class per
820         function.  This avoids a switch statement inside what used to be
821         the shared function classes and will allow Shark to better analyze
822         the code.
823
824         To make this switch, the value property of the HashEntry was changed
825         to a union of an intptr_t (which is used to continue handle valueGetters)
826         and function pointer which points to a static constructor for the
827         individual new function objects.
828
829         SunSpider claims this is a 1.0% speedup.
830
831         - On the WebCore side, I updated CodeGeneratorJS.pm to generate the
832           new classes and hand updated the remain non-generated (groan) classes.
833
834         * bindings/js/JSDOMWindowCustom.cpp:
835         (WebCore::JSDOMWindow::customGetOwnPropertySlot):
836         * bindings/js/JSEventTargetNode.cpp:
837         (WebCore::JSEventTargetNodePrototypeFunctionAddEventListener::callAsFunction):
838         (WebCore::JSEventTargetNodePrototypeFunctionRemoveEventListener::callAsFunction):
839         (WebCore::JSEventTargetNodePrototypeFunctionDispatchEvent::callAsFunction):
840         * bindings/js/JSEventTargetNode.h:
841         * bindings/js/JSHTMLInputElementBase.cpp:
842         (WebCore::JSHTMLInputElementBaseFunctionSetSelectionRange::callAsFunction):
843         (WebCore::JSHTMLInputElementBase::getOwnPropertySlot):
844         * bindings/js/JSHTMLInputElementBase.h:
845         (WebCore::JSHTMLInputElementBase::):
846         * bindings/js/JSXMLHttpRequest.cpp:
847         (KJS::JSXMLHttpRequestPrototypeFunctionAbort::callAsFunction):
848         (KJS::JSXMLHttpRequestPrototypeFunctionGetAllResponseHeaders::callAsFunction):
849         (KJS::JSXMLHttpRequestPrototypeFunctionGetResponseHeader::callAsFunction):
850         (KJS::JSXMLHttpRequestPrototypeFunctionOpen::callAsFunction):
851         (KJS::JSXMLHttpRequestPrototypeFunctionSend::callAsFunction):
852         (KJS::JSXMLHttpRequestPrototypeFunctionSetRequestHeader::callAsFunction):
853         (KJS::JSXMLHttpRequestPrototypeFunctionOverrideMIMEType::callAsFunction):
854         (KJS::JSXMLHttpRequestPrototypeFunctionAddEventListener::callAsFunction):
855         (KJS::JSXMLHttpRequestPrototypeFunctionRemoveEventListener::callAsFunction):
856         (KJS::JSXMLHttpRequestPrototypeFunctionDispatchEvent::callAsFunction):
857         * bindings/js/JSXMLHttpRequest.h:
858         (KJS::JSXMLHttpRequest::impl):
859         * bindings/js/JSXSLTProcessor.cpp:
860         (KJS::JSXSLTProcessorPrototypeFunctionImportStylesheet::callAsFunction):
861         (KJS::JSXSLTProcessorPrototypeFunctionTransformToFragment::callAsFunction):
862         (KJS::JSXSLTProcessorPrototypeFunctionTransformToDocument::callAsFunction):
863         (KJS::JSXSLTProcessorPrototypeFunctionSetParameter::callAsFunction):
864         (KJS::JSXSLTProcessorPrototypeFunctionGetParameter::callAsFunction):
865         (KJS::JSXSLTProcessorPrototypeFunctionRemoveParameter::callAsFunction):
866         (KJS::JSXSLTProcessorPrototypeFunctionClearParameters::callAsFunction):
867         (KJS::JSXSLTProcessorPrototypeFunctionReset::callAsFunction):
868         * bindings/js/JSXSLTProcessor.h:
869         * bindings/js/kjs_events.cpp:
870         (WebCore::JSClipboardPrototypeFunctionClearData::callAsFunction):
871         (WebCore::JSClipboardPrototypeFunctionGetData::callAsFunction):
872         (WebCore::JSClipboardPrototypeFunctionSetData::callAsFunction):
873         (WebCore::JSClipboardPrototypeFunctionSetDragImage::callAsFunction):
874         * bindings/js/kjs_events.h:
875         * bindings/js/kjs_navigator.cpp:
876         (KJS::Plugins::):
877         (KJS::Navigator::getOwnPropertySlot):
878         (KJS::Plugins::getOwnPropertySlot):
879         (KJS::PluginsFunctionRefresh::callAsFunction):
880         (KJS::NavigatorProtoFuncJavaEnabled::callAsFunction):
881         * bindings/js/kjs_navigator.h:
882         (KJS::Navigator::):
883         * bindings/js/kjs_window.cpp:
884         (KJS::Window::getOwnPropertySlot):
885         (KJS::Window::put):
886         (KJS::WindowProtoFuncAToB::callAsFunction):
887         (KJS::WindowProtoFuncBToA::callAsFunction):
888         (KJS::WindowProtoFuncOpen::callAsFunction):
889         (KJS::WindowProtoFuncScrollBy::callAsFunction):
890         (KJS::WindowProtoFuncScrollTo::callAsFunction):
891         (KJS::WindowProtoFuncMoveBy::callAsFunction):
892         (KJS::WindowProtoFuncMoveTo::callAsFunction):
893         (KJS::WindowProtoFuncResizeBy::callAsFunction):
894         (KJS::WindowProtoFuncResizeTo::callAsFunction):
895         (KJS::WindowProtoFuncSetTimeout::callAsFunction):
896         (KJS::WindowProtoFuncClearTimeout::callAsFunction):
897         (KJS::WindowProtoFuncSetInterval::callAsFunction):
898         (KJS::WindowProtoFuncAddEventListener::callAsFunction):
899         (KJS::WindowProtoFuncRemoveEventListener::callAsFunction):
900         (KJS::WindowProtoFuncShowModalDialog::callAsFunction):
901         (KJS::WindowProtoFuncNotImplemented::callAsFunction):
902         (KJS::Location::getOwnPropertySlot):
903         (KJS::Location::put):
904         (KJS::LocationProtoFuncReplace::callAsFunction):
905         (KJS::LocationProtoFuncReload::callAsFunction):
906         (KJS::LocationProtoFuncAssign::callAsFunction):
907         (KJS::LocationProtoFuncToString::callAsFunction):
908         * bindings/js/kjs_window.h:
909         (KJS::Window::):
910         * bindings/scripts/CodeGeneratorJS.pm:
911
912 2007-11-08  Mark Rowe  <mrowe@apple.com>
913
914         Fix the Gtk, Qt and Wx builds.
915
916         * platform/gtk/TemporaryLinkStubs.cpp:
917         * platform/qt/TemporaryLinkStubs.cpp:
918         * platform/wx/TemporaryLinkStubs.cpp:
919
920 2007-11-08  Mark Rowe  <mrowe@apple.com>
921
922         Not reviewed.  Fix two instances of includes using the wrong case in the filename.
923
924         * platform/graphics/mac/MoviePrivateQTKit.mm:
925         * platform/wx/MimeTypeRegistryWx.cpp:
926
927 2007-11-08  Darin Adler  <darin@apple.com>
928
929         Reviewed by Adam.
930
931         - fix <rdar://problem/5552943> accesskey does not focus <button> elements
932
933         Test: fast/forms/access-key.html
934
935         * html/HTMLButtonElement.cpp: (WebCore::HTMLButtonElement::accessKeyAction):
936         Added a call to focus.
937
938 2007-11-07  Darin Adler  <darin@apple.com>
939
940         Reviewed by Steve.
941
942         - cut down on notImplemented() functions on Windows
943
944         * bridge/AXObjectCache.h: Put #if around the accessibility
945         global.
946
947         * bridge/win/FrameWin.cpp: (WebCore::Frame::setNeedsReapplyStyles):
948         Moved here from TemporaryLinkStubs.
949
950         * dom/Document.cpp: (WebCore::Document::lastModified): Re-implemented
951         using the ResourceResponse that's now available from the DocumentLoader.
952
953         * editing/JSEditor.cpp: (execTranspose): Changed to call transpose() on
954         the Editor instead of the obsolete one on the Frame.
955
956         * loader/DocumentLoader.h: Removed getResponseModifiedHeader.
957         * loader/FrameLoader.h: Removed overrideMediaType.
958
959         * loader/gtk/DocumentLoaderGtk.cpp: Removed.
960         * loader/mac/DocumentLoaderMac.mm: Removed.
961         * loader/qt/DocumentLoaderQt.cpp: Removed.
962
963         * page/Frame.cpp: Removed transpose.
964         * page/Frame.h: Ditto.
965         * page/FrameView.h: Removed updateBorder.
966         * page/gtk/FrameGtk.cpp: Removed issueTransposeCommand.
967         * page/mac/FrameMac.mm: Ditto.
968         * page/mac/WebCoreFrameBridge.h: Removed issueTransposeCommand and
969         overrideMediaType.
970         * page/qt/FrameQt.cpp: Removed issueTransposeCommand.
971
972         * platform/gtk/TemporaryLinkStubs.cpp: Removed gAccessibilityEnabled.
973         * platform/qt/TemporaryLinkStubs.cpp: Ditto.
974         * platform/win/TemporaryLinkStubs.cpp: Removed or moved all but 3 of the stubs.
975         * platform/wx/TemporaryLinkStubs.cpp: Removed gAccessibilityEnabled,
976         issueTransposeCommand, and overrideMediaType.
977
978         * platform/network/cf/ResourceHandleCFNet.cpp:
979         (WebCore::ResourceHandle::loadsBlocked): Moved here from TemporaryLinkStubs.
980         (WebCore::ResourceHandle::willLoadFromCache): Ditto.
981         * platform/win/GraphicsContextWin.cpp:
982         (WebCore::GraphicsContextPlatformPrivate::clip): Ditto.
983         * platform/win/ScrollViewWin.cpp: (WebCore::ScrollView::inWindow): Ditto.
984         * platform/win/SystemTimeWin.cpp: (WebCore::userIdleTime): Ditto.
985         * platform/win/WidgetWin.cpp: (WebCore::Widget::setIsSelected): Ditto.
986
987         * WebCore.pro: Updated for removed files.
988         * WebCore.xcodeproj/project.pbxproj: Updated for removed file.
989
990 2007-11-08  Mark Rowe  <mrowe@apple.com>
991
992        Build fix for case-sensitive file systems.  Fix case of file names
993        in #include's.
994
995         * html/HTMLMediaElement.cpp:
996         * platform/graphics/Movie.cpp:
997
998 2007-11-08  Holger Hans Peter Freyther  <holger.freyther@trolltech.com>
999
1000         Reviewed by Lars Knoll <lars@trolltech.com>.
1001
1002         Remove some warnings about not implemented methods.
1003
1004         * ResourceHandle::loadsBlocked and ResourceHandle::supportsBufferedData are
1005         specific to the NS API and won't be implemented on Qt.
1006         * ResourceHandle::bufferedData can not be reached as we return false in
1007         ResourceHandle::supportsBufferedData.
1008
1009
1010         * platform/network/qt/ResourceHandleQt.cpp:
1011         (WebCore::ResourceHandle::supportsBufferedData):
1012
1013 2007-11-08  Holger Hans Peter Freyther  <holger.freyther@trolltech.com>
1014
1015         Reviewed by Lars Knoll <lars@trolltech.com>.
1016
1017         Cleanup checking for the request method.
1018
1019         * Check the request method only in QWebNetworkManager::add.
1020         * Currently HEAD, GET, POST are allowed and for everything else
1021         QWebNetworkManager::add returns false.
1022         * Returning false is compatible with ResourceHandle::start and it
1023         can be used in ResourceHandle::loadResourceSynchronously to generate
1024         a ResourceError
1025
1026
1027         * platform/network/qt/ResourceHandleQt.cpp:
1028         (WebCore::ResourceHandle::start):
1029         (WebCore::ResourceHandle::loadResourceSynchronously):
1030
1031 2007-11-08  Holger Hans Peter Freyther  <holger.freyther@trolltech.com>
1032
1033         Reviewed by Lars Knoll <lars@trolltech.com>.
1034
1035         Implement WebCore::callOnMainThread
1036
1037         Implemented using a global QObject, that is moved to the main thread
1038         and then sending a custom event to it.
1039         Picked a number below QEvent::User but above any other documented value.
1040
1041
1042         * platform/qt/ThreadingQt.cpp:
1043         (WebCore::PerformFunctionEvent::PerformFunctionEvent):
1044         (WebCore::MainThreadInvoker::MainThreadInvoker):
1045         (WebCore::MainThreadInvoker::event):
1046         (WebCore::callOnMainThread):
1047
1048 2007-11-08  Holger Hans Peter Freyther  <holger.freyther@trolltech.com>
1049
1050         Reviewed by Lars Knoll <lars@trolltech.com>.
1051
1052         Avoid problems with calling QPainter::begin() on an already active paintdevice
1053
1054         * Partial pick from 6200e04c3e0a77873c3b3f3969b65bc701020326 to avoid getting
1055         crashes on Qt/Mac 4.4 with QPainter::begin to fail because we already draw.
1056         * If we are in a layout or need one do not paint. This can happen for the PlatformScrollBar
1057         used by the ScrollView on a layout triggered by QWebPage::paintEvent.
1058
1059
1060         * platform/qt/WidgetQt.cpp:
1061         (WebCore::Widget::invalidateRect):
1062
1063 2007-11-08  Eric Seidel  <eric@webkit.org>
1064
1065         No review.
1066
1067         * ksvg2/svg/SVGPathElement.h: remove old comment
1068
1069 2007-11-07  Antti Koivisto  <antti@apple.com>
1070
1071         Reviewed by Ollie.
1072
1073         Ensure video renderer has correct size if video has already been loaded
1074         when it is constructed.
1075
1076         * rendering/RenderVideo.cpp:
1077         (WebCore::RenderVideo::RenderVideo):
1078
1079 2007-11-07  Antti Koivisto  <antti@apple.com>
1080
1081         Reviewed by Ollie.
1082
1083         Ensure video is visible when it should be.
1084
1085         * rendering/RenderVideo.cpp:
1086         (WebCore::RenderVideo::updateMovie):
1087
1088 2007-11-07  Dan Bernstein  <mitz@apple.com>
1089
1090         Reviewed by Darin Adler.
1091
1092         - fix <rdar://problem/5523503> Safari crashes clicking scroll bar in FaceBook 'Trips'
1093
1094         Layers and listboxes are two kinds of ScrollBarClient that can be
1095         removed while the scrollbar is tracking the mouse. The scrollbar is not
1096         destroyed until later, and meanwhile it can try to call the client,
1097         which results in a crash.
1098
1099         * manual-tests/stale-scrollbar-client-crash.html: Added.
1100         * platform/ScrollBar.h:
1101         (WebCore::Scrollbar::setClient): Added.
1102         * rendering/RenderLayer.cpp:
1103         (WebCore::RenderLayer::destroyScrollbar): Call Scrollbar::setClient().
1104         * rendering/RenderListBox.cpp:
1105         (WebCore::RenderListBox::~RenderListBox): Ditto.
1106
1107 2007-11-07  Adam Roben  <aroben@apple.com>
1108
1109         Fix <rdar://5569268> Crash when opening any FTP site in second tab/window
1110
1111         Reviewed by Sam.
1112
1113         No test possible.
1114
1115         * platform/win/SharedBufferWin.cpp:
1116         (WebCore::SharedBuffer::createWithContentsOfFile): Bail if we get an
1117         empty path, because _wfopen_s will crash if we pass it a null pointer.
1118
1119 2007-11-07  David Kilzer  <ddkilzer@apple.com>
1120
1121         WebKit confuses width/height for Media Queries device-aspect-ratio evaluation
1122         <http://bugs.webkit.org/show_bug.cgi?id=14893>
1123         <rdar://problem/5380295>
1124
1125         Reviewed by Darin.
1126
1127         Tests: fast/css/device-aspect-ratio.html
1128                fast/css/max-device-aspect-ratio.html
1129                fast/css/min-device-aspect-ratio.html
1130
1131         * css/MediaQueryEvaluator.cpp:
1132         (WebCore::parseAspectRatio): Renamed method parameters from a/b to h/v.
1133         (WebCore::device_aspect_ratioMediaFeatureEval): Renamed local variables from
1134         a/b to h/v.  Switched first two arguments of the call to cmpvalue() to fix
1135         the bug.
1136
1137 2007-11-07  Dan Bernstein  <mitz@apple.com>
1138
1139         Reviewed by Dave Hyatt.
1140
1141         - fix http://bugs.webkit.org/show_bug.cgi?id=15887
1142           REGRESSION (r27576): Crash in RenderStyle::affectedByHoverRules clicking link on Digg
1143
1144         Test: fast/css/display-none-inline-style-change-crash.html
1145
1146         * dom/Element.cpp:
1147         (WebCore::Element::recalcStyle): Fixed the crash by null-checking
1148         the current style and removed other checks that are not strictly
1149         necessary.
1150
1151 2007-11-07  Brady Eidson  <beidson@apple.com>
1152
1153         Rubberstamped by Sam
1154
1155         Remove FrameLoaderClient methods from SVG that were pruned awhile ago
1156
1157         * platform/graphics/svg/SVGImageEmptyClients.h:
1158
1159 2007-11-07  Dan Bernstein  <mitz@apple.com>
1160
1161         Reviewed by Darin Adler.
1162
1163         - fix a bug where CSS rules with :hover in the ancestor chain stopped
1164           working after changing the inline style declaration of the ancestor
1165
1166         Test: fast/css/affected-by-hover-after-style-change.html
1167
1168         * dom/Element.cpp:
1169         (WebCore::Element::recalcStyle): If we are not forcing style
1170         recalculation for all descendants, preserve any "affected by
1171         {hover|active|drag} bits that we may have acquired from them.
1172         Also renamed _style to currentStyle.
1173
1174 2007-11-06  Timothy Hatcher  <timothy@apple.com>
1175
1176         Reviewed by Adam.
1177
1178         Bug 11920: Web Inspector should have Firebug-like CSS editing
1179         http://bugs.webkit.org/show_bug.cgi?id=11920
1180
1181         * css/CSSComputedStyleDeclaration.h:
1182           (WebCore::CSSComputedStyleDeclaration::isPropertyImplicit): Return false. I'm not sure why
1183           this was true, but computed style has no concept of implicit. So false makes more sense
1184           and makes the code simpler in the inspector. This function was added for the inspector,
1185           so this isn't a compatibility change.
1186         * page/inspector/PropertiesSection.js: Add a getter/setter to reset populated status.
1187         * page/inspector/StylesSidebarPane.js: Some refactoring along with the main support for
1188           style editing.
1189         * page/inspector/inspector.css: Style changes for propery editing and focus correctness.
1190         * page/inspector/inspector.js: Look for a handleKeyEvent function of the focus element before
1191           trying to call a function based on the element's id. Call focused and blurred on the focused
1192           element when currentFocusElement is changed. Use the new listItemElement getter instead of
1193           the private property.
1194         * page/inspector/treeoutline.js: No longer expand on double click if ondblclick is implemented.
1195           Shrink the toggle zone to 10px to better match the size of the arrow. Add an onattach call
1196           to allow generation of the title using the DOM element. Add listItemElement and
1197           childrenListElement getters.
1198         * page/inspector/utilities.js: Add new helper prototype methods on CSSStyleDeclaration.
1199         * page/inspector/DocumentPanel.js: Use the new listItemElement getter instead of the private
1200           property. Also expand the DOM node on double click now that the TreeOutline dosen't do it.
1201         * page/inspector/Resource.js: Use the new listItemElement and childrenListElement getters
1202           instead of the private properties.
1203
1204 2007-11-07  Simon Hausmann  <hausmann@kde.org>
1205
1206         Reviewed by Alexey Proskuryakov.
1207
1208         Coding style fix, don't use inline explicitly.
1209
1210         * bridge/WindowFeatures.h:
1211
1212 2007-11-07  Simon Hausmann  <hausmann@kde.org>
1213
1214         Reviewed by Maciej.
1215
1216         For safety provide a default constructor for WindowFeatures().
1217         ContextMenuController.cpp: createNewWindow as well as QWebPage need to
1218         create a default initialized WindowFeatures object on the fly.
1219
1220         * bridge/WindowFeatures.h:
1221         (WebCore::WindowFeatures::WindowFeatures):
1222
1223 2007-11-07  Simon Hausmann  <shausman@trolltech.com>
1224
1225         Reviewed by Lars.
1226
1227         Fix "nmake clean" for the Qt/Windows build by replacing tmp/ with a variable that ends with the correct type of slash/backslash depending on the choice of compiler/make tool.
1228
1229         * WebCore.pro:
1230
1231 2007-11-07  Simon Hausmann  <hausmann@kde.org>
1232
1233         Reviewed by Lars.
1234
1235         Made the QWebSettings::webGraphic functions static. The implementation was using QWebSettings::global() anyway.
1236
1237         * platform/graphics/qt/ImageQt.cpp:
1238         (loadResourcePixmap):
1239
1240 2007-11-07  Simon Hausmann  <hausmann@kde.org>
1241
1242         Reviewed by Lars.
1243
1244         Moved the WebCore::Image specific function loadResourcePixmap from qwebsettings.cpp to ImageQt.cpp and made it static.
1245
1246         * platform/graphics/qt/ImageQt.cpp:
1247         (loadResourcePixmap):
1248
1249 2007-11-07  Simon Hausmann  <hausmann@kde.org>
1250
1251         Reviewed by Lars.
1252
1253         Restructure the context menu classes for the Qt port. ContextMenu and ContextMenuItem don't store
1254         QActions/QMenus anymore but just store the action type, tag, title and optionally submenu as created
1255         in ContextMenu::populate().
1256         For the actual Qt context menu we traverse this structure after sendContextMenuEvent and create a QMenu
1257         out of it. That menu is currently not functional anymore though.
1258
1259         * platform/ContextMenu.h:
1260         * platform/ContextMenuItem.h:
1261         (WebCore::PlatformMenuItemDescription::PlatformMenuItemDescription):
1262         * platform/PlatformMenuDescription.h:
1263         * platform/qt/ContextMenuItemQt.cpp:
1264         (WebCore::ContextMenuItem::ContextMenuItem):
1265         (WebCore::ContextMenuItem::type):
1266         (WebCore::ContextMenuItem::setType):
1267         (WebCore::ContextMenuItem::action):
1268         (WebCore::ContextMenuItem::setAction):
1269         (WebCore::ContextMenuItem::title):
1270         (WebCore::ContextMenuItem::setTitle):
1271         (WebCore::ContextMenuItem::platformSubMenu):
1272         (WebCore::ContextMenuItem::setSubMenu):
1273         (WebCore::ContextMenuItem::setChecked):
1274         (WebCore::ContextMenuItem::setEnabled):
1275         * platform/qt/ContextMenuQt.cpp:
1276         (WebCore::ContextMenu::ContextMenu):
1277         (WebCore::ContextMenu::~ContextMenu):
1278         (WebCore::ContextMenu::appendItem):
1279         (WebCore::ContextMenu::itemCount):
1280         (WebCore::ContextMenu::insertItem):
1281         (WebCore::ContextMenu::setPlatformDescription):
1282         (WebCore::ContextMenu::platformDescription):
1283
1284 2007-11-07  Simon Hausmann  <hausmann@kde.org>
1285
1286         Reviewed by Lars.
1287
1288         Changed ContextMenu::setPlatformDescription for the Qt port to not show the qmenu right away
1289         but instead just behave as a normal setter that takes ownership of the platform menu description (the qmenu).
1290         Instead now QWebPage::contextMenuEvent() retrieves the QMenu after calling sendContextMenuEvent and calls exec()
1291         on it.
1292
1293         * platform/qt/ContextMenuQt.cpp:
1294
1295 2007-11-07  Simon Hausmann  <hausmann@kde.org>
1296
1297         Reviewed by Lars.
1298
1299         Changed to PlatformMouseEvent constructor to allow construction from a QContextMenuEvent.
1300         Call sendContextMenuEvent on the event handler from a QWidget::contextMenuEvent re-implementation instead of in mousePressEvent.
1301
1302         * platform/PlatformMouseEvent.h:
1303         * platform/qt/PlatformMouseEventQt.cpp:
1304         (WebCore::PlatformMouseEvent::PlatformMouseEvent):
1305
1306 2007-11-07  Lars Knoll  <lars@trolltech.com>
1307
1308         Reviewed by Simon.
1309
1310         don't put nbsp's into the plan text paste
1311         
1312         Fix both ClipboardQt and PasteboardQt to replace
1313         nbsp's with spaces before putting the text onto the
1314         native clipboard. This is consistent with Mac and Win
1315         and fixes at least editing/pasteboard/4076267-3.html
1316
1317         * platform/qt/ClipboardQt.cpp:
1318         (WebCore::ClipboardQt::writeRange):
1319         * platform/qt/PasteboardQt.cpp:
1320         (WebCore::Pasteboard::writeSelection):
1321
1322 2007-11-07  Holger Hans Peter Freyther  <holger.freyther@trolltech.com>
1323
1324         Reviewed by Lars Knoll <lars@trolltech.com>.
1325
1326         Implement Pasteboard::writeImage()
1327         
1328         * Pasteboard is now fully implemented. Copying of Images into the Clipboard
1329         is now supported.
1330         * As with URLs we only copy into the Clipboard (and not additionally to the
1331         Selection)
1332         
1333
1334         WARNING: NO TEST CASES ADDED OR CHANGED
1335
1336         * platform/qt/PasteboardQt.cpp:
1337         (WebCore::Pasteboard::writeImage):
1338
1339 2007-11-07  Holger Hans Peter Freyther  <holger.freyther@trolltech.com>
1340
1341         Reviewed by Lars Knoll <lars@trolltech.com>.
1342
1343         Apple CodingStyle fixes
1344         
1345
1346         WARNING: NO TEST CASES ADDED OR CHANGED
1347
1348         * platform/qt/PasteboardQt.cpp:
1349         (WebCore::Pasteboard::documentFragment):
1350
1351 2007-11-07  Holger Hans Peter Freyther  <holger.freyther@trolltech.com>
1352
1353         Reviewed by Lars Knoll <lars@trolltech.com>.
1354
1355         Implement Pasteboard::writeURL()
1356         * The URL currently gets written as text/plain and text/uri-list.
1357         The win and mac port have some more types which we currently do
1358         not support. When supporting them we can use the 'titleString'
1359         as well.
1360         * As with writeSelection we only copy into the Clipboard. We could
1361         consider copying into the Selection as well.
1362         
1363
1364         WARNING: NO TEST CASES ADDED OR CHANGED
1365
1366         * platform/qt/PasteboardQt.cpp:
1367         (WebCore::Pasteboard::writeURL):
1368
1369 2007-11-07  Holger Hans Peter Freyther  <holger.freyther@trolltech.com>
1370
1371         Reviewed by Lars Knoll <lars@trolltech.com>.
1372
1373         Kill whitespace
1374         
1375
1376         WARNING: NO TEST CASES ADDED OR CHANGED
1377
1378         * platform/qt/PasteboardQt.cpp:
1379         (WebCore::Pasteboard::documentFragment):
1380
1381 2007-11-07  Lars Knoll  <lars@trolltech.com>
1382
1383         Reviewed by Simon.
1384
1385         Use the correct function calls to convert a selection to
1386         HTML or plain text.
1387
1388         WARNING: NO TEST CASES ADDED OR CHANGED
1389
1390         * platform/qt/ClipboardQt.cpp:
1391         (WebCore::ClipboardQt::setData):
1392         (WebCore::ClipboardQt::writeRange):
1393         * platform/qt/PasteboardQt.cpp:
1394         (WebCore::Pasteboard::writeSelection):
1395
1396 2007-11-07  Lars Knoll  <lars@trolltech.com>
1397
1398         Reviewed by Simon.
1399
1400         Some more clipboard fixes.
1401         
1402         We have to set things immediately on the QClipBoard if the
1403         Clipboard object is not for dragging.
1404         
1405         This is due to the fact that the Clipboard object might be
1406         rather long lived if accessed through javascript (it'll only
1407         get deleted by JS garbage collection). We have to transfer
1408         the data over to the QClipboard before that to make things work.
1409         
1410         Fixes editing/execCommand/copy-without-selection.html
1411
1412         * platform/qt/ClipboardQt.cpp:
1413         (WebCore::ClipboardQt::ClipboardQt):
1414         (WebCore::ClipboardQt::~ClipboardQt):
1415         (WebCore::ClipboardQt::clearData):
1416         (WebCore::ClipboardQt::clearAllData):
1417         (WebCore::ClipboardQt::getData):
1418         (WebCore::ClipboardQt::setData):
1419         (WebCore::ClipboardQt::declareAndWriteDragImage):
1420         (WebCore::ClipboardQt::writeURL):
1421         (WebCore::ClipboardQt::writeRange):
1422
1423 2007-11-07  Simon Hausmann  <hausmann@kde.org>
1424
1425         Reviewed by Mark.
1426
1427         Fix compilation on Windows with non-cygwin perl. open FILE, "|-" is
1428         not supported due to implicit forks, use IPC::Open2 instead.
1429
1430         * bindings/scripts/IDLParser.pm:
1431
1432 2007-11-07  Dan Bernstein  <mitz@apple.com>
1433
1434         Reviewed by Brady Eidson.
1435
1436         - fix http://bugs.webkit.org/show_bug.cgi?id=15877
1437           REGRESSION: r27486 caused a layout regression at my bank's website
1438
1439         Test: fast/block/float/overhanging-after-height-decrease-offsets.html
1440
1441         * rendering/RenderBlock.cpp:
1442         (WebCore::RenderBlock::layoutBlock):
1443
1444 2007-11-06  Beth Dakin  <bdakin@apple.com>
1445
1446         Reviewed by Sam.
1447
1448         <rdar://problem/5575812> REGRESSION:When using absolute positioning 
1449         with overflow:auto div, WebKit seems to add an additional 15px
1450
1451         * rendering/RenderBox.cpp:
1452         (WebCore::RenderBox::containingBlockWidthForPositioned): We need to 
1453         subtract off the vertical scrollbar width too.
1454
1455 2007-11-06  Justin Garcia  <justin.garcia@apple.com>
1456
1457         Reviewed by Dan Bernstein.
1458         
1459         <rdar://problem/5583387> ASSERTION FAILED: !refChild->hasTagName(bodyTag) when pasting newline in plain text into rich text Mail
1460         <rdar://problem/5583362> REGRESSION (5523.10.3-TOT): Newlines stripped when pasting plain text in Mail
1461
1462         * editing/markup.cpp:
1463         (WebCore::createFragmentFromText): Put paragraphs of text into clones of the block
1464         that encloses the input context, unless that block is the body, which shouldn't
1465         be cloned.  In that case, use regular divs, as we did before r27369.
1466
1467 2007-11-06  Christian Dywan  <christian@twotoasts.de>
1468
1469         Reviewed by Darin.
1470
1471         Fix http://bugs.webkit.org/show_bug.cgi?id=15828
1472         Bug 15828: WebKit GTK include and lib directory is installed in qt4-named directory
1473
1474         * WebCore.pro: Use sane default install paths for the gtk port.
1475
1476 2007-11-06  Justin Garcia  <justin.garcia@apple.com>
1477
1478         Reviewed by Darin Adler.
1479         
1480         <rdar://problem/5576619> 
1481         REGRESSION: Caret disappears after deleting the last character in inline hole (15714)
1482
1483         * editing/TypingCommand.cpp:
1484         (WebCore::TypingCommand::deleteSelection): Like the other TypingCommands, including
1485         both of the other deletion commands, call typingAddedToOpenCommand(), which takes 
1486         the command's endingSelection and sets it as selection.
1487
1488 2007-11-06  Dan Bernstein  <mitz@apple.com>
1489
1490         Reviewed by Antti Koivisto and Dave Hyatt.
1491
1492         - fix <rdar://problem/5582961> Incorrect layout and floating object list corruption when CSS decreases a block's height
1493
1494         Test: fast/block/float/overhanging-after-height-decrease.html
1495
1496         * rendering/RenderBlock.cpp:
1497         (WebCore::RenderBlock::layoutBlock): If after calculating the height
1498         it turns out that there are overhanging floats that were not overhanging
1499         before, rescan children with overhanging floats and add them. 
1500         (WebCore::RenderBlock::layoutBlockChildren): Added a parameter that
1501         returns the lowest float bottom of any of the children.
1502         (WebCore::RenderBlock::addOverhangingFloats): Changed to return the
1503         lowest float bottom.
1504         * rendering/RenderBlock.h:
1505
1506 2007-11-06  Adele Peterson  <adele@apple.com>
1507
1508         Reviewed by Darin.
1509
1510         Switched all uses of HTMLImageLoader to use OwnPtrs.
1511
1512         * html/HTMLInputElement.h:
1513         * html/HTMLInputElement.cpp:
1514         (WebCore::HTMLInputElement::init):
1515         (WebCore::HTMLInputElement::~HTMLInputElement):
1516         (WebCore::HTMLInputElement::setInputType):
1517         (WebCore::HTMLInputElement::parseMappedAttribute):
1518         (WebCore::HTMLInputElement::attach):
1519         * html/HTMLObjectElement.h:
1520         * html/HTMLObjectElement.cpp:
1521         (WebCore::HTMLObjectElement::HTMLObjectElement):
1522         (WebCore::HTMLObjectElement::~HTMLObjectElement):
1523         (WebCore::HTMLObjectElement::parseMappedAttribute):
1524         (WebCore::HTMLObjectElement::attach):
1525         * html/HTMLVideoElement.h:
1526         * html/HTMLVideoElement.cpp:
1527         (WebCore::HTMLVideoElement::HTMLVideoElement):
1528         (WebCore::HTMLVideoElement::attach):
1529         (WebCore::HTMLVideoElement::detach):
1530         (WebCore::HTMLVideoElement::parseMappedAttribute):
1531
1532 2007-11-06  Antti Koivisto  <antti@apple.com>
1533
1534         Reviewed by Darin.
1535         
1536         Trigger media load on on src attribute changes as specified in new HTML5 draft.
1537
1538         Tests: media/video-src-change.html
1539                media/video-src-remove.html
1540                media/video-src-set.html
1541
1542         * html/HTMLMediaElement.cpp:
1543         (WebCore::HTMLMediaElement::attributeChanged):
1544         * html/HTMLMediaElement.h:
1545
1546 2007-11-06  Dan Bernstein  <mitz@apple.com>
1547
1548         Reviewed by Darin Adler.
1549
1550         - fix http://bugs.webkit.org/show_bug.cgi?id=15838
1551           Incomplete repaint toggling "How you know this person" on Facebook
1552
1553         Test: fast/repaint/make-children-non-inline.html
1554
1555         * rendering/RenderBlock.cpp:
1556         (WebCore::RenderBlock::makeChildrenNonInline): Repaint the block. This
1557         is needed because the inline children may be repositioned as they move
1558         into new anonymous blocks, but those blocks have no knowledge of where
1559         their children used to be, so they cannot invalidate those areas.
1560
1561 2007-11-06  Alexey Proskuryakov  <ap@webkit.org>
1562
1563         Reviewed by Darin.
1564
1565         http://bugs.webkit.org/show_bug.cgi?id=15847
1566         Some editing cleanup
1567
1568         No change in functionality.
1569
1570         * editing/TextIterator.cpp:
1571         (WebCore::plainText):
1572         * editing/TextIterator.h:
1573         Made WebCore::plainText() return String instead of DeprecatedString.
1574
1575         * bridge/mac/WebCoreAXObject.mm:
1576         (-[WebCoreAXObject textUnderElement]):
1577         (-[WebCoreAXObject value]):
1578         (-[WebCoreAXObject doAXBoundsForTextMarkerRange:]):
1579         (-[WebCoreAXObject doAXNextSentenceEndTextMarkerForTextMarker:]):
1580         (-[WebCoreAXObject doAXPreviousSentenceStartTextMarkerForTextMarker:]):
1581         Updated for the above change. There is no need to explicitly convert to NSString now.
1582
1583         * editing/EditCommand.cpp:
1584         (WebCore::EditCommand::EditCommand): m_startingSelection and m_endingSelection are actually
1585         initialized in constructor body, so the work done in initializer list was wasted.
1586
1587         (WebCore::EditCommand::apply): Moved some stars.
1588         (WebCore::EditCommand::unapply): Ditto.
1589         (WebCore::EditCommand::reapply): Ditto.
1590         (WebCore::EditCommand::setStartingSelection): The loop exit condition was evaluated twice,
1591         removed one of the checks.
1592
1593         * editing/SelectionController.cpp:
1594         (WebCore::SelectionController::toString): plainText() result type now matches what we need here.
1595
1596         * page/mac/WebCoreFrameBridge.h:
1597         * page/mac/WebCoreFrameBridge.mm:
1598         Removed unused -[WebCoreFrameBridge deleteKeyPressedWithSmartDelete:granularity:] and
1599         -[WebCoreFrameBridge forwardDeleteKeyPressedWithSmartDelete:granularity:].
1600
1601 2007-11-05  Mark Rowe  <mrowe@apple.com>
1602
1603         Mac build fix.
1604
1605         * bindings/js/JSHTMLDocumentCustom.cpp:
1606         (WebCore::writeHelper):
1607
1608 2007-11-05  Adam Roben  <aroben@apple.com>
1609
1610         Don't crash if SafariTheme can't be loaded
1611
1612         PlatformScrollBarSafari and RenderThemeSafari were not checking
1613         whether SafariTheme was successfully loaded. All other uses of
1614         SafariTheme already check this.
1615
1616         Reviewed by Steve.
1617
1618         * platform/win/PlatformScrollBarSafari.cpp: Don't paint if SafariTheme
1619         couldn't be loaded.
1620         (WebCore::PlatformScrollbar::paintButton):
1621         (WebCore::PlatformScrollbar::paintTrack):
1622         (WebCore::PlatformScrollbar::paintThumb):
1623         * rendering/RenderThemeSafari.cpp:
1624         (WebCore::RenderThemeSafari::isControlStyled): Always return true if
1625         we couldn't load SafariTheme. This way we should never try to paint
1626         themed controls (and we assert as such in the paint functions).
1627         (WebCore::RenderThemeSafari::paintCheckbox):
1628         (WebCore::RenderThemeSafari::paintRadio):
1629         (WebCore::RenderThemeSafari::paintButton):
1630         (WebCore::RenderThemeSafari::paintTextField):
1631         (WebCore::RenderThemeSafari::paintCapsLockIndicator):
1632         (WebCore::RenderThemeSafari::paintTextArea):
1633         (WebCore::RenderThemeSafari::paintMenuList):
1634         (WebCore::RenderThemeSafari::paintSliderThumb):
1635         (WebCore::RenderThemeSafari::paintSearchField):
1636         (WebCore::RenderThemeSafari::paintSearchFieldCancelButton):
1637         (WebCore::RenderThemeSafari::paintSearchFieldResultsDecoration):
1638         (WebCore::RenderThemeSafari::paintSearchFieldResultsButton):
1639
1640 2007-11-05  Kevin Ollivier  <kevino@theolliviers.com>
1641
1642         Adding the rest of wx port's graphics impl. 
1643
1644         Rubber-stamped by Maciej Stachowiak.
1645
1646         * platform/graphics/wx/AffineTransformWx.cpp: Added.
1647         * platform/graphics/wx/GraphicsContextWx.cpp: Added.
1648         * platform/graphics/wx/ImageBufferWx.cpp: Added.
1649         * platform/graphics/wx/ImageSourceWx.cpp: Added.
1650         * platform/graphics/wx/ImageWx.cpp: Added.
1651         * platform/graphics/wx/PathWx.cpp: Added.
1652
1653 2007-11-05  Kevin Ollivier  <kevino@theolliviers.com>
1654
1655         wx port bug fixes and new files to get platform/wx building on trunk.
1656
1657         Rubber-stamped by Maciej Stachowiak.
1658
1659         * platform/wx/CursorWx.cpp:
1660         * platform/wx/FileSystemWx.cpp: Added.
1661         * platform/wx/FontCacheWx.cpp:
1662         * platform/wx/FontPlatformDataWx.cpp:
1663         * platform/wx/FontWx.cpp:
1664         * platform/wx/KeyboardEventWx.cpp:
1665         * platform/wx/LocalizedStringsWx.cpp: Added.
1666         * platform/wx/LoggingWx.cpp: Added.
1667         * platform/wx/RenderThemeWx.cpp:
1668         * platform/wx/ScrollViewWx.cpp:
1669         * platform/wx/SharedTimerWx.cpp:
1670         * platform/wx/StringWx.cpp:
1671         * platform/wx/ThreadingWx.cpp: Added.
1672         * platform/wx/WidgetWx.cpp:
1673
1674 2007-11-05  Adele Peterson  <adele@apple.com>
1675
1676         Reviewed by Maciej.
1677
1678         Fix for <rdar://problem/5579999> Add poster attribute for video element
1679
1680         * html/HTMLAttributeNames.in: Added poster attribute.
1681
1682         * html/HTMLImageLoader.cpp: (WebCore::HTMLImageLoader::updateFromElement):
1683           Calls imageSourceAttributeName instead of having special cases for the different kinds of elements. 
1684         * dom/Element.cpp: (WebCore::Element::imageSourceAttributeName): Added.
1685         * dom/Element.h:
1686         * html/HTMLObjectElement.cpp: (WebCore::HTMLObjectElement::imageSourceAttributeName): Added.
1687         * html/HTMLObjectElement.h:
1688
1689         * html/HTMLMediaElement.cpp: (WebCore::HTMLMediaElement::movieNetworkStateChanged):
1690           Calls updatePosterImage when the network state is empty and when the first frame has been loaded.
1691         * html/HTMLMediaElement.h: (WebCore::HTMLMediaElement::rendererIsNeeded): Made this inline.  HTMLVideoElement now also implements this.
1692
1693         * html/HTMLVideoElement.idl: Added case for poster attribute.
1694         * html/HTMLVideoElement.h: Added image loader and flag to keep track of whether or not the poster image should be shown.
1695         * html/HTMLVideoElement.cpp:
1696         (WebCore::HTMLVideoElement::HTMLVideoElement): Initialize m_imageLoader and m_shouldShowPosterImage.
1697         (WebCore::HTMLVideoElement::rendererIsNeeded): Calls HTMLElement::rendererIsNeeded since HTMLMediaElements have renderer by default.
1698         (WebCore::HTMLVideoElement::createRenderer): Create a RenderImage or RenderVideo depending on whether or not the poster image should be shown.
1699         (WebCore::HTMLVideoElement::attach): Set up image loader and RenderImage if necessary.
1700         (WebCore::HTMLVideoElement::detach): Delete image loader if its no longer needed.
1701         (WebCore::HTMLVideoElement::parseMappedAttribute): Added case to process poster attribute.
1702         (WebCore::HTMLVideoElement::poster): Added getter for poster attribute.
1703         (WebCore::HTMLVideoElement::setPoster): Added setter for poster attribute.
1704         (WebCore::HTMLVideoElement::isURLAttribute): Added.
1705         (WebCore::HTMLVideoElement::imageSourceAttributeName): Added.
1706         (WebCore::HTMLVideoElement::updatePosterImage): Added.  Updates m_shouldShowPosterImage and if its changed, detaches and attaches so the renderer is correct.
1707
1708 2007-11-05  Adam Roben  <aroben@apple.com>
1709
1710         Fix <rdar://5563572> SVG image support is turned off
1711
1712         Turned on SVG images for all platforms.
1713
1714         Reviewed by Eric.
1715
1716         * WebCore.vcproj/WebCore.vcproj: Added SVGImage.{cpp,h}
1717         * loader/CachedImage.cpp:
1718         (WebCore::CachedImage::createImage): Removed platform checks for
1719         SVGImage.
1720
1721 2007-11-05  Antti Koivisto  <antti@apple.com>
1722
1723         Reviewed by Darin.
1724
1725         QTMovieView can generate callbacks during paint. This can lead to crashes.
1726         
1727         Delay callbacks so they get handled after painting is completed. No test case,
1728         I don't know how to reliably reproduce this.
1729
1730         * platform/graphics/mac/MoviePrivateQTKit.mm:
1731         (WebCore::MoviePrivate::MoviePrivate):
1732         (WebCore::MoviePrivate::~MoviePrivate):
1733         (WebCore::MoviePrivate::paint):
1734         (-[WebCoreMovieObserver initWithCallback:WebCore::]):
1735         (-[WebCoreMovieObserver disconnect]):
1736         (-[WebCoreMovieObserver loadStateChanged:]):
1737         (-[WebCoreMovieObserver rateChanged:]):
1738         (-[WebCoreMovieObserver sizeChanged:]):
1739         (-[WebCoreMovieObserver timeChanged:]):
1740         (-[WebCoreMovieObserver volumeChanged:]):
1741         (-[WebCoreMovieObserver didEnd:]):
1742         (-[WebCoreMovieObserver setDelayCallbacks:]):
1743
1744 2007-11-05  Antti Koivisto  <antti@apple.com>
1745
1746         Reviewed by Adam.
1747
1748         Add some missing WebCore* prefixes to ObjC classes
1749
1750         * platform/mac/FileChooserMac.mm:
1751         (WebCore::FileChooser::FileChooser):
1752         * platform/mac/SharedBufferMac.mm:
1753         (WebCore::SharedBuffer::createNSData):
1754         (WebCore::SharedBuffer::createCFData):
1755         * platform/mac/SharedTimerMac.cpp:
1756         (WebCore::setSharedTimerFireTime):
1757
1758 2007-11-05  Ada Chan  <adachan@apple.com>
1759
1760         <rdar://problem/5579772> Regression: AltGr does not work
1761         We now store the system key event info in PlatforkKeyboardEvent().
1762
1763         Reviewed by Oliver.
1764
1765         * platform/PlatformKeyboardEvent.h:
1766         (WebCore::PlatformKeyboardEvent::isSystemKey):
1767         * platform/win/KeyEventWin.cpp:
1768         (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
1769
1770 2007-11-02  Tristan O'Tierney  <tristan@apple.com>
1771
1772         Reviewed by Darin Adler.
1773
1774         * WebCore.xcodeproj/project.pbxproj:
1775         Set WindowFeatures.h as a Private header.
1776         
1777         * loader/FrameLoader.cpp:
1778         (WebCore::FrameLoader::createWindow):
1779         Revised to use a single createWindow function instead of
1780         two createWindow functions and one createModalDialog function.
1781         The logic for this is now addressed in WebKit in an effort
1782         to make this easier to follow.
1783         
1784         * page/Chrome.cpp:
1785         (WebCore::Chrome::createWindow):
1786         * page/Chrome.h:
1787         * page/ChromeClient.h:
1788         * page/ContextMenuController.cpp:
1789         (WebCore::openNewWindow):
1790         * platform/graphics/svg/SVGImageEmptyClients.h:
1791         (WebCore::SVGEmptyChromeClient::createWindow):
1792         Revised to take new additional windowFeatures parameter.
1793
1794 2007-11-04  Geoffrey Garen  <ggaren@apple.com>
1795
1796         Reviewed by Darin Adler.
1797         
1798         http://bugs.webkit.org/show_bug.cgi?id=15835
1799
1800         Small adaptations to new KJS::List class.
1801
1802         * bindings/js/kjs_window.cpp:
1803         (KJS::WindowFunc::callAsFunction):
1804         (KJS::ScheduledAction::ScheduledAction):
1805
1806 2007-11-05  Adam Roben  <aroben@apple.com>
1807
1808         Allow passing a base class pointer to COMPtr::copyRefTo
1809
1810         Reviewed by Sam.
1811
1812         * platform/win/COMPtr.h:
1813
1814 2007-11-05  Dan Bernstein  <mitz@apple.com>
1815
1816         Reviewed by Oliver Hunt.
1817
1818         - fix ASSERTION FAILED: !HashTranslator::equal(KeyTraits::emptyValue(), key) when a class attribute is all-whitespace
1819
1820         Test: fast/dom/class-all-whitespace.html
1821
1822         * dom/StyledElement.cpp:
1823         (WebCore::StyledElement::parseMappedAttribute): Check if there is any
1824         non-whitespace character in the class attribute.
1825
1826 2007-11-05  Brady Eidson  <beidson@apple.com>
1827
1828         Reviewed by Sam
1829
1830         Add transaction blocking to the DatabaseAuthorizer in preparation for the new version
1831         of the sql storage API
1832
1833         * storage/DatabaseAuthorizer.cpp:
1834         (WebCore::DatabaseAuthorizer::allowTransaction):
1835         * storage/DatabaseAuthorizer.h:
1836
1837 2007-11-05  Mark Rowe  <mrowe@apple.com>
1838
1839         Reviewed by Alp Toker.
1840
1841         Have getMIMETypeForExtension return a null string when no MIME type is known
1842         for the extension rather than returning "text/plain".  This prevents plugin data
1843         being dumped into object elements when plugins are disabled.
1844
1845         * platform/gtk/MIMETypeRegistryGtk.cpp:
1846         (WebCore::MIMETypeRegistry::getMIMETypeForExtension):
1847
1848 2007-11-04  Sam Weinig  <sam@webkit.org>
1849
1850         Rubber-stamped by Adam Roben.
1851
1852         Rename SecurityOrigin::allowsAccessFrom to SecurityOrigin::canAccess to 
1853         clear up ambiguity.
1854
1855         * bindings/js/kjs_window.cpp:
1856         (KJS::Window::isSafeScript):
1857         * platform/SecurityOrigin.cpp:
1858         (WebCore::SecurityOrigin::canAccess):
1859         * platform/SecurityOrigin.h:
1860
1861 2007-11-04  Timothy Hatcher  <timothy@apple.com>
1862
1863         Reviewed by Adam.
1864
1865         Bug 15834: There are many subtle bugs in the Styles pane of the Web Inspector
1866         http://bugs.webkit.org/show_bug.cgi?id=15834
1867
1868         - Broke up DocumentPanel and added three SidebarPane sub-classes.
1869         - Fixed many Style pane bugs, including:
1870           * Poor handling of duplicate properties in the same rule. Some of this can't be
1871             fixed since we can't only get the "winning" value for duplicate properties.
1872             So we should only show one entry per unique property name.
1873           * Computed style does not show font shorthand sub-properties if 'font' was used.
1874           * Property priority was broken, the wrong properties were crossed out.
1875           * The 'border' shorthand shows null for the shorthand value.
1876           * Shorthands didn't show their priority (e.g. !important).
1877           * HSL and HTML hex colors didn't have preview swatch blocks.
1878           * Code refactoring, making it easier to reuse for console.log later.
1879
1880         * page/inspector/DocumentPanel.js: Move sidebar pane code to three seperate
1881           classes in new files.
1882         * page/inspector/MetricsSidebarPane.js: Added.
1883         * page/inspector/Panel.js: Remove an InspectorController.log() call.
1884         * page/inspector/PropertiesSection.js: Add the section to the TreeOutline.
1885           So TreeElements can access properties on their section.
1886         * page/inspector/PropertiesSidebarPane.js: Added.
1887         * page/inspector/SidebarPane.js: Remove the explicit asignment of the
1888           onexpand and oncollapse to null. These were hiding prototypes.
1889         * page/inspector/StylesSidebarPane.js: Added.
1890         * page/inspector/inspector.html: Include the new script files.
1891         * page/inspector/treeoutline.js: If a null representedObject is passed
1892           in just use a empty object.
1893
1894 2007-11-04  David D. Kilzer  <ddkilzer@webkit.org>
1895
1896         Fix build when spaces appear in the WebKit source path.
1897
1898         Reviewed by Mark Rowe.
1899
1900         * bindings/scripts/IDLParser.pm: Use safer open() method which lists
1901         arguments individually and prevents the need to work around spaces
1902         in the path.
1903
1904 2007-11-04  Alp Toker  <alp@atoker.com>
1905
1906         Reviewed by Alexey Proskuryakov.
1907
1908         Fix a crash when no clipboard text is available
1909
1910         * platform/gtk/PasteboardGtk.cpp:
1911         (WebCore::Pasteboard::plainText):
1912
1913 2007-11-03  Darin Adler  <darin@apple.com>
1914
1915         Reviewed by Maciej.
1916
1917         - WebCore part of http://bugs.webkit.org/show_bug.cgi?id=15821
1918           remove unused PCRE features for speed
1919
1920         * page/Frame.cpp: (WebCore::Frame::matchLabelsAgainstElement):
1921         * page/mac/FrameMac.mm: (WebCore::Frame::matchLabelsAgainstElement):
1922         Remove use of "[[:digit:]]" syntax. This hasn't worked for some time.
1923         Use "\d" instead.
1924
1925         * platform/RegularExpression.h: Remove the unused cap function. We can
1926         add it back later if we find we need it.
1927         * platform/RegularExpression.cpp:
1928         (WebCore::RegularExpression::Private::compile): Update for JavaScriptCore
1929         regular expression entry point changes.
1930         (WebCore::RegularExpression::Private::~Private): Ditto.
1931         (WebCore::RegularExpression::match): Remove the code to set PCRE_NOTBOL.
1932         This means that regular expressions with metacharactesr like ^ in them
1933         won't work any more with non-whole-string searches, but we don't use
1934         any regular expressions like that.
1935
1936 2007-11-03  Kevin Ollivier  <kevino@theolliviers.com>
1937
1938         Update the link stubs to match the current build,
1939         and fix coding style issues.
1940
1941         Reviewed by Mark Rowe.
1942
1943         * platform/wx/TemporaryLinkStubs.cpp:
1944         (loadResourceIntoArray):
1945         (findNextSentenceFromIndex):
1946         (findSentenceBoundary):
1947         (Frame::dashboardRegionsChanged):
1948         (WebCore::historyContains):
1949         (CachedPage::close):
1950         (Editor::showStylesPanel):
1951         (EventHandler::passSubframeEventToSubframe):
1952         (EventHandler::passWheelEventToWidget):
1953         (WebCore::currentTextBreakLocaleID):
1954
1955 2007-11-03  Kevin Ollivier  <kevino@theolliviers.com>
1956
1957         wx <-> WebKit conversions for IntPoint, IntRect and FloatRect
1958
1959         Reviewed by Mark Rowe.
1960
1961         * platform/graphics/wx/FloatRectWx.cpp: Added.
1962         * platform/graphics/wx/IntPointWx.cpp: Added.
1963         * platform/graphics/wx/IntRectWx.cpp: Added.
1964
1965 2007-11-03  Kevin Ollivier  <kevino@theolliviers.com>
1966
1967         wx <-> WebKit data type conversions for Pen and Color.
1968
1969         Reviewed by Darin Adler.
1970
1971         * platform/graphics/wx: Added.
1972         * platform/graphics/wx/ColorWx.cpp: Added.
1973         * platform/graphics/wx/PenWx.cpp: Added.
1974
1975 2007-11-03  Sam Weinig  <sam@webkit.org>
1976
1977         Reviewed by Oliver.
1978
1979         Remove dummy variable from ClassInfo reducing the size of the struct by 1 word.
1980         The variable had been kept around for binary compatibility, but since nothing
1981         else is there is no point in continuing to keep it around.
1982
1983         * bindings/js/JSDOMExceptionConstructor.cpp:
1984         (WebCore::):
1985         * bindings/js/JSHTMLInputElementBase.cpp:
1986         (WebCore::):
1987         * bindings/js/JSNamedNodesCollection.cpp:
1988         (WebCore::):
1989         * bindings/js/JSXMLHttpRequest.cpp:
1990         (KJS::):
1991         * bindings/js/JSXSLTProcessor.cpp:
1992         (KJS::):
1993         * bindings/js/kjs_css.cpp:
1994         (WebCore::):
1995         * bindings/js/kjs_events.cpp:
1996         (WebCore::):
1997         * bindings/js/kjs_navigator.cpp:
1998         (KJS::):
1999         * bindings/js/kjs_window.cpp:
2000         (KJS::):
2001         * bindings/scripts/CodeGeneratorJS.pm:
2002
2003 2007-11-03  Kevin Ollivier  <kevino@theolliviers.com>
2004
2005         Build fixes to get wx impls. building on trunk.
2006
2007         Reviewed by Mark Rowe.
2008
2009         * platform/wx/DragDataWx.cpp:
2010         (WebCore::DragData::containsFiles):
2011         (WebCore::DragData::asFilenames):
2012         * platform/wx/DragImageWx.cpp:
2013         (WebCore::scaleDragImage):
2014         * platform/wx/MimeTypeRegistryWx.cpp:
2015         (WebCore::MIMETypeRegistry::getMIMETypeForExtension):
2016         * platform/wx/MouseEventWx.cpp:
2017         (WebCore::PlatformMouseEvent::PlatformMouseEvent):
2018         * platform/wx/MouseWheelEventWx.cpp:
2019         * platform/wx/PasteboardWx.cpp:
2020         (WebCore::Pasteboard::writeImage):
2021         * platform/wx/WidgetWx.cpp:
2022         (WebCore::Widget::setCursor):
2023
2024 2007-11-03  David D. Kilzer  <ddkilzer@webkit.org>
2025
2026         Sort files(...); sections of Xcode project files.
2027
2028         Rubber-stamped by Darin.
2029
2030         * WebCore.xcodeproj/project.pbxproj:
2031         * manual-tests/NPN_Invoke/NPN_Invoke.xcodeproj/project.pbxproj:
2032
2033 2007-11-03  Kevin Ollivier  <kevino@theolliviers.com>
2034
2035         Coding style fixes for platform/wx files.
2036
2037         Reviewed by Mark Rowe.
2038
2039         * platform/wx/ClipboardWx.cpp:
2040         * platform/wx/GlyphMapWx.cpp:
2041         * platform/wx/ScreenWx.cpp:
2042
2043 2007-11-03  Alp Toker  <alp@atoker.com>
2044
2045         Reviewed by Mark Rowe.
2046
2047         Implement platform scrollbar static width/height getters
2048
2049         * platform/gtk/PlatformScrollBar.h:
2050         * platform/gtk/PlatformScrollBarGtk.cpp:
2051         (scrollbarSize):
2052         (PlatformScrollbar::horizontalScrollbarHeight):
2053
2054 2007-11-03  Alp Toker  <alp@atoker.com>
2055
2056         Reviewed by Mark Rowe.
2057
2058         Cast function pointers to gpointer.
2059
2060         * platform/gtk/PlatformScrollBarGtk.cpp:
2061         (PlatformScrollbar::~PlatformScrollbar):
2062
2063 2007-11-03  Alp Toker  <alp@atoker.com>
2064
2065         Reviewed by Adam Roben.
2066
2067         RenderThemeGtk implementation based on Mozilla's GTK+ style code
2068
2069         There is still work needed to complete this feature.
2070
2071         * WebCore.pro:
2072         * platform/gtk/RenderThemeGtk.cpp:
2073         (WebCore::theme):
2074         (WebCore::RenderThemeGtk::RenderThemeGtk):
2075         (WebCore::supportsFocus):
2076         (WebCore::RenderThemeGtk::supportsFocusRing):
2077         (WebCore::RenderThemeGtk::controlSupportsTints):
2078         (WebCore::RenderThemeGtk::baselinePosition):
2079         (WebCore::adjustMozStyle):
2080         (WebCore::setMozState):
2081         (WebCore::paintMozWidget):
2082         (WebCore::setButtonPadding):
2083         (WebCore::setToggleSize):
2084         (WebCore::RenderThemeGtk::setCheckboxSize):
2085         (WebCore::RenderThemeGtk::paintCheckbox):
2086         (WebCore::RenderThemeGtk::setRadioSize):
2087         (WebCore::RenderThemeGtk::paintRadio):
2088         (WebCore::RenderThemeGtk::adjustButtonStyle):
2089         (WebCore::RenderThemeGtk::paintButton):
2090         (WebCore::RenderThemeGtk::adjustMenuListStyle):
2091         (WebCore::RenderThemeGtk::paintMenuList):
2092         (WebCore::RenderThemeGtk::adjustTextFieldStyle):
2093         (WebCore::RenderThemeGtk::paintTextField):
2094         (WebCore::RenderThemeGtk::adjustSearchFieldResultsButtonStyle):
2095         (WebCore::RenderThemeGtk::paintSearchFieldResultsButton):
2096         (WebCore::RenderThemeGtk::adjustSearchFieldResultsDecorationStyle):
2097         (WebCore::RenderThemeGtk::paintSearchFieldResultsDecoration):
2098         (WebCore::RenderThemeGtk::adjustSearchFieldCancelButtonStyle):
2099         (WebCore::RenderThemeGtk::paintSearchFieldCancelButton):
2100         (WebCore::RenderThemeGtk::adjustSearchFieldStyle):
2101         (WebCore::RenderThemeGtk::paintSearchField):
2102         (WebCore::RenderThemeGtk::platformActiveSelectionBackgroundColor):
2103         (WebCore::RenderThemeGtk::platformInactiveSelectionBackgroundColor):
2104         (WebCore::RenderThemeGtk::platformActiveSelectionForegroundColor):
2105         (WebCore::RenderThemeGtk::platformInactiveSelectionForegroundColor):
2106         (WebCore::RenderThemeGtk::activeListBoxSelectionBackgroundColor):
2107         (WebCore::RenderThemeGtk::inactiveListBoxSelectionBackgroundColor):
2108         (WebCore::RenderThemeGtk::activeListBoxSelectionForegroundColor):
2109         (WebCore::RenderThemeGtk::inactiveListBoxSelectionForegroundColor):
2110         (WebCore::RenderThemeGtk::caretBlinkFrequency):
2111         (WebCore::RenderThemeGtk::systemFont):
2112         (WebCore::gtkStyleSetCallback):
2113         (WebCore::RenderThemeGtk::gtkContainer):
2114         (WebCore::RenderThemeGtk::gtkEntry):
2115         (WebCore::RenderThemeGtk::gtkTreeView):
2116         * platform/gtk/RenderThemeGtk.h:
2117         * platform/gtk/gtk2drawing.c: Added.
2118         (moz_gtk_enable_style_props):
2119         (ensure_window_widget):
2120         (setup_widget_prototype):
2121         (ensure_button_widget):
2122         (ensure_checkbox_widget):
2123         (ensure_radiobutton_widget):
2124         (ensure_scrollbar_widget):
2125         (ensure_spin_widget):
2126         (ensure_scale_widget):
2127         (ensure_entry_widget):
2128         (ensure_option_menu_widget):
2129         (ensure_arrow_widget):
2130         (ensure_handlebox_widget):
2131         (ensure_toolbar_widget):
2132         (ensure_tooltip_widget):
2133         (ensure_tab_widget):
2134         (ensure_progress_widget):
2135         (ensure_frame_widget):
2136         (ensure_menu_bar_widget):
2137         (ensure_menu_bar_item_widget):
2138         (ensure_menu_popup_widget):
2139         (ensure_menu_item_widget):
2140         (ensure_check_menu_item_widget):
2141         (ConvertGtkState):
2142         (TSOffsetStyleGCArray):
2143         (TSOffsetStyleGCs):
2144         (moz_gtk_button_paint):
2145         (moz_gtk_init):
2146         (moz_gtk_checkbox_get_metrics):
2147         (moz_gtk_radio_get_metrics):
2148         (moz_gtk_checkbox_get_focus):
2149         (moz_gtk_radio_get_focus):
2150         (moz_gtk_button_get_focus):
2151         (moz_gtk_option_menu_get_metrics):
2152         (moz_gtk_toggle_paint):
2153         (calculate_arrow_dimensions):
2154         (moz_gtk_scrollbar_button_paint):
2155         (moz_gtk_scrollbar_trough_paint):
2156         (moz_gtk_scrollbar_thumb_paint):
2157         (moz_gtk_spin_paint):
2158         (moz_gtk_scale_paint):
2159         (moz_gtk_scale_thumb_paint):
2160         (moz_gtk_gripper_paint):
2161         (moz_gtk_entry_paint):
2162         (moz_gtk_option_menu_paint):
2163         (moz_gtk_dropdown_arrow_paint):
2164         (moz_gtk_container_paint):
2165         (moz_gtk_toggle_label_paint):
2166         (moz_gtk_toolbar_paint):
2167         (moz_gtk_tooltip_paint):
2168         (moz_gtk_frame_paint):
2169         (moz_gtk_progressbar_paint):
2170         (moz_gtk_progress_chunk_paint):
2171         (moz_gtk_tab_paint):
2172         (moz_gtk_tabpanels_paint):
2173         (moz_gtk_menu_bar_paint):
2174         (moz_gtk_menu_popup_paint):
2175         (moz_gtk_menu_item_paint):
2176         (moz_gtk_check_menu_item_paint):
2177         (moz_gtk_window_paint):
2178         (moz_gtk_get_widget_border):
2179         (moz_gtk_get_dropdown_arrow_size):
2180         (moz_gtk_get_scalethumb_metrics):
2181         (moz_gtk_get_scrollbar_metrics):
2182         (moz_gtk_widget_paint):
2183         (moz_gtk_get_scrollbar_widget):
2184         (moz_gtk_shutdown):
2185         * platform/gtk/gtkdrawing.h: Added.
2186
2187 2007-11-03  Alp Toker  <alp@atoker.com>
2188
2189         Reviewed by Mark Rowe.
2190
2191         Do not allow scrollbars to handle wheel events
2192         
2193         We bubble the wheel event up so the parent can handle it instead.
2194
2195         * platform/gtk/PlatformScrollBarGtk.cpp:
2196         (gtkScrollEventCallback):
2197         (PlatformScrollbar::PlatformScrollbar):
2198         (PlatformScrollbar::~PlatformScrollbar):
2199
2200 2007-11-03  Alp Toker  <alp@atoker.com>
2201
2202         Reviewed by Mark Rowe.
2203
2204         Frame scrolling and invalidation fixes
2205
2206         Make upward scroll events have a positive delta to match other ports.
2207
2208         Fix the invalidation rect offset for frames so that scrolling works properly.
2209
2210         Avoid allocating negative sizes to widgets to avoid GTK+ warnings.
2211
2212         Allow tabbing to all widgets and links.
2213
2214         Fix event returns, improving the focus situation and correcting scroll wheel
2215         behavior.
2216
2217         * page/gtk/EventHandlerGtk.cpp:
2218         (WebCore::EventHandler::tabsToAllControls):
2219         (WebCore::EventHandler::passWheelEventToWidget):
2220         * platform/gtk/ScrollViewGtk.cpp:
2221         (WebCore::ScrollViewScrollbar::geometryChanged):
2222         (WebCore::ScrollView::updateContents):
2223         (WebCore::ScrollView::update):
2224         (WebCore::ScrollView::wheelEvent):
2225         (WebCore::ScrollView::updateScrollbars):
2226         * platform/gtk/WheelEventGtk.cpp:
2227         (WebCore::PlatformWheelEvent::PlatformWheelEvent):
2228
2229 2007-11-03  David D. Kilzer  <ddkilzer@webkit.org>
2230
2231         LGPL'ed files contain incorrect FSF address
2232         <http://bugs.webkit.org/show_bug.cgi?id=14885>
2233
2234         Reviewed by NOBODY (follow-up fix).
2235
2236         * bindings/js/JSSVGTransformListCustom.cpp:
2237         * ksvg2/svg/SVGException.idl:
2238         * ksvg2/svg/SVGTextPathElement.cpp:
2239         * ksvg2/svg/SVGTextPathElement.h:
2240         * ksvg2/svg/SVGViewSpec.cpp:
2241         * ksvg2/svg/SVGViewSpec.h:
2242         * platform/mac/FontCustomPlatformData.cpp:
2243         * platform/mac/FontCustomPlatformData.h:
2244         * platform/mac/FontPlatformDataMac.mm:
2245         * platform/win/FontCustomPlatformData.cpp:
2246         * platform/win/FontCustomPlatformData.h:
2247         * rendering/RenderSVGRoot.cpp:
2248         * rendering/RenderSVGRoot.h:
2249         * rendering/RenderSVGTextPath.cpp:
2250         * rendering/RenderSVGTextPath.h:
2251         * rendering/RenderSVGTransformableContainer.h:
2252         * rendering/RenderSVGViewportContainer.cpp:
2253         * rendering/RenderSVGViewportContainer.h:
2254         * rendering/SVGCharacterLayoutInfo.cpp:
2255         * rendering/SVGCharacterLayoutInfo.h:
2256         * rendering/SVGRenderSupport.cpp:
2257         * rendering/SVGRenderSupport.h:
2258
2259 2007-11-02  Antti Koivisto  <antti@apple.com>
2260
2261         Reviewed by Adam.
2262         
2263         Add video width/height DOM and content attributes from latest HTML5 draft.
2264
2265         Test: media/video-width-height.html
2266
2267         * html/HTMLVideoElement.cpp:
2268         (WebCore::HTMLVideoElement::parseMappedAttribute):
2269         (WebCore::HTMLVideoElement::width):
2270         (WebCore::HTMLVideoElement::setWidth):
2271         (WebCore::HTMLVideoElement::height):
2272         (WebCore::HTMLVideoElement::setHeight):
2273         * html/HTMLVideoElement.h:
2274         * html/HTMLVideoElement.idl:
2275
2276 2007-11-02  Darin Adler  <darin@apple.com>
2277
2278         Reviewed by Maciej.
2279
2280         * DerivedSources.make: Remove a few explicit filenames from some rules by using
2281         make variables a little more.
2282         * WebCore.LP64.exp: Fix typo, grammar.
2283
2284 2007-11-02  Darin Adler  <darin@apple.com>
2285
2286         Reviewed by Maciej.
2287
2288         - use the new HashMap::take function where appropriate
2289
2290         * bindings/js/kjs_binding.cpp:
2291         (KJS::addWrapper): Made an inline rather than a macro; inlines good, macros bad.
2292         (KJS::removeWrapper): Ditto.
2293         (KJS::removeWrappers): Ditto.
2294         (KJS::ScriptInterpreter::putDOMObject): Use the inline instead of the macro.
2295         (KJS::ScriptInterpreter::forgetDOMObject): Ditto. This involves using take instead
2296         of remove -- in theory ever so slightly less efficient, but I think it's fine.
2297         (KJS::ScriptInterpreter::forgetDOMNodeForDocument): Ditto.
2298         (KJS::ScriptInterpreter::putDOMNodeForDocument): Use the inline instead of the macro.
2299         (KJS::ScriptInterpreter::forgetAllDOMNodesForDocument): Use take instead of find/remove.
2300         (KJS::ScriptInterpreter::updateDOMNodeDocument): Use the inlines instead of the macros.
2301
2302         * bindings/js/kjs_window.cpp: (KJS::Window::clearTimeout): Use take instead of find/remove.
2303         * bridge/mac/AXObjectCacheMac.mm: (WebCore::AXObjectCache::remove): Ditto.
2304         * page/AnimationController.cpp: (WebCore::AnimationControllerPrivate::clear): Ditto.
2305         * rendering/RenderBlock.cpp:
2306         (WebCore::RenderBlock::~RenderBlock): Ditto.
2307         (WebCore::RenderBlock::setDesiredColumnCountAndWidth): Ditto.
2308         * rendering/RootInlineBox.cpp: Ditto.(WebCore::RootInlineBox::detachEllipsisBox): Ditto.
2309
2310 2007-11-02  Antti Koivisto  <antti@apple.com>
2311
2312         Reviewed by Darin.
2313
2314         Enable video composition.
2315
2316         * WebCore.base.exp:
2317         * platform/graphics/mac/MoviePrivateQTKit.mm:
2318         (WebCore::MoviePrivate::createQTMovieView):
2319         * platform/mac/WebCoreSystemInterface.h:
2320         * platform/mac/WebCoreSystemInterface.mm:
2321
2322 2007-11-02  Darin Adler  <darin@apple.com>
2323
2324         Reviewed by Mitz.
2325
2326         - fix http://bugs.webkit.org/show_bug.cgi?id=15806
2327           <rdar://problem/5561626> ASSERT(element->isRadioButton()) fires destroying form elements
2328
2329         Test: fast/forms/remove-radio-button-assert.html
2330
2331         * html/HTMLGenericFormElement.cpp: (WebCore::HTMLGenericFormElement::removeFromForm):
2332         Added protected function to be used by derived classes that need to do the same sort
2333         of removal from form that's automatically done by the base class in certain circumstances.
2334         * html/HTMLGenericFormElement.h: Added removeFromForm.
2335
2336         * html/HTMLInputElement.cpp: (WebCore::HTMLInputElement::~HTMLInputElement):
2337         Call removeFromForm here so the element is removed before we destroy the HTMLInputElement
2338         part of this object. By the time we get to the base class's destructor it's too late.
2339         The problem is specific to radio buttons so we don't have to worry about other classes
2340         derived from HTMLGenericFormElement.
2341
2342 2007-11-02  Darin Adler  <darin@apple.com>
2343
2344         Reviewed by Mitz.
2345
2346         - speculative fix for http://bugs.webkit.org/show_bug.cgi?id=15805
2347           <rdar://problem/5510779> crashes in isLoadingMultipartContent
2348
2349         * loader/DocumentLoader.cpp: (WebCore::DocumentLoader::isLoadingMultipartContent):
2350         Instead of asserting the frame loader is non-0, return false if it is 0.
2351
2352 2007-11-02  Darin Adler  <darin@apple.com>
2353
2354         Reviewed by Mitz.
2355
2356         - fix <rdar://problem/5530185> WebKit does not show <object> fallback content when both
2357           URL and MIME type is omitted
2358
2359         Already covered by existing tests (that had incorrect results).
2360
2361         * loader/FrameLoader.cpp: (WebCore::FrameLoader::requestObject): Return false to indicate
2362         failure when both URL and MIME type are empty. The old code would not attempt a load, but
2363         it would indicate success.
2364
2365         * rendering/RenderPartObject.cpp: (WebCore::RenderPartObject::updateWidget): Remove
2366         non-helpful early exit for the case where there is no URL and no type. Returning early
2367         prevents the fallback code from running.
2368
2369 2007-11-02  Alp Toker  <alp@atoker.com>
2370
2371         Reviewed by Darin.
2372
2373         Include Cairo headers properly
2374
2375         * platform/graphics/AffineTransform.h:
2376         * platform/graphics/ImageBuffer.h:
2377         * platform/graphics/cairo/AffineTransformCairo.cpp:
2378         * platform/gtk/FontPlatformDataGtk.cpp:
2379
2380 2007-11-01  Oliver Hunt  <oliver@apple.com>
2381
2382         Reviewed by Alexey.
2383
2384         Make sure we send the correct events for Capslock, Shift, Ctrl, Alt and the Windows key        
2385
2386         * platform/win/KeyEventWin.cpp:
2387         (WebCore::keyIdentifierForWindowsKeyCode):
2388         (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
2389
2390 2007-11-01  Geoffrey Garen  <ggaren@apple.com>
2391
2392         Reviewed by Maciej Stachowiak.
2393         
2394         In preparation for making List a simple stack-allocated Vector:
2395
2396         Removed all instances of List copying, assignment, and/or storage.
2397         
2398         Layout tests and JS tests pass.
2399
2400         * bindings/js/kjs_window.cpp:
2401         (KJS::WindowFunc::callAsFunction): Stores a Vector of protected 
2402         JSValue*'s instead of a List now. Converts to List on the fly when 
2403         calling the timer function. This is slightly less efficient, but the 
2404         common case is 0-2 arguments, so it's no biggie.
2405
2406         (HTML iBench shows no regression. PLT does not use JS timers.)
2407         
2408         (KJS::ScheduledAction::execute): Uses the more efficient and non-copying
2409         List::slice now.
2410         (KJS::ScheduledAction::ScheduledAction): ditto
2411
2412         * bindings/objc/WebScriptObject.mm:
2413         (getListFromNSArray): Takes a List out parameter now, to avoid copying.
2414
2415 2007-11-01  Oliver Hunt  <oliver@apple.com>
2416
2417         Reviewed by Geoff.
2418
2419         Correct event behaviour on certain control keys
2420
2421         Make sure we send the correct keyDown and keyUp events for the
2422         control keys CapsLock, Shift, Ctrl, Alt, and Meta/Command, and
2423         uses Windows key codes for the event keyCode.
2424
2425         * WebCore.base.exp:
2426         * page/EventHandler.cpp:
2427         (WebCore::EventHandler::keyEvent):
2428         * platform/PlatformKeyboardEvent.h:
2429         * platform/gtk/KeyEventGtk.cpp:
2430         (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
2431         * platform/mac/KeyEventMac.mm:
2432         (WebCore::keyIdentifierForKeyEvent):
2433         (WebCore::WindowsKeyCodeForKeyEvent):
2434         (WebCore::isKeyUpEvent):
2435         (WebCore::textFromEvent):
2436         (WebCore::unmodifiedTextFromEvent):
2437         (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
2438         * platform/win/KeyEventWin.cpp:
2439         (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
2440         * platform/wx/KeyEventWin.cpp:
2441         (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
2442
2443 2007-11-01  Timothy Hatcher  <timothy@apple.com>
2444
2445         Reviewed by Sam.
2446
2447         * page/inspector/inspector.css: Use the white disclosure triangles
2448           when a parent DOM element is sepected.
2449
2450 2007-11-01  Justin Garcia  <justin.garcia@apple.com>
2451
2452         Reviewed by Oliver Hunt.
2453
2454         <rdar://problem/5195056> Huge plain text pastes are slow, time spent in ApplyStyleCommand::doApply
2455
2456         * editing/ReplaceSelectionCommand.cpp:
2457         (WebCore::ReplaceSelectionCommand::doApply): No need to match style when pasting
2458         into a plaintext-only region, since when we build the fragment to insert from
2459         plain text, we don't put any style information on it, so it will automatically
2460         match style with no intervention.
2461         * editing/markup.cpp:
2462         (WebCore::createFragmentFromText): Place paragraphs into clones of the
2463         block being inserted into, instead of default paragraph elements,
2464         so that when inserted content will match the surrounding paragraph style.
2465         This was broken before, but I haven't added a layout test yet because
2466         there currently isn't a way to get only plain text onto the pasteboard
2467         in a layout test.
2468
2469 2007-11-01  Sam Weinig  <sam@webkit.org>
2470
2471         Reviewed by Adam Roben. 
2472
2473         Add a releaseRef method to COMPtr which matches the behavior
2474         of the method by the same name in PassRefPtr.  This is in
2475         preparation of adding autogenerated COM DOM bindings.
2476
2477         * platform/win/COMPtr.h:
2478         (COMPtr::releaseRef):
2479
2480 2007-11-01  Kevin Ollivier  <kevino@theolliviers.com>
2481
2482         wx impl. for DragController and EventHandler interfaces.
2483
2484         Reviewed by Adam Roben.
2485
2486         * page/wx: Added.
2487         * page/wx/DragControllerWx.cpp: Added.
2488         (WebCore::DragController::isCopyKeyDown):
2489         (WebCore::DragController::dragOperation):
2490         (WebCore::DragController::maxDragImageSize):
2491         * page/wx/EventHandlerWx.cpp: Added.
2492         (WebCore::EventHandler::passMousePressEventToSubframe):
2493         (WebCore::EventHandler::passMouseMoveEventToSubframe):
2494         (WebCore::EventHandler::passMouseReleaseEventToSubframe):
2495         (WebCore::EventHandler::passMousePressEventToScrollbar):
2496         (WebCore::EventHandler::passWidgetMouseDownEventToWidget):
2497         (WebCore::EventHandler::focusDocumentView):
2498         (WebCore::EventHandler::eventActivatedView):
2499         (WebCore::EventHandler::createDraggingClipboard):
2500
2501 2007-11-01  Kevin Ollivier  <kevino@theolliviers.com>
2502
2503         Adding files for wx impl. of editing interfaces.
2504
2505         Reviewed by Adam Roben.
2506
2507         * editing/wx: Added.
2508         * editing/wx/EditorWx.cpp: Added.
2509         (WebCore::Editor::newGeneralClipboard):
2510
2511 2007-11-01  Sam Weinig  <sam@webkit.org>
2512
2513         Reviewed by Adam Roben.
2514
2515         Make implicit conversions from LPCSTRs and BSTRs to WebCore string
2516         types possible in preparation of adding autogenerated COM DOM bindings.
2517
2518         * platform/AtomicString.cpp: 
2519         (WebCore::AtomicString::add):
2520         * platform/AtomicString.h:
2521         (WebCore::AtomicString::AtomicString):
2522         * platform/PlatformString.h:
2523         * platform/win/BString.cpp:
2524         (WebCore::BString::BString):
2525         * platform/win/BString.h:
2526
2527 2007-11-01  Brady Eidson  <beidson@apple.com>
2528
2529         Reviewed by Anders
2530
2531         Renamed a flag inside of SQLiteTransaction and added an accessor (for future work)
2532
2533         * platform/sql/SQLiteTransaction.cpp:
2534         (WebCore::SQLiteTransaction::SQLiteTransaction):
2535         (WebCore::SQLiteTransaction::~SQLiteTransaction):
2536         (WebCore::SQLiteTransaction::begin):
2537         (WebCore::SQLiteTransaction::commit):
2538         (WebCore::SQLiteTransaction::rollback):
2539         * platform/sql/SQLiteTransaction.h:
2540         (WebCore::SQLiteTransaction::inProgress):
2541
2542 2007-11-01  Adam Roben  <aroben@apple.com>
2543
2544         Remove all duplicate xcopy commands from WebCore's post-build step
2545
2546         Also add the /d option to the copy of platform/sql.
2547
2548         Rubberstamped by Sam.
2549
2550         * WebCore.vcproj/WebCore.vcproj:
2551
2552 2007-11-01  Adele Peterson  <adele@apple.com>
2553
2554         Reviewed by Maciej.
2555
2556         Add support for the animation of the -webkit-border-raduis properties.
2557
2558         * page/AnimationController.cpp:
2559         (WebCore::blendFunc): Added for IntSize.
2560         (WebCore::ImplicitAnimation::animate): Added cases for border radius properties.
2561
2562 2007-11-01  Alp Toker  <alp@atoker.com>
2563
2564         Reviewed by Mitz Pettel.
2565
2566         Fix an unbalanced save/restore.
2567
2568         * platform/graphics/cg/ImageCG.cpp:
2569         (WebCore::BitmapImage::draw):
2570
2571 2007-11-01  David Hyatt  <hyatt@apple.com>
2572
2573         Add support for the animation of the visibility property.
2574
2575         Reviewed by oliver, aroben
2576
2577         * page/AnimationController.cpp:
2578         (WebCore::blendFunc):
2579         (WebCore::ImplicitAnimation::animate):
2580
2581 2007-11-01  Kevin McCullough  <kmccullough@apple.com>
2582
2583         Reviewed by Adam.
2584
2585         - Made COMPtr be able to be used by certain other templates,
2586         specifically HashSet.
2587
2588         * platform/win/COMPtr.h:
2589         (WTF::):
2590
2591 2007-11-01  Dan Bernstein  <mitz@apple.com>
2592
2593         Reviewed by Dave Hyatt.
2594
2595         - fix http://bugs.webkit.org/show_bug.cgi?id=15015
2596           <rdar://problem/5420308> Most of www.aol.com redraws unnecessarily when headline/photo section changes
2597
2598         Test: fast/repaint/overflow-clip-subtree-layout.html
2599
2600         This patch does not address the bigger issue of doing a full relayout
2601         of inline flows containing floats, but it addresses the problem on
2602         aol.com, where the changes that trigger layout are confined to an
2603         overflow area inside the float.
2604
2605         * page/FrameView.cpp:
2606         (WebCore::FrameView::scheduleRelayoutOfSubtree): If the new and old
2607         layout roots are different but one descends from the other, make (or
2608         keep) the ancestor as the layout root.
2609         * rendering/RenderObject.cpp:
2610         (WebCore::objectIsRelayoutBoundary): Made boxes with overflow
2611         clipping and non-auto width and height relayout boundaries.
2612
2613 2007-11-01  Alexey Proskuryakov  <ap@webkit.org>
2614
2615         Reviewed by Mark Rowe.
2616
2617         Fixed line endings that got confused in this file somehow.
2618
2619         * platform/network/ResourceResponse.cpp:
2620         (WebCore::ResourceResponse::isAttachment):
2621
2622 2007-11-01  Peter Kasting  <zerodpx@gmail.com>
2623
2624         Reviewed by Dave Hyatt.
2625
2626         http://bugs.webkit.org/show_bug.cgi?id=15778
2627         Malformed GIFs should not result in memory corruption.
2628
2629         * platform/image-decoders/gif/GIFImageDecoder.cpp:
2630         (WebCore::GIFImageDecoder::haveDecodedRow):
2631         * platform/image-decoders/gif/GIFImageReader.cpp:
2632         (GIFImageReader::output_row):
2633         (GIFImageReader::read):
2634
2635 2007-10-31  Adam Roben  <aroben@apple.com>
2636
2637         Fix a crash when parsing a cubic-bezier function
2638
2639         Reviewed by Hyatt.
2640
2641         Test: fast/css/parse-timing-function-crash.html
2642
2643         * WebCore.vcproj/WebCore.vcproj:
2644         * css/CSSParser.cpp:
2645         (WebCore::CSSParser::parseTimingFunctionValue): Don't walk off the end
2646         of the ValueList.
2647
2648 2007-10-31  David Hyatt  <hyatt@apple.com>
2649
2650         Fix a merge error from when I applied my patch to ToT.  A couple of lines should be part of an if.
2651
2652         * rendering/RenderStyle.cpp:
2653         (WebCore::RenderStyle::adjustTransitions):
2654
2655 2007-10-31  Anders Carlsson  <andersca@apple.com>
2656
2657         Reviewed by Sam.
2658
2659         Add new SQL callback interfaces and JS implementations of them.
2660         
2661         * DerivedSources.make:
2662         * WebCore.xcodeproj/project.pbxproj:
2663         * bindings/js/JSCustomSQLStatementCallback.cpp: Added.
2664         (WebCore::JSCustomSQLStatementCallback::JSCustomSQLStatementCallback):
2665         (WebCore::JSCustomSQLStatementCallback::handleEvent):
2666         * bindings/js/JSCustomSQLStatementCallback.h: Added.
2667         * bindings/js/JSCustomSQLStatementErrorCallback.cpp: Added.
2668         (WebCore::JSCustomSQLStatementErrorCallback::JSCustomSQLStatementErrorCallback):
2669         (WebCore::JSCustomSQLStatementErrorCallback::handleEvent):
2670         * bindings/js/JSCustomSQLStatementErrorCallback.h: Added.
2671         * bindings/js/JSCustomSQLTransactionCallback.cpp: Added.
2672         (WebCore::JSCustomSQLTransactionCallback::JSCustomSQLTransactionCallback):
2673         (WebCore::JSCustomSQLTransactionCallback::handleEvent):
2674         * bindings/js/JSCustomSQLTransactionCallback.h: Added.
2675         * bindings/js/JSCustomSQLTransactionErrorCallback.cpp: Added.
2676         (WebCore::JSCustomSQLTransactionErrorCallback::JSCustomSQLTransactionErrorCallback):
2677         (WebCore::JSCustomSQLTransactionErrorCallback::handleEvent):
2678         * bindings/js/JSCustomSQLTransactionErrorCallback.h: Added.
2679         * storage/JSCustomSQLStatementCallback.h: Added.
2680         * storage/JSCustomSQLStatementErrorCallback.h: Added.
2681         * storage/JSCustomSQLTransactionCallback.h: Added.
2682         * storage/JSCustomSQLTransactionErrorCallback.h: Added.
2683         * storage/SQLStatementCallback.h: Added.
2684         (WebCore::SQLStatementCallback::~SQLStatementCallback):
2685         * storage/SQLStatementCallback.idl: Added.
2686         * storage/SQLStatementErrorCallback.h: Added.
2687         (WebCore::SQLStatementErrorCallback::~SQLStatementErrorCallback):
2688         * storage/SQLStatementErrorCallback.idl: Added.
2689         * storage/SQLTransaction.h: Added.
2690         * storage/SQLTransaction.idl: Added.
2691         * storage/SQLTransactionCallback.h: Added.
2692         (WebCore::SQLTransactionCallback::~SQLTransactionCallback):
2693         * storage/SQLTransactionCallback.idl: Added.
2694         * storage/SQLTransactionErrorCallback.h: Added.
2695         (WebCore::SQLTransactionErrorCallback::~SQLTransactionErrorCallback):
2696         * storage/SQLTransactionErrorCallback.idl: Added.
2697
2698 2007-10-31  Justin Garcia  <justin.garcia@apple.com>
2699
2700         Reviewed by Dave Harrison.
2701
2702         <rdar://problem/5569741> Pasting content with a line break into a list can remove the list
2703
2704         * editing/htmlediting.cpp:
2705         (WebCore::enclosingEmptyListItem): A single list item can contain multiple 
2706         paragraphs, so if the incoming VisiblePosition is in an empty paragraph in a 
2707         list item, that list item isn't necessarily empty.
2708
2709 2007-10-31  David Hyatt  <hyatt@apple.com>
2710
2711         Disable style sharing for animating styles.
2712
2713         Reviewed by mitzpettel
2714
2715         * css/CSSStyleSelector.cpp:
2716         (WebCore::CSSStyleSelector::canShareStyleWithElement):
2717
2718 2007-10-31  Dan Bernstein  <mitz@apple.com>
2719
2720         Reviewed by Darin Adler.
2721
2722         - fix intermediate length calculation
2723
2724         * rendering/Length.h:
2725         (WebCore::Length::blend):
2726
2727 2007-10-31  Anders Carlsson  <andersca@apple.com>
2728
2729         Reviewed by Darin.
2730
2731         Add new SQLError implementation.
2732         
2733         * DerivedSources.make:
2734         * WebCore.vcproj/WebCore.vcproj:
2735         * WebCore.xcodeproj/project.pbxproj:
2736         * storage/SQLError.h: Added.
2737         (WebCore::SQLError::SQLError):
2738         (WebCore::SQLError::code):
2739         (WebCore::SQLError::message):
2740         * storage/SQLError.idl: Added.
2741
2742 2007-10-31  David Hyatt  <hyatt@apple.com>
2743
2744         Change the initial value of transition-property to all.  Change the initial value of
2745         transition-duration to 0.
2746
2747         Reviewed by antti
2748
2749         * rendering/RenderStyle.h:
2750         (WebCore::RenderStyle::initialTransitionDuration):
2751         (WebCore::RenderStyle::initialTransitionProperty):
2752
2753 2007-10-31  Alp Toker  <alp@atoker.com>
2754
2755         Reviewed by Mark Rowe.
2756
2757         The new Color must be marked valid.
2758
2759         * platform/graphics/gtk/ColorGtk.cpp:
2760
2761 2007-10-31  Simon Hausmann  <hausmann@kde.org>
2762
2763         Reviewed by Maciej;
2764
2765         Build fix for non-Qt builds.
2766
2767         * dom/XMLTokenizer.cpp:
2768         (WebCore::XMLTokenizer::XMLTokenizer):
2769
2770 2007-10-31  Simon Hausmann  <hausmann@kde.org>
2771
2772         Reviewed by Lars.
2773
2774         Fix dependency path to header files of the public API of the Qt port.
2775
2776         * WebCore.pro:
2777
2778 2007-10-31  Holger Freyther  <zecke@selfish.org>
2779
2780         Reviewed by Simon.
2781
2782         * QXmlStreamNamespaceDeclaration doesn't have the constructor we
2783         want to use for Qt4.3. Reenable the old code path which is likely
2784         to be dead as I have not checked if m_prefixToNamespaceMap is actually
2785         used.
2786         * Guard the entity resolver with the QT_VERSION as well.
2787         * Partially reverts 369506279abdaa863e15efed649ca19e062f2c30 and
2788         d2b54d0fc1b07a2480f4f7a1417abd7a636b0107 for Qt4.3.
2789
2790         * dom/XMLTokenizer.cpp:
2791         (WebCore::XMLTokenizer::XMLTokenizer):
2792         * dom/XMLTokenizer.h:
2793
2794 2007-10-31  Holger Freyther  <zecke@selfish.org>
2795
2796         Reviewed by Lars Knoll <lars@trolltech.com>.
2797
2798         * QMimeData::removeData will be new in Qt4.4, don't use it for Qt4.3 
2799         * Provide a bad fallback implementation to filter the format list.
2800
2801         * platform/qt/ClipboardQt.cpp:
2802         (WebCore::ClipboardQt::clearData):
2803
2804 2007-10-31  Lars Knoll  <lars@trolltech.com>
2805
2806         Reviewed by Simon.
2807
2808         add an entitiy resolver to QXmlStream.
2809         Fixes fast/parser/entities-in-attributes.xhtml.
2810
2811         * dom/XMLTokenizer.cpp:
2812         (WebCore::EntityResolver::resolveUndeclaredEntity):
2813         (WebCore::XMLTokenizer::XMLTokenizer):
2814         (WebCore::XMLTokenizer::~XMLTokenizer):
2815
2816 2007-10-31  Lars Knoll  <lars@trolltech.com>
2817
2818         Reviewed by Simon.
2819
2820         Fixes in the XML tokenizer when using QXmlStream.
2821         
2822         Use new functionality of QXmlStream in Qt 4.4 to simplify
2823         the code (but keep the old code for now to still support Qt 4.3).
2824         
2825         Add proper support for namespace handling when parsing into
2826         a document fragment.
2827
2828         * dom/XMLTokenizer.cpp:
2829         (WebCore::XMLTokenizer::XMLTokenizer):
2830         (WebCore::XMLTokenizer::write):
2831         (WebCore::XMLTokenizer::startElementNs):
2832         (WebCore::):
2833         * dom/XMLTokenizer.h:
2834
2835 2007-10-31  Lars Knoll  <lars@trolltech.com>
2836
2837         Reviewed by Simon.
2838
2839         add support for dragging images.
2840
2841         * platform/DragImage.h:
2842         * platform/qt/ClipboardQt.cpp:
2843         (WebCore::ClipboardQt::clearData):
2844         (WebCore::ClipboardQt::setDragImage):
2845         (WebCore::ClipboardQt::setDragImageElement):
2846         (WebCore::ClipboardQt::createDragImage):
2847         (WebCore::getCachedImage):
2848         (WebCore::ClipboardQt::declareAndWriteDragImage):
2849         * platform/qt/ClipboardQt.h:
2850
2851 2007-10-31  Lars Knoll  <lars@trolltech.com>
2852
2853         Reviewed by Simon.
2854
2855         fix most of the issues I found with Clipboard and DnD.
2856
2857         * editing/qt/EditorQt.cpp:
2858         * platform/qt/ClipboardQt.cpp:
2859         (WebCore::ClipboardQt::ClipboardQt):
2860         (WebCore::ClipboardQt::~ClipboardQt):
2861         (WebCore::ClipboardQt::clearData):
2862         (WebCore::ClipboardQt::clearAllData):
2863         (WebCore::ClipboardQt::getData):
2864         (WebCore::ClipboardQt::setData):
2865         (WebCore::ClipboardQt::types):
2866         (WebCore::ClipboardQt::setDragImage):
2867         (WebCore::ClipboardQt::setDragImageElement):
2868         (WebCore::ClipboardQt::declareAndWriteDragImage):
2869         (WebCore::ClipboardQt::writeURL):
2870         (WebCore::ClipboardQt::writeRange):
2871         (WebCore::ClipboardQt::hasData):
2872         * platform/qt/ClipboardQt.h:
2873         * platform/qt/DragDataQt.cpp:
2874         (WebCore::DragData::asURL):
2875
2876 2007-10-30  Mark Rowe  <mrowe@apple.com>
2877
2878         Fix the Gtk and Qt builds by stubbing out PlatformKeyboardEvent::currentCapsLockState.
2879
2880         * platform/gtk/KeyEventGtk.cpp:
2881         (WebCore::PlatformKeyboardEvent::currentCapsLockState):
2882         * platform/qt/PlatformKeyboardEventQt.cpp:
2883         (WebCore::PlatformKeyboardEvent::currentCapsLockState):
2884
2885 2007-10-31  Alexey Proskuryakov  <ap@webkit.org>
2886
2887         Reviewed by Anders.
2888
2889         http://bugs.webkit.org/show_bug.cgi?id=15762
2890         XSLStylesheet loads subresources from a wrong URL
2891
2892         Covered by corrected existing tests.
2893
2894         * xml/XSLStyleSheet.cpp:
2895         (WebCore::XSLStyleSheet::parseString): Pass stylesheet URL, not
2896         the document one.
2897
2898 2007-10-31  Alexey Proskuryakov  <ap@webkit.org>
2899
2900         Reviewed by Darin.
2901
2902         http://bugs.webkit.org/show_bug.cgi?id=10818
2903         String::append does 2 full copies instead of 1 (or zero!)
2904
2905         No change in functionality, thus no test.
2906
2907         * platform/String.cpp:
2908         (WebCore::String::append): Rewrote to copy once. Also removed an ancient
2909         FIXME that doesn't seem to make any sense. Note that append() behavior doesn't 
2910         match documented String behavior ("modifications to one instance will
2911         also modify all others"), but there are a lot of methods that don't.
2912
2913 2007-10-31  Adam Roben  <aroben@apple.com>
2914
2915         Windows build fix
2916
2917         * WebCore.vcproj/WebCore.vcproj: Add [JS]ProgressEvent.{cpp,h} files.
2918
2919 2007-10-30  Adam Roben  <aroben@apple.com>
2920
2921         Windows build fixes
2922
2923         I'm not completely sure why these const issues weren't caught by GCC,
2924         but MSVC was certainly not happy with them.
2925
2926         * editing/IndentOutdentCommand.cpp:
2927         (WebCore::isIndentBlockquote):
2928         * editing/markup.cpp:
2929         (WebCore::styleFromMatchedRulesAndInlineDecl):
2930
2931 2007-10-30  David Hyatt  <hyatt@apple.com>
2932
2933         transition-property was defaulting to all when it should default to none.  
2934
2935         It was taking a string type.  I figured out how to make it take an ident instead, so you can write:
2936
2937         transition-property: opacity
2938
2939         instead of
2940
2941         transition-property: "opacity"
2942
2943         Transition layers also weren't properly repeating patterns the way they were supposed to.  I fixed that.
2944
2945         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.
2946
2947         Reviewed by aroben
2948
2949         * css/CSSHelper.h:
2950         * css/CSSParser.cpp:
2951         (WebCore::CSSParser::parseTransitionProperty):
2952         * css/CSSStyleSelector.cpp:
2953         (WebCore::CSSStyleSelector::adjustRenderStyle):
2954         * page/AnimationController.cpp:
2955         (WebCore::ImplicitAnimation::animate):
2956         * rendering/RenderStyle.cpp:
2957         (WebCore::RenderStyle::adjustTransitions):
2958         * rendering/RenderStyle.h:
2959         (WebCore::RenderStyle::initialTransitionProperty):
2960
2961 2007-10-30  Antti Koivisto  <antti@apple.com>
2962
2963         Reviewed by Geoff.
2964
2965         Leak fix
2966
2967         * platform/graphics/mac/MoviePrivateQTKit.mm:
2968         (WebCore::MoviePrivate::getSupportedTypes):
2969
2970 2007-10-30  Dan Bernstein  <mitz@apple.com>
2971
2972         Reviewed by Stephanie Lewis.
2973
2974         - fix <rdar://problem/5547237> REGRESSION (304-ToT): Repro font-related crash in fontdatawin.cpp Line 93 (many sites)
2975
2976         * platform/win/FontDataWin.cpp:
2977         (WebCore::FontData::platformInit): Handle the case where the font has no
2978         glyphs on page zero.
2979
2980 2007-10-30  David Hyatt  <hyatt@apple.com>
2981
2982         Make sure CSS transforms can be animated using the CSS transition property.
2983
2984         Reviewed by Dan and Antti
2985
2986         * css/CSSStyleSelector.cpp:
2987         (WebCore::CSSStyleSelector::applyProperty):
2988         * page/AnimationController.cpp:
2989         (WebCore::blendFunc):
2990         (WebCore::ImplicitAnimation::animate):
2991         * rendering/Length.h:
2992         (WebCore::Length::blend):
2993         * rendering/RenderStyle.cpp:
2994         (WebCore::StyleTransformData::operator==):
2995         (WebCore::TransformOperations::operator==):
2996         (WebCore::blendLengths):
2997         (WebCore::ScaleTransformOperation::blend):
2998         (WebCore::RotateTransformOperation::blend):
2999         (WebCore::SkewTransformOperation::blend):
3000         (WebCore::TranslateTransformOperation::blend):
3001         (WebCore::MatrixTransformOperation::blend):
3002         * rendering/RenderStyle.h:
3003         (WebCore::TransformOperations::operator!=):
3004         (WebCore::TransformOperations::isEmpty):
3005         (WebCore::TransformOperations::size):
3006         (WebCore::TransformOperations::operator[]):
3007         (WebCore::TransformOperations::append):
3008         (WebCore::RenderStyle::transform):
3009         (WebCore::RenderStyle::setTransform):
3010         (WebCore::RenderStyle::initialTransform):
3011
3012 2007-10-30  Antti Koivisto  <antti@apple.com>
3013
3014         Another Qt/GTK build fix.
3015
3016         * bindings/js/JSHTMLElementWrapperFactory.cpp:
3017
3018 2007-10-30  Antti Koivisto  <antti@apple.com>
3019
3020         Attempt to fix Qt/GTK build.
3021
3022         * WebCore.pro:
3023
3024 2007-10-30  Justin Garcia  <justin.garcia@apple.com>
3025
3026         Reviewed by Darin Adler.
3027
3028         <rdar://problem/5549929> CrashTracer: [USER] 35 crashes at WebCore::CharacterData::insertData
3029         
3030         We were trying to insert a tab into a br, after the br incorrectly ended up inside
3031         a tab span.
3032         
3033         * editing/DeleteButtonController.cpp: 
3034         (WebCore::isDeletableElement): Changed to take in a const Node* instead of a Node*.
3035         * editing/DeleteSelectionCommand.cpp:
3036         (WebCore::isTableRow): Ditto.
3037         * editing/IndentOutdentCommand.cpp:
3038         (WebCore::isIndentBlockquote): Ditto.
3039         (WebCore::isListOrIndentBlockquote): Ditto.
3040         * editing/InsertLineBreakCommand.cpp:
3041         (WebCore::InsertLineBreakCommand::shouldUseBreakElement): Added, moved code from
3042         doApply here.
3043         (WebCore::InsertLineBreakCommand::doApply): 
3044         Don't upstream() the insertion position.  upstream()ing it will only have an effect
3045         when the insertion position is the first in its paragraph (since we canonicalize
3046         VisiblePositions to the upstream() candidate).  In this start of paragraph case, 
3047         upstream() can move outside inline elements like tab spans or elements that might
3048         have a different whitespace mode (added two test cases to cover these).
3049         Moved code to decide whether to insert a br or a '\n' to its own method.
3050         Removed special case code for inserting at a position inside a tab span.  We instead
3051         adjust the insertion position before insertion if it is inside a tab span and
3052         handle insertion in the appropriate if-block.  This fixes a bug where we would 
3053         only insert one line break when two were needed (added a testcase).
3054         Removed special case code for inserting before and after tables and horizontal
3055         rules.  We handle these insertions in the appropriate if-block.
3056         * editing/InsertLineBreakCommand.h:
3057         * editing/ReplaceSelectionCommand.cpp:
3058         (WebCore::isMailPasteAsQuotationNode): Change to take in a const Node*.
3059         * editing/htmlediting.cpp:
3060         (WebCore::isContentEditable): Ditto.
3061         (WebCore::isBlock): Ditto.
3062         (WebCore::enclosingNodeOfType): Changed to take a function pointer to a function
3063         that takes in a const Node*.
3064         (WebCore::isTabSpanTextNode): Check to see that the node actually a text node,
3065         and not, say, a br.
3066         * editing/htmlediting.h:
3067         * editing/markup.cpp:
3068         (WebCore::styleFromMatchedRulesAndInlineDecl): Changed to take in a const Node*.
3069         (WebCore::elementHasTextDecorationProperty): Ditto.
3070
3071 2007-10-30  Antti Koivisto  <antti@apple.com>
3072
3073         Reviewed by NOBODY.
3074
3075         Add missing files.
3076
3077         * html/VoidCallback.cpp: Added.
3078         (VoidCallback::VoidCallback):
3079         (VoidCallback::~VoidCallback):
3080         (VoidCallback::handleEvent):
3081         (VoidCallback::execute):
3082         (VoidCallback::operator==):
3083         (WebCore::toVoidCallback):
3084         * html/VoidCallback.h: Added.
3085         * html/VoidCallback.idl: Added.
3086
3087 2007-10-30  David Kilzer  <ddkilzer@webkit.org>
3088
3089         Generated files missing from WebCore's Xcode project file
3090         <http://bugs.webkit.org/show_bug.cgi?id=15406>
3091
3092         Reviewed by Darin.
3093
3094         Added the following files to the Xcode project file (note that
3095         JSHTMLInputElementBaseTable.cpp is used as a header file):
3096
3097         - DOMCSSStyleSheetPrivate.h
3098         - DOMEventPrivate.h
3099         - DOMHTMLCollectionPrivate.h
3100         - DOMHTMLEmbedElementPrivate.h
3101         - DOMHTMLIFrameElementPrivate.h
3102         - DOMHTMLObjectElementPrivate.h
3103         - DOMHTMLSelectElementPrivate.h
3104         - DOMTextEventInternal.h
3105         - JSHTMLInputElementBaseTable.cpp
3106
3107         * DerivedSources.make: Removed DOMSVGException.h and JSSVGAnimatedPoints.h
3108         since their generated code was not used.
3109         * WebCore.xcodeproj/project.pbxproj: Added missing header files.
3110
3111 2007-10-29  Antti Koivisto  <antti@apple.com>
3112
3113         Rubber stamped by Adele.
3114
3115         Initial media (<video> and <audio>) support from feature branch and 
3116         QTKit based platform implementation.
3117         
3118         This will need to be updated to match current draft specification.
3119
3120         * Configurations/WebCore.xcconfig:
3121         * DerivedSources.make:
3122         * WebCore.base.exp:
3123         * WebCore.xcodeproj/project.pbxproj:
3124         * bindings/js/JSEventCustom.cpp:
3125         (WebCore::toJS):
3126         * bindings/js/JSHTMLAudioElementConstructor.cpp: Added.
3127         (WebCore::JSHTMLAudioElementConstructor::JSHTMLAudioElementConstructor):
3128         (WebCore::JSHTMLAudioElementConstructor::implementsConstruct):
3129         (WebCore::JSHTMLAudioElementConstructor::construct):
3130         * bindings/js/JSHTMLAudioElementConstructor.h: Added.
3131         * bindings/js/JSHTMLElementWrapperFactory.cpp:
3132         (WebCore::createJSHTMLWrapper):
3133         * bindings/js/kjs_window.cpp:
3134         (KJS::Window::getValueProperty):
3135         * bindings/js/kjs_window.h:
3136         (KJS::Window::):
3137         * bindings/scripts/CodeGeneratorJS.pm:
3138         * dom/Document.cpp:
3139         (WebCore::Document::createEvent):
3140         (WebCore::Document::willSaveToCache):
3141         (WebCore::Document::didRestoreFromCache):
3142         (WebCore::Document::registerForCacheCallbacks):
3143         (WebCore::Document::unregisterForCacheCallbacks):
3144         * dom/Document.h:
3145         * dom/Element.cpp:
3146         (WebCore::Element::setBooleanAttribute):
3147         * dom/Element.h:
3148         (WebCore::Element::willSaveToCache):
3149         * dom/Event.cpp:
3150         (WebCore::Event::isProgressEvent):
3151         * dom/Event.h:
3152         * dom/EventNames.h:
3153         * dom/EventTargetNode.cpp:
3154         (WebCore::EventTargetNode::dispatchProgressEvent):
3155         * dom/EventTargetNode.h:
3156         * dom/ProgressEvent.cpp: Added.
3157         (WebCore::ProgressEvent::ProgressEvent):
3158         (WebCore::ProgressEvent::initProgressEvent):
3159         (WebCore::ProgressEvent::initProgressEventNS):
3160         * dom/ProgressEvent.h: Added.
3161         (WebCore::ProgressEvent::lengthComputable):
3162         (WebCore::ProgressEvent::loaded):
3163         (WebCore::ProgressEvent::total):
3164         (WebCore::ProgressEvent::isProgressEvent):
3165         * dom/ProgressEvent.idl: Added.
3166         * history/CachedPage.cpp:
3167         (WebCore::CachedPage::CachedPage):
3168         * html/HTMLAttributeNames.in:
3169         * html/HTMLAudioElement.cpp: Added.
3170         (WebCore::HTMLAudioElement::HTMLAudioElement):
3171         * html/HTMLAudioElement.h: Added.
3172         (WebCore::HTMLAudioElement::tagPriority):
3173         * html/HTMLAudioElement.idl: Added.
3174         * html/HTMLElement.cpp:
3175         (WebCore::inlineTagList):
3176         * html/HTMLElementFactory.cpp:
3177         (WebCore::audioConstructor):
3178         (WebCore::videoConstructor):
3179         (WebCore::sourceConstructor):
3180         (WebCore::createFunctionMap):
3181         * html/HTMLInputElement.cpp:
3182         (WebCore::HTMLInputElement::~HTMLInputElement):
3183         (WebCore::HTMLInputElement::setInputType):
3184         (WebCore::HTMLInputElement::willMoveToNewOwnerDocument):
3185         (WebCore::HTMLInputElement::didMoveToNewOwnerDocument):
3186         * html/HTMLMediaElement.cpp: Added.
3187         (WebCore::HTMLMediaElement::HTMLMediaElement):
3188         (WebCore::HTMLMediaElement::~HTMLMediaElement):
3189         (WebCore::HTMLMediaElement::checkDTD):
3190         (WebCore::HTMLMediaElement::rendererIsNeeded):
3191         (WebCore::HTMLMediaElement::createRenderer):
3192         (WebCore::HTMLMediaElement::insertedIntoDocument):
3193         (WebCore::HTMLMediaElement::removedFromDocument):
3194         (WebCore::HTMLMediaElement::scheduleLoad):
3195         (WebCore::HTMLMediaElement::initAndDispatchProgressEvent):
3196         (WebCore::HTMLMediaElement::dispatchEventAsync):
3197         (WebCore::HTMLMediaElement::loadTimerFired):
3198         (WebCore::HTMLMediaElement::asyncEventTimerFired):
3199         (WebCore::serializeTimeOffset):
3200         (WebCore::parseTimeOffset):
3201         (WebCore::HTMLMediaElement::getTimeOffsetAttribute):
3202         (WebCore::HTMLMediaElement::setTimeOffsetAttribute):
3203         (WebCore::HTMLMediaElement::error):
3204         (WebCore::HTMLMediaElement::src):
3205         (WebCore::HTMLMediaElement::HTMLMediaElement::setSrc):
3206         (WebCore::HTMLMediaElement::currentSrc):
3207         (WebCore::HTMLMediaElement::networkState):
3208         (WebCore::HTMLMediaElement::bufferingRate):
3209         (WebCore::HTMLMediaElement::load):
3210         (WebCore::HTMLMediaElement::movieNetworkStateChanged):
3211         (WebCore::HTMLMediaElement::movieReadyStateChanged):
3212         (WebCore::HTMLMediaElement::setReadyState):
3213         (WebCore::HTMLMediaElement::progressEventTimerFired):
3214         (WebCore::HTMLMediaElement::seek):
3215         (WebCore::HTMLMediaElement::readyState):
3216         (WebCore::HTMLMediaElement::seeking):
3217         (WebCore::HTMLMediaElement::currentTime):
3218         (WebCore::HTMLMediaElement::setCurrentTime):
3219         (WebCore::HTMLMediaElement::duration):
3220         (WebCore::HTMLMediaElement::paused):
3221         (WebCore::HTMLMediaElement::defaultPlaybackRate):
3222         (WebCore::HTMLMediaElement::setDefaultPlaybackRate):
3223         (WebCore::HTMLMediaElement::playbackRate):
3224         (WebCore::HTMLMediaElement::setPlaybackRate):
3225         (WebCore::HTMLMediaElement::ended):
3226         (WebCore::HTMLMediaElement::autoplay):
3227         (WebCore::HTMLMediaElement::setAutoplay):
3228         (WebCore::HTMLMediaElement::play):
3229         (WebCore::HTMLMediaElement::pause):
3230         (WebCore::HTMLMediaElement::loopCount):
3231         (WebCore::HTMLMediaElement::setLoopCount):
3232         (WebCore::HTMLMediaElement::start):
3233         (WebCore::HTMLMediaElement::setStart):
3234         (WebCore::HTMLMediaElement::end):
3235         (WebCore::HTMLMediaElement::setEnd):
3236         (WebCore::HTMLMediaElement::loopStart):
3237         (WebCore::HTMLMediaElement::setLoopStart):
3238         (WebCore::HTMLMediaElement::loopEnd):
3239         (WebCore::HTMLMediaElement::setLoopEnd):
3240         (WebCore::HTMLMediaElement::currentLoop):
3241         (WebCore::HTMLMediaElement::setCurrentLoop):
3242         (WebCore::HTMLMediaElement::controls):
3243         (WebCore::HTMLMediaElement::setControls):
3244         (WebCore::HTMLMediaElement::volume):
3245         (WebCore::HTMLMediaElement::setVolume):
3246         (WebCore::HTMLMediaElement::muted):
3247         (WebCore::HTMLMediaElement::setMuted):
3248         (WebCore::HTMLMediaElement::pickMedia):
3249         (WebCore::HTMLMediaElement::checkIfSeekNeeded):
3250         (WebCore::HTMLMediaElement::movieVolumeChanged):
3251         (WebCore::HTMLMediaElement::movieDidEnd):
3252         (WebCore::HTMLMediaElement::movieCuePointReached):
3253         (WebCore::HTMLMediaElement::addCuePoint):
3254         (WebCore::HTMLMediaElement::removeCuePoint):
3255         (WebCore::HTMLMediaElement::buffered):
3256         (WebCore::HTMLMediaElement::played):
3257         (WebCore::HTMLMediaElement::seekable):
3258         (WebCore::HTMLMediaElement::effectiveStart):
3259         (WebCore::HTMLMediaElement::effectiveEnd):
3260         (WebCore::HTMLMediaElement::effectiveLoopStart):
3261         (WebCore::HTMLMediaElement::effectiveLoopEnd):
3262         (WebCore::HTMLMediaElement::activelyPlaying):
3263         (WebCore::HTMLMediaElement::endedPlayback):
3264         (WebCore::HTMLMediaElement::willSaveToCache):
3265         (WebCore::HTMLMediaElement::didRestoreFromCache):
3266         * html/HTMLMediaElement.h: Added.
3267         (WebCore::HTMLMediaElement::movie):
3268         (WebCore::HTMLMediaElement::isVideo):
3269         (WebCore::HTMLMediaElement::):
3270         (WebCore::HTMLMediaElement::CallbackEntry::CallbackEntry):
3271         * html/HTMLMediaElement.idl: Added.
3272         * html/HTMLSourceElement.cpp: Added.
3273         (WebCore::HTMLSourceElement::HTMLSourceElement):
3274         (WebCore::HTMLSourceElement::~HTMLSourceElement):
3275         (WebCore::HTMLSourceElement::insertedIntoDocument):
3276         (WebCore::HTMLSourceElement::src):
3277         (WebCore::HTMLSourceElement::setSrc):
3278         (WebCore::HTMLSourceElement::media):
3279         (WebCore::HTMLSourceElement::setMedia):
3280         (WebCore::HTMLSourceElement::type):
3281         (WebCore::HTMLSourceElement::setType):
3282         * html/HTMLSourceElement.h: Added.
3283         (WebCore::HTMLSourceElement::endTagRequirement):
3284         (WebCore::HTMLSourceElement::tagPriority):
3285         * html/HTMLSourceElement.idl: Added.
3286         * html/HTMLTagNames.in:
3287         * html/HTMLVideoElement.cpp: Added.
3288         (WebCore::HTMLVideoElement::HTMLVideoElement):
3289         (WebCore::HTMLVideoElement::videoWidth):
3290         (WebCore::HTMLVideoElement::videoHeight):
3291         * html/HTMLVideoElement.h: Added.
3292         (WebCore::HTMLVideoElement::tagPriority):
3293         (WebCore::HTMLVideoElement::isVideo):
3294         * html/HTMLVideoElement.idl: Added.
3295         * html/MediaError.h: Added.
3296         (WebCore::MediaError::):
3297         (WebCore::MediaError::MediaError):
3298         (WebCore::MediaError::code):
3299         * html/MediaError.idl: Added.
3300         * html/TimeRanges.cpp: Added.
3301         (TimeRanges::TimeRanges):
3302         (TimeRanges::start):
3303         (TimeRanges::end):
3304         (TimeRanges::add):
3305         (TimeRanges::contain):
3306         * html/TimeRanges.h: Added.
3307         (WebCore::TimeRanges::TimeRanges):
3308         (WebCore::TimeRanges::length):
3309         (WebCore::TimeRanges::Range::Range):
3310         * html/TimeRanges.idl: Added.
3311         * page/DOMWindow.idl:
3312         * platform/MIMETypeRegistry.cpp:
3313         (WebCore::initialiseSupportedMovieMIMETypes):
3314         (WebCore::initialiseMIMETypeRegistry):
3315         (WebCore::MIMETypeRegistry::isSupportedMovieMIMEType):
3316         (WebCore::MIMETypeRegistry::getSupportedMovieMIMETypes):
3317         * platform/MIMETypeRegistry.h:
3318         * platform/graphics/Movie.cpp: Added.
3319         (WebCore::Movie::Movie):
3320         (WebCore::Movie::~Movie):
3321         (WebCore::Movie::load):
3322         (WebCore::Movie::cancelLoad):
3323         (WebCore::Movie::play):
3324         (WebCore::Movie::pause):
3325         (WebCore::Movie::duration):
3326         (WebCore::Movie::currentTime):
3327         (WebCore::Movie::seek):
3328         (WebCore::Movie::paused):
3329         (WebCore::Movie::seeking):
3330         (WebCore::Movie::naturalSize):
3331         (WebCore::Movie::hasVideo):
3332         (WebCore::Movie::networkState):
3333         (WebCore::Movie::readyState):
3334         (WebCore::Movie::volume):
3335         (WebCore::Movie::setVolume):
3336         (WebCore::Movie::rate):
3337         (WebCore::Movie::setRate):
3338         (WebCore::Movie::muted):
3339         (WebCore::Movie::setMuted):
3340         (WebCore::Movie::dataRate):
3341         (WebCore::Movie::setEndTime):
3342         (WebCore::Movie::addCuePoint):
3343         (WebCore::Movie::removeCuePoint):
3344         (WebCore::Movie::clearCuePoints):
3345         (WebCore::Movie::maxTimeBuffered):
3346         (WebCore::Movie::maxTimeSeekable):
3347         (WebCore::Movie::bytesLoaded):
3348         (WebCore::Movie::totalBytesKnown):
3349         (WebCore::Movie::totalBytes):
3350         (WebCore::Movie::setRect):
3351         (WebCore::Movie::visible):
3352         (WebCore::Movie::setVisible):
3353         (WebCore::Movie::paint):
3354         (WebCore::Movie::getSupportedTypes):
3355         (WebCore::Movie::networkStateChanged):
3356         (WebCore::Movie::readyStateChanged):
3357         (WebCore::Movie::volumeChanged):
3358         (WebCore::Movie::didEnd):
3359         (WebCore::Movie::cuePointReached):
3360         * platform/graphics/Movie.h: Added.
3361         (WebCore::MovieClient::~MovieClient):
3362         (WebCore::MovieClient::movieNetworkStateChanged):
3363         (WebCore::MovieClient::movieReadyStateChanged):
3364         (WebCore::MovieClient::movieVolumeChanged):
3365         (WebCore::MovieClient::movieDidEnd):
3366         (WebCore::MovieClient::movieCuePointReached):
3367         (WebCore::Movie::parentWidget):
3368         (WebCore::Movie::setParentWidget):
3369         (WebCore::Movie::rect):
3370         (WebCore::Movie::):
3371         * platform/graphics/mac/MoviePrivateQTKit.h: Added.
3372         * platform/graphics/mac/MoviePrivateQTKit.mm: Added.
3373         (WebCore::MoviePrivate::MoviePrivate):
3374         (WebCore::MoviePrivate::~MoviePrivate):
3375         (WebCore::MoviePrivate::createQTMovie):
3376         (WebCore::MoviePrivate::createQTMovieView):
3377         (WebCore::MoviePrivate::createQTTime):
3378         (WebCore::MoviePrivate::load):
3379         (WebCore::MoviePrivate::play):
3380         (WebCore::MoviePrivate::pause):
3381         (WebCore::MoviePrivate::duration):
3382         (WebCore::MoviePrivate::currentTime):
3383         (WebCore::MoviePrivate::seek):
3384         (WebCore::MoviePrivate::setEndTime):
3385         (WebCore::MoviePrivate::addCuePoint):
3386         (WebCore::MoviePrivate::removeCuePoint):
3387         (WebCore::MoviePrivate::clearCuePoints):
3388         (WebCore::MoviePrivate::startCuePointTimerIfNeeded):
3389         (WebCore::MoviePrivate::cancelSeek):
3390         (WebCore::MoviePrivate::seekTimerFired):
3391         (WebCore::MoviePrivate::cuePointTimerFired):
3392         (WebCore::MoviePrivate::paused):
3393         (WebCore::MoviePrivate::seeking):
3394         (WebCore::MoviePrivate::naturalSize):
3395         (WebCore::MoviePrivate::hasVideo):
3396         (WebCore::MoviePrivate::setVolume):
3397         (WebCore::MoviePrivate::setMuted):
3398         (WebCore::MoviePrivate::setRate):
3399         (WebCore::MoviePrivate::dataRate):
3400         (WebCore::MoviePrivate::networkState):
3401         (WebCore::MoviePrivate::readyState):
3402         (WebCore::MoviePrivate::maxTimeBuffered):
3403         (WebCore::MoviePrivate::maxTimeSeekable):
3404         (WebCore::MoviePrivate::maxTimeLoaded):
3405         (WebCore::MoviePrivate::bytesLoaded):
3406         (WebCore::MoviePrivate::totalBytesKnown):
3407         (WebCore::MoviePrivate::totalBytes):
3408         (WebCore::MoviePrivate::cancelLoad):
3409         (WebCore::MoviePrivate::updateStates):
3410         (WebCore::MoviePrivate::loadStateChanged):
3411         (WebCore::MoviePrivate::rateChanged):
3412         (WebCore::MoviePrivate::sizeChanged):
3413         (WebCore::MoviePrivate::timeChanged):
3414         (WebCore::MoviePrivate::volumeChanged):
3415         (WebCore::MoviePrivate::didEnd):
3416         (WebCore::MoviePrivate::setRect):
3417         (WebCore::MoviePrivate::setVisible):
3418         (WebCore::MoviePrivate::paint):
3419         (WebCore::MoviePrivate::getSupportedTypes):
3420         (-[WebCoreMovieObserver loadStateChanged:]):
3421         (-[WebCoreMovieObserver rateChanged:]):
3422         (-[WebCoreMovieObserver sizeChanged:]):
3423         (-[WebCoreMovieObserver timeChanged:]):
3424         (-[WebCoreMovieObserver volumeChanged:]):
3425         (-[WebCoreMovieObserver didEnd:]):
3426         (-[WebCoreMovieObserver setCallback:WebCore::]):
3427         * platform/mac/WebCoreSystemInterface.h:
3428         * platform/mac/WebCoreSystemInterface.mm:
3429         * rendering/RenderLayer.cpp:
3430         (WebCore::RenderLayer::collectLayers):
3431         * rendering/RenderVideo.cpp: Added.
3432         (WebCore::RenderVideo::RenderVideo):
3433         (WebCore::RenderVideo::~RenderVideo):
3434         (WebCore::RenderVideo::movie):
3435         (WebCore::RenderVideo::videoSizeChanged):
3436         (WebCore::RenderVideo::paint):
3437         (WebCore::RenderVideo::layout):
3438         (WebCore::RenderVideo::updateFromElement):
3439         (WebCore::RenderVideo::updateMovie):
3440         (WebCore::RenderVideo::isWidthSpecified):
3441         (WebCore::RenderVideo::isHeightSpecified):
3442         (WebCore::RenderVideo::calcReplacedWidth):
3443         (WebCore::RenderVideo::calcReplacedHeight):
3444         (WebCore::RenderVideo::calcAspectRatioWidth):
3445         (WebCore::RenderVideo::calcAspectRatioHeight):
3446         (WebCore::RenderVideo::calcPrefWidths):
3447         * rendering/RenderVideo.h: Added.
3448         (WebCore::RenderVideo::renderName):
3449
3450 2007-10-30  Sam Weinig  <sam@webkit.org>
3451
3452         Reviewed by Adam Roben.
3453
3454         Add Interface and Class UUIDs to the IDLs in preparation of adding
3455         autogeneration of the COM DOM bindings.
3456
3457         * bindings/scripts/IDLParser.pm: Relax parsing rules to allow newlines as whitespace.
3458         * css/CSSCharsetRule.idl:
3459         * css/CSSFontFaceRule.idl:
3460         * css/CSSImportRule.idl:
3461         * css/CSSMediaRule.idl:
3462         * css/CSSPageRule.idl:
3463         * css/CSSPrimitiveValue.idl:
3464         * css/CSSRule.idl:
3465         * css/CSSRuleList.idl:
3466         * css/CSSStyleDeclaration.idl:
3467         * css/CSSStyleRule.idl:
3468         * css/CSSStyleSheet.idl:
3469         * css/CSSUnknownRule.idl:
3470         * css/CSSValue.idl:
3471         * css/CSSValueList.idl:
3472         * css/Counter.idl:
3473         * css/MediaList.idl:
3474         * css/RGBColor.idl:
3475         * css/Rect.idl:
3476         * css/StyleSheet.idl:
3477         * css/StyleSheetList.idl:
3478         * dom/Attr.idl:
3479         * dom/CDATASection.idl:
3480         * dom/CharacterData.idl:
3481         * dom/Comment.idl:
3482         * dom/DOMImplementation.idl:
3483         * dom/Document.idl:
3484         * dom/DocumentFragment.idl:
3485         * dom/DocumentType.idl:
3486         * dom/Element.idl:
3487         * dom/Entity.idl:
3488         * dom/EntityReference.idl:
3489         * dom/Event.idl:
3490         * dom/EventListener.idl:
3491         * dom/EventTarget.idl:
3492         * dom/NamedNodeMap.idl:
3493         * dom/Node.idl:
3494         * dom/NodeList.idl:
3495         * dom/Notation.idl:
3496         * dom/ProcessingInstruction.idl:
3497         * dom/Text.idl:
3498         * html/CanvasGradient.idl:
3499         * html/CanvasPattern.idl:
3500         * html/CanvasRenderingContext2D.idl:
3501         * html/HTMLAnchorElement.idl:
3502         * html/HTMLAppletElement.idl:
3503         * html/HTMLAreaElement.idl:
3504         * html/HTMLBRElement.idl:
3505         * html/HTMLBaseElement.idl:
3506         * html/HTMLBaseFontElement.idl:
3507         * html/HTMLBlockquoteElement.idl:
3508         * html/HTMLBodyElement.idl:
3509         * html/HTMLButtonElement.idl:
3510         * html/HTMLCanvasElement.idl:
3511         * html/HTMLCollection.idl:
3512         * html/HTMLDListElement.idl:
3513         * html/HTMLDirectoryElement.idl:
3514         * html/HTMLDivElement.idl:
3515         * html/HTMLDocument.idl:
3516         * html/HTMLElement.idl:
3517         * html/HTMLEmbedElement.idl:
3518         * html/HTMLFieldSetElement.idl:
3519         * html/HTMLFontElement.idl:
3520         * html/HTMLFormElement.idl:
3521         * html/HTMLFrameElement.idl:
3522         * html/HTMLFrameSetElement.idl:
3523         * html/HTMLHRElement.idl:
3524         * html/HTMLHeadElement.idl:
3525         * html/HTMLHeadingElement.idl:
3526         * html/HTMLHtmlElement.idl:
3527         * html/HTMLIFrameElement.idl:
3528         * html/HTMLImageElement.idl:
3529         * html/HTMLInputElement.idl:
3530         * html/HTMLIsIndexElement.idl:
3531         * html/HTMLLIElement.idl:
3532         * html/HTMLLabelElement.idl:
3533         * html/HTMLLegendElement.idl:
3534         * html/HTMLLinkElement.idl:
3535         * html/HTMLMapElement.idl:
3536         * html/HTMLMarqueeElement.idl:
3537         * html/HTMLMenuElement.idl:
3538         * html/HTMLMetaElement.idl:
3539         * html/HTMLModElement.idl:
3540         * html/HTMLOListElement.idl:
3541         * html/HTMLObjectElement.idl:
3542         * html/HTMLOptGroupElement.idl:
3543         * html/HTMLOptionElement.idl:
3544         * html/HTMLOptionsCollection.idl:
3545         * html/HTMLParagraphElement.idl:
3546         * html/HTMLParamElement.idl:
3547         * html/HTMLPreElement.idl:
3548         * html/HTMLQuoteElement.idl:
3549         * html/HTMLScriptElement.idl:
3550         * html/HTMLSelectElement.idl:
3551         * html/HTMLStyleElement.idl:
3552         * html/HTMLTableCaptionElement.idl:
3553         * html/HTMLTableCellElement.idl:
3554         * html/HTMLTableColElement.idl:
3555         * html/HTMLTableElement.idl:
3556         * html/HTMLTableRowElement.idl:
3557         * html/HTMLTableSectionElement.idl:
3558         * html/HTMLTextAreaElement.idl:
3559         * html/HTMLTitleElement.idl:
3560         * html/HTMLUListElement.idl:
3561
3562 2007-10-30  Adele Peterson  <adele@apple.com>
3563
3564         RS by Darin.
3565
3566         * page/AnimationController.cpp: (WebCore::blendFunc): Use lround instead of round.
3567
3568 2007-10-29  Timothy Hatcher  <timothy@apple.com>
3569
3570         Reviewed by John Sullivan.
3571
3572         - Allow showing and closing the inspector programatically.
3573         - Add showConsole() and showTimeline() methods. 
3574
3575         * WebCore.base.exp: Add exports for WebKit.
3576         * page/InspectorController.cpp:
3577         (WebCore::callSimpleFunction): Renamed from callClearFunction().
3578         (WebCore::unloading): Renamed to close().
3579         (WebCore::InspectorController::InspectorController):
3580         (WebCore::InspectorController::inspect): Moved showing code to show().
3581         (WebCore::InspectorController::setWindowVisible): Show the timeline or console if needed.
3582         (WebCore::InspectorController::show): Code factored out of inspect().
3583         (WebCore::InspectorController::showConsole): Call show() and the JS showConsole().
3584         (WebCore::InspectorController::showTimeline): Call show() and the JS showTimeline().
3585         (WebCore::InspectorController::close):
3586         (WebCore::InspectorController::clearScriptResources): Call the new callSimpleFunction.
3587         (WebCore::InspectorController::clearDatabaseScriptResources): Ditto.
3588         (WebCore::InspectorController::clearScriptConsoleMessages): Ditto.
3589         (WebCore::InspectorController::clearNetworkTimeline): Ditto.
3590         * page/InspectorController.h: Add and rename methods.
3591         * page/inspector/inspector.js: Add showConsole() and showTimeline().
3592
3593 2007-10-30  Adele Peterson  <adele@apple.com>
3594
3595         Reviewed by Sam.
3596
3597         Build fix.
3598
3599         * page/AnimationController.cpp: (WebCore::blendFunc):
3600
3601 2007-10-30  Adele Peterson  <adele@apple.com>
3602
3603         Reviewed by Darin.
3604
3605         WebCore part of fix for http://bugs.webkit.org/show_bug.cgi?id=10577
3606         <rdar://problem/5103625> REGRESSION: Caps lock icon should show in password fields
3607
3608         Test: manual-tests/password-caps-lock.html
3609
3610         * WebCore.base.exp: Added symbol for capsLockStateMayHaveChanged.
3611
3612         * page/Frame.cpp: (WebCore::Frame::setIsActive): Calls capsLockStateMayHaveChanged.
3613         * page/EventHandler.cpp: (WebCore::EventHandler::capsLockStateMayHaveChanged): Added. Tells the focused node's renderer that the capsLockStateMayHaveChanged.
3614         * page/EventHandler.h:
3615
3616         * platform/PlatformKeyboardEvent.h:
3617         * platform/mac/KeyEventMac.mm: (WebCore::PlatformKeyboardEvent::currentCapsLockState): Added.
3618         * platform/win/KeyEventWin.cpp: (WebCore::PlatformKeyboardEvent::currentCapsLockState): Added.
3619
3620         * rendering/RenderTextControl.cpp:
3621         (WebCore::RenderTextControl::RenderTextControl):
3622         (WebCore::RenderTextControl::paint): Added.  If m_shouldDrawCapsLockIndicator is true, paints the caps lock indicator after the background.
3623         (WebCore::RenderTextControl::forwardEvent): When the control gets and loses focus, update the caps lock state.
3624         (WebCore::RenderTextControl::capsLockStateMayHaveChanged): Added. Updates m_shouldDrawCapsLockIndicator, which is true if the field is a password field, 
3625          and the frame is active, and the element is focused, and the caps lock is on.  Causes a repaint when m_shouldDrawCapsLockIndicator changes state.
3626         * rendering/RenderTextControl.h: Added m_shouldDrawCapsLockIndicator.
3627         * rendering/RenderObject.h: (WebCore::RenderObject::capsLockStateMayHaveChanged): Added.
3628
3629         * rendering/RenderTheme.h: (WebCore::RenderTheme::paintCapsLockIndicator): Added.
3630         * rendering/RenderThemeMac.h:
3631         * rendering/RenderThemeMac.mm: (WebCore::RenderThemeMac::paintCapsLockIndicator): Added.  Calls wkDrawCapsLockIndicator.
3632         * rendering/RenderThemeSafari.cpp: (WebCore::RenderThemeSafari::paintCapsLockIndicator): Added.  Calls paintThemePart for the CapsLockPart.
3633         * rendering/RenderThemeSafari.h:
3634
3635 2007-10-30  David Hyatt  <hyatt@apple.com>
3636
3637         Land support for implicit animation in CSS.
3638
3639         Reviewed by mitz, darin
3640
3641         * css/CSSParser.cpp:
3642         (WebCore::CSSParser::parseTimingFunctionValue):
3643         (WebCore::CSSParser::parseTransitionTimingFunction):
3644         (WebCore::CSSParser::parseTransitionProperty):
3645         * css/CSSStyleSelector.cpp:
3646         (WebCore::CSSStyleSelector::mapTransitionDuration):
3647         (WebCore::CSSStyleSelector::mapTransitionRepeatCount):
3648         (WebCore::CSSStyleSelector::mapTransitionTimingFunction):
3649         (WebCore::CSSStyleSelector::mapTransitionProperty):
3650         * css/CSSTimingFunctionValue.h:
3651         (WebCore::CSSTimingFunctionValue::CSSTimingFunctionValue):
3652         (WebCore::CSSTimingFunctionValue::x1):
3653         (WebCore::CSSTimingFunctionValue::y1):
3654         (WebCore::CSSTimingFunctionValue::x2):
3655         (WebCore::CSSTimingFunctionValue::y2):
3656         * dom/Element.cpp:
3657         (WebCore::Element::styleForRenderer):
3658         (WebCore::Element::createRenderer):
3659         * dom/Node.cpp:
3660         (WebCore::Node::createRendererIfNeeded):
3661         (WebCore::Node::setRenderStyle):
3662         * page/AnimationController.cpp:
3663         (WebCore::CurveData::CurveData):
3664         (WebCore::CurveData::sampleCurveX):
3665         (WebCore::CurveData::sampleCurveY):
3666         (WebCore::CurveData::sampleCurveDerivativeX):
3667         (WebCore::CurveData::solveCurveX):
3668         (WebCore::solveEpsilon):
3669         (WebCore::solveCubicBezierFunction):
3670         (WebCore::ImplicitAnimation::finished):
3671         (WebCore::CompositeImplicitAnimation::~CompositeImplicitAnimation):
3672         (WebCore::CompositeImplicitAnimation::hasAnimationForProperty):
3673         (WebCore::ImplicitAnimation::ImplicitAnimation):
3674         (WebCore::ImplicitAnimation::~ImplicitAnimation):
3675         (WebCore::ImplicitAnimation::reset):
3676         (WebCore::ImplicitAnimation::progress):
3677         (WebCore::blendFunc):
3678         (WebCore::ImplicitAnimation::animate):
3679         (WebCore::CompositeImplicitAnimation::animate):
3680         (WebCore::CompositeImplicitAnimation::animating):
3681         (WebCore::CompositeImplicitAnimation::reset):
3682         (WebCore::AnimationControllerPrivate::hasImplicitAnimations):
3683         (WebCore::AnimationControllerPrivate::AnimationControllerPrivate):
3684         (WebCore::AnimationControllerPrivate::~AnimationControllerPrivate):
3685         (WebCore::AnimationControllerPrivate::get):
3686         (WebCore::AnimationControllerPrivate::clear):
3687         (WebCore::AnimationControllerPrivate::updateTimer):
3688         (WebCore::AnimationControllerPrivate::timerFired):
3689         (WebCore:::m_data):
3690         (WebCore::AnimationController::~AnimationController):
3691         (WebCore::AnimationController::cancelImplicitAnimations):
3692         (WebCore::AnimationController::updateImplicitAnimations):
3693         (WebCore::AnimationController::suspendAnimations):
3694         (WebCore::AnimationController::resumeAnimations):
3695         * page/AnimationController.h:
3696         * page/Frame.cpp:
3697         (WebCore::FramePrivate::FramePrivate):
3698         * rendering/RenderBox.cpp:
3699         (WebCore::RenderBox::setStyle):
3700         (WebCore::RenderBox::destroy):
3701         * rendering/RenderObject.cpp:
3702         (WebCore::RenderObject::setAnimatableStyle):
3703         (WebCore::RenderObject::destroy):
3704         * rendering/RenderObject.h:
3705         * rendering/RenderStyle.h:
3706         (WebCore::TimingFunction::TimingFunction):
3707         (WebCore::TimingFunction::operator==):
3708         (WebCore::TimingFunction::x1):
3709         (WebCore::TimingFunction::y1):
3710         (WebCore::TimingFunction::x2):
3711         (WebCore::TimingFunction::y2):
3712         (WebCore::TimingFunction::type):
3713         (WebCore::Transition::transitionProperty):
3714         (WebCore::Transition::setTransitionProperty):
3715         (WebCore::RenderStyle::initialTransitionProperty):
3716         * rendering/RenderWidget.cpp:
3717         (WebCore::RenderWidget::destroy):
3718
3719 2007-10-29  Beth Dakin  <bdakin@apple.com>
3720
3721         Reviewed by Hyatt.
3722
3723         Fix for <rdar://problem/5399614> anchor tag is not rendered without 
3724         text content, works in Firefox with CSS background-image (13237)
3725
3726         This patch allows empty inlines that have box decorations or width 
3727         from border/padding/margin to have line boxes.
3728
3729         * rendering/bidi.cpp:
3730         (WebCore::inlineFlowAllowsLineBox): Convenience function that 
3731         defines when we allow an inline flow to have a line box.
3732         (WebCore::requiresLineBox): Call inlineFlowAllowsLineBox.
3733         (WebCore::shouldSkipWhitespaceAfterStartObject): New function to 
3734         merge some shared code between list markers and empty inline flows 
3735         that fall at the beginning of a line.
3736         (WebCore::RenderBlock::findNextLineBreak): Make flows more like 
3737         list markers.
3738
3739         One interesting side effect of this bug appeared in our xhtml/svg 
3740         tests that generate parser error tags. The tag we generate was 
3741         actually an empty inline with box decorations. This patch causes 
3742         those inlines to draw now, and the parser errors looked strange. So 
3743         I changed it so that the parsererror tag is display:block. This 
3744         matches Firefox, and I think was the original intent of the tag 
3745         since that causes its red background and border to show up.
3746         * dom/XMLTokenizer.cpp:
3747         (WebCore::createXHTMLParserErrorHeader):
3748
3749 2007-10-29  Dan Bernstein  <mitz@apple.com>
3750
3751         Reviewed by Dave Hyatt.
3752
3753         - fix crashing tests fast/frames/inline-object-inside-frameset.html and
3754           fast/forms/form-hides-table.html
3755
3756         * rendering/RenderBox.cpp:
3757         (WebCore::RenderBox::destroy):
3758         * rendering/RenderWidget.cpp:
3759         (WebCore::RenderWidget::destroy):
3760
3761 2007-10-29  Dan Bernstein  <mitz@apple.com>
3762
3763         Reviewed by Adam Roben.
3764
3765         - fix http://bugs.webkit.org/show_bug.cgi?id=15750
3766           REGRESSION(r27173): Web Inspector freezes beneath Image::drawPattern()
3767
3768         Test: fast/backgrounds/size/zero.html
3769
3770         * platform/graphics/cg/ImageCG.cpp:
3771         (WebCore::Image::drawPattern): Added an ASSERT and an early return
3772         to guard against singular pattern transforms.
3773         * rendering/RenderBox.cpp:
3774         (WebCore::cacluateBackgroundSize): Changed to ensure a minimum tile
3775         size of 1x1.
3776
3777 2007-10-29  Alp Toker  <alp@atoker.com>
3778
3779         Reviewed by Maciej.
3780
3781         Add GTK+ convenience conversions for various primitives
3782
3783         * WebCore.pro:
3784         * platform/graphics/Color.h:
3785         * platform/graphics/IntPoint.h:
3786         * platform/graphics/IntRect.h:
3787         * platform/graphics/gtk/ColorGtk.cpp: Added.
3788         (WebCore::Color::Color):
3789         * platform/graphics/gtk/IntPointGtk.cpp: Added.
3790         (WebCore::IntPoint::IntPoint):
3791         (WebCore::IntPoint::operator GdkPoint):
3792         * platform/graphics/gtk/IntRectGtk.cpp: Added.
3793         (WebCore::IntRect::IntRect):
3794         (WebCore::IntRect::operator GdkRectangle):
3795
3796 2007-10-29  Jon Honeycutt  <jhoneycutt@apple.com>
3797
3798         Reviewed by Anders.
3799
3800         Speculative fix for <rdar://5538489> Safari 3.0.4 seed hangs at
3801         http://tgmonline.futuregamer.it/ (works fine on Safari 2.0.4 and Safari
3802         Beta for Mac)
3803         
3804         I cannot reproduce this hang, but it is likely due to our not limiting
3805         WM_USER+1 messages or InvalidateRect calls for a plugin with initially-
3806         unknown MIME type. The embed tag on the page is missing a type
3807         attribute, so as fallback, we choose to load the Flash plugin based on
3808         the file extension of "swf." However, we do not record this determined
3809         MIME type, and so our quirks cannot be established.
3810         
3811         Changed findPlugin() so that, if it fails to find a plugin for the
3812         given MIME type, it will lookup the MIME type for the file extension -
3813         overwriting its passed MIME type parameter - and search for a plugin
3814         for that MIME type.
3815
3816         * plugins/win/PluginDatabaseWin.cpp:
3817         (WebCore::PluginDatabaseWin::pluginForMIMEType): Added an early return
3818         if the MIME type is empty
3819         (WebCore::PluginDatabaseWin::MIMETypeForExtension): Added to replace
3820         pluginForExtension. Returns a String with the MIME type for the file
3821         extension. Also, changed to use case-insensitive compares
3822         (WebCore::PluginDatabaseWin::findPlugin): If we fail to find a plugin
3823         for the given extension, overwrite the incoming MIME type parameter
3824         with the MIME type for the file extension, and search for a plugin for
3825         that MIME type. Also, changed the way that the extension is determined
3826         (WebCore::PluginDatabaseWin::createPluginView): Pass a mutable String
3827         to findPlugin() so that it can be updated if necessary
3828         * plugins/win/PluginDatabaseWin.h: Changed findPlugin() to take a non-
3829         const String, removed definition of pluginForExtension, added
3830         definition for MIMETypeForExtension
3831         * plugins/win/PluginPackageWin.cpp: 
3832         (WebCore::PluginPackageWin::fetchInfo): Store the MIME type in
3833         lowercase for easier compares
3834
3835 2007-10-29  Andrew Wellington  <proton@wiretapped.net>
3836
3837         Not reviewed - build fix
3838
3839         Fix Mac Build.
3840         
3841         WebKit/WebCore/xml/XSLTProcessor.cpp:79: warning: 'level' may be used uninitialized
3842         in this function
3843
3844         * xml/XSLTProcessor.cpp:
3845         (WebCore::XSLTProcessor::parseErrorFunc):
3846
3847 2007-10-29  Alp Toker  <alp@atoker.com>
3848
3849         Reviewed by Adam Roben.
3850
3851         http://bugs.webkit.org/show_bug.cgi?id=15725
3852         [GTK] WebCore.pro header dependencies are incorrect
3853
3854         Fix header dependencies in the build system
3855
3856         INCLUDEPATH and DEPENDPATH are now up to date.
3857
3858         * WebCore.pro:
3859
3860 2007-10-29  Beth Dakin  <bdakin@apple.com>
3861
3862         Build fix.
3863
3864         * css/CSSParser.cpp:
3865         (WebCore::CSSParser::parseTimingFunctionValue):
3866         * css/CSSStyleSelector.cpp:
3867         (WebCore::CSSStyleSelector::mapTransitionTimingFunction):
3868
3869 2007-10-29  David Hyatt  <hyatt@apple.com>
3870
3871         Land the back end for CSS animated property transitions.  I am landing this in stages, so the AnimationController
3872         class is deliberately left empty.
3873
3874         Reviewed by darin/aroben
3875
3876         * WebCore.pro:
3877         * WebCore.vcproj/WebCore.vcproj:
3878         * WebCore.xcodeproj/project.pbxproj:
3879         * css/CSSComputedStyleDeclaration.cpp:
3880         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
3881         * css/CSSPropertyNames.in:
3882         * css/CSSTimingFunctionValue.cpp: Added.
3883         (WebCore::CSSTimingFunctionValue::cssText):
3884         * css/CSSTimingFunctionValue.h: Added.
3885         (WebCore::CSSTimingFunctionValue::CSSTimingFunctionValue):
3886         (WebCore::CSSTimingFunctionValue::firstPoint):
3887         (WebCore::CSSTimingFunctionValue::secondPoint):
3888         * css/CSSValueKeywords.in:
3889         * history/CachedPage.cpp:
3890         (WebCore::CachedPage::restore):
3891         * page/AnimationController.cpp: Added.
3892         (WebCore::AnimationController::AnimationController):
3893         (WebCore::AnimationController::~AnimationController):
3894         (WebCore::AnimationController::cancelTransitions):
3895         (WebCore::AnimationController::updateTransitions):
3896         (WebCore::AnimationController::suspendAnimations):
3897         (WebCore::AnimationController::resumeAnimations):
3898         * page/AnimationController.h: Added.
3899         * page/Frame.cpp:
3900         (WebCore::Frame::animationController):
3901         (WebCore::Frame::clearTimers):
3902         * page/Frame.h:
3903         * page/FramePrivate.h:
3904         * rendering/RenderBox.cpp:
3905         (WebCore::RenderBox::setStyle):
3906         (WebCore::RenderBox::destroy):
3907         * rendering/RenderObject.cpp:
3908         (WebCore::RenderObject::animationController):
3909         * rendering/RenderObject.h:
3910         * rendering/RenderStyle.cpp:
3911         (WebCore::Transition::Transition):
3912         (WebCore::Transition::~Transition):
3913         (WebCore::Transition::operator=):
3914         (WebCore::Transition::operator==):
3915         (WebCore::Transition::fillUnsetProperties):
3916         (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
3917         (WebCore::StyleRareNonInheritedData::~StyleRareNonInheritedData):
3918         (WebCore::StyleRareNonInheritedData::operator==):
3919         (WebCore::StyleRareNonInheritedData::transitionDataEquivalent):
3920         (WebCore::RenderStyle::diff):
3921         (WebCore::RenderStyle::adjustTransitions):
3922         (WebCore::RenderStyle::accessTransitions):
3923         * rendering/RenderStyle.h:
3924         (WebCore::BackgroundLayer::next):
3925         (WebCore::):
3926         (WebCore::TimingFunction::TimingFunction):
3927         (WebCore::TimingFunction::operator==):
3928         (WebCore::Transition::next):
3929         (WebCore::Transition::isTransitionDurationSet):
3930         (WebCore::Transition::isTransitionRepeatCountSet):
3931         (WebCore::Transition::isTransitionTimingFunctionSet):
3932         (WebCore::Transition::isTransitionPropertySet):
3933         (WebCore::Transition::isEmpty):
3934         (WebCore::Transition::clearTransitionDuration):
3935         (WebCore::Transition::clearTransitionRepeatCount):
3936         (WebCore::Transition::clearTransitionTimingFunction):
3937         (WebCore::Transition::clearTransitionProperty):
3938         (WebCore::Transition::transitionDuration):
3939         (WebCore::Transition::transitionRepeatCount):
3940         (WebCore::Transition::transitionTimingFunction):
3941         (WebCore::Transition::transitionProperty):
3942         (WebCore::Transition::setTransitionDuration):
3943         (WebCore::Transition::setTransitionRepeatCount):
3944         (WebCore::Transition::setTransitionTimingFunction):
3945         (WebCore::Transition::setTransitionProperty):
3946         (WebCore::Transition::setNext):
3947         (WebCore::Transition::operator!=):
3948         (WebCore::RenderStyle::transitions):
3949         (WebCore::RenderStyle::clearTransitions):
3950         (WebCore::RenderStyle::inheritTransitions):
3951         (WebCore::RenderStyle::initialTransitionDuration):
3952         (WebCore::RenderStyle::initialTransitionRepeatCount):
3953         (WebCore::RenderStyle::initialTransitionTimingFunction):
3954         (WebCore::RenderStyle::initialTransitionProperty):
3955         * rendering/RenderWidget.cpp:
3956         (WebCore::RenderWidget::destroy):
3957
3958 2007-10-29  Alexey Proskuryakov  <ap@webkit.org>
3959
3960         Reviewed by Darin.
3961
3962         http://bugs.webkit.org/show_bug.cgi?id=6040
3963         XSLT does not report errors to the user
3964
3965         Made parseErrorFunc a static member function of XSLTProcessor to be reusable from XSLStylesheet.
3966         Switched to xmlSetStructuredErrorFunc to get an error structure instead of pre-formatted console
3967         output. Got rid of DeprecatedString in XSLTProcessor.
3968
3969         * dom/Document.cpp:
3970         (WebCore::Document::applyXSLTransform):
3971         * xml/XSLStyleSheet.cpp:
3972         (WebCore::XSLStyleSheet::parseString):
3973         * xml/XSLTProcessor.cpp:
3974         (WebCore::XSLTProcessor::parseErrorFunc):
3975         (WebCore::docLoaderFunc):
3976         (WebCore::setXSLTLoadCallBack):
3977         (WebCore::writeToString):
3978         (WebCore::saveResultToString):
3979         (WebCore::transformTextStringToXHTMLDocumentString):
3980         (WebCore::xsltParamArrayFromParameterMap):
3981         (WebCore::freeXsltParamArray):
3982         (WebCore::XSLTProcessor::createDocumentFromSource):
3983         (WebCore::createFragmentFromSource):
3984         (WebCore::xsltStylesheetPointer):
3985         (WebCore::xmlDocPtrFromNode):
3986         (WebCore::resultMIMEType):
3987         (WebCore::XSLTProcessor::transformToString):
3988         (WebCore::XSLTProcessor::transformToDocument):
3989         (WebCore::XSLTProcessor::transformToFragment):
3990         * xml/XSLTProcessor.h:
3991         (WebCore::XSLTProcessor::setXSLStylesheet):
3992         (WebCore::XSLTProcessor::importStylesheet):
3993         (WebCore::XSLTProcessor::xslStylesheet):
3994
3995 2007-10-29  Dan Bernstein  <mitz@apple.com>
3996
3997         Reviewed by John Sullivan.
3998
3999         - fix <rdar://problem/5424455> REGRESSION (r21168-r21193, Tiger only): Safari scrollbar is clipped at top when loading particular RSS page
4000
4001         Test: fast/repaint/layout-state-only-positioned.html
4002
4003         * rendering/RenderBlock.cpp:
4004         (WebCore::RenderBlock::layoutOnlyPositionedObjects): Pop layout state
4005         before updating scroll info, which possibly repaints us.
4006
4007 2007-10-29  David Kilzer  <ddkilzer@webkit.org>
4008
4009         REGRESSION (r17701): Favicons should be viewable as image documents
4010         <http://bugs.webkit.org/show_bug.cgi?id=15640>
4011
4012         Reviewed by Darin.
4013
4014         On Tiger and Leopard, the image/x-icon MIME type is not returned from
4015         CGImageSourceCopyTypeIdentifiers(), so opening a URL to a favicon caused
4016         the icon to be downloaded instead being displayed in an image document.
4017
4018         Test: fast/images/favicon-as-image.html
4019
4020         * platform/MIMETypeRegistry.cpp:
4021         (WebCore::initialiseSupportedImageMIMETypes): Manually add image/x-icon to
4022         supportedImageMIMETypes and supportedImageResourceMIMETypes.  Also fixed
4023         comment about the image/bmp MIME type since it applies to both Tiger and
4024         Leopard.
4025
4026 2007-10-29  Maciej Stachowiak  <mjs@apple.com>
4027
4028         Reviewed by Mark.
4029
4030         - fixed assertion failures detected by the new assertions
4031
4032         * bindings/objc/DOMRGBColor.mm:
4033         (-[DOMRGBColor dealloc]): Clear _internal before calling [super dealloc]
4034         because it's not a pointer and shouldn't be in the normal wrapper cache.
4035         * dom/Document.cpp:
4036         (WebCore::Document::addImageMap): Don't access hashmap if name is null.
4037         (WebCore::Document::removeImageMap): ditto
4038         * dom/StyledElement.cpp:
4039         (WebCore::StyledElement::parseMappedAttribute): Don't claim we have a class
4040         when the class attribute is empty.
4041         * platform/TextCodecICU.cpp:
4042         (WebCore::gbkCallbackEscape): Don't look up 0 code points.
4043
4044 2007-10-28  Alexey Proskuryakov  <ap@webkit.org>
4045
4046         Reviewed by Darin.
4047
4048         http://bugs.webkit.org/show_bug.cgi?id=10734
4049         Made HTMLOptionElement.index read-only, matching IE and DOM standard.
4050
4051         Test: fast/dom/HTMLOptionElement/set-option-index-text.html
4052
4053         * html/HTMLOptionElement.idl: Marked index as readonly.
4054
4055         * html/HTMLOptionElement.cpp:
4056         * html/HTMLOptionElement.h:
4057         Removed setIndex().
4058
4059 2007-10-28  Eric Seidel  <eric@webkit.org>
4060
4061         Reviewed by darin.
4062
4063         Fix leaks on TOT and prevent Path code from logging to console so frequently
4064
4065         * platform/graphics/svg/SVGResourceFilter.h:
4066         (WebCore::SVGResourceFilterPlatformData::SVGResourceFilterPlatformData):
4067         (WebCore::SVGResourceFilterPlatformData::~SVGResourceFilterPlatformData):
4068         * platform/graphics/svg/cg/CgSupport.cpp:
4069         (WebCore::strokeBoundingBox):
4070         * platform/graphics/svg/cg/SVGResourceFilterCg.mm:
4071         * platform/graphics/svg/mac/SVGResourceFilterPlatformDataMac.h:
4072
4073 2007-10-28  Mark Rowe  <mrowe@apple.com>
4074
4075         Reviewed by Maciej.
4076
4077         Replace uses of isNaN and isInf with isnan and isinf.
4078
4079         * bindings/js/JSHTMLOptionsCollectionCustom.cpp:
4080         (WebCore::JSHTMLOptionsCollection::setLength):
4081
4082 2007-10-28  Maciej Stachowiak  <mjs@apple.com>
4083
4084         Reviewed by Mark.
4085
4086         - fixed REGRESSION(r27176): Reproducible crash while trying to order dinner makes bdash sad
4087         http://bugs.webkit.org/show_bug.cgi?id=15731
4088
4089         * bindings/js/kjs_window.cpp:
4090         (KJS::Window::installTimeout): Avoid putting in or accessing empty or deleted keys.
4091         (KJS::Window::clearTimeout): ditto
4092         * manual-tests/bad-clearTimeout-crash.html: Added. Automated test not possible.
4093
4094 2007-10-28  Kevin Ollivier  <kevino@theolliviers.com>
4095
4096         wx port defines for graphics and network layers.
4097
4098         Reviewed by Darin Adler.
4099
4100         * platform/graphics/AffineTransform.h:
4101         * platform/graphics/BitmapImage.h:
4102         * platform/graphics/Color.h:
4103         * platform/graphics/FloatRect.h:
4104         * platform/graphics/GraphicsContext.h:
4105         * platform/graphics/ImageSource.h:
4106         * platform/graphics/IntPoint.h:
4107         * platform/graphics/IntRect.h:
4108         * platform/graphics/Path.h:
4109         * platform/graphics/Pen.h:
4110         * platform/network/ResourceHandle.h:
4111
4112
4113 2007-10-28  Alp Toker  <alp@atoker.com>
4114
4115         Reviewed by Anders Carlsson.
4116
4117         http://bugs.webkit.org/show_bug.cgi?id=14124
4118         [CURL] Support data URLs
4119
4120         Add data URL support (both Base64 and percent-encoded formats).
4121
4122         Inspired by code from the Qt port.
4123
4124         * platform/Base64.cpp:
4125         (WebCore::base64Decode):
4126         * platform/Base64.h:
4127         * platform/network/curl/ResourceHandleManager.cpp:
4128         (WebCore::ResourceHandleManager::startScheduledJobs):
4129         (WebCore::parseDataUrl):
4130
4131 2007-10-28  Alp Toker  <alp@atoker.com>
4132
4133         Reviewed by Adam Roben.
4134
4135         http://bugs.webkit.org/show_bug.cgi?id=15701
4136         The curl http backend does not deal properly with redirects
4137
4138         Implement http redirect support.
4139
4140         * platform/network/curl/ResourceHandleManager.cpp:
4141         (WebCore::headerCallback):
4142
4143 2007-10-28  Kevin Ollivier  <kevino@theolliviers.com>
4144
4145         Define types and accessors needed for wx implementation
4146         of platform classes. Also, turn off DisallowCTypes.h because
4147         disallowed methods appear in wx headers.
4148
4149         Reviewed by Adam Roben.
4150
4151         * config.h:
4152         * platform/ContextMenuItem.h:
4153         * platform/Cursor.h:
4154         * platform/DeprecatedString.h:
4155         * platform/DragData.h:
4156         * platform/DragImage.h:
4157         * platform/FontData.h:
4158         (WebCore::FontData::getWxFont):
4159         * platform/GlyphBuffer.h:
4160         (WebCore::GlyphBuffer::glyphAt):
4161         (WebCore::GlyphBuffer::advanceAt):
4162         (WebCore::GlyphBuffer::add):
4163         * platform/PlatformKeyboardEvent.h:
4164         (WebCore::PlatformKeyboardEvent::isWxCharEvent):
4165         * platform/PlatformMenuDescription.h:
4166         * platform/PlatformMouseEvent.h:
4167         * platform/PlatformString.h:
4168         * platform/PlatformWheelEvent.h:
4169         * platform/ScrollView.h:
4170         * platform/Widget.h:
4171         * platform/image-decoders/bmp/BMPImageDecoder.cpp:
4172         * platform/image-decoders/gif/GIFImageDecoder.cpp:
4173         * platform/image-decoders/gif/GIFImageReader.cpp:
4174         * platform/image-decoders/ico/ICOImageDecoder.cpp:
4175         * platform/image-decoders/jpeg/JPEGImageDecoder.cpp:
4176         * platform/image-decoders/png/PNGImageDecoder.cpp:
4177         * platform/image-decoders/xbm/XBMImageDecoder.cpp:
4178
4179 2007-10-28  Mark Rowe  <mrowe@apple.com>
4180
4181         We don't include "config.h" in headers.
4182
4183         * dom/XMLTokenizer.h:
4184         * platform/graphics/svg/SVGResourceFilter.h:
4185         * platform/image-decoders/ImageDecoder.h:
4186         * platform/wx/FontPlatformData.h:
4187
4188 2007-10-28  Darin Adler  <darin@apple.com>
4189
4190         * platform/graphics/svg/mac/SVGResourceFilterPlatformDataMac.h:
4191         We don't include "config.h" in headers. Hope this desn't break
4192         the non-SVG build again.
4193
4194 2007-10-28  Eric Seidel  <eric@webkit.org>
4195
4196         Build fix for non-SVG build, no review.
4197
4198         * platform/graphics/svg/mac/SVGResourceFilterPlatformDataMac.h:
4199         * platform/graphics/svg/mac/SVGResourceFilterPlatformDataMac.mm:
4200
4201 2007-10-28  Eric Seidel  <eric@webkit.org>
4202
4203         Reviewed by Oliver.
4204
4205         Push SVGResourceFilter platform specific data down into m_platformData
4206         in preparation for implementing a non-mac filter solution.
4207         
4208         Also update a very old email address in copyright headers
4209
4210         * WebCore.xcodeproj/project.pbxproj:
4211         * platform/graphics/FloatPoint3D.cpp:
4212         (WebCore::FloatPoint3D::FloatPoint3D):
4213         * platform/graphics/FloatPoint3D.h:
4214         * platform/graphics/svg/SVGResourceFilter.cpp:
4215         (WebCore::SVGResourceFilter::SVGResourceFilter):
4216         * platform/graphics/svg/SVGResourceFilter.h:
4217         (WebCore::SVGResourceFilter::platformData):
4218         (WebCore::SVGResourceFilter::effects):
4219         * platform/graphics/svg/cg/SVGResourceFilterCg.mm:
4220         (WebCore::SVGResourceFilter::createPlatformData):l
4221         (WebCore::SVGResourceFilter::prepareFilter):
4222         (WebCore::SVGResourceFilter::applyFilter):
4223         * platform/graphics/svg/filters/SVGDistantLightSource.h:
4224         * platform/graphics/svg/filters/SVGFEBlend.cpp:
4225         * platform/graphics/svg/filters/SVGFEBlend.h:
4226         * platform/graphics/svg/filters/SVGFEColorMatrix.cpp:
4227         * platform/graphics/svg/filters/SVGFEColorMatrix.h:
4228         * platform/graphics/svg/filters/SVGFEComponentTransfer.cpp:
4229         * platform/graphics/svg/filters/SVGFEComponentTransfer.h:
4230         * platform/graphics/svg/filters/SVGFEComposite.cpp:
4231         * platform/graphics/svg/filters/SVGFEComposite.h:
4232         * platform/graphics/svg/filters/SVGFEConvolveMatrix.cpp:
4233         * platform/graphics/svg/filters/SVGFEConvolveMatrix.h:
4234         * platform/graphics/svg/filters/SVGFEDiffuseLighting.cpp:
4235         * platform/graphics/svg/filters/SVGFEDiffuseLighting.h:
4236         * platform/graphics/svg/filters/SVGFEDisplacementMap.cpp:
4237         * platform/graphics/svg/filters/SVGFEDisplacementMap.h:
4238         * platform/graphics/svg/filters/SVGFEFlood.cpp:
4239         * platform/graphics/svg/filters/SVGFEFlood.h:
4240         * platform/graphics/svg/filters/SVGFEGaussianBlur.cpp:
4241         * platform/graphics/svg/filters/SVGFEGaussianBlur.h:
4242         * platform/graphics/svg/filters/SVGFEImage.cpp:
4243         * platform/graphics/svg/filters/SVGFEImage.h:
4244         * platform/graphics/svg/filters/SVGFEMerge.cpp:
4245         * platform/graphics/svg/filters/SVGFEMerge.h:
4246         * platform/graphics/svg/filters/SVGFEMorphology.cpp:
4247         * platform/graphics/svg/filters/SVGFEMorphology.h:
4248         * platform/graphics/svg/filters/SVGFEOffset.cpp:
4249         * platform/graphics/svg/filters/SVGFEOffset.h:
4250         * platform/graphics/svg/filters/SVGFESpecularLighting.cpp:
4251         * platform/graphics/svg/filters/SVGFESpecularLighting.h:
4252