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