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