LayoutTests:
[WebKit-https.git] / WebCore / ChangeLog
1 2007-07-06  Maciej Stachowiak  <mjs@apple.com>
2
3         Reviewed by Oliver.
4
5         - fixed <rdar://problem/5133420> ASSERT in WebDocumentLoaderMac::decreaseLoadCount() un-discarding Gmail message
6         
7         test case: fast/loader/early-load-cancel.html
8
9         * loader/ResourceLoader.cpp:
10         (WebCore::ResourceLoader::didCancel): Don't send cancel-related client callbacks
11         if we never even sent willSendRequest because we were deferred.
12
13 2007-07-06  Oliver Hunt  <oliver@apple.com>
14
15         Reviewed by Maciej.
16
17         Pulled a number of methods from WebKit and WebCoreFrameBridge into 
18         C++ objects.
19
20         * WebCore.exp:
21         * WebCore.xcodeproj/project.pbxproj:
22         * editing/Editor.cpp:
23         (WebCore::Editor::replaceMarkedText):
24             From -[WebCoreFrameBridge replaceMarkedTextWithText:]
25         * editing/Editor.h:
26         * page/Frame.cpp:
27         (WebCore::Frame::setMarkedTextRange):
28             Pulled platform independent logic from Mac specific implementation
29         (WebCore::Frame::selectRangeInMarkedText):
30             Converted from -[WebHTMLView _selectRangeInMarkedText:]
31         * page/Frame.h:
32         * page/mac/FrameMac.mm:
33         (WebCore::Frame::setMarkedTextRange):
34             Now only does Mac specific logic when manipulating initial
35             NSAttributedString
36         * page/mac/WebCoreFrameBridge.h:
37         * page/mac/WebCoreFrameBridge.mm:
38             Removed -[WebCoreFrameBridge replaceMarkedTextWithText:]
39
40 2007-07-06  Mitz Pettel  <mitz@webkit.org>
41
42         Reviewed by Darin.
43
44         - fix http://bugs.webkit.org/show_bug.cgi?id=14545
45           REGRESSION (r21854-r21869): Repro crash in RenderBlock::updateFirstLetter @ nola.com/rose/
46
47         Test: fast/css/first-letter-capitalized.html
48
49         * rendering/RenderBlock.cpp:
50         (WebCore::RenderBlock::updateFirstLetter): Moved the call to setFirstLetter
51         further down so that the first letter is not destroyed if a text transform
52         is applied to the remaining text fragment when it is add to the render tree.
53         * rendering/RenderText.cpp:
54         (WebCore::RenderText::previousCharacter): Factored out of setTextInternal.
55         (WebCore::RenderText::setTextInternal): Changed to call previousCharacter().
56         * rendering/RenderText.h:
57         * rendering/RenderTextFragment.cpp:
58         (WebCore::RenderTextFragment::previousCharacter): Override to return the
59         character in the original string before the start of the fragment. 
60         * rendering/RenderTextFragment.h:
61
62 2007-07-06  Mitz Pettel  <mitz@webkit.org>
63
64         Reviewed by Beth.
65
66         - fix http://bugs.webkit.org/show_bug.cgi?id=14536
67           Unnecessary layout done when mousing down in text field
68
69         No test possible because there is no change in functionality.
70
71         * rendering/RenderTextControl.cpp:
72         (WebCore::RenderTextControl::setStyle): Reset the height and the width in
73         the old style to avoid getting a layout hint as a result of having mutated
74         the old style during layout.
75         (WebCore::RenderTextControl::layout): Update children's layout if an inner
76         block's dimensions should change. This need for layout was previously masked
77         by the bug.
78
79 2007-07-06  Brady Eidson  <beidson@apple.com>
80
81         Fix builds that use IconDatabaseNone.cpp - better, this time
82
83         * loader/icon/IconDatabaseNone.cpp:
84         (WebCore::IconDatabase::isOpen):
85
86 2007-07-06  Brady Eidson  <beidson@apple.com>
87
88         Fix builds that use IconDatabaseNone.cpp
89
90         * loader/icon/IconDatabaseNone.cpp:
91         (WebCore::IconDatabase::databasePath): 
92
93 2007-07-06  John Sullivan  <sullivan@apple.com>
94
95         Reviewed by Brady
96         
97         - WebCore part of fix for: 
98           <rdar://problem/5310739> Time Machine shouldn't back up WebKit's icon database files
99         
100         * loader/icon/IconDatabase.h:
101         * loader/icon/IconDatabase.cpp:
102         (WebCore::IconDatabase::isOpen): 
103         made this method const (necessary to make IconDatabase::databasePath const)
104         (WebCore::IconDatabase::databasePath): 
105         new method, returns SQLDatabase's path if open, otherwise empty string
106         
107         * loader/icon/SQLDatabase.cpp:
108         (WebCore::SQLDatabase::open):
109         don't append a null character to the m_path ivar. The appended null character was making the path()
110         method return a String with a trailing null, which is bad. However, there were no callers to the
111         path() method until now. Instead of appending a null character to the ivar, use charactersWithNullTermination()
112         instead of characters() when opening the database.
113         
114         * loader/icon/SQLDatabase.h:
115         (WebCore::SQLDatabase::isOpen):
116         made this method const (necessary to make IconDatabase::databasePath const)
117         (WebCore::SQLDatabase::path):
118         made this method const (not required for these changes, but seemed worth doing at the same time)
119
120         * WebCore.exp:
121         added symbol for IconDatabase::databasePath
122
123 2007-07-06  George Staikos  <staikos@kde.org>
124
125         No real functional change - just move the localizations out and
126         stick some placeholder text in.
127
128         * platform/qt/Localizations.cpp: Added.
129         (WebCore::submitButtonDefaultLabel):
130         (WebCore::inputElementAltText):
131         (WebCore::resetButtonDefaultLabel):
132         (WebCore::defaultLanguage):
133         (WebCore::searchableIndexIntroduction):
134         (WebCore::fileButtonChooseFileLabel):
135         (WebCore::fileButtonNoFileSelectedLabel):
136         (WebCore::contextMenuItemTagOpenLinkInNewWindow):
137         (WebCore::contextMenuItemTagDownloadLinkToDisk):
138         (WebCore::contextMenuItemTagCopyLinkToClipboard):
139         (WebCore::contextMenuItemTagOpenImageInNewWindow):
140         (WebCore::contextMenuItemTagDownloadImageToDisk):
141         (WebCore::contextMenuItemTagCopyImageToClipboard):
142         (WebCore::contextMenuItemTagOpenFrameInNewWindow):
143         (WebCore::contextMenuItemTagCopy):
144         (WebCore::contextMenuItemTagGoBack):
145         (WebCore::contextMenuItemTagGoForward):
146         (WebCore::contextMenuItemTagStop):
147         (WebCore::contextMenuItemTagReload):
148         (WebCore::contextMenuItemTagCut):
149         (WebCore::contextMenuItemTagPaste):
150         (WebCore::contextMenuItemTagNoGuessesFound):
151         (WebCore::contextMenuItemTagIgnoreSpelling):
152         (WebCore::contextMenuItemTagLearnSpelling):
153         (WebCore::contextMenuItemTagSearchWeb):
154         (WebCore::contextMenuItemTagLookUpInDictionary):
155         (WebCore::contextMenuItemTagOpenLink):
156         (WebCore::contextMenuItemTagIgnoreGrammar):
157         (WebCore::contextMenuItemTagSpellingMenu):
158         (WebCore::contextMenuItemTagShowSpellingPanel):
159         (WebCore::contextMenuItemTagCheckSpelling):
160         (WebCore::contextMenuItemTagCheckSpellingWhileTyping):
161         (WebCore::contextMenuItemTagCheckGrammarWithSpelling):
162         (WebCore::contextMenuItemTagFontMenu):
163         (WebCore::contextMenuItemTagBold):
164         (WebCore::contextMenuItemTagItalic):
165         (WebCore::contextMenuItemTagUnderline):
166         (WebCore::contextMenuItemTagOutline):
167         (WebCore::contextMenuItemTagWritingDirectionMenu):
168         (WebCore::contextMenuItemTagDefaultDirection):
169         (WebCore::contextMenuItemTagLeftToRight):
170         (WebCore::contextMenuItemTagRightToLeft):
171         (WebCore::contextMenuItemTagInspectElement):
172         (WebCore::searchMenuNoRecentSearchesText):
173         (WebCore::searchMenuRecentSearchesText):
174         (WebCore::searchMenuClearRecentSearchesText):
175         (WebCore::AXWebAreaText):
176         (WebCore::AXLinkText):
177         (WebCore::AXListMarkerText):
178         (WebCore::AXImageMapText):
179         (WebCore::AXHeadingText):
180         * platform/qt/TemporaryLinkStubs.cpp:
181
182 2007-07-06  Geoffrey Garen  <ggaren@apple.com>
183
184         Reviewed by Anders Carlsson.
185
186         A little more FrameLoader cleanup while working on <rdar://problem/5126396>.
187         
188         Moved url() and URL() methods next to each other to highlight their subtlety.
189
190         * loader/FrameLoader.cpp:
191         (WebCore::FrameLoader::url):
192         * loader/FrameLoader.h:
193
194 2007-07-06  Geoffrey Garen  <ggaren@apple.com>
195
196         Reviewed by Anders Carlsson.
197
198         A little FrameLoader cleanup while working on <rdar://problem/5126396>.
199         
200         Renamed endIfNotLoading() to endIfNotLoadingMainResource() because "loading"
201         and "loadingMainResource" have distinct meanings and this function
202         honors the latter.
203
204         (WebCore::FrameLoader::endIfNotLoadingMainResource): Protect after the
205         early return to avoid ref count churn.
206         * loader/FrameLoader.h:
207         (WebCore::FrameLoader::isLoadingMainResource): Inlined this function.
208
209 2007-07-06  Adam Treat  <adam@staikos.net>
210
211         Reviewed by George Staikos.
212
213         Convert QWebFrame to a QFrame from a scroll area.
214
215         * page/qt/EventHandlerQt.cpp:
216         (WebCore::EventHandler::passSubframeEventToSubframe):
217         (WebCore::EventHandler::passWheelEventToWidget):
218         (WebCore::EventHandler::createDraggingClipboard):
219         (WebCore::EventHandler::passMousePressEventToScrollbar):
220         * platform/ScrollView.h:
221         * platform/Widget.h:
222         * platform/qt/PlatformScrollBar.h:
223         * platform/qt/PlatformScrollBarQt.cpp:
224         (WebCore::PlatformScrollbar::setRect):
225         (WebCore::PlatformScrollbar::frameGeometry):
226         (WebCore::PlatformScrollbar::setFrameGeometry):
227         (WebCore::PlatformScrollbar::handleMouseMoveEvent):
228         (WebCore::PlatformScrollbar::handleMousePressEvent):
229         (WebCore::PlatformScrollbar::handleMouseReleaseEvent):
230         * platform/qt/ScrollViewQt.cpp:
231         (WebCore::ScrollView::ScrollViewPrivate::ScrollViewPrivate):
232         (WebCore::ScrollView::ScrollViewPrivate::~ScrollViewPrivate):
233         (WebCore::ScrollView::ScrollViewPrivate::setHasHorizontalScrollbar):
234         (WebCore::ScrollView::ScrollViewPrivate::setHasVerticalScrollbar):
235         (WebCore::ScrollView::ScrollViewPrivate::valueChanged):
236         (WebCore::ScrollView::ScrollViewPrivate::scrollBackingStore):
237         (WebCore::ScrollView::ScrollViewPrivate::windowClipRect):
238         (WebCore::ScrollView::ScrollView):
239         (WebCore::ScrollView::~ScrollView):
240         (WebCore::ScrollView::setScrollArea):
241         (WebCore::ScrollView::horizontalScrollBar):
242         (WebCore::ScrollView::verticalScrollBar):
243         (WebCore::ScrollView::updateContents):
244         (WebCore::ScrollView::update):
245         (WebCore::ScrollView::visibleWidth):
246         (WebCore::ScrollView::visibleHeight):
247         (WebCore::ScrollView::visibleContentRect):
248         (WebCore::ScrollView::setContentsPos):
249         (WebCore::ScrollView::resizeContents):
250         (WebCore::ScrollView::setFrameGeometry):
251         (WebCore::ScrollView::geometryChanged):
252         (WebCore::ScrollView::contentsX):
253         (WebCore::ScrollView::contentsY):
254         (WebCore::ScrollView::contentsWidth):
255         (WebCore::ScrollView::contentsHeight):
256         (WebCore::ScrollView::windowToContents):
257         (WebCore::ScrollView::contentsToWindow):
258         (WebCore::ScrollView::scrollOffset):
259         (WebCore::ScrollView::maximumScroll):
260         (WebCore::ScrollView::scrollBy):
261         (WebCore::ScrollView::scrollRectIntoViewRecursively):
262         (WebCore::ScrollView::hScrollbarMode):
263         (WebCore::ScrollView::vScrollbarMode):
264         (WebCore::ScrollView::suppressScrollbars):
265         (WebCore::ScrollView::setHScrollbarMode):
266         (WebCore::ScrollView::setVScrollbarMode):
267         (WebCore::ScrollView::setScrollbarsMode):
268         (WebCore::ScrollView::setStaticBackground):
269         (WebCore::ScrollView::inWindow):
270         (WebCore::ScrollView::updateScrollbars):
271         (WebCore::ScrollView::scrollbarUnderMouse):
272         (WebCore::ScrollView::addChild):
273         (WebCore::ScrollView::removeChild):
274         (WebCore::ScrollView::paint):
275         (WebCore::ScrollView::wheelEvent):
276         (WebCore::ScrollView::scroll):
277         (WebCore::ScrollView::windowResizerRect):
278         (WebCore::ScrollView::resizerOverlapsContent):
279         (WebCore::ScrollView::adjustOverlappingScrollbarCount):
280         (WebCore::ScrollView::setParent):
281         (WebCore::ScrollView::addToDirtyRegion):
282         (WebCore::ScrollView::scrollBackingStore):
283         (WebCore::ScrollView::updateBackingStore):
284         * platform/qt/WidgetQt.cpp:
285         (WebCore::WidgetPrivate::canvas):
286         (WebCore::WidgetPrivate::setGeometry):
287         (WebCore::WidgetPrivate::geometry):
288         (WebCore::Widget::setQWidget):
289         (WebCore::Widget::paint):
290         (WebCore::Widget::originalGeometry):
291         (WebCore::Widget::geometryChanged):
292
293 2007-07-06  Anders Carlsson  <andersca@apple.com>
294
295         Reviewed by Mitz.
296
297         <rdar://problem/5280532> 
298         REGRESSION: Can't access nested embed by document.name if object is not immediate parent
299         
300         Traverse up the tree looking for an object element.
301         
302         * html/HTMLEmbedElement.cpp:
303         (WebCore::HTMLEmbedElement::getInstance):
304
305 2007-07-06  George Staikos  <staikos@kde.org>
306
307         Qt build fix: Don't clobber qmake variables that are already set.
308
309         * WebCore.pro:
310
311 2007-07-05  Maciej Stachowiak  <mjs@apple.com>
312
313         Reviewed by Antti.
314
315         - <rdar://problem/5311093> JavaScriptCore fails to build with strict-aliasing warnings
316
317         * platform/StringHash.h:
318         (WTF::): Adapt to newer way to do storage types.
319
320 2007-07-06  Bernhard Rosenkraenzer  <bero@arklinux.org>
321
322         Reviewed by Sam.
323
324         Fix for http://bugs.webkit.org/show_bug.cgi?id=13985
325         Bug 13985: WebCore/rendering/RenderTable.cpp fails to compile with gcc 4.2.x
326
327         * rendering/RenderTable.cpp:
328         (WebKit::RenderTable::calcBorderLeft)
329         (WebKit::RenderTable::calcBorderRight)
330
331 2007-07-06  Maxime Britto  <mbritto@pleyo.com>
332
333         Reviewed by Maciej.
334
335         Fix http://bugs.webkit.org/show_bug.cgi?id=13038
336         Bug 13038: ASSERTION FAILED: item->target().isEmpty() || m_mainFrame->tree()->find(item->target()) == m_mainFrame
337
338         Modify an ASSERT in goToItem related to going back/forward in history.  We don't need to check the frameset if the target is _blank.
339         The attached test case is a manual one since it relies on having pages opened in tabs in Safari.
340
341         * manual-tests/goBack-blank-tab-page.html: Added.
342         * manual-tests/resources/before-go-back.html: Added.
343         * manual-tests/resources/will-go-back.html: Added.
344         * page/Page.cpp:
345         (WebCore::Page::goToItem):
346
347 2007-07-06  Mitz Pettel  <mitz@webkit.org>
348
349         Reviewed by Maciej.
350
351         - fix http://bugs.webkit.org/show_bug.cgi?id=14400
352           Assertion failure (SHOULD NEVER BE REACHED) going back on YouTube
353
354         Test: fast/forms/button-state-restore.html
355
356         * dom/Document.h:
357         (WebCore::Document::isFormElementRegistered): Added.
358         * html/HTMLGenericFormElement.cpp:
359         (WebCore::HTMLGenericFormElement::closeRenderer): Restore saved form
360         element state only if the element is registered with the document to
361         have its state saved.
362
363 2007-07-06  Mitz Pettel  <mitz@webkit.org>
364
365         Reviewed by Maciej.
366
367         - fix http://bugs.webkit.org/show_bug.cgi?id=14487
368           Incomplete repaint of background and border of boxes with -webkit-border-fit:lines
369
370         Test: fast/repaint/border-fit-lines.html
371
372         * rendering/RenderObject.cpp:
373         (WebCore::RenderObject::repaintAfterLayoutIfNeeded): Do a full repaint if
374         -webkit-border-fit:lines was specified.
375
376 2007-07-06  Tony Chang  <idealisms@gmail.com>
377
378         Reviewed by Maciej.
379
380         http://bugs.webkit.org/show_bug.cgi?id=14516
381         Bug 14516: crash loading multipart/x-mixed-replace data on windows safari
382
383         NULL check m_resourceData to prevent a crash in Safari on Windows.
384
385         * loader/ResourceLoader.cpp:
386         (WebCore::ResourceLoader::clearResourceData):
387
388 2007-07-06  Jungshik Shin  <jungshik.shin@gmail.com>
389
390         Reviewed by Alexey.
391
392         - Add UTF-32 encoding support 
393           http://bugs.webkit.org/show_bug.cgi?id=13415
394
395         Test:
396          - fast/encoding/utf-32-big-endian-bom.html
397          - fast/encoding/utf-32-big-endian-nobom.xml
398          - fast/encoding/utf-32-little-endian-bom.html
399          - fast/encoding/utf-32-little-endian-nobom.xml
400
401         * loader/TextResourceDecoder.cpp:
402         (WebCore::TextResourceDecoder::checkForBOM):
403         (WebCore::TextResourceDecoder::checkForHeadCharset):
404         * platform/TextDecoder.cpp:
405         (WebCore::TextDecoder::checkForBOM):
406         * platform/TextDecoder.h:
407         * platform/TextEncoding.cpp:
408         (WebCore::UTF32BigEndianEncoding):
409         (WebCore::UTF32LittleEndianEncoding):
410         * platform/TextEncoding.h:
411
412 2007-07-06  Holger Hans Peter Freyther  <zecke@selfish.org>
413
414         Reviewed by Maciej.
415
416         Start implementening RenderThemeGdk/Gtk using GtkStyle. The approach is
417         to allocate one native control for each widget type. And use margins, spacing,
418         style properties from the Widget. And for drawing use GtkStyle on the rect supplied.
419
420         This should allow nice integration and be relative resource friendly. Mozilla is using
421         a similiar approach. They seem to share the GdkPixmap among several operations and this
422         will be an obvious candidate for improvements. Create a normally big enough GdkPixmap and
423         use that for drawing and then set clip regions for cairo to make sure to not go beyond the
424         width and height.
425
426         The next steps will be to introduce states for the widgets, add more widgets, handle focus,
427         and various other style attributes, honor the size and margin and use that to propagate this
428         back to RenderStyle*.
429
430         * platform/gdk/RenderThemeGdk.cpp:
431         (WebCore::RenderThemeGdk::RenderThemeGdk):
432         (WebCore::RenderThemeGdk::setCheckboxSize):
433         (WebCore::RenderThemeGdk::paintCheckbox):
434         (WebCore::RenderThemeGdk::setRadioSize):
435         (WebCore::RenderThemeGdk::paintRadio):
436         (WebCore::RenderThemeGdk::paintButton):
437         (WebCore::RenderThemeGdk::copyToContext):
438         (WebCore::RenderThemeGdk::gtkButton):
439         (WebCore::RenderThemeGdk::gtkCheckbox):
440         (WebCore::RenderThemeGdk::gtkRadioButton):
441         (WebCore::RenderThemeGdk::gtkWindowContainer):
442         * platform/gdk/RenderThemeGdk.h:
443
444 2007-07-06  Rob Buis  <buis@kde.org>
445
446         Reviewed by Adam.
447
448         http://bugs.webkit.org/show_bug.cgi?id=14442
449         Adding a stop with value 1.0 to a gradient that has already been used has no effect
450
451         Implement start and end stop handling differently so they are not
452         in the color stop array.
453
454         * html/CanvasGradient.cpp:
455         (WebCore::compareStops):
456         (WebCore::CanvasGradient::getColor):
457         (WebCore::CanvasGradient::findStop):
458
459 2007-07-06  Adam Roben  <aroben@apple.com>
460
461         Fix <rdar://problem/5301994> Garbled text still showing on some sites
462
463         Replace calls to GetGlyphIndices with wkGetGlyphs.
464
465         Reviewed by Alice.
466
467         * platform/win/GlyphPageTreeNodeWin.cpp:
468         (WebCore::GlyphPage::fill): Use wkGetGlyphs.
469         * platform/win/FontDataWin.cpp:
470         (WebCore::FontData::containsCharacters):
471
472 2007-07-06  Matt Lilek  <pewtermoose@gmail.com>
473
474         Not reviewed - Windows build fix.
475
476         * bridge/win/FrameWin.cpp:
477         (WebCore::imageFromSelection):
478
479 2007-07-06  George Staikos  <staikos@kde.org>
480
481         Reviewed by Maciej.
482
483         Switch USE(ICONDATABASE) to ENABLE(ICONDATABASE) and activate the
484         flag via the .pro file
485
486         * WebCore.pro:
487         * loader/icon/IconDatabase.h:
488
489 2007-07-05  John Sullivan  <sullivan@apple.com>
490
491         Reviewed by Adam
492
493         - WebCore part of fix for <rdar://problem/5315033>
494
495         * rendering/RenderObject.h:
496         replaced PaintRestrictionSelectionOnlyWhiteText with PaintRestrictionSelectionOnlyBlackText
497         (WebCore::RenderObject::PaintInfo::PaintInfo):
498         replaced forceWhiteText with forceBlackText
499
500         * rendering/RenderObject.cpp:
501         (WebCore::RenderObject::addLineBoxRects):
502         added a useSelectionHeight parameter, which defaults to false; this method is unimplemented
503         at this level so this has no effect.
504
505         * rendering/RenderText.h:
506         * rendering/RenderText.cpp:
507         (WebCore::RenderText::addLineBoxRects):
508         added a useSelectionHeight parameter, which defaults to false. If true, use the vertical position
509         and height returned by selectionRect rather than replacing it with the more tight-fitting position
510         and height of the line box.
511
512         * dom/Range.h:
513         * dom/Range.cpp:
514         (WebCore::Range::addLineBoxRects):
515         added a useSelectionHeight parameter, which defaults to false. Passes this along to RenderObject.        
516
517         * page/Frame.h:
518         renamed parameter to selectionImage
519         * page/Frame.cpp:
520         (WebCore::Frame::selectionTextRects):
521         pass true for addLineBoxRects new useSelectionHeight parameter, so the rects returned by this new
522         method will match the height that the selection would be painted here
523         (WebCore::Frame::paint):
524         updated for white->black name changes
525         
526         * page/mac/FrameMac.mm:
527         (WebCore::Frame::selectionImage):
528         updated for white->black name changes
529         
530         * rendering/InlineFlowBox.cpp:
531         (WebCore::InlineFlowBox::paintTextDecorations):
532         updated for white->black name changes
533
534         * rendering/RenderLayer.cpp:
535         (WebCore::RenderLayer::paintLayer):
536         updated for white->black name changes
537
538         * rendering/InlineTextBox.cpp:
539         (WebCore::InlineTextBox::paint):
540         updated for white->black name changes, and actually use black instead of white. This was the goal
541         of all the name changes.
542
543 2007-07-05  Anders Carlsson  <andersca@apple.com>
544
545         Reviewed by Oliver.
546
547         Fix layout test failures.
548         
549         * loader/FrameLoader.cpp:
550         (WebCore::FrameLoader::commitProvisionalLoad):
551         Don't make a representation if we're creating the initial document.
552
553 2007-07-05  Alp Toker  <alp.toker@collabora.co.uk>
554
555         Fix Bug 14388: Input in text fields limited to 1024 characters
556         http://bugs.webkit.org/show_bug.cgi?id=14388
557
558         Slightly modified by Adam Roben.
559
560         Reviewed by Adele.
561
562         Tests: fast/forms/input-implicit-length-limit.html
563                fast/forms/input-maxlength.html
564
565         * html/HTMLInputElement.cpp: Bump limit to 524288.
566         (WebCore::HTMLInputElement::init):
567         (WebCore::HTMLInputElement::parseMappedAttribute):
568         * html/HTMLInputElement.h:
569
570 2007-07-05  Anders Carlsson  <andersca@apple.com>
571
572         Build fix.
573         
574         * loader/FrameLoader.cpp:
575         (WebCore::FrameLoader::init):
576
577 2007-07-05  Sam Weinig  <sam@webkit.org>
578
579         Reviewed by Geoff.
580
581         Add focus, blur and close functions to DOMWindow implementation class
582         and move bindings from Window to JSDOMWindow.
583
584         * bindings/js/JSDOMWindowCustom.cpp:
585         (WebCore::JSDOMWindow::customGetOwnPropertySlot):
586         * bindings/js/kjs_window.cpp:
587         (KJS::Window::getOwnPropertySlot):
588         (KJS::WindowFunc::callAsFunction):
589         * bindings/js/kjs_window.h:
590         (KJS::Window::):
591         * bindings/scripts/CodeGeneratorJS.pm: Move prototype function declaration from
592         the implementation to the header.
593         * page/DOMWindow.cpp:
594         (WebCore::DOMWindow::focus):
595         (WebCore::DOMWindow::blur):
596         (WebCore::DOMWindow::close):
597         * page/DOMWindow.h:
598         * page/DOMWindow.idl:
599
600 2007-07-05  Justin Garcia  <justin.garcia@apple.com>
601
602         Reviewed by Harrison.
603
604         <rdar://problem/5279521> REGRESSION: In Mail, a crash occurs at WebCore::Range::startPosition() when attempting to apply alignment to selected image/text in message body
605
606         * editing/TextIterator.cpp:
607         (WebCore::TextIterator::exitNode): Previously emitted content shouldn't have
608         to come from a text node in order to emit a '\n' as we exit block containers.
609
610 2007-07-05  Anders Carlsson  <andersca@apple.com>
611
612         Reviewed by Geoff.
613
614         <rdar://problem/5315284> REGRESSION: Leopard Launch Time - plugins are being accessed at startup.
615
616         Set a response that has a MIME type of "text/html" on the document loader so WebKit won't refresh the 
617         plugin database looking for a plug-in that can handle the document's MIME type (which will be null anyway).
618                  
619         * loader/FrameLoader.cpp:
620         (WebCore::FrameLoader::init):
621
622 2007-07-05  Anders Carlsson  <andersca@apple.com>
623
624         Reviewed by Oliver.
625
626         <rdar://problem/5106788>
627         WebKit loads user style sheets too late as seen in Mail (breaks DataDetectors; Mail flashes wrong font)
628
629         Let the document know when the user style sheet is loading so that it try not to display anything
630         until the user style sheet has finished loading.
631         
632         * page/Frame.cpp:
633         (WebCore::UserStyleSheetLoader::UserStyleSheetLoader):
634         (WebCore::UserStyleSheetLoader::~UserStyleSheetLoader):
635         (WebCore::UserStyleSheetLoader::setCSSStyleSheet):
636         (WebCore::Frame::setUserStyleSheetLocation):
637
638 2007-07-05  Sam Weinig  <sam@webkit.org>
639
640         Reviewed by Darin.
641
642         Move JSDOMWindow overriding getOwnPropertySlot logic from KJS::Window
643         up into JSDOMWindow.  No change in functionality so no testcase required. 
644
645         * bindings/js/JSDOMWindowCustom.cpp:
646         (WebCore::JSDOMWindow::customGetOwnPropertySlot):
647         * bindings/js/kjs_window.cpp:
648         (KJS::Window::getOwnPropertySlot):
649         * bindings/js/kjs_window.h:
650
651 2007-07-05  Mitz Pettel  <mitz@webkit.org>
652
653         Reviewed and Landed by Sam.
654
655         - fix bug 14465 for window.showModalDialog
656
657         * bindings/js/kjs_window.cpp:
658         (KJS::parseModalDialogFeatures):
659         (KJS::showModalDialog):
660
661 2007-07-05  Sam Weinig  <sam@webkit.org>
662
663         Reviewed by Mitz.
664
665         Patch for http://bugs.webkit.org/show_bug.cgi?id=14465
666         window.open() uses the literal "undefined" as the URL
667
668         * bindings/js/kjs_window.cpp:
669         (KJS::WindowFunc::callAsFunction): add checks for undefined and null values when setting the url.
670         * manual-tests/open-url-undefined.html: Added.
671
672 2007-07-05  Holger Hans Peter Freyther  <zecke@selfish.org>
673
674         Reviewed by Rob Buis.
675
676         Rework FontData and FontPlatformData for the Gdk work to make valgrind
677         happy.
678
679         Move destroying of FontConfig and Cairo objects held in FontPlatformData
680         to FontData::platformDestroy. The ownership of these objects is held by
681         FontData. This is following the Mac and Qt port at least.
682
683         Currently it is possible that FontPlatformData will not create cairo resources
684         in this case at least make sure the variables are initialized to 0.
685         Initialize x,y of the cairo_glyph_t with zero to avoid extents.x_advance depending
686         on subtracing with not defined values.
687
688         FontPlatformData::hash. Using FontDescription is a bad idea as we don't have a clue
689         about how it is packed, if holes are present, etc. The FcPattern and the m_fontMatrix
690         should be good enough to describe the Font. All other objects are created using these
691         variables
692
693         Replace C-style casts with C++ casts, in this case reinterpret_cast.
694
695         * platform/gdk/FontDataGdk.cpp:
696         (WebCore::FontData::platformInit): Don't assert
697         (WebCore::FontData::platformDestroy): Take over ownership
698         (WebCore::FontData::platformWidthForGlyph): initialize
699         (WebCore::FontData::setFont): be paranoid and assert
700         * platform/gdk/FontPlatformData.h:
701         (WebCore::FontPlatformData::FontPlatformData): Initialize everything
702         (WebCore::FontPlatformData::hash): make valgrind happy and don't use m_fontDescription
703         * platform/gdk/FontPlatformDataGdk.cpp:
704         (WebCore::FontPlatformData::FontPlatformData):
705         (WebCore::FontPlatformData::~FontPlatformData): FontData::platformDestroy will do this
706         (WebCore::FontPlatformData::list): Don't use C-style casts.
707         (WebCore::FontPlatformData::setFont): m_fontFace, m_fontMatrix, m_options might not be initialized
708         (WebCore::FontPlatformData::operator==): Don't use C-style casts.
709
710 2007-07-05  Alp Toker  <alp.toker@collabora.co.uk>
711
712         Reviewed by Mark Rowe.
713
714         http://bugs.webkit.org/show_bug.cgi?id=14445
715         GraphicsContextCairo code style cleanup
716
717         Follow the cr naming convention for cairo_t*.
718         Remove trailing whitespace.
719         Replace C casts with C++ casts.
720         Avoid needless casts.
721
722         * platform/graphics/cairo/GraphicsContextCairo.cpp:
723         (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate):
724         (WebCore::GraphicsContextPlatformPrivate::~GraphicsContextPlatformPrivate):
725         (WebCore::GraphicsContext::GraphicsContext):
726         (WebCore::GraphicsContext::platformContext):
727         (WebCore::GraphicsContext::savePlatformState):
728         (WebCore::GraphicsContext::restorePlatformState):
729         (WebCore::GraphicsContext::drawRect):
730         (WebCore::adjustLineToPixelBoundaries):
731         (WebCore::GraphicsContext::drawLine):
732         (WebCore::GraphicsContext::drawEllipse):
733         (WebCore::GraphicsContext::strokeArc): Save/restore the graphics state.
734         (WebCore::GraphicsContext::drawConvexPolygon):
735         (WebCore::GraphicsContext::fillRect):
736         (WebCore::GraphicsContext::clip):
737         (WebCore::GraphicsContext::drawFocusRing):
738         (WebCore::GraphicsContext::roundToDevicePixels):
739         (WebCore::GraphicsContext::translate):
740         (WebCore::GraphicsContext::origin):
741         (WebCore::GraphicsContext::setPlatformStrokeThickness):
742         (WebCore::GraphicsContext::setPlatformStrokeStyle):
743         (WebCore::GraphicsContext::setPlatformFont):
744         (WebCore::GraphicsContext::concatCTM):
745         (WebCore::GraphicsContext::addInnerRoundedRectClip):
746         (WebCore::GraphicsContext::beginTransparencyLayer):
747         (WebCore::GraphicsContext::endTransparencyLayer):
748         (WebCore::GraphicsContext::clearRect):
749         (WebCore::GraphicsContext::setLineCap):
750         (WebCore::GraphicsContext::setLineJoin):
751         (WebCore::GraphicsContext::setMiterLimit):
752         (WebCore::GraphicsContext::setCompositeOperation):
753         (WebCore::GraphicsContext::beginPath):
754         (WebCore::GraphicsContext::addPath):
755         (WebCore::GraphicsContext::rotate):
756         (WebCore::GraphicsContext::scale):
757         * platform/graphics/cairo/ImageBufferCairo.cpp:
758         (WebCore::ImageBuffer::ImageBuffer):
759         * platform/graphics/cairo/ImageCairo.cpp: Avoid the confusing ctxt/context naming scheme.
760         (WebCore::BitmapImage::draw):
761         (WebCore::Image::drawPattern):
762
763 2007-07-05  Alp Toker  <alp.toker@collabora.co.uk>
764
765         Reviewed by Mark Rowe.
766
767         http://bugs.webkit.org/show_bug.cgi?id=14531
768         Cairo SVGImage::nativeImageForCurrentFrame() has no return
769
770         Return the Cairo surface from the frame cache.
771
772         Also add a fall-through else macro with notImplemented() so that future
773         ports do not make the same mistake.
774
775         * platform/graphics/svg/SVGImage.cpp:
776         (WebCore::SVGImage::nativeImageForCurrentFrame):
777
778 2007-07-05  Alp Toker  <alp.toker@collabora.co.uk>
779
780         Reviewed by Mark Rowe.
781
782         http://bugs.webkit.org/show_bug.cgi?id=14513
783         Cairo animated GIF support is broken
784
785         Implement ImageSource::frameIsCompleteAtIndex() to enable animated GIFs.
786
787         * platform/graphics/cairo/ImageSourceCairo.cpp:
788         (WebCore::ImageSource::frameIsCompleteAtIndex):
789
790 2007-07-04  Matt Perry  <mpComplete@gmail.com>
791
792         Reviewed by Adam.
793
794         Fix for http://bugs.webkit.org/show_bug.cgi?id=13400
795         Bug 13400: REGRESSION (r20809-20814): No back entry created for navigations created by assigning to document.location
796         <rdar://problem/5153025>
797
798         Treat userGesture as always true for setLocation, forcing a back/forward
799         entry to be created.
800
801         * bindings/js/JSHTMLDocumentCustom.cpp:
802         (WebCore::JSHTMLDocument::setLocation):
803
804 2007-07-04  Adam Roben  <aroben@apple.com>
805
806         Restore MouseEventWithHitTestResults::targetNode's old behavior
807
808         Reviewed by Mark.
809
810         Fixes fast/images/imagemap-case and fast/replace/image-map.
811
812         * page/MouseEventWithHitTestResults.cpp:
813         (WebCore::MouseEventWithHitTestResults::targetNode): Use the inner
814         node, not the inner non-shared node.
815
816 2007-07-04  Adam Roben  <aroben@apple.com>
817
818         Mac, Qt, and Gdk build fixes.
819
820         * page/EventHandler.h:
821         * page/gdk/EventHandlerGdk.cpp:
822         * page/mac/EventHandlerMac.mm:
823         (WebCore::EventHandler::passSubframeEventToSubframe):
824         * page/qt/EventHandlerQt.cpp:
825
826 2007-07-04  Adam Roben  <aroben@apple.com>
827
828         Fix the Qt/Gdk builds.
829
830         * page/gdk/EventHandlerGdk.cpp:
831         * page/qt/EventHandlerQt.cpp:
832
833 2007-07-04  Adam Roben  <aroben@apple.com>
834
835         Move tooltip logic down into WebCore so that it can be shared cross-platform
836
837         Reviewed by Sam.
838
839         * page/Chrome.cpp:
840         (WebCore::Chrome::setToolTip): Added.
841         * page/Chrome.h:
842         * page/ChromeClient.h:
843         * page/EventHandler.cpp:
844         (WebCore::EventHandler::mouseMoved): Call Chrome::setToolTip.
845         * platform/graphics/svg/SVGImageEmptyClients.h:
846
847         Added stubs for Gdk:
848
849         * platform/gdk/ChromeClientGdk.h:
850         * platform/gdk/TemporaryLinkStubs.cpp:
851         (ChromeClientGdk::setToolTip):
852
853 2007-07-04  Adam Roben  <aroben@apple.com>
854
855         Add Settings::showsURLsInToolTips
856
857         Reviewed by Sam.
858
859         * WebCore.exp:
860         * page/Settings.cpp:
861         (WebCore::Settings::Settings):
862         * page/Settings.h:
863
864 2007-07-04  Adam Roben  <aroben@apple.com>
865
866         Move logic for calling mouseDidMoveOverElement into WebCore
867
868         Reviewed by Sam.
869
870         * page/EventHandler.cpp:
871         (WebCore::EventHandler::mouseMoved): Added. Calls Chrome::mouseDidMoveOverElement.
872         (WebCore::EventHandler::handleMouseMoveEvent): Now takes an optional
873         HitTestResult* parameter which is used to communicate to the caller the
874         node the mouse is over.
875         * page/EventHandler.h:
876         * page/mac/EventHandlerMac.mm:
877         (WebCore::EventHandler::mouseMoved): Changed to call the overloaded
878         mouseMoved().
879         (WebCore::EventHandler::passMouseMoveEventToSubframe): Pass hoveredNode
880         through to the subframe so we can get the deepest node hovered, not
881         just the node's parent frame.
882         * page/win/EventHandlerWin.cpp:
883         (WebCore::EventHandler::passMouseMoveEventToSubframe): Ditto.
884
885 2007-07-04  Adam Roben  <aroben@apple.com>
886
887         Add Chrome::mouseDidMoveOverElement
888
889         This does the work of calling up to the ChromeClient (which will call
890         the UI delegate).
891
892         Reviewed by Sam.
893
894         * page/Chrome.cpp:
895         (WebCore::Chrome::mouseDidMoveOverElement): Added.
896         * page/Chrome.h:
897         * page/ChromeClient.h:
898         * platform/graphics/svg/SVGImageEmptyClients.h: Updated for change to
899         ChromeClient.
900         * platform/gdk/ChromeClientGdk.h:
901         * platform/gdk/TemporaryLinkStubs.cpp:
902         (ChromeClientGdk::mouseDidMoveOverElement):
903
904 2007-07-04  Adam Roben  <aroben@apple.com>
905
906         Changed PlatformMouseEvent to store the modifier flags of the event
907
908         Reviewed by Sam.
909
910         * platform/PlatformMouseEvent.h:
911         (WebCore::PlatformMouseEvent::PlatformMouseEvent):
912         * platform/mac/PlatformMouseEventMac.mm:
913         (WebCore::PlatformMouseEvent::PlatformMouseEvent):
914         * platform/win/PlatformMouseEventWin.cpp:
915         (WebCore::PlatformMouseEvent::PlatformMouseEvent):
916
917 2007-07-04  Adam Roben  <aroben@apple.com>
918
919         Add HitTestResult::setToNonShadowAncestor
920
921         Reviewed by Sam.
922
923         * page/EventHandler.cpp:
924         (WebCore::EventHandler::hitTestResultAtPoint): Moved logic into
925         HitTestResult::setToNonShadowAncestor.
926         * rendering/HitTestResult.cpp:
927         (WebCore::HitTestResult::setToNonShadowAncestor):
928         * rendering/HitTestResult.h:
929
930 2007-07-04  Adam Roben  <aroben@apple.com>
931
932         Change MouseEventWithHitTestResults to hold onto a HitTestResult
933
934         Reviewed by Sam.
935
936         * dom/Document.cpp:
937         (WebCore::Document::prepareMouseEvent):
938         * page/MouseEventWithHitTestResults.cpp:
939         (WebCore::MouseEventWithHitTestResults::MouseEventWithHitTestResults):
940         (WebCore::MouseEventWithHitTestResults::targetNode):
941         (WebCore::MouseEventWithHitTestResults::localPoint):
942         (WebCore::MouseEventWithHitTestResults::scrollbar):
943         * page/MouseEventWithHitTestResults.h:
944         (WebCore::MouseEventWithHitTestResults::event):
945         (WebCore::MouseEventWithHitTestResults::hitTestResult):
946
947 2007-07-04  Matt Lilek  <pewtermoose@gmail.com>
948
949         Not reviewed, gdk build fix.
950
951         * platform/gdk/FrameGdk.cpp:
952
953 2007-07-05  Antti Koivisto  <antti@apple.com>
954
955         Reviewed by John.
956         
957         Fix Repro crash due to infinite recursion in HTMLParser::handleError @ youos.com
958         <rdar://problem/5237811>
959         
960         It is possible to add table parts (thead etc) without table ancestor to a document fragment. If a new table element
961         was added to such a part, as in
962         
963         div.innerHTML = '<tbody><table>';
964         
965         the parser error handling code would try to pop the previous table as normal. However since
966         the table does not actually exist nothing would happen and parser would go to infinite recursion.
967         
968         Solution here is to pop table parts one by one when handling the error inside a fragment instead of trying to pop
969         the table straight away (as it might not exist).
970
971         * html/HTMLParser.cpp:
972         (WebCore::HTMLParser::handleError):
973
974 2007-07-04  Qing Zhao  <qing@staikos.net>
975
976         Reviewed by George Staikos.
977
978         Draw menulist (comboboxes) without text overlap on the button.
979
980         * platform/qt/RenderThemeQt.cpp:
981         (WebCore::RenderThemeQt::setPopupPadding):
982
983 2007-07-04  George Staikos  <staikos@kde.org>
984
985         Compile
986
987         * page/qt/FrameQt.cpp:
988         * WebCore.pro:
989
990 2007-07-04  Sam Weinig  <sam@webkit.org>
991
992         Reviewed by Mitz.
993
994         Patch for http://bugs.webkit.org/show_bug.cgi?id=14504
995         REGRESSION (r23573): Amazon Book Excerpt can not be viewed in recent nightly
996
997         - Made it possible (again) to shadow window properties with local variable names.
998
999         Test: fast/dom/Window/window-property-shadowing.html
1000
1001         * bindings/js/JSDOMWindowCustom.cpp:
1002         (WebCore::JSDOMWindow::customPut):
1003         * bindings/js/kjs_window.cpp:
1004         (KJS::Window::put):
1005         * bindings/scripts/CodeGeneratorJS.pm:
1006         * page/DOMWindow.idl:
1007
1008 2007-07-03  Alice Liu  <alice.liu@apple.com>
1009
1010         Reviewed by Adam.
1011
1012         Fixed <rdar://problem/5225119> support smart pasting on Windows
1013
1014         * WebCore.vcproj/WebCore.vcproj:
1015         * WebCore.xcodeproj/project.pbxproj:
1016             Added new files
1017         * editing/SmartReplace.cpp: Added.
1018         (WebCore::isCharacterSmartReplaceExempt):
1019             Added non-CF implementation placeholder
1020         * editing/SmartReplace.h: Added.
1021         * editing/SmartReplaceCF.cpp: Added.
1022         (WebCore::getSmartSet):
1023         (WebCore::isCharacterSmartReplaceExempt):
1024             Added new implementation
1025
1026         * bridge/win/FrameWin.cpp:
1027         * page/Frame.h:
1028         * page/mac/FrameMac.mm:
1029             Removed old declaration and implementation
1030
1031         * editing/ReplaceSelectionCommand.cpp:
1032         (WebCore::ReplaceSelectionCommand::doApply):
1033             Changed to call the new function instead of old
1034
1035         * page/mac/WebCoreFrameBridge.h:
1036         * page/mac/WebCoreFrameBridge.mm:
1037             Removed old declaration and implementation
1038         (-[WebCoreFrameBridge smartInsertForString:replacingRange:beforeString:afterString:]):
1039             Changed to call the new function instead of old
1040
1041         * platform/win/PasteboardWin.cpp:
1042         (WebCore::Pasteboard::Pasteboard):
1043             Register new clipboard format
1044         (WebCore::Pasteboard::writeSelection):
1045             Set data for smartpaste format on clipboard
1046         (WebCore::Pasteboard::canSmartReplace):
1047             Added non-stub implementation
1048
1049 2007-07-04  Qing Zhao  <qing@staikos.net>
1050
1051         Reviewed by George Staikos.
1052
1053         Similar to the PlatformScrollbar fixes, adjust the painter to make the
1054         styler draw all subcontrols, and in this case the focus rect, in the
1055         proper location
1056
1057         * platform/qt/RenderThemeQt.cpp:
1058         (WebCore::RenderThemeQt::paintMenuList):
1059
1060 2007-07-04  Mitz Pettel  <mitz@webkit.org>
1061
1062         Reviewed by Maciej.
1063
1064         - fix http://bugs.webkit.org/show_bug.cgi?id=14495
1065           REGRESSION: Wrong cursor is displayed during drag and drop when text is selected
1066           <rdar://problem/5312384>
1067
1068         No test possible because DumpRenderTree cannot query the current cursor.
1069
1070         * page/EventHandler.cpp:
1071         (WebCore::EventHandler::selectCursor): Changed into a member function and
1072         added that if the last mouse down event could not have started a
1073         selection, then the cursor should not change to an I-beam unconditionally.
1074         (WebCore::EventHandler::handleMouseMoveEvent):
1075         * page/EventHandler.h:
1076
1077 2007-07-04  Holger Hans Peter Freyther  <zecke@selfish.org>
1078
1079         Reviewed by Rob Buis.
1080
1081         A little progress in tracking dependencies.
1082
1083         * WebCore.pro: Add DEPENDPATH for the Gdk port.
1084
1085 2007-07-03  Darin Adler  <darin@apple.com>
1086
1087         Reviewed by Tim Hatcher.
1088
1089         - fix <rdar://problem/5221297> Font family name in the cssText for a DOMCSSStyleDeclaration needs quotes
1090
1091         Test: editing/style/font-family-with-space.html
1092
1093         * css/FontFamilyValue.cpp:
1094         (WebCore::isValidCSSIdentifier): Added. Implements the same rule that the CSS lexer does.
1095         (WebCore::quoteStringIfNeeded): Changed to call isValidCSSIdentifier instead of just
1096         checking for a leading "#" character.
1097         * editing/markup.cpp:
1098         (WebCore::escapeTextForMarkup): Changed to take a String parameter for better efficiency.
1099         (WebCore::renderedText): Changed to return a String for better efficiency.
1100         (WebCore::addNamespace): Updated to pass String to escapeTextForMarkup.
1101         (WebCore::startMarkup): Updated to pass String to escapeTextForMarkup. Added missing call
1102         to escapeTextForMarkup in the special case for the style property.
1103         (WebCore::createMarkup): Changed from single quotes to double quotes and also added missing
1104         call to escapeTextForMarkup in two special cases for the style property.
1105
1106 2007-07-03  Sam Weinig  <sam@webkit.org>
1107
1108         Reviewed by Darin.
1109
1110         Twelfth round of fixes for implicit 64-32 bit conversion errors.
1111         <rdar://problem/5292262>
1112
1113         - Add casts and accompanying FIXMEs to avoid remaining compiler errors.
1114
1115         * WebCore.xcodeproj/project.pbxproj:
1116         * loader/FrameLoader.cpp:
1117         (WebCore::FrameLoader::opened):
1118         (WebCore::FrameLoader::sendRemainingDelegateMessages):
1119         * loader/FrameLoader.h:
1120         * loader/ResourceLoader.cpp:
1121         (WebCore::ResourceLoader::didReceiveData):
1122         * platform/network/mac/ResourceHandleMac.mm:
1123         (-[WebCoreResourceHandleAsDelegate connection:didReceiveData:lengthReceived:]):
1124         (-[WebCoreResourceHandleAsDelegate connection:willStopBufferingData:]):
1125         * platform/network/mac/ResourceResponseMac.mm:
1126         (WebCore::ResourceResponse::nsURLResponse):
1127
1128 2007-07-03  Anders Carlsson  <andersca@apple.com>
1129
1130         Reviewed by Adam.
1131
1132         <rdar://problem/5093862>
1133         Nothing shown in plugin area when trying to play content using the DivX plugin
1134         
1135         Defer calling SetWindow for the DivX plugin, just like we do with the WMP plugin.
1136                 
1137         * plugins/win/PluginViewWin.cpp:
1138         (WebCore::PluginViewWin::determineQuirks):
1139
1140 2007-07-03  Sam Weinig  <sam@webkit.org>
1141
1142         Reviewed by Brady Eidson.
1143
1144         Ninth round of fixes for implicit 64-32 bit conversion errors.
1145         <rdar://problem/5292262>
1146
1147         - Fix function signature to use unsigned long instead of unsigned long long.
1148
1149         * loader/ProgressTracker.cpp:
1150         (WebCore::ProgressTracker::completeProgress):
1151         * loader/ProgressTracker.h:
1152
1153 2007-07-03  Sam Weinig  <sam@webkit.org>
1154
1155         Reviewed by Oliver.
1156
1157         Eighth round of fixes for implicit 64-32 bit conversion errors.
1158         <rdar://problem/5292262>
1159
1160         - Convert SVG implementation files to use floats instead of doubles
1161           to match the spec/IDLs.
1162
1163         * bindings/scripts/CodeGeneratorJS.pm:
1164         * ksvg2/svg/SVGAngle.cpp:
1165         * ksvg2/svg/SVGAnimatedTemplate.h:
1166         * ksvg2/svg/SVGAnimationElement.cpp:
1167         (WebCore::SVGAnimationElement::getEndTime):
1168         (WebCore::SVGAnimationElement::getStartTime):
1169         (WebCore::SVGAnimationElement::getCurrentTime):
1170         (WebCore::SVGAnimationElement::getSimpleDuration):
1171         * ksvg2/svg/SVGAnimationElement.h:
1172         * ksvg2/svg/SVGFitToViewBox.cpp:
1173         (WebCore::SVGFitToViewBox::parseViewBox):
1174         * ksvg2/svg/SVGLength.cpp:
1175         (WebCore::SVGLength::setValueAsString):
1176         * ksvg2/svg/SVGLinearGradientElement.cpp:
1177         (WebCore::SVGLinearGradientElement::buildGradient):
1178         * ksvg2/svg/SVGMatrix.idl:
1179         * ksvg2/svg/SVGNumber.idl:
1180         * ksvg2/svg/SVGParserUtilities.cpp:
1181         (WebCore::SVGPathParser::parseSVG):
1182         (WebCore::SVGPathParser::calculateArc):
1183         (WebCore::SVGPathParser::svgLineToHorizontal):
1184         (WebCore::SVGPathParser::svgLineToVertical):
1185         (WebCore::SVGPathParser::svgCurveToCubicSmooth):
1186         (WebCore::SVGPathParser::svgCurveToQuadratic):
1187         (WebCore::SVGPathParser::svgCurveToQuadraticSmooth):
1188         (WebCore::SVGPathParser::svgArcTo):
1189         * ksvg2/svg/SVGParserUtilities.h:
1190         * ksvg2/svg/SVGPathElement.cpp:
1191         (WebCore::SVGPathElement::SVGPathElement):
1192         (WebCore::SVGPathElement::getTotalLength):
1193         (WebCore::SVGPathElement::getPointAtLength):
1194         (WebCore::SVGPathElement::getPathSegAtLength):
1195         (WebCore::SVGPathElement::createSVGPathSegMovetoAbs):
1196         (WebCore::SVGPathElement::createSVGPathSegMovetoRel):
1197         (WebCore::SVGPathElement::createSVGPathSegLinetoAbs):
1198         (WebCore::SVGPathElement::createSVGPathSegLinetoRel):
1199         (WebCore::SVGPathElement::createSVGPathSegCurvetoCubicAbs):
1200         (WebCore::SVGPathElement::createSVGPathSegCurvetoCubicRel):
1201         (WebCore::SVGPathElement::createSVGPathSegCurvetoQuadraticAbs):
1202         (WebCore::SVGPathElement::createSVGPathSegCurvetoQuadraticRel):
1203         (WebCore::SVGPathElement::createSVGPathSegArcAbs):
1204         (WebCore::SVGPathElement::createSVGPathSegArcRel):
1205         (WebCore::SVGPathElement::createSVGPathSegLinetoHorizontalAbs):
1206         (WebCore::SVGPathElement::createSVGPathSegLinetoHorizontalRel):
1207         (WebCore::SVGPathElement::createSVGPathSegLinetoVerticalAbs):
1208         (WebCore::SVGPathElement::createSVGPathSegLinetoVerticalRel):
1209         (WebCore::SVGPathElement::createSVGPathSegCurvetoCubicSmoothAbs):
1210         (WebCore::SVGPathElement::createSVGPathSegCurvetoCubicSmoothRel):
1211         (WebCore::SVGPathElement::createSVGPathSegCurvetoQuadraticSmoothAbs):
1212         (WebCore::SVGPathElement::createSVGPathSegCurvetoQuadraticSmoothRel):
1213         (WebCore::SVGPathElement::svgMoveTo):
1214         (WebCore::SVGPathElement::svgLineTo):
1215         (WebCore::SVGPathElement::svgLineToHorizontal):
1216         (WebCore::SVGPathElement::svgLineToVertical):
1217         (WebCore::SVGPathElement::svgCurveToCubic):
1218         (WebCore::SVGPathElement::svgCurveToCubicSmooth):
1219         (WebCore::SVGPathElement::svgCurveToQuadratic):
1220         (WebCore::SVGPathElement::svgCurveToQuadraticSmooth):
1221         (WebCore::SVGPathElement::svgArcTo):
1222         (WebCore::SVGPathElement::parseMappedAttribute):
1223         * ksvg2/svg/SVGPathElement.h:
1224         * ksvg2/svg/SVGPathSegArc.cpp:
1225         (WebCore::SVGPathSegArcAbs::SVGPathSegArcAbs):
1226         (WebCore::SVGPathSegArcAbs::setX):
1227         (WebCore::SVGPathSegArcAbs::x):
1228         (WebCore::SVGPathSegArcAbs::setY):
1229         (WebCore::SVGPathSegArcAbs::y):
1230         (WebCore::SVGPathSegArcAbs::setR1):
1231         (WebCore::SVGPathSegArcAbs::r1):
1232         (WebCore::SVGPathSegArcAbs::setR2):
1233         (WebCore::SVGPathSegArcAbs::r2):
1234         (WebCore::SVGPathSegArcAbs::setAngle):
1235         (WebCore::SVGPathSegArcAbs::angle):
1236         (WebCore::SVGPathSegArcRel::SVGPathSegArcRel):
1237         (WebCore::SVGPathSegArcRel::setX):
1238         (WebCore::SVGPathSegArcRel::x):
1239         (WebCore::SVGPathSegArcRel::setY):
1240         (WebCore::SVGPathSegArcRel::y):
1241         (WebCore::SVGPathSegArcRel::setR1):
1242         (WebCore::SVGPathSegArcRel::r1):
1243         (WebCore::SVGPathSegArcRel::setR2):
1244         (WebCore::SVGPathSegArcRel::r2):
1245         (WebCore::SVGPathSegArcRel::setAngle):
1246         (WebCore::SVGPathSegArcRel::angle):
1247         * ksvg2/svg/SVGPathSegArc.h:
1248         * ksvg2/svg/SVGPathSegCurvetoCubic.cpp:
1249         (WebCore::SVGPathSegCurvetoCubicAbs::SVGPathSegCurvetoCubicAbs):
1250         (WebCore::SVGPathSegCurvetoCubicAbs::setX):
1251         (WebCore::SVGPathSegCurvetoCubicAbs::x):
1252         (WebCore::SVGPathSegCurvetoCubicAbs::setY):
1253         (WebCore::SVGPathSegCurvetoCubicAbs::y):
1254         (WebCore::SVGPathSegCurvetoCubicAbs::setX1):
1255         (WebCore::SVGPathSegCurvetoCubicAbs::x1):
1256         (WebCore::SVGPathSegCurvetoCubicAbs::setY1):
1257         (WebCore::SVGPathSegCurvetoCubicAbs::y1):
1258         (WebCore::SVGPathSegCurvetoCubicAbs::setX2):
1259         (WebCore::SVGPathSegCurvetoCubicAbs::x2):
1260         (WebCore::SVGPathSegCurvetoCubicAbs::setY2):
1261         (WebCore::SVGPathSegCurvetoCubicAbs::y2):
1262         (WebCore::SVGPathSegCurvetoCubicRel::SVGPathSegCurvetoCubicRel):
1263         (WebCore::SVGPathSegCurvetoCubicRel::setX):
1264         (WebCore::SVGPathSegCurvetoCubicRel::x):
1265         (WebCore::SVGPathSegCurvetoCubicRel::setY):
1266         (WebCore::SVGPathSegCurvetoCubicRel::y):
1267         (WebCore::SVGPathSegCurvetoCubicRel::setX1):
1268         (WebCore::SVGPathSegCurvetoCubicRel::x1):
1269         (WebCore::SVGPathSegCurvetoCubicRel::setY1):
1270         (WebCore::SVGPathSegCurvetoCubicRel::y1):
1271         (WebCore::SVGPathSegCurvetoCubicRel::setX2):
1272         (WebCore::SVGPathSegCurvetoCubicRel::x2):
1273         (WebCore::SVGPathSegCurvetoCubicRel::setY2):
1274         (WebCore::SVGPathSegCurvetoCubicRel::y2):
1275         * ksvg2/svg/SVGPathSegCurvetoCubic.h:
1276         * ksvg2/svg/SVGPathSegCurvetoCubicSmooth.cpp:
1277         (WebCore::SVGPathSegCurvetoCubicSmoothAbs::SVGPathSegCurvetoCubicSmoothAbs):
1278         (WebCore::SVGPathSegCurvetoCubicSmoothAbs::setX):
1279         (WebCore::SVGPathSegCurvetoCubicSmoothAbs::x):
1280         (WebCore::SVGPathSegCurvetoCubicSmoothAbs::setY):
1281         (WebCore::SVGPathSegCurvetoCubicSmoothAbs::y):
1282         (WebCore::SVGPathSegCurvetoCubicSmoothAbs::setX2):
1283         (WebCore::SVGPathSegCurvetoCubicSmoothAbs::x2):
1284         (WebCore::SVGPathSegCurvetoCubicSmoothAbs::setY2):
1285         (WebCore::SVGPathSegCurvetoCubicSmoothAbs::y2):
1286         (WebCore::SVGPathSegCurvetoCubicSmoothRel::SVGPathSegCurvetoCubicSmoothRel):
1287         (WebCore::SVGPathSegCurvetoCubicSmoothRel::setX):
1288         (WebCore::SVGPathSegCurvetoCubicSmoothRel::x):
1289         (WebCore::SVGPathSegCurvetoCubicSmoothRel::setY):
1290         (WebCore::SVGPathSegCurvetoCubicSmoothRel::y):
1291         (WebCore::SVGPathSegCurvetoCubicSmoothRel::setX2):
1292         (WebCore::SVGPathSegCurvetoCubicSmoothRel::x2):
1293         (WebCore::SVGPathSegCurvetoCubicSmoothRel::setY2):
1294         (WebCore::SVGPathSegCurvetoCubicSmoothRel::y2):
1295         * ksvg2/svg/SVGPathSegCurvetoCubicSmooth.h:
1296         * ksvg2/svg/SVGPathSegCurvetoQuadratic.cpp:
1297         (WebCore::SVGPathSegCurvetoQuadraticAbs::SVGPathSegCurvetoQuadraticAbs):
1298         (WebCore::SVGPathSegCurvetoQuadraticAbs::setX):
1299         (WebCore::SVGPathSegCurvetoQuadraticAbs::x):
1300         (WebCore::SVGPathSegCurvetoQuadraticAbs::setY):
1301         (WebCore::SVGPathSegCurvetoQuadraticAbs::y):
1302         (WebCore::SVGPathSegCurvetoQuadraticAbs::setX1):
1303         (WebCore::SVGPathSegCurvetoQuadraticAbs::x1):
1304         (WebCore::SVGPathSegCurvetoQuadraticAbs::setY1):
1305         (WebCore::SVGPathSegCurvetoQuadraticAbs::y1):
1306         (WebCore::SVGPathSegCurvetoQuadraticRel::SVGPathSegCurvetoQuadraticRel):
1307         (WebCore::SVGPathSegCurvetoQuadraticRel::setX):
1308         (WebCore::SVGPathSegCurvetoQuadraticRel::x):
1309         (WebCore::SVGPathSegCurvetoQuadraticRel::setY):
1310         (WebCore::SVGPathSegCurvetoQuadraticRel::y):
1311         (WebCore::SVGPathSegCurvetoQuadraticRel::setX1):
1312         (WebCore::SVGPathSegCurvetoQuadraticRel::x1):
1313         (WebCore::SVGPathSegCurvetoQuadraticRel::setY1):
1314         (WebCore::SVGPathSegCurvetoQuadraticRel::y1):
1315         * ksvg2/svg/SVGPathSegCurvetoQuadratic.h:
1316         (WebCore::SVGPathSegCurvetoQuadraticRel::toString):
1317         * ksvg2/svg/SVGPathSegCurvetoQuadraticSmooth.cpp:
1318         (WebCore::SVGPathSegCurvetoQuadraticSmoothAbs::SVGPathSegCurvetoQuadraticSmoothAbs):
1319         (WebCore::SVGPathSegCurvetoQuadraticSmoothAbs::setX):
1320         (WebCore::SVGPathSegCurvetoQuadraticSmoothAbs::x):
1321         (WebCore::SVGPathSegCurvetoQuadraticSmoothAbs::setY):
1322         (WebCore::SVGPathSegCurvetoQuadraticSmoothAbs::y):
1323         (WebCore::SVGPathSegCurvetoQuadraticSmoothRel::SVGPathSegCurvetoQuadraticSmoothRel):
1324         (WebCore::SVGPathSegCurvetoQuadraticSmoothRel::setX):
1325         (WebCore::SVGPathSegCurvetoQuadraticSmoothRel::x):
1326         (WebCore::SVGPathSegCurvetoQuadraticSmoothRel::setY):
1327         (WebCore::SVGPathSegCurvetoQuadraticSmoothRel::y):
1328         * ksvg2/svg/SVGPathSegCurvetoQuadraticSmooth.h:
1329         * ksvg2/svg/SVGPathSegLineto.cpp:
1330         (WebCore::SVGPathSegLinetoAbs::SVGPathSegLinetoAbs):
1331         (WebCore::SVGPathSegLinetoAbs::setX):
1332         (WebCore::SVGPathSegLinetoAbs::x):
1333         (WebCore::SVGPathSegLinetoAbs::setY):
1334         (WebCore::SVGPathSegLinetoAbs::y):
1335         (WebCore::SVGPathSegLinetoRel::SVGPathSegLinetoRel):
1336         (WebCore::SVGPathSegLinetoRel::setX):
1337         (WebCore::SVGPathSegLinetoRel::x):
1338         (WebCore::SVGPathSegLinetoRel::setY):
1339         (WebCore::SVGPathSegLinetoRel::y):
1340         * ksvg2/svg/SVGPathSegLineto.h:
1341         * ksvg2/svg/SVGPathSegLinetoHorizontal.cpp:
1342         (WebCore::SVGPathSegLinetoHorizontalAbs::SVGPathSegLinetoHorizontalAbs):
1343         (WebCore::SVGPathSegLinetoHorizontalAbs::setX):
1344         (WebCore::SVGPathSegLinetoHorizontalAbs::x):
1345         (WebCore::SVGPathSegLinetoHorizontalRel::SVGPathSegLinetoHorizontalRel):
1346         (WebCore::SVGPathSegLinetoHorizontalRel::setX):
1347         (WebCore::SVGPathSegLinetoHorizontalRel::x):
1348         * ksvg2/svg/SVGPathSegLinetoHorizontal.h:
1349         * ksvg2/svg/SVGPathSegLinetoVertical.cpp:
1350         (WebCore::SVGPathSegLinetoVerticalAbs::SVGPathSegLinetoVerticalAbs):
1351         (WebCore::SVGPathSegLinetoVerticalAbs::setY):
1352         (WebCore::SVGPathSegLinetoVerticalAbs::y):
1353         (WebCore::SVGPathSegLinetoVerticalRel::SVGPathSegLinetoVerticalRel):
1354         (WebCore::SVGPathSegLinetoVerticalRel::setY):
1355         (WebCore::SVGPathSegLinetoVerticalRel::y):
1356         * ksvg2/svg/SVGPathSegLinetoVertical.h:
1357         * ksvg2/svg/SVGPathSegList.cpp:
1358         (WebCore::SVGPathSegList::getPathSegAtLength):
1359         * ksvg2/svg/SVGPathSegList.h:
1360         * ksvg2/svg/SVGPathSegMoveto.cpp:
1361         (WebCore::SVGPathSegMovetoAbs::SVGPathSegMovetoAbs):
1362         (WebCore::SVGPathSegMovetoAbs::setX):
1363         (WebCore::SVGPathSegMovetoAbs::x):
1364         (WebCore::SVGPathSegMovetoAbs::setY):
1365         (WebCore::SVGPathSegMovetoAbs::y):
1366         (WebCore::SVGPathSegMovetoRel::SVGPathSegMovetoRel):
1367         (WebCore::SVGPathSegMovetoRel::setX):
1368         (WebCore::SVGPathSegMovetoRel::x):
1369         (WebCore::SVGPathSegMovetoRel::setY):
1370         (WebCore::SVGPathSegMovetoRel::y):
1371         * ksvg2/svg/SVGPathSegMoveto.h:
1372         * ksvg2/svg/SVGPolyElement.cpp:
1373         (WebCore::SVGPolyElement::svgPolyTo):
1374         * ksvg2/svg/SVGRadialGradientElement.cpp:
1375         (WebCore::SVGRadialGradientElement::buildGradient):
1376         * ksvg2/svg/SVGSVGElement.cpp:
1377         (WebCore::SVGSVGElement::viewport):
1378         (WebCore::SVGSVGElement::getCurrentTime):
1379         * ksvg2/svg/SVGStopElement.cpp:
1380         (WebCore::SVGStopElement::SVGStopElement):
1381         (WebCore::SVGStopElement::parseMappedAttribute):
1382         * ksvg2/svg/SVGStopElement.h:
1383         * ksvg2/svg/SVGTransform.cpp:
1384         (SVGTransform::translate):
1385         (SVGTransform::scale):
1386         * ksvg2/svg/SVGTransformDistance.cpp:
1387         (WebCore::SVGTransformDistance::addToSVGTransform):
1388         (WebCore::SVGTransformDistance::distance):
1389         * ksvg2/svg/SVGTransformable.cpp:
1390         (WebCore::SVGTransformable::parseTransformAttribute):
1391
1392 2007-07-03  Anders Carlsson  <andersca@apple.com>
1393
1394         Reviewed by Darin.
1395
1396         <rdar://problem/5289718>
1397         http://bugs.webkit.org/show_bug.cgi?id=14437
1398         CrashTracer: [REGRESSION] 76 crashes in Safari at com.apple.WebCore: WebCore::Frame::settings const + 6 (14437)
1399         
1400         Based on a patch from Maxime Britto.
1401         
1402         * page/mac/WebCoreFrameBridge.mm:
1403         (-[WebCoreFrameBridge stringByEvaluatingJavaScriptFromString:forceUserGesture:]):
1404         If the script caused the frame to go away, return nil. This can only happen if a plugin in a subframe destroys
1405         its frame.
1406
1407         (-[WebCoreFrameBridge aeDescByEvaluatingJavaScriptFromString:]):
1408         ASSERT that this is only called on the main frame.
1409
1410 2007-07-03  John Sullivan  <sullivan@apple.com>
1411
1412         Written by Darin, reviewed by me
1413         
1414         - fixed <rdar://problem/5249730> REGRESSION (Leopard, around 9A464): Safari opens the same local 
1415           documents more than once due to canonicalization change
1416
1417         * loader/mac/LoaderNSURLExtras.m:
1418         (canonicalURL):
1419         pass URL through KURL so we get KURL's version of canonicalization as well as
1420         NSURLProtocol's version of canonicalization
1421
1422 2007-07-03  Sam Weinig  <sam@webkit.org>
1423
1424         Reviewed by Darin.
1425
1426         Seventh round of fixes for implicit 64-32 bit conversion errors.
1427         <rdar://problem/5292262>
1428
1429         - Adds more narrowPrecision functions to FloatPoint, FloatSize and FloatRect.
1430         - Changes over more implicit conversions to use new functions.
1431
1432         * bindings/js/kjs_window.cpp:
1433         (KJS::WindowFunc::callAsFunction):
1434         * platform/graphics/FloatPoint.cpp:
1435         (WebCore::FloatPoint::matrixTransform):
1436         (WebCore::FloatPoint::narrowPrecision):
1437         * platform/graphics/FloatPoint.h:
1438         * platform/graphics/FloatRect.cpp:
1439         (WebCore::FloatRect::narrowPrecision):
1440         * platform/graphics/FloatRect.h:
1441         * platform/graphics/FloatSize.cpp:
1442         (WebCore::FloatSize::narrowPrecision):
1443         * platform/graphics/FloatSize.h:
1444         * platform/graphics/Path.cpp:
1445         (WebCore::Path::createRoundedRectangle):
1446         (WebCore::Path::createRectangle):
1447         (WebCore::Path::createEllipse):
1448         * platform/graphics/mac/ColorMac.mm:
1449         (WebCore::nsColor):
1450         * platform/graphics/mac/IconMac.mm:
1451         (WebCore::Icon::paint):
1452         * platform/graphics/svg/cg/CgSupport.cpp:
1453         (WebCore::applyStrokeStyleToContext):
1454         * platform/graphics/svg/cg/SVGPaintServerGradientCg.cpp:
1455         (WebCore::CGShadingRefForRadialGradient):
1456         (WebCore::SVGPaintServerGradient::updateQuartzGradientStopsCache):
1457         (WebCore::SVGPaintServerGradient::handleBoundingBoxModeAndGradientTransformation):
1458         * platform/graphics/svg/cg/SVGResourceMaskerCg.mm:
1459         (WebCore::applyLuminanceToAlphaFilter):
1460         (WebCore::applyExpandAlphatoGrayscaleFilter):
1461         (WebCore::transformImageIntoGrayscaleMask):
1462         * platform/mac/WebCoreTextRenderer.mm:
1463         (WebCoreDrawTextAtPoint):
1464         * rendering/RenderPath.cpp:
1465         (WebCore::RenderPath::mapAbsolutePointToLocal):
1466         * rendering/RenderSVGContainer.cpp:
1467         (WebCore::RenderSVGContainer::calcViewport):
1468         * rendering/RenderSVGImage.cpp:
1469         (WebCore::RenderSVGImage::nodeAtPoint):
1470         * rendering/RenderSVGText.cpp:
1471         (WebCore::RenderSVGText::relativeBBox):
1472
1473 2007-07-03  Anders Carlsson  <andersca@apple.com>
1474
1475         Reviewed by Adam.
1476
1477         <rdar://problem/5261523>
1478         Crash playing MP11 on cnbc.com
1479         
1480         The WMP Netscape plugin still creates a window even when windowless mode is turned on. Work around this by
1481         always removing the "windowlessvideo" parameter before passing it to the plugin.
1482         According to http://msdn2.microsoft.com/en-us/library/bb249373.aspx, "The windowlessVideo property is not 
1483         supported for Netscape Navigator. Setting a value for this property in Navigator may yield unexpected results."
1484         
1485         * plugins/win/PluginViewWin.cpp:
1486         (WebCore::PluginViewWndProc):
1487         (WebCore::PluginViewWin::paint):
1488         (WebCore::PluginViewWin::invalidateRect):
1489         (WebCore::PluginViewWin::determineQuirks):
1490         (WebCore::PluginViewWin::setParameters):
1491         (WebCore::PluginViewWin::PluginViewWin):
1492         (WebCore::PluginViewWin::init):
1493         * plugins/win/PluginViewWin.h:
1494         (WebCore::):
1495
1496 2007-07-03  Qing Zhao  <qing@staikos.net>
1497
1498         Reviewed by George Staikos.
1499
1500         Only draw sunken state for appropriate widgets. Not, for example, for
1501         lineedits.
1502
1503         * platform/qt/RenderThemeQt.cpp:
1504         (WebCore::RenderThemeQt::applyTheme):
1505
1506 2007-07-03  Antti Koivisto  <antti@apple.com>
1507
1508         Reviewed by Maciej.
1509         
1510         REGRESSION: misplaced selection ring remains after link is no longer focused.
1511         <rdar://problem/5205580>
1512         
1513         Fix placement of selection ring when part of the ring is in a different layer.
1514
1515         * rendering/RenderFlow.cpp:
1516         (WebCore::RenderFlow::addFocusRingRects): Get coordinates right when moving to a different layer.
1517         * rendering/RenderObject.cpp:
1518         (WebCore::RenderObject::setStyle): 
1519         Don't reset state variables when not necessary.  When repaint() was called at the end of setSyle() it would
1520         get repaint rects wrong in some cases.
1521
1522 2007-07-03  Antti Koivisto  <antti@apple.com>
1523
1524         Reviewed by Maciej.
1525
1526         Blind fix for CrashTracer: [USER] 25 crashes in Safari at com.apple.WebCore: WebCore::Frame::document const + 6
1527         <rdar://problem/5263939>
1528         
1529         No one has managed to reproduce this but it looks like null check is needed here. There are plausible ways
1530         m_frame could be null for a live FrameView object.
1531
1532         * page/FrameView.cpp:
1533         (WebCore::FrameView::needsLayout):
1534
1535 2007-07-02  Oliver Hunt  <oliver@apple.com>
1536
1537         Reviewed by Darin.
1538
1539         Fix for <rdar://problem/5098378> single-pixel image optimization needs to be rewritten to not depend on floating point bitmap
1540         Tested by fast/replaced/image-solid-color-with-alpha.html
1541
1542         Switch from float to byte based bitmap when pulling the color from 1x1 pixel images so
1543         that we can use the single pixel image optimisation in WebKit/win.
1544
1545         * platform/graphics/cg/ImageCG.cpp:
1546         (WebCore::BitmapImage::checkForSolidColor):
1547
1548 2007-07-02  Adam Roben  <aroben@apple.com>
1549
1550         Fix Bug 14498: RenderContainer::positionForCoordinates contains an order of operations error
1551         http://bugs.webkit.org/show_bug.cgi?id=14498
1552
1553         There were two bugs:
1554         1) xPos/yPos were flipped
1555         2) + binds tighter than ?:, so the order of operations was incorrect
1556
1557         Reviewed by Darin.
1558
1559         Test: fast/inline-block/14498-positionForCoordinates.html
1560
1561         * rendering/RenderContainer.cpp:
1562         (WebCore::RenderContainer::positionForCoordinates):
1563
1564 2007-07-02  Darin Adler  <darin@apple.com>
1565
1566         Reviewed by Kevin Decker and Tim Hatcher.
1567
1568         - fix <rdar://problem/5307906> some classes need finalize methods because
1569           of non-trivial work done in dealloc methods
1570
1571         * bindings/objc/DOMRGBColor.mm:
1572         (+[DOMRGBColor initialize]): Added. Tells finalizer to run on main thread,
1573         which is needed because we are sharing a CFDictionary here with no locking.
1574
1575         * bridge/mac/WebCoreAXObject.mm:
1576         (+[WebCoreAXObject initialize]): Added. Tells finalizer to run on main thread.
1577         (-[WebCoreAXObject finalize]): Added. Calls detach.
1578
1579         * WebCore.xcodeproj/project.pbxproj: Let Xcode do what it wants to do.
1580
1581 2007-07-02  Sam Weinig  <sam@webkit.org>
1582
1583         Reviewed by Darin.
1584
1585         Sixth round of fixes for implicit 64-32 bit conversion errors.
1586         <rdar://problem/5292262>
1587
1588         Use new narrowPrecisionToFloat() and narrowPrecisionToCGFloat() where
1589         appropriate.
1590
1591         * html/CanvasRenderingContext2D.cpp:
1592         (WebCore::CanvasRenderingContext2D::setShadow):
1593         (WebCore::CanvasRenderingContext2D::applyShadow):
1594         * html/CanvasStyle.cpp:
1595         (WebCore::CanvasStyle::applyStrokeColor):
1596         (WebCore::CanvasStyle::applyFillColor):
1597         * ksvg2/svg/SVGAngle.cpp:
1598         * ksvg2/svg/SVGAnimationElement.cpp:
1599         (WebCore::SVGAnimationElement::parseKeyNumbers):
1600         (WebCore::parseKeySplines):
1601         (WebCore::SVGAnimationElement::handleTimerEvent):
1602         (WebCore::SVGAnimationElement::updateAnimatedValueForElapsedSeconds):
1603         * ksvg2/svg/SVGPatternElement.cpp:
1604         (WebCore::SVGPatternElement::buildPattern):
1605         * ksvg2/svg/SVGRadialGradientElement.cpp:
1606         (WebCore::SVGRadialGradientElement::buildGradient):
1607         * platform/graphics/cg/AffineTransformCG.cpp:
1608         (WebCore::AffineTransform::AffineTransform):
1609         (WebCore::AffineTransform::setMatrix):
1610         (WebCore::AffineTransform::map):
1611         (WebCore::AffineTransform::setA):
1612         (WebCore::AffineTransform::setB):
1613         (WebCore::AffineTransform::setC):
1614         (WebCore::AffineTransform::setD):
1615         (WebCore::AffineTransform::setE):
1616         (WebCore::AffineTransform::setF):
1617         (WebCore::AffineTransform::scale):
1618         (WebCore::AffineTransform::rotate):
1619         (WebCore::AffineTransform::translate):
1620         (WebCore::AffineTransform::shear):
1621
1622 2007-07-02  John Sullivan  <sullivan@apple.com>
1623
1624         * page/mac/WebCoreFrameBridge.mm:
1625         (-[WebCoreFrameBridge getAllResourceDatas:andResponses:]):
1626         added a comment
1627
1628 2007-07-02  Sam Weinig  <sam@webkit.org>
1629
1630         Rubberstamped by Darin.
1631
1632         Rename FloatConversionUtilities.h to FloatConversion.h.
1633         Fix Win32 build.
1634
1635         * WebCore.vcproj/WebCore.vcproj:
1636         * WebCore.xcodeproj/project.pbxproj:
1637         * platform/DeprecatedString.cpp:
1638         * platform/FloatConversion.h: Copied from platform/FloatConversionUtilities.h.
1639         * platform/FloatConversionUtilities.h: Removed.
1640         * platform/StringImpl.cpp:
1641
1642 2007-07-02  Sam Weinig  <sam@webkit.org>
1643
1644         Reviewed by Darin.
1645
1646         Fifth round of fixes for implicit 64-32 bit conversion errors.
1647         <rdar://problem/5292262>
1648
1649         Add toFloat() method to string classes and use it where appropriate.
1650
1651         * WebCore.xcodeproj/project.pbxproj:
1652         * css/cssparser.cpp:
1653         (WebCore::CSSParser::lex):
1654         * ksvg2/svg/SVGAngle.cpp:
1655         (WebCore::SVGAngle::setValueAsString):
1656         * platform/AtomicString.h:
1657         (WebCore::AtomicString::toFloat):
1658         * platform/DeprecatedString.cpp:
1659         (WebCore::DeprecatedString::toFloat):
1660         * platform/DeprecatedString.h:
1661         * platform/FloatConversionUtilities.h: Added.
1662         (WebCore::narrowPrecisionToFloat):
1663         (WebCore::narrowPrecisionToCGFloat):
1664         * platform/PlatformString.h:
1665         * platform/String.cpp:
1666         (WebCore::String::toFloat):
1667         * platform/StringImpl.cpp:
1668         (WebCore::StringImpl::toFloat):
1669         * platform/StringImpl.h:
1670
1671 2007-07-02  Sam Weinig  <sam@webkit.org>
1672
1673         Reviewed by Kevin McCullough.
1674
1675         Fourth round of fixes for implicit 64-32 bit conversion errors.
1676         <rdar://problem/5292262>
1677
1678         Use new piDouble and piFloat constants instead of M_PI.
1679
1680         * html/CanvasRenderingContext2D.cpp:
1681         (WebCore::CanvasRenderingContext2D::rotate):
1682         * ksvg2/svg/SVGParserUtilities.cpp:
1683         (WebCore::SVGPathParser::calculateArc):
1684         * platform/graphics/Path.cpp:
1685         (WebCore::pathLengthApplierFunction):
1686         (WebCore::Path::createEllipse):
1687         * platform/graphics/cg/GraphicsContextCG.cpp:
1688         (WebCore::GraphicsContext::drawEllipse):
1689         (WebCore::GraphicsContext::strokeArc):
1690         * platform/graphics/cg/PDFDocumentImage.cpp:
1691         (WebCore::PDFDocumentImage::setCurrentPage):
1692         * platform/graphics/svg/filters/cg/SVGFEHelpersCg.h:
1693         * rendering/RenderPath.cpp:
1694         (WebCore::drawMarkerWithData):
1695
1696 2007-07-01  Adam Roben  <aroben@apple.com>
1697
1698         Clarify/fix {Shadow,BorderImage}ParseContext's memory management
1699
1700         Prefast emitted warnings that drew my attention to
1701         {Shadow,BorderImage}ParseContext::failed().  It turned out that these
1702         methods were actually correct, but rather confusing. "failed" really
1703         meant "abort and clean up" rather than "did you fail?", which was
1704         unclear. However, once I figured that out, the "and clean up" part was
1705         still a bit confusing, because all failed() did was to set a flag that
1706         would later cause the ParseContext's members to be deleted in the
1707         destructor. To clear this up, I've gotten rid of the failed() method
1708         altogether. It always returned false, so I've replaced all calls to
1709         it with the value false.
1710
1711         I also noticed that the lifetime management of the ParseContexts'
1712         members was in all cases confusing, and in some cases wrong. The
1713         m_border{Top,Right,Bottom,Left} members of BorderImageParseContext
1714         were leaked whenever a border-image property was successfully parsed.
1715         I fixed that by holding these members in OwnPtrs. The
1716         CSSPrimitiveValue members of {Shadow,BorderImage}ParseContext, which
1717         inherit from Shared, were being explicitly deleted, which is not a
1718         safe way to manage the lifetime of objects that inherit from Shared.
1719         To fix this, I put those members inside RefPtrs. These two changes
1720         allowed me to remove the destructors entirely.
1721
1722         Reviewed by Darin.
1723
1724         All regression tests pass.
1725
1726         * css/cssparser.cpp:
1727         (WebCore::ShadowParseContext::commitValue): Use .release() to avoid
1728         ref-count churn.
1729         (WebCore::ShadowParseContext::commitLength): Use a RefPtr for the new
1730         value to avoid a leak.
1731         (WebCore::CSSParser::parseShadow): Use 'false' instead of
1732         'context.failed()', and use .release() to avoid ref-count churn.
1733         (WebCore::BorderImageParseContext::commitWidth): Updated to use
1734         OwnPtr.
1735         (WebCore::CSSParser::parseBorderImage): Use 'false' instead of
1736         'context.failed'.
1737
1738 2007-07-01  Anders Carlsson  <andersca@apple.com>
1739
1740         Reviewed by John Sullivan.
1741
1742         <rdar://problem/5297146>
1743         Crash in Mail at WebCore::Frame::setUserStyleSheetLocation (reproducible w/ particular message)
1744         
1745         * loader/Cache.cpp:
1746         (WebCore::Cache::requestResource):
1747         Only insert the resource in the LRU list if the cache is enabled.
1748         
1749         (WebCore::Cache::insertInLRUList):
1750         (WebCore::Cache::resourceAccessed):
1751         Assert that the resource is in the cache.
1752
1753 2007-07-01  Darin Adler  <darin@apple.com>
1754
1755         * css/tokenizer.flex: Rolled out the fix for 14453.
1756         The layout test wasn't passing. We'll try again.
1757
1758 2007-07-01  Adam Roben  <aroben@apple.com>
1759
1760         Fix a crash in ~PluginViewWin()
1761
1762         This crash was introduced in r23827.
1763
1764         Reviewed by Anders.
1765
1766         Fixes dom/html/level2/html/HTMLAnchorElement01.html
1767
1768         * plugins/win/PluginViewWin.cpp:
1769         (WebCore::PluginViewWin::~PluginViewWin): Allow m_plugin to be null.
1770
1771 2007-07-01  Rob Buis  <buis@kde.org>
1772
1773         Reviewed by Darin.
1774
1775         http://bugs.webkit.org/show_bug.cgi?id=14453
1776         REGRESSION: www.nzherald.co.nz almost all the formating is gone
1777  
1778         * css/tokenizer.flex: Allow hex colors with 2, 4, or 5 hex digits.
1779
1780 2007-07-01  Sam Weinig  <sam@webkit.org>
1781
1782         Reviewed by Oliver.
1783
1784         Third round of implicit 64-32 bit conversion errors fixes.
1785         <rdar://problem/5292262>
1786
1787         - Use new CSSPrimitiveValue::getDoubleValue() and CSSPrimitiveValue::getIntValue()
1788           methods instead of CSSPrimitiveValue::getFloatValue() where appropriate.
1789
1790         * css/CSSPrimitiveValue.cpp:
1791         (WebCore::CSSPrimitiveValue::computeLengthInt):
1792         (WebCore::CSSPrimitiveValue::computeLengthIntForLength):
1793         (WebCore::CSSPrimitiveValue::computeLengthShort):
1794         (WebCore::CSSPrimitiveValue::computeLengthFloat):
1795         (WebCore::CSSPrimitiveValue::computeLengthDouble):
1796         (WebCore::CSSPrimitiveValue::getDoubleValue):
1797         * css/CSSPrimitiveValue.h:
1798         (WebCore::CSSPrimitiveValue::getDoubleValue):
1799         (WebCore::CSSPrimitiveValue::getFloatValue):
1800         (WebCore::CSSPrimitiveValue::getIntValue):
1801         * css/Counter.h:
1802         (WebCore::Counter::listStyleNumber):
1803         * css/MediaQueryEvaluator.cpp:
1804         (WebCore::parseAspectRatio):
1805         * css/cssparser.cpp:
1806         (WebCore::BorderImageParseContext::commitBorderImage):
1807         * css/cssstyleselector.cpp:
1808         (WebCore::convertToLength):
1809         (WebCore::applyCounterList):
1810         (WebCore::CSSStyleSelector::applyProperty):
1811         (WebCore::CSSStyleSelector::mapBackgroundSize):
1812         (WebCore::CSSStyleSelector::mapBackgroundXPosition):
1813         (WebCore::CSSStyleSelector::mapBackgroundYPosition):
1814         * html/HTMLTableElement.cpp:
1815         (WebCore::HTMLTableElement::parseMappedAttribute):
1816         * ksvg2/css/SVGCSSStyleSelector.cpp:
1817         (WebCore::CSSStyleSelector::applySVGProperty):
1818         * ksvg2/misc/KCanvasRenderingStyle.cpp:
1819         (WebCore::KSVGPainterFactory::cssPrimitiveToLength):
1820         (WebCore::KSVGPainterFactory::dashArrayFromRenderingStyle):
1821
1822 2007-07-01  Pamela Greene  <pamg.bugs@gmail.com>
1823
1824         Reviewed by Darin.
1825
1826         Fix for <http://bugs.webkit.org/show_bug.cgi?id=14320>
1827         Bug 14320: <canvas> gradient stops at identical offsets are applied in the wrong order
1828         <rdar://problem/5290084>
1829
1830         Use std::stable_sort() instead of qsort() to sort gradient stops.
1831         Adjust the comparison function accordingly.
1832
1833         * html/CanvasGradient.cpp:
1834         (WebCore::compareStops):
1835         (WebCore::CanvasGradient::findStop):
1836
1837 2007-07-01  Holger Hans Peter Freyther  <zecke@selfish.org>
1838
1839         Reviewed by Darin.
1840
1841         m_usesPageCache was not initialized. As the b/f cache is only
1842         implemented in the Mac port and WebView.mm is taking care of calling
1843         Settings::setUsesPageCache I decided to make it false by default.
1844
1845         * page/Settings.cpp:
1846         (WebCore::Settings::Settings): m_usesPageCache was not initialized
1847
1848 2007-07-01  Holger Hans Peter Freyther  <zecke@selfish.org>
1849
1850         Reviewed by Darin.
1851
1852         Inherited- and NonInheritedFlags is a bit field. But for comparsion
1853         the other part of the union _iflags/_niflags is used for comparions.
1854         This will compare 5 uninitialized bits of _iflags and 22 of _niflags.
1855         Make sure the unused bits have a specified value.
1856
1857         * ksvg2/css/SVGRenderStyle.h:
1858         (WebCore::SVGRenderStyle::setBitDefaults): Make sure the unused bits
1859         have a value as well.
1860
1861 2007-06-30  Adam Roben  <aroben@apple.com>
1862
1863         Compile WebCore with /W4 on Windows
1864
1865         Some more warnings were disabled globally, including assignment within
1866         a conditional, unused variable, and various warnings related to
1867         inability to instantiate opaque structs.
1868
1869         In addition, the "unreachable code" warning was turned off for
1870         CSSGrammar.cpp and XPathGrammar.cpp.
1871
1872         Reviewed by Oliver.
1873
1874         * WebCore.vcproj/WebCore.vcproj:
1875
1876 2007-06-29  Adam Roben  <aroben@apple.com>
1877
1878         Give CString an equality operator to fix a bug in HTMLFormElement::formData
1879
1880         The bug was spotted by MSVC /W4. The problem was that we were comparing
1881         a CString to a char* using ==, but CString had no equality operator.
1882         The result was that the CString was being cast to a const char* and a
1883         pointer comparison was being done, which would (essentially) always
1884         return false.
1885
1886         There are two parts to the fix: get rid of CString's const char*
1887         casting operator, and add an equality operator. Previous uses of the
1888         casting operator have been changed to use CString::data().
1889
1890         Test: http/misc/isindex-formdata.html
1891
1892         Reviewed by Oliver.
1893
1894         * dom/XMLTokenizer.cpp:
1895         (WebCore::parseXMLDocumentFragment):
1896         * html/HTMLDocument.cpp:
1897         (WebCore::HTMLDocument::determineParseMode):
1898         * html/HTMLFormElement.cpp:
1899         (WebCore::HTMLFormElement::formData):
1900         * loader/TextResourceDecoder.cpp:
1901         (WebCore::TextResourceDecoder::checkForCSSCharset):
1902         * platform/CString.cpp:
1903         (WebCore::operator==):
1904         * platform/CString.h:
1905         * platform/KURL.cpp:
1906         (WebCore::encodeRelativeString):
1907         * platform/StringImpl.cpp:
1908         (WebCore::StringImpl::toDouble):
1909         * platform/network/cf/FormDataStreamCFNet.cpp:
1910         (WebCore::setHTTPBody):
1911         * platform/network/mac/FormDataStreamMac.mm:
1912         (WebCore::setHTTPBody):
1913         * platform/win/ClipboardUtilitiesWin.cpp:
1914         (WebCore::markupToCF_HTML):
1915         * plugins/win/PluginPackageWin.cpp:
1916         (WebCore::splitString):
1917         * plugins/win/PluginStreamWin.cpp:
1918         (WebCore::PluginStreamWin::startStream):
1919         (WebCore::PluginStreamWin::destroyStream):
1920         (WebCore::PluginStreamWin::sendJavaScriptStream):
1921         (WebCore::PluginStreamWin::didFinishLoading):
1922         * plugins/win/PluginViewWin.cpp:
1923         (WebCore::PluginViewWin::start):
1924         (WebCore::createUTF8String):
1925         (WebCore::PluginViewWin::userAgent):
1926         * xml/XSLStyleSheet.cpp:
1927         (WebCore::XSLStyleSheet::locateStylesheetSubResource):
1928         * xml/XSLTProcessor.cpp:
1929         (WebCore::xsltParamArrayFromParameterMap):
1930
1931 2007-06-29  Adam Roben  <aroben@apple.com>
1932
1933         Initialize two variables that MSVC /W4 isn't smart enough to realize always get initialized
1934
1935         Reviewed by John.
1936
1937         * editing/Editor.cpp:
1938         (WebCore::Editor::advanceToNextMisspelling):
1939         * html/HTMLParser.cpp:
1940
1941 2007-06-29  Adam Roben  <aroben@apple.com>
1942
1943         Fix some possibly unitialized variables found by MSVC /W4
1944
1945         Reviewed by John.
1946
1947         * rendering/bidi.cpp:
1948         (WebCore::RenderBlock::layoutInlineChildren):
1949
1950 2007-06-29  Adam Roben  <aroben@apple.com>
1951
1952         Remove bogus cast found by MSVC /W4
1953
1954         Reviewed by John and Oliver.
1955
1956         * ksvg2/css/SVGCSSParser.cpp:
1957         (WebCore::CSSParser::parseSVGValue):
1958
1959 2007-06-29  Adam Roben  <aroben@apple.com>
1960
1961         Remove unused local functions uncovered by MSVC /W4
1962
1963         Reviewed by John and Oliver.
1964
1965         * platform/win/SearchPopupMenuWin.cpp:
1966         * rendering/RenderText.cpp:
1967
1968 2007-06-29  Adam Roben  <aroben@apple.com>
1969
1970         Don't take the address of temporary values to appease MSVC /W4
1971
1972         Reviewed by Oliver.
1973
1974         No regression test possible.
1975
1976         * platform/win/PopupMenuWin.cpp:
1977         (WebCore::PopupMenu::invalidateItem):
1978         (WebCore::PopupMenu::valueChanged):
1979         (WebCore::PopupWndProc):
1980         * platform/win/ScrollViewWin.cpp:
1981         (WebCore::ScrollView::ScrollViewPrivate::scrollBackingStore):
1982         * platform/win/UniscribeController.cpp:
1983         (WebCore::UniscribeController::shapeAndPlaceItem):
1984         * platform/win/WidgetWin.cpp:
1985         (WebCore::Widget::invalidateRect):
1986
1987 2007-06-29  Adam Roben  <aroben@apple.com>
1988
1989         Make an int -> UINT conversion explicit that MSVC /W4 complains about
1990
1991         Reviewed by John and Oliver.
1992
1993         No regression test possible.
1994
1995         * platform/win/SoundWin.cpp:
1996
1997 2007-06-29  Adam Roben  <aroben@apple.com>
1998
1999         Remove unreachable code uncovered by MSVC /W4
2000
2001         Reviewed by Oliver.
2002
2003         No regression test possible.
2004
2005         * html/CanvasRenderingContext2D.cpp:
2006         (WebCore::CanvasRenderingContext2D::createPattern):
2007         * html/HTMLAnchorElement.cpp:
2008         (WebCore::HTMLAnchorElement::isLiveLink):
2009         * html/HTMLElement.cpp:
2010         (WebCore::HTMLElement::contentEditable):
2011         * platform/DeprecatedString.cpp:
2012         (WebCore::allocateHandle):
2013         (WebCore::freeHandle):
2014         * plugins/win/npapi.cpp:
2015         (pluginViewForInstance):
2016         * rendering/RenderImage.cpp:
2017         (WebCore::RenderImage::isWidthSpecified):
2018         (WebCore::RenderImage::isHeightSpecified):
2019         * rendering/RenderTheme.cpp:
2020         (WebCore::RenderTheme::isControlStyled):
2021
2022 2007-06-29  John Sullivan  <sullivan@apple.com>
2023
2024         Reviewed by Oliver Hunt.
2025         
2026         - WebCore support for accessing the set of rectangles that encompass the selected text
2027         
2028         * page/Frame.h:
2029         * page/Frame.cpp:
2030         (WebCore::Frame::selectionTextRects):
2031         new function, fills in a passed Vector with the line box rects that represent the selected range
2032
2033         * rendering/RenderText.cpp:
2034         (WebCore::RenderText::addLineBoxRects):
2035         fixed off-by-one bug involving use of the confusing function InlineTextBox::end()
2036
2037         * WebCore.exp:
2038         exported symbol for this new function
2039
2040 2007-06-29  Justin Garcia  <justin.garcia@apple.com>
2041
2042         Reviewed by Harrison.
2043         
2044         <rdar://problem/5299513> REGRESSION: In Mail, a crash occurs when attempting to undo a newly created To Do
2045         
2046         Rolled out a change made in r23787.
2047         
2048         * editing/DeleteSelectionCommand.cpp:
2049         (WebCore::DeleteSelectionCommand::handleGeneralDelete):
2050
2051 2007-06-29  Geoffrey Garen  <ggaren@apple.com>
2052
2053         Reviewed by Darin Adler, Anders Carlsson.
2054         
2055         Fixed <rdar://problem/5303567> REGRESSION: XMLHttpRequest.responseXML 
2056         returns NULL if response MIME type is not XML -- breaks Wikipedia widget
2057         
2058         The spec says that responseXML must return null for any HTTP response
2059         with a non-XML MIME type. Technically, that leaves non-HTTP responses
2060         free to do whatever they want.
2061
2062         * xml/xmlhttprequest.cpp:
2063         (WebCore::XMLHttpRequest::getResponseXML): Only return null for non-XML
2064         MIME types if the response was HTTP.
2065
2066 2007-06-29  Sam Weinig  <sam@webkit.org>
2067
2068         Reviewed by Darin.
2069
2070         Second pass at fixing implicit 64-32 bit conversion errors.
2071         <rdar://problem/5292262>
2072
2073         - Use new JSValue::toFloat() method instead of toNumber() where
2074           appropriate.
2075
2076         * bindings/js/JSCanvasRenderingContext2DCustom.cpp:
2077         (WebCore::JSCanvasRenderingContext2D::setFillColor):
2078         (WebCore::JSCanvasRenderingContext2D::setStrokeColor):
2079         (WebCore::JSCanvasRenderingContext2D::strokeRect):
2080         (WebCore::JSCanvasRenderingContext2D::drawImage):
2081         (WebCore::JSCanvasRenderingContext2D::drawImageFromRect):
2082         (WebCore::JSCanvasRenderingContext2D::setShadow):
2083         * bindings/js/JSHTMLSelectElementCustom.cpp:
2084         (WebCore::JSHTMLSelectElement::remove):
2085         * bindings/js/JSSVGMatrixCustom.cpp:
2086         (WebCore::JSSVGMatrix::rotateFromVector):
2087         * bindings/js/kjs_events.cpp:
2088         (KJS::JSClipboardPrototypeFunction::callAsFunction):
2089         * bindings/scripts/CodeGeneratorJS.pm:
2090         * ksvg2/svg/SVGScriptElement.cpp:
2091         (WebCore::SVGScriptElement::executeScript):
2092
2093 2007-06-29  Adele Peterson  <adele@apple.com>
2094
2095         Rolling out fix for <rdar://problem/5301322> since it broke layout tests.
2096
2097         * html/HTMLInputElement.h:
2098         * html/HTMLTextAreaElement.h:
2099
2100 2007-06-29  Geoffrey Garen  <ggaren@apple.com>
2101
2102         Reviewed by Oliver Hunt.
2103
2104         Fixed <rdar://problem/4962298> REGRESSION: Synchronous XHR for missing 
2105         local file throws exception -- breaks Wikipedia widget
2106
2107         * WebCore.xcodeproj/project.pbxproj:
2108         * xml/xmlhttprequest.cpp:
2109         (WebCore::XMLHttpRequest::send): Don't throw exceptions for local files.
2110
2111 2007-06-29  Ada Chan  <adachan@apple.com>
2112
2113         Reviewed by Adam.
2114
2115         Fixed a previous fix to a signed/unsigned mismatch.
2116
2117         * plugins/win/PluginPackageWin.cpp:
2118         (WebCore::splitString):
2119
2120 2007-06-29  Adele Peterson  <adele@apple.com>
2121
2122         Reviewed by Ada and Kevin McCullough.
2123
2124         Fix for <rdar://problem/5301322> REGRESSION: Select All selects the whole page when used in readonly textareas
2125
2126         Implemented canSelectAll and selectAll for text fields and textareas, since they're special cases even when they're not editable.
2127
2128         Tests:
2129         fast/forms/input-readonly-select-all.html
2130         fast/forms/textarea-readonly-select-all.html
2131
2132         * html/HTMLInputElement.h:
2133         (WebCore::HTMLInputElement::canSelectAll):
2134         (WebCore::HTMLInputElement::selectAll):
2135         * html/HTMLTextAreaElement.h:
2136         (WebCore::HTMLTextAreaElement::canSelectAll):
2137         (WebCore::HTMLTextAreaElement::selectAll):
2138
2139 2007-06-29  Adam Roben  <aroben@apple.com>
2140
2141         Build fix
2142
2143         This is what happens when you test your patch on two OSs and then
2144         commit from the wrong one.
2145
2146         * rendering/RenderTextControl.cpp:
2147         (WebCore::RenderTextControl::valueChanged):
2148         (WebCore::RenderTextControl::itemText):
2149         (WebCore::RenderTextControl::itemIsSeparator):
2150
2151 2007-06-29  Adam Roben  <aroben@apple.com>
2152
2153         Start compiling WebCore with /W3 under MSVC
2154
2155         One warning was globally disabled: implicit conversion of int to bool.
2156
2157         Reviewed by Darin.
2158
2159         * WebCore.vcproj/WebCore.vcproj:
2160
2161 2007-06-29  Adam Roben  <aroben@apple.com>
2162
2163         Turn DeprecatedStringData's copy constructor into a static method to appease MSVC /W3
2164
2165         DeprecatedStringData now has no public copy constructor. The single
2166         call to the old one has been replaced with a call to the new
2167         DeprecatedStringData::createAndAdopt static method.
2168
2169         Reviewed by Darin.
2170
2171         All regression tests pass.
2172
2173         * platform/DeprecatedString.cpp:
2174         (WebCore::DeprecatedStringData::createAndAdopt):
2175         (WebCore::DeprecatedStringData::adopt):
2176         (WebCore::DeprecatedString::detachIfInternal):
2177         * platform/DeprecatedString.h:
2178
2179 2007-06-29  Adam Roben  <aroben@apple.com>
2180
2181         Fix more signed/unsigned mismatches uncovered by MSVC /W3
2182
2183         Reviewed by John.
2184
2185         No regression tests possible.
2186
2187         * platform/network/cf/ResourceResponseCFNet.cpp:
2188         (WebCore::filenameHasSaneExtension):
2189         * platform/win/FontDataWin.cpp:
2190         (WebCore::FontData::containsCharacters):
2191         * platform/win/PlatformScrollBarSafari.cpp:
2192         (WebCore::):
2193         * platform/win/UniscribeController.cpp:
2194         (WebCore::UniscribeController::advance):
2195         (WebCore::UniscribeController::shapeAndPlaceItem):
2196         * platform/win/WebCoreTextRenderer.cpp:
2197         (WebCore::doDrawTextAtPoint):
2198         * plugins/win/PluginDatabaseWin.cpp:
2199         (WebCore::parseVersionString):
2200         * plugins/win/PluginPackageWin.cpp:
2201         (WebCore::splitString):
2202         * plugins/win/PluginViewWin.cpp:
2203         (WebCore::freeStringArray):
2204         (WebCore::PluginViewWin::invalidateTimerFired):
2205
2206 2007-06-29  Adam Roben  <aroben@apple.com>
2207
2208         Change PopupMenuClient::listSize to return an int to appease warnings from MSVC /W3
2209
2210         Reviewed by John.
2211
2212         No regression test possible.
2213
2214         * html/HTMLSelectElement.cpp:
2215         (WebCore::HTMLSelectElement::menuListDefaultEventHandler):
2216         * platform/PopupMenuClient.h:
2217         * platform/win/PopupMenuWin.cpp:
2218         (WebCore::PopupMenu::calculatePositionAndSize):
2219         (WebCore::PopupMenu::focusFirst):
2220         (WebCore::PopupMenu::focusLast):
2221         (WebCore::PopupMenu::down):
2222         (WebCore::PopupMenu::up):
2223         (WebCore::PopupMenu::paint):
2224         * rendering/RenderMenuList.cpp:
2225         * rendering/RenderMenuList.h:
2226         * rendering/RenderTextControl.cpp:
2227         * rendering/RenderTextControl.h:
2228
2229 2007-06-29  Adam Roben  <aroben@apple.com>
2230
2231         Fix two typos spotted by MSVC /W3
2232
2233         Both typos were a semicolon following the condition of an if. This
2234         would cause the intended body of the if to always execute.
2235
2236         Unfortunately neither of these fixes are testable.
2237         BackForwardList::goForward is only called from WebBackForwardList, and
2238         the createDragImageFromImage bug would only manifest itself when
2239         CreateCompatibleDC failed.
2240
2241         Reviewed by Mark.
2242
2243         * history/BackForwardList.cpp:
2244         (WebCore::BackForwardList::goForward):
2245         * platform/win/DragImageWin.cpp:
2246         (WebCore::createDragImageFromImage):
2247
2248 2007-06-29  Adam Treat  <adam@staikos.net>
2249
2250         Reviewed by george Staikos.
2251
2252         Support horizontal and vertical scroll, and set the right units.
2253
2254         * platform/qt/WheelEventQt.cpp:
2255         (WebCore::PlatformWheelEvent::PlatformWheelEvent):
2256
2257 2007-06-28  Adam Roben  <aroben@apple.com>
2258
2259         Get WebCore compiling with /W2 on Windows
2260
2261         Reviewed by Steve.
2262
2263         No regression tests affected.
2264
2265         * WebCore.vcproj/WebCore.vcproj: Turn the warning level up to 2, and
2266         disable two warnings: implicit int <=> float conversion, and class vs.
2267         struct inconsistency.
2268         * dom/CharacterData.cpp:
2269         (WebCore::CharacterData::deleteData): Cast to int before negating.
2270         * loader/Cache.cpp:
2271         (WebCore::Cache::remove): Ditto.
2272         * platform/graphics/Path.cpp:
2273         (WebCore::pathLengthApplierFunction): Consistently use floats.
2274         * platform/graphics/cg/GraphicsContextCG.cpp:
2275         (WebCore::GraphicsContext::drawEllipse): Ditto.
2276         * platform/win/GraphicsContextWin.cpp:
2277         (WebCore::GraphicsContext::drawLineForMisspellingOrBadGrammar): Ditto.
2278
2279 2007-06-28  Geoffrey Garen  <ggaren@apple.com>
2280
2281         Reviewed by Maciej Stachowiak.
2282         
2283         Fixed <rdar://problem/5299005> DOM timers fire without a local autorelease 
2284         pool => pathologically high high water mark
2285         
2286         I couldn't measure any performance problems with iBench HTML or PLT.
2287
2288         * WebCore.xcodeproj/project.pbxproj: Changed .cpp file to be ObjC++.
2289         * platform/mac/SharedTimerMac.cpp:
2290         (WebCore::timerFired): Added autorelease pool.
2291
2292 2007-06-28  Mitz Pettel  <mitz@webkit.org>
2293
2294         Reviewed by Beth.
2295
2296         - fix http://bugs.webkit.org/show_bug.cgi?id=14118
2297           ASSERTION FAILED: !needsLayout() seen again
2298
2299         Test: fast/dynamic/recursive-layout.html
2300
2301         * page/FrameView.cpp:
2302         (WebCore::FrameView::layout): Removed the midLayout guards around
2303         the calls to invalidateSelection() and updateWidgetPositions(). Those
2304         calls may dirty the layout, but in that case they also update it, so
2305         they should be allowed to do it. Added an ASSERT to make sure that when
2306         they return, the root is not marked for layout.
2307
2308 2007-06-28  Sam Weinig  <sam@webkit.org>
2309
2310         Rubberstamped by Adam Roben.
2311
2312         Roll out r23861.  It caused the buildbot to fail on intel.
2313
2314         * page/Page.cpp:
2315         (WebCore::Page::goToItem):
2316
2317 2007-06-26  Maxime Britto  <mbritto@pleyo.com>
2318
2319         Reviewed by Geoff.
2320
2321         Patch for http://bugs.webkit.org/show_bug.cgi?id=13038
2322         ASSERTION FAILED: item->target().isEmpty() || m_mainFrame->tree()->find(item->target()) == m_mainFrame
2323
2324         Modification of an ASSERT on goToItem related to go back/forward in
2325         history.Don't need to check the frameset if the target is _blank.
2326
2327          * page/Page.cpp:
2328          (WebCore::Page::goToItem):
2329
2330 2007-06-28  Anders Carlsson  <andersca@apple.com>
2331
2332         Reviewed by Oliver.
2333
2334         <rdar://problem/5234139>
2335         <object> with PNG src rendered as image document.
2336         
2337         Complete the URL before passing it to the frame loader client.
2338         
2339         * html/HTMLObjectElement.cpp:
2340         (WebCore::HTMLObjectElement::isImageType):
2341
2342 2007-06-28  Rob Buis  <buis@kde.org>
2343
2344         Reviewed by Maciej.
2345
2346         http://bugs.webkit.org/show_bug.cgi?id=14373
2347         CSS1: selectors (classes and IDs) cannot start with a dash or with a digit
2348
2349         Make sure the id selector validates against the CSS2.1 identfier
2350         definition, not the hexcolor/HASH definition.
2351
2352         * css/CSSGrammar.y:
2353         * css/cssparser.cpp:
2354         (WebCore::CSSParser::lex):
2355         (WebCore::CSSParser::text):
2356         * css/tokenizer.flex:
2357
2358 2007-06-28  Simon Hausmann  <hausmann@kde.org>
2359
2360         Reviewed by Zack.
2361
2362         Implemented PasteboardQt::writeSelection to copy the selected text into the Clipboard as well as PasteboardQt::plainText to retrieve plain text from the clipboard for pasting for example into form fields.
2363
2364         * platform/qt/PasteboardQt.cpp:
2365         (WebCore::Pasteboard::writeSelection):
2366
2367 2007-06-28  Antti Koivisto  <antti@apple.com>
2368
2369         Reviewed by Mitz.
2370         
2371         Fix http://bugs.webkit.org/show_bug.cgi?id=14332
2372         Bug 14332: REGRESSION (r21145): <td> width ignored
2373         <rdar://problem/5290123>
2374         
2375         Cells in table with non-zero cellpadding are not considered empty.
2376
2377         * rendering/AutoTableLayout.cpp:
2378         (WebCore::AutoTableLayout::recalcColumn):
2379
2380 2007-06-28  Adam Roben  <aroben@apple.com>
2381
2382         Fix <rdar://problem/5300455> Prefast: typo in RenderBlock::paintObject
2383
2384         Reviewed by Hyatt.
2385
2386         No layout test possible, as this bug didn't have any effect since
2387         "bool & bool" has the same value as "bool && bool"
2388
2389         * rendering/RenderBlock.cpp:
2390         (WebCore::RenderBlock::paintObject): Changed & to &&.
2391
2392 2007-06-28  Adam Roben  <aroben@apple.com>
2393
2394         Fix <rdar://problem/5300443> word-break and -webkit-user-modify allow any value
2395
2396         The bug was caused by two typos found by prefast.
2397
2398         Reviewed by Hyatt.
2399
2400         * css/cssparser.cpp:
2401         (WebCore::CSSParser::parseValue): Fixed typos.
2402
2403 2007-06-20  Matt Perry  <mpComplete@gmail.com>
2404
2405         Reviewed by Adam.
2406
2407         - Fix http://bugs.webkit.org/show_bug.cgi?id=14251:
2408           onchange handler for select controls doesn't fire when changing via keyboard
2409
2410         * html/HTMLSelectElement.cpp:
2411         (WebCore::HTMLSelectElement::menuListDefaultEventHandler): Got rid of
2412         a call to saveLastSelection in the "Enter" key handler for select
2413         controls that was preventing onchange from firing.
2414
2415 2007-06-27  Sam Weinig  <sam@webkit.org>
2416
2417         Fix Gdk, Qt, and Win32 builds.
2418
2419         * WebCore.pro:
2420         * WebCore.vcproj/WebCore.vcproj:
2421
2422 2007-06-27  Sam Weinig  <sam@webkit.org>
2423
2424         Reviewed by Geoff.
2425
2426         Patch for http://bugs.webkit.org/show_bug.cgi?id=14319
2427         Move the Selection object out of the JS bindings
2428
2429         - Renames JS Object Selection to DOMSelection to avoid a name
2430           conflict.
2431
2432         * DerivedSources.make:
2433         * WebCore.xcodeproj/project.pbxproj:
2434         * bindings/js/kjs_window.cpp:
2435         (KJS::WindowPrivate::WindowPrivate):
2436         (KJS::Window::mark):
2437         (KJS::Window::clearHelperObjectProperties):
2438         (KJS::WindowFunc::callAsFunction):
2439         (KJS::Window::disconnectFrame):
2440         * bindings/js/kjs_window.h:
2441         (KJS::Window::):
2442         * page/DOMSelection.cpp: Added.
2443         (WebCore::DOMSelection::DOMSelection):
2444         (WebCore::DOMSelection::frame):
2445         (WebCore::DOMSelection::disconnectFrame):
2446         (WebCore::DOMSelection::anchorNode):
2447         (WebCore::DOMSelection::baseNode):
2448         (WebCore::DOMSelection::anchorOffset):
2449         (WebCore::DOMSelection::baseOffset):
2450         (WebCore::DOMSelection::focusNode):
2451         (WebCore::DOMSelection::extentNode):
2452         (WebCore::DOMSelection::focusOffset):
2453         (WebCore::DOMSelection::extentOffset):
2454         (WebCore::DOMSelection::isCollapsed):
2455         (WebCore::DOMSelection::type):
2456         (WebCore::DOMSelection::rangeCount):
2457         (WebCore::DOMSelection::collapse):
2458         (WebCore::DOMSelection::collapseToEnd):
2459         (WebCore::DOMSelection::collapseToStart):
2460         (WebCore::DOMSelection::empty):
2461         (WebCore::DOMSelection::setBaseAndExtent):
2462         (WebCore::DOMSelection::setPosition):
2463         (WebCore::DOMSelection::modify):
2464         (WebCore::DOMSelection::getRangeAt):
2465         (WebCore::DOMSelection::removeAllRanges):
2466         (WebCore::DOMSelection::addRange):
2467         (WebCore::DOMSelection::toString):
2468         * page/DOMSelection.h: Added.
2469         * page/DOMSelection.idl: Added.
2470         * page/DOMWindow.cpp:
2471         (WebCore::DOMWindow::disconnectFrame):
2472         (WebCore::DOMWindow::getSelection):
2473         * page/DOMWindow.h:
2474         * page/DOMWindow.idl:
2475
2476 2007-06-27  Sam Weinig  <sam@webkit.org>
2477
2478         Reviewed by Maciej.
2479
2480         2nd patch for http://bugs.webkit.org/show_bug.cgi?id=14111
2481         Autogenerate Event JS binding
2482
2483         - Cleanup kjs_events
2484
2485         * bindings/js/kjs_events.cpp:
2486         (WebCore::JSAbstractEventListener::JSAbstractEventListener):
2487         (WebCore::JSAbstractEventListener::handleEvent):
2488         (WebCore::JSAbstractEventListener::isHTMLEventListener):
2489         (WebCore::JSUnprotectedEventListener::JSUnprotectedEventListener):
2490         (WebCore::JSUnprotectedEventListener::~JSUnprotectedEventListener):
2491         (WebCore::JSUnprotectedEventListener::listenerObj):
2492         (WebCore::JSUnprotectedEventListener::windowObj):
2493         (WebCore::JSUnprotectedEventListener::clearWindowObj):
2494         (WebCore::JSUnprotectedEventListener::mark):
2495         (WebCore::JSEventListener::JSEventListener):
2496         (WebCore::JSEventListener::~JSEventListener):
2497         (WebCore::JSEventListener::listenerObj):
2498         (WebCore::JSEventListener::windowObj):
2499         (WebCore::JSEventListener::clearWindowObj):
2500         (WebCore::JSLazyEventListener::JSLazyEventListener):
2501         (WebCore::JSLazyEventListener::listenerObj):
2502         (WebCore::JSLazyEventListener::parseCode):
2503         (WebCore::getNodeEventListener):
2504         (WebCore::JSClipboard::JSClipboard):
2505         (WebCore::JSClipboard::getValueProperty):
2506         (WebCore::JSClipboard::putValueProperty):
2507         (WebCore::JSClipboardPrototypeFunction::callAsFunction):
2508         (WebCore::toJS):
2509         (WebCore::toClipboard):
2510         * bindings/js/kjs_events.h:
2511         (WebCore::JSClipboard::classInfo):
2512         (WebCore::JSClipboard::impl):
2513         * bindings/js/kjs_window.h:
2514         * ksvg2/events/JSSVGLazyEventListener.h:
2515
2516 2007-06-27  Sam Weinig  <sam@webkit.org>
2517
2518         Reviewed by Adam Roben.
2519
2520         Patch for http://bugs.webkit.org/show_bug.cgi?id=12045
2521         Crash under gmalloc at WTF::RefPtr<WebCore::HTMLSliderThumbElement>::operator->
2522         <rdar://problem/5286670>
2523
2524         Test: fast/forms/thumbslider-no-parent-slider.html
2525         Test: fast/forms/thumbslider-crash.html
2526
2527         * rendering/RenderObject.h:
2528         (WebCore::RenderObject::isSlider):
2529         * rendering/RenderSlider.h:
2530         (WebCore::RenderSlider::isSlider):
2531         * rendering/RenderTheme.cpp:
2532         (WebCore::RenderTheme::paint): Only paint thumbslider
2533         if the parent renderer is a RenderSlider.
2534         * rendering/RenderThemeMac.mm:
2535         (WebCore::RenderThemeMac::paintSliderThumb):
2536         * rendering/RenderThemeSafari.cpp:
2537         (WebCore::RenderThemeSafari::paintSliderThumb):
2538
2539 2007-06-27  George Staikos  <staikos@kde.org>
2540
2541         Make Qt builds link when XSLT is turned off.
2542
2543         * WebCore.pro:
2544
2545 2007-06-27  Steve Falkenburg  <sfalken@apple.com>
2546
2547         Turn on static code analysis (Windows only).
2548
2549         Affects only folks that have Visual Studio Team Suite installed,
2550         or who have replaced their compiler with the version shipping in the
2551         Vista SDK.
2552         
2553         Reviewed by Oliver.
2554
2555         * WebCore.vcproj/WebCore.vcproj:
2556
2557 2007-06-27  George Staikos  <staikos@kde.org>
2558
2559         Remove old commented out files that no-longer exist.
2560
2561         * WebCore.pro:
2562
2563 2007-06-27  Justin Garcia  <justin.garcia@apple.com>
2564
2565         Reviewed by John.
2566
2567         <rdar://problem/5247341> REGRESSION: Pasting sometimes leaves out trailing newline
2568         
2569         Pasting with a trailing interchange newline doesn't work when pasting
2570         into an empty line.  Code that handles removing brs at the insertion
2571         position tries to also handle trailing interchange newlines by re-using
2572         those brs and fails.  Removed that code and handle all interchange
2573         newlines with code later in doApply().
2574
2575         * editing/ReplaceSelectionCommand.cpp:
2576         (WebCore::ReplaceSelectionCommand::doApply): Don't try to re-use the
2577         endBR when there's a trailing interchange newline.
2578         
2579 2007-06-27  Anders Carlsson  <andersca@apple.com>
2580
2581         Reviewed by Oliver.
2582
2583         <rdar://problem/5253950>
2584         When Shockwave plugin has been loaded, exiting crashes Safari
2585         
2586         Add a "load count" for plugin packages. When the load count is zero, unload the plugin.
2587         
2588         * plugins/win/PluginPackageWin.cpp:
2589         (WebCore::PluginPackageWin::PluginPackageWin):
2590         (WebCore::PluginPackageWin::load):
2591         (WebCore::PluginPackageWin::unload):
2592         (WebCore::PluginPackageWin::unloadWithoutShutdown):
2593         * plugins/win/PluginPackageWin.h:
2594         
2595         * plugins/win/PluginViewWin.cpp:
2596         (WebCore::PluginViewWin::~PluginViewWin):
2597         Make sure to unload the plugin package and clear any references to plugin script objects.
2598
2599 2007-06-27  George Staikos  <staikos@kde.org>
2600
2601         This was succeeding compile by luck.  Setup dependencies properly.
2602
2603         * WebCore.pro:
2604
2605 2007-06-27  Justin Garcia  <justin.garcia@apple.com>
2606
2607         Reviewed by John.
2608
2609         <rdar://problem/4580583> Breaking blockquoted list should not automatically renumber the second list
2610         
2611         When a quoted numbered list is broken in half, it's cloned
2612         to make the second list. That second list needs its start attribute
2613         set so that the numbers of the list items in it will be preserved.
2614
2615         * editing/BreakBlockquoteCommand.cpp:
2616         (WebCore::BreakBlockquoteCommand::doApply): Set the start attribute
2617         of a cloned list to be the original number of the first list item in it.
2618
2619 2007-06-27  Alexey Proskuryakov  <ap@webkit.org>
2620
2621         Reviewed by Geoff.
2622
2623         http://bugs.webkit.org/show_bug.cgi?id=14413
2624         GIF animation throttling is different from MSIE
2625
2626         * platform/graphics/cg/ImageSourceCG.cpp:
2627         (WebCore::ImageSource::frameDurationAtIndex):
2628         Change the cut-off value to 50ms to match MSIE.
2629
2630 2007-06-27  Sam Weinig  <sam@webkit.org>
2631
2632         Reviewed by Darin.
2633
2634         First pass at fixing implicit 64-32 bit conversion errors.
2635         <rdar://problem/5292262>
2636
2637         - Add 'f' suffix where necessary.
2638
2639         * bridge/mac/WebCoreAXObject.mm:
2640         (-[WebCoreAXObject accessibilityAttributeValue:forParameter:]):
2641         * css/csshelper.h:
2642         * css/cssstyleselector.cpp:
2643         (WebCore::):
2644         (WebCore::CSSStyleSelector::largerFontSize):
2645         (WebCore::CSSStyleSelector::smallerFontSize):
2646         * html/CanvasGradient.cpp:
2647         (WebCore::CanvasGradient::addColorStop):
2648         * html/CanvasPattern.cpp:
2649         (WebCore::CanvasPattern::createPattern):
2650         * ksvg2/css/SVGCSSStyleSelector.cpp:
2651         (WebCore::CSSStyleSelector::applySVGProperty):
2652         * ksvg2/css/SVGRenderStyle.h:
2653         * ksvg2/events/SVGZoomEvent.cpp:
2654         (WebCore::SVGZoomEvent::SVGZoomEvent):
2655         * ksvg2/svg/SVGLength.cpp:
2656         (WebCore::SVGLength::SVGLength):
2657         (WebCore::SVGLength::value):
2658         (WebCore::SVGLength::setValue):
2659         (WebCore::SVGLength::valueAsPercentage):
2660         (WebCore::SVGLength::PercentageOfViewport):
2661         * ksvg2/svg/SVGSVGElement.cpp:
2662         (WebCore::SVGSVGElement::pixelUnitToMillimeterX):
2663         (WebCore::SVGSVGElement::pixelUnitToMillimeterY):
2664         (WebCore::SVGSVGElement::getScreenCTM):
2665         * ksvg2/svg/SVGTextContentElement.cpp:
2666         (WebCore::SVGTextContentElement::getComputedTextLength):
2667         (WebCore::SVGTextContentElement::getSubStringLength):
2668         (WebCore::SVGTextContentElement::getRotationOfChar):
2669         * ksvg2/svg/SVGTransformDistance.cpp:
2670         (WebCore::SVGTransformDistance::SVGTransformDistance):
2671         (WebCore::SVGTransformDistance::distance):
2672         * page/InspectorController.cpp:
2673         (WebCore::InspectorResource::InspectorResource):
2674         * platform/graphics/FloatPoint3D.cpp:
2675         (WebCore::FloatPoint3D::normalize):
2676         * platform/graphics/Path.cpp:
2677         (WebCore::pathLengthApplierFunction):
2678         (WebCore::Path::createRoundedRectangle):
2679         * platform/graphics/cg/GraphicsContextCG.cpp:
2680         (WebCore::GraphicsContext::drawLine):
2681         (WebCore::GraphicsContext::strokeArc):
2682         * platform/graphics/cg/ImageCG.cpp:
2683         (WebCore::FrameData::clear):
2684         * platform/graphics/cg/ImageSourceCG.cpp:
2685         (WebCore::ImageSource::frameDurationAtIndex):
2686         * platform/graphics/cg/PDFDocumentImage.cpp:
2687         (WebCore::PDFDocumentImage::setCurrentPage):
2688         * platform/graphics/svg/SVGPaintServerPattern.cpp:
2689         (WebCore::SVGPaintServerPattern::externalRepresentation):
2690         * platform/graphics/svg/SVGPaintServerRadialGradient.cpp:
2691         (WebCore::SVGPaintServerRadialGradient::SVGPaintServerRadialGradient):
2692         * platform/graphics/svg/cg/SVGPaintServerGradientCg.cpp:
2693         (WebCore::cgGradientCallback):
2694         (WebCore::CGShadingRefForRadialGradient):
2695         (WebCore::SVGPaintServerGradient::updateQuartzGradientStopsCache):
2696         * platform/mac/FontDataMac.mm:
2697         (WebCore::webFallbackFontFamily):
2698         * platform/mac/PopupMenuMac.mm:
2699         (WebCore::PopupMenu::show):
2700         * rendering/InlineFlowBox.cpp:
2701         (WebCore::InlineFlowBox::placeBoxesHorizontally):
2702         * rendering/RenderSlider.cpp:
2703         (WebCore::RenderSlider::setValueForPosition):
2704         (WebCore::RenderSlider::setPositionFromValue):
2705
2706 2007-06-27  Alexey Proskuryakov  <ap@webkit.org>
2707
2708         Reviewed by Geoff.
2709
2710         http://bugs.webkit.org/show_bug.cgi?id=14288
2711         XMLHttpRequest doesn't use a correct content type for file:// URLs
2712
2713         Test: fast/dom/xmlhttprequest-html-response-encoding.html
2714
2715         * xml/xmlhttprequest.cpp:
2716         (WebCore::XMLHttpRequest::responseMIMEType): Use MIME type provided by
2717         the network layer, since it provides it even for non-HTTP responses.
2718
2719 2007-06-26  Alp Toker  <alp.toker@collabora.co.uk>
2720
2721         Reviewed by Sam Weinig.
2722
2723         http://bugs.webkit.org/show_bug.cgi?id=14061
2724         Implement more of FrameLoaderClientGdk
2725
2726         Make FrameLoaderClientGdk work properly when the MIME type is set.
2727
2728         * loader/gdk/FrameLoaderClientGdk.cpp:
2729         (WebCore::FrameLoaderClientGdk::objectContentType):
2730         (WebCore::FrameLoaderClientGdk::canShowMIMEType):
2731
2732 2007-06-26  Alp Toker  <alp.toker@collabora.co.uk>
2733
2734         Reviewed by Maciej.
2735
2736         http://bugs.webkit.org/show_bug.cgi?id=14058
2737         Gdk font backend cleanup
2738
2739         * platform/FontData.h: Remove obsolete function.
2740         * platform/gdk/FontDataGdk.cpp:
2741         (WebCore::FontData::containsCharacters): Lock/unlock only once.
2742         (WebCore::FontData::platformWidthForGlyph): Remove needless cast.
2743         * platform/gdk/FontPlatformData.h: Remove obsolete function.
2744         * platform/gdk/FontPlatformDataGdk.cpp:
2745         (WebCore::FontPlatformData::FontPlatformData): Pass the actual size,
2746         not the pixel size.
2747         (WebCore::FontPlatformData::~FontPlatformData): Free m_fontMatrix.
2748         * platform/gdk/GlyphPageTreeNodeGdk.cpp:
2749         (WebCore::GlyphPage::fill): Lock/unlock only once.
2750
2751 2007-06-26  Mitz Pettel  <mitz@webkit.org>
2752
2753         Reviewed by Hyatt.
2754
2755         - fix http://bugs.webkit.org/show_bug.cgi?id=14406
2756           <colgroup>'s borders are ignored when it has <col> children
2757
2758         Covered by existing tests.
2759
2760         * rendering/RenderTableCell.cpp:
2761         (WebCore::RenderTableCell::collapsedLeftBorder):
2762         (WebCore::RenderTableCell::collapsedRightBorder):
2763         (WebCore::RenderTableCell::collapsedTopBorder):
2764         (WebCore::RenderTableCell::collapsedBottomBorder):
2765
2766 2007-06-26  Mitz Pettel  <mitz@webkit.org>
2767
2768         Reviewed by Oliver.
2769
2770         - fix http://bugs.webkit.org/show_bug.cgi?id=14329
2771           REGRESSION: TEXTAREA - cannot drag-and-drop text at en.wikipedia.org/
2772
2773         Test: fast/repaint/text-selection-rect-in-overflow-2.html
2774
2775         * rendering/RenderObject.cpp:
2776         (WebCore::RenderObject::computeAbsoluteRepaintRect): Added code to account
2777         for overflow scroll and columns.
2778         * rendering/RenderText.cpp:
2779         (WebCore::RenderText::selectionRect): Adjust for columns only in the
2780         non-clipped case, since RenderObject::absolutePosition() does not.
2781
2782 2007-06-26  Mitz Pettel  <mitz@webkit.org>
2783
2784         Reviewed by Sam.
2785
2786         - http://bugs.webkit.org/show_bug.cgi?id=14415
2787           Remove the unused method RenderObject::setTable()
2788
2789         * rendering/RenderObject.h:
2790
2791 2007-06-26  MorganL  <morganl.webkit@yahoo.com>
2792
2793         Reviewed by Maciej.
2794
2795         Implement http://bugs.webkit.org/show_bug.cgi?id=14225
2796         Bug 14225: Make it possible to define platform-specific ResourceRequest without #ifdefs
2797
2798         This change moves the bulk of ResourceRequest into a base class named
2799         ResourceRequestBase with all platform-specific bits pushed into
2800         ResourceRequest.  This allows ports to easily add new members to a
2801         ResourceRequest without having to #ifdef the code that is shared
2802         between ports.
2803
2804         * WebCore.exp:
2805         * WebCore.pro:
2806         * WebCore.vcproj/WebCore.vcproj:
2807         * WebCore.xcodeproj/project.pbxproj:
2808         * platform/network/ResourceRequest.cpp: Removed.
2809         * platform/network/ResourceRequest.h: Removed.
2810         * platform/network/ResourceRequestBase.cpp: Added.
2811         (WebCore::ResourceRequestBase::asResourceRequest):
2812         (WebCore::ResourceRequestBase::isEmpty):
2813         (WebCore::ResourceRequestBase::isNull):
2814         (WebCore::ResourceRequestBase::url):
2815         (WebCore::ResourceRequestBase::setURL):
2816         (WebCore::ResourceRequestBase::cachePolicy):
2817         (WebCore::ResourceRequestBase::setCachePolicy):
2818         (WebCore::ResourceRequestBase::timeoutInterval):
2819         (WebCore::ResourceRequestBase::setTimeoutInterval):
2820         (WebCore::ResourceRequestBase::mainDocumentURL):
2821         (WebCore::ResourceRequestBase::setMainDocumentURL):
2822         (WebCore::ResourceRequestBase::httpMethod):
2823         (WebCore::ResourceRequestBase::setHTTPMethod):
2824         (WebCore::ResourceRequestBase::httpHeaderFields):
2825         (WebCore::ResourceRequestBase::httpHeaderField):
2826         (WebCore::ResourceRequestBase::setHTTPHeaderField):
2827         (WebCore::ResourceRequestBase::httpBody):
2828         (WebCore::ResourceRequestBase::setHTTPBody):
2829         (WebCore::ResourceRequestBase::allowHTTPCookies):
2830         (WebCore::ResourceRequestBase::setAllowHTTPCookies):
2831         (WebCore::ResourceRequestBase::addHTTPHeaderField):
2832         (WebCore::ResourceRequestBase::addHTTPHeaderFields):
2833         (WebCore::operator==):
2834         (WebCore::ResourceRequestBase::isConditional):
2835         (WebCore::ResourceRequestBase::updatePlatformRequest):
2836         (WebCore::ResourceRequestBase::updateResourceRequest):
2837         * platform/network/ResourceRequestBase.h: Added.
2838         (WebCore::):
2839         (WebCore::ResourceRequestBase::httpContentType):
2840         (WebCore::ResourceRequestBase::setHTTPContentType):
2841         (WebCore::ResourceRequestBase::httpReferrer):
2842         (WebCore::ResourceRequestBase::setHTTPReferrer):
2843         (WebCore::ResourceRequestBase::clearHTTPReferrer):
2844         (WebCore::ResourceRequestBase::httpUserAgent):
2845         (WebCore::ResourceRequestBase::setHTTPUserAgent):
2846         (WebCore::ResourceRequestBase::httpAccept):
2847         (WebCore::ResourceRequestBase::setHTTPAccept):
2848         (WebCore::ResourceRequestBase::ResourceRequestBase):
2849         (WebCore::operator!=):
2850         * platform/network/cf/ResourceRequest.h: Added.
2851         (WebCore::ResourceRequest::ResourceRequest):
2852         * platform/network/curl/ResourceRequest.h: Added.
2853         (WebCore::ResourceRequest::ResourceRequest):
2854         (WebCore::ResourceRequest::doUpdatePlatformRequest):
2855         (WebCore::ResourceRequest::doUpdateResourceRequest):
2856         * platform/network/mac/ResourceRequest.h: Added.
2857         (WebCore::ResourceRequest::ResourceRequest):
2858         * platform/network/qt/ResourceRequest.h: Added.
2859         (WebCore::ResourceRequest::ResourceRequest):
2860         (WebCore::ResourceRequest::doUpdatePlatformRequest):
2861         (WebCore::ResourceRequest::doUpdateResourceRequest):
2862
2863 2007-06-26  Adam Roben  <aroben@apple.com>
2864
2865         Add ChangeLog entries from the Windows merge.
2866
2867         Reviewed by Maciej.
2868
2869         * ChangeLog:
2870
2871 2007-06-26  Sam Weinig  <sam@webkit.org>
2872
2873         Reviewed by Maciej.
2874
2875         Make sure not to enumerate the toString() function.
2876         <rdar://problem/5297118>
2877
2878         * bindings/js/kjs_window.cpp:
2879         * bindings/scripts/CodeGeneratorJS.pm: Add support for [DontEnum].
2880         * html/HTMLAnchorElement.idl:
2881
2882 2007-06-26  Alp Toker  <alp.toker@collabora.co.uk>
2883
2884         Reviewed by Mitz, landed by Anders.
2885
2886         http://bugs.webkit.org/show_bug.cgi?id=14421
2887         Implement GraphicsContext::clearRect()
2888
2889         * platform/graphics/cairo/GraphicsContextCairo.cpp:
2890         (WebCore::GraphicsContext::clearRect):
2891
2892 2007-06-26  Alp Toker  <alp.toker@collabora.co.uk>
2893
2894         Reviewed and landed by Anders.
2895
2896         http://bugs.webkit.org/show_bug.cgi?id=14416
2897         Content does not render fully in some cases
2898
2899         Fix mismatched calls to cairo_save/restore due to an early method return.
2900
2901         * platform/graphics/cairo/GraphicsContextCairo.cpp:
2902         (WebCore::GraphicsContext::drawLine):
2903
2904 2007-06-26  Tristan O'Tierney  <tristan@apple.com>
2905
2906         Reviewed by John Sullivan.
2907
2908         Added two accessor functions for <rdar://problem/4119138>
2909
2910         * bindings/objc/DOMHTML.mm:
2911         (-[DOMHTMLInputElement _isEdited]):
2912         (-[DOMHTMLTextAreaElement _isEdited]):
2913         Added an accessor to the isEdited value of a DOM node's render object
2914
2915         * bindings/objc/DOMPrivate.h:
2916         Added header definitions for _isEdited
2917
2918 2007-06-26  Sam Weinig  <sam@webkit.org>
2919
2920         Fix Win32 build.
2921
2922         * WebCore.vcproj/WebCore.vcproj:
2923
2924 2007-06-26  Sam Weinig  <sam@webkit.org>
2925
2926         Fix Qt and Gdk builds.
2927
2928         * WebCore.pro:
2929
2930 2007-06-26  Sam Weinig  <sam@webkit.org>
2931
2932         Reviewed by Geoff.
2933
2934         Patch for http://bugs.webkit.org/show_bug.cgi?id=14111
2935         Autogenerate Event JS binding
2936
2937         - Moves the dataTransfer method into MouseEvent where it should be.
2938
2939         * WebCore.xcodeproj/project.pbxproj:
2940         * bindings/js/JSEventCustom.cpp: Added.
2941         (WebCore::JSEvent::clipboardData):
2942         (WebCore::toJS):
2943         * bindings/js/JSEventTargetNode.cpp:
2944         * bindings/js/JSXMLHttpRequest.cpp:
2945         * bindings/js/kjs_events.cpp:
2946         * bindings/js/kjs_events.h:
2947         * bindings/objc/DOMUtility.mm:
2948         (KJS::createDOMWrapper):
2949         * bindings/scripts/CodeGeneratorJS.pm:
2950         * dom/Event.h:
2951         (WebCore::Event::returnValue):
2952         (WebCore::Event::setReturnValue):
2953         (WebCore::Event::clipboardData):
2954         * dom/Event.idl:
2955         * dom/MouseEvent.h:
2956         (WebCore::MouseEvent::dataTransfer):
2957         * dom/MouseEvent.idl:
2958
2959 2007-06-26  Timothy Hatcher  <timothy@apple.com>
2960
2961         Reviewed by Mark Rowe.
2962
2963         Follow up fix for: Bug 14385: Web Inspector's computed style doesn't show implicitly set properties
2964         http://bugs.webkit.org/show_bug.cgi?id=14385
2965
2966         Correctly remember the "Show implicit properties" setting as you switch nodes.
2967
2968         * page/inspector/ResourcePanel.js:
2969
2970 2007-06-26  Justin Garcia  <justin.garcia@apple.com>
2971
2972         Reviewed by John.
2973
2974         <rdar://problem/5290534> Crash at RenderTextControl::calcHeight() after deleting text in a search field
2975         
2976         Editing removed a node that was part of a search field's internal
2977         structure that should not be removed.
2978
2979         * editing/DeleteSelectionCommand.cpp:
2980         (WebCore::DeleteSelectionCommand::handleGeneralDelete): If the
2981         selection to delete ends at [container, x], where x is the number
2982         of children in container, don't remove container.  Special case
2983         code elsewhere in this function will remove it if necessary.
2984
2985 2007-06-25  Sam Weinig  <sam@webkit.org>
2986
2987         Reviewed by Maciej.
2988
2989         Patch for http://bugs.webkit.org/show_bug.cgi?id=11315
2990         Mutating document.constructor.prototype mutates Object.prototype
2991
2992         Test: fast/js/constructor.html
2993
2994         * bindings/scripts/CodeGeneratorJS.pm: add constructor attribute to
2995         classes with constructors.  It is an non-enumeratable, non-deletable,
2996         readonly attribute.
2997
2998 2007-06-26  George Staikos  <staikos@kde.org>
2999
3000         Repair the OS X build.
3001
3002         * WebCore.exp:
3003
3004 2007-06-26  Adam Treat  <adam@staikos.net>
3005
3006         Reviewed by Adam Roben.
3007
3008         Make the SQLite icon database optional.
3009
3010         * loader/icon/IconDatabase.cpp:
3011         (WebCore::IconDatabase::isOpen):
3012         (WebCore::IconDatabase::isPrivateBrowsingEnabled):
3013         (WebCore::IconDatabase::enabled):
3014         * loader/icon/IconDatabase.h:
3015
3016 2007-06-25  Sam Weinig  <sam@webkit.org>
3017
3018         Reviewed by Adam Roben.
3019
3020         Patch for http://bugs.webkit.org/show_bug.cgi?id=14369
3021         HTML syntax highlighting colors and DOM tree colors should be the same
3022
3023         * css/view-source.css:
3024         * page/inspector/ResourcePanel.js:
3025         * page/inspector/inspector.css:
3026         * page/inspector/inspector.js:
3027         * page/inspector/utilities.js:
3028
3029 2007-06-25  Adam Roben  <aroben@apple.com>
3030
3031         Fix Bug 14402: Main resource of http://www.apple.com/safari/ is called "www.apple.com" instead of "safari"
3032         http://bugs.webkit.org/show_bug.cgi?id=14402
3033
3034         The solution was to make KURL::lastPathComponent ignore trailing
3035         slashes, which is what -[NSURL lastPathComponent] does, too.
3036
3037         Reviewed by Oliver.
3038
3039         * platform/KURL.cpp:
3040         (WebCore::KURL::lastPathComponent):
3041
3042 2007-06-25  Sam Weinig  <sam@webkit.org>
3043
3044         Reviewed by Adam Roben.
3045
3046         Patch for http://bugs.webkit.org/show_bug.cgi?id=14257
3047         Web Inspector lists favicon.ico as "other" instead of "image"
3048
3049         * page/InspectorController.cpp:
3050         (WebCore::InspectorResource::type):
3051
3052 2007-06-25  Adele Peterson  <adele@apple.com>
3053
3054         Reviewed by Hyatt.
3055
3056         Fix for <rdar://problem/5286410> Scrollbar and resize corner for overflow area is not hidden with style "visibility: hidden;"
3057         http://bugs.webkit.org/show_bug.cgi?id=14297
3058
3059         Test: fast/overflow/hidden-scrollbar-resize.html
3060
3061         * rendering/RenderLayer.cpp: (WebCore::RenderLayer::paintLayer):
3062         Updated our shouldPaint check to consider visibility.
3063
3064 2007-06-25  Oliver Hunt  <oliver@apple.com>
3065
3066         Reviewed by Darin.
3067
3068         <rdar://problem/5293444> REGRESSION: Dragging plain text into a styled text region does not acquire the correct style info
3069
3070         Fixing logic error in DragController
3071
3072         * manual-tests/drop-text-acquires-style.html: Added.
3073         * page/DragController.cpp:
3074         (WebCore::documentFragmentFromDragData):
3075
3076 2007-06-25  Sam Weinig  <sam@webkit.org>
3077
3078         Reviewed by Adam Roben.
3079
3080         Annotate prototypes by adding "Prototype" subtitle.
3081
3082         * page/inspector/ResourcePanel.js:
3083
3084 2007-06-25  George Staikos  <staikos@kde.org>
3085
3086         Reviewed by Zack.
3087
3088         Start to add proxy and SSL support to WebKitQt.  Proxying works.
3089
3090         * platform/network/ResourceHandleInternal.h:
3091         (WebCore::ResourceHandleInternal::ResourceHandleInternal):
3092         * platform/network/qt/ResourceHandleQt.cpp:
3093         (WebCore::ResourceHandle::start):
3094
3095 2007-06-25  Alp Toker  <alp.toker@collabora.co.uk>
3096
3097         Reviewed by Adam Roben.
3098
3099         http://bugs.webkit.org/show_bug.cgi?id=14386
3100         Gdk build fix
3101
3102         * WebCore.pro: Fix gtk/gdk typo.
3103
3104 2007-06-25  Timothy Hatcher  <timothy@apple.com>
3105
3106         Reviewed by Anders.
3107
3108         Bug 14385: Web Inspector's computed style doesn't show implicitly set properties
3109         http://bugs.webkit.org/show_bug.cgi?id=14385
3110
3111         Add a toggle to show implict computed properties.
3112
3113         * page/inspector/ResourcePanel.js:
3114         * page/inspector/inspector.css:
3115         * page/inspector/inspector.js:
3116
3117 2007-06-25  Alp Toker  <alp.toker@collabora.co.uk>
3118
3119         Reviewed by Mark.
3120
3121         http://bugs.webkit.org/show_bug.cgi?id=13975
3122         Use system-provided libjpeg and libpng
3123
3124         * WebCore.pro: Remove bundled libjpeg and libpng sources.
3125         * platform/image-decoders/jpeg: Remove sources.
3126         * platform/image-decoders/png: Remove sources.
3127
3128 2007-06-25  Mitz Pettel  <mitz@webkit.org>
3129
3130         Reviewed by Darin.
3131
3132         - fix http://bugs.webkit.org/show_bug.cgi?id=14202
3133           Table caption renders too narrow sometimes
3134
3135         Test: fast/table/caption-relayout.html
3136
3137         * rendering/RenderTable.cpp:
3138         (WebCore::RenderTable::layout): Mark the caption for layout if the table
3139         width changed.
3140
3141 2007-06-25  Mitz Pettel  <mitz@webkit.org>
3142
3143         Reviewed by Darin.
3144
3145         - fix http://bugs.webkit.org/show_bug.cgi?id=14245
3146           Underline painted under <br>, not repainted properly
3147
3148         Test: fast/inline/br-text-decoration.html
3149
3150         * platform/graphics/cg/GraphicsContextCG.cpp:
3151         (WebCore::GraphicsContext::drawLineForText): Added an early return if the line width
3152         is zero. Also changed the line stroke to a rect fill, so that lines with length shorter
3153         than their thickness paint correctly.
3154
3155 2007-06-25  Mitz Pettel  <mitz@webkit.org>
3156
3157         Reviewed by Maciej.
3158
3159         - fix http://bugs.webkit.org/show_bug.cgi?id=14341
3160           rules="none" ignored in certain cases
3161
3162         Covered by existing tests.
3163
3164         * html/HTMLTableElement.cpp:
3165         (WebCore::HTMLTableElement::getSharedCellDecl):
3166
3167 2007-06-24  Sam Weinig  <sam@webkit.org>
3168
3169         Reviewed by Mitz.
3170
3171         Patch for http://bugs.webkit.org/show_bug.cgi?id=14379
3172         Anchor elements show up as their href in the properties pane, not HTMLAnchorElement
3173
3174         * page/inspector/ResourcePanel.js: make sure not to call an overriden
3175         toString() by using Object.prototype.toString.call().
3176
3177 2007-06-24  Adam Roben  <aroben@apple.com>
3178
3179         Fix http://bugs.webkit.org/show_bug.cgi?id=14374
3180         Bug 14374: Computed Style section should be expanded by default
3181
3182         Reviewed by Sam.
3183
3184         No regression test possible.
3185
3186         * page/inspector/ResourcePanel.js: Expand all style sections.
3187
3188 2007-06-24  Adam Roben  <aroben@apple.com>
3189
3190         Unify the style of enums in the Inspector JS
3191
3192         All our enums are now represented by an object with a property for
3193         each enum value.
3194
3195         Reviewed by Sam.
3196
3197         No regression test possible.
3198
3199         * page/inspector/ConsolePanel.js:
3200         * page/inspector/Resource.js:
3201         * page/inspector/ResourcePanel.js:
3202         * page/inspector/inspector.js:
3203
3204 2007-06-23  Sam Weinig  <sam@webkit.org>
3205
3206         Reviewed by Mitz.
3207
3208         Patch for http://bugs.webkit.org/show_bug.cgi?id=14321
3209         getComputedStyle(...).zIndex returns string "normal"
3210
3211         Test: fast/css/getComputedStyle-zIndex-auto.html
3212
3213         * css/CSSComputedStyleDeclaration.cpp:
3214         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): Return 'auto' instead of 'normal'.
3215
3216 2007-06-24  Matt Lilek  <pewtermoose@gmail.com>
3217
3218         Reviewed by Tim Hatcher.
3219
3220         Bug 14265: Cannot resize columns in webinspector
3221         http://bugs.webkit.org/show_bug.cgi?id=14265
3222
3223         * page/inspector/inspector.css:
3224         * page/inspector/inspector.html:
3225         * page/inspector/inspector.js:
3226
3227 2007-06-23  Adam Roben  <aroben@apple.com>
3228
3229         Silence a build warning about not finding `num-cpus`
3230
3231         Reviewed by Mark Rowe.
3232
3233         * WebCore.vcproj/build-generated-files.sh: Look for num-cpus in its new
3234         location.
3235
3236 2007-06-22  Anders Carlsson  <andersca@apple.com>
3237
3238         Reviewed by Darin.
3239
3240         * plugins/win/PluginStreamWin.cpp:
3241         (WebCore::PluginStreamWin::didFinishLoading):
3242         No need to fetch the size from resourceData.
3243
3244 2007-06-22  Anders Carlsson  <andersca@apple.com>
3245
3246         Reviewed by Darin.
3247
3248         <rdar://problem/5288617>
3249         Crash playing a very large QuickTime movie inside Safari.
3250
3251         Get rid of m_completeDeliveryData and use the loader's resource data instead. This reduces the memory usage for 
3252         plug-ins which loads large files and use a transfer mode of NP_ASFILE or NP_ASFILEONLY.
3253         
3254         * plugins/win/PluginStreamWin.cpp:
3255         (WebCore::PluginStreamWin::PluginStreamWin):
3256         (WebCore::PluginStreamWin::~PluginStreamWin):
3257         (WebCore::PluginStreamWin::didReceiveData):
3258         (WebCore::PluginStreamWin::didFinishLoading):
3259         * plugins/win/PluginStreamWin.h:
3260
3261 2007-06-22  Beth Dakin  <bdakin@apple.com>
3262
3263         Reviewed by Oliver and Darin.
3264
3265         Fix for <rdar://problem/5266999> Loading page from MangleMe fuzz 
3266         tester crashes in RenderTableRow::addChild (giant ROWSPAN)
3267
3268         We already have code that tries to prevent allocating too-large 
3269         rowspans. The rowspan in this test, however, was small enough that 
3270         we thought it was okay in that code, even though clearly it was 
3271         still too large. I did a bunch of testing in Firefox, and it seems 
3272         that they set a hard limit on the maximum rowspan right in the DOM 
3273         -- 8k. So that is what this patch implements. 
3274
3275         * html/HTMLTableCellElement.cpp:
3276         (WebCore::HTMLTableCellElement::parseMappedAttribute):
3277
3278 2007-06-22  Justin Garcia  <justin.garcia@apple.com>
3279
3280         Reviewed by Darin.
3281         
3282         <rdar://problem/5272440> Adding To Do via Note received in e-mail adds newlines on delete
3283         
3284         Deletion inserts a placeholder after it removes full paragraphs if
3285         one doesn't already exist.  The code that looked for a pre-existing
3286         placeholder didn't work because of a bug in enclosingNodeOfType.
3287
3288         * editing/htmlediting.cpp:
3289         (WebCore::enclosingNodeOfType): We start looking at node->parentNode(),
3290         but don't go above an editing root.
3291
3292 2007-06-22  Anders Carlsson  <andersca@apple.com>
3293
3294         Reviewed by Maciej and Geoff.
3295
3296         <rdar://problem/5244734>
3297         WebKit shouldn't send delegate resource load methods for the user stylesheet (doing so causes assertions in Safari)
3298         
3299         Add a sendResourceLoadCallbacks argument to the ResourceLoader and only send resource load callbacks if it's true. Make it so that
3300         loading the user style sheet creates a resource loader with sendResourceLoadCallbacks set to false (done by adding a sendResourceLoadCallbacks 
3301         argument to a bunch of classes).
3302         
3303         * loader/Cache.cpp:
3304         (WebCore::createResource):
3305         (WebCore::Cache::requestResource):
3306         * loader/Cache.h:
3307         * loader/CachedCSSStyleSheet.cpp:
3308         (WebCore::CachedCSSStyleSheet::CachedCSSStyleSheet):
3309         * loader/CachedCSSStyleSheet.h:
3310         * loader/CachedResource.cpp:
3311         (WebCore::CachedResource::CachedResource):
3312         * loader/CachedResource.h:
3313         (WebCore::CachedResource::sendResourceLoadCallbacks):
3314         * loader/DocLoader.cpp:
3315         (WebCore::DocLoader::requestCSSStyleSheet):
3316         (WebCore::DocLoader::requestResource):
3317         (WebCore::DocLoader::checkCacheObjectStatus):
3318         * loader/DocLoader.h:
3319         * loader/MainResourceLoader.cpp:
3320         (WebCore::MainResourceLoader::MainResourceLoader):
3321         * loader/Request.cpp:
3322         (WebCore::Request::Request):
3323         * loader/Request.h:
3324         (WebCore::Request::sendResourceLoadCallbacks):
3325         * loader/ResourceLoader.cpp:
3326         (WebCore::ResourceLoader::ResourceLoader):
3327         (WebCore::ResourceLoader::willSendRequest):
3328         (WebCore::ResourceLoader::didReceiveResponse):
3329         (WebCore::ResourceLoader::didReceiveData):
3330         (WebCore::ResourceLoader::didFinishLoadingOnePart):
3331         (WebCore::ResourceLoader::didFail):
3332         (WebCore::ResourceLoader::didCancel):
3333         * loader/ResourceLoader.h:
3334         (WebCore::ResourceLoader::sendResourceLoadCallbacks):
3335         * loader/SubresourceLoader.cpp:
3336         (WebCore::SubresourceLoader::SubresourceLoader):
3337         (WebCore::SubresourceLoader::create):
3338         * loader/SubresourceLoader.h:
3339         * loader/loader.cpp:
3340         (WebCore::Loader::load):
3341         (WebCore::Loader::servePendingRequests):
3342         * loader/loader.h:
3343         * loader/mac/NetscapePlugInStreamLoaderMac.mm:
3344         (WebCore::NetscapePlugInStreamLoader::NetscapePlugInStreamLoader):
3345
3346 2007-06-21  Richard Connamacher  <rich@indieimage.com>
3347
3348         Reviewed by Tim Hatcher.
3349
3350         Bug 14305: Web Inspector marks local files with server-side compression tip
3351         http://bugs.webkit.org/show_bug.cgi?id=14305
3352
3353         * page/inspector/Resource.js:
3354         (WebInspector.Resource._shouldCompress): Prevent server-side compression tip
3355         from being given to local files
3356
3357 2007-06-21  Mark Rowe  <mrowe@apple.com>
3358
3359         Reviewed by Darin.
3360
3361         Fix for <rdar://problem/5266928> REGRESSION: crash/assert failure beneath RenderFrameSet::layOutAxis when loading
3362
3363         * platform/StringImpl.cpp:
3364         (WebCore::StringImpl::toLengthArray): Simplify whitespace before checking for an empty string.  This avoids returning
3365         a length of zero when the string is collapsed to empty by whitespace simplification.
3366
3367 2007-06-21  Dave Hyatt  <hyatt@apple.com>
3368
3369         Fix for <rdar://problem/5286978>, large font sizes crash Windows.
3370         
3371         Limit the maximum font size to 1,000,000 to avoid crashes and issues with platforms that
3372         start failing to do anything useful if the font size is too big.
3373         
3374         Reviewed by olliej
3375
3376         * css/cssstyleselector.cpp:
3377         (WebCore::CSSStyleSelector::getComputedSizeFromSpecifiedSize):
3378         
3379 2007-06-21  Andrew Wellington  <proton@wiretapped.net>
3380
3381         Reviewed by Timothy.
3382
3383         Stop shift+scroll wheel performing a horizontal scroll in Web Inspector
3384
3385         * page/inspector/inspector.css: Set body margin to 0
3386
3387 2007-06-21  Adam Treat  <adam@staikos.net>
3388
3389         Reviewed by George Staikos.
3390
3391         Implement the default resources on Qt.
3392
3393         * platform/graphics/BitmapImage.h:
3394         * platform/graphics/Image.h:
3395         * platform/graphics/qt/ImageQt.cpp:
3396         (WebCore::Image::loadPlatformResource):
3397         (WebCore::BitmapImage::BitmapImage):
3398         (WebCore::BitmapImage::initPlatformData):
3399         (WebCore::BitmapImage::invalidatePlatformData):
3400         (WebCore::BitmapImage::getPixmap):
3401         * platform/qt/TemporaryLinkStubs.cpp:
3402
3403 2007-06-21  Oliver Hunt  <oliver@apple.com>
3404
3405         Reviewed by Darin.
3406
3407         Use RetainPtr for holding currentEvent.  This removes explicit HardRetain/Release calls
3408         and makes reference handling simpler in advance of IME refactoring.
3409
3410         * WebCore.xcodeproj/project.pbxproj:
3411         * page/mac/EventHandlerMac.mm:
3412         (WebCore::currentEvent):
3413         (WebCore::EventHandler::currentNSEvent):
3414         (WebCore::EventHandler::wheelEvent):
3415         (WebCore::EventHandler::keyEvent):
3416         (WebCore::lastEventIsMouseUp):
3417         (WebCore::EventHandler::passMouseDownEventToWidget):
3418         (WebCore::EventHandler::eventLoopHandleMouseDragged):
3419         (WebCore::EventHandler::eventLoopHandleMouseUp):
3420         (WebCore::EventHandler::passSubframeEventToSubframe):
3421         (WebCore::EventHandler::passWheelEventToWidget):
3422         (WebCore::EventHandler::mouseDown):
3423         (WebCore::EventHandler::mouseDragged):
3424         (WebCore::EventHandler::mouseUp):
3425         (WebCore::EventHandler::mouseMoved):
3426
3427 2007-06-21  George Staikos  <staikos@kde.org>
3428
3429         Reviewed by George & Marius.
3430
3431         Patch by me, revision by Marius, minor rev by me.  Adds rendered
3432         and stylable scrollbars.
3433
3434         * page/qt/EventHandlerQt.cpp:
3435         (WebCore::EventHandler::passMousePressEventToScrollbar):
3436         * platform/Widget.h:
3437         * platform/qt/PlatformScrollBar.h:
3438         (WebCore::PlatformScrollbar::isWidget):
3439         * platform/qt/PlatformScrollBarQt.cpp:
3440         (WebCore::PlatformScrollbar::PlatformScrollbar):
3441         (WebCore::PlatformScrollbar::~PlatformScrollbar):
3442         (WebCore::PlatformScrollbar::updateThumbPosition):
3443         (WebCore::PlatformScrollbar::updateThumbProportion):
3444         (WebCore::PlatformScrollbar::width):
3445         (WebCore::PlatformScrollbar::height):
3446         (WebCore::PlatformScrollbar::setRect):
3447         (WebCore::PlatformScrollbar::isEnabled):
3448         (WebCore::PlatformScrollbar::setEnabled):
3449         (WebCore::PlatformScrollbar::paint):
3450         (WebCore::PlatformScrollbar::thumbPosition):
3451         (WebCore::PlatformScrollbar::thumbLength):
3452         (WebCore::PlatformScrollbar::trackLength):
3453         (WebCore::PlatformScrollbar::handleMouseMoveEvent):
3454         (WebCore::PlatformScrollbar::handleMouseOutEvent):
3455         (WebCore::PlatformScrollbar::handleMousePressEvent):
3456         (WebCore::PlatformScrollbar::handleMouseReleaseEvent):
3457         (WebCore::PlatformScrollbar::startTimerIfNeeded):
3458         (WebCore::PlatformScrollbar::stopTimerIfNeeded):
3459         (WebCore::PlatformScrollbar::autoscrollPressedPart):
3460         (WebCore::PlatformScrollbar::autoscrollTimerFired):
3461         (WebCore::PlatformScrollbar::pressedPartScrollDirection):
3462         (WebCore::PlatformScrollbar::pressedPartScrollGranularity):
3463         (WebCore::PlatformScrollbar::thumbUnderMouse):
3464         (WebCore::PlatformScrollbar::horizontalScrollbarHeight):
3465         (WebCore::PlatformScrollbar::verticalScrollbarWidth):
3466         (WebCore::PlatformScrollbar::windowClipRect):
3467         * platform/qt/ScrollViewQt.cpp:
3468         (WebCore::ScrollView::addChild):
3469         (WebCore::ScrollView::removeChild):
3470         * platform/qt/WidgetQt.cpp:
3471         (WebCore::WidgetPrivate::WidgetPrivate):
3472         (WebCore::Widget::setQWidget):
3473         (WebCore::Widget::invalidate):
3474         (WebCore::Widget::invalidateRect):
3475         (WebCore::Widget::setParent):
3476         (WebCore::Widget::parent):
3477
3478 2007-06-21  Geoffrey Garen  <ggaren@apple.com>
3479
3480         Reviewed by Dave Hyatt.
3481         
3482         Fixed <rdar://problem/4977124> | http://bugs.webkit.org/show_bug.cgi?id=12646
3483         REGRESSION: RapidWeaver's "Hello" HTML page doesn't display any DHTML 
3484         effects when clicking on its links (12646)
3485         
3486         I'm rolling our r7703 for these reasons:
3487
3488         1. It broke RapidWeaver.
3489         
3490         2. WebKit is now orders of magnitude faster when handling deep nesting
3491         (5 seconds vs 3 minutes on my MBP in this particular case).
3492
3493         3. Firefox, IE, and HTML5 all allow nested heading tags.
3494         
3495         4. Hyatt said so.
3496
3497         * html/HTMLParser.cpp:
3498         (WebCore::HTMLParser::parseToken):
3499
3500 2007-06-21  Sam Weinig  <sam@webkit.org>
3501
3502         Reviewed by Tim Hatcher.
3503
3504         http://bugs.webkit.org/show_bug.cgi?id=14260
3505         ASSERTION FAILED: m_mainResource->loader == loader going back in history on any page
3506
3507         Remove assert for now as it is causing the back button to not
3508         work in debug builds.
3509
3510         * page/InspectorController.cpp:
3511         (WebCore::InspectorController::didCommitLoad):
3512
3513 2007-06-21  Lars Knoll <lars@trolltech.com>
3514
3515         Remove some debug output.
3516
3517         * platform/qt/FontQt.cpp:
3518         (WebCore::generateComponents):
3519         (WebCore::Font::width):
3520
3521 2007-06-21  George Staikos  <staikos@kde.org>
3522
3523         Repair Qt/Mac OS X build.
3524
3525         * WebCore.pro:
3526
3527 2007-06-21  Alexey Proskuryakov  <ap@webkit.org>
3528
3529         Reviewed by Anders.
3530
3531         http://bugs.webkit.org/show_bug.cgi?id=13905
3532         REGRESSION: A Chinese dictionary widget has a problem with XMLHttpRequest response encoding
3533
3534         Tiger WebKit accidentally looked at HTML Http-Equiv META to determine the response encoding
3535         (regardless of the actual response MIME type). This was corrected a while ago to match other 
3536         browsers and the draft XHR spec.
3537
3538         Now restoring this functionality for "text/html", with spec editor's blessing.
3539
3540         * xml/xmlhttprequest.cpp:
3541         (WebCore::XMLHttpRequest::responseMIMEType):
3542         (WebCore::XMLHttpRequest::responseIsXML):
3543         (WebCore::XMLHttpRequest::didReceiveData):
3544         * xml/xmlhttprequest.h:
3545
3546 2007-06-21  Andrew Wellington  <proton@wiretapped.net>
3547
3548         Mac build fix.
3549
3550         * platform/Font.h:
3551
3552 2007-06-21  Lars Knoll  <lars@trolltech.com>
3553
3554         Reviewed by Simon.
3555
3556         another small fix for letter spacing
3557
3558         * platform/qt/FontQt.cpp:
3559         (WebCore::generateComponents):
3560
3561 2007-06-21  Lars Knoll  <lars@trolltech.com>
3562
3563         Reviewed by Simon.
3564
3565         fix word-spacing
3566
3567         * platform/qt/FontQt.cpp:
3568         (WebCore::generateComponents):
3569         (WebCore::Font::width):
3570
3571 2007-06-21  Lars Knoll  <lars@trolltech.com>
3572
3573         Reviewed by Simon.
3574
3575         fix letterspacing and small caps.
3576
3577         * platform/Font.h:
3578         * platform/graphics/qt/GraphicsContextQt.cpp:
3579         (WebCore::GraphicsContext::setPlatformFont):
3580         * platform/qt/FileChooserQt.cpp:
3581         * platform/qt/FontQt.cpp:
3582         (WebCore::TextRunComponent::TextRunComponent):
3583         (WebCore::Font::Font):
3584         (WebCore::Font::operator=):
3585         (WebCore::Font::update):
3586         (WebCore::generateComponents):
3587         (WebCore::Font::selectionRectForText):
3588         * platform/qt/RenderThemeQt.cpp:
3589
3590 2007-06-21  Lars Knoll  <lars@trolltech.com>
3591
3592         Reviewed by Simon.
3593
3594         store the metrics and space width in the Font object
3595
3596         * platform/Font.h:
3597         * platform/qt/FontQt.cpp:
3598         (WebCore::Font::Font):
3599         (WebCore::Font::drawText):
3600         (WebCore::Font::width):
3601         (WebCore::Font::isFixedPitch):
3602         (WebCore::Font::ascent):
3603         (WebCore::Font::descent):
3604         (WebCore::Font::lineSpacing):
3605
3606 2007-06-21  Lars Knoll  <lars@trolltech.com>
3607
3608         Reviewed by Simon.
3609
3610         simplify some codepaths
3611
3612         * platform/qt/FontQt.cpp:
3613         (WebCore::Font::drawText):
3614         (WebCore::Font::width):
3615
3616 2007-06-21  Lars Knoll  <lars@trolltech.com>
3617
3618         Reviewed by Simon.
3619
3620         fix copyright header
3621
3622         * platform/qt/FontQt.cpp:
3623
3624 2007-06-21  Lars Knoll  <lars@trolltech.com>
3625
3626         Reviewed by Simon.
3627
3628         correctly load fonts when a list of font families is given
3629
3630         * platform/qt/FontQt.cpp:
3631         (WebCore::Font::Font):
3632
3633 2007-06-21  Lars Knoll  <lars@trolltech.com>
3634
3635         Reviewed by Simon.
3636
3637         fix some more of the font support
3638
3639         * platform/qt/FontQt.cpp:
3640         (WebCore::Font::drawText):
3641         (WebCore::Font::width):
3642
3643 2007-06-21  Lars Knoll  <lars@trolltech.com>
3644
3645         Reviewed by Simon.
3646
3647         Compile fixes
3648
3649         * platform/Font.h:
3650         (WebCore::Font::isRoundingHackCharacter):
3651         * platform/qt/FontQt.cpp:
3652         (WebCore::Font::drawText):
3653
3654 2007-06-21  Lars Knoll  <lars@trolltech.com>
3655
3656         Reviewed by Simon.
3657
3658         Some more work on the