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