6df687755266a99446ecdc36f331bb1f2a3ece73
[WebKit-https.git] / WebCore / ChangeLog
1 2006-11-11  Brady Eidson <beidson@apple.com>
2
3         Reviewed by Maciej
4
5         Fixed header guard
6
7         * loader/FrameLoaderClient.h:
8
9 2006-11-11  Darin Adler  <darin@apple.com>
10
11         - attempt to fix Qt build
12
13         * platform/qt/CursorQt.cpp:
14         (WebCore::verticalTextCursor): Added. Just returns pointer cursor.
15         (WebCore::cellCursor): Ditto.
16         (WebCore::contextMenuCursor): Ditto.
17
18 2006-11-11  Rob Buis  <buis@kde.org>
19
20         Reviewed by hyatt.
21
22         http://bugzilla.opendarwin.org/show_bug.cgi?id=10893
23         InsertRule can not handle @import statements
24
25         Allow @import as part of a css rule.
26
27         * css/CSSGrammar.y:
28         * css/CSSImportRule.cpp:
29         (WebCore::CSSImportRule::insertedIntoParent):
30         * css/CSSStyleSheet.cpp:
31         (WebCore::CSSStyleSheet::CSSStyleSheet):
32         (WebCore::CSSStyleSheet::checkLoaded):
33         * css/CSSStyleSheet.h:
34         (WebCore::CSSStyleSheet::loadCompleted):
35
36 2006-11-11  Alexey Proskuryakov  <ap@webkit.org>
37
38         Attempt to fix Qt build.
39
40         * CMakeLists.txt: PathQt.cpp is in graphics/qt now.
41
42 2006-11-11  Lars Naesbye Christensen  <larsnaesbye@stud.ku.dk>
43
44         Tortured by Sam Weinig, Tim H., Maciej, Mitz and Alexey :-)
45
46         [CSS 3] support for vertical-text, cell and context-menu cursors
47         http://bugs.webkit.org/show_bug.cgi?id=11494
48
49         * Resources/cellCursor.png: Added.
50         * Resources/contextMenuCursor.png: Added.
51         * Resources/verticalTextCursor.png: Added.
52         * WebCore.xcodeproj/project.pbxproj:
53         * css/CSSComputedStyleDeclaration.cpp:
54         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
55         * css/CSSValueKeywords.in:
56         * manual-tests/cursor.html:
57         * page/FrameView.cpp:
58         (WebCore::selectCursor):
59         * platform/Cursor.h:
60         * platform/mac/CursorMac.mm:
61         (WebCore::verticalTextCursor):
62         (WebCore::cellCursor):
63         (WebCore::contextMenuCursor):
64         * rendering/RenderStyle.h:
65         (WebCore::):
66
67 2006-11-11  Nikolas Zimmermann  <zimmermann@kde.org>
68
69         Reviewed by aroben and ap, landed by ap.
70
71         Fixes: http://bugs.webkit.org/show_bug.cgi?id=11468
72
73         Group graphics related files in platform/graphics.
74         Move certain files from certain subdirectories
75         into platform/graphics/{win,mac,cg,gdk,qt}
76
77         * CMakeLists.txt:
78         * WebCore.xcodeproj/project.pbxproj:
79         * platform/AffineTransform.cpp: Removed.
80         * platform/AffineTransform.h: Removed.
81         * platform/Color.cpp: Removed.
82         * platform/Color.h: Removed.
83         * platform/FloatPoint.cpp: Removed.
84         * platform/FloatPoint.h: Removed.
85         * platform/FloatRect.cpp: Removed.
86         * platform/FloatRect.h: Removed.
87         * platform/FloatSize.cpp: Removed.
88         * platform/FloatSize.h: Removed.
89         * platform/Icon.h: Removed.
90         * platform/Image.cpp: Removed.
91         * platform/Image.h: Removed.
92         * platform/ImageSource.h: Removed.
93         * platform/IntPoint.h: Removed.
94         * platform/IntRect.cpp: Removed.
95         * platform/IntRect.h: Removed.
96         * platform/IntSize.h: Removed.
97         * platform/IntSizeHash.h: Removed.
98         * platform/Path.cpp: Removed.
99         * platform/Path.h: Removed.
100         * platform/Pen.cpp: Removed.
101         * platform/Pen.h: Removed.
102         * platform/cairo/AffineTransformCairo.cpp: Removed.
103         * platform/cairo/GraphicsContextCairo.cpp: Removed.
104         * platform/cairo/ImageCairo.cpp: Removed.
105         * platform/cairo/ImageSourceCairo.cpp: Removed.
106         * platform/cairo/cairo/AUTHORS: Removed.
107         * platform/cairo/cairo/COPYING: Removed.
108         * platform/cairo/cairo/COPYING-LGPL-2.1: Removed.
109         * platform/cairo/cairo/COPYING-MPL-1.1: Removed.
110         * platform/cairo/cairo/INSTALL: Removed.
111         * platform/cairo/cairo/NEWS: Removed.
112         * platform/cairo/cairo/README: Removed.
113         * platform/cairo/cairo/TODO: Removed.
114         * platform/cairo/cairo/src/Makefile.in: Removed.
115         * platform/cairo/cairo/src/cairo-arc-private.h: Removed.
116         * platform/cairo/cairo/src/cairo-arc.c: Removed.
117         * platform/cairo/cairo/src/cairo-array.c: Removed.
118         * platform/cairo/cairo/src/cairo-atsui-font.c: Removed.
119         * platform/cairo/cairo/src/cairo-atsui.h: Removed.
120         * platform/cairo/cairo/src/cairo-beos-surface.cpp: Removed.
121         * platform/cairo/cairo/src/cairo-beos.h: Removed.
122         * platform/cairo/cairo/src/cairo-cache-private.h: Removed.
123         * platform/cairo/cairo/src/cairo-cache.c: Removed.
124         * platform/cairo/cairo/src/cairo-clip-private.h: Removed.
125         * platform/cairo/cairo/src/cairo-clip.c: Removed.
126         * platform/cairo/cairo/src/cairo-color.c: Removed.
127         * platform/cairo/cairo/src/cairo-debug.c: Removed.
128         * platform/cairo/cairo/src/cairo-debug.h: Removed.
129         * platform/cairo/cairo/src/cairo-directfb-surface.c: Removed.
130         * platform/cairo/cairo/src/cairo-directfb.h: Removed.
131         * platform/cairo/cairo/src/cairo-features.h: Removed.
132         * platform/cairo/cairo/src/cairo-features.h.in: Removed.
133         * platform/cairo/cairo/src/cairo-fixed.c: Removed.
134         * platform/cairo/cairo/src/cairo-font-options.c: Removed.
135         * platform/cairo/cairo/src/cairo-font-subset-private.h: Removed.
136         * platform/cairo/cairo/src/cairo-font-subset.c: Removed.
137         * platform/cairo/cairo/src/cairo-font.c: Removed.
138         * platform/cairo/cairo/src/cairo-ft-font.c: Removed.
139         * platform/cairo/cairo/src/cairo-ft-private.h: Removed.
140         * platform/cairo/cairo/src/cairo-ft.h: Removed.
141         * platform/cairo/cairo/src/cairo-glitz-surface.c: Removed.
142         * platform/cairo/cairo/src/cairo-glitz.h: Removed.
143         * platform/cairo/cairo/src/cairo-gstate-private.h: Removed.
144         * platform/cairo/cairo/src/cairo-gstate.c: Removed.
145         * platform/cairo/cairo/src/cairo-hash-private.h: Removed.
146         * platform/cairo/cairo/src/cairo-hash.c: Removed.
147         * platform/cairo/cairo/src/cairo-hull.c: Removed.
148         * platform/cairo/cairo/src/cairo-image-surface.c: Removed.
149         * platform/cairo/cairo/src/cairo-matrix.c: Removed.
150         * platform/cairo/cairo/src/cairo-meta-surface-private.h: Removed.
151         * platform/cairo/cairo/src/cairo-meta-surface.c: Removed.
152         * platform/cairo/cairo/src/cairo-output-stream.c: Removed.
153         * platform/cairo/cairo/src/cairo-paginated-surface-private.h: Removed.
154         * platform/cairo/cairo/src/cairo-paginated-surface.c: Removed.
155         * platform/cairo/cairo/src/cairo-path-bounds.c: Removed.
156         * platform/cairo/cairo/src/cairo-path-data-private.h: Removed.
157         * platform/cairo/cairo/src/cairo-path-data.c: Removed.
158         * platform/cairo/cairo/src/cairo-path-fill.c: Removed.
159         * platform/cairo/cairo/src/cairo-path-fixed-private.h: Removed.
160         * platform/cairo/cairo/src/cairo-path-stroke.c: Removed.
161         * platform/cairo/cairo/src/cairo-path.c: Removed.
162         * platform/cairo/cairo/src/cairo-pattern.c: Removed.
163         * platform/cairo/cairo/src/cairo-pdf-surface.c: Removed.
164         * platform/cairo/cairo/src/cairo-pdf.h: Removed.
165         * platform/cairo/cairo/src/cairo-pen.c: Removed.
166         * platform/cairo/cairo/src/cairo-platform.h: Removed.
167         * platform/cairo/cairo/src/cairo-png.c: Removed.
168         * platform/cairo/cairo/src/cairo-polygon.c: Removed.
169         * platform/cairo/cairo/src/cairo-private.h: Removed.
170         * platform/cairo/cairo/src/cairo-ps-surface.c: Removed.
171         * platform/cairo/cairo/src/cairo-ps.h: Removed.
172         * platform/cairo/cairo/src/cairo-quartz-private.h: Removed.
173         * platform/cairo/cairo/src/cairo-quartz-surface.c: Removed.
174         * platform/cairo/cairo/src/cairo-quartz.h: Removed.
175         * platform/cairo/cairo/src/cairo-quartz2-surface.c: Removed.
176         * platform/cairo/cairo/src/cairo-quartz2.h: Removed.
177         * platform/cairo/cairo/src/cairo-region.c: Removed.
178         * platform/cairo/cairo/src/cairo-scaled-font.c: Removed.
179         * platform/cairo/cairo/src/cairo-slope.c: Removed.
180         * platform/cairo/cairo/src/cairo-spline.c: Removed.
181         * platform/cairo/cairo/src/cairo-stroke-style.c: Removed.
182         * platform/cairo/cairo/src/cairo-surface-fallback-private.h: Removed.
183         * platform/cairo/cairo/src/cairo-surface-fallback.c: Removed.
184         * platform/cairo/cairo/src/cairo-surface.c: Removed.
185         * platform/cairo/cairo/src/cairo-svg-surface.c: Removed.
186         * platform/cairo/cairo/src/cairo-svg.h: Removed.
187         * platform/cairo/cairo/src/cairo-traps.c: Removed.
188         * platform/cairo/cairo/src/cairo-unicode.c: Removed.
189         * platform/cairo/cairo/src/cairo-wideint.c: Removed.
190         * platform/cairo/cairo/src/cairo-wideint.h: Removed.
191         * platform/cairo/cairo/src/cairo-win32-font.c: Removed.
192         * platform/cairo/cairo/src/cairo-win32-private.h: Removed.
193         * platform/cairo/cairo/src/cairo-win32-surface.c: Removed.
194         * platform/cairo/cairo/src/cairo-win32.h: Removed.
195         * platform/cairo/cairo/src/cairo-xcb-surface.c: Removed.
196         * platform/cairo/cairo/src/cairo-xcb-xrender.h: Removed.
197         * platform/cairo/cairo/src/cairo-xcb.h: Removed.
198         * platform/cairo/cairo/src/cairo-xlib-private.h: Removed.
199         * platform/cairo/cairo/src/cairo-xlib-screen.c: Removed.
200         * platform/cairo/cairo/src/cairo-xlib-surface.c: Removed.
201         * platform/cairo/cairo/src/cairo-xlib-test.h: Removed.
202         * platform/cairo/cairo/src/cairo-xlib-xrender.h: Removed.
203         * platform/cairo/cairo/src/cairo-xlib.h: Removed.
204         * platform/cairo/cairo/src/cairo.c: Removed.
205         * platform/cairo/cairo/src/cairo.h: Removed.
206         * platform/cairo/cairo/src/cairoint.h: Removed.
207         * platform/cairo/cairo/src/test-fallback-surface.c: Removed.
208         * platform/cairo/cairo/src/test-fallback-surface.h: Removed.
209         * platform/cairo/cairo/src/test-meta-surface.c: Removed.
210         * platform/cairo/cairo/src/test-meta-surface.h: Removed.
211         * platform/cairo/cairo/src/test-paginated-surface.c: Removed.
212         * platform/cairo/cairo/src/test-paginated-surface.h: Removed.
213         * platform/cairo/pixman/AUTHORS: Removed.
214         * platform/cairo/pixman/COPYING: Removed.
215         * platform/cairo/pixman/README: Removed.
216         * platform/cairo/pixman/src/Makefile.in: Removed.
217         * platform/cairo/pixman/src/fbcompose.c: Removed.
218         * platform/cairo/pixman/src/fbedge.c: Removed.
219         * platform/cairo/pixman/src/fbedgeimp.h: Removed.
220         * platform/cairo/pixman/src/fbmmx.c: Removed.
221         * platform/cairo/pixman/src/fbmmx.h: Removed.
222         * platform/cairo/pixman/src/fbpict.c: Removed.
223         * platform/cairo/pixman/src/fbpict.h: Removed.
224         * platform/cairo/pixman/src/fbtrap.c: Removed.
225         * platform/cairo/pixman/src/icblt.c: Removed.
226         * platform/cairo/pixman/src/icbltone.c: Removed.
227         * platform/cairo/pixman/src/iccolor.c: Removed.
228         * platform/cairo/pixman/src/icformat.c: Removed.
229         * platform/cairo/pixman/src/icimage.c: Removed.
230         * platform/cairo/pixman/src/icimage.h: Removed.
231         * platform/cairo/pixman/src/icint.h: Removed.
232         * platform/cairo/pixman/src/icpixels.c: Removed.
233         * platform/cairo/pixman/src/icrect.c: Removed.
234         * platform/cairo/pixman/src/icrop.h: Removed.
235         * platform/cairo/pixman/src/icstipple.c: Removed.
236         * platform/cairo/pixman/src/ictransform.c: Removed.
237         * platform/cairo/pixman/src/ictrap.c: Removed.
238         * platform/cairo/pixman/src/ictri.c: Removed.
239         * platform/cairo/pixman/src/icutil.c: Removed.
240         * platform/cairo/pixman/src/pixman-remap.h: Removed.
241         * platform/cairo/pixman/src/pixman-xserver-compat.h: Removed.
242         * platform/cairo/pixman/src/pixman.h: Removed.
243         * platform/cairo/pixman/src/pixregion.c: Removed.
244         * platform/cairo/pixman/src/pixregionint.h: Removed.
245         * platform/cairo/pixman/src/renderedge.c: Removed.
246         * platform/cairo/pixman/src/renderedge.h: Removed.
247         * platform/cairo/pixman/src/slim_internal.h: Removed.
248         * platform/cairo/rgb24-hacks.txt: Removed.
249         * platform/cairo/scale-removal.txt: Removed.
250         * platform/cg/AffineTransformCG.cpp: Removed.
251         * platform/cg/FloatPointCG.cpp: Removed.
252         * platform/cg/FloatRectCG.cpp: Removed.
253         * platform/cg/FloatSizeCG.cpp: Removed.
254         * platform/cg/GraphicsContextCG.cpp: Removed.
255         * platform/cg/GraphicsContextPlatformPrivate.h: Removed.
256         * platform/cg/ImageCG.cpp: Removed.
257         * platform/cg/ImageSourceCG.cpp: Removed.
258         * platform/cg/IntPointCG.cpp: Removed.
259         * platform/cg/IntRectCG.cpp: Removed.
260         * platform/cg/IntSizeCG.cpp: Removed.
261         * platform/cg/PDFDocumentImage.cpp: Removed.
262         * platform/cg/PDFDocumentImage.h: Removed.
263         * platform/cg/PathCG.cpp: Removed.
264         * platform/gdk/ImageGdk.cpp: Removed.
265         * platform/mac/ColorMac.mm: Removed.
266         * platform/mac/FloatPointMac.mm: Removed.
267         * platform/mac/FloatRectMac.mm: Removed.
268         * platform/mac/FloatSizeMac.mm: Removed.
269         * platform/mac/GraphicsContextMac.mm:
270         * platform/mac/IconMac.mm: Removed.
271         * platform/mac/ImageMac.mm: Removed.
272         * platform/mac/IntPointMac.mm: Removed.
273         * platform/mac/IntRectMac.mm: Removed.
274         * platform/mac/IntSizeMac.mm: Removed.
275         * platform/qt/AffineTransformQt.cpp: Removed.
276         * platform/qt/ColorQt.cpp: Removed.
277         * platform/qt/FloatPointQt.cpp: Removed.
278         * platform/qt/FloatRectQt.cpp: Removed.
279         * platform/qt/IconQt.cpp: Removed.
280         * platform/qt/ImageQt.cpp: Removed.
281         * platform/qt/ImageSourceQt.cpp: Removed.
282         * platform/qt/IntPointQt.cpp: Removed.
283         * platform/qt/IntRectQt.cpp: Removed.
284         * platform/qt/IntSizeQt.cpp: Removed.
285         * platform/qt/PathQt.cpp: Removed.
286         * platform/win/ImageWin.cpp: Removed.
287         * platform/win/IntPointWin.cpp: Removed.
288         * platform/win/IntRectWin.cpp: Removed.
289         * platform/win/IntSizeWin.cpp: Removed.
290
291 2006-11-11  Graham Dennis  <graham.dennis@gmail.com>
292
293         Reviewed by hyatt.
294
295         A layout test was added when this bug was fixed, so none needed now.
296         
297         Cleanup after:
298         REGRESSION (r16122): min/max widths incorrectly calculated for contentEditable text
299         http://bugs.webkit.org/show_bug.cgi?id=11570
300         
301         * rendering/RenderStyle.h:
302         (WebCore::RenderStyle::isSpace): Removed.
303         * rendering/RenderText.cpp:
304         (WebCore::isSpace): Added.
305         (WebCore::RenderText::calcMinMaxWidth): Use inline function instead of polluting RenderStyle.
306
307 2006-11-11  Graham Dennis  <graham.dennis@gmail.com>
308
309         Reviewed by mitz.
310         
311         REGRESSION (r16122): min/max widths incorrectly calculated for contentEditable text
312         http://bugs.webkit.org/show_bug.cgi?id=11570
313
314         * rendering/RenderStyle.h:
315         (WebCore::RenderStyle::isSpace): Added.
316         * rendering/RenderText.cpp:
317         (WebCore::RenderText::calcMinMaxWidth): For the purposes of calculating the line widths, 
318         treat non-breaking spaces the same as normal spaces if -webkit-nbsp-mode is 'space'
319
320 2006-11-10  Zalan Bujtas <zalan.bujtas@nokia.com>
321
322         Reviewed by Maciej.
323
324         Added basic types for symbian platform.
325         http://bugs.webkit.org/show_bug.cgi?id=11540
326
327         * config.h:
328         * platform/AtomicString.h:
329         (WebCore::AtomicString::AtomicString):
330         (WebCore::AtomicString::operator TPtrC):
331         * platform/DeprecatedString.cpp:
332         (WebCore::initializeHandleNodeBlock):
333         * platform/DeprecatedString.h: char _internalBuffer has to be in front of
334           the bitfields as Codewarrior (3.2.5 build 461) compiler cannot cope with
335           bitfields and breaks byte aligment
336         * platform/FloatPoint.h:
337         * platform/FloatRect.h:
338         * platform/IntPoint.h:
339         * platform/IntRect.h:
340         * platform/IntSize.h:
341         * platform/PlatformString.h:
342         (WebCore::String::operator TPtrC):
343         (WebCore::String::des):
344         * platform/StringImpl.h:
345         * platform/symbian/DeprecatedStringSymbian.cpp: Added.
346         (WebCore::DeprecatedString::setBufferFromDes):
347         (WebCore::DeprecatedString::fromDes):
348         (WebCore::DeprecatedString::des):
349         (WebCore::DeprecatedString::des8):
350         * platform/symbian/FloatPointSymbian.cpp: Added.
351         (WebCore::FloatPoint::FloatPoint):
352         (WebCore::FloatPoint::operator TPoint):
353         * platform/symbian/FloatRectSymbian.cpp: Added.
354         (WebCore::FloatRect::FloatRect):
355         (WebCore::FloatRect::operator TRect):
356         (WebCore::FloatRect::rect):
357         * platform/symbian/IntPointSymbian.cpp: Added.
358         (WebCore::IntPoint::IntPoint):
359         (WebCore::IntPoint::operator TPoint):
360         * platform/symbian/IntRectSymbian.cpp: Added.
361         (WebCore::IntRect::IntRect):
362         (WebCore::IntRect::operator TRect):
363         (WebCore::IntRect::Rect):
364         * platform/symbian/IntSizeSymbian.cpp: Added.
365         (WebCore::IntSize::IntSize):
366         (WebCore::IntSize::operator TSize):
367         * platform/symbian/StringImplSymbian.cpp: Added.
368         (WebCore::StringImpl::StringImpl):
369         (WebCore::StringImpl::des):
370         * platform/symbian/StringSymbian.cpp: Added.
371         (WebCore::String::String):
372
373 2006-11-10  Zack Rusin  <zack@kde.org>
374
375         Reviewed by Anders.
376
377         Adjust to the changes Brady made in the Qt code.
378
379         * loader/qt/FrameLoaderClientQt.cpp:
380         (WebCore::FrameLoaderClientQt::dispatchDidReceiveIcon):
381         * loader/qt/FrameLoaderClientQt.h:
382
383 2006-11-10  Justin Garcia  <justin.garcia@apple.com>
384
385         Reviewed by harrison
386         
387         <rdar://problem/4069359>
388         Deleting hyperlink text, then typing uses link typing style but loses the link itself
389         
390         The removed anchor element needs to stick around temporarily, in the same way
391         that the typing style hangs off the caret until the user moves it.  Also text
392         insertion around anchors didn't match TextEdit.
393
394         * editing/DeleteSelectionCommand.cpp:
395         (WebCore::DeleteSelectionCommand::saveFullySelectedAnchor): Added.
396         (WebCore::DeleteSelectionCommand::doApply): Call saveFullySelectedAnchor.
397         * editing/DeleteSelectionCommand.h:
398         * editing/EditCommand.cpp:
399         (WebCore::EditCommand::apply): Clear the removed anchor after any top level
400         editing command that doesn't preserve the typing style (matches TextEdit).
401         * editing/Editor.cpp:
402         (WebCore::Editor::appliedEditing): Added a fixme: we shouldn't call 
403         setSelection with a message telling it to clear the typing style 
404         (and the saved anchor) here.  Save/restore the saved anchor because of this.
405         * editing/Editor.h:
406         (WebCore::Editor::removedAnchor): Getter.
407         (WebCore::Editor::setRemovedAnchor): Setter.
408         * editing/InsertTextCommand.cpp:
409         (WebCore::InsertTextCommand::prepareForTextInsertion): Insert the saved anchor
410         if one exists.
411         * editing/SelectionController.cpp:
412         (WebCore::SelectionController::setSelection): Clear the removed anchor whenever
413         we make a selection change that clears the typing style.
414         (WebCore::SelectionController::nodeWillBeRemoved): Removed an old outdated FIXME.
415         * editing/htmlediting.cpp:
416         (WebCore::positionAvoidingSpecialElementBoundary): Cleaned up and
417         made some changes to match TextEdit's behavior.  First, insert content
418         inside the anchor when the caret is after it, unless the caret is at the
419         end of the document, or if the caret is before it and at the start of a 
420         paragraph.
421
422 === Safari-521.30 ===
423
424 2006-11-10  Timothy Hatcher  <timothy@apple.com>
425
426         Reviewed by Hyatt.
427
428         Check for BHIDDEN in isVisible() also.
429
430         * rendering/RenderStyle.h:
431         (WebCore::BorderValue::isVisible):
432
433 2006-11-10  Timothy Hatcher  <timothy@apple.com>
434
435         Reviewed by Adam.
436
437         <rdar://problem/4821423> element deletion UI appears for Mail blockquote and others with less than three visible borders
438
439         Added a new function to BorderValue called isVisible(). This checks nonZero() and !isTransparent().
440
441         * editing/DeleteButtonController.cpp:
442         (WebCore::isDeletableElement):
443         * rendering/RenderStyle.h:
444         (WebCore::BorderValue::isVisible):
445
446 2006-11-10  Adam Roben  <aroben@apple.com>
447
448         Rubberstamped by Anders.
449
450         Back out some accidentally-committed changes from r17711.
451
452         * page/Frame.cpp:
453         (WebCore::Frame::command):
454         (WebCore::FramePrivate::FramePrivate):
455         * page/Frame.h:
456         * page/FramePrivate.h:
457
458 2006-11-10  Anders Carlsson  <acarlsson@apple.com>
459
460         Reviewed by Geoff.
461
462         Add more commands, make toggleBold and toggleItalic executable commands.
463
464         * WebCore.exp:
465         * editing/Editor.cpp:
466         (WebCore::execCopy):
467         (WebCore::execCut):
468         (WebCore::execDelete):
469         (WebCore::execForwardDelete):
470         (WebCore::execPaste):
471         (WebCore::execSelectAll):
472         (WebCore::execToggleBold):
473         (WebCore::execToggleItalic):
474         (WebCore::enabled):
475         (WebCore::canPaste):
476         (WebCore::hasEditableSelection):
477         (WebCore::hasEditableRangeSelection):
478         (WebCore::hasRangeSelection):
479         (WebCore::hasRichlyEditableSelection):
480         (WebCore::CommandEntry::):
481         * editing/Editor.h:
482
483 2006-11-10  Anders Carlsson  <acarlsson@apple.com>
484
485         Reviewed by Maciej, Geoff.
486
487         Added an execCommand method to Editor. The idea is that this should replace the CommandByName object. Get rid of
488         the alterCurrentSelection method in the bridge. WebKit can just call execCommand directly.
489
490         * WebCore.exp:
491         * bridge/mac/WebCoreFrameBridge.h:
492         * bridge/mac/WebCoreFrameBridge.mm:
493         * editing/Editor.cpp:
494         (WebCore::execMoveBackward):
495         (WebCore::execMoveBackwardAndModifySelection):
496         (WebCore::execMoveDown):
497         (WebCore::execMoveDownAndModifySelection):
498         (WebCore::execMoveForward):
499         (WebCore::execMoveForwardAndModifySelection):
500         (WebCore::execMoveLeft):
501         (WebCore::execMoveLeftAndModifySelection):
502         (WebCore::execMoveRight):
503         (WebCore::execMoveRightAndModifySelection):
504         (WebCore::execMoveToBeginningOfDocument):
505         (WebCore::execMoveToBeginningOfDocumentAndModifySelection):
506         (WebCore::execMoveToBeginningOfSentence):
507         (WebCore::execMoveToBeginningOfSentenceAndModifySelection):
508         (WebCore::execMoveToBeginningOfLine):
509         (WebCore::execMoveToBeginningOfLineAndModifySelection):
510         (WebCore::execMoveToBeginningOfParagraph):
511         (WebCore::execMoveToBeginningOfParagraphAndModifySelection):
512         (WebCore::execMoveToEndOfDocument):
513         (WebCore::execMoveToEndOfDocumentAndModifySelection):
514         (WebCore::execMoveToEndOfSentence):
515         (WebCore::execMoveToEndOfSentenceAndModifySelection):
516         (WebCore::execMoveToEndOfLine):
517         (WebCore::execMoveToEndOfLineAndModifySelection):
518         (WebCore::execMoveToEndOfParagraph):
519         (WebCore::execMoveToEndOfParagraphAndModifySelection):
520         (WebCore::execMoveParagraphBackwardAndModifySelection):
521         (WebCore::execMoveParagraphForwardAndModifySelection):
522         (WebCore::execMoveUp):
523         (WebCore::execMoveUpAndModifySelection):
524         (WebCore::execMoveWordBackward):
525         (WebCore::execMoveWordBackwardAndModifySelection):
526         (WebCore::execMoveWordForward):
527         (WebCore::execMoveWordForwardAndModifySelection):
528         (WebCore::execMoveWordLeft):
529         (WebCore::execMoveWordLeftAndModifySelection):
530         (WebCore::execMoveWordRight):
531         (WebCore::execMoveWordRightAndModifySelection):
532         (WebCore::enabledAnySelection):
533         (WebCore::createCommandMap):
534         (WebCore::CommandEntry::):
535         (WebCore::Editor::execCommand):
536         * editing/Editor.h:
537
538 2006-11-10  Brady Eidson  <beidson@apple.com>
539
540         Reviewed by Darin
541
542         Took out WebIconDatabaseBridge and made WebKit call IconDatabase directly
543
544         * WebCore.exp:
545         * WebCore.xcodeproj/project.pbxproj:
546         * bridge/mac/WebCoreIconDatabaseBridge.h: Removed.
547         * bridge/mac/WebCoreIconDatabaseBridge.mm: Removed.
548         * loader/FrameLoaderClient.h:
549         * loader/icon/IconDatabase.cpp:
550         (WebCore::IconDatabase::sharedIconDatabase):
551         (WebCore::IconDatabase::~IconDatabase):
552         * loader/icon/IconDatabase.h:
553         (WebCore::IconDatabase::isPrivateBrowsingEnabled):
554         (WebCore::IconDatabase::enabled):
555         * loader/icon/IconLoader.cpp:
556         (WebCore::IconLoader::finishLoading):
557         * loader/mac/FrameLoaderMac.mm:
558
559 2006-11-10  Zack Rusin  <zack@kde.org>
560
561         Reviewed and landed by Anders.
562
563         Adjust platform Qt/KDE code to the recent loader
564         changes. 
565
566         * CMakeLists.txt:
567         * loader/DocumentLoader.h:
568         * loader/FrameLoader.cpp:
569         (WebCore::FrameLoader::createEmptyDocument):
570         * loader/FrameLoader.h:
571         * loader/FrameLoaderClient.h:
572         * loader/qt/DocumentLoaderQt.cpp: Added.
573         (WebCore::canonicalizedTitle):
574         (WebCore::DocumentLoader::DocumentLoader):
575         (WebCore::DocumentLoader::frameLoader):
576         (WebCore::DocumentLoader::~DocumentLoader):
577         (WebCore::DocumentLoader::URL):
578         (WebCore::DocumentLoader::unreachableURL):
579         (WebCore::DocumentLoader::replaceRequestURLForAnchorScroll):
580         (WebCore::DocumentLoader::isStopping):
581         (WebCore::DocumentLoader::clearErrors):
582         (WebCore::DocumentLoader::stopLoading):
583         (WebCore::DocumentLoader::setupForReplace):
584         (WebCore::DocumentLoader::commitIfReady):
585         (WebCore::DocumentLoader::finishedLoading):
586         (WebCore::DocumentLoader::setCommitted):
587         (WebCore::DocumentLoader::isCommitted):
588         (WebCore::DocumentLoader::setLoading):
589         (WebCore::DocumentLoader::isLoading):
590         (WebCore::DocumentLoader::doesProgressiveLoad):
591         (WebCore::DocumentLoader::setupForReplaceByMIMEType):
592         (WebCore::DocumentLoader::updateLoading):
593         (WebCore::DocumentLoader::setFrame):
594         (WebCore::DocumentLoader::attachToFrame):
595         (WebCore::DocumentLoader::detachFromFrame):
596         (WebCore::DocumentLoader::prepareForLoadStart):
597         (WebCore::DocumentLoader::loadingStartedTime):
598         (WebCore::DocumentLoader::setIsClientRedirect):
599         (WebCore::DocumentLoader::isClientRedirect):
600         (WebCore::DocumentLoader::setPrimaryLoadComplete):
601         (WebCore::DocumentLoader::isLoadingInAPISense):
602         (WebCore::DocumentLoader::stopRecordingResponses):
603         (WebCore::DocumentLoader::title):
604         (WebCore::DocumentLoader::triggeringAction):
605         (WebCore::DocumentLoader::setTriggeringAction):
606         (WebCore::DocumentLoader::setOverrideEncoding):
607         (WebCore::DocumentLoader::overrideEncoding):
608         (WebCore::DocumentLoader::setTitle):
609         (WebCore::DocumentLoader::URLForHistory):
610         * loader/qt/FrameLoaderClientQt.cpp: Added.
611         (WebCore::FrameLoaderClientQt::FrameLoaderClientQt):
612         (WebCore::FrameLoaderClientQt::~FrameLoaderClientQt):
613         (WebCore::FrameLoaderClientQt::detachFrameLoader):
614         (WebCore::FrameLoaderClientQt::hasWebView):
615         (WebCore::FrameLoaderClientQt::hasFrameView):
616         (WebCore::FrameLoaderClientQt::hasBackForwardList):
617         (WebCore::FrameLoaderClientQt::resetBackForwardList):
618         (WebCore::FrameLoaderClientQt::provisionalItemIsTarget):
619         (WebCore::FrameLoaderClientQt::loadProvisionalItemFromPageCache):
620         (WebCore::FrameLoaderClientQt::invalidateCurrentItemPageCache):
621         (WebCore::FrameLoaderClientQt::privateBrowsingEnabled):
622         (WebCore::FrameLoaderClientQt::makeDocumentView):
623         (WebCore::FrameLoaderClientQt::makeRepresentation):
624         (WebCore::FrameLoaderClientQt::forceLayout):
625         (WebCore::FrameLoaderClientQt::forceLayoutForNonHTML):
626         (WebCore::FrameLoaderClientQt::updateHistoryForCommit):
627         (WebCore::FrameLoaderClientQt::updateHistoryForBackForwardNavigation):
628         (WebCore::FrameLoaderClientQt::updateHistoryForReload):
629         (WebCore::FrameLoaderClientQt::updateHistoryForStandardLoad):
630         (WebCore::FrameLoaderClientQt::updateHistoryForInternalLoad):
631         (WebCore::FrameLoaderClientQt::updateHistoryAfterClientRedirect):
632         (WebCore::FrameLoaderClientQt::setCopiesOnScroll):
633         (WebCore::FrameLoaderClientQt::tokenForLoadErrorReset):
634         (WebCore::FrameLoaderClientQt::resetAfterLoadError):
635         (WebCore::FrameLoaderClientQt::doNotResetAfterLoadError):
636         (WebCore::FrameLoaderClientQt::willCloseDocument):
637         (WebCore::FrameLoaderClientQt::detachedFromParent1):
638         (WebCore::FrameLoaderClientQt::detachedFromParent2):
639         (WebCore::FrameLoaderClientQt::detachedFromParent3):
640         (WebCore::FrameLoaderClientQt::detachedFromParent4):
641         (WebCore::FrameLoaderClientQt::loadedFromPageCache):
642         (WebCore::FrameLoaderClientQt::dispatchDidHandleOnloadEvents):
643         (WebCore::FrameLoaderClientQt::dispatchDidReceiveServerRedirectForProvisionalLoad):
644         (WebCore::FrameLoaderClientQt::dispatchDidCancelClientRedirect):
645         (WebCore::FrameLoaderClientQt::dispatchWillPerformClientRedirect):
646         (WebCore::FrameLoaderClientQt::dispatchDidChangeLocationWithinPage):
647         (WebCore::FrameLoaderClientQt::dispatchWillClose):
648         (WebCore::FrameLoaderClientQt::dispatchDidStartProvisionalLoad):
649         (WebCore::FrameLoaderClientQt::dispatchDidReceiveTitle):
650         (WebCore::FrameLoaderClientQt::dispatchDidCommitLoad):
651         (WebCore::FrameLoaderClientQt::dispatchDidFinishLoad):
652         (WebCore::FrameLoaderClientQt::dispatchDidFirstLayout):
653         (WebCore::FrameLoaderClientQt::dispatchShow):
654         (WebCore::FrameLoaderClientQt::cancelPolicyCheck):
655         (WebCore::FrameLoaderClientQt::dispatchWillSubmitForm):
656         (WebCore::FrameLoaderClientQt::dispatchDidLoadMainResource):
657         (WebCore::FrameLoaderClientQt::clearLoadingFromPageCache):
658         (WebCore::FrameLoaderClientQt::isLoadingFromPageCache):
659         (WebCore::FrameLoaderClientQt::revertToProvisionalState):
660         (WebCore::FrameLoaderClientQt::clearUnarchivingState):
661         (WebCore::FrameLoaderClientQt::progressStarted):
662         (WebCore::FrameLoaderClientQt::progressCompleted):
663         (WebCore::FrameLoaderClientQt::setMainFrameDocumentReady):
664         (WebCore::FrameLoaderClientQt::willChangeTitle):
665         (WebCore::FrameLoaderClientQt::didChangeTitle):
666         (WebCore::FrameLoaderClientQt::finishedLoading):
667         (WebCore::FrameLoaderClientQt::finalSetupForReplace):
668         (WebCore::FrameLoaderClientQt::setDefersLoading):
669         (WebCore::FrameLoaderClientQt::isArchiveLoadPending):
670         (WebCore::FrameLoaderClientQt::cancelPendingArchiveLoad):
671         (WebCore::FrameLoaderClientQt::clearArchivedResources):
672         (WebCore::FrameLoaderClientQt::canShowMIMEType):
673         (WebCore::FrameLoaderClientQt::representationExistsForURLScheme):
674         (WebCore::FrameLoaderClientQt::generatedMIMETypeForURLScheme):
675         (WebCore::FrameLoaderClientQt::frameLoadCompleted):
676         (WebCore::FrameLoaderClientQt::restoreScrollPositionAndViewState):
677         (WebCore::FrameLoaderClientQt::provisionalLoadStarted):
678         (WebCore::FrameLoaderClientQt::shouldTreatURLAsSameAsCurrent):
679         (WebCore::FrameLoaderClientQt::addHistoryItemForFragmentScroll):
680         (WebCore::FrameLoaderClientQt::didFinishLoad):
681         (WebCore::FrameLoaderClientQt::prepareForDataSourceReplacement):
682         (WebCore::FrameLoaderClientQt::setTitle):
683         (WebCore::FrameLoaderClientQt::userAgent):
684         * loader/qt/FrameLoaderClientQt.h: Added.
685         * loader/qt/FrameLoaderQt.cpp:
686         (WebCore::FrameLoader::submitForm):
687         (WebCore::FrameLoader::overrideMediaType):
688         (WebCore::FrameLoader::getHistoryLength):
689         (WebCore::FrameLoader::referrer):
690         (WebCore::FrameLoader::detachFromParent):
691         (WebCore::FrameLoader::checkLoadCompleteForThisFrame):
692         (WebCore::FrameLoader::goBackOrForward):
693         (WebCore::FrameLoader::historyURL):
694         (WebCore::FrameLoader::didFirstLayout):
695         (WebCore::FrameLoader::canGoBackOrForward):
696         (WebCore::FrameLoader::partClearedInBegin):
697         (WebCore::FrameLoader::saveDocumentState):
698         (WebCore::FrameLoader::restoreDocumentState):
699         (WebCore::FrameLoader::didChangeTitle):
700         (WebCore::FrameLoader::redirectDataToPlugin):
701         (WebCore::PolicyCheck::PolicyCheck):
702         (WebCore::PolicyCheck::clear):
703         (WebCore::PolicyCheck::set):
704         (WebCore::PolicyCheck::call):
705         (WebCore::PolicyCheck::clearRequest):
706         * loader/qt/NavigationActionQt.cpp: Added.
707         (WebCore::navigationType):
708         (WebCore::NavigationAction::NavigationAction):
709         * loader/qt/ResourceLoaderQt.cpp: Added.
710         (WebCore::ResourceLoader::ResourceLoader):
711         (WebCore::ResourceLoader::~ResourceLoader):
712         (WebCore::ResourceLoader::setDefersLoading):
713         (WebCore::ResourceLoader::cancel):
714         (WebCore::ResourceLoader::loadsBlocked):
715         * platform/MimeTypeRegistry.cpp:
716         (WebCore::initialiseSupportedImageMIMETypes):
717         * platform/network/qt/ResourceHandleManager.cpp:
718         (WebCore::ResourceHandleManager::slotResult):
719         (WebCore::ResourceHandleManager::cancel):
720         * platform/qt/ChromeClientQt.cpp: Added.
721         (WebCore::rootWindowForFrame):
722         (WebCore::ChromeClientQt::ChromeClientQt):
723         (WebCore::ChromeClientQt::~ChromeClientQt):
724         (WebCore::ChromeClientQt::setWindowRect):
725         (WebCore::ChromeClientQt::windowRect):
726         (WebCore::ChromeClientQt::pageRect):
727         (WebCore::ChromeClientQt::scaleFactor):
728         (WebCore::ChromeClientQt::focus):
729         (WebCore::ChromeClientQt::unfocus):
730         (WebCore::ChromeClientQt::createWindow):
731         (WebCore::ChromeClientQt::createModalDialog):
732         (WebCore::ChromeClientQt::show):
733         (WebCore::ChromeClientQt::canRunModal):
734         (WebCore::ChromeClientQt::runModal):
735         (WebCore::ChromeClientQt::setToolbarsVisible):
736         (WebCore::ChromeClientQt::toolbarsVisible):
737         (WebCore::ChromeClientQt::setStatusbarVisible):
738         (WebCore::ChromeClientQt::statusbarVisible):
739         (WebCore::ChromeClientQt::setScrollbarsVisible):
740         (WebCore::ChromeClientQt::scrollbarsVisible):
741         (WebCore::ChromeClientQt::setMenubarVisible):
742         (WebCore::ChromeClientQt::menubarVisible):
743         (WebCore::ChromeClientQt::setResizable):
744         * platform/qt/ChromeClientQt.h: Added.
745         * platform/qt/EditorClientQt.cpp:
746         (WebCore::EditorClientQt::shouldBeginEditing):
747         (WebCore::EditorClientQt::shouldEndEditing):
748         (WebCore::EditorClientQt::shouldApplyStyle):
749         (WebCore::EditorClientQt::didBeginEditing):
750         (WebCore::EditorClientQt::respondToChangedContents):
751         (WebCore::EditorClientQt::didEndEditing):
752         * platform/qt/EditorClientQt.h:
753         * platform/qt/FrameQt.cpp:
754         (WebCore::FrameQt::FrameQt):
755         (WebCore::FrameQt::~FrameQt):
756         (WebCore::FrameQt::keyEvent):
757         * platform/qt/FrameQt.h:
758         * platform/qt/FrameQtClient.cpp:
759         (WebCore::FrameQtClientDefault::openURL):
760         (WebCore::FrameQtClientDefault::didReceiveData):
761         (WebCore::FrameQtClientDefault::receivedAllData):
762         * platform/qt/ImageQt.cpp:
763         * platform/qt/MimeTypeRegistryQt.cpp: Added.
764         (WebCore::getMIMETypeForUTI):
765         (WebCore::MimeTypeRegistry::getMIMETypeForExtension):
766         * platform/qt/PageQt.cpp:
767         * platform/qt/PlatformKeyboardEventQt.cpp:
768         (WebCore::keyIdentifierForQtKeyCode):
769         * platform/qt/ScreenQt.cpp:
770         * platform/qt/TemporaryLinkStubs.cpp:
771         (WebCore::TextField::TextField):
772         (WebCore::screenDepth):
773         (WebCore::screenDepthPerComponent):
774         (WebCore::screenIsMonochrome):
775         (WebCore::screenRect):
776         (WebCore::screenAvailableRect):
777
778 2006-11-10  Brady Eidson <beidson@apple.com>
779
780         Reviewed by Mitz
781
782         http://bugs.webkit.org/show_bug.cgi?id=11554
783         Fix the above bug (in didFinishLoading) and also another potential bug in didFailWithError
784         in case the icon load fails after some data has been received. 
785
786         * loader/icon/IconLoader.cpp:
787         (WebCore::IconLoader::didFailWithError): Clear the buffer so half-an-image isn't commited to the DB
788         on error.  Also, as a loader re-factoring sanity check, added an assertion
789         (WebCore::IconLoader::didFinishLoading): If an icon loader resulted in an error-response, the icon 
790         is already committed to the DB.  Skip doing that step twice.
791
792 2006-11-09  Oliver Hunt  <oliver@apple.com>
793
794         Reviewed by Brady.
795
796         Pulled MIME type handling out of WebFrameBridge and added
797         a general C++ class to store/query MIME info
798         Added an Obj-C bridge to provide WebKit with access to the
799         MimeTypeRegistry for non-Obj-C++ classes.
800         
801         * WebCore.exp:
802         * WebCore.xcodeproj/project.pbxproj:
803         * bridge/mac/WebCoreFrameBridge.h:
804         * bridge/mac/WebCoreFrameBridge.mm:
805         * bridge/mac/WebMimeTypeRegistryBridge.h: Added.
806         * bridge/mac/WebMimeTypeRegistryBridge.mm: Added.
807         (+[WebMimeTypeRegistryBridge supportsImageWithMIMEType:]):
808         (+[WebMimeTypeRegistryBridge supportsNonImageWithMIMEType:]):
809         (+[WebMimeTypeRegistryBridge supportedNonImageMIMETypes]):
810         (+[WebMimeTypeRegistryBridge supportedImageMIMETypes]):
811         (+[WebMimeTypeRegistryBridge supportedImageResourceMIMETypes]):
812         * platform/Image.cpp:
813         (WebCore::Image::supportsType):
814         * platform/Image.h:
815         * platform/MimeTypeRegistry.cpp: Added.
816         (WebCore::initialiseSupportedImageMIMETypes):
817         (WebCore::initialiseSupportedNonImageMimeTypes):
818         (WebCore::initialiseMimeTypeRegistry):
819         (WebCore::MimeTypeRegistry::isSupportedImageMIMEType):
820         (WebCore::MimeTypeRegistry::isSupportedImageResourceMIMEType):
821         (WebCore::MimeTypeRegistry::isSupportedNonImageMIMEType):
822         (WebCore::MimeTypeRegistry::getSupportedImageMIMETypes):
823         (WebCore::MimeTypeRegistry::getSupportedImageResourceMIMETypes):
824         (WebCore::MimeTypeRegistry::getSupportedNonImageMIMETypes):
825         * platform/MimeTypeRegistry.h: Added.
826         * platform/mac/ImageMac.mm:
827         * platform/mac/MimeTypeRegistryMac.mm: Added.
828         (WebCore::getMIMETypeForUTI):
829         (WebCore::MimeTypeRegistry::getMIMETypeForExtension):
830
831 2006-11-09  Maciej Stachowiak  <mjs@apple.com>
832
833         Reviewed by Oliver.
834
835         - rename String::sprintf and DeprecatedString::sprintf to ...::format to avoid needlessly tweaking a search
836         for insecure functions. Neither of these has risk of buffer overruns since they calculate the buffer size
837         for you and use vsnprintf.
838
839         * bindings/js/kjs_window.cpp:
840         (KJS::Window::isSafeScript):
841         * css/cssparser.cpp:
842         (WebCore::CSSParser::parseColorFromValue):
843         * dom/StyledElement.cpp:
844         (WebCore::StyledElement::addCSSColor):
845         * dom/XMLTokenizer.cpp:
846         (WebCore::XMLTokenizer::handleError):
847         * ksvg2/css/SVGCSSParser.cpp:
848         (WebCore::CSSParser::parseSVGPaint):
849         (WebCore::CSSParser::parseSVGColor):
850         * ksvg2/svg/SVGPathSegArc.h:
851         (WebCore::SVGPathSegArcAbs::toString):
852         (WebCore::SVGPathSegArcRel::toString):
853         * ksvg2/svg/SVGPathSegCurvetoCubic.h:
854         (WebCore::SVGPathSegCurvetoCubicAbs::toString):
855         (WebCore::SVGPathSegCurvetoCubicRel::toString):
856         * ksvg2/svg/SVGPathSegCurvetoCubicSmooth.h:
857         (WebCore::SVGPathSegCurvetoCubicSmoothAbs::toString):
858         (WebCore::SVGPathSegCurvetoCubicSmoothRel::toString):
859         * ksvg2/svg/SVGPathSegCurvetoQuadratic.h:
860         (WebCore::SVGPathSegCurvetoQuadraticAbs::toString):
861         (WebCore::SVGPathSegCurvetoQuadraticRel::toString):
862         * ksvg2/svg/SVGPathSegCurvetoQuadraticSmooth.h:
863         (WebCore::SVGPathSegCurvetoQuadraticSmoothAbs::toString):
864         (WebCore::SVGPathSegCurvetoQuadraticSmoothRel::toString):
865         * ksvg2/svg/SVGPathSegLineto.h:
866         (WebCore::SVGPathSegLinetoAbs::toString):
867         (WebCore::SVGPathSegLinetoRel::toString):
868         * ksvg2/svg/SVGPathSegLinetoHorizontal.h:
869         (WebCore::SVGPathSegLinetoHorizontalAbs::toString):
870         (WebCore::SVGPathSegLinetoHorizontalRel::toString):
871         * ksvg2/svg/SVGPathSegLinetoVertical.h:
872         (WebCore::SVGPathSegLinetoVerticalAbs::toString):
873         (WebCore::SVGPathSegLinetoVerticalRel::toString):
874         * ksvg2/svg/SVGPathSegMoveto.h:
875         (WebCore::SVGPathSegMovetoAbs::toString):
876         (WebCore::SVGPathSegMovetoRel::toString):
877         * ksvg2/svg/SVGPolyElement.cpp:
878         (WebCore::SVGPolyElement::notifyAttributeChange):
879         * ksvg2/svg/SVGUseElement.cpp:
880         (WebCore::SVGUseElement::closeRenderer):
881         * loader/icon/IconDatabase.cpp:
882         (WebCore::IconDatabase::forgetIconForIconURLFromDatabase):
883         * loader/icon/SQLDatabase.cpp:
884         (WebCore::SQLDatabase::setSynchronous):
885         * platform/Color.cpp:
886         (WebCore::Color::name):
887         * platform/DeprecatedString.cpp:
888         (WebCore::DeprecatedString::setNum):
889         (WebCore::DeprecatedString::format):
890         * platform/DeprecatedString.h:
891         * platform/PlatformString.h:
892         * platform/String.cpp:
893         (WebCore::String::format):
894         (WebCore::String::number):
895         * platform/mac/KeyEventMac.mm:
896         (WebCore::keyIdentifierForKeyEvent):
897         * platform/win/KeyEventWin.cpp:
898         (WebCore::keyIdentifierForWindowsKeyCode):
899         * rendering/RenderListMarker.cpp:
900         (WebCore::RenderListMarker::calcMinMaxWidth):
901
902 2006-11-09  Maciej Stachowiak  <mjs@apple.com>
903
904         Reviewed by Anders.
905
906         - fixed "Regression: Can't log into gmail.com"
907         - fixed "iBench doesn't report results - tests run but no number is recorded"
908         
909         * platform/network/cf/FormDataStreamCFNet.cpp:
910         (WebCore::setHTTPBody): Removed extra ! character.
911
912 2006-11-09  Beth Dakin  <bdakin@apple.com>
913
914         Reviewed by Hyatt.
915
916         Fix for <rdar://problem/4805409> REGRESSION: Reproducible crash in 
917         WebCore::RenderBlock::skipWhitespace
918
919         Note that this will still crash on Debug builds because it will hit 
920         an assertion failure in editing. (One of the reasons there is no 
921         layout test along with this fix.) There is definitely some editing 
922         wackiness happening. See http://bugs.webkit.org/show_bug.cgi?
923         id=10144 for updates on the assertion failure bug.
924
925         * rendering/RootInlineBox.cpp:
926         (WebCore::RootInlineBox::childRemoved): It is possible for a 
927         prevRootBox and its prevRootBox to share a lineBreakObj. So instead 
928         of just clearing the lineBreakObj of the prevRootBox, cycle through 
929         all prevRootBoxs with the same lineBreakObj. 
930
931 2006-11-09  Adam Roben  <aroben@apple.com>
932
933         Reviewed by Geoff.
934
935         Fix the change in behavior I caused in r17680 with my build fix.
936
937         * rendering/RenderObject.cpp:
938         (WebCore::RenderObject::maxTopMargin):
939         (WebCore::RenderObject::maxBottomMargin):
940
941 2006-11-09  Anders Carlsson  <acarlsson@apple.com>
942
943         Reviewed by Adam, Oliver.
944
945         Move more functions to Editor.
946
947         * bridge/EditorClient.h:
948         * bridge/mac/FrameMac.h:
949         * bridge/mac/FrameMac.mm:
950         * bridge/mac/WebCoreFrameBridge.h:
951         * editing/EditCommand.cpp:
952         (WebCore::EditCommand::apply):
953         (WebCore::EditCommand::unapply):
954         (WebCore::EditCommand::reapply):
955         * editing/Editor.cpp:
956         (WebCore::Editor::respondToChangedContents):
957         (WebCore::dispatchEditableContentChangedEvents):
958         (WebCore::Editor::appliedEditing):
959         (WebCore::Editor::unappliedEditing):
960         (WebCore::Editor::reappliedEditing):
961         * editing/Editor.h:
962         * editing/TypingCommand.cpp:
963         (WebCore::TypingCommand::typingAddedToOpenCommand):
964         * page/Frame.cpp:
965         * page/Frame.h:
966
967 2006-11-09  Darin Adler  <darin@apple.com>
968
969         * rendering/RenderObject.h: Oops! Fixed accidentally checked-in ifdef.
970
971 2006-11-09  Alice Liu  <alice.liu@apple.com>
972
973         Reviewed by Beth Dakin.
974
975         Fixed <rdar://problem/4808720> Hamachi test tool crashes Safari in WebCore::HTMLTableSectionElement::deleteRow
976         All existing layout tests pass
977
978         * html/HTMLTableElement.cpp:
979         (WebCore::HTMLTableElement::deleteRow):
980         check lastSection before deleting row
981
982 2006-11-09  Darin Adler  <darin@apple.com>
983
984         - improved version of last night's build fix (should not do using namespace in a header)
985
986         * rendering/RenderObject.h:
987         * rendering/RenderObject.cpp:
988         (WebCore::RenderObject::maxTopMargin):
989         (WebCore::RenderObject::maxBottomMargin):
990
991 2006-11-08  Maciej Stachowiak  <mjs@apple.com>
992
993         Reviewed by Geoff.
994         
995         - added ResourceError class and didFailWithError client method
996
997         * WebCore.xcodeproj/project.pbxproj:
998         * loader/icon/IconLoader.cpp:
999         (WebCore::IconLoader::didFailWithError):
1000         (WebCore::IconLoader::didFinishLoading):
1001         * loader/icon/IconLoader.h:
1002         * loader/loader.cpp:
1003         (WebCore::Loader::receivedAllData):
1004         (WebCore::Loader::didFailWithError):
1005         * loader/loader.h:
1006         * loader/mac/SubresourceLoaderMac.mm:
1007         (WebCore::SubresourceLoader::didFail):
1008         (WebCore::SubresourceLoader::didCancel):
1009         * platform/cf/RetainPtr.h:
1010         (WebCore::):
1011         (WebCore::adoptCFReference):
1012         (WebCore::RetainPtr::RetainPtr):
1013         (WebCore::::adopt):
1014         * platform/network/ResourceError.cpp: Added.
1015         * platform/network/ResourceError.h: Added.
1016         (WebCore::ResourceError::ResourceError):
1017         (WebCore::ResourceError::domain):
1018         (WebCore::ResourceError::errorCode):
1019         (WebCore::ResourceError::failingURL):
1020         (WebCore::ResourceError::localizedDescription):
1021         (WebCore::ResourceError::unpackPlatformErrorIfNeeded):
1022         * platform/network/ResourceHandle.cpp:
1023         * platform/network/ResourceHandle.h:
1024         * platform/network/ResourceHandleClient.h:
1025         (WebCore::ResourceHandleClient::didFailWithError):
1026         * platform/network/cf/ResourceHandleCFNet.cpp:
1027         (WebCore::didFail):
1028         (WebCore::ResourceHandle::cancel):
1029         * platform/network/mac/ResourceErrorMac.mm: Added.
1030         (-[NSError WebCore]):
1031         * platform/network/mac/ResourceHandleMac.mm:
1032         (WebCore::ResourceHandle::reportError):
1033         * xml/xmlhttprequest.cpp:
1034         (WebCore::XMLHttpRequest::didFailWithError):
1035         (WebCore::XMLHttpRequest::didFinishLoading):
1036         * xml/xmlhttprequest.h:
1037
1038 2006-11-08  Krzysztof Kowalczyk  <kkowalczyk@gmail.com>
1039
1040         Reviewed by Maciej.
1041
1042         Linux\Gdk fixes.
1043
1044         * platform/gdk/ChromeClientGdk.h:
1045         (WebCore::ChromeClientGdk::~ChromeClientGdk):
1046         * platform/gdk/CursorGdk.cpp:
1047         (WebCore::Cursor::Cursor):
1048         (WebCore::moveCursor):
1049         * platform/gdk/FrameGdk.cpp:
1050         (WebCore::FrameGdk::FrameGdk):
1051         (WebCore::FrameGdk::submitForm):
1052         (WebCore::FrameGdk::urlSelected):
1053         * platform/gdk/PageGdk.cpp:
1054         * platform/gdk/ScreenClientGdk.h: Added.
1055         (WebCore::ScreenClientGdk::~ScreenClientGdk):
1056         * platform/gdk/ScreenGdk.cpp:
1057         (WebCore::ScreenClientGdk::depth):
1058         (WebCore::ScreenClientGdk::depthPerComponent):
1059         (WebCore::ScreenClientGdk::isMonochrome):
1060         (WebCore::ScreenClientGdk::rect):
1061         (WebCore::ScreenClientGdk::usableRect):
1062         * platform/gdk/TemporaryLinkStubs.cpp:
1063         (FrameGdk::historyURL):
1064         (ChromeClientGdk::windowRect):
1065         (ChromeClientGdk::setWindowRect):
1066         (ChromeClientGdk::pageRect):
1067         (ChromeClientGdk::scaleFactor):
1068         (ChromeClientGdk::focus):
1069         (ChromeClientGdk::unfocus):
1070         (ChromeClientGdk::createWindow):
1071         (ChromeClientGdk::createModalDialog):
1072         (ChromeClientGdk::show):
1073         (ChromeClientGdk::canRunModal):
1074         (ChromeClientGdk::runModal):
1075         (ChromeClientGdk::setToolbarsVisible):
1076         (ChromeClientGdk::toolbarsVisible):
1077         (ChromeClientGdk::setStatusbarVisible):
1078         (ChromeClientGdk::statusbarVisible):
1079         (ChromeClientGdk::setScrollbarsVisible):
1080         (ChromeClientGdk::scrollbarsVisible):
1081         (ChromeClientGdk::setMenubarVisible):
1082         (ChromeClientGdk::menubarVisible):
1083         (ChromeClientGdk::setResizable):
1084         * platform/network/ResourceHandleInternal.h:
1085         (WebCore::ResourceHandleInternal::client):
1086         * platform/network/gdk/ResourceHandleManager.cpp:
1087         (WebCore::writeCallback):
1088         (WebCore::ResourceHandleManager::downloadTimerCallback):
1089         (WebCore::ResourceHandleManager::remove):
1090
1091 2006-11-08  Adam Roben  <aroben@apple.com>
1092
1093         Build fix.
1094
1095         * rendering/RenderObject.h:
1096         (WebCore::RenderObject::maxTopMargin):
1097         (WebCore::RenderObject::maxBottomMargin):
1098
1099 2006-11-08  Geoffrey Garen  <ggaren@apple.com>
1100
1101         Reviewed by Anders Carlsson.
1102
1103         Made Screen a good platform citizen by removing its reference to Page. This
1104         made a class unnecessary, so all screen fuctions are stand-alone now.
1105
1106         * bindings/js/kjs_window.cpp: Removed unnecessary subtractions
1107         when computing the screen's available dimensions.
1108
1109 2006-11-08  Sam Weinig  <sam.weinig@gmail.com>
1110
1111         Reviewed by Mitz.
1112
1113         Fix for http://bugs.webkit.org/show_bug.cgi?id=11506
1114         Cleanup RenderObject
1115
1116         * rendering/RenderObject.cpp:
1117         (WebCore::RenderObject::operator delete):
1118         (WebCore::RenderObject::createObject):
1119         (WebCore::RenderObjectCounter::~RenderObjectCounter):
1120         (WebCore::RenderObject::RenderObject):
1121         (WebCore::RenderObject::isDescendantOf):
1122         (WebCore::RenderObject::isRoot):
1123         (WebCore::RenderObject::addChild):
1124         (WebCore::RenderObject::removeChildNode):
1125         (WebCore::RenderObject::removeChild):
1126         (WebCore::RenderObject::appendChildNode):
1127         (WebCore::RenderObject::insertChildNode):
1128         (WebCore::RenderObject::nextInPreOrder):
1129         (WebCore::RenderObject::nextInPreOrderAfterChildren):
1130         (WebCore::RenderObject::previousInPreOrder):
1131         (WebCore::RenderObject::isEditable):
1132         (WebCore::RenderObject::nextEditable):
1133         (WebCore::RenderObject::previousEditable):
1134         (WebCore::RenderObject::firstLeafChild):
1135         (WebCore::RenderObject::lastLeafChild):
1136         (WebCore::RenderObject::addLayers):
1137         (WebCore::RenderObject::removeLayers):
1138         (WebCore::RenderObject::moveLayers):
1139         (WebCore::RenderObject::findNextLayer):
1140         (WebCore::RenderObject::enclosingLayer):
1141         (WebCore::RenderObject::updateFirstLetter):
1142         (WebCore::RenderObject::offsetParent):
1143         (WebCore::RenderObject::scroll):
1144         (WebCore::RenderObject::hasStaticX):
1145         (WebCore::RenderObject::setNeedsLayout):
1146         (WebCore::RenderObject::setChildNeedsLayout):
1147         (WebCore::RenderObject::markContainingBlocksForLayout):
1148         (WebCore::RenderObject::containingBlock):
1149         (WebCore::RenderObject::containingBlockWidth):
1150         (WebCore::RenderObject::containingBlockHeight):
1151         (WebCore::RenderObject::mustRepaintBackgroundOrBorder):
1152         (WebCore::RenderObject::drawBorderArc):
1153         (WebCore::RenderObject::drawBorder):
1154         (WebCore::RenderObject::paintBorderImage):
1155         (WebCore::RenderObject::paintBorder):
1156         (WebCore::RenderObject::absoluteRects):
1157         (WebCore::RenderObject::addPDFURLRect):
1158         (WebCore::RenderObject::addFocusRingRects):
1159         (WebCore::RenderObject::paintOutline):
1160         (WebCore::RenderObject::repaint):
1161         (WebCore::RenderObject::repaintRectangle):
1162         (WebCore::RenderObject::repaintAfterLayoutIfNeeded):
1163         (WebCore::RenderObject::repaintObjectsBeforeLayout):
1164         (WebCore::RenderObject::getAbsoluteRepaintRectWithOutline):
1165         (WebCore::RenderObject::information):
1166         (WebCore::RenderObject::dump):
1167         (WebCore::selectStartNode):
1168         (WebCore::RenderObject::shouldSelect):
1169         (WebCore::RenderObject::draggableNode):
1170         (WebCore::RenderObject::createAnonymousBlock):
1171         (WebCore::RenderObject::handleDynamicFloatPositionChange):
1172         (WebCore::RenderObject::setStyle):
1173         (WebCore::RenderObject::setStyleInternal):
1174         (WebCore::RenderObject::updateBackgroundImages):
1175         (WebCore::RenderObject::absolutePosition):
1176         (WebCore::RenderObject::caretRect):
1177         (WebCore::RenderObject::paddingTop):
1178         (WebCore::RenderObject::paddingBottom):
1179         (WebCore::RenderObject::paddingLeft):
1180         (WebCore::RenderObject::paddingRight):
1181         (WebCore::RenderObject::tabWidth):
1182         (WebCore::RenderObject::container):
1183         (WebCore::RenderObject::removeFromObjectLists):
1184         (WebCore::RenderObject::destroy):
1185         (WebCore::RenderObject::arenaDelete):
1186         (WebCore::RenderObject::hitTest):
1187         (WebCore::RenderObject::setInnerNode):
1188         (WebCore::RenderObject::nodeAtPoint):
1189         (WebCore::RenderObject::verticalPositionHint):
1190         (WebCore::RenderObject::getVerticalPosition):
1191         (WebCore::RenderObject::lineHeight):
1192         (WebCore::RenderObject::invalidateVerticalPositions):
1193         (WebCore::RenderObject::recalcMinMaxWidths):
1194         (WebCore::RenderObject::scheduleRelayout):
1195         (WebCore::RenderObject::setInlineBoxWrapper):
1196         (WebCore::RenderObject::firstLineStyle):
1197         (WebCore::RenderObject::getPseudoStyle):
1198         (WebCore::RenderObject::getTextDecorationColors):
1199         (WebCore::RenderObject::addDashboardRegions):
1200         (WebCore::RenderObject::collectDashboardRegions):
1201         (WebCore::RenderObject::avoidsFloats):
1202         (WebCore::RenderObject::findCounter):
1203         (WebCore::RenderObject::backslashAsCurrencySymbol):
1204         (WebCore::RenderObject::imageChanged):
1205         (WebCore::RenderObject::previousOffset):
1206         (WebCore::RenderObject::nextOffset):
1207         (WebCore::RenderObject::inlineBox):
1208         * rendering/RenderObject.h:
1209         (WebCore::):
1210         (WebCore::RenderObject::renderName):
1211         (WebCore::RenderObject::parent):
1212         (WebCore::RenderObject::previousSibling):
1213         (WebCore::RenderObject::nextSibling):
1214         (WebCore::RenderObject::firstChild):
1215         (WebCore::RenderObject::lastChild):
1216         (WebCore::RenderObject::getOverflowClipRect):
1217         (WebCore::RenderObject::getClipRect):
1218         (WebCore::RenderObject::getBaselineOfFirstLineBox):
1219         (WebCore::RenderObject::setEdited):
1220         (WebCore::RenderObject::setStaticX):
1221         (WebCore::RenderObject::setStaticY):
1222         (WebCore::RenderObject::setPreviousSibling):
1223         (WebCore::RenderObject::setNextSibling):
1224         (WebCore::RenderObject::setParent):
1225         (WebCore::RenderObject::isInlineBlockOrInlineTable):
1226         (WebCore::RenderObject::isRenderView):
1227         (WebCore::RenderObject::childrenInline):
1228         (WebCore::RenderObject::setChildrenInline):
1229         (WebCore::RenderObject::isAnonymousBlock):
1230         (WebCore::RenderObject::isDragging):
1231         (WebCore::RenderObject::needsLayout):
1232         (WebCore::RenderObject::setMinMaxKnown):
1233         (WebCore::RenderObject::setNeedsLayoutAndMinMaxRecalc):
1234         (WebCore::RenderObject::setPositioned):
1235         (WebCore::RenderObject::setRelPositioned):
1236         (WebCore::RenderObject::setFloating):
1237         (WebCore::RenderObject::setInline):
1238         (WebCore::RenderObject::setShouldPaintBackgroundOrBorder):
1239         (WebCore::RenderObject::setReplaced):
1240         (WebCore::RenderObject::PaintInfo::PaintInfo):
1241         (WebCore::RenderObject::paintBackgroundExtended):
1242         (WebCore::RenderObject::calcWidth):
1243         (WebCore::RenderObject::updateFromElement):
1244         (WebCore::RenderObject::RepaintInfo::RepaintInfo):
1245         (WebCore::RenderObject::setOverrideSize):
1246         (WebCore::RenderObject::setPos):
1247         (WebCore::RenderObject::setWidth):
1248         (WebCore::RenderObject::setHeight):
1249         (WebCore::RenderObject::absolutePositionForContent):
1250         (WebCore::RenderObject::overflowHeight):
1251         (WebCore::RenderObject::overflowWidth):
1252         (WebCore::RenderObject::setOverflowHeight):
1253         (WebCore::RenderObject::setOverflowWidth):
1254         (WebCore::RenderObject::overflowLeft):
1255         (WebCore::RenderObject::overflowTop):
1256         (WebCore::RenderObject::overflowRect):
1257         (WebCore::RenderObject::stopAutoscroll):
1258         (WebCore::RenderObject::collapsedMarginTop):
1259         (WebCore::RenderObject::collapsedMarginBottom):
1260         (WebCore::RenderObject::maxTopMargin):
1261         (WebCore::RenderObject::maxBottomMargin):
1262         (WebCore::RenderObject::):
1263         (WebCore::RenderObject::setTable):
1264         (WebCore::RenderObject::isFloatingOrPositioned):
1265         (WebCore::RenderObject::containsFloat):
1266         (WebCore::RenderObject::setSelectionState):
1267         (WebCore::RenderObject::SelectionInfo::SelectionInfo):
1268         (WebCore::RenderObject::lowestPosition):
1269         (WebCore::RenderObject::rightmostPosition):
1270         (WebCore::RenderObject::leftmostPosition):
1271         (WebCore::RenderObject::calcVerticalMargins):
1272         (WebCore::RenderObject::font):
1273
1274 2006-11-08  Darin Adler  <darin@apple.com>
1275
1276         Reviewed by Anders.
1277
1278         - added event parameters to focus-related functions so we can
1279           implement the "option-tab to all links" behavior without relying
1280           on a global "current event" -- also makes it work with DOM events
1281
1282         * page/Frame.h: Removed unneeded includes. Moved some functions
1283         that were misplaced into the appropriate sections.
1284         * page/Frame.cpp:
1285         (WebCore::Frame::doTextFieldCommandFromEvent): Changed parameter from
1286         PlatformKeyboardEvent to the DOM keyboard event class.
1287         (WebCore::Frame::tabsToLinks): Added event parameter.
1288         (WebCore::Frame::tabsToAllControls): Ditto.
1289         (WebCore::scanForForm): Fixed code that incorrectly assumes
1290         that an iframe is an HTMLFrameElement (no longer true since Geoff
1291         changed the class hierarchy a bit).
1292         (WebCore::Frame::hitTestResultAtPoint): Ditto.
1293
1294         * bridge/mac/FrameMac.h: Removed unneeded includes. Moved some functions
1295         that were misplaced into the appropriate sections.
1296         * bridge/mac/FrameMac.mm:
1297         (WebCore::selectorForKeyEvent): Changed to use a DOM event instead of
1298         a PlatformKeyboardEvent.
1299         (WebCore::FrameMac::nextKeyViewInFrame): Changed to use currentKeyboardEvent()
1300         and pass event into next/previousFocusNode.
1301         (WebCore::FrameMac::currentKeyboardEvent): Added. Creates a DOM event from
1302         the AppKit current event, if it's a keyboard event. Really just a hack that's
1303         needed to preserve some code we can remove once we deal with the last NSView-
1304         based form control.
1305         (WebCore::isKeyboardOptionTab): Added.
1306         (WebCore::FrameMac::tabsToLinks): Added event parameter, used to check if the
1307         option (alt) key is down.
1308         (WebCore::FrameMac::tabsToAllControls): Ditto.
1309         (WebCore::FrameMac::keyEvent): Changed call to prepareForUserAction() to just
1310         call resetMultipleFormSubmissionProtection() explicitly instead.
1311         (WebCore::FrameMac::mouseDown): Ditto.
1312
1313         * bridge/mac/WebCoreAXObject.mm:
1314         (-[WebCoreAXObject accessibilityDescription]): Fixed code that incorrectly
1315         assumes that an iframe is an HTMLFrameElement (no longer true since Geoff
1316         changed the class hierarchy a bit).
1317         (-[WebCoreAXObject accessibilityPerformAction:]): Changed call to
1318         prepareForUserAction() to call resetMultipleFormSubmissionProtection()
1319         explicitly instead.
1320
1321         * page/FrameView.h:
1322         * page/FrameView.cpp:
1323         (WebCore::FrameView::advanceFocus): Changed function to take an
1324         event parameter, and decide the direction based on the shift key
1325         modifier instead of a passed-in boolean.
1326
1327         * dom/Document.h:
1328         * dom/Document.cpp:
1329         (WebCore::Document::nextFocusNode): Added event parameter.
1330         (WebCore::Document::previousFocusNode): Ditto.
1331         * dom/Node.h:
1332         * dom/Node.cpp:
1333         (WebCore::Node::isKeyboardFocusable): Ditto.
1334         * html/HTMLAnchorElement.h:
1335         * html/HTMLAnchorElement.cpp:
1336         (WebCore::HTMLAnchorElement::isKeyboardFocusable): Ditto.
1337         * html/HTMLGenericFormElement.h:
1338         * html/HTMLGenericFormElement.cpp:
1339         (WebCore::HTMLGenericFormElement::isKeyboardFocusable): Ditto.
1340         * html/HTMLInputElement.h:
1341         * html/HTMLInputElement.cpp:
1342         (WebCore::HTMLInputElement::isKeyboardFocusable): Ditto.
1343         (WebCore::HTMLInputElement::defaultEventHandler): Ditto.
1344         * html/HTMLSelectElement.h:
1345         * html/HTMLSelectElement.cpp:
1346         (WebCore::HTMLSelectElement::isKeyboardFocusable): Ditto.
1347         * html/HTMLTextAreaElement.h:
1348         * html/HTMLTextAreaElement.cpp:
1349         (WebCore::HTMLTextAreaElement::isKeyboardFocusable): Ditto.
1350
1351         * dom/EventTargetNode.cpp:
1352         (WebCore::EventTargetNode::defaultEventHandler): Pass event to the
1353         advanceFocus function.
1354
1355         * platform/TextField.h:
1356         * platform/mac/TextFieldMac.mm: Removed the non-search field code.
1357
1358         * platform/mac/WebCoreTextField.h:
1359         * platform/mac/WebCoreTextField.mm: Removed the non-search field code.
1360         (-[WebCoreTextFieldController controlTextDidChange:]): Removed the
1361         call to FrameMac::handleKeyboardOptionTabInView, which is no longer
1362         needed since the default handler in HTMLInputElement takes care of
1363         option-tab.
1364
1365         * platform/mac/SliderMac.mm:
1366         (-[WebCoreSlider canBecomeKeyView]): Changed to use currentKeyboardEvent()
1367         and pass event into tabsToAllControls.
1368         (Slider::focusPolicy): Ditto.
1369
1370         * rendering/RenderLineEdit.cpp:
1371         (WebCore::RenderLineEdit::RenderLineEdit): Removed the non-search field code.
1372         (WebCore::RenderLineEdit::updateFromElement): Ditto.
1373
1374 2006-11-08  Brady Eidson  <beidson@apple.com>
1375
1376         Reviewed by Dave Harrison, Oliver, and Darin 
1377         (oh my!  where was superkevin on this one?)
1378
1379         <rdar://problem/4816196> "Xcode Help" crashes in WebCore::DocumentLoader::setPrimaryLoadComplete(bool)
1380
1381         More "free nil checking" we lost in the transition from ObjC to C++
1382
1383         * loader/mac/FrameLoaderMac.mm:
1384         (WebCore::FrameLoader::startLoading): Null check m_provisionalDocumentLoader and bail early.
1385         (WebCore::FrameLoader::checkLoadCompleteForThisFrame): Ditto
1386
1387 2006-11-08  Anders Carlsson  <acarlsson@apple.com>
1388
1389         Reviewed by Adam.
1390
1391         Move more code into editor.
1392         
1393         * WebCore.exp:
1394         * bridge/EditorClient.h:
1395         * bridge/mac/FrameMac.h:
1396         * bridge/mac/FrameMac.mm:
1397         * bridge/mac/WebCoreFrameBridge.h:
1398         * dom/Document.cpp:
1399         (WebCore::Document::relinquishesEditingFocus):
1400         (WebCore::Document::acceptsEditingFocus):
1401         (WebCore::Document::didBeginEditing):
1402         (WebCore::Document::didEndEditing):
1403         * editing/Editor.cpp:
1404         (WebCore::Editor::indent):
1405         (WebCore::Editor::outdent):
1406         * editing/Editor.h:
1407         * page/Frame.cpp:
1408         * page/Frame.h:
1409
1410 2006-11-08  Beth Dakin  <bdakin@apple.com>
1411
1412         Reviewed by Adam.
1413
1414         Add ability to HitTestResult to ask if the inner non-shared node is 
1415         content editable.
1416
1417         * WebCore.exp: Export HitTestResult::isContentEditable()
1418         * rendering/HitTestResult.cpp:
1419         (WebCore::HitTestResult::isContentEditable):
1420         * rendering/HitTestResult.h:
1421
1422 2006-11-08  Anders Carlsson  <acarlsson@apple.com>
1423
1424         Build fix.
1425         
1426         * WebCore.xcodeproj/project.pbxproj:
1427         Add DOMCSSStyleDeclarationInternal.h to the "Copy Generated Headers" build phase.
1428
1429 2006-11-08  Timothy Hatcher  <timothy@apple.com>
1430
1431         Reviewed by Darin.
1432
1433         <rdar://problem/4713280> Would like to get an array of bounding rects rather than just the union of them for a DOMRange
1434         <rdar://problem/4804317> Would like SPI to get bounding box for a DOM range without having to change the selection
1435
1436         Added lineBoxRects and boundingBox to Range and DOMRange. These methods correspond to the DOMNode methods.
1437
1438         * bindings/objc/DOM.mm:
1439         (WebCore::kit):
1440         (-[DOMNode lineBoxRects]):
1441         (-[DOMRange boundingBox]):
1442         (-[DOMRange lineBoxRects]):
1443         * bindings/objc/DOMPrivate.h:
1444         * dom/Range.cpp:
1445         (WebCore::Range::boundingBox):
1446         (WebCore::Range::addLineBoxRects):
1447         * dom/Range.h:
1448         * rendering/RenderContainer.cpp:
1449         (WebCore::RenderContainer::addLineBoxRects):
1450         * rendering/RenderContainer.h:
1451         * rendering/RenderObject.cpp:
1452         (WebCore::RenderObject::addLineBoxRects):
1453         * rendering/RenderObject.h:
1454         * rendering/RenderText.cpp:
1455         (WebCore::RenderText::addLineBoxRects):
1456         * rendering/RenderText.h:
1457
1458 2006-11-08  Anders Carlsson  <acarlsson@apple.com>
1459
1460         Reviewed by Oliver.
1461         
1462         Move methods from the bridge and frame into editor.
1463         
1464         * WebCore.exp:
1465         * bridge/EditorClient.h:
1466         * bridge/mac/WebCoreFrameBridge.h:
1467         * bridge/mac/WebCoreFrameBridge.mm:
1468         * editing/Editor.cpp:
1469         (WebCore::Editor::removeFormattingAndStyle):
1470         (WebCore::Editor::applyStyle):
1471         (WebCore::Editor::applyParagraphStyle):
1472         (WebCore::Editor::applyStyleToSelection):
1473         (WebCore::Editor::applyParagraphStyleToSelection):
1474         (WebCore::Editor::toggleBold):
1475         (WebCore::Editor::toggleItalic):
1476         (WebCore::Editor::selectionStartHasStyle):
1477         * editing/Editor.h:
1478         * editing/JSEditor.cpp:
1479         * page/Frame.cpp:
1480         * page/Frame.h:
1481
1482 2006-11-08  Geoffrey Garen  <ggaren@apple.com>
1483
1484         Reviewed by Beth.
1485         
1486         Fixed regression in fast/events/objc-event-api. DumpRenderTree expects to
1487         be able to dispatch user events even when off-screen, so we have to support
1488         off-screen windows when handling mouse events.
1489
1490         * platform/Screen.h:
1491         * platform/mac/PlatformMouseEventMac.mm:
1492         (WebCore::globalPoint): Grab the best screen instead of the screen you're
1493         on, since you might be off-screen.
1494         * platform/mac/ScreenMac.mm:
1495         (WebCore::screenForWindow):
1496
1497 2006-11-08  Darin Adler  <darin@apple.com>
1498
1499         - fix bug caused by last-minute change to my check-in last night
1500           that is causing layout tests to hang
1501
1502         * dom/Document.cpp: (WebCore::Document::completeURL): Added comments.
1503         * loader/FrameLoader.cpp: (WebCore::FrameLoader::submitForm): Turn
1504         a null string into an empty string before calling completeURL.
1505
1506 2006-11-08  Brady Eidson <beidson@apple.com>
1507
1508         Reviewed by Maciej
1509
1510         If the request has already been aborted, bail out of didFinishLoading()
1511         immediately.  This prevents state change notifications that aren't
1512         needed.
1513
1514         * xml/xmlhttprequest.cpp:
1515         (WebCore::XMLHttpRequest::didFinishLoading):
1516
1517 2006-11-08  Darin Adler  <darin@apple.com>
1518
1519         - another attempt to fix Qt build
1520
1521         * loader/qt/FrameLoaderQt.cpp: Added missing include of FrameLoader.h.
1522
1523 2006-11-08  Darin Adler  <darin@apple.com>
1524
1525         Reviewed by Geoff.
1526
1527         - stray bits of my FrameLoader patch that I left out by accident
1528
1529         * loader/FrameLoader.cpp:
1530         (WebCore::FrameLoader::createWindow): Use m_outgoingReferrer instead of outgoingReferrer()
1531         inside the FrameLoader class.
1532         (WebCore::FrameLoader::requestFrame): Use less DeprecatedString.
1533         (WebCore::FrameLoader::clear): Stop the redirection timer.
1534         (WebCore::FrameLoader::receivedFirstData): Added an early return instead of nesting the
1535         entire function in an if statement. Use less DeprecatedString.
1536         (WebCore::FrameLoader::scheduleLocationChange): Fix backwards ? : operator.
1537         (WebCore::FrameLoader::scheduleRefresh): Ditto.
1538         (WebCore::FrameLoader::urlSelected): Use m_outgoingReferrer instead of outgoingReferrer()
1539         inside the FrameLoader class.
1540         * loader/mac/FrameLoaderMac.mm:
1541         (WebCore::FrameLoader::load): Ditto.
1542         (WebCore::FrameLoader::loadResourceSynchronously): Ditto.
1543
1544 2006-11-07  Beth Dakin  <bdakin@apple.com>
1545
1546         Reviewed by Hyatt.
1547
1548         Another go at fix for <rdar://problem/4820814> A crash occurs at 
1549         WebCore::HitTestResult::spellingToolTip() when mousing down on 
1550         iframe at www.macsurfer.com
1551
1552         The fix from yesterday caused a layout test regression which 
1553         exposed an existing bug. The existing bug was that we allowed text 
1554         nodes to stay in the head tag, but other browsers move them to the 
1555         body. The previous fix also caused a performance regression, which 
1556         was seemingly easy to fix by moving the new clause in 
1557         HTMLParser::handleError() to be below the HTMLElement case.
1558
1559         * html/HTMLDocument.cpp:
1560         (WebCore::HTMLDocument::childAllowed): Don't allow comment nodes to 
1561         be the child of the document.
1562         * html/HTMLHeadElement.cpp:
1563         (WebCore::HTMLHeadElement::childAllowed): Do not allow non-
1564         whitespace text nodes to be children of the head.
1565         * html/HTMLHeadElement.h:
1566         * html/HTMLParser.cpp:
1567         (WebCore::HTMLParser::handleError): Error case for comment nodes.
1568         * page/FrameView.cpp:
1569         (WebCore::FrameView::handleMousePressEvent): Safety-net null check 
1570         for the original crash. 
1571
1572 2006-11-07  Darin Adler  <darin@apple.com>
1573
1574         - another attempt to fix Qt build
1575
1576         * loader/icon/IconLoader.h: Added missing include.
1577
1578 2006-11-06  Geoffrey Garen  <ggaren@apple.com>
1579
1580         Reviewed by Tim Hatcher.
1581         
1582         Removed ScreenClient. It was highly unpopular, risking my midterm re-election.
1583         
1584         None of Screen's responsibilities require up-calls to WebKit or delegates, 
1585         so WebCore can handle it all.
1586         
1587         Moved Screen back from page/ to platform/ because it's a platform
1588         abstraction again.
1589
1590         Merged scaling and flipping functions into 'toUserSpace' and 'toDeviceSpace',
1591         since the two were always used together.
1592         
1593         Changed pixel depth queries to query the deepest screen. Darin mentioned
1594         that it might have been a feature, not a bug, to use the main/menubar screen
1595         regardless of the screen you were on. For scaling and flipping that's not
1596         the case, but for querying pixel depth I think it is. You want to know
1597         about the highest pixel depth your content may display on.
1598         
1599         Tests still pass.
1600
1601         * WebCore.exp:
1602         * WebCore.xcodeproj/project.pbxproj:
1603         * page/Page.cpp:
1604         (WebCore::Page::Page):
1605         * page/Page.h:
1606         * page/Screen.cpp: Removed.
1607         * page/Screen.h: Removed.
1608         * page/ScreenClient.h: Removed.
1609         * platform/mac/PlatformMouseEventMac.mm:
1610         (WebCore::globalPoint):
1611         * platform/mac/ScreenMac.mm:
1612         (WebCore::window):
1613         (WebCore::bestScreen):
1614         (WebCore::Screen::depth):
1615         (WebCore::Screen::depthPerComponent):
1616         (WebCore::Screen::isMonochrome):
1617         (WebCore::Screen::rect):
1618         (WebCore::Screen::usableRect):
1619         (WebCore::toUserSpace):
1620         (WebCore::toDeviceSpace):
1621
1622 2006-11-07  Darin Adler  <darin@apple.com>
1623
1624         - try to fix Qt build
1625
1626         * CMakeLists.txt: Updated for some file changes.
1627         * WebCoreSources.bkl: Ditto.
1628
1629 2006-11-07  Darin Adler  <darin@apple.com>
1630
1631         Reviewed by Geoff.
1632
1633         - moved loader code from Frame/FrameMac to FrameLoader
1634
1635         * WebCore.exp:
1636         * WebCore.xcodeproj/project.pbxproj:
1637         * bindings/js/JSXSLTProcessor.h:
1638         * bindings/js/kjs_events.cpp:
1639         (KJS::JSLazyEventListener::parseCode):
1640         * bindings/js/kjs_html.cpp:
1641         (KJS::JSHTMLDocument::putValueProperty):
1642         * bindings/js/kjs_navigator.cpp:
1643         (KJS::Navigator::getValueProperty):
1644         * bindings/js/kjs_proxy.cpp:
1645         (WebCore::KJSProxy::initScriptIfNeeded):
1646         * bindings/js/kjs_window.cpp:
1647         (KJS::Screen::Screen):
1648         (KJS::createNewWindow):
1649         (KJS::Window::getValueProperty):
1650         (KJS::Window::put):
1651         (KJS::Window::isSafeScript):
1652         (KJS::WindowFunc::callAsFunction):
1653         (KJS::ScheduledAction::execute):
1654         (KJS::Location::getValueProperty):
1655         (KJS::Location::put):
1656         (KJS::Location::toString):
1657         (KJS::LocationFunc::callAsFunction):
1658         (KJS::History::getValueProperty):
1659         (KJS::HistoryFunc::callAsFunction):
1660         * bindings/objc/DOM.mm:
1661         (+[DOMNode _nodeWith:WebCore::]):
1662         * bridge/mac/FrameMac.h:
1663         * bridge/mac/FrameMac.mm:
1664         (WebCore::FrameMac::~FrameMac):
1665         (WebCore::FrameMac::setView):
1666         (WebCore::FrameMac::setStatusBarText):
1667         * bridge/mac/WebCoreFrameBridge.h:
1668         * bridge/mac/WebCoreFrameBridge.mm:
1669         (-[WebCoreFrameBridge close]):
1670         (-[WebCoreFrameBridge addData:]):
1671         (-[WebCoreFrameBridge createFrameViewWithNSView:marginWidth:marginHeight:]):
1672         (-[WebCoreFrameBridge reapplyStylesForDeviceType:]):
1673         (-[WebCoreFrameBridge stringByEvaluatingJavaScriptFromString:forceUserGesture:]):
1674         (-[WebCoreFrameBridge aeDescByEvaluatingJavaScriptFromString:]):
1675         (-[WebCoreFrameBridge baseURL]):
1676         (-[WebCoreFrameBridge dragOperationForDraggingInfo:]):
1677         (-[WebCoreFrameBridge dragExitedWithDraggingInfo:]):
1678         (-[WebCoreFrameBridge canProvideDocumentSource]):
1679         (-[WebCoreFrameBridge receivedData:textEncodingName:]):
1680         * css/cssparser.cpp:
1681         (WebCore::CSSParser::parseContent):
1682         * dom/DOMImplementation.cpp:
1683         (WebCore::DOMImplementation::createDocument):
1684         (WebCore::DOMImplementation::createHTMLDocument):
1685         * dom/DOMImplementation.h:
1686         * dom/Document.cpp:
1687         (WebCore::Document::readyState):
1688         (WebCore::Document::updateTitle):
1689         (WebCore::Document::open):
1690         (WebCore::Document::close):
1691         (WebCore::Document::implicitClose):
1692         (WebCore::Document::processHttpEquiv):
1693         (WebCore::Document::referrer):
1694         (WebCore::Document::finishedParsing):
1695         * dom/ProcessingInstruction.cpp:
1696         (WebCore::ProcessingInstruction::checkStyleSheet):
1697         * dom/XMLTokenizer.cpp:
1698         (WebCore::XMLTokenizer::endElementNs):
1699         (WebCore::ignorableWhitespaceHandler):
1700         (WebCore::XMLTokenizer::notifyFinished):
1701         * editing/TextIterator.cpp:
1702         (WebCore::TextIterator::rangeFromLocationAndLength):
1703         * html/HTMLAnchorElement.cpp:
1704         (WebCore::HTMLAnchorElement::defaultEventHandler):
1705         * html/HTMLBaseElement.cpp:
1706         (WebCore::HTMLBaseElement::process):
1707         * html/HTMLDocument.cpp:
1708         (WebCore::HTMLDocument::lastModified):
1709         * html/HTMLFormElement.cpp:
1710         (WebCore::HTMLFormElement::formData):
1711         (WebCore::HTMLFormElement::submit):
1712         * html/HTMLFrameElementBase.cpp:
1713         (WebCore::HTMLFrameElementBase::isURLAllowed):
1714         (WebCore::HTMLFrameElementBase::openURL):
1715         (WebCore::HTMLFrameElementBase::willRemove):
1716         * html/HTMLInputElement.cpp:
1717         (WebCore::HTMLInputElement::setValueFromRenderer):
1718         * html/HTMLLinkElement.cpp:
1719         (WebCore::HTMLLinkElement::process):
1720         * html/HTMLParser.cpp:
1721         (WebCore::HTMLParser::handleError):
1722         (WebCore::HTMLParser::handleResidualStyleCloseTagAcrossBlocks):
1723         * html/HTMLPreElement.idl:
1724         * html/HTMLScriptElement.cpp:
1725         (WebCore::HTMLScriptElement::parseMappedAttribute):
1726         (WebCore::HTMLScriptElement::insertedIntoDocument):
1727         * html/HTMLTokenizer.cpp:
1728         (WebCore::HTMLTokenizer::scriptExecution):
1729         (WebCore::HTMLTokenizer::parseTag):
1730         (WebCore::HTMLTokenizer::write):
1731         (WebCore::HTMLTokenizer::stopParsing):
1732         (WebCore::HTMLTokenizer::timerFired):
1733         * kcanvas/device/quartz/KCanvasFilterQuartz.mm:
1734         (WebCore::KCanvasFilterQuartz::prepareFilter):
1735         * ksvg2/svg/SVGAElement.cpp:
1736         (WebCore::SVGAElement::defaultEventHandler):
1737         * ksvg2/svg/SVGElement.cpp:
1738         (WebCore::SVGElement::sendSVGLoadEventIfPossible):
1739         * loader/DocLoader.cpp:
1740         (WebCore::DocLoader::setLoadInProgress):
1741         * loader/FrameLoader.cpp:
1742         (WebCore::FormSubmission::FormSubmission):
1743         (WebCore::ScheduledRedirection::):
1744         (WebCore::ScheduledRedirection::ScheduledRedirection):
1745         (WebCore::cancelAll):
1746         (WebCore::getString):
1747         (WebCore::isBackForwardLoadType):
1748         (WebCore::numRequests):
1749         (WebCore::FrameLoader::FrameLoader):
1750         (WebCore::FrameLoader::~FrameLoader):
1751         (WebCore::FrameLoader::createWindow):
1752         (WebCore::FrameLoader::changeLocation):
1753         (WebCore::FrameLoader::urlSelected):
1754         (WebCore::FrameLoader::requestFrame):
1755         (WebCore::FrameLoader::loadSubframe):
1756         (WebCore::FrameLoader::submitFormAgain):
1757         (WebCore::FrameLoader::submitForm):
1758         (WebCore::FrameLoader::stopLoading):
1759         (WebCore::FrameLoader::stop):
1760         (WebCore::FrameLoader::closeURL):
1761         (WebCore::FrameLoader::cancelRedirection):
1762         (WebCore::FrameLoader::iconURL):
1763         (WebCore::FrameLoader::didOpenURL):
1764         (WebCore::FrameLoader::didExplicitOpen):
1765         (WebCore::FrameLoader::replaceContentsWithScriptResult):
1766         (WebCore::FrameLoader::executeScript):
1767         (WebCore::FrameLoader::cancelAndClear):
1768         (WebCore::FrameLoader::clear):
1769         (WebCore::FrameLoader::receivedFirstData):
1770         (WebCore::FrameLoader::responseMIMEType):
1771         (WebCore::FrameLoader::setResponseMIMEType):
1772         (WebCore::FrameLoader::begin):
1773         (WebCore::FrameLoader::write):
1774         (WebCore::FrameLoader::end):
1775         (WebCore::FrameLoader::endIfNotLoading):
1776         (WebCore::FrameLoader::startIconLoader):
1777         (WebCore::FrameLoader::commitIconURLToIconDatabase):
1778         (WebCore::FrameLoader::gotoAnchor):
1779         (WebCore::FrameLoader::finishedParsing):
1780         (WebCore::FrameLoader::loadDone):
1781         (WebCore::FrameLoader::checkCompleted):
1782         (WebCore::FrameLoader::checkEmitLoadEvent):
1783         (WebCore::FrameLoader::baseURL):
1784         (WebCore::FrameLoader::baseTarget):
1785         (WebCore::FrameLoader::completeURL):
1786         (WebCore::FrameLoader::scheduleRedirection):
1787         (WebCore::FrameLoader::scheduleLocationChange):
1788         (WebCore::FrameLoader::scheduleRefresh):
1789         (WebCore::FrameLoader::isScheduledLocationChangePending):
1790         (WebCore::FrameLoader::scheduleHistoryNavigation):
1791         (WebCore::FrameLoader::redirectionTimerFired):
1792         (WebCore::FrameLoader::encoding):
1793         (WebCore::FrameLoader::requestObject):
1794         (WebCore::FrameLoader::shouldUsePlugin):
1795         (WebCore::FrameLoader::loadPlugin):
1796         (WebCore::FrameLoader::clearRecordedFormValues):
1797         (WebCore::FrameLoader::recordFormValue):
1798         (WebCore::FrameLoader::parentCompleted):
1799         (WebCore::FrameLoader::outgoingReferrer):
1800         (WebCore::FrameLoader::lastModified):
1801         (WebCore::FrameLoader::opener):
1802         (WebCore::FrameLoader::setOpener):
1803         (WebCore::FrameLoader::openedByJavaScript):
1804         (WebCore::FrameLoader::setOpenedByJavaScript):
1805         (WebCore::FrameLoader::handleFallbackContent):
1806         (WebCore::FrameLoader::provisionalLoadStarted):
1807         (WebCore::FrameLoader::userGestureHint):
1808         (WebCore::FrameLoader::didNotOpenURL):
1809         (WebCore::FrameLoader::resetMultipleFormSubmissionProtection):
1810         (WebCore::FrameLoader::setEncoding):
1811         (WebCore::FrameLoader::addData):
1812         (WebCore::FrameLoader::canCachePage):
1813         (WebCore::FrameLoader::updatePolicyBaseURL):
1814         (WebCore::FrameLoader::setPolicyBaseURL):
1815         (WebCore::FrameLoader::scrollToAnchor):
1816         (WebCore::FrameLoader::isComplete):
1817         (WebCore::FrameLoader::isLoadingMainResource):
1818         (WebCore::FrameLoader::url):
1819         (WebCore::FrameLoader::startRedirectionTimer):
1820         (WebCore::FrameLoader::stopRedirectionTimer):
1821         (WebCore::FrameLoader::updateBaseURLForEmptyDocument):
1822         (WebCore::FrameLoader::completed):
1823         (WebCore::FrameLoader::started):
1824         (WebCore::FrameLoader::containsPlugins):
1825         (WebCore::FrameLoader::prepareForLoadStart):
1826         (WebCore::FrameLoader::setupForReplace):
1827         (WebCore::FrameLoader::setupForReplaceByMIMEType):
1828         (WebCore::FrameLoader::finalSetupForReplace):
1829         (WebCore::FrameLoader::load):
1830         (WebCore::FrameLoader::canTarget):
1831         (WebCore::FrameLoader::stopLoadingPlugIns):
1832         (WebCore::FrameLoader::stopLoadingSubresources):
1833         (WebCore::FrameLoader::stopLoadingSubframes):
1834         (WebCore::FrameLoader::stopAllLoaders):
1835         (WebCore::FrameLoader::cancelMainResourceLoad):
1836         (WebCore::FrameLoader::cancelPendingArchiveLoad):
1837         (WebCore::FrameLoader::activeDocumentLoader):
1838         (WebCore::FrameLoader::addPlugInStreamLoader):
1839         (WebCore::FrameLoader::removePlugInStreamLoader):
1840         (WebCore::FrameLoader::hasMainResourceLoader):
1841         (WebCore::FrameLoader::isLoadingSubresources):
1842         (WebCore::FrameLoader::isLoadingPlugIns):
1843         (WebCore::FrameLoader::isLoading):
1844         (WebCore::FrameLoader::addSubresourceLoader):
1845         (WebCore::FrameLoader::removeSubresourceLoader):
1846         (WebCore::FrameLoader::releaseMainResourceLoader):
1847         (WebCore::FrameLoader::setDocumentLoader):
1848         (WebCore::FrameLoader::documentLoader):
1849         (WebCore::FrameLoader::setPolicyDocumentLoader):
1850         (WebCore::FrameLoader::provisionalDocumentLoader):
1851         (WebCore::FrameLoader::setProvisionalDocumentLoader):
1852         (WebCore::FrameLoader::state):
1853         (WebCore::FrameLoader::timeOfLastCompletedLoad):
1854         (WebCore::FrameLoader::setState):
1855         (WebCore::FrameLoader::clearProvisionalLoad):
1856         (WebCore::FrameLoader::markLoadComplete):
1857         (WebCore::FrameLoader::commitProvisionalLoad):
1858         (WebCore::FrameLoader::privateBrowsingEnabled):
1859         (WebCore::FrameLoader::clientRedirectCancelledOrFinished):
1860         (WebCore::FrameLoader::clientRedirected):
1861         (WebCore::FrameLoader::shouldReload):
1862         (WebCore::FrameLoader::closeOldDataSources):
1863         (WebCore::FrameLoader::open):
1864         (WebCore::FrameLoader::isStopping):
1865         (WebCore::FrameLoader::finishedLoading):
1866         (WebCore::FrameLoader::URL):
1867         (WebCore::FrameLoader::isArchiveLoadPending):
1868         (WebCore::FrameLoader::isHostedByObjectElement):
1869         (WebCore::FrameLoader::isLoadingMainFrame):
1870         (WebCore::FrameLoader::canShowMIMEType):
1871         (WebCore::FrameLoader::representationExistsForURLScheme):
1872         (WebCore::FrameLoader::generatedMIMETypeForURLScheme):
1873         (WebCore::FrameLoader::cancelContentPolicyCheck):
1874         (WebCore::FrameLoader::didReceiveServerRedirectForProvisionalLoadForFrame):
1875         (WebCore::FrameLoader::finishedLoadingDocument):
1876         (WebCore::FrameLoader::isReplacing):
1877         (WebCore::FrameLoader::setReplacing):
1878         (WebCore::FrameLoader::revertToProvisional):
1879         (WebCore::FrameLoader::subframeIsLoading):
1880         (WebCore::FrameLoader::willChangeTitle):
1881         (WebCore::FrameLoader::loadType):
1882         (WebCore::FrameLoader::stopPolicyCheck):
1883         (WebCore::FrameLoader::continueAfterContentPolicy):
1884         (WebCore::FrameLoader::continueAfterWillSubmitForm):
1885         (WebCore::FrameLoader::didFirstLayout):
1886         (WebCore::FrameLoader::frameLoadCompleted):
1887         (WebCore::FrameLoader::firstLayoutDone):
1888         (WebCore::FrameLoader::isQuickRedirectComing):
1889         (WebCore::FrameLoader::closeDocument):
1890         (WebCore::FrameLoader::detachChildren):
1891         (WebCore::FrameLoader::checkLoadComplete):
1892         (WebCore::FrameLoader::numPendingOrLoadingRequests):
1893         (WebCore::FrameLoader::setClient):
1894         (WebCore::FrameLoader::client):
1895         (WebCore::FrameLoader::userAgent):
1896         (WebCore::FrameLoader::createEmptyDocument):
1897         (WebCore::FrameLoader::tokenizerProcessedData):
1898         (WebCore::FrameLoader::didTellBridgeAboutLoad):
1899         (WebCore::FrameLoader::haveToldBridgeAboutLoad):
1900         (WebCore::FrameLoader::handledOnloadEvents):
1901         (WebCore::FrameLoader::frameDetached):
1902         (WebCore::FrameLoader::setTitle):
1903         (WebCore::FrameLoaderClient::~FrameLoaderClient):
1904         * loader/FrameLoader.h:
1905         (WebCore::):
1906         * loader/FrameLoaderClient.h:
1907         * loader/PluginDocument.cpp:
1908         (WebCore::PluginTokenizer::createDocumentStructure):
1909         (WebCore::PluginTokenizer::writeRawData):
1910         * loader/ResourceLoader.h:
1911         * loader/TextResourceDecoder.cpp:
1912         (WebCore::TextResourceDecoder::checkForHeadCharset):
1913         * loader/icon/IconLoader.cpp:
1914         (WebCore::IconLoader::startLoading):
1915         (WebCore::IconLoader::finishLoading):
1916         * loader/loader.cpp:
1917         (WebCore::Loader::didReceiveResponse):
1918         * loader/mac/DocumentLoaderMac.mm:
1919         (WebCore::DocumentLoader::~DocumentLoader):
1920         (WebCore::DocumentLoader::stopLoading):
1921         (WebCore::DocumentLoader::finishedLoading):
1922         (WebCore::DocumentLoader::setupForReplaceByMIMEType):
1923         (WebCore::DocumentLoader::setPrimaryLoadComplete):
1924         * loader/mac/FrameLoaderMac.mm:
1925         (WebCore::FrameLoader::load):
1926         (WebCore::FrameLoader::startLoading):
1927         (WebCore::FrameLoader::cancelMainResourceLoad):
1928         (WebCore::FrameLoader::receivedMainResourceError):
1929         (WebCore::FrameLoader::continueFragmentScrollAfterNavigationPolicy):
1930         (WebCore::FrameLoader::commitProvisionalLoad):
1931         (WebCore::FrameLoader::continueLoadAfterNavigationPolicy):
1932         (WebCore::FrameLoader::checkLoadCompleteForThisFrame):
1933         (WebCore::FrameLoader::continueLoadAfterNewWindowPolicy):
1934         (WebCore::FrameLoader::detachFromParent):
1935         (WebCore::FrameLoader::addExtraFieldsToRequest):
1936         (WebCore::FrameLoader::loadResourceSynchronously):
1937         (WebCore::FrameLoader::createFrame):
1938         (WebCore::FrameLoader::objectContentType):
1939         (WebCore::nsArray):
1940         (WebCore::FrameLoader::createPlugin):
1941         (WebCore::FrameLoader::redirectDataToPlugin):
1942         (WebCore::FrameLoader::createJavaAppletWidget):
1943         (WebCore::FrameLoader::partClearedInBegin):
1944         (WebCore::FrameLoader::saveDocumentState):
1945         (WebCore::FrameLoader::restoreDocumentState):
1946         (WebCore::FrameLoader::overrideMediaType):
1947         (WebCore::FrameLoader::mainResourceData):
1948         (WebCore::FrameLoader::canGoBackOrForward):
1949         (WebCore::FrameLoader::originalRequestURL):
1950         (WebCore::FrameLoader::getHistoryLength):
1951         (WebCore::FrameLoader::goBackOrForward):
1952         (WebCore::FrameLoader::historyURL):
1953         (WebCore::FrameLoader::didFinishLoad):
1954         * loader/mac/LoaderFunctionsMac.mm:
1955         (WebCore::ServeSynchronousRequest):
1956         (WebCore::CheckCacheObjectStatus):
1957         * loader/mac/ResourceLoaderMac.mm:
1958         (WebCore::ResourceLoader::cancel):
1959         * loader/mac/SubresourceLoaderMac.mm:
1960         (WebCore::SubresourceLoader::create):
1961         * loader/qt/FrameLoaderQt.cpp: Added.
1962         (WebCore::FrameLoader::submitForm):
1963         (WebCore::FrameLoader::urlSelected):
1964         (WebCore::FrameLoader::setTitle):
1965         (WebCore::FrameLoader::createFrame):
1966         (WebCore::FrameLoader::objectContentType):
1967         (WebCore::FrameLoader::createPlugin):
1968         (WebCore::FrameLoader::createJavaAppletWidget):
1969         (WebCore::FrameLoader::originalRequestURL):
1970         * page/DOMWindow.cpp:
1971         (WebCore::DOMWindow::document):
1972         * page/Frame.cpp:
1973         (WebCore::Frame::~Frame):
1974         (WebCore::Frame::reparseConfiguration):
1975         (WebCore::Frame::shouldDragAutoNode):
1976         (WebCore::Frame::prepareForUserAction):
1977         (WebCore::FramePrivate::FramePrivate):
1978         (WebCore::FramePrivate::~FramePrivate):
1979         * page/Frame.h:
1980         * page/FramePrivate.h:
1981         * page/FrameView.cpp:
1982         (WebCore::FrameView::layout):
1983         (WebCore::FrameView::mediaType):
1984         * page/FrameView.h:
1985         * page/PageState.cpp:
1986         (WebCore::PageState::PageState):
1987         (WebCore::PageState::restoreJavaScriptState):
1988         * platform/mac/CookieJar.mm:
1989         (WebCore::setCookies):
1990         * platform/mac/TextCodecMac.cpp:
1991         * platform/mac/WebFontCache.mm:
1992         (+[WebFontCache fontWithFamily:traits:size:]):
1993         * platform/network/cf/ResourceHandleCFNet.cpp:
1994         (WebCore::ResourceHandle::start):
1995         * platform/network/mac/ResourceHandleMac.mm:
1996         (WebCore::ResourceHandle::start):
1997         * platform/qt/FrameQt.cpp:
1998         * platform/qt/FrameQt.h:
1999         * rendering/RenderApplet.cpp:
2000         (WebCore::RenderApplet::createWidgetIfNecessary):
2001         * rendering/RenderBlock.h:
2002         * rendering/RenderPartObject.cpp:
2003         (WebCore::isURLAllowed):
2004         (WebCore::RenderPartObject::updateWidget):
2005         * xml/DOMParser.cpp:
2006         (WebCore::DOMParser::parseFromString):
2007         * xml/XSLTProcessor.cpp:
2008         (WebCore::XSLTProcessor::createDocumentFromSource):
2009         * xml/xmlhttprequest.cpp:
2010         (WebCore::XMLHttpRequest::getResponseXML):
2011
2012 2006-11-07  Anders Carlsson  <acarlsson@apple.com>
2013
2014         Reviewed by Geoff.
2015
2016         Get rid of some duplicate editing enums. Also rename EAlter to EAlteration.
2017         
2018         * bridge/mac/FrameMac.mm:
2019         (WebCore::FrameMac::registerCommandForUndoOrRedo):
2020         * bridge/mac/WebCoreFrameBridge.h:
2021         * bridge/mac/WebCoreFrameBridge.mm:
2022         (-[WebCoreFrameBridge rangeByAlteringCurrentSelection:SelectionController::direction:SelectionController::granularity:]):
2023         (-[WebCoreFrameBridge alterCurrentSelection:SelectionController::direction:SelectionController::granularity:]):
2024         (-[WebCoreFrameBridge alterCurrentSelection:SelectionController::verticalDistance:]):
2025         (-[WebCoreFrameBridge selectionGranularity]):
2026         (-[WebCoreFrameBridge deleteKeyPressedWithSmartDelete:granularity:]):
2027         (-[WebCoreFrameBridge forwardDeleteKeyPressedWithSmartDelete:granularity:]):
2028         (-[WebCoreFrameBridge setTypingStyle:withUndoAction:]):
2029         (-[WebCoreFrameBridge applyStyle:withUndoAction:]):
2030         (-[WebCoreFrameBridge applyParagraphStyle:withUndoAction:]):
2031         * editing/SelectionController.cpp:
2032         (WebCore::SelectionController::setModifyBias):
2033         (WebCore::SelectionController::modify):
2034         * editing/SelectionController.h:
2035         (WebCore::SelectionController::):
2036         * editing/TextGranularity.h:
2037
2038 2006-11-07  Brady Eidson  <beidson@apple.com>
2039
2040         Reviewed by Maciej
2041
2042         Changed the check for "top level frame" to something much more valid
2043
2044         * page/Frame.cpp:
2045         (WebCore::Frame::endIfNotLoading):
2046
2047 2006-11-07  Beth Dakin  <bdakin@apple.com>
2048
2049         Reviewed by Hyatt (yesterday).
2050
2051         Here is part of my patch from yesterday that is safe to roll back 
2052         in. It will make the BuildBot happy.
2053
2054         * rendering/HitTestResult.cpp:
2055         (WebCore::HitTestResult::spellingToolTip): Null-check 
2056         m_innerNonSharedNode.
2057
2058 2006-11-07  Darin Adler  <darin@apple.com>
2059
2060         * loader/icon/IconLoader.cpp: (WebCore::IconLoader::didReceiveResponse):
2061         Comment grammar fix.
2062
2063 2006-11-07  Darin Adler  <darin@apple.com>
2064
2065         Rolled out change for <rdar://problem/4820814>.
2066
2067         Beth's planning on landing a new change for it soon, but in the mean time
2068         we need layout tests succeeding again.
2069
2070 2006-11-07  Darin Adler  <darin@apple.com>
2071
2072         Reviewed by Brady.
2073
2074         - fix <rdar://problem/4752069> 9A274: World of Warcraft Launcher
2075           crashes on launch in WebCore::ResourceLoader::start
2076
2077         No layout test, because this depends on cached icons, although there's
2078         perhaps a way to write a test for it with some further ingenuity.
2079
2080         * loader/icon/IconLoader.h: Make IconLoader inherit from Noncopyable
2081         to make explicit the fact that it can't be successfully copied.
2082         Remove notifyIconChanged function and put the contents in the caller.
2083         This eliminates the need for IconLoaderMac.mm. Added finishedLoading
2084         and clearLoadingState functions to share code. Removed m_url, since the
2085         resource handle already stores the URL. Renamed m_resourceLoader to
2086         m_handle to reflect the class's name change. Removed the 4096-byte
2087         inline buffer from m_data, since the malloc savings is not sufficient
2088         to offset the additional memory use. Removed m_httpStatusCode because
2089         we can instead cancel the load when we get a status code that reflects
2090         failure. Added m_loadIsInProgress boolean because we need to detect
2091         loads that complete during the ResourceHandle::create function call.
2092
2093         * loader/icon/IconLoader.cpp:
2094         (WebCore::IconLoader::IconLoader): Initialize m_loadIsInProgress.
2095         Don't initialize m_httpStatusCode.
2096         (WebCore::IconLoader::~IconLoader): Updated for name change.
2097         (WebCore::IconLoader::startLoading): Added code to use the
2098         m_loadIsInProgress flag to detect if the load completed while inside
2099         the ResourceHandle::create function. Removed code to set m_url.
2100         (WebCore::IconLoader::stopLoading): Call clearLoadingState to share
2101         more code.
2102         (WebCore::IconLoader::didReceiveResponse): Kill the ResourceHandle
2103         and finish loading if the HTTP status code indicates failure.
2104         (WebCore::IconLoader::didReceiveData): Removed assertion that checks
2105         the ResourceHandle, since we can't do that any more.
2106         (WebCore::IconLoader::didFinishLoading): Changed to call finishLoading
2107         so we can share code with the new didReceiveResponse code path.
2108         (WebCore::IconLoader::finishLoading): Moved code here from the
2109         didFinishLoading callback. Pass a URL when calling
2110         commitIconURLToIconDatabase. Call notifyIconChanged directly here
2111         instead of using a separate function. Call clearLoadingState to
2112         share more code with stopLoading.
2113         (WebCore::IconLoader::clearLoadingState): Added.
2114
2115         * loader/mac/IconLoaderMac.mm: Removed.
2116         * WebCore.xcodeproj/project.pbxproj: Removed IconLoaderMac.mm.
2117
2118 2006-11-06  David Harrison  <harrison@apple.com>
2119
2120         Reviewed by Darin.
2121
2122         <rdar://problem/4714993> REGRESSION: After replacing a misspelled word in a sentence, the selected word wraps down to next line (10428)
2123
2124         * editing/pasteboard/3976872-expected.txt:
2125         * editing/pasteboard/4076267-2-expected.txt:
2126         * editing/pasteboard/4076267-3-expected.txt:
2127         * editing/pasteboard/4076267-expected.txt:
2128         * editing/pasteboard/8145-1-expected.txt:
2129         * editing/pasteboard/paste-empty-startcontainer-expected.txt: Removed.
2130         * editing/pasteboard/paste-match-style-001-expected.txt:
2131         * editing/pasteboard/paste-match-style-002-expected.txt:
2132         * editing/pasteboard/paste-text-019-expected.txt:
2133         * editing/pasteboard/pasting-tabs-expected.txt:
2134         Updated because pasting text with no newlines does not use intermediate div.
2135         
2136         * editing/markup.cpp:
2137         (WebCore::fillContainerFromString):
2138         First parameter is now a Container so a fragment can be passed.
2139         
2140         (WebCore::createFragmentFromText):
2141         A string with no newlines gets added inline, rather than being put into a paragraph.
2142
2143 2006-11-06  Beth Dakin  <bdakin@apple.com>
2144
2145         Reviewed by Hyatt.
2146
2147         Fix for <rdar://problem/4820814> A crash occurs at 
2148         WebCore::HitTestResult::spellingToolTip() when mousing down on 
2149         iframe at www.macsurfer.com
2150
2151         The bug here is that the source of the iframe is only a comment, 
2152         and we were not properly constructing the frame because it was 
2153         sort-of empty but not.
2154
2155         * html/HTMLDocument.cpp:
2156         (WebCore::HTMLDocument::childAllowed): newChild is NOT allowed if 
2157         it is a comment node.
2158         * html/HTMLParser.cpp:
2159         (WebCore::HTMLParser::handleError): if n is a comment node and 
2160         there is no head, we create a head, insert in the document, and add 
2161         the comment node as a child. This is what Firefox does too. 
2162         * page/FrameView.cpp:
2163         (WebCore::FrameView::handleMousePressEvent): Safe-guard for the 
2164         fix. It is possible to get a mouse event without a target node, so 
2165         we null check it. (Of course, in the case of this bug, it should 
2166         not have been null, but it is a good thing to check for anyway.
2167         * rendering/HitTestResult.cpp:
2168         (WebCore::HitTestResult::spellingToolTip): Null-check 
2169         m_innerNonSharedNode.
2170
2171 2006-11-06  Justin Garcia  <justin.garcia@apple.com>
2172
2173         Reviewed by harrison
2174         
2175         <rdar://problem/4641880>
2176         Setting bullets to existing text grabs subsequent paragraph
2177         
2178         When a selection ends at the start of a paragraph, we rarely paint 
2179         the selection gap before that paragraph, because there often is no gap.  
2180         In a case like this, it's not obvious to the user that the selection 
2181         ends "inside" that paragraph, so it would be confusing if 
2182         InsertUn{Ordered}List and Indent/Outdent operated on that paragraph.
2183         
2184         * editing/FormatBlockCommand.cpp:
2185         (WebCore::FormatBlockCommand::doApply): Moved the check for editability of
2186         the selection to a more appropriate place.  Change the endingSelection
2187         if it ends at the start of a paragraph.
2188         * editing/IndentOutdentCommand.cpp:
2189         (WebCore::IndentOutdentCommand::doApply): Ditto.
2190         * editing/InsertListCommand.cpp:
2191         (WebCore::InsertListCommand::doApply): Ditto.
2192
2193 2006-11-06  Brady Eidson  <beidson@apple.com>
2194
2195         Reviewed by Sarge
2196
2197         <rdar://problem/4822911> - ASSERTION was a little overzealous.  
2198         Toned it down a bit.
2199
2200         * xml/xmlhttprequest.cpp:
2201         (WebCore::XMLHttpRequest::didFinishLoading):  Toned down assertion
2202
2203 2006-11-06  Krzysztof Kowalczyk  <kkowalczyk@gmail.com>
2204
2205         Reviewed by Maciej.
2206
2207         Linux\Gdk build fixes.
2208
2209         * loader/icon/IconDatabase.cpp:
2210         * loader/icon/SQLStatement.h:
2211         * platform/gdk/ChromeClientGdk.h: Added.
2212         (WebCore::ChromeClientGdk::~ChromeClientGdk):
2213         * platform/gdk/CursorGdk.cpp:
2214         (WebCore::pointerCursor):
2215         * platform/gdk/FrameGdk.cpp:
2216         (WebCore::doScroll):
2217         (WebCore::FrameGdk::FrameGdk):
2218         (WebCore::FrameGdk::submitForm):
2219         (WebCore::FrameGdk::urlSelected):
2220         (WebCore::FrameGdk::openURL):
2221         (WebCore::FrameGdk::handleGdkEvent):
2222         * platform/gdk/FrameGdk.h:
2223         (WebCore::FrameGdk::client):
2224         * platform/gdk/RenderPopupMenuGdk.cpp:
2225         (WebCore::PopupMenu::updateFromElement):
2226         * platform/gdk/ScreenGdk.cpp:
2227         * platform/gdk/TemporaryLinkStubs.cpp:
2228         (Slider::focusPolicy):
2229         (WebCore::ServeSynchronousRequest):
2230         (FrameGdk::goBackOrForward):
2231         (FrameGdk::getHistoryLength):
2232         (FrameGdk::historyURL):
2233         (ChromeClientGdk::canRunModal):
2234         (ChromeClientGdk::runModal):
2235         (WebCore::systemBeep):
2236         (WebCore::CachedResource::setPlatformResponse):
2237         (Path::transform):
2238         (ResourceLoader::loadsBlocked):
2239         (IconLoader::notifyIconChanged):
2240         * platform/network/gdk/ResourceHandleManager.cpp:
2241         (WebCore::writeCallback):
2242         (WebCore::ResourceHandleManager::downloadTimerCallback):
2243         (WebCore::ResourceHandleManager::remove):
2244         (WebCore::ResourceHandleManager::add):
2245
2246 2006-11-06  Geoffrey Garen  <ggaren@apple.com>
2247
2248         build fix.
2249         
2250         * WebCore.xcodeproj/project.pbxproj:
2251
2252 2006-11-06  Geoffrey Garen  <ggaren@apple.com>
2253
2254         Reviewed by Maciej, Anders, Darin.
2255
2256         Removed the Page bridge. Beefed up Chrome. Added Screen and ScreenClient.
2257         Fixed a minor where WebCore would always assume it was displayed on the 
2258         monitor containing the menubar. window.open and window.showModalDialog 
2259         are now cross-platform. 
2260         
2261         Layout tests, manual-tests/show-modal-dialog, and manual-tests/
2262         window-open-features-parsing all pass. I verified the new screen functionality
2263         by running in DRT, and checking whether WebCore knew it was off-screen.
2264         
2265         Some refactoring remains, as all were not pleased by this design. I see
2266         in my future another patch.
2267
2268         * bindings/js/kjs_window.cpp: Screen is now a stand-alone object with a
2269         client, to encapsulate asking the platform questions about the screen occupied by
2270         the page. (Previously, we always assumed we were on screen 0, which was a bug.)
2271         * bridge/mac/WebCoreFrameBridge.mm:
2272         (createMouseEventFromDraggingInfo): Reversed argument order, to match other
2273         functions.
2274         (-[WebCoreFrameBridge dragSourceMovedTo:]): ditto
2275         (-[WebCoreFrameBridge dragSourceEndedAt:operation:]): ditto
2276         * bridge/mac/WebCoreFrameNamespaces.h: Removed. Dead Code.
2277         * bridge/mac/WebCoreFrameNamespaces.mm: Removed. Dead Code.
2278         * bridge/mac/WebCorePageBridge.h: Removed. Dead Code.
2279         * bridge/mac/WebCorePageBridge.mm: Removed. Dead Code.
2280         * manual-tests/window-open-features-parsing.html: Updated for accuracy.
2281         (In this case, neither size nor position is specified, so you should
2282         get the default window size and position.)
2283         * page/Screen.cpp: Added. Includes screen-related helper functions used
2284         in WebCore and WebKit.
2285         * platform/PlatformMouseEvent.h: Exported common code so it doesn't have
2286         to be duplicated. Renamed "position" to "point" since both were used,
2287         and "point" seemed clearer.
2288         * platform/Screen.h: Removed. Dead Code.
2289         * platform/mac/LoggingMac.mm: Added. Moved code here from WebCorePageBridge
2290         initialization.
2291
2292 2006-11-06  Graham Dennis  <graham.dennis@gmail.com>
2293
2294         Reviewed by Tim Hatcher.
2295
2296         Part of patch for http://bugs.webkit.org/show_bug.cgi?id=11323
2297         Link dragging behaviour does not obey WebKitEditableLinkBehavior WebPref
2298         
2299         No layout tests added as this must be tested manually by the test
2300         WebCore/manual-tests/contenteditable-link.html
2301
2302         * WebCore.exp: Exported HitTestResult::isLiveLink().
2303         * html/HTMLAnchorElement.cpp:
2304         (WebCore::HTMLAnchorElement::HTMLAnchorElement):
2305         (WebCore::HTMLAnchorElement::defaultEventHandler):
2306         (WebCore::HTMLAnchorElement::isLiveLink):
2307         * html/HTMLAnchorElement.h: added m_wasShiftKeyDownOnMouseDown variable
2308         to track shift key status.
2309         * manual-tests/contenteditable-link.html: Added description about link
2310         dragging behaviour.
2311         * rendering/HitTestResult.cpp:
2312         (WebCore::HitTestResult::isLiveLink): Added.
2313         * rendering/HitTestResult.h:
2314
2315 2006-11-06  Brady Eidson  <beidson@apple.com>
2316
2317         Reviewed by Oliver
2318
2319         Fixes <rdar://problem/4812674> and http://bugs.webkit.org/show_bug.cgi?id=11530
2320         For now, we have to not load favicons when we have no Document - linking directly 
2321         to PDFs being the common case
2322
2323         * loader/icon/IconLoader.cpp:
2324         (WebCore::IconLoader::startLoading): Check for the document and return if none
2325
2326 2006-11-06  Brady Eidson  <beidson@apple.com>
2327
2328         Reviewed by Dave Harrison
2329
2330         <rdar://problem/4801066>
2331         Added a critical null frameLoader() check
2332
2333         * loader/mac/MainResourceLoaderMac.mm:
2334         (WebCore::MainResourceLoader::loadNow):
2335
2336 2006-11-06  David Harrison  <harrison@apple.com>
2337
2338         Reviewed by Darin.
2339
2340         <rdar://problem/4813973> Pressing delete key to remove empty quoted line leaves cursor mis-positioned
2341
2342         Test:
2343         * editing/deleting/delete-br-012.html
2344         
2345         * editing/DeleteSelectionCommand.cpp:
2346         (WebCore::DeleteSelectionCommand::handleSpecialCaseBRDelete):
2347         Update m_endingPosition when preventing merge.
2348         Also removed setting of m_mergeBlocksAfterDelete when this function returns true, because is is not checked in this case.
2349
2350 2006-11-06  Mark Rowe  <bdash@webkit.org>
2351
2352         Reviewed by Maciej.
2353
2354         http://bugs.webkit.org/show_bug.cgi?id=11526
2355         Bug 11526: REGRESSION(r17610): Layout test failure in svg/custom/create-metadata-element.svg
2356
2357         Update DOMNode::toString to always use className rather than preferring nodeName.
2358
2359         * bindings/js/kjs_dom.cpp:
2360         (KJS::DOMNode::toString): Match the format returned by valueOf.
2361
2362 2006-11-06  Oliver Hunt  <oliver@apple.com>
2363
2364         Reviewed by Maciej.
2365
2366         Fix RTL text in SVG to have correct positioning
2367
2368         * rendering/SVGRootInlineBox.cpp:
2369         (WebCore::SVGRootInlineBox::placeBoxesHorizontally):
2370
2371 2006-11-06  Alexey Proskuryakov  <ap@webkit.org>
2372
2373         Reviewed by Maciej.
2374
2375         http://bugs.webkit.org/show_bug.cgi?id=11517
2376         REGRESSION: Flash clicks/interactivity not working properly
2377
2378         * bridge/mac/FrameMac.mm:
2379         (WebCore::FrameMac::handleMouseMoveEvent):
2380         (WebCore::FrameMac::handleMouseReleaseEvent):
2381         Restore parts of event dispatching that were removed when fixing
2382         bug 7323 - just bypass those for subframes.
2383
2384 2006-11-05  Darin Adler  <darin@apple.com>
2385
2386         - quick attempt to fix the no-SVG build
2387
2388         * platform/graphics/svg/SVGResource.cpp:
2389         * platform/graphics/svg/SVGResource.h:
2390         * platform/graphics/svg/SVGResourceClipper.cpp:
2391         * platform/graphics/svg/SVGResourceClipper.h:
2392         * platform/graphics/svg/SVGResourceImage.h:
2393         * platform/graphics/svg/SVGResourceMarker.cpp:
2394         * platform/graphics/svg/SVGResourceMarker.h:
2395         * platform/graphics/svg/SVGResourceMasker.cpp:
2396         * platform/graphics/svg/SVGResourceMasker.h:
2397         * platform/graphics/svg/cg/SVGResourceMaskerCg.h:
2398         * platform/graphics/svg/qt/SVGResourceClipperQt.cpp:
2399         * platform/graphics/svg/qt/SVGResourceImageQt.cpp:
2400         * platform/graphics/svg/qt/SVGResourceMaskerQt.cpp:
2401         Added #ifdef SVG_SUPPORT to these files.
2402
2403 2006-11-05  MorganL  <morganl.webkit@yahoo.com>
2404
2405         Reviewed & landed by Maciej.
2406
2407         Fixes http://bugs.webkit.org/show_bug.cgi?id=11265
2408
2409         * platform/win/ResourceLoaderWin.cpp:
2410         (WebCore::transferJobStatusCallback):
2411         (WebCore::ResourceLoader::start):
2412
2413 2006-11-04  Maciej Stachowiak  <mjs@apple.com>
2414
2415         Reviewed by Oliver.
2416
2417         - moved FormData and FormDataStream to platform/network directory
2418
2419         * WebCore.xcodeproj/project.pbxproj:
2420         * bridge/mac/WebCoreFrameBridge.mm:
2421         * loader/FormData.cpp: Removed.
2422         * loader/FormData.h: Removed.
2423         * loader/mac/FormDataStream.h: Removed.
2424         * loader/mac/FormDataStream.m: Removed.
2425         * loader/mac/FrameLoaderMac.mm:
2426         * loader/mac/SubresourceLoaderMac.mm:
2427         * platform/network/mac/FormDataStreamMac.h: Added.
2428         * platform/network/mac/FormDataStreamMac.mm: Added.
2429         * platform/network/mac/ResourceRequestMac.mm:
2430
2431 2006-11-05  Steve Falkenburg  <sfalken@apple.com>
2432
2433         Fix build breaks
2434
2435         * loader/DocumentLoader.h:
2436         * platform/win/ScreenWin.cpp:
2437
2438 2006-11-05  Darin Adler  <darin@apple.com>
2439
2440         Reviewed by Geoff.
2441
2442         - more preparation for splitting up Frame into sub-pieces
2443         - removed unnecessary includes from Frame.h
2444
2445         * page/Frame.h: Removed unneeded includes and forward declarations.
2446         Added additional forward declarations. Removed the constant
2447         NoXPosForVerticalArrowNavigation, now moved inside SelectionController.
2448         Created sections of functions to be moved into Chrome, Editor,
2449         EventHandler, FrameLoader, SelectionController, and the Platform
2450         directory, as well as marking one function for deletion.
2451
2452         * page/FramePrivate.h: Removed the definition of the constructor and
2453         destructor and removed unnecessary includes.
2454
2455         * page/FrameView.h: Removed unneeded forward declarations and friend
2456         declarations. Created a section of functions and data to be moved into
2457         EventHandler.
2458
2459         * bridge/mac/FrameMac.h: Removed unneeded forward declarations.
2460         Created sections of functions and data to be moved into Chrome,
2461         Editor, EventHandler, FrameLoader, and the Platform directory.
2462
2463         * bridge/mac/WebCoreFrameBridge.h: Removed obsolete comment.
2464         Removed unused methods areScrollbarsVisible,
2465         nextValidKeyViewOutsideWebFrameViews, and fileWrapperForURL:.
2466
2467         * page/Frame.cpp:
2468         (WebCore::Frame::begin): Added an overload, so Frame.h doesn't have
2469         to include KURL.h just for the KURL default constructor.
2470         (WebCore::FramePrivate::FramePrivate): Moved here from FramePrivate.h.
2471         (WebCore::FramePrivate::~FramePrivate): Ditto.
2472
2473         * page/FrameView.cpp: Removed unused scrollbarMoved and scrollingSelf
2474         booleans, scrollbarMoved and cleared funcitons.
2475         (WebCore::FrameView::clear): Moved the code from the cleared
2476         function in here.
2477         (WebCore::FrameView::scrollTo): Removed code to set scrollingSelf.
2478
2479         * bridge/mac/FrameMac.mm: (WebCore::FrameMac::FrameMac): Updated
2480         for changes to header.
2481
2482         * editing/SelectionController.cpp:
2483         (WebCore::SelectionController::setSelection):
2484         (WebCore::SelectionController::xPosForVerticalArrowNavigation):
2485         Moved NoXPosForVerticalArrowNavigation into this file.
2486
2487         * bindings/js/kjs_events.cpp:
2488         * bindings/js/kjs_html.cpp:
2489         * bindings/js/kjs_window.cpp:
2490         * bridge/mac/WebCoreAXObject.mm:
2491         * bridge/mac/WebCoreFrameBridge.mm:
2492         * css/cssstyleselector.cpp:
2493         * dom/Document.cpp:
2494         * dom/Element.cpp:
2495         * dom/EventTargetNode.cpp:
2496         * dom/MouseRelatedEvent.cpp:
2497         * dom/XMLTokenizer.cpp:
2498         * html/HTMLBaseElement.cpp:
2499         * html/HTMLDocument.cpp:
2500         * html/HTMLEmbedElement.cpp:
2501         * html/HTMLFrameElementBase.cpp:
2502         * html/HTMLGenericFormElement.cpp:
2503         * html/HTMLObjectElement.cpp:
2504         * html/HTMLTokenizer.cpp:
2505         * loader/mac/FrameLoaderMac.mm:
2506         * page/PageState.cpp:
2507         * rendering/RenderApplet.cpp:
2508         * rendering/RenderBlock.cpp:
2509         * rendering/RenderLayer.cpp:
2510         * rendering/RenderObject.cpp:
2511         * rendering/RenderPartObject.cpp:
2512         * rendering/RenderTreeAsText.cpp:
2513         * xml/XSLTProcessor.cpp:
2514         Added includes as needed to keep compiling, since there are fewer
2515         includes in Frame.h.
2516
2517 2006-11-05  Alexey Proskuryakov  <ap@nypop.com>
2518
2519         Reviewed by Dave Harrison.
2520
2521         http://bugs.webkit.org/show_bug.cgi?id=11402
2522         REGRESSION: onChange does not work anymore for 1st item in popup
2523
2524         * html/HTMLSelectElement.cpp:
2525         (WebCore::HTMLSelectElement::HTMLSelectElement):
2526         (WebCore::HTMLSelectElement::reset):
2527         Set m_lastOnChangeIndex to -1.
2528
2529 2006-11-04  Darin Adler  <darin@apple.com>
2530
2531         Reviewed by Anders.
2532
2533         - fix http://bugs.webkit.org/show_bug.cgi?id=11453
2534           REGRESSION: Status bar always shows cancelled opening the page
2535
2536         * platform/network/mac/ResourceHandleMac.mm:
2537         (WebCore::ResourceHandle::~ResourceHandle): Removed call to cancel.
2538         Since the subresource owns the resource handle, there's no need to cancel.
2539         This arrangement is only temporary, anyway, since Maciej will soon change
2540         things so that the subresource loader uses the resource handle and the
2541         resource handle doesn't know anything about the subresource loader.
2542
2543 2006-11-04  Darin Adler  <darin@apple.com>
2544
2545         Reviewed by Maciej.
2546
2547         - converted more of the loader machinery to work with cross-platform
2548           data structures instead of Macintosh-specific ones
2549
2550           converted most uses of NSURL to KURL and NSEvent to DOM Event in
2551           loader classes
2552
2553           moved download function out of FrameLoader.h to avoid reference to
2554           NSURLConnection
2555
2556           added DOM Event parameters to various functions so that the handlers
2557           can use the DOM Event instead of the global "current NSEvent";
2558           includes Frame::submitForm, HTMLFormElement::prepareSubmit,
2559           HTMLFormElement::submit, FrameLoader::load
2560
2561           moved the setMainFrame call that hands ownership to the Page
2562           into one of the Frame constructors, and removed it from all
2563           the clients
2564
2565           removed const from Event parameter to the urlSelected function
2566           (we rarely use const with DOM elements)
2567
2568           removed some redundant includes and declarations from various
2569           header files
2570
2571           removed NSURL parameter from userAgent function -- if we need it we
2572           can add it back, but converting from NSURL to KURL and back is
2573           inefficient enough that it's best to have it out for now (since it's
2574           been unused for years) -- if we add it back, we can choose an
2575           appropriate parameter type that's always inexpensive to pass
2576
2577           did some basic cleanup in the IconLoader class, including removing
2578           an unnecessary loop that added icon data a byte at a time
2579
2580           renamed safeLoad to load, since it's no different from the other
2581           FrameLoader load functions, safety-wise
2582
2583           fixed some code that was trying to distinguish null frame name from
2584           empty string frame name -- both should be handled the same, but callers
2585           were doing it by checking for empty and turning it into null (in a way
2586           that was causing extra round trips between NSString and WebCore::String)
2587
2588           corrected all uses of "get" and "post" to be uppercase "GET" and "POST"
2589           and got rid of case-insensitive compares of methods
2590
2591         * WebCore.exp:
2592         * WebCore.xcodeproj/project.pbxproj:
2593         * bindings/js/kjs_navigator.cpp:
2594         (KJS::Navigator::getValueProperty):
2595         * bridge/mac/FrameMac.h:
2596         * bridge/mac/FrameMac.mm:
2597         (WebCore::FrameMac::submitForm):
2598         (WebCore::FrameMac::urlSelected):
2599         (WebCore::FrameMac::userAgent):
2600         * bridge/mac/FrameViewMac.mm:
2601         * bridge/mac/WebCoreAXObject.mm:
2602         (-[WebCoreAXObject rendererForView:]):
2603         * bridge/mac/WebCorePageBridge.h:
2604         * bridge/mac/WebCorePageBridge.mm:
2605         * bridge/mac/WebCoreSettings.mm:
2606         * bridge/win/FrameWin.cpp:
2607         (WebCore::FrameWin::urlSelected):
2608         (WebCore::FrameWin::submitForm):
2609         * bridge/win/FrameWin.h:
2610         * dom/MouseRelatedEvent.cpp:
2611         * dom/MouseRelatedEvent.h:
2612         * dom/UIEvent.cpp:
2613         (WebCore::UIEvent::~UIEvent):
2614         * dom/UIEvent.h:
2615         * dom/UIEventWithKeyState.h:
2616         * dom/XMLTokenizer.cpp:
2617         (WebCore::openFunc):
2618         * html/HTMLAnchorElement.cpp:
2619         (WebCore::HTMLAnchorElement::defaultEventHandler):
2620         * html/HTMLButtonElement.cpp:
2621         (WebCore::HTMLButtonElement::defaultEventHandler):
2622         * html/HTMLFormElement.cpp:
2623         (WebCore::HTMLFormElement::submitClick):
2624         (WebCore::HTMLFormElement::prepareSubmit):
2625         (WebCore::HTMLFormElement::submit):
2626         * html/HTMLFormElement.h:
2627         * html/HTMLInputElement.cpp:
2628         (WebCore::HTMLInputElement::defaultEventHandler):
2629         * html/HTMLSelectElement.cpp:
2630         (WebCore::HTMLSelectElement::menuListDefaultEventHandler):
2631         * loader/DocumentLoader.h:
2632         * loader/FrameLoader.h:
2633         * loader/FrameLoaderClient.h:
2634         * loader/NavigationAction.h:
2635         (WebCore::NavigationAction::event):
2636         * loader/icon/IconLoader.cpp:
2637         (WebCore::IconLoader::create):
2638         (WebCore::IconLoader::startLoading):
2639         (WebCore::IconLoader::didReceiveData):
2640         (WebCore::IconLoader::didFinishLoading):
2641         * loader/icon/IconLoader.h:
2642         * loader/loader.cpp:
2643         * loader/mac/DocumentLoaderMac.mm:
2644         (WebCore::DocumentLoader::URL):
2645         (WebCore::DocumentLoader::unreachableURL):
2646         (WebCore::DocumentLoader::replaceRequestURLForAnchorScroll):
2647         (WebCore::DocumentLoader::URLForHistory):
2648         * loader/mac/FrameLoaderMac.mm:
2649         (WebCore::FrameLoader::load):
2650         (WebCore::FrameLoader::willSendRequest):
2651         (WebCore::FrameLoader::clientRedirected):
2652         (WebCore::FrameLoader::shouldReload):
2653         (WebCore::FrameLoader::notifyIconChanged):
2654         (WebCore::FrameLoader::URL):
2655         (WebCore::FrameLoader::reloadAllowingStaleData):
2656         (WebCore::FrameLoader::reload):
2657         (WebCore::FrameLoader::didChangeTitle):
2658         (WebCore::FrameLoader::continueLoadAfterNavigationPolicy):
2659         (WebCore::FrameLoader::checkLoadCompleteForThisFrame):
2660         (WebCore::FrameLoader::post):
2661         (WebCore::FrameLoader::addExtraFieldsToRequest):
2662         (WebCore::FrameLoader::loadResourceSynchronously):
2663         * loader/mac/IconLoaderMac.mm:
2664         (WebCore::IconLoader::notifyIconChanged):
2665         * loader/mac/LoaderFunctionsMac.mm:
2666         * loader/mac/MainResourceLoaderMac.mm:
2667         (WebCore::shouldLoadAsEmptyDocument):
2668         (WebCore::MainResourceLoader::continueAfterContentPolicy):
2669         * loader/mac/NavigationActionMac.mm:
2670         (WebCore::navigationType):
2671         (WebCore::NavigationAction::NavigationAction):
2672         * loader/mac/ResourceLoaderMac.mm:
2673         * loader/mac/SubresourceLoaderMac.mm:
2674         * page/Frame.cpp:
2675         (WebCore::Frame::Frame):
2676         (WebCore::Frame::urlSelected):
2677         (WebCore::Frame::submitFormAgain):
2678         (WebCore::Frame::submitForm):
2679         (WebCore::Frame::endIfNotLoading):
2680         (WebCore::Frame::hitTestResultAtPoint):
2681         * page/Frame.h:
2682         * page/FramePrivate.h:
2683         * platform/gdk/FrameGdk.cpp:
2684         (WebCore::FrameGdk::FrameGdk):
2685         (WebCore::FrameGdk::submitForm):
2686         (WebCore::FrameGdk::urlSelected):
2687         * platform/gdk/FrameGdk.h:
2688         * platform/mac/TextFieldMac.mm:
2689         * platform/network/HTTPHeaderMap.h:
2690         * platform/network/ResourceHandle.h:
2691         * platform/network/ResourceHandleClient.h:
2692         * platform/network/ResourceHandleInternal.h:
2693         * platform/network/mac/ResourceHandleMac.mm:
2694         * platform/network/mac/ResourceResponseMac.h:
2695         * platform/network/mac/ResourceResponseMac.mm:
2696         (-[NSURLResponse WebCore]):
2697         * platform/network/win/ResourceHandleWin.cpp:
2698         * platform/qt/FrameQt.cpp:
2699         (WebCore::FrameQt::submitForm):
2700         (WebCore::FrameQt::urlSelected):
2701         * platform/qt/FrameQt.h:
2702         * rendering/RenderLineEdit.cpp:
2703         (WebCore::RenderLineEdit::returnPressed):
2704         * xml/XSLTProcessor.cpp:
2705         (WebCore::docLoaderFunc):
2706         * xml/xmlhttprequest.cpp:
2707
2708 2006-11-03  Maciej Stachowiak  <mjs@apple.com>
2709
2710         Reviewed by Adele.
2711
2712         - replaced receivedRedirect with new willSendRequest delegate
2713         - removed most mac-specific loader functions
2714         - use ResourceResponse more in loader code
2715
2716         * WebCore.xcodeproj/project.pbxproj: Add new files.
2717         * bridge/mac/WebCoreFrameBridge.mm:
2718         (-[WebCoreFrameBridge getData:andResponse:forURL:]): Adapted
2719         for CachedResource method renames.
2720         (-[WebCoreFrameBridge getAllResourceDatas:andResponses:]):
2721         Ditto.
2722         * loader/CachedCSSStyleSheet.cpp:
2723         (WebCore::CachedCSSStyleSheet::checkNotify): simplified
2724         based on ResourceResponse
2725         * loader/CachedImage.cpp:
2726         (WebCore::CachedImage::createImage): adapt for ResourceResponse
2727         * loader/CachedResource.cpp:
2728         (WebCore::CachedResource::CachedResource): store a ResourceResponse;
2729         platform response is now called platformResponse and expiration date
2730         is removed.
2731         (WebCore::CachedResource::~CachedResource): ditto
2732         (WebCore::CachedResource::isExpired): ditto
2733         * loader/CachedResource.h:
2734         (WebCore::CachedResource::platformResponse): ditto
2735         (WebCore::CachedResource::setResponse): ditto
2736         (WebCore::CachedResource::canDelete): ditto
2737         * loader/LoaderFunctions.h:
2738         * loader/loader.cpp:
2739         (WebCore::Loader::receivedResponse): Adjusted for renames.
2740         (WebCore::Loader::didReceiveResponse): Store whole ResourceResponse
2741         in the CachedResource.
2742         * loader/loader.h:
2743         * loader/mac/FormDataStream.h:
2744         * loader/mac/FormDataStream.m:
2745         (WebCore::getStreamFormDatas): Rearranged things so it's
2746         possible to get a FormData back out of a form data stream.
2747         (WebCore::formCreate): ditto
2748         (WebCore::formFinalize): ditto
2749         (WebCore::httpBodyFromStream): ditto
2750         * loader/mac/ImageDocumentMac.mm:
2751         (WebCore::finishImageLoad): s/response/platformResponse/
2752         * loader/mac/LoaderFunctionsMac.mm:
2753         (WebCore::CheckCacheObjectStatus): ditto
2754         (WebCore::CachedResource::setPlatformResponse): ditto
2755         * loader/mac/SubresourceLoaderMac.mm:
2756         (WebCore::SubresourceLoader::willSendRequest): send redirect
2757         to client appropriately
2758         * platform/network/ResourceHandle.h:
2759         * platform/network/ResourceHandleClient.h:
2760         (WebCore::ResourceHandleClient::willSendRequest): new entry
2761         point for SubresourceLoader, dispatch to client.
2762         * platform/network/ResourceRequest.h:
2763         (WebCore::ResourceRequest::allowHTTPCookies): implemented
2764         (WebCore::ResourceRequest::setAllowHTTPCookies): ditto
2765         * platform/network/ResourceResponse.h:
2766         (WebCore::ResourceResponse::ResourceResponse): initialize expiration
2767         date(!)
2768         * platform/network/cf/FormDataStreamCFNet.cpp: Added.
2769         (WebCore::getStreamFormDatas): Added this, ported from NSURL version.
2770         (WebCore::openNextStream): ditto
2771         (WebCore::formCreate): ditto
2772         (WebCore::formFinalize): ditto
2773         (WebCore::formCanRead): ditto
2774         (WebCore::formEventCallback): ditto
2775         (WebCore::setHTTPBody): ditto
2776         (WebCore::httpBodyFromStream): ditto
2777         * platform/network/cf/FormDataStreamCFNet.h: Added.
2778         * platform/network/cf/ResourceHandleCFNet.cpp:
2779         (WebCore::willSendRequest): implemented
2780         (WebCore::ResourceHandle::start): use new ResourceRequest stuff
2781         * platform/network/cf/ResourceResponseCFNet.cpp:
2782         (WebCore::getResourceResponse): do nothing for a null response
2783         * platform/network/mac/ResourceHandleMac.mm:
2784         (WebCore::ResourceHandle::willSendRequest): Implemented; dispatch to client.
2785         * platform/network/mac/ResourceRequestMac.h: Added.
2786         * platform/network/mac/ResourceRequestMac.mm: Added.
2787         (WebCore::getResourceRequest): Added way to convert an NSURLRequest
2788         to a ResourceRequest.
2789         (WebCore::nsURLRequest): Opposite of the above.
2790         * platform/network/cf/ResourceRequestCFNet.h: Added.
2791         * platform/network/cf/ResourceRequestCFNet.cpp: Added.
2792         (WebCore::getResourceRequest): Added way to convert an CFURLRequest
2793         to a ResourceRequest.
2794         (WebCore::cfURLRequest): Opposite of the above.
2795         * xml/xmlhttprequest.cpp:
2796         (WebCore::XMLHttpRequest::willSendRequest): Renamed from receivedRedirect,
2797         adjusted.
2798         * xml/xmlhttprequest.h:
2799
2800 2006-11-04  Darin Adler  <darin@apple.com>
2801
2802         Change suggested by Mitz.
2803
2804         - fix http://bugs.webkit.org/show_bug.cgi?id=11514
2805           REGRESSION (r17438): Repro crash when opening a web archive
2806
2807         * bridge/mac/WebCorePageState.mm:
2808         (-[WebCorePageState dealloc]): Add null check.
2809         (-[WebCorePageState finalize]): Ditto.
2810
2811 2006-11-04  Bertrand Guiheneuf <guiheneuf@gmail.com>
2812
2813         Reviewed by Maciej, tweaked and landed by Alexey (using a patch by Don Gibson).
2814
2815         http://bugs.webkit.org/show_bug.cgi?id=11433
2816         Fixes to get WebKit to run on Windows; implemented AffineTransformCairo.
2817
2818         * WebCore.vcproj/WebCore/WebCore.vcproj:
2819         Added platform/graphics platform/network and platform/network/win to headers search paths
2820         Created platform/graphics and platform/network filters in hierarchy
2821         Moved GraphicsContext and GraphicsTypes to their respective filters
2822         Added EditorClient.h
2823         Added FrameLoader* files in loader/
2824         Added HitTest* files in rendering/
2825         Added Editor.* files in editing/
2826         Added DeleteButton.* and DeleteButtonController.* in editing/
2827
2828         * bridge/win/ChromeClientWin.h: Added.
2829         (WebCore::ChromeClientWin::~ChromeClientWin):
2830         * bridge/win/EditorClientWin.h: Added.
2831         (WebCore::EditorClientWin::~EditorClientWin):
2832
2833         * bridge/win/FrameWin.cpp:
2834         (WebCore::FrameWin::FrameWin):
2835         (WebCore::FrameWin::urlSelected):
2836         (WebCore::FrameWin::submitForm):
2837         (WebCore::FrameWin::createNewWindow):
2838         * bridge/win/FrameWin.h:
2839         Added EditorClient parameter to constructor
2840         Replace usage of FrameLoadRequest::m_request with FrameLoadRequest::resourceRequest()
2841         Removed openURL() and openURLRequest from class definition
2842
2843         * bridge/win/PageWin.cpp:
2844         * platform/AffineTransform.h:
2845         * platform/cairo/AffineTransformCairo.cpp: Added.
2846         (WebCore::AffineTransform::AffineTransform):
2847         (WebCore::AffineTransform::setMatrix):
2848         (WebCore::AffineTransform::map):
2849         (WebCore::AffineTransform::mapRect):
2850         (WebCore::AffineTransform::isIdentity):
2851         (WebCore::AffineTransform::m11):
2852         (WebCore::AffineTransform::m12):
2853         (WebCore::AffineTransform::m21):
2854         (WebCore::AffineTransform::m22):
2855         (WebCore::AffineTransform::dx):
2856         (WebCore::AffineTransform::dy):
2857         (WebCore::AffineTransform::reset):
2858         (WebCore::AffineTransform::scale):
2859         (WebCore::AffineTransform::rotate):
2860         (WebCore::AffineTransform::translate):
2861         (WebCore::AffineTransform::shear):
2862         (WebCore::AffineTransform::det):
2863         (WebCore::AffineTransform::invert):
2864         (WebCore::AffineTransform::operator cairo_matrix_t):
2865         (WebCore::AffineTransform::operator== ):
2866         (WebCore::AffineTransform::operator*= ):
2867         (WebCore::AffineTransform::operator* ):
2868         * platform/cairo/GraphicsContextCairo.cpp:
2869         (WebCore::GraphicsContext::drawLineForMisspellingOrBadGrammar):
2870         * platform/network/win/ResourceHandleWin.cpp:
2871         (WebCore::ResourceHandle::onHandleCreated):
2872         (WebCore::ResourceHandle::start):
2873         (WebCore::ResourceHandle::fileLoadTimer):
2874         (WebCore::ResourceHandle::cancel):
2875         * platform/win/TemporaryLinkStubs.cpp:
2876         (WebCore::FrameWin::goBackOrForward):
2877         (WebCore::FrameWin::getHistoryLength):
2878         (WebCore::FrameWin::historyURL):
2879         (WebCore::ServeSynchronousRequest):
2880         (WebCore::ChromeClientWin::canRunModal):
2881         (WebCore::ChromeClientWin::runModal):
2882         (WebCore::EditorClientWin::shouldDeleteRange):
2883         (WebCore::EditorClientWin::shouldShowDeleteInterface):
2884         (WebCore::EditorClientWin::isContinuousSpellCheckingEnabled):
2885         (WebCore::EditorClientWin::isGrammarCheckingEnabled):
2886         (WebCore::EditorClientWin::spellCheckerDocumentTag):
2887         (WebCore::Path::transform):
2888         (WebCore::PopupMenu::updateFromElement):
2889         (WebCore::ResourceLoader::loadsBlocked):
2890         (WebCore::systemBeep):
2891         * rendering/RenderThemeWin.cpp:
2892         (WebCore::RenderThemeWin::paintButton):
2893         (WebCore::RenderThemeWin::paintTextField):
2894
2895 2006-11-04  Alexey Proskuryakov  <ap@nypop.com>
2896
2897         Reviewed by Maciej.
2898
2899         http://bugs.webkit.org/show_bug.cgi?id=11448
2900         &lang; and &rang; entities are mapped to the incorrect Unicode codepoint
2901
2902         * html/HTMLEntityNames.gperf: Use canonical Unicode equivalents for these characters.
2903
2904 2006-11-03  Mark Rowe  <bdash@webkit.org>
2905
2906         Reviewed by Oliver.
2907
2908         Update Windows and Qt project files for file removals in r17585.
2909
2910         * CMakeLists.txt:
2911         * WebCore.vcproj/WebCore/WebCore.vcproj:
2912
2913 2006-11-03  Zack Rusin  <zack@kde.org>
2914
2915         Reviewed by Maciej.
2916
2917         The patch fixes text field drawing on the Qt platform.
2918
2919         * platform/qt/RenderThemeQt.cpp:
2920         (WebCore::RenderThemeQt::paintTextField): Use the style to correctly
2921         render the text field
2922
2923 2006-11-03  Oliver Hunt  <oliver@apple.com>
2924
2925         Reviewed by Tim.
2926
2927         Correct incorrect call to SetCursor
2928
2929         * rendering/RenderFrameSet.cpp:
2930         (WebCore::RenderFrameSet::userResize):
2931
2932 2006-11-03  Adele Peterson  <adele@apple.com>
2933
2934         Reviewed by Oliver.
2935
2936         Removed DeprecatedRenderSelect and ListBox classes.
2937
2938         * WebCore.xcodeproj/project.pbxproj:
2939         * css/html4.css:
2940         * html/HTMLOptionElement.h:
2941         * html/HTMLSelectElement.cpp:
2942         (WebCore::HTMLSelectElement::recalcStyle):
2943         (WebCore::HTMLSelectElement::isKeyboardFocusable):
2944         (WebCore::HTMLSelectElement::isMouseFocusable):
2945         (WebCore::HTMLSelectElement::createRenderer):
2946         (WebCore::HTMLSelectElement::setRecalcListItems):
2947         (WebCore::HTMLSelectElement::notifyOptionSelected):
2948         (WebCore::HTMLSelectElement::defaultEventHandler):
2949         (WebCore::HTMLSelectElement::listBoxDefaultEventHandler):
2950         (WebCore::HTMLSelectElement::updateListBoxSelection):
2951         * html/HTMLSelectElement.h:
2952         * platform/ListBox.h: Removed.
2953         * platform/mac/FontCacheMac.mm:
2954         * platform/mac/ListBoxMac.mm: Removed.
2955         * platform/win/TemporaryLinkStubs.cpp:
2956         * rendering/DeprecatedRenderSelect.cpp: Removed.
2957         * rendering/DeprecatedRenderSelect.h: Removed.
2958
2959 2006-11-03  Maciej Stachowiak  <mjs@apple.com>
2960
2961         Not reviewed, fix for accidental commit.
2962
2963         - rolled back more of the accidentall commit that I forgot.
2964
2965         * platform/network/mac/ResourceRequestMac.h: Removed.
2966         * platform/network/mac/ResourceRequestMac.mm: Removed.
2967
2968 2006-11-03  Maciej Stachowiak  <mjs@apple.com>
2969
2970         Not reviewed, fix for accidental commit.
2971
2972         - roll back some network changes accidentally committed with a previous patch.
2973
2974         * WebCore.xcodeproj/project.pbxproj:
2975         * bridge/mac/WebCoreFrameBridge.mm:
2976         (-[WebCoreFrameBridge getData:andResponse:forURL:]):
2977         (-[WebCoreFrameBridge getAllResourceDatas:andResponses:]):
2978         * loader/CachedCSSStyleSheet.cpp:
2979         (WebCore::CachedCSSStyleSheet::checkNotify):
2980         * loader/CachedImage.cpp:
2981         (WebCore::CachedImage::createImage):
2982         * loader/CachedResource.cpp:
2983         (WebCore::CachedResource::CachedResource):
2984         (WebCore::CachedResource::~CachedResource):
2985         (WebCore::CachedResource::setExpireDate):
2986         (WebCore::CachedResource::isExpired):
2987         * loader/CachedResource.h:
2988         (WebCore::CachedResource::response):
2989         * loader/LoaderFunctions.h:
2990         * loader/loader.cpp:
2991         (WebCore::Loader::receivedResponse):
2992         (WebCore::Loader::didReceivedResponse):
2993         * loader/loader.h:
2994         * loader/mac/FormDataStream.h:
2995         * loader/mac/FormDataStream.m:
2996         (WebCore::formCreate):
2997         (WebCore::formFinalize):
2998         * loader/mac/ImageDocumentMac.mm:
2999         (WebCore::finishImageLoad):
3000         * loader/mac/LoaderFunctionsMac.mm:
3001         (WebCore::CheckCacheObjectStatus):
3002         (WebCore::CachedResource::setResponse):
3003         * loader/mac/SubresourceLoaderMac.mm:
3004         (WebCore::SubresourceLoader::willSendRequest):
3005         * platform/network/ResourceHandle.h:
3006         * platform/network/ResourceHandleClient.h:
3007         (WebCore::ResourceHandleClient::receivedRedirect):
3008         * platform/network/ResourceRequest.h:
3009         * platform/network/ResourceResponse.h:
3010         (WebCore::ResourceResponse::ResourceResponse):
3011         * platform/network/mac/ResourceHandleMac.mm:
3012         (WebCore::ResourceHandle::redirectedToURL):
3013         * xml/xmlhttprequest.cpp:
3014         (WebCore::XMLHttpRequest::receivedRedirect):
3015         * xml/xmlhttprequest.h:
3016
3017 2006-11-03  Anders Carlsson  <acarlsson@apple.com>
3018
3019         Rubber-stamped by Oliver.
3020
3021         Remove these, they have been merged with SVGRenderTreeAsText.
3022         
3023         * rendering/SVGRenderAsText.cpp: Removed.
3024         * rendering/SVGRenderAsText.h: Removed.
3025
3026 2006-11-03  Anders Carlsson  <acarlsson@apple.com>
3027
3028         Build fix.
3029         
3030         * platform/network/cf/ResourceHandleCFNet.cpp:
3031         (WebCore::willSendRequest):
3032
3033 2006-11-02  Geoffrey Garen  <ggaren@apple.com>
3034
3035         Reviewed by Darin, Beth.
3036         
3037         First cut at factoring Page's UIDelegate-related functions into Chrome
3038         and ChromeClient.
3039
3040         Layout tests pass.
3041         
3042         * bridge/mac/PageMac.mm: Removed platform-specific constructor, added
3043         setBridge method to replace it.
3044         (WebCore::Page::setBridge):
3045
3046         * bridge/mac/WebCorePageBridge.h: Simplified some things based on the fact
3047         that WebCorePageBridge.h doesn't need to be included by ObjC-only files,
3048         and, now that it uses PassRefPtr, can't be.
3049         
3050         * page/Chrome.cpp: Added. Code copied and converted to c++ from WebCorePageBridge.mm.
3051
3052         * page/Page.h:
3053         (WebCore::Page::dragCaretController): Made this function non-const so that
3054         m_dragCaretController doesn't have to be mutable.
3055
3056 2006-11-03  Alexey Proskuryakov  <ap@nypop.com>
3057
3058         Reviewed by Adele.
3059
3060         http://bugs.webkit.org/show_bug.cgi?id=7323
3061         REGRESSION (10.4.4): ondrag* events don't fire on page in a frame
3062
3063         * bridge/mac/FrameMac.h: Moved drag source information to a static variable
3064         in FrameMac.mm. There can be only one drag active at any moment, and having 
3065         this information here was making sharing this information between 
3066         subframes hard.
3067
3068         * bridge/mac/FrameMac.mm:
3069         (WebCore::FrameMac::FrameMac): Initialize sharedDragInfo.
3070         (WebCore::FrameMac::freeClipboard):
3071         (WebCore::FrameMac::dragHysteresisExceeded):
3072         (WebCore::FrameMac::handleMouseMoveEvent):
3073         (WebCore::FrameMac::handleMouseReleaseEvent):
3074         (WebCore::FrameMac::mouseDown):
3075         (WebCore::FrameMac::dragSourceMovedTo):
3076         (WebCore::FrameMac::dragSourceEndedAt):
3077         (WebCore::FrameMac::dispatchDragSrcEvent):
3078         Access drag source info via sharedDragInfo - this fixes drag source even dispatching.
3079         Also removed some old code that was forwarding mouse events to subviews to make 
3080         HTML editing work in subframes.
3081
3082         * page/FrameView.cpp:
3083         (WebCore::FrameView::updateDragAndDrop):
3084         (WebCore::FrameView::cancelDragAndDrop):
3085         (WebCore::FrameView::performDragAndDrop):
3086         Forward events to subframes for dispatching - this fixes drag target events.
3087
3088 2006-11-03  Zack Rusin  <zack@kde.org>
3089
3090         Reviewed by Tim.
3091
3092         Fixing compile.
3093
3094         * platform/qt/LoaderFunctionsQt.cpp:
3095         (WebCore::CachedResource::setPlatformResponse): Renamed from setResponse
3096
3097 2006-11-01  Zack Rusin  <zack@kde.org>
3098
3099         Reviewed by Maciej.
3100
3101         Moving the word/sentence seperators into a file of their own
3102         and implementing findWordBoundary.
3103
3104         * CMakeLists.txt:
3105         * platform/qt/TemporaryLinkStubs.cpp:
3106         * platform/qt/TextBoundaries.cpp: Added.
3107         (WebCore::findNextSentenceFromIndex):
3108         (WebCore::findSentenceBoundary):
3109         (WebCore::findNextWordFromIndex):
3110         (WebCore::findWordBoundary):
3111
3112 2006-11-03  Zack Rusin  <zack@kde.org>
3113
3114         Reviewed by Maciej.
3115
3116         Compile on both KDE and Qt platforms
3117
3118         * CMakeLists.txt: add zlib explicitly
3119         * platform/network/qt/ResourceHandleManager.cpp:
3120         (WebCore::ResourceHandleManager::self):
3121         (WebCore::QtJob::QtJob):
3122         (WebCore::QtJob::timerEvent): Integrate both implementations
3123         so that moc can parse it
3124         (WebCore::ResourceHandleManager::deliverJobData):
3125         (WebCore::ResourceHandleManager::remove):
3126         * platform/network/qt/ResourceHandleManager.h:
3127
3128 2006-11-03  Maciej Stachowiak  <mjs@apple.com>
3129
3130         No review, suggested by Mitz.
3131
3132         - fix a #if to be #ifdef
3133
3134         * platform/graphics/svg/cg/SVGResourceImageCg.cpp:
3135
3136 2006-11-03  Zack Rusin  <zack@kde.org>
3137
3138         Reviewed and landed by Maciej.
3139         
3140         Compile on the Qt platform.
3141
3142         * ksvg2/misc/KCanvasRenderingStyle.h:
3143         * platform/qt/RenderThemeQt.cpp:
3144         (WebCore::RenderThemeQt::getStylePainterAndWidgetFromPaintInfo):
3145
3146 2006-11-03  Zack Rusin  <zack@kde.org>
3147
3148         Reviewed by Hyatt. Landed by Maciej.
3149
3150         Adding setPlatformPen/setPlatformFont/setPlatformFillColor
3151         to graphics context to be able to set consistant state
3152         on the platform specific painter without having to change
3153         fill/stroke/font on every operation. This fixes color/stroke/fill
3154         and font handling in the Qt port.
3155
3156         * platform/graphics/GraphicsContext.cpp:
3157         (WebCore::GraphicsContext::setFont):
3158         (WebCore::GraphicsContext::setPen):
3159         (WebCore::GraphicsContext::setFillColor):
3160         (WebCore::GraphicsContext::setPlatformPen):
3161         (WebCore::GraphicsContext::setPlatformFillColor):
3162         (WebCore::GraphicsContext::setPlatformFont):
3163         * platform/graphics/GraphicsContext.h:
3164         * platform/qt/GraphicsContextQt.cpp:
3165         (WebCore::toQtCompositionMode):
3166         (WebCore::toQtLineCap):
3167         (WebCore::toQtLineJoin):
3168         (WebCore::toQPenStyle):
3169         (WebCore::penToQPen):
3170         (WebCore::TransparencyLayer::TransparencyLayer):
3171         (WebCore::GraphicsContext::addRoundedRectClip):
3172         (WebCore::GraphicsContext::setPlatformFont):
3173         (WebCore::GraphicsContext::setPlatformPen):
3174         (WebCore::GraphicsContext::setPlatformFillColor):
3175         * platform/qt/ScrollViewCanvasQt.cpp:
3176         (WebCore::ScrollViewCanvasQt::ScrollViewCanvasQt):
3177         (WebCore::ScrollViewCanvasQt::paintEvent):
3178         (WebCore::ScrollViewCanvasQt::handleKeyEvent):
3179         * platform/qt/ScrollViewCanvasQt.h:
3180
3181 2006-11-02  Adele Peterson  <adele@apple.com>
3182
3183         Reviewed by Anders.
3184
3185         - Fix for http://bugs.webkit.org/show_bug.cgi?id=9581
3186         REGRESSION: The new NativeTextArea scrolls to the top when the control is unfocused.
3187
3188         Test: fast/forms/textarea-no-scroll-on-blur.html
3189
3190         * rendering/RenderTextControl.cpp: (WebCore::RenderTextControl::forwardEvent):
3191           On blur, only scroll back to the start for text fields.
3192
3193 2006-11-02  Anders Carlsson  <acarlsson@apple.com>
3194
3195         Another build fix.
3196         
3197         * rendering/RenderFileUploadControl.cpp:
3198         (WebCore::RenderFileUploadControl::paintObject):
3199
3200 2006-11-02  Anders Carlsson  <acarlsson@apple.com>
3201
3202         Build fix.
3203         
3204         * page/FramePrivate.h:
3205         (WebCore::FramePrivate::FramePrivate):
3206
3207 2006-11-02  Kevin Ollivier <kevino@theolliviers.com>
3208
3209         Reviewed by Geoff, landed by Anders.
3210         
3211         Fix dependency problems caused when running move-js-headers.sh
3212         
3213         * move-js-headers.sh:
3214         Use cp -p instead of just cp so that the modification time
3215         of the original files are used.
3216
3217 2006-11-02  Adam Roben  <aroben@apple.com>
3218
3219         Reviewed by Tim H, landed by Anders.
3220
3221         Fixes http://bugzilla.opendarwin.org/show_bug.cgi?id=10840
3222         REGRESSION: Shadow of file upload button is clipped
3223
3224         * rendering/RenderFileUploadControl.cpp:
3225         (WebCore::RenderFileUploadControl::paintObject): Add 2px to the clip
3226         height to keep from clipping in the shadow
3227
3228 2006-11-02  Eike Preuss  <mail@eikepreuss.de>
3229
3230         Reviewed by Maciej, landed by Anders.
3231
3232         * platform/qt/ScrollViewQt.cpp: Fix translation of coordinates between
3233         content and window. ScrollViewQt already receives correct content
3234         coordinates from QScrollArea.
3235         (WebCore::ScrollView::contentsToWindow):
3236         (WebCore::ScrollView::windowToContents):
3237
3238 2006-11-02  Simon Hausmann  <hausmann@kde.org>
3239
3240         Reviewed by Maciej, landed by Anders
3241
3242         * CMakeLists.txt: Make linkage against KDE libraries conditional
3243         * platform/network/qt/ResourceHandleManager.cpp: Added a simple
3244           Qt base resource handler that supports only requests to the
3245           local filesystem. Used when compiling without KDE support.
3246           ResourceHandleManager.cpp/h are to be split up into ResourceHandleManagerKDE
3247           and ResourceHandleManagerQt in the future, as well as QtJob.cpp/h.
3248         (WebCore::QtJob::QtJob):
3249         (WebCore::QtJob::timerEvent):
3250         (WebCore::ResourceHandleManager::ResourceHandleManager):
3251         (WebCore::ResourceHandleManager::~ResourceHandleManager):
3252         (WebCore::ResourceHandleManager::self):
3253         (WebCore::ResourceHandleManager::remove):
3254         (WebCore::ResourceHandleManager::add):
3255         (WebCore::ResourceHandleManager::cancel):
3256         (WebCore::ResourceHandleManager::deliverJobData):
3257         * platform/network/qt/ResourceHandleManager.h:
3258         * platform/qt/FrameQtClient.cpp:
3259         (WebCore::FrameQtClientDefault::runJavaScriptAlert):
3260         (WebCore::FrameQtClientDefault::runJavaScriptConfirm):
3261         (WebCore::FrameQtClientDefault::runJavaScriptPrompt):
3262         * platform/qt/LoaderFunctionsQt.cpp: Use the Qt messagebox and
3263           input dialog functions when compiling without KDE support
3264         (WebCore::ServeSynchronousRequest):
3265
3266 2006-11-02  David Carson  <dacarson@gmail.com>
3267
3268         Reviewed by Geoff, landed by Anders.
3269
3270         Fix for: http://bugs.webkit.org/show_bug.cgi?id=11471
3271         Initializing variable in constructor.
3272
3273         * page/FramePrivate.h:
3274         (WebCore::FramePrivate::FramePrivate):
3275
3276 2006-11-02  Anders Carlsson  <acarlsson@apple.com>
3277
3278         Reviewed by Geoff.
3279
3280         Use CFMutableURLRequestRef instead of CFHTTPMessageRef since not all URL requests are http requests.
3281         
3282         * platform/network/cf/ResourceHandleCFNet.cpp:
3283         (WebCore::addHeadersFromHashMap):
3284         Don't set all headers at once since that clears any previous headers set.
3285         
3286         (WebCore::ResourceHandle::start):
3287
3288 2006-11-02  Adele Peterson  <adele@apple.com>
3289
3290         Reviewed by Mitz and Geoff.
3291
3292         - Fix for:
3293         <rdar://problem/4650271> REGRESSION(NativeTextArea): Textareas don't get scrollbars when text gets too big for content area (10105)
3294         <rdar://problem/4650813> REGRESSION(tiger-leopard): typing in a textarea in Safari is extremely slow (sample shows focus ring drawing)
3295         <rdar://problem/4658779> REGRESSION: Text selection is weird in textareas in Trac wiki editing pages
3296
3297         Test: fast/forms/textarea-scrollbar.html
3298
3299         To avoid some of our flexbox bugs for textareas, we're moving the text controls back to RenderBlock.  This should make them
3300         a lot more stable.  In the future, when we've worked out more of the flexbox kinks, we may want to consider moving them back.
3301
3302         * rendering/RenderTextControl.h: Convert text controls back to RenderBlock instead of RenderFlexibleBox.
3303         * rendering/RenderTextControl.cpp: 
3304         (WebCore::RenderTextControl::RenderTextControl):
3305         (WebCore::RenderTextControl::setStyle):
3306         (WebCore::RenderTextControl::createDivStyle):
3307         (WebCore::RenderTextControl::updateFromElement):
3308         (WebCore::RenderTextControl::calcHeight):
3309         (WebCore::RenderTextControl::baselinePosition):
3310         (WebCore::RenderTextControl::nodeAtPoint):
3311         (WebCore::RenderTextControl::layout): Set the inner div's height explicitly before doing a normal layout.
3312         (WebCore::RenderTextControl::scrollWidth):
3313         (WebCore::RenderTextControl::scrollHeight):
3314         (WebCore::RenderTextControl::scrollLeft):
3315         (WebCore::RenderTextControl::scrollTop):
3316
3317         * rendering/RenderObject.cpp: (WebCore::RenderObject::markContainingBlocksForLayout): Make subtree layout optimization work for textareas.
3318
3319 2006-11-02  John Sullivan  <sullivan@apple.com>
3320
3321         Reviewed by Geoff Garen
3322
3323         * editing/Selection.cpp:
3324         (WebCore::Selection::showTreeForThis):
3325         this debugging method now displays start offset and end offset, at Darin's suggestion
3326
3327 2006-11-01  Justin Garcia  <justin.garcia@apple.com>
3328
3329         Reviewed by darin
3330
3331         <rdar://problem/4062865>
3332         Copy/paste of a select element fails to include the options
3333         
3334         * editing/SelectionController.cpp:
3335         (WebCore::SelectionController::modify): Added paragraphBoundary.
3336         * editing/htmlediting.cpp:
3337         (WebCore::canHaveChildrenForEditing): Added checks for input elements
3338         and textareas.  Insertion operations would fail when performed just 
3339         before/after one of these elements b/c the content would be put inside 
3340         the element.
3341         (WebCore::enclosingNodeWithTag): Fixed a problem when calling these in non
3342         editable content, and made the code to stop at an root faster (don't check
3343         isDescendantOf on every iteration).
3344         (WebCore::enclosingNodeOfType): Ditto.
3345         (WebCore::enclosingList): Ditto.
3346         (WebCore::enclosingListChild): Ditto.  Added a FIXME, this function seems
3347         inappropriately named.
3348         * editing/markup.cpp:
3349         (WebCore::startMarkup): Use the text node's value instead of its rendered
3350         content for text nodes inside select elements.  One might also turn off
3351         annotation when createMarkup enters a select element, but createMarkup
3352         is iterative, not recursive, so doing so would be complicated.
3353         (WebCore::createMarkup): Add markup for unrendered nodes if they are 
3354         descendants of a select element.
3355         * editing/visible_units.cpp:
3356         (WebCore::startOfParagraph): Migrate to isBlock/enclosingBlock.  Fixes bug
3357         where various replaced elements can't be copied when they are the only
3358         thing selected.
3359         (WebCore::endOfParagraph): Ditto.
3360
3361 2006-11-01  Oliver Hunt  <oliver@apple.com>
3362
3363         Reviewed by Adam.
3364
3365         Converting more or kcanvas/quartz from Obj-C to C++
3366         Minor SVG updates
3367         compatibility fixes
3368
3369         * WebCore.xcodeproj/project.pbxproj:
3370         * kcanvas/device/KRenderingPaintServer.h:
3371         * kcanvas/device/quartz/KRenderingPaintServerGradientQuartz.cpp: Added.
3372         (WebCore::KRenderingPaintServerGradientQuartz::updateQuartzGradientCache):
3373         * kcanvas/device/quartz/KRenderingPaintServerGradientQuartz.mm: Removed.
3374         * kcanvas/device/quartz/KRenderingPaintServerQuartz.cpp: Added.
3375         * kcanvas/device/quartz/KRenderingPaintServerQuartz.mm: Removed.
3376         * kcanvas/device/quartz/QuartzSupport.h:
3377         * ksvg2/css/SVGCSSStyleSelector.cpp:
3378         * ksvg2/misc/KCanvasRenderingStyle.h:
3379         * ksvg2/scripts/cssmakeprops:
3380         * ksvg2/scripts/cssmakevalues:
3381         * ksvg2/scripts/make_names.pl:
3382         * ksvg2/svg/SVGAnimateColorElement.cpp:
3383         * ksvg2/svg/SVGAnimateTransformElement.cpp:
3384         * ksvg2/svg/SVGAnimationElement.cpp:
3385         * ksvg2/svg/SVGMaskElement.cpp:
3386         * ksvg2/svg/SVGPatternElement.cpp:
3387         * ksvg2/svg/svgpathparser.cpp:
3388         * platform/Path.cpp:
3389         * platform/graphics/svg/SVGResourceImage.h:
3390         * rendering/RenderPath.cpp:
3391         * rendering/SVGRenderAsText.cpp:
3392
3393 2006-11-02  Mitz Pettel  <mitz@webkit.org>
3394
3395         Reviewed by Adele.
3396
3397         - Fix a regression from r17521: painting of and crash caused by tables
3398           with collapsed borders
3399
3400         * rendering/RenderTable.cpp:
3401         (WebCore::RenderTable::paint): Changed 'paintInfo' to 'info'. Prior to
3402         r17521, 'paintInfo' was the local variable. Now 'info' is the local variable
3403         and 'paintInfo' is the parameter, which we were accidently modifying.
3404
3405 2006-11-01  Adele Peterson  <adele@apple.com>
3406
3407         Reviewed by Mitz.
3408
3409         - Fix for http://bugs.webkit.org/show_bug.cgi?id=11277
3410         REGRESSION: Incomplete repaint of overflow areas when deleting
3411
3412         Restrict the repaint rect for overflow blocks after the height has been fully computed.
3413         Also, adjust the repaint rect coordinates for the scroll offset.
3414
3415         * rendering/RenderBlock.cpp: (WebCore::RenderBlock::layoutBlock):
3416         * rendering/bidi.cpp: (WebCore::RenderBlock::layoutInlineChildren):
3417
3418 2006-11-01  Sam Weinig  <sam.weinig@gmail.com>
3419
3420         Reviewed by Mitz.
3421
3422         Fix for http://bugs.webkit.org/show_bug.cgi?id=11474
3423         Rename the "p" member variable of the PaintInfo struct to "context"
3424
3425         - Renames the 'p' and 'r' member variables of the PaintInfo struct to
3426           'context' and 'rect' respectively.
3427
3428         - Assorted surrounding cleanups.
3429
3430         * rendering/EllipsisBox.cpp:
3431         (WebCore::EllipsisBox::paint):
3432         * rendering/EllipsisBox.h:
3433         * rendering/InlineBox.cpp:
3434         (WebCore::InlineBox::paint):
3435         * rendering/InlineFlowBox.cpp:
3436         (WebCore::InlineFlowBox::paint):
3437         (WebCore::InlineFlowBox::paintBackground):
3438         (WebCore::InlineFlowBox::paintBackgroundAndBorder):
3439         (WebCore::InlineFlowBox::paintDecorations):
3440         * rendering/InlineFlowBox.h:
3441         * rendering/InlineRunBox.h:
3442         * rendering/InlineTextBox.cpp:
3443         (WebCore::InlineTextBox::paint):
3444         * rendering/InlineTextBox.h:
3445         * rendering/RenderBlock.cpp:
3446         (WebCore::RenderBlock::paint):
3447         (WebCore::RenderBlock::paintChildren):
3448         (WebCore::RenderBlock::paintCaret):
3449         (WebCore::RenderBlock::paintObject):
3450         (WebCore::RenderBlock::paintFloats):
3451         (WebCore::RenderBlock::paintEllipsisBoxes):
3452         (WebCore::RenderBlock::paintSelection):
3453         (WebCore::RenderBlock::fillSelectionGaps):
3454         (WebCore::RenderBlock::fillInlineSelectionGaps):
3455         (WebCore::RenderBlock::fillBlockSelectionGaps):
3456         (WebCore::RenderBlock::fillHorizontalSelectionGap):
3457         (WebCore::RenderBlock::fillVerticalSelectionGap):
3458         (WebCore::RenderBlock::fillLeftSelectionGap):
3459         (WebCore::RenderBlock::fillRightSelectionGap):
3460         * rendering/RenderBox.cpp:
3461         (WebCore::RenderBox::paint):
3462         (WebCore::RenderBox::paintRootBoxDecorations):
3463         (WebCore::RenderBox::paintBoxDecorations):
3464         * rendering/RenderBox.h:
3465         * rendering/RenderButton.cpp:
3466         (WebCore::RenderButton::paintObject):
3467         * rendering/RenderFieldset.cpp:
3468         (WebCore::RenderFieldset::paintBoxDecorations):
3469         * rendering/RenderFileUploadControl.cpp:
3470         (WebCore::RenderFileUploadControl::paintObject):
3471         * rendering/RenderFlow.cpp:
3472         (WebCore::RenderFlow::continuationBefore):
3473         (WebCore::RenderFlow::addChildWithContinuation):
3474         (WebCore::RenderFlow::addChild):
3475         (WebCore::RenderFlow::attachLineBox):
3476         (WebCore::RenderFlow::destroy):
3477         (WebCore::RenderFlow::dirtyLinesFromChangedChild):
3478         (WebCore::RenderFlow::dirtyLineBoxes):
3479         (WebCore::RenderFlow::createInlineBox):
3480         (WebCore::RenderFlow::paintLines):
3481         (WebCore::RenderFlow::getAbsoluteRepaintRect):
3482         (WebCore::RenderFlow::lowestPosition):
3483         (WebCore::RenderFlow::rightmostPosition):
3484         (WebCore::RenderFlow::leftmostPosition):
3485         (WebCore::RenderFlow::caretRect):
3486         (WebCore::RenderFlow::addFocusRingRects):
3487         (WebCore::RenderFlow::paintOutline):
3488         (WebCore::RenderFlow::paintOutlineForLine):
3489         * rendering/RenderForeignObject.cpp:
3490         (WebCore::RenderForeignObject::paint):
3491         * rendering/RenderHTMLCanvas.cpp:
3492         (WebCore::RenderHTMLCanvas::paint):
3493         * rendering/RenderImage.cpp:
3494         (WebCore::RenderImage::paint):
3495         * rendering/RenderLayer.cpp:
3496         (WebCore::RenderLayer::paintLayer):
3497         * rendering/RenderListBox.cpp:
3498         (WebCore::RenderListBox::paintObject):
3499         (WebCore::RenderListBox::paintScrollbar):
3500         (WebCore::RenderListBox::paintItemForeground):
3501         (WebCore::RenderListBox::paintItemBackground):
3502         * rendering/RenderListMarker.cpp:
3503         (WebCore::RenderListMarker::paint):
3504         * rendering/RenderMenuList.cpp:
3505         (WebCore::RenderMenuList::paintObject):
3506         * rendering/RenderObject.cpp:
3507         (WebCore::RenderObject::paint):
3508         * rendering/RenderObject.h:
3509         (WebCore::RenderObject::PaintInfo::PaintInfo):
3510         (WebCore::RenderObject::paintBoxDecorations):
3511         (WebCore::RenderObject::paintingRootForChildren):
3512         (WebCore::RenderObject::shouldPaintWithinRoot):
3513         (WebCore::RenderObject::printBoxDecorations):
3514         * rendering/RenderPath.cpp:
3515         (WebCore::RenderPath::paint):
3516         * rendering/RenderReplaced.cpp:
3517         (WebCore::RenderReplaced::shouldPaint):
3518         * rendering/RenderSVGContainer.cpp:
3519         (WebCore::RenderSVGContainer::paint):
3520         * rendering/RenderSVGContainer.h:
3521         * rendering/RenderSVGImage.cpp:
3522         (WebCore::RenderSVGImage::paint):
3523         * rendering/RenderSVGText.cpp:
3524         (WebCore::RenderSVGText::paint):
3525         * rendering/RenderSVGText.h:
3526         (WebCore::RenderSVGText::renderName):
3527         * rendering/RenderTable.cpp:
3528         (WebCore::RenderTable::paint):
3529         (WebCore::RenderTable::paintBoxDecorations):
3530         * rendering/RenderTable.h:
3531         * rendering/RenderTableCell.cpp:
3532         (WebCore::RenderTableCell::paint):
3533         (WebCore::RenderTableCell::paintBackgroundsBehindCell):
3534         (WebCore::RenderTableCell::paintBoxDecorations):
3535         * rendering/RenderTableCell.h:
3536         * rendering/RenderTableRow.cpp:
3537         (WebCore::RenderTableRow::paint):
3538         * rendering/RenderTableRow.h:
3539         * rendering/RenderTableSection.cpp:
3540         (WebCore::RenderTableSection::paint):
3541         * rendering/RenderTableSection.h:
3542         (WebCore::RenderTableSection::getBaseline):
3543         (WebCore::RenderTableSection::setNeedCellRecalc):
3544         * rendering/RenderText.h:
3545         (WebCore::RenderText::renderName):
3546         (WebCore::RenderText::paint):
3547         (WebCore::RenderText::element):
3548         * rendering/RenderTheme.cpp:
3549         (WebCore::RenderTheme::paint):
3550         (WebCore::RenderTheme::paintBorderOnly):
3551         (WebCore::RenderTheme::paintDecorations):
3552         * rendering/RenderTheme.h:
3553         (WebCore::RenderTheme::RenderTheme):
3554         (WebCore::RenderTheme::~RenderTheme):
3555         (WebCore::RenderTheme::controlSupportsTints):
3556         (WebCore::RenderTheme::adjustRepaintRect):
3557         (WebCore::RenderTheme::themeChanged):
3558         (WebCore::RenderTheme::supportsHover):
3559         (WebCore::RenderTheme::paintCheckbox):
3560         (WebCore::RenderTheme::setCheckboxSize):
3561         (WebCore::RenderTheme::paintRadio):
3562         (WebCore::RenderTheme::setRadioSize):
3563         (WebCore::RenderTheme::paintButton):
3564         (WebCore::RenderTheme::setButtonSize):
3565         (WebCore::RenderTheme::paintTextField):
3566         (WebCore::RenderTheme::paintTextArea):
3567         (WebCore::RenderTheme::paintMenuList):
3568         (WebCore::RenderTheme::paintMenuListButton):
3569         * rendering/RenderThemeMac.mm:
3570         (WebCore::RenderThemeMac::paintCheckbox):
3571         (WebCore::RenderThemeMac::paintRadio):
3572         (WebCore::RenderThemeMac::paintButton):
3573         (WebCore::RenderThemeMac::paintTextField):
3574         (WebCore::RenderThemeMac::paintTextArea):
3575         (WebCore::RenderThemeMac::paintMenuList):
3576         (WebCore::RenderThemeMac::paintMenuListButtonGradients):
3577         (WebCore::RenderThemeMac::paintMenuListButton):
3578         * rendering/RenderView.cpp:
3579         (WebCore::RenderView::paint):
3580         (WebCore::RenderView::paintBoxDecorations):
3581         * rendering/RenderView.h:
3582         * rendering/RenderWidget.cpp:
3583         (WebCore::RenderWidget::paint):
3584         * rendering/RenderWidget.h:
3585         (WebCore::RenderWidget::isWidget):
3586         * rendering/RootInlineBox.cpp:
3587         (WebCore::RootInlineBox::paintEllipsisBox):
3588         (WebCore::RootInlineBox::paintCustomHighlight):
3589         (WebCore::RootInlineBox::paint):
3590         (WebCore::RootInlineBox::fillLineSelectionGap):
3591         * rendering/RootInlineBox.h:
3592         * rendering/SVGInlineFlowBox.cpp:
3593         (WebCore::paintSVGInlineFlow):
3594
3595 2006-11-01  Anders Carlsson  <acarlsson@apple.com>
3596
3597         Reviewed by Oliver, Brady.
3598
3599         * platform/network/ResourceResponse.h:
3600         (WebCore::ResourceResponse::setLastModifiedDate):
3601         (WebCore::ResourceResponse::lastModifiedDate):
3602         Add getters and setters for last modified dadte.
3603         
3604         * platform/network/cf/ResourceResponseCFNet.cpp:
3605         (WebCore::getResourceResponse):
3606         Fetch the last modified date. Add correct offset to expired date.
3607
3608 2006-11-01  David Kilzer  <ddkilzer@kilzer.net>
3609
3610         Reviewed by Mitz.
3611
3612         Added missing "break;" statement in switch statement from r17493.
3613
3614         Bug 11442: [CSS 3] support for cursor: all-scroll
3615         http://bugs.webkit.org/show_bug.cgi?id=11442
3616
3617         * css/CSSComputedStyleDeclaration.cpp:
3618         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
3619
3620 2006-10-31  Mitz Pettel  <mitz@webkit.org>
3621
3622         Reviewed by Maciej.
3623
3624         - fix image dragging
3625
3626         This is covered by editing/selection/drag-to-contenteditable-iframe.html
3627
3628         * rendering/HitTestResult.cpp:
3629         (WebCore::HitTestResult::altDisplayString): Changed imageTag to imgTag, for
3630         HTML IMG elements.
3631         (WebCore::HitTestResult::absoluteImageURL): Ditto.
3632
3633 2006-10-31  Beth Dakin  <bdakin@apple.com>
3634
3635         Reviewed by Maciej.
3636
3637         This adds the back-end of the remaining WebElementDictionary 
3638         functions into HitTestResult.
3639
3640         * WebCore.exp:
3641         * rendering/HitTestResult.cpp:
3642         (WebCore::HitTestResult::title):
3643         (WebCore::displayString): This is nearly identical to the 
3644         displayString() defined in DOMInternal.mm except that it returns a 
3645         String instead of an NSString. The old code path used the 
3646         DOMInternal method, so I made a new one here for the new code path.
3647         (WebCore::HitTestResult::altDisplayString):
3648         (WebCore::HitTestResult::image):
3649         (WebCore::HitTestResult::absoluteImageURL):
3650         (WebCore::HitTestResult::absoluteLinkURL):
3651         (WebCore::HitTestResult::titleDisplayString):
3652         (WebCore::HitTestResult::textContent):
3653         * rendering/HitTestResult.h:
3654
3655 2006-10-31  John Sullivan  <sullivan@apple.com>
3656
3657         * bridge/mac/FrameMac.mm:
3658         (WebCore::FrameMac::markMisspellings):
3659         Tiger build fix: added an #ifndef BUILDING_ON_TIGER where one was needed.
3660
3661 2006-10-31  John Sullivan  <sullivan@apple.com>
3662
3663         Reviewed by Maciej
3664         
3665         - fixed <rdar://problem/4804627> ToolTips do not appear for grammar suggestions
3666         
3667         The foundation of this was in my last checkin. This checkin is all about displaying
3668         the correct string in the toolTip.
3669
3670         * dom/DocumentMarker.h:
3671         New description field in this struct.
3672
3673         * bridge/mac/FrameMac.mm:
3674         (WebCore::FrameMac::advanceToNextMisspelling):
3675         When adding a grammar marker, supply the appropriate description. Also, added a comment
3676         about the remaining work to make grammar checking return sensible answers.
3677         (WebCore::FrameMac::markMisspellings):
3678         ditto (yes, still needs some refactoring to minimize duplicated code)
3679         
3680         * dom/Document.h:
3681         * dom/Document.cpp:
3682         (WebCore::Document::addMarker):
3683         Now takes an optional description string
3684         (WebCore::Document::markerContainingPoint):
3685         New function, returns a pointer to the (first) marker of the specified type whose rect 
3686         contains the specified point, or 0 if none.
3687         
3688         * rendering/HitTestResult.cpp:
3689         (WebCore::HitTestResult::spellingToolTip):
3690         Replaced hardwired string placeholder implementation with code that uses markerContainingPoint
3691         and gets the description from the marker.
3692
3693 2006-10-31  Geoffrey Garen  <ggaren@apple.com>
3694
3695         Reviewed by Maciej.
3696         
3697         Fixed crash resulting from Darin's last patch to remove BrowserExtension.
3698
3699         * loader/mac/FrameLoaderMac.mm:
3700         (WebCore::FrameLoader::createWindow):
3701         * manual-tests/window-open-features-parsing.html: Updated for clarity.
3702
3703 2006-10-31  Geoffrey Garen  <ggaren@apple.com>
3704
3705         Reviewed by Alice.
3706
3707         Moved some Editing code from WebKit, the bridge, and WebCore::Frame down 
3708         to WebCore::Editor.
3709         
3710         Layout tests pass.
3711         
3712         Renamed "may*" to "can*" because "can" is more accurate (these functions
3713         aren't just about permission) and it matches WebKit.
3714
3715         (WebCore::FrameMac::handleMouseMoveEvent): Directly test for dragging in a 
3716         password field. Now that WebCore fully implements canCopy(), it doesn't just
3717         mean "the selection is not in a password field" anymore.
3718         (-[WebCoreFrameBridge _shouldAllowAccessFrom:]): Removed this #ifed-out code. 
3719         The fact that it's not called anymore may represent a security issue, but I
3720         don't see how commented-out code will help reveal the issue, and the
3721         bridge is going away, anyway.
3722         * editing/SelectionController.h: Changed selection() calls to references
3723         to m_sel, to match the rest of the file.
3724
3725 2006-10-31  Justin Garcia  <justin.garcia@apple.com>
3726
3727         Reviewed by harrison
3728         
3729         <rdar://problem/4711063>
3730         Pasting 10K lines into Mail/Blot takes ~7sec, in TextEdit it takes ~1.5sec
3731
3732         * editing/ReplaceSelectionCommand.cpp:
3733         (WebCore::ReplacementFragment::ReplacementFragment): Don't do the test
3734         insertion and plain text string creation unless we need the string
3735         for a BeforeTextInserted event handler or for a plain text only region.
3736         (WebCore::ReplacementFragment::removeInterchangeNodes): Added, moved
3737         code here from ReplacementFragment's constructor.
3738         (WebCore::ReplaceSelectionCommand::completeHTMLReplacement): Added a
3739         FIXME.
3740         * editing/ReplaceSelectionCommand.h:
3741
3742 2006-10-31  Ada Chan  <adachan@apple.com>
3743
3744         Reviewed by Adam
3745
3746         Correct forward declarations of the HitTestRequest struct.
3747
3748         * rendering/EllipsisBox.h:
3749         * rendering/InlineBox.h:
3750         * rendering/InlineFlowBox.h:
3751         * rendering/RenderLayer.h:
3752         * rendering/RenderObject.h:
3753
3754 2006-10-31  John Sullivan  <sullivan@apple.com>
3755
3756         Reviewed by Beth and Adam
3757
3758         Support for displaying tooltips for bad grammar. Currently this always displays the same tooltip; 
3759         next I'll make it use a string that's relevant for a specific grammar error.
3760
3761         * WebCore.exp:
3762         export symbol for spellingToolTip function
3763         
3764         * rendering/HitTestResult.h:
3765         * rendering/HitTestResult.cpp:
3766         (WebCore::HitTestResult::spellingToolTip):
3767         new function, returns the string to be used in a tool tip that describes the questionable grammar
3768         
3769         * rendering/InlineTextBox.h:
3770         * rendering/InlineTextBox.cpp:
3771         (WebCore::InlineTextBox::paintSpellingOrGrammarMarker):
3772         now takes a style and font, needed to compute the rect representing the range containing
3773         questionable grammar. Computes the rect and associates it with the marker.
3774         (WebCore::InlineTextBox::paintDocumentMarkers):
3775         Pass in the style and font now needed by paintSpellingOrGrammarMarker
3776
3777 2006-10-31  Adele Peterson  <adele@apple.com>
3778
3779         Removed commented out variable from last checkin.
3780
3781         * html/HTMLSelectElement.cpp:
3782         (WebCore::HTMLSelectElement::listBoxDefaultEventHandler):
3783
3784 2006-10-31  Brady Eidson  <beidson@apple.com>
3785
3786         Build fix (unused variable in release builds)
3787
3788         * html/HTMLSelectElement.cpp:
3789         (WebCore::HTMLSelectElement::listBoxDefaultEventHandler):
3790
3791 2006-10-31  Adele Peterson  <adele@apple.com>
3792
3793         Reviewed by Adam.
3794
3795         - Fix for http://bugs.webkit.org/show_bug.cgi?id=11127 NativeListBox: arrow and drag selection should pivot around one list item
3796         and http://bugs.webkit.org/show_bug.cgi?id=11173 REGRESSION (NativeListBox): Shift-clicking items in list box doesn't expand the current selection
3797         and http://bugs.webkit.org/show_bug.cgi?id=11417 REGRESSION: onchange does not fire for list-style select elements
3798
3799         Tests: 
3800         * LayoutTests/fast/forms/listbox-selection.html
3801         * LayoutTests/fast/forms/listbox-onchange.html
3802
3803         * html/HTMLSelectElement.h: Added m_selectedListIndexBase and m_selectedListIndexExtent to track indices for the active selection in progress.
3804           Added 2 vectors to cache selection state.  One is kept so that the previous selection state can be restored as the active selection grows and shrinks.
3805           And one for onChange, that is updated after onChange is fired.
3806           Added m_activeSelectionState to keep track of whether the current drag selection is selecting or deselecting.
3807  
3808         * html/HTMLSelectElement.cpp:
3809         (WebCore::HTMLSelectElement::HTMLSelectElement): Initialized new variables.
3810         (WebCore::HTMLSelectElement::setSelectedIndex): If needed, initialize m_selectedListIndexBase and m_selectedListIndexExtent.
3811         (WebCore::HTMLSelectElement::dispatchBlurEvent): Only fire the onChange event here for menu lists.
3812         (WebCore::HTMLSelectElement::listBoxDefaultEventHandler): Updates base and extent variables for mouse and key events.
3813         (WebCore::HTMLSelectElement::setBase): Added. Also caches the selection state.
3814         (WebCore::HTMLSelectElement::setExtent): Added.
3815         (WebCore::HTMLSelectElement::updateListBoxSelection): Added.
3816         (WebCore::HTMLSelectElement::listBoxOnChange): Added.
3817
3818         * rendering/RenderListBox.cpp:
3819         (WebCore::RenderListBox::updateFromElement): Only scroll to reveal the first index if both the first and last indices aren't visible.
3820         (WebCore::RenderListBox::listIndexAtOffset): Added.  Replaces optionAtPoint, which is no longer used.
3821         (WebCore::RenderListBox::autoscroll): Now sets the selection using the select's base and extent.
3822         (WebCore::RenderListBox::stopAutoscroll): Added.  Tells the select element to fire onChange.  This is needed because the autoscroll can end from a mouseUp
3823          outside of the list box, and the select element won't get a mouseUp event directly.  But the frame will stop the autoscroll at that point, and now we can
3824          notify the select element from here.
3825         (WebCore::RenderListBox::scrollToRevealElementAtListIndex): Checks new listIndexIsVisible method.
3826         (WebCore::RenderListBox::listIndexIsVisible): Added.
3827         (WebCore::RenderListBox::valueChanged): Removed unnecessary printf.
3828
3829         * page/Frame.cpp: (WebCore::Frame::stopAutoscrollTimer): Added rendererIsBeingDestroyed argument, so when the renderer calls this during destruction, 
3830         we don't try to use the pointer to that renderer to call stopAutoscroll.  This is done so a renderer that's still alive has a chance to do some cleanup after autoscroll.
3831         * rendering/RenderListBox.h: (WebCore::RenderListBox::shouldAutoscroll): Always returns true now, since we're also updating selection from the autoscroll timer.
3832         * rendering/RenderObject.h: (WebCore::RenderObject::stopAutoscroll): Added.
3833         * rendering/RenderObject.cpp: (WebCore::RenderObject::destroy): Calls stopAutoscrollTimer with rendererIsBeingDestroyed argument.
3834
3835 2006-10-31  Beth Dakin  <bdakin@apple.com>
3836
3837         Forgot to check this in a minute ago. Oops!! Thanks Mitz!
3838
3839         * rendering/HitTestRequest.h: Added.
3840         (WebCore::HitTestRequest::HitTestRequest):
3841
3842 2006-10-31  Beth Dakin  <bdakin@apple.com>
3843
3844         Reviewed by Maciej.
3845
3846         Fix for http://bugs.webkit.org/show_bug.cgi?id=11461 HitTestResult 
3847         should be split into HitTestRequest and HitTestResult
3848
3849         This patch creates a new struct called HitTestRequest that holds 
3850         the three boolean values (readonly, active, and mouseMove) that 
3851         were formerly a part of HitTestResult. All hitTest() and 
3852         nodeAtPoint() functions now take a HitTestRequest in addition to 
3853         the HitTestResult.
3854
3855         * WebCore.exp:
3856         * WebCore.xcodeproj/project.pbxproj:
3857         * bridge/mac/FrameMac.mm:
3858         (WebCore::FrameMac::eventMayStartDrag):
3859         (WebCore::FrameMac::handleMouseMoveEvent):
3860         * bridge/mac/WebCoreAXObject.mm:
3861         (-[WebCoreAXObject doAXTextMarkerForPosition:]):
3862         (-[WebCoreAXObject accessibilityHitTest:]):
3863         * dom/Document.cpp:
3864         (WebCore::Document::elementFromPoint):
3865         (WebCore::Document::prepareMouseEvent):
3866         * editing/SelectionController.cpp:
3867         (WebCore::SelectionController::contains):
3868         * page/Frame.cpp:
3869         (WebCore::Frame::hitTestResultAtPoint):
3870         * page/FrameView.cpp:
3871         (WebCore::FrameView::handleWheelEvent):
3872         * rendering/EllipsisBox.cpp:
3873         (WebCore::EllipsisBox::nodeAtPoint):
3874         * rendering/EllipsisBox.h:
3875         * rendering/HitTestResult.cpp:
3876         (WebCore::HitTestResult::HitTestResult):
3877         (WebCore::HitTestResult::operator=):
3878         * rendering/HitTestResult.h:
3879         * rendering/InlineBox.cpp:
3880         (WebCore::InlineBox::nodeAtPoint):
3881         * rendering/InlineBox.h:
3882         * rendering/InlineFlowBox.cpp:
3883         (WebCore::InlineFlowBox::nodeAtPoint):
3884         * rendering/InlineFlowBox.h:
3885         * rendering/InlineTextBox.cpp:
3886         (WebCore::InlineTextBox::nodeAtPoint):
3887         * rendering/InlineTextBox.h:
3888         * rendering/RenderBlock.cpp:
3889         (WebCore::RenderBlock::nodeAtPoint):
3890         * rendering/RenderBlock.h:
3891         * rendering/RenderBox.cpp:
3892         (WebCore::RenderBox::nodeAtPoint):
3893         * rendering/RenderBox.h:
3894         * rendering/RenderFlow.cpp:
3895         (WebCore::RenderFlow::hitTestLines):
3896         * rendering/RenderFlow.h:
3897         * rendering/RenderForeignObject.cpp:
3898         (WebCore::RenderForeignObject::nodeAtPoint):
3899         * rendering/RenderForeignObject.h:
3900         * rendering/RenderFrameSet.cpp:
3901         (WebCore::RenderFrameSet::nodeAtPoint):
3902         * rendering/RenderFrameSet.h:
3903         * rendering/RenderImage.cpp:
3904         (WebCore::RenderImage::nodeAtPoint):
3905         * rendering/RenderImage.h:
3906         * rendering/RenderInline.cpp:
3907         (WebCore::RenderInline::nodeAtPoint):
3908         * rendering/RenderInline.h:
3909         * rendering/RenderLayer.cpp:
3910         (WebCore::RenderLayer::autoscroll):
3911         (WebCore::RenderLayer::hitTest):
3912         (WebCore::RenderLayer::hitTestLayer):
3913         (WebCore::RenderLayer::updateHoverActiveState):
3914         * rendering/RenderLayer.h:
3915         * rendering/RenderObject.cpp:
3916         (WebCore::RenderObject::hitTest):
3917         (WebCore::RenderObject::nodeAtPoint):
3918         * rendering/RenderObject.h:
3919         * rendering/RenderPath.cpp:
3920         (WebCore::RenderPath::nodeAtPoint):
3921         * rendering/RenderPath.h:
3922         * rendering/RenderSVGImage.cpp:
3923         (WebCore::RenderSVGImage::nodeAtPoint):
3924         * rendering/RenderSVGImage.h:
3925         * rendering/RenderSVGText.cpp:
3926         (WebCore::RenderSVGText::nodeAtPoint):
3927         * rendering/RenderSVGText.h:
3928         * rendering/RenderTableRow.cpp:
3929         (WebCore::RenderTableRow::nodeAtPoint):
3930         * rendering/RenderTableRow.h:
3931         * rendering/RenderTableSection.cpp:
3932         (WebCore::RenderTableSection::nodeAtPoint):
3933         * rendering/RenderTableSection.h:
3934         * rendering/RenderText.h:
3935         (WebCore::RenderText::nodeAtPoint):
3936         * rendering/RenderTextControl.cpp:
3937         (WebCore::RenderTextControl::nodeAtPoint):
3938         * rendering/RenderTextControl.h:
3939         * rendering/RootInlineBox.cpp:
3940         (WebCore::RootInlineBox::nodeAtPoint):
3941         * rendering/RootInlineBox.h:
3942
3943 2006-10-31  Lars Naesbye Christensen <larsnaesbye@stud.ku.dk>
3944
3945         Reviewed by Maciej.
3946
3947         Bug 11442: [CSS 3] support for cursor: all-scroll
3948         http://bugs.webkit.org/show_bug.cgi?id=11442
3949
3950         * css/CSSComputedStyleDeclaration.cpp:
3951         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
3952         * css/CSSValueKeywords.in:
3953         * css/cssparser.cpp:
3954         (WebCore::CSSParser::parseValue):
3955         * page/FrameView.cpp:
3956         (WebCore::selectCursor):
3957         * rendering/RenderStyle.h:
3958
3959 2006-10-31  Oliver Hunt  <oliver@apple.com>
3960
3961         Reviewed by Geoff.
3962
3963         Converting Obj-C++ to C++ in kcanvas
3964
3965         * WebCore.xcodeproj/project.pbxproj:
3966         * kcanvas/device/quartz/KCanvasFilterQuartz.h:
3967         * kcanvas/device/quartz/KCanvasFilterQuartz.mm:
3968         * kcanvas/device/quartz/KCanvasItemQuartz.cpp: Added.
3969         * kcanvas/device/quartz/KCanvasItemQuartz.mm: Removed.
3970         * kcanvas/device/quartz/KRenderingDeviceQuartz.cpp: Added.
3971         * kcanvas/device/quartz/KRenderingDeviceQuartz.h:
3972         * kcanvas/device/quartz/KRenderingDeviceQuartz.mm: Removed.
3973         * kcanvas/device/quartz/KRenderingPaintServerGradientQuartz.mm:
3974         * kcanvas/device/quartz/KRenderingPaintServerQuartz.h:
3975         * kcanvas/device/quartz/QuartzSupport.cpp: Added.
3976         * kcanvas/device/quartz/QuartzSupport.h:
3977         * kcanvas/device/quartz/QuartzSupport.mm: Removed.
3978         * platform/graphics/svg/cg/SVGResourceClipperCg.cpp: Added.
3979         (WebCore::SVGResourceClipper::applyClip):
3980         * platform/graphics/svg/cg/SVGResourceClipperCg.mm: Removed.
3981         * platform/graphics/svg/cg/SVGResourceImageCg.cpp: Added.
3982         * platform/graphics/svg/cg/SVGResourceImageCg.mm: Removed.
3983
3984 2006-10-31  Justin Garcia  <justin.garcia@apple.com>
3985
3986         Reviewed by harrison
3987         
3988         <rdar://problem/4808375>
3989         REGRESSION: TextIterator slowed down, affecting Find on Page & Copy (etc.) [11460}
3990         
3991         Completely back out r17276 because of performance issues.
3992
3993         * editing/TextIterator.cpp:
3994         (WebCore::TextIterator::TextIterator):
3995         (WebCore::TextIterator::advance):
3996         (WebCore::TextIterator::handleTextNode):
3997         (WebCore::TextIterator::handleTextBox):
3998         (WebCore::TextIterator::handleReplacedElement):
3999         (WebCore::TextIterator::handleNonTextNode):
4000         (WebCore::TextIterator::exitNode):
4001         (WebCore::TextIterator::emitCharacter):
4002         (WebCore::TextIterator::range):
4003         (WebCore::SimplifiedBackwardsTextIterator::SimplifiedBackwardsTextIterator):
4004         (WebCore::SimplifiedBackwardsTextIterator::advance):
4005         (WebCore::SimplifiedBackwardsTextIterator::handleTextNode):
4006         (WebCore::SimplifiedBackwardsTextIterator::handleReplacedElement):
4007         (WebCore::SimplifiedBackwardsTextIterator::emitCharacter):
4008         (WebCore::SimplifiedBackwardsTextIterator::emitNewline):
4009         (WebCore::SimplifiedBackwardsTextIterator::range):
4010         (WebCore::CharacterIterator::range):
4011         (WebCore::TextIterator::rangeFromLocationAndLength):
4012         * editing/TextIterator.h:
4013         (WebCore::TextIterator::atEnd):
4014         (WebCore::SimplifiedBackwardsTextIterator::atEnd):
4015
4016 2006-10-31  Darin Adler  <darin@apple.com>
4017
4018         Reviewed by Brady.
4019
4020         - got "action dictionary" code out of FrameLoader,
4021           replacing with a class called NavigationAction
4022
4023         * loader/DocumentLoader.h: Changed m_triggeringAction to a NavigationAction.
4024         * loader/mac/DocumentLoaderMac.mm:
4025         (WebCore::DocumentLoader::triggeringAction): Ditto.
4026         (WebCore::DocumentLoader::setTriggeringAction): Ditto.
4027
4028         * loader/FrameLoader.h: Changed action parameters to NavigationAction.
4029
4030         * loader/FrameLoaderClient.h: Changed action parameters to NavigationAction.
4031         Removed elementForEvent.
4032         * loader/mac/FrameLoaderMac.mm:
4033         (WebCore::FrameLoader::load): Ditto.
4034         (WebCore::FrameLoader::reload): Ditto.
4035         (WebCore::FrameLoader::checkNewWindowPolicy): Ditto.
4036         (WebCore::FrameLoader::checkNavigationPolicy): Ditto.
4037         (WebCore::FrameLoader::continueLoadAfterNewWindowPolicy): Ditto.
4038         (WebCore::FrameLoader::post): Ditto.
4039
4040         * loader/NavigationAction.h: Added.
4041         * loader/NavigationAction.cpp: Added.
4042         * loader/mac/NavigationActionMac.mm: Added.
4043
4044         * loader/mac/MainResourceLoaderMac.mm: Fixed copyright.
4045
4046         * WebCore.xcodeproj/project.pbxproj: Updated for new files.
4047         * WebCore.exp: Updated.
4048
4049 2006-10-31  Steve Falkenburg  <sfalken@apple.com>
4050
4051         Reviewed by Adam.
4052
4053         Build fix
4054
4055         * platform/win/CookieJarWin.cpp:
4056         (WebCore::cookies):
4057
4058 2006-10-31  Nikolas Zimmermann  <zimmermann@kde.org>
4059
4060         Reviewed by Maciej. Landed by Adam.
4061
4062         Fixes: http://bugs.webkit.org/show_bug.cgi?id=11463
4063
4064         Move KCanvasTreeDebug into rendering, named as SVGRenderTreeAsText.*,
4065         as dicussed with Dave. Also kill the outdated DESIGN document.
4066
4067         * CMakeLists.txt:
4068         * WebCore.xcodeproj/project.pbxproj:
4069         * kcanvas/DESIGN: Removed.
4070         * kcanvas/KCanvasFilters.cpp:
4071         * kcanvas/KCanvasTreeDebug.cpp: Moved to rendering/SVGRenderTreeAsText
4072         * kcanvas/KCanvasTreeDebug.h: Ditto.
4073         * kcanvas/device/KRenderingPaintServerGradient.cpp:
4074         * kcanvas/device/KRenderingPaintServerPattern.cpp:
4075         * kcanvas/device/KRenderingPaintServerSolid.cpp:
4076         * platform/graphics/svg/SVGResourceClipper.cpp:
4077         * rendering/RenderTreeAsText.cpp:
4078         * rendering/SVGRenderTreeAsText.cpp: Added.
4079         * rendering/SVGRenderTreeAsText.h: Added.
4080         (WebCore::operator<<):
4081
4082 2006-10-31  MorganL  <morganl.webkit@yahoo.com>
4083
4084         Reviewed by Maciej.
4085
4086         Fixes http://bugs.webkit.org/show_bug.cgi?id=11286
4087         Includes some CRLF -> LF fixups.
4088
4089         * platform/win/CookieJarWin.cpp:
4090         (WebCore::cookies):
4091
4092 2006-10-31  Adam Roben  <aroben@apple.com>
4093
4094         Reviewed by Steve.
4095
4096         Fix some incorrect forward declarations.
4097
4098         * loader/FrameLoader.h:
4099         * page/Frame.h:
4100
4101 2006-10-31  Darin Adler  <darin@apple.com>
4102
4103         * WebCore.xcodeproj/project.pbxproj: Change GraphicsTypes.h to a private header to
4104         try to fix the build on the buildbot.
4105
4106 2006-10-31  Darin Adler  <darin@apple.com>
4107
4108         * bridge/mac/FrameMac.mm:
4109         (WebCore::FrameMac::advanceToNextMisspelling): Build fix for release Tiger builds.
4110         (WebCore::FrameMac::markMisspellings): Ditto.
4111
4112 2006-10-31  John Sullivan  <sullivan@apple.com>
4113
4114         * bridge/mac/FrameMac.mm:
4115         (WebCore::FrameMac::advanceToNextMisspelling):
4116         build fix: needed #ifndef BUILDING_ON_TIGER in one more place
4117
4118 2006-10-30  John Sullivan  <sullivan@apple.com>
4119
4120         Reviewed by Adam Roben
4121         
4122         - fixes <rdar://problem/4804614> Bad grammar ranges are not visibly marked
4123         
4124         This patch introduces much of the guts of grammar checking, though still not enough to actually
4125         check grammar sensibly, due to:
4126           
4127         <rdar://problem/4811175> Many false reports of bad grammar appear, caused by insufficient 
4128         context passed to grammar checker
4129
4130         * platform/Logging.h:
4131         * platform/Logging.cpp:
4132         new log channel SpellingAndGrammar
4133
4134         * bridge/mac/WebCorePageBridge.mm:
4135         (initializeLoggingChannelsIfNecessary):
4136         initialize new log channel
4137
4138         * bridge/mac/FrameMac.mm:
4139         (WebCore::FrameMac::advanceToNextMisspelling):
4140         Compute bad grammar range when computing misspelling range. Find first detailed grammar range from the
4141         set NSSpellChecker determines. Compare it with misspelling range to see which is earliest (or shortest
4142         in the event of a tie), and do further processing with that one (select range; create marker that
4143         causes range to be visibly marked with a funky underline; update spelling panel appropriately).
4144         (WebCore::FrameMac::markMisspellings):
4145         More or less the same types of changes as in advanceToNextMisspelling The loops are structured just 
4146         differently enough to make sharing code between these two functions a little tricky, so I decided to 
4147         save that for a later patch.
4148         
4149         (WebCore::FrameMac::respondToChangedSelection):
4150         remove grammar markers when we remove spelling markers        
4151
4152 2006-10-31  Nikolas Zimmermann <zimmermann@kde.org>
4153
4154         Reviewed by Mitz.
4155
4156         Fix Qt/Linux build with older gcc3.3.4.
4157
4158         * bindings/js/kjs_window.cpp:
4159         (KJS::WindowFunc::callAsFunction):
4160
4161 2006-10-31  Zack Rusin  <zack@kde.org>
4162
4163         Reviewed by Mitz.
4164
4165         Fix the Qt build after last nights changes.
4166
4167         * WebCore/platform/qt/FrameQt.cpp:
4168         * WebCore/platform/qt/EditorClientQt.h:
4169         * WebCore/platform/qt/EditorClientQt.cpp: