420f17aa967c4a76ee47e16fd22cdf25eade19d9
[WebKit-https.git] / WebCore / ChangeLog
1 2006-03-03  Eric Seidel  <eseidel@apple.com>
2
3         Reviewed by adele.
4
5         Fix clearly bogus cairo elipse drawing code.
6         Make QFontMetrics stubs slightly more sane.
7
8         * platform/cairo/GraphicsContextCairo.cpp:
9         (WebCore::GraphicsContext::drawEllipse):
10         * platform/win/TemporaryLinkStubs.cpp:
11         (QFontMetrics::floatWidth):
12         (QFontMetrics::height):
13         (QFontMetrics::width):
14         (QFontMetrics::isFixedPitch):
15
16 2006-03-03  Darin Adler  <darin@apple.com>
17
18         Reviewed by Eric.
19
20         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=7480
21           non-HTML elems w/o children in HTML docs get serialized self-closing
22         - fix problem where the HTML tokenizer would discard the first newline after </pre>
23
24         Test: fast/innerHTML/innerHTML-custom-tag.html
25
26         * editing/markup.cpp: (WebCore::shouldSelfClose): Refined rule so that it doesn't
27         try to do any self-closing tags in HTML documents at all; updated comment.
28
29         * khtml/html/htmltokenizer.cpp: (WebCore::HTMLTokenizer::parseTag): Added a check
30         of beginTag in the <pre> tag case. We were accidentally discarding a newline after
31         a </pre> tag.
32
33 2006-03-03  Maciej Stachowiak  <mjs@apple.com>
34
35         Rubber stamped by Eric.
36
37         - add new files to build, fix link stubs.
38
39         * WebCore.vcproj/WebCore/WebCore.vcproj:
40         * platform/win/TemporaryLinkStubs.cpp:
41         (KWQKCookieJar::cookieEnabled):
42         (WebCore::TransferJob::retrieveCharset):
43         (WebCore::TransferJob::assembleResponseHeaders):
44         (WebCore::TransferJob::~TransferJob):
45         * platform/win/TransferJobWin.cpp: Added.
46
47 2006-03-03  Maciej Stachowiak  <mjs@apple.com>
48
49         - add file I forgot in my last commit.
50
51         * platform/TransferJobInternal.h: Added.
52         (WebCore::TransferJobInternal::TransferJobInternal):
53
54 2006-03-03  Eric Seidel  <eseidel@apple.com>
55
56         Reviewed by mjs.
57
58         Wire up WidgetWin, CursorWin, ScrollViewWin.
59         Stub out methods for selection and cursors.
60
61         * Viewer/ImageDocument.h:
62         * WebCore.vcproj/WebCore/WebCore.vcproj:
63         * bridge/win/FrameWin.cpp:
64         * khtml/ecma/kjs_proxy.cpp:
65         (WebCore::KJSProxyImpl::initScriptIfNeeded):
66         * platform/IntRect.h:
67         (WebCore::IntRect::IntRect):
68         * platform/Widget.h:
69         * platform/win/CursorWin.cpp:
70         (WebCore::eastResizeCursor):
71         (WebCore::northResizeCursor):
72         (WebCore::northEastResizeCursor):
73         (WebCore::northWestResizeCursor):
74         (WebCore::southResizeCursor):
75         (WebCore::southEastResizeCursor):
76         (WebCore::southWestResizeCursor):
77         (WebCore::westResizeCursor):
78         * platform/win/IntRectWin.cpp:
79         (WebCore::IntRect::IntRect):
80         (WebCore::IntRect::operator RECT):
81         * platform/win/MouseEventWin.cpp:
82         * platform/win/ScrollViewWin.cpp: Added.
83         (WebCore::ScrollView::updateContents):
84         * platform/win/TemporaryLinkStubs.cpp:
85         (QTextEdit::textWithHardLineBreaks):
86         (QLineEdit::setPlaceholderString):
87         (QScrollBar::scroll):
88         (GraphicsContext::beginTransparencyLayer):
89         (Widget::setIsSelected):
90         (QLineEdit::selectedText):
91         (QComboBox::sizeHint):
92         (KWQFileButton::focusPolicy):
93         (QTextEdit::focusPolicy):
94         (QSlider::focusPolicy):
95         (QListBox::focusPolicy):
96         (QLineEdit::focusPolicy):
97         (WebCore::moveCursor):
98         (ScrollView::scrollBy):
99         (KWQKCookieJar::cookieEnabled):
100         (WebCore::TransferJob::TransferJob):
101         (WebCore::screenDepth):
102         (WebCore::usableScreenRect):
103         (FrameWin::getObjectInstanceForWidget):
104         (FrameWin::getEmbedInstanceForWidget):
105         (FrameWin::getAppletInstanceForWidget):
106         (FrameWin::passMouseDownEventToWidget):
107         (FrameWin::issuePasteCommand):
108         (FrameWin::issueTransposeCommand):
109         (QSlider::setFont):
110         (QLineEdit::setFont):
111         (QListBox::setFont):
112         (QFontMetrics::QFontMetrics):
113         (QComboBox::setFont):
114         (QTextEdit::setFont):
115         (QTextEdit::setWritingDirection):
116         (QFontMetrics::setFontDescription):
117         (QFontMetrics::checkSelectionPoint):
118         (FrameWin::addMessageToConsole):
119         (FrameWin::shouldChangeSelection):
120         (ScrollView::resizeContents):
121         (ScrollView::visibleHeight):
122         (ScrollView::visibleWidth):
123         (ScrollView::setContentsPos):
124         (ScrollView::contentsX):
125         (ScrollView::contentsY):
126         (ScrollView::contentsHeight):
127         (ScrollView::contentsWidth):
128         (ScrollView::viewportToContents):
129         * platform/win/WidgetWin.cpp: Added.
130         (WebCore::Widget::Widget):
131         (WebCore::Widget::~Widget):
132         (WebCore::Widget::windowHandle):
133         (WebCore::Widget::setWindowHandle):
134         (WebCore::Widget::setActiveWindow):
135         (WebCore::Widget::frameGeometry):
136         (WebCore::Widget::hasFocus):
137         (WebCore::Widget::setFocus):
138         (WebCore::Widget::clearFocus):
139         (WebCore::Widget::font):
140         (WebCore::Widget::setFont):
141         (WebCore::Widget::setCursor):
142         (WebCore::Widget::show):
143         (WebCore::Widget::hide):
144         (WebCore::Widget::setFrameGeometry):
145         (WebCore::Widget::mapFromGlobal):
146
147 2006-03-03  Maciej Stachowiak  <mjs@apple.com>
148
149         Reviewed by Eric.
150
151         - move TransferJob from kwq to platform, separate platform from non-platform bits
152
153         * ForwardingHeaders/kio/job.h: Removed.
154         * ForwardingHeaders/kio/jobclasses.h: Removed.
155         * WebCore.xcodeproj/project.pbxproj:
156         * bridge/mac/MacFrame.mm:
157         * dom/xml_tokenizer.cpp:
158         * khtml/xsl/xslt_processorimpl.cpp:
159         * kwq/KWQKJobClasses.h: Removed.
160         * kwq/KWQKJobClasses.mm: Removed.
161         * kwq/KWQLoader.mm:
162         * kwq/KWQResourceLoader.mm:
163         * kwq/TransferJobClient.h: Removed.
164         * loader/Cache.cpp:
165         * loader/loader.cpp:
166         * page/Frame.cpp:
167         * platform/TransferJob.cpp: Added.
168         (WebCore::TransferJob::TransferJob):
169         (WebCore::TransferJob::queryMetaData):
170         (WebCore::TransferJob::addMetaData):
171         * platform/TransferJob.h: Added.
172         * platform/TransferJobClient.h: Added.
173         * platform/mac/TransferJobMac.mm: Added.
174         (WebCore::TransferJobInternal::~TransferJobInternal):
175         (WebCore::TransferJob::retrieveCharset):
176         (WebCore::TransferJob::cancel):
177         * xml/xmlhttprequest.cpp:
178
179 2006-03-03  Maciej Stachowiak  <mjs@apple.com>
180
181         Reviewed by Eric.
182
183         - enough link stubs to "display" local copy of WebKit site w/o hitting breakpoint
184
185         * platform/win/TemporaryLinkStubs.cpp:
186         (QLineEdit::setReadOnly):
187         (QTextEdit::setCursorPosition):
188         (QLineEdit::setCursorPosition):
189         (QFontMetrics::width):
190         (GraphicsContext::drawText):
191         (GraphicsContext::drawLineForText):
192
193 2006-03-02  Maciej Stachowiak  <mjs@apple.com>
194
195         Rubber stamped by Eric.
196
197         - remove function that is now gone
198
199         * platform/win/TemporaryLinkStubs.cpp:
200
201 2006-03-02  Maciej Stachowiak  <mjs@apple.com>
202
203         Reviewed by Eric.
204         
205         - move logic to kick off load from KWQLoader function to a TransferJob method
206
207         * kwq/KWQKJobClasses.h:
208         * kwq/KWQKJobClasses.mm:
209         (WebCore::TransferJob::start):
210         * kwq/KWQLoader.h:
211         * kwq/KWQLoader.mm:
212         * loader/loader.cpp:
213         (WebCore::Loader::servePendingRequests):
214         * xml/xmlhttprequest.cpp:
215         (WebCore::XMLHttpRequest::send):
216
217 2006-03-02  Maciej Stachowiak  <mjs@apple.com>
218
219         Rubber stamped by Eric.
220
221         - remove unused loader parameter to KWQServeRequest.
222
223         * kwq/KWQLoader.h:
224         * kwq/KWQLoader.mm:
225         (KWQServeRequest):
226         * loader/loader.cpp:
227         (WebCore::Loader::servePendingRequests):
228         * xml/xmlhttprequest.cpp:
229         (WebCore::XMLHttpRequest::send):
230
231 2006-03-02  Maciej Stachowiak  <mjs@apple.com>
232
233         Reviewed by Eric.
234
235         - remove one of the versions of KWQServeRequest.
236
237         * kwq/KWQLoader.h:
238         * kwq/KWQLoader.mm:
239         * loader/loader.cpp:
240         (WebCore::Loader::servePendingRequests):
241         * platform/win/TemporaryLinkStubs.cpp:
242         (Widget::isEnabled):
243         (KWQServeRequest):
244
245 2006-03-02  Maciej Stachowiak  <mjs@apple.com>
246
247         Rubber stamped by Eric.
248
249         - win32 build fix.
250
251         * platform/win/MouseEventWin.cpp:
252
253 2006-03-02  Justin Garcia  <justin.garcia@apple.com>
254
255         Reviewed by eric
256         
257         <http://bugzilla.opendarwin.org/show_bug.cgi?id=3894>
258         uses of <cmath> should change to <math>
259
260         * ksvg2/svg/SVGAnimateTransformElementImpl.cpp:
261         * ksvg2/svg/SVGAnimationElementImpl.cpp:
262         * ksvg2/svg/SVGHelper.cpp:
263         * ksvg2/svg/SVGLengthImpl.cpp:
264
265 2006-03-02  Andrew Wellington  <proton@wiretapped.net>
266
267         Reviewed by Darin, landed by Beth
268
269         Fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=3230
270         CSS1: Words with inline elements get extra capital letters
271
272         Does not use UBreakIterator (yet?) for this, but a relatively
273         simple change that fixes our failure in the CSS1 test suite 
274         (5.4.5).
275
276         * platform/StringImpl.cpp:
277         (WebCore::StringImpl::capitalize): Specify if this is a run-on
278         * platform/StringImpl.h:
279         * rendering/RenderContainer.cpp:
280         (WebCore::RenderContainer::addChild): Change to re-run 
281         capitalisation when added into tree as previous text node changes
282         * rendering/RenderText.cpp:
283         (WebCore::RenderText::setText): Check if previous node is text that
284         doesn't end in a space
285
286 2006-03-02  Justin Garcia  <justin.garcia@apple.com>
287
288         Reviewed by sullivan
289         
290         <http://bugzilla.opendarwin.org/show_bug.cgi?id=7542>
291         REGRESSION: (r13028) Scrolling causes incomplete drawing of <ul> bullets
292
293         * rendering/render_list.cpp:
294         (WebCore::RenderListMarker::paint):
295
296 2006-03-02  Eric Seidel  <eseidel@apple.com>
297
298         Reviewed by ggaren.
299
300         Add (partially stubbed out) mouse event handling for Win32.
301
302         * WebCore.vcproj/WebCore/WebCore.vcproj:
303         * platform/IntPoint.h:
304         * platform/MouseEvent.h:
305         * platform/win/IntPointWin.cpp: Added.
306         (WebCore::IntPoint::IntPoint):
307         (WebCore::IntPoint::operator POINT):
308         * platform/win/MouseEventWin.cpp: Added.
309         (WebCore::MouseEvent::MouseEvent):
310         * platform/win/TemporaryLinkStubs.cpp:
311         (QLineEdit::setMaxLength):
312         (ScrollView::scrollBy):
313         (WebCore::Widget::setFocus):
314         (FrameWin::respondToChangedSelection):
315         (FrameWin::runJavaScriptPrompt):
316         (FrameWin::recordFormValue):
317         (FrameWin::registerCommandForRedo):
318         (FrameWin::runJavaScriptAlert):
319         (FrameWin::runJavaScriptConfirm):
320         (FrameWin::openURL):
321         (FrameWin::registerCommandForUndo):
322         (FrameWin::addMessageToConsole):
323         (FrameWin::mimeTypeForFileName):
324         (FrameWin::shouldChangeSelection):
325         (FrameWin::markMisspellingsInAdjacentWords):
326         (FrameWin::markMisspellings):
327         (FrameWin::personalbarVisible):
328         (FrameWin::objectContentType):
329         (FrameWin::createFrame):
330         (FrameWin::createPlugin):
331         (BrowserExtensionWin::setTypedIconURL):
332         (BrowserExtensionWin::getHistoryLength):
333         (BrowserExtensionWin::canRunModal):
334         (BrowserExtensionWin::openURLNotify):
335         (BrowserExtensionWin::createNewWindow):
336         (BrowserExtensionWin::canRunModalNow):
337         (BrowserExtensionWin::runModal):
338         (BrowserExtensionWin::goBackOrForward):
339         (BrowserExtensionWin::setIconURL):
340         (FrameWin::passSubframeEventToSubframe):
341         (FrameWin::lastEventIsMouseUp):
342         (BrowserExtensionWin::BrowserExtensionWin):
343         (Widget::setCursor):
344         (ScrollView::visibleHeight):
345         (ScrollView::visibleWidth):
346         (ScrollView::setContentsPos):
347         (ScrollView::contentsX):
348         (ScrollView::contentsY):
349         (ScrollView::contentsHeight):
350         (ScrollView::contentsWidth):
351         (ScrollView::viewportToContents):
352         (TransferJob::TransferJob):
353         (TransferJob::addMetaData):
354
355 2006-03-02  Justin Garcia  <justin.garcia@apple.com>
356
357         Reviewed by mjs
358         
359         <http://tinymce.moxiecode.com/example_full.php?example=true>
360         TinyMCE: Undo still enabled after a location change, crashes if performed
361         
362         Can't clear undo/redo operations registered by subframes in didOpenURL,
363         because subframes have already been detached.
364
365         * page/Frame.cpp:
366         (WebCore::Frame::didOpenURL):
367         (WebCore::Frame::closeURL):
368
369 2006-03-01  Maciej Stachowiak  <mjs@apple.com>
370
371         Reviewed by Darin.
372
373         - WebCore updates for "Set up new prototype macros and avoid using #if without defined() in JSC"
374         http://bugzilla.opendarwin.org/show_bug.cgi?id=7387
375         
376         Add Platform.h 
377
378         * ForwardingHeaders/kxmlcore/Platform.h: Added.
379         * bridge/mac/WebCoreFrameNamespaces.m:
380         * bridge/mac/WebCoreViewFactory.m:
381         * bridge/mac/WebDashboardRegion.m:
382         * config.h:
383         * platform/Logging.cpp:
384         * platform/mac/ScrollViewMac.mm:
385         (WebCore::ScrollView::addChild):
386         * platform/mac/WebCoreCookieAdapter.m:
387         * platform/mac/WebCoreGraphicsBridge.m:
388         * platform/mac/WebCoreHistory.m:
389         * platform/mac/WebCoreImageRendererFactory.m:
390         * platform/mac/WebCoreKeyGenerator.m:
391         * platform/mac/WebCoreView.m:
392
393 2006-03-02  Eric Seidel  <eseidel@apple.com>
394
395         * WebCore.xcodeproj/project.pbxproj: update GraphicsContext.cpp path to fix build
396
397 2006-03-01  Eric Seidel  <eseidel@apple.com>
398
399         Reviewed by andersca.
400
401         Add first-stab GraphicsContextCairo.
402         Shuffle a few more link stubs around, remove uncessary WebCore::
403
404         * WebCore.vcproj/WebCore/WebCore.vcproj:
405         * platform/GraphicsContext.cpp: Added.
406         * platform/GraphicsContext.h:
407         * platform/cairo/GraphicsContextCairo.cpp:
408         (WebCore::GraphicsContextState::GraphicsContextState):
409         (WebCore::setColor):
410         (WebCore::fillRectSourceOver):
411         (WebCore::GraphicsContextPrivate::GraphicsContextPrivate):
412         (WebCore::GraphicsContextPrivate::~GraphicsContextPrivate):
413         (WebCore::GraphicsContext::GraphicsContext):
414         (WebCore::GraphicsContext::~GraphicsContext):
415         (WebCore::GraphicsContext::pen):
416         (WebCore::GraphicsContext::setPen):
417         (WebCore::GraphicsContext::setBrush):
418         (WebCore::GraphicsContext::brush):
419         (WebCore::GraphicsContext::save):
420         (WebCore::GraphicsContext::restore):
421         (WebCore::GraphicsContext::drawRect):
422         (WebCore::GraphicsContext::setColorFromBrush):
423         (WebCore::GraphicsContext::setColorFromPen):
424         (WebCore::adjustLineToPixelBounderies):
425         (WebCore::GraphicsContext::drawLine):
426         (WebCore::GraphicsContext::drawEllipse):
427         (WebCore::GraphicsContext::drawArc):
428         (WebCore::GraphicsContext::drawConvexPolygon):
429         (WebCore::GraphicsContext::drawFloatImage):
430         (WebCore::GraphicsContext::drawTiledImage):
431         (WebCore::GraphicsContext::drawScaledAndTiledImage):
432         (WebCore::GraphicsContext::fillRect):
433         (WebCore::GraphicsContext::addClip):
434         (WebCore::GraphicsContext::setPaintingDisabled):
435         (WebCore::GraphicsContext::paintingDisabled):
436         * platform/cairo/ImageCairo.cpp:
437         * platform/cg/GraphicsContextCG.cpp: Removed.
438         * platform/win/TemporaryLinkStubs.cpp:
439         (QLineEdit::selectAll):
440         (Widget::mapFromGlobal):
441         (QLineEdit::cursorPosition):
442         (QTextEdit::setScrollBarModes):
443         (QTextEdit::selectAll):
444         (QComboBox::focusPolicy):
445         (GraphicsContext::clearShadow):
446         (QTextEdit::setCursorPosition):
447         (GraphicsContext::drawText):
448         (QLineEdit::setLiveSearch):
449         (QComboBox::QComboBox):
450         (Widget::lockDrawingFocus):
451         (QTextEdit::setSelectionRange):
452         (QSlider::QSlider):
453         (ScrollView::scrollYOffset):
454         (QComboBox::sizeHint):
455         (QLineEdit::edited):
456         (QTextEdit::text):
457         (QSlider::value):
458         (WebCore::Widget::setFocus):
459         (WebCore::TransferJob::addMetaData):
460         (FrameWin::respondToChangedContents):
461         (FrameWin::unfocusWindow):
462         (FrameWin::locationbarVisible):
463         (FrameWin::respondToChangedSelection):
464         (FrameWin::clearUndoRedoOperations):
465         (FrameWin::issueRedoCommand):
466         (FrameWin::getObjectInstanceForWidget):
467         (FrameWin::getEmbedInstanceForWidget):
468         (FrameWin::canRedo):
469         (FrameWin::canUndo):
470         (FrameWin::runJavaScriptPrompt):
471         (FrameWin::recordFormValue):
472         (FrameWin::registerCommandForRedo):
473         (FrameWin::runJavaScriptAlert):
474         (FrameWin::runJavaScriptConfirm):
475         (FrameWin::openURL):
476         (FrameWin::saveDocumentState):
477         (FrameWin::print):
478         (FrameWin::getAppletInstanceForWidget):
479         (FrameWin::passMouseDownEventToWidget):
480         (FrameWin::registerCommandForUndo):
481         (FrameWin::issueCutCommand):
482         (FrameWin::issueCopyCommand):
483         (FrameWin::addMessageToConsole):
484         (FrameWin::passWheelEventToChildWidget):
485         (FrameWin::issueUndoCommand):
486         (FrameWin::mimeTypeForFileName):
487         (FrameWin::clearRecordedFormValues):
488         (FrameWin::issuePasteCommand):
489         (FrameWin::shouldChangeSelection):
490         (FrameWin::scheduleClose):
491         (FrameWin::markMisspellingsInAdjacentWords):
492         (FrameWin::markMisspellings):
493         (FrameWin::menubarVisible):
494         (FrameWin::personalbarVisible):
495         (FrameWin::lastEventIsMouseUp):
496         (FrameWin::statusbarVisible):
497         (FrameWin::toolbarVisible):
498         (FrameWin::issueTransposeCommand):
499         (FrameWin::userAgent):
500         (FrameWin::canPaste):
501         (FrameWin::incomingReferrer):
502         (FrameWin::objectContentType):
503         (FrameWin::passSubframeEventToSubframe):
504         (FrameWin::createFrame):
505         (FrameWin::canGoBackOrForward):
506         (FrameWin::issuePasteAndMatchStyleCommand):
507         (FrameWin::createPlugin):
508         (FrameWin::generateFrameName):
509         (QTextEdit::setWritingDirection):
510         (QFontMetrics::checkSelectionPoint):
511         (GraphicsContext::GraphicsContext):
512         (QFontMetrics::isFixedPitch):
513         (FrameWin::restoreDocumentState):
514         (FrameWin::partClearedInBegin):
515         (FrameWin::createEmptyDocument):
516         (FrameWin::overrideMediaType):
517         (FrameWin::setTitle):
518         (FrameWin::handledOnloadEvents):
519         (FrameWin::markedTextRange):
520         (GraphicsContext::font):
521         (GraphicsContext::setFont):
522
523 2006-03-02  Alexey Proskuryakov  <ap@nypop.com>
524
525         Reviewed by Darin.
526
527         Changed an Objective-C forward declaration from "class" to "@class".
528         This doesn't appear to fix any problems, though.
529
530         * platform/StringImpl.h:
531
532 2006-03-01  Justin Garcia  <justin.garcia@apple.com>
533
534         Reviewed by darin
535         
536         <http://bugzilla.opendarwin.org/show_bug.cgi?id=7059>
537         TinyMCE: Select All + delete sends you Back intsead of deleting
538
539         * page/Frame.cpp:
540         (WebCore::Frame::selectFrameElementInParentIfFullySelected):
541
542 2006-03-01  David Harrison  <harrison@apple.com>
543
544         Reviewed by Justin.
545         (missed these in my earlier commit for <rdar://problem/4359736>)
546
547         * bridge/mac/WebCoreFrameBridge.h:
548         * bridge/mac/WebCoreFrameBridge.mm:
549         (-[WebCoreFrameBridge canIncreaseSelectionListLevel]):
550         (-[WebCoreFrameBridge canDecreaseSelectionListLevel]):
551         (-[WebCoreFrameBridge increaseSelectionListLevel]):
552         (-[WebCoreFrameBridge decreaseSelectionListLevel]):
553
554 2006-03-01  Eric Seidel  <eseidel@apple.com>
555
556         Reviewed by mjs.
557
558         Fix win32 build, add IntRectWin and GraphicsContextCairo stub.
559
560         * Viewer/ImageDocument.cpp:
561         * Viewer/ImageMainFrame.cpp:
562         * WebCore.vcproj/WebCore/WebCore.vcproj:
563         * platform/IntRect.h:
564         * platform/cairo/GraphicsContextCairo.cpp: Added.
565         * platform/win/TemporaryLinkStubs.cpp:
566         (GraphicsContext::drawLineForText):
567         (WebCore::GraphicsContext::fillRect):
568         (WebCore::TransferJob::TransferJob):
569         (GraphicsContext::GraphicsContext):
570         (WebCore::GraphicsContext::~GraphicsContext):
571
572 2006-02-23  David Harrison  <harrison@apple.com>
573
574         Reviewed by Justin.
575
576         <rdar://problem/4359736> Support outlining ability with lists
577
578         Added Mail SPI for list level changes.  It is SPI because it is not complete support
579         for outlining.  See <rdar://problem/4457070> "API for html lists as note outlines".
580         Additional support is to end a list when return is typed on empty list item.
581
582         * WebCore.vcproj/WebCore/WebCore.vcproj:
583         * WebCore.xcodeproj/project.pbxproj:
584         Added ModifySelectionListLevelCommand.cpp and ModifySelectionListLevelCommand.h
585         
586         * bridge/mac/WebCoreFrameBridge.h:
587         * bridge/mac/WebCoreFrameBridge.mm:
588         (-[WebCoreFrameBridge canIncreaseSelectionListLevel]):
589         (-[WebCoreFrameBridge canDecreaseSelectionListLevel]):
590         (-[WebCoreFrameBridge increaseSelectionListLevel]):
591         (-[WebCoreFrameBridge decreaseSelectionListLevel]):
592         Supply list level calls in the bridge.
593         
594         * editing/InsertParagraphSeparatorCommand.cpp:
595         (WebCore::createListItemElement):
596         New.  Creates an li.
597         
598         (WebCore::InsertParagraphSeparatorCommand::doApply):
599         - slight logic cleanup
600         - on empty list item, end the list
601         
602         * editing/ModifySelectionListLevelCommand.cpp: Added.
603         (WebCore::ModifySelectionListLevelCommand::ModifySelectionListLevelCommand):
604         (WebCore::ModifySelectionListLevelCommand::preservesTypingStyle):
605         (WebCore::ModifySelectionListLevelCommand::doApply):
606         (WebCore::ModifySelectionListLevelCommand::canIncreaseSelectionListLevel):
607         (WebCore::ModifySelectionListLevelCommand::canDecreaseSelectionListLevel):
608         (WebCore::ModifySelectionListLevelCommand::increaseSelectionListLevel):
609         (WebCore::ModifySelectionListLevelCommand::decreaseSelectionListLevel):
610         (WebCore::modifySelectionListLevel):
611         (WebCore::getStartEndListChildren):
612         (WebCore::canIncreaseListLevel):
613         (WebCore::canDecreaseListLevel):
614         (WebCore::ModifySelectionListLevelCommand::insertSiblingNodeRangeBefore):
615         (WebCore::ModifySelectionListLevelCommand::insertSiblingNodeRangeAfter):
616         (WebCore::ModifySelectionListLevelCommand::appendSiblingNodeRange):
617         (WebCore::ModifySelectionListLevelCommand::increaseListLevel):
618         (WebCore::ModifySelectionListLevelCommand::decreaseListLevel):
619         * editing/ModifySelectionListLevelCommand.h: Added.
620         New editing command for adjusting the list level.
621         
622         * editing/ReplaceSelectionCommand.cpp:
623         (WebCore::ReplaceSelectionCommand::doApply):
624         Slight logic cleanup
625
626         * editing/htmlediting.cpp:
627         (WebCore::isListElement):
628         (WebCore::enclosingListChild):
629         New helpers.
630         
631         (WebCore::isTableElement):
632         Allow caller to pass 0... return false in that case.
633         
634         * editing/htmlediting.h:
635         New helpers.
636         
637         * rendering/RenderContainer.cpp:
638         (WebCore::updateListMarkerNumbers):
639         Allow for list children that are not li nodes.  Ignore and continue rather than stopping.
640         
641         (WebCore::RenderContainer::addChild):
642         Allow for nil beforeChild, meaning "add at end".
643         
644 2006-03-01  Eric Seidel  <eseidel@apple.com>
645
646         Reviewed by justing.
647
648         Update ESelectionGranulartiy enum to use newer CamelCase styling.
649
650         * bridge/mac/WebCoreFrameBridge.mm:
651         (-[WebCoreFrameBridge alterCurrentSelection:direction:granularity:]):
652         * editing/Selection.cpp:
653         (WebCore::Selection::Selection):
654         (WebCore::Selection::validate):
655         * editing/SelectionController.cpp:
656         (WebCore::SelectionController::modifyExtendingRightForward):
657         (WebCore::SelectionController::modifyMovingRightForward):
658         (WebCore::SelectionController::modifyExtendingLeftBackward):
659         (WebCore::SelectionController::modifyMovingLeftBackward):
660         (WebCore::SelectionController::modify):
661         * editing/TypingCommand.cpp:
662         (WebCore::TypingCommand::deleteKeyPressed):
663         (WebCore::TypingCommand::forwardDeleteKeyPressed):
664         * editing/jsediting.cpp:
665         * editing/text_granularity.h:
666         (WebCore::):
667         * page/Frame.cpp:
668         (WebCore::Frame::selectClosestWordFromMouseEvent):
669         (WebCore::Frame::handleMousePressEventTripleClick):
670         (WebCore::Frame::handleMousePressEventSingleClick):
671         (WebCore::Frame::handleMouseMoveEventSelection):
672
673 2006-03-01  Alexander Kellett  <lypanov@kde.org>
674
675         Reviewed by Maciej.
676
677         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=5966
678
679         Fixes already existing test:
680           svg/W3C-SVG-1.1/coords-viewattr-02-b.svg
681
682         * kcanvas/RenderSVGImage.cpp:
683         (WebCore::RenderSVGImage::adjustRectsForAspectRatio):
684         (WebCore::RenderSVGImage::paint):
685         * kcanvas/RenderSVGImage.h:
686
687 2006-03-01  Alexey Proskuryakov  <ap@nypop.com>
688
689         Reviewed by Darin.
690
691         - http://bugzilla.opendarwin.org/show_bug.cgi?id=3812
692           XMLHttpRequest: PUT, DELETE, HEAD and all other methods but POST actually do a GET.
693
694         HEAD is currently unimplemented because of what seems to be a bug in NSURLConnection,
695         and does a GET instead.
696
697         * kwq/KWQKJobClasses.h: Add a method parameter to TransferJob.
698         * kwq/KWQKJobClasses.mm:
699         (WebCore::TransferJobPrivate::TransferJobPrivate):
700         (WebCore::TransferJob::TransferJob):
701         (WebCore::TransferJob::method):
702         * bridge/mac/WebCoreFrameBridge.h: URL loading functions now take a method parameter.
703         * dom/xml_tokenizer.cpp:
704         (WebCore::openFunc):
705         * khtml/xsl/xslt_processorimpl.cpp:
706         (DOM::docLoaderFunc):
707         * kwq/KWQLoader.mm:
708         (KWQServeRequest):
709         (KWQServeSynchronousRequest):
710         * loader/loader.cpp:
711         (WebCore::Loader::servePendingRequests):
712         * page/Frame.cpp:
713         (WebCore::Frame::didOpenURL):
714         * xml/xmlhttprequest.cpp:
715         (WebCore::XMLHttpRequest::send): Honor the method passed in open().
716         * khtml/ecma/JSXMLHttpRequest.cpp:
717         (KJS::JSXMLHttpRequestProtoFunc::callAsFunction): Don't serialize null as "null".
718
719 2006-03-01  Timothy Hatcher  <timothy@apple.com>
720
721         Reviewed by Darin.
722         
723         http://bugzilla.opendarwin.org/show_bug.cgi?id=7450
724         elementAtPoint is expensive and should return a smart dictionary
725         
726         <rdar://problem/2952761> moving the mouse around eats more CPU than I would expect (7450)
727
728         Support for WebKit. This removes the old elementAtPoint: on the bridge.
729         WebKit now uses the bridge method getInnerNonSharedNode:innerNode:URLElement:atPoint:
730
731         * WebCore.exp: removes the WebCore* dictionary keys
732         * bindings/objc/DOM.mm:
733         (-[DOMElement image]): new method to get an NSImage if the element has an image renderer
734         * bindings/objc/DOMHTML.mm:
735         (-[DOMHTMLElement titleDisplayString]): new method that returns the title after doing the backslash as currency symbol conversion
736         (-[DOMHTMLInputElement altDisplayString]): ditto for alt
737         (-[DOMHTMLImageElement altDisplayString]): ditto
738         (-[DOMHTMLAppletElement altDisplayString]): ditto
739         (-[DOMHTMLAreaElement altDisplayString]): ditto
740         (-[DOMHTMLAnchorElement absoluteLinkURL]): new method to get the absolute NSURL
741         (-[DOMHTMLAreaElement absoluteLinkURL]): ditto
742         (-[DOMHTMLLinkElement absoluteLinkURL]): ditto
743         (-[DOMHTMLInputElement absoluteImageURL]): new method to get the absolute image location as an NSURL
744         (-[DOMHTMLImageElement absoluteImageURL]): ditto
745         (-[DOMHTMLObjectElement absoluteImageURL]): ditto
746         * bindings/objc/DOMPrivate.h:
747         * bridge/mac/WebCoreFrameBridge.h:
748         * bridge/mac/WebCoreFrameBridge.mm:
749         (-[WebCoreFrameBridge getInnerNonSharedNode:innerNode:URLElement:atPoint:]):
750         (-[WebCoreFrameBridge isPointInsideSelection:]):
751         * dom/DocumentImpl.cpp:
752         (WebCore::DocumentImpl::prepareMouseEvent):
753         (WebCore::DocumentImpl::backslashAsCurrencySymbol):
754         * dom/DocumentImpl.h:
755         * rendering/render_layer.cpp:
756         (WebCore::RenderLayer::hitTest):
757         * rendering/render_object.h:
758         (WebCore::RenderObject::NodeInfo::URLElement):
759         (WebCore::RenderObject::NodeInfo::setURLElement):
760
761 2006-03-01  Mitz Pettel  <opendarwin.org@mitzpettel.com>
762
763         Test: fast/css/hover-subselector.html
764
765         Reviewed by Hyatt.
766
767         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=7327
768           REGRESSION (r12869): :hover subselector does not work in quirks mode
769
770         * css/cssstyleselector.h:
771         * css/cssstyleselector.cpp:
772         (WebCore::CSSStyleSelector::checkSelector): Pass flag to indicate sub-selector.
773         (WebCore::CSSStyleSelector::checkOneSelector): Apply the *:hover and *:active quirks only
774         when there are no sub-selectors.
775
776 2006-03-01  Maciej Stachowiak  <mjs@apple.com>
777
778         Rubber stamped by Hyatt.
779
780         - fix win32 build (and make dumprendertree run)
781
782         * kwq/KWQComboBox.h:
783         * platform/win/TemporaryLinkStubs.cpp:
784         (QTextEdit::selectionEnd):
785         (Widget::~Widget):
786         (GraphicsContext::beginTransparencyLayer):
787         (QComboBox::populate):
788         (GraphicsContext::drawConvexPolygon):
789         (QFontMetrics::selectionRectForText):
790         (GraphicsContext::setShadow):
791         (GraphicsContext::clearFocusRing):
792         (GraphicsContext::drawImageInRect):
793         (KWQFileButton::setFilename):
794         (KWQFileButton::focusPolicy):
795         (KWQFileButton::frameGeometry):
796         (QSlider::focusPolicy):
797         (WebCore::GraphicsContext::font):
798         (QTextEdit::setWritingDirection):
799         (QFontMetrics::checkSelectionPoint):
800         (QFontMetrics::isFixedPitch):
801         (WebCore::TransferJob::addMetaData):
802
803 2006-02-28  Darin Adler  <darin@apple.com>
804
805         Reviewed by Eric.
806
807         - http://bugzilla.opendarwin.org/show_bug.cgi?id=7444
808           move QPainter to platform directory and name it GraphicsContext
809
810         * platform/GraphicsContext.h: Added.
811         * platform/TextDirection.h: Added.
812         * platform/cg/GraphicsContextCG.cpp: Added.
813         * platform/mac/GraphicsContextMac.mm: Added.
814
815         * kwq/KWQPainter.h: Removed.
816         * kwq/KWQPainter.mm: Removed.
817         * ForwardingHeaders/qpainter.h: Removed.
818
819         * WebCore.xcodeproj/project.pbxproj: Updated for moved files.
820         * WebCore.vcproj/WebCore/WebCore.vcproj: Updated for moved files.
821         * platform/win/TemporaryLinkStubs.cpp: Updated.
822
823         * bridge/mac/MacFrame.mm: (WebCore::MacFrame::setDisplaysWithFocusAttributes):
824         * bridge/mac/WebCoreFrameBridge.mm: (-[WebCoreFrameBridge drawRect:]):
825         * editing/SelectionController.h:
826         * editing/SelectionController.cpp: (WebCore::SelectionController::paintCaret):
827         * kcanvas/KCanvasResources.cpp: (WebCore::KCanvasMarker::draw):
828         * khtml/ecma/kjs_html.cpp:
829         (KJS::KJS::Context2DFunction::callAsFunction):
830         (KJS::Context2D::putValueProperty):
831         (KJS::drawPattern):
832         * page/Frame.h:
833         * page/Frame.cpp:
834         (WebCore::Frame::paintCaret):
835         (WebCore::Frame::paintDragCaret):
836         (WebCore::Frame::paint):
837         (WebCore::Frame::adjustPageHeight):
838         * page/FrameView.h:
839         * platform/Font.h:
840         * platform/Font.cpp:
841         (WebCore::Font::selectionRectForText):
842         (WebCore::Font::drawHighlightForText):
843         (WebCore::Font::drawText):
844         * platform/Widget.h:
845         * platform/mac/WidgetMac.mm: (WebCore::Widget::paint):
846         * rendering/InlineTextBox.h:
847         * rendering/InlineTextBox.cpp:
848         (WebCore::InlineTextBox::paint):
849         (WebCore::InlineTextBox::paintSelection):
850         (WebCore::InlineTextBox::paintMarkedTextBackground):
851         (WebCore::InlineTextBox::paintDecoration):
852         (WebCore::InlineTextBox::paintSpellingMarker):
853         (WebCore::InlineTextBox::paintTextMatchMarker):
854         (WebCore::InlineTextBox::paintAllMarkersOfType):
855         (WebCore::InlineTextBox::paintMarkedTextUnderline):
856         (WebCore::InlineTextBox::offsetForPosition):
857         * rendering/RenderTableCell.cpp:
858         (WebCore::outlineBox):
859         (WebCore::RenderTableCell::paintCollapsedBorder):
860         (WebCore::RenderTableCell::paintBoxDecorations):
861         * rendering/RenderTableCell.h:
862         * rendering/render_box.cpp:
863         (WebCore::RenderBox::paintBackgrounds):
864         (WebCore::RenderBox::paintBackground):
865         (WebCore::RenderBox::paintBackgroundExtended):
866         (WebCore::RenderBox::outlineBox):
867         * rendering/render_box.h:
868         * rendering/render_button.cpp:
869         (WebCore::RenderButton::RenderButton):
870         (WebCore::RenderButton::paintObject):
871         * rendering/render_button.h:
872         (WebCore::RenderButton::removeLeftoverAnonymousBoxes):
873         * rendering/render_canvas.cpp:
874         * rendering/render_canvasimage.cpp:
875         (WebCore::RenderCanvasImage::paint):
876         * rendering/render_flow.cpp:
877         (WebCore::RenderFlow::addFocusRingRects):
878         (WebCore::RenderFlow::paintFocusRing):
879         (WebCore::RenderFlow::paintOutlines):
880         (WebCore::RenderFlow::paintOutlineForLine):
881         * rendering/render_flow.h:
882         * rendering/render_form.cpp:
883         (WebCore::RenderLineEdit::setStyle):
884         (WebCore::RenderFieldset::paintBorderMinusLegend):
885         (WebCore::RenderSelect::setWidgetWritingDirection):
886         (WebCore::RenderTextArea::setStyle):
887         * rendering/render_form.h:
888         (WebCore::RenderFieldset::renderName):
889         * rendering/render_frames.cpp:
890         (WebCore::RenderFrameSet::userResize):
891         * rendering/render_image.cpp:
892         (WebCore::RenderImage::paint):
893         * rendering/render_layer.cpp:
894         (WebCore::RenderLayer::beginTransparencyLayers):
895         (WebCore::RenderLayer::paintScrollbars):
896         (WebCore::RenderLayer::paint):
897         (WebCore::setClip):
898         (WebCore::restoreClip):
899         (WebCore::RenderLayer::paintLayer):
900         (WebCore::Marquee::direction):
901         * rendering/render_layer.h:
902         * rendering/render_line.cpp:
903         (WebCore::InlineFlowBox::paintBackgrounds):
904         (WebCore::InlineFlowBox::paintBackground):
905         (WebCore::InlineFlowBox::paintBackgroundAndBorder):
906         (WebCore::InlineFlowBox::paintDecorations):
907         (WebCore::EllipsisBox::paint):
908         * rendering/render_line.h:
909         * rendering/render_list.cpp:
910         (WebCore::RenderListMarker::paint):
911         * rendering/render_object.cpp:
912         (WebCore::RenderObject::drawBorder):
913         (WebCore::RenderObject::paintBorderImage):
914         (WebCore::RenderObject::paintBorder):
915         (WebCore::RenderObject::addFocusRingRects):
916         (WebCore::RenderObject::paintOutline):
917         (WebCore::RenderObject::selectionColor):
918         * rendering/render_object.h:
919         (WebCore::RenderObject::element):
920         (WebCore::RenderObject::document):
921         (WebCore::RenderObject::setNode):
922         (WebCore::RenderObject::node):
923         (WebCore::RenderObject::PaintInfo::PaintInfo):
924         (WebCore::RenderObject::paintBoxDecorations):
925         (WebCore::RenderObject::paintBackgroundExtended):
926         (WebCore::RenderObject::printBoxDecorations):
927         * rendering/render_replaced.cpp: (WebCore::RenderReplaced::selectionColor):
928         * rendering/render_replaced.h:
929         Updated to use GraphicsContext instead of QPainter.
930
931         * css/cssstyleselector.cpp: (WebCore::CSSStyleSelector::applyProperty):
932         * kwq/KWQComboBox.h:
933         * kwq/KWQComboBox.mm: (QComboBox::setWritingDirection):
934         * kwq/KWQLineEdit.h:
935         * kwq/KWQLineEdit.mm: (QLineEdit::setWritingDirection):
936         * kwq/KWQListBox.h:
937         * kwq/KWQListBox.mm: (QListBox::setWritingDirection):
938         * kwq/KWQTextEdit.h:
939         * kwq/KWQTextEdit.mm: (QTextEdit::setWritingDirection):
940         * rendering/bidi.cpp:
941         (khtml::bidiNext):
942         (khtml::bidiFirst):
943         Updated to use TextDirection instead of QPainter::TextDirection and EDirection.
944
945         * kcanvas/device/KRenderingDevice.h: Added renderingDevice here to
946         replace QPainter::renderingDevice for now.
947
948         * khtml/ecma/kjs_html.h: Fixed comments to mention GraphicsContext.
949
950         * khtml/html/html_imageimpl.h:
951         * page/FrameView.cpp:
952         * rendering/RenderBlock.cpp:
953         Added include needed since I reduced includes elsewhere.
954
955         * kwq/KWQFontMetrics.h:
956         * kwq/KWQFontMetrics.mm: (QFontMetrics::checkSelectionPoint):
957         Changed QChar* to be const QChar*.
958
959         * platform/FontDescription.h: Added include that was missing.
960         * rendering/render_theme.cpp: Ditto.
961
962         * platform/Image.h: Removed unnecessary forward declaration of QPainter.
963
964         * rendering/RenderText.h: Clean up types, use const.
965
966         * rendering/render_style.h: Removed EDirection and replaced it with TextDirection.
967
968         * kcanvas/KCanvasCreator.cpp:
969         (WebCore::KCanvasCreator::createRoundedRectangle):
970         (WebCore::KCanvasCreator::createRectangle):
971         (WebCore::KCanvasCreator::createEllipse):
972         (WebCore::KCanvasCreator::createLine):
973         * kcanvas/KCanvasPath.cpp: (WebCore::operator<<):
974         * kcanvas/KCanvasTreeDebug.cpp: (WebCore::operator<<):
975         * kcanvas/RenderForeignObject.cpp: (WebCore::RenderForeignObject::paint):
976         * kcanvas/RenderPath.cpp: (WebCore::RenderPath::paint):
977         * kcanvas/RenderSVGImage.cpp:
978         (WebCore::RenderSVGImage::paint):
979         (WebCore::RenderSVGImage::translateForAttributes):
980         * kcanvas/RenderSVGText.cpp:
981         (WebCore::RenderSVGText::paint):
982         * kcanvas/device/quartz/KCanvasFilterQuartz.mm:
983         (WebCore::KCanvasFilterQuartz::prepareFilter):
984         (WebCore::KCanvasFilterQuartz::applyFilter):
985         * kcanvas/device/quartz/KCanvasMaskerQuartz.mm:
986         (WebCore::KCanvasMaskerQuartz::applyMask):
987         * kcanvas/device/quartz/KCanvasResourcesQuartz.mm:
988         (WebCore::KCanvasContainerQuartz::paint):
989         (WebCore::KCanvasClipperQuartz::applyClip):
990         * kcanvas/device/quartz/KRenderingDeviceQuartz.mm:
991         (WebCore::KRenderingDeviceQuartz::pushContext):
992         (WebCore::KRenderingDeviceQuartz::popContext):
993         (WebCore::renderingDevice):
994         * kcanvas/device/quartz/KRenderingPaintServerGradientQuartz.mm:
995         (WebCore::KRenderingPaintServerGradientQuartz::setup):
996         (WebCore::KRenderingPaintServerGradientQuartz::renderPath):
997         (WebCore::KRenderingPaintServerGradientQuartz::teardown):
998         * ksvg2/misc/KCanvasRenderingStyle.cpp: (WebCore::sharedSolidPaintServer):
999         * ksvg2/svg/SVGAElementImpl.cpp: (SVGAElementImpl::createRenderer):
1000         * ksvg2/svg/SVGClipPathElementImpl.cpp: (SVGClipPathElementImpl::canvasResource):
1001         * ksvg2/svg/SVGFEBlendElementImpl.cpp: (SVGFEBlendElementImpl::filterEffect):
1002         * ksvg2/svg/SVGFEColorMatrixElementImpl.cpp: (SVGFEColorMatrixElementImpl::filterEffect):
1003         * ksvg2/svg/SVGFEComponentTransferElementImpl.cpp: (SVGFEComponentTransferElementImpl::filterEffect):
1004         * ksvg2/svg/SVGFECompositeElementImpl.cpp: (SVGFECompositeElementImpl::filterEffect):
1005         * ksvg2/svg/SVGFEDiffuseLightingElementImpl.cpp: (WebCore::SVGFEDiffuseLightingElementImpl::filterEffect):
1006         * ksvg2/svg/SVGFEDisplacementMapElementImpl.cpp: (SVGFEDisplacementMapElementImpl::filterEffect):
1007         * ksvg2/svg/SVGFEFloodElementImpl.cpp: (SVGFEFloodElementImpl::filterEffect):
1008         * ksvg2/svg/SVGFEGaussianBlurElementImpl.cpp: (SVGFEGaussianBlurElementImpl::filterEffect):
1009         * ksvg2/svg/SVGFEImageElementImpl.cpp: (SVGFEImageElementImpl::filterEffect):
1010         * ksvg2/svg/SVGFEMergeElementImpl.cpp: (SVGFEMergeElementImpl::filterEffect):
1011         * ksvg2/svg/SVGFEOffsetElementImpl.cpp: (SVGFEOffsetElementImpl::filterEffect):
1012         * ksvg2/svg/SVGFESpecularLightingElementImpl.cpp: (SVGFESpecularLightingElementImpl::filterEffect):
1013         * ksvg2/svg/SVGFETileElementImpl.cpp: (SVGFETileElementImpl::filterEffect):
1014         * ksvg2/svg/SVGFETurbulenceElementImpl.cpp: (SVGFETurbulenceElementImpl::filterEffect):
1015         * ksvg2/svg/SVGFilterElementImpl.cpp: (SVGFilterElementImpl::canvasResource):
1016         * ksvg2/svg/SVGGElementImpl.cpp: (SVGGElementImpl::createRenderer):
1017         * ksvg2/svg/SVGGradientElementImpl.cpp: (SVGGradientElementImpl::canvasResource):
1018         * ksvg2/svg/SVGMarkerElementImpl.cpp:
1019         (WebCore::SVGMarkerElementImpl::canvasResource):
1020         (WebCore::SVGMarkerElementImpl::createRenderer):
1021         * ksvg2/svg/SVGMaskElementImpl.cpp:
1022         (WebCore::SVGMaskElementImpl::drawMaskerContent):
1023         (WebCore::SVGMaskElementImpl::createRenderer):
1024         (WebCore::SVGMaskElementImpl::canvasResource):
1025         * ksvg2/svg/SVGPathElementImpl.cpp: (WebCore::SVGPathElementImpl::toPathData):
1026         * ksvg2/svg/SVGPatternElementImpl.cpp:
1027         (WebCore::SVGPatternElementImpl::drawPatternContentIntoTile):
1028         (WebCore::SVGPatternElementImpl::createRenderer):
1029         (WebCore::SVGPatternElementImpl::canvasResource):
1030         * ksvg2/svg/SVGPolygonElementImpl.cpp: (SVGPolygonElementImpl::toPathData):
1031         * ksvg2/svg/SVGPolylineElementImpl.cpp: (SVGPolylineElementImpl::toPathData):
1032         * ksvg2/svg/SVGSVGElementImpl.cpp: (WebCore::SVGSVGElementImpl::createRenderer):
1033         * ksvg2/svg/SVGStyledElementImpl.cpp: (WebCore::SVGStyledElementImpl::createRenderer):
1034         * ksvg2/svg/SVGSwitchElementImpl.cpp: (SVGSwitchElementImpl::createRenderer):
1035         * ksvg2/svg/SVGUseElementImpl.cpp: (SVGUseElementImpl::createRenderer):
1036         Updated to use renderingDevice instead of QPainter::renderingDevice.
1037
1038 2006-02-28  Darin Adler  <darin@apple.com>
1039
1040         - fixed part of the reason the build is broken
1041
1042         * WebCore.xcodeproj/project.pbxproj: Updated project file.
1043
1044 2006-02-28  Darin Adler  <darin@apple.com>
1045
1046         Rubber-stamped by Hyatt.
1047
1048         - moved the WebCoreXXX files from kwq to appropriate directories
1049
1050         No changes to the contents of the files.
1051
1052         * WebCore.xcodeproj/project.pbxproj: Updated project file.
1053         * bridge/mac/WebCoreCache.h: Added.
1054         * bridge/mac/WebCoreCache.mm: Added.
1055         * bridge/mac/WebCoreEncodings.h: Added.
1056         * bridge/mac/WebCoreEncodings.mm: Added.
1057         * bridge/mac/WebCoreFrameNamespaces.h: Added.
1058         * bridge/mac/WebCoreFrameNamespaces.m: Added.
1059         * bridge/mac/WebCoreFrameView.h: Added.
1060         * bridge/mac/WebCoreJavaScript.h: Added.
1061         * bridge/mac/WebCoreJavaScript.mm: Added.
1062         * bridge/mac/WebCoreKeyboardAccess.h: Added.
1063         * bridge/mac/WebCoreResourceLoader.h: Added.
1064         * bridge/mac/WebCoreScriptDebugger.h: Added.
1065         * bridge/mac/WebCoreScriptDebugger.mm: Added.
1066         * bridge/mac/WebCoreSettings.h: Added.
1067         * bridge/mac/WebCoreSettings.mm: Added.
1068         * bridge/mac/WebCoreTextDecoder.h: Added.
1069         * bridge/mac/WebCoreTextDecoder.mm: Added.
1070         * bridge/mac/WebCoreViewFactory.h: Added.
1071         * bridge/mac/WebCoreViewFactory.m: Added.
1072         * bridge/mac/WebDashboardRegion.h: Added.
1073         * bridge/mac/WebDashboardRegion.m: Added.
1074         * kwq/WebCoreCache.h: Removed.
1075         * kwq/WebCoreCache.mm: Removed.
1076         * kwq/WebCoreCookieAdapter.h: Removed.
1077         * kwq/WebCoreCookieAdapter.m: Removed.
1078         * kwq/WebCoreEncodings.h: Removed.
1079         * kwq/WebCoreEncodings.mm: Removed.
1080         * kwq/WebCoreFrameNamespaces.h: Removed.
1081         * kwq/WebCoreFrameNamespaces.m: Removed.
1082         * kwq/WebCoreFrameView.h: Removed.
1083         * kwq/WebCoreGraphicsBridge.h: Removed.
1084         * kwq/WebCoreGraphicsBridge.m: Removed.
1085         * kwq/WebCoreHistory.h: Removed.
1086         * kwq/WebCoreHistory.m: Removed.
1087         * kwq/WebCoreImageRenderer.h: Removed.
1088         * kwq/WebCoreImageRendererFactory.h: Removed.
1089         * kwq/WebCoreImageRendererFactory.m: Removed.
1090         * kwq/WebCoreJavaScript.h: Removed.
1091         * kwq/WebCoreJavaScript.mm: Removed.
1092         * kwq/WebCoreKeyGenerator.h: Removed.
1093         * kwq/WebCoreKeyGenerator.m: Removed.
1094         * kwq/WebCoreKeyboardAccess.h: Removed.
1095         * kwq/WebCoreResourceLoader.h: Removed.
1096         * kwq/WebCoreScriptDebugger.h: Removed.
1097         * kwq/WebCoreScriptDebugger.mm: Removed.
1098         * kwq/WebCoreSettings.h: Removed.
1099         * kwq/WebCoreSettings.mm: Removed.
1100         * kwq/WebCoreTextDecoder.h: Removed.
1101         * kwq/WebCoreTextDecoder.mm: Removed.
1102         * kwq/WebCoreTextRenderer.h: Removed.
1103         * kwq/WebCoreTextRendererFactory.h: Removed.
1104         * kwq/WebCoreTextRendererFactory.mm: Removed.
1105         * kwq/WebCoreView.h: Removed.
1106         * kwq/WebCoreView.m: Removed.
1107         * kwq/WebCoreViewFactory.h: Removed.
1108         * kwq/WebCoreViewFactory.m: Removed.
1109         * kwq/WebDashboardRegion.h: Removed.
1110         * kwq/WebDashboardRegion.m: Removed.
1111         * platform/mac/WebCoreCookieAdapter.h: Added.
1112         * platform/mac/WebCoreCookieAdapter.m: Added.
1113         * platform/mac/WebCoreGraphicsBridge.h: Added.
1114         * platform/mac/WebCoreGraphicsBridge.m: Added.
1115         * platform/mac/WebCoreHistory.h: Added.
1116         * platform/mac/WebCoreHistory.m: Added.
1117         * platform/mac/WebCoreImageRenderer.h: Added.
1118         * platform/mac/WebCoreImageRendererFactory.h: Added.
1119         * platform/mac/WebCoreImageRendererFactory.m: Added.
1120         * platform/mac/WebCoreKeyGenerator.h: Added.
1121         * platform/mac/WebCoreKeyGenerator.m: Added.
1122         * platform/mac/WebCoreTextRenderer.h: Added.
1123         * platform/mac/WebCoreTextRendererFactory.h: Added.
1124         * platform/mac/WebCoreTextRendererFactory.mm: Added.
1125         * platform/mac/WebCoreView.h: Added.
1126         * platform/mac/WebCoreView.m: Added.
1127
1128 2006-02-28  David Hyatt  <hyatt@apple.com>
1129
1130         Fold QFont into Font and eliminate QFont completely.
1131
1132         Reviewed by eric
1133
1134         * ForwardingHeaders/qfont.h: Removed.
1135         * WebCore.xcodeproj/project.pbxproj:
1136         * bindings/objc/DOM.mm:
1137         (-[DOMElement _font]):
1138         * bridge/mac/MacFrame.mm:
1139         (WebCore::MacFrame::attributedString):
1140         (WebCore::MacFrame::fontForSelection):
1141         (WebCore::MacFrame::fontAttributesForSelectionStart):
1142         * bridge/mac/WebCoreFrameBridge.mm:
1143         * css/css_computedstyle.cpp:
1144         (WebCore::CSSComputedStyleDeclarationImpl::getPropertyCSSValue):
1145         * css/cssstyleselector.cpp:
1146         (WebCore::CSSStyleSelector::applyProperty):
1147         * dom/DocumentImpl.cpp:
1148         (WebCore::DocumentImpl::recalcStyle):
1149         * ksvg2/svg/SVGLengthImpl.cpp:
1150         (SVGLengthImpl::updateValue):
1151         * kwq/KWQAccObject.mm:
1152         (AXAttributeStringSetStyle):
1153         * kwq/KWQComboBox.h:
1154         * kwq/KWQComboBox.mm:
1155         (QComboBox::setFont):
1156         * kwq/KWQFont.h: Removed.
1157         * kwq/KWQFont.mm: Removed.
1158         * kwq/KWQFontMetrics.h:
1159         * kwq/KWQFontMetrics.mm:
1160         (QFontMetricsPrivate::QFontMetricsPrivate):
1161         (QFontMetricsPrivate::~QFontMetricsPrivate):
1162         (QFontMetricsPrivate::getRenderer):
1163         (QFontMetricsPrivate::fontDescription):
1164         (QFontMetricsPrivate::setFontDescription):
1165         (QFontMetricsPrivate::getWebCoreFont):
1166         (QFontMetricsPrivate::isFixedPitch):
1167         (QFontMetricsPrivate::determinePitch):
1168         (QFontMetrics::QFontMetrics):
1169         (QFontMetrics::setFontDescription):
1170         (QFontMetrics::width):
1171         (QFontMetrics::floatWidth):
1172         (QFontMetrics::selectionRectForText):
1173         (QFontMetrics::checkSelectionPoint):
1174         (QFontMetrics::getWebCoreFont):
1175         (QFontMetrics::isFixedPitch):
1176         * kwq/KWQKHTMLSettings.h:
1177         * kwq/KWQLineEdit.h:
1178         * kwq/KWQLineEdit.mm:
1179         (-[NSSearchField _addStringToRecentSearches:]):
1180         (QLineEdit::setFont):
1181         * kwq/KWQListBox.h:
1182         * kwq/KWQListBox.mm:
1183         (QListBox::sizeForNumberOfLines):
1184         (QListBox::setFont):
1185         (-[KWQTableView drawRow:clipRect:]):
1186         * kwq/KWQPainter.h:
1187         * kwq/KWQPainter.mm:
1188         (WebCore::QPainter::font):
1189         (WebCore::QPainter::setFont):
1190         (WebCore::QPainter::fontMetrics):
1191         (WebCore::QPainter::_updateRenderer):
1192         (WebCore::QPainter::drawText):
1193         (WebCore::QPainter::drawHighlightForText):
1194         * kwq/KWQSlider.h:
1195         * kwq/KWQSlider.mm:
1196         (QSlider::setFont):
1197         * kwq/KWQTextEdit.h:
1198         * kwq/KWQTextEdit.mm:
1199         (QTextEdit::setFont):
1200         * platform/Font.cpp:
1201         (khtml::Font::update):
1202         * platform/Font.h:
1203         (WebCore::):
1204         (WebCore::Font::m_wordSpacing):
1205         (WebCore::Font::Font):
1206         (WebCore::Font::operator==):
1207         (WebCore::Font::operator!=):
1208         (WebCore::Font::fontMetrics):
1209         (WebCore::Font::pixelSize):
1210         (WebCore::Font::size):
1211         (WebCore::Font::letterSpacing):
1212         (WebCore::Font::setWordSpacing):
1213         (WebCore::Font::setLetterSpacing):
1214         (WebCore::Font::isFixedPitch):
1215         (WebCore::Font::isPrinterFont):
1216         (WebCore::Font::firstFamily):
1217         (WebCore::Font::family):
1218         (WebCore::Font::italic):
1219         (WebCore::Font::weight):
1220         (WebCore::Font::getNSFamily):
1221         (WebCore::Font::getNSFont):
1222         (WebCore::Font::getWebCoreFont):
1223         * platform/FontDescription.h:
1224         (WebCore::FontDescription::FontDescription):
1225         * platform/FontFamily.h:
1226         * platform/Widget.h:
1227         * platform/mac/WidgetMac.mm:
1228         (WebCore::Widget::font):
1229         (WebCore::Widget::setFont):
1230         * rendering/InlineTextBox.cpp:
1231         (WebCore::InlineTextBox::selectionRect):
1232         (WebCore::InlineTextBox::paint):
1233         (WebCore::InlineTextBox::positionForOffset):
1234         * rendering/RenderBlock.cpp:
1235         (WebCore::stripTrailingSpace):
1236         * rendering/RenderText.cpp:
1237         (WebCore::RenderText::cacheWidths):
1238         (WebCore::RenderText::trimmedMinMaxWidth):
1239         (WebCore::RenderText::calcMinMaxWidth):
1240         (WebCore::RenderText::font):
1241         (WebCore::RenderText::width):
1242         * rendering/RenderText.h:
1243         * rendering/bidi.cpp:
1244         (khtml::RenderBlock::computeHorizontalPositionsForLine):
1245         (khtml::RenderBlock::findNextLineBreak):
1246         * rendering/render_br.cpp:
1247         (WebCore::RenderBR::lineHeight):
1248         * rendering/render_flow.cpp:
1249         (WebCore::RenderFlow::lineHeight):
1250         * rendering/render_form.cpp:
1251         (WebCore::RenderFormElement::setStyle):
1252         (WebCore::RenderFormElement::addIntrinsicMarginsIfAllowed):
1253         * rendering/render_image.cpp:
1254         (WebCore::RenderImage::paint):
1255         * rendering/render_line.cpp:
1256         (WebCore::InlineFlowBox::placeBoxesHorizontally):
1257         (WebCore::InlineFlowBox::paintDecorations):
1258         (WebCore::EllipsisBox::paint):
1259         * rendering/render_list.cpp:
1260         (RenderListMarker::paint):
1261         * rendering/render_object.cpp:
1262         (WebCore::RenderObject::getVerticalPosition):
1263         (WebCore::RenderObject::lineHeight):
1264         * rendering/render_object.h:
1265         (WebCore::RenderObject::font):
1266         * rendering/render_replaced.cpp:
1267         (WebCore::RenderWidget::setStyle):
1268         * rendering/render_style.h:
1269         (khtml::RenderStyle::fontSize):
1270         (khtml::RenderStyle::fontMetrics):
1271         (khtml::RenderStyle::wordSpacing):
1272         (khtml::RenderStyle::letterSpacing):
1273         (khtml::RenderStyle::setFontDescription):
1274         (khtml::RenderStyle::setWordSpacing):
1275         (khtml::RenderStyle::setLetterSpacing):
1276
1277 2006-02-28  Darin Adler  <darin@apple.com>
1278
1279         Reviewed by Adele.
1280
1281         - remove obsolete WebCoreScrollView class
1282
1283         * WebCore.exp: Remove WebCoreScrollView class name.
1284
1285         * kwq/WebCoreScrollView.h: Removed.
1286         * kwq/WebCoreScrollView.m: Removed.
1287         * WebCore.xcodeproj/project.pbxproj: Remove WebCoreScrollView source files.
1288
1289         * kwq/KWQListBox.mm: (-[KWQListBoxScrollView autoforwardsScrollWheelEvents]): Added.
1290         * kwq/KWQTextArea.h: Change base class to NSScrollView instead of WebCoreScrollView.
1291         * kwq/KWQTextArea.mm: (-[KWQTextAreaTextView autoforwardsScrollWheelEvents]): Ditto.
1292
1293 2006-02-28  Eric Seidel  <eseidel@apple.com>
1294
1295         Reviewed by mjs.
1296
1297         Fix spacing/style on several of the stubs.
1298         Reorganize stubs, separating empty stubs.
1299         Remove the abort from certain stubs blocking DRT.
1300         Add a virtual setView call to Frame baseclass.
1301
1302         * bridge/mac/MacFrame.h: mark setView virtual
1303         * dom/DocumentImpl.cpp:
1304         (WebCore::DocumentImpl::attach): remove no-renderer hack
1305         * page/Frame.cpp:
1306         (WebCore::Frame::view): fix spacing
1307         (WebCore::Frame::setView): added.
1308         * page/Frame.h:
1309         * platform/win/TemporaryLinkStubs.cpp:
1310         (notImplemented): make break directly into debugger.
1311         Moved, modified several other stubs not mentioned here.
1312
1313 2006-02-28  Justin Garcia  <justin.garcia@apple.com>
1314
1315         Reviewed by mjs
1316         
1317         <http://bugzilla.opendarwin.org/show_bug.cgi?id=6647>
1318         TinyMCE: document.execCommand("insertHTML", ...) unimplemented
1319
1320         * editing/jsediting.cpp:
1321
1322 2006-02-28  Maciej Stachowiak  <mjs@apple.com>
1323
1324         Reviewed by Darin.
1325
1326         - make win32 DumpRenderTree run without crashing
1327         http://bugzilla.opendarwin.org/show_bug.cgi?id=7511
1328
1329         * WebCore.vcproj/WebCore/WebCore.vcproj:
1330         * bridge/win/BrowserExtensionWin.h: Added.
1331         * bridge/win/FrameWin.cpp:
1332         (WebCore::FrameWin::FrameWin): Initialize browser
1333         extension and settings.
1334         * dom/DocumentImpl.cpp:
1335         (WebCore::DocumentImpl::attach): Don't create renderers 
1336         for now.
1337         * dom/EventNames.cpp:
1338         (WebCore::EventNames::init): use placement new even when
1339         not avoiding static constructors.
1340         * khtml/html/htmlnames.cpp:
1341         (WebCore::HTMLNames::init): ditto
1342         * dom/QualifiedName.cpp:
1343         (WebCore::QualifiedName::init): ditto
1344         * dom/QualifiedName.h:
1345         (WebCore::QualifiedName::QualifiedName): Added default
1346         constructor but only in ifdef.
1347         * page/Frame.h:
1348         * platform/AtomicString.cpp:
1349         (WebCore::AtomicString::init): use placement new even when
1350         not avoiding static constructors
1351         * platform/StaticConstructors.h: don't initialize when
1352         not avoiding static constructors, just default construct
1353         and let initialization happen normally
1354         * platform/win/TemporaryLinkStubs.cpp: Stub out some more things
1355         (Cursor::~Cursor):
1356         (QFont::~QFont):
1357         (QFontMetrics::~QFontMetrics):
1358         (WebCore::FrameWin::restoreDocumentState):
1359         (WebCore::FrameWin::partClearedInBegin):
1360         (WebCore::FrameWin::createEmptyDocument):
1361         (WebCore::BrowserExtensionWin::getHistoryLength):
1362         (WebCore::BrowserExtensionWin::canRunModal):
1363         (WebCore::BrowserExtensionWin::openURLNotify):
1364         (WebCore::BrowserExtensionWin::canRunModalNow):
1365         (WebCore::BrowserExtensionWin::runModal):
1366         (WebCore::BrowserExtensionWin::goBackOrForward):
1367
1368 2006-02-27  Eric Seidel  <eseidel@apple.com>
1369
1370         Reviewed by mjs.
1371
1372         Remove abort() from constructors to allow DRT to run.
1373
1374         * platform/win/TemporaryLinkStubs.cpp:
1375         (QFont::QFont):
1376         (QFontMetrics::QFontMetrics):
1377
1378 2006-02-27  Justin Garcia  <justin.garcia@apple.com>
1379
1380         Reviewed by darin
1381         
1382         <http://bugzilla.opendarwin.org/show_bug.cgi?id=6893> 
1383         REGRESSION: Major bug with TinyMCE, no value submitted from textarea
1384         <rdar://problem/3465857> value from textarea form field inside of hidden div isn't submitted
1385         <rdar://problem/3968059> Textarea with hard-wrap: pre-filled text doesn't get hard-wrapped
1386         
1387         Canonicalize line endings in textareas to avoid the workarounds that were a source of bugs,
1388         Also call textWithHardLineWraps inside appendFormData (and nowhere else) if wrap="hard".
1389
1390         * khtml/html/HTMLTextAreaElementImpl.cpp:
1391         (WebCore::HTMLTextAreaElementImpl::HTMLTextAreaElementImpl):
1392         (WebCore::HTMLTextAreaElementImpl::select):
1393         (WebCore::HTMLTextAreaElementImpl::appendFormData):
1394         (WebCore::HTMLTextAreaElementImpl::rendererWillBeDestroyed):
1395         (WebCore::HTMLTextAreaElementImpl::updateValue):
1396         (WebCore::HTMLTextAreaElementImpl::value):
1397         (WebCore::HTMLTextAreaElementImpl::setValue):
1398         (WebCore::HTMLTextAreaElementImpl::defaultValue):
1399         * khtml/html/HTMLTextAreaElementImpl.h:
1400         (DOM::HTMLTextAreaElementImpl::invalidateValue):
1401         * kwq/KWQTextArea.h:
1402         * kwq/KWQTextArea.mm:
1403         (-[KWQTextAreaTextView textDidChange:]):
1404         (-[KWQTextAreaTextView text]):
1405         (-[KWQTextAreaTextView textWithHardLineBreaks]):
1406         (-[KWQTextAreaTextView setSelectedRange:]):
1407         (-[KWQTextAreaTextView selectedRange]):
1408         (-[KWQTextAreaTextView getCursorPositionAsIndex:inParagraph:]):
1409         (RangeOfParagraph):
1410         (-[KWQTextAreaTextView textView:shouldChangeTextInRange:replacementString:]):
1411         * rendering/render_form.cpp:
1412         (WebCore::RenderTextArea::destroy):
1413         (WebCore::RenderTextArea::updateFromElement):
1414         (WebCore::RenderTextArea::text):
1415         (WebCore::RenderTextArea::textWithHardLineBreaks):
1416         * rendering/render_form.h:
1417
1418 2006-02-27  Eric Seidel  <eseidel@apple.com>
1419
1420         Reviewed by darin.
1421
1422         Copy missing dlls to build directory.
1423
1424         * Viewer.cpp: fix line endings
1425         * Viewer/ImageView.cpp: fix line endings
1426         * Viewer/stdafx.cpp: fix line endings
1427         * WebCore.vcproj/WebCore/build-generated-files.sh:
1428
1429 2006-02-27  Mitz Pettel  <opendarwin.org@mitzpettel.com>
1430
1431         Test: added to fast/dom/css-selectorText.html
1432
1433         Reviewed by Darin.
1434
1435         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=7338
1436           Incorrect selectorText for multiple subselectors.
1437
1438         * css/css_base.cpp:
1439         (CSSSelector::selectorText): Iterate over subselectors
1440
1441 2006-02-27  Maciej Stachowiak  <mjs@apple.com>
1442
1443         Reviewed by Darin.
1444
1445         - write a portable ICU version of TextEncoding::fromUnicode for use on win32
1446
1447         * platform/StreamingTextDecoder.h:
1448         * platform/TextEncoding.cpp:
1449         (WebCore::TextEncoding::fromUnicode): added
1450         (WebCore::getConverter): helper
1451         (WebCore::cacheConverter): ditto
1452         (WebCore::effectiveEncoding): ditto
1453         * platform/mac/TextEncodingMac.cpp: Add comment
1454         * platform/win/TemporaryLinkStubs.cpp:
1455         (WebCore::TextEncoding::fromUnicode): remove
1456
1457 2006-02-27  Mitz Pettel  <opendarwin.org@mitzpettel.com>
1458
1459         Test: fast/text/in-rendered-text-rtl.html
1460
1461         Reviewed by Darin.
1462
1463         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=7433
1464           REGRESSION (r12789): Second RTL text run on a line cannot be selected
1465
1466         * dom/dom_position.cpp:
1467         (WebCore::Position::inRenderedText): If the RenderText contains
1468         reversed text, the text boxes are not necessarily ordered by start
1469         position, so iterate through all of them.
1470         (WebCore::Position::isRenderedCharacter): Ditto.
1471
1472 2006-02-27  David Kilzer  <ddkilzer@kilzer.net>
1473
1474         Reviewed by Darin.
1475
1476         - Fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=7321
1477         REGRESSION: style tag in body causes two head elements to appear in the DOM
1478
1479         * khtml/html/htmlparser.cpp: Handle the head node like form and map nodes.
1480         (WebCore::HTMLParser::parseToken):
1481         (WebCore::HTMLParser::headCreateErrorCheck):
1482
1483 2006-02-27  Eric Seidel  <eseidel@apple.com>
1484
1485         Reviewed by darin.
1486
1487         Add stub to make DRT link.
1488         Make WebCore copy libxml.dll into build directory when building.
1489
1490         * WebCore.vcproj/WebCore/build-generated-files.sh:
1491         * platform/win/TemporaryLinkStubs.cpp:
1492         (WebCore::TextEncoding::fromUnicode):
1493
1494 2006-02-27  Darin Adler  <darin@apple.com>
1495
1496         Reviewed by Eric.
1497
1498         - fix regression in layout tests
1499
1500         * dom/dom_elementimpl.cpp: (WebCore::StyledElementImpl::addCSSLength):
1501         Fix some code that was not properly truncating. I broke it in my
1502         string change this morning. 
1503
1504 2006-02-27  Maciej Stachowiak  <mjs@apple.com>
1505
1506         Rubber stamped by Eric.
1507
1508         - add stubs for FrameWin overrides of pure virtual Frame methods
1509
1510         * platform/win/TemporaryLinkStubs.cpp:
1511         (WebCore::FrameWin::respondToChangedContents):
1512         (WebCore::FrameWin::unfocusWindow):
1513         (WebCore::FrameWin::locationbarVisible):
1514         (WebCore::FrameWin::respondToChangedSelection):
1515         (WebCore::FrameWin::clearUndoRedoOperations):
1516         (WebCore::FrameWin::issueRedoCommand):
1517         (WebCore::FrameWin::canRedo):
1518         (WebCore::FrameWin::restoreDocumentState):
1519         (WebCore::FrameWin::canUndo):
1520         (WebCore::FrameWin::overrideMediaType):
1521         (WebCore::FrameWin::saveDocumentState):
1522         (WebCore::FrameWin::print):
1523         (WebCore::FrameWin::issueCutCommand):
1524         (WebCore::FrameWin::issueCopyCommand):
1525         (WebCore::FrameWin::partClearedInBegin):
1526         (WebCore::FrameWin::issueUndoCommand):
1527         (WebCore::FrameWin::clearRecordedFormValues):
1528         (WebCore::FrameWin::issuePasteCommand):
1529         (WebCore::FrameWin::markedTextRange):
1530         (WebCore::FrameWin::shouldChangeSelection):
1531         (WebCore::FrameWin::scheduleClose):
1532         (WebCore::FrameWin::menubarVisible):
1533         (WebCore::FrameWin::personalbarVisible):
1534         (WebCore::FrameWin::createEmptyDocument):
1535         (WebCore::FrameWin::lastEventIsMouseUp):
1536         (WebCore::FrameWin::statusbarVisible):
1537         (WebCore::FrameWin::toolbarVisible):
1538         (WebCore::FrameWin::issueTransposeCommand):
1539         (WebCore::FrameWin::userAgent):
1540         (WebCore::FrameWin::canPaste):
1541         (WebCore::FrameWin::incomingReferrer):
1542         (WebCore::FrameWin::canGoBackOrForward):
1543         (WebCore::FrameWin::issuePasteAndMatchStyleCommand):
1544         (WebCore::FrameWin::handledOnloadEvents):
1545         (WebCore::FrameWin::generateFrameName):
1546
1547 2006-02-27  Eric Seidel  <eseidel@apple.com>
1548
1549         Reviewed by mjs.
1550
1551         Add constructor and destructor. 
1552
1553         * bridge/win/FrameWin.cpp:
1554         (WebCore::FrameWin::FrameWin):
1555         (WebCore::FrameWin::~FrameWin):
1556
1557 2006-02-27  Maciej Stachowiak  <mjs@apple.com>
1558
1559         Rubber stamped by Eric (sorta).
1560
1561         - add return values where needed
1562
1563         * platform/win/TemporaryLinkStubs.cpp:
1564         (KWQServeRequest):
1565         (KWQServeSynchronousRequest):
1566
1567 2006-02-27  Eric Seidel  <eseidel@apple.com>
1568
1569         Reviewed by mjs.
1570
1571         Add a couple more stubs to make Win32 link.
1572
1573         * platform/win/TemporaryLinkStubs.cpp:
1574         (KWQServeSynchronousRequest):
1575         (WebCore::FrameView::topLevelWidget):
1576
1577 2006-02-27  Eric Seidel  <eseidel@apple.com>
1578
1579         Reviewed by mjs.
1580
1581         Move mac-specific logging logic up into WebCore (from JavaScriptCore).
1582         Remove KWQ prefixes from default log channels.
1583         http://bugzilla.opendarwin.org/show_bug.cgi?id=7503
1584
1585         * bridge/mac/WebCorePageBridge.mm:
1586         (initializeLogChannel):
1587         (initializeLoggingChannelsIfNecessary):
1588         (-[WebCorePageBridge init]):
1589         * page/Frame.h:
1590         * platform/Logging.cpp:
1591         * platform/Logging.h:
1592
1593 2006-02-27  Darin Adler  <darin@apple.com>
1594
1595         Reviewed by Maciej.
1596
1597         - fix <rdar://problem/4104575> hang due to slow saveDocumentState method
1598
1599         * bridge/mac/WebCoreFrameBridge.mm: (-[WebCoreFrameBridge saveDocumentState]):
1600         Change code that iterates a QStringList with indices to use iterator instead.
1601
1602 2006-02-27  Maciej Stachowiak  <mjs@apple.com>
1603
1604         Reviewed by Eric.
1605
1606         - portable version of QString::utf8
1607
1608         * platform/QString.cpp:
1609         (QString::utf8): moved here, rewritten to use TextCodec
1610         * platform/mac/QStringMac.mm:
1611         (QString::utf8): removed from here
1612
1613 2006-02-27  Eric Seidel  <eseidel@apple.com>
1614
1615         Rubber-stamped by mjs.
1616
1617         Fix FrameWin.h to use consistant line endings.
1618         Fix TemporaryLinkStubs to better match style guidelines.
1619
1620         * bridge/win/FrameWin.h:
1621         (WebCore::Win):
1622         * platform/win/TemporaryLinkStubs.cpp:
1623         (QLineEdit::selectAll):
1624         (QPainter::save):
1625         (Widget::enableFlushDrawing):
1626         (QPainter::drawHighlightForText):
1627         (QFont::setPrinterFont):
1628         (QTextEdit::textWithHardLineBreaks):
1629         (Widget::mapFromGlobal):
1630         (QPainter::addClip):
1631         (QLineEdit::cursorPosition):
1632         (QPainter::setPen):
1633         (QPainter::selectedTextBackgroundColor):
1634         (QPainter::fontMetrics):
1635         (Widget::show):
1636         (QFont::setItalic):
1637         (QSlider::setValue):
1638         (QLineEdit::addSearchResult):
1639         (KWQFileButton::click):
1640         (QLineEdit::setWritingDirection):
1641         (QPainter::drawFocusRing):
1642         (KWQFileButton::sizeForCharacterWidth):
1643         (QTextEdit::sizeWithColumnsAndRows):
1644         (QComboBox::clear):
1645         (QPainter::misspellingLineThickness):
1646         (QComboBox::setFrameGeometry):
1647         (QLineEdit::maxLength):
1648         (Widget::isEnabled):
1649         (KWQServeRequest):
1650         (QTextEdit::setText):
1651         (Widget::paint):
1652         (QPainter::addRoundedRectClip):
1653         (FrameView::viewportToGlobal):
1654         (QTextEdit::selectionEnd):
1655         (QFont::determinePitch):
1656         (QTextEdit::setScrollBarModes):
1657         (QPainter::drawEllipse):
1658         (QTextEdit::setReadOnly):
1659         (QListBox::appendItem):
1660         (QLineEdit::setPlaceholderString):
1661         (Cursor::Cursor):
1662         (Widget::focusPolicy):
1663         (ScrollView::removeChild):
1664         (QTextEdit::selectAll):
1665         (QPainter::fillRect):
1666         (QPainter::endTransparencyLayer):
1667         (QFont::QFont):
1668         (ScrollView::addChild):
1669         (QTextEdit::setDisabled):
1670         (QScrollBar::scroll):
1671         (Widget::~Widget):
1672         (QPainter::xForm):
1673         (QListBox::sizeForNumberOfLines):
1674         (ScrollView::resizeContents):
1675         (QLineEdit::selectionStart):
1676         (QLineEdit::QLineEdit):
1677         (FrameView::updateBorder):
1678         (QLineEdit::hasSelectedText):
1679         (QScrollBar::QScrollBar):
1680         (QListBox::doneAppendingItems):
1681         (QTextEdit::QTextEdit):
1682         (ScrollView::inWindow):
1683         (QScrollBar::setValue):
1684         (QFont::setFirstFamily):
1685         (QTextEdit::hasSelectedText):
1686         (QTextEdit::selectionStart):
1687         (QFont::setWeight):
1688         (ScrollView::scrollXOffset):
1689         (QListBox::isSelected):
1690         (QLineEdit::setReadOnly):
1691         (QPainter::drawLineForText):
1692         (QPainter::QPainter):
1693         (QComboBox::~QComboBox):
1694         (QComboBox::focusPolicy):
1695         (QPainter::drawImageAtPoint):
1696         (QPainter::clearShadow):
1697         (QTextEdit::setLineHeight):
1698         (QScrollBar::setKnobProportion):
1699         (KWQFileButton::KWQFileButton):
1700         (QFontMetrics::boundingRect):
1701         (QTextEdit::setSelectionStart):
1702         (QPainter::beginTransparencyLayer):
1703         (QFontMetrics::setFont):
1704         (QComboBox::setFont):
1705         (Widget::frameGeometry):
1706         (QListBox::setSelected):
1707         (QPainter::addFocusRingRect):
1708         (QTextEdit::setCursorPosition):
1709         (QPainter::restore):
1710         (QFontMetrics::width):
1711         (Widget::setEnabled):
1712         (QTextEdit::setSelectionEnd):
1713         (QComboBox::populate):
1714         (ScrollView::setStaticBackground):
1715         (QPainter::font):
1716         (QTextEdit::setAlignment):
1717         (QLineEdit::setCursorPosition):
1718         (QPainter::drawText):
1719         (QPainter::pen):
1720         (KJavaAppletWidget::KJavaAppletWidget):
1721         (QFontMetrics::descent):
1722         (QListBox::QListBox):
1723         (QFontMetrics::ascent):
1724         (QLineEdit::selectedText):
1725         (Widget::setIsSelected):
1726         (QLineEdit::text):
1727         (Widget::unlockDrawingFocus):
1728         (QLineEdit::setLiveSearch):
1729         (QPainter::paintingDisabled):
1730         (QComboBox::QComboBox):
1731         (QPainter::drawConvexPolygon):
1732         (Widget::setFont):
1733         (QSlider::setMaxValue):
1734         (Widget::lockDrawingFocus):
1735         (QPainter::drawLine):
1736         (QPainter::setBrush):
1737         (QTextEdit::setSelectionRange):
1738         (ScrollView::scrollPointRecursively):
1739         (QLineEdit::sizeForCharacterWidth):
1740         (Cursor::~Cursor):
1741         (QFontMetrics::selectionRectForText):
1742         (ScrollView::suppressScrollBars):
1743         (QFontMetrics::checkSelectionPoint):
1744         (QTextEdit::getCursorPosition):
1745         (FrameView::isFrameView):
1746         (QScrollBar::setSteps):
1747         (QLineEdit::setMaxLength):
1748         (Widget::setCursor):
1749         (QLineEdit::setAutoSaveName):
1750         (QComboBox::baselinePosition):
1751         (QComboBox::appendItem):
1752         (QPainter::setShadow):
1753         (QTextEdit::setWritingDirection):
1754         (Widget::setDrawingAlpha):
1755         (QSlider::QSlider):
1756         (ScrollView::setVScrollBarMode):
1757         (QPainter::drawScaledAndTiledImage):
1758         (ScrollView::scrollYOffset):
1759         (QPainter::drawImage):
1760         (QComboBox::setCurrentItem):
1761         (QFontMetrics::height):
1762         (QComboBox::setWritingDirection):
1763         (ScrollView::setScrollBarsMode):
1764         (QComboBox::sizeHint):
1765         (QPainter::drawRect):
1766         (QFont::setPixelSize):
1767         (Widget::setFrameGeometry):
1768         (QLineEdit::setSelection):
1769         (QLineEdit::setMaxResults):
1770         (QListBox::clear):
1771         (QLineEdit::edited):
1772         (QPainter::drawTiledImage):
1773         (QPainter::clearFocusRing):
1774         (QFont::operator==):
1775         (Widget::Widget):
1776         (QTextEdit::text):
1777         (QPainter::drawImageInRect):
1778         (QPainter::setFont):
1779         (Widget::disableFlushDrawing):
1780         (QPainter::initFocusRing):
1781         (QSlider::setMinValue):
1782         (QTextEdit::setWordWrap):
1783         (QPainter::drawLineForMisspelling):
1784         (QLineEdit::setText):
1785         (QSlider::value):
1786         (QListBox::setSelectionMode):
1787         (KWQFileButton::setFilename):
1788         (QFontMetrics::QFontMetrics):
1789         (QFontMetrics::lineSpacing):
1790         (QLineEdit::setEdited):
1791         (QComboBox::frameGeometry):
1792         (QListBox::setWritingDirection):
1793         (QLineEdit::setAlignment):
1794         (ScrollView::updateContents):
1795         (QFontMetrics::floatWidth):
1796         (ScrollView::setHScrollBarMode):
1797         (KWQFileButton::focusPolicy):
1798         (QListBox::setFont):
1799         (QLineEdit::checksDescendantsForFocus):
1800         (KWQFileButton::baselinePosition):
1801         (QSlider::~QSlider):
1802         (KWQFileButton::setFrameGeometry):
1803         (QListBox::~QListBox):
1804         (KWQFileButton::frameGeometry):
1805         (QTextEdit::setFont):
1806         (QLineEdit::setFont):
1807         (KWQFileButton::~KWQFileButton):
1808         (QTextEdit::focusPolicy):
1809         (QSlider::focusPolicy):
1810         (QSlider::setFont):
1811         (QListBox::setEnabled):
1812         (QListBox::checksDescendantsForFocus):
1813         (QListBox::focusPolicy):
1814         (QLineEdit::baselinePosition):
1815         (QSlider::sizeHint):
1816         (QLineEdit::~QLineEdit):
1817         (QTextEdit::~QTextEdit):
1818         (QTextEdit::checksDescendantsForFocus):
1819         (QLineEdit::focusPolicy):
1820         (QScrollBar::~QScrollBar):
1821         (Path::operator=):
1822         (QLineEdit::setColors):
1823         (QTextEdit::setColors):
1824         (searchableIndexIntroduction):
1825         (KWQKCookieJar::setCookie):
1826         (KWQKCookieJar::cookie):
1827         (WebCore::screenRect):
1828         (WebCore::Widget::clearFocus):
1829         (WebCore::historyContains):
1830         (KWQFindNextSentenceFromIndex):
1831         (KWQFindSentenceBoundary):
1832         (KWQFindNextWordFromIndex):
1833         (KWQFindWordBoundary):
1834         (submitButtonDefaultLabel):
1835         (inputElementAltText):
1836         (resetButtonDefaultLabel):
1837         (KWQKCookieJar::cookieEnabled):
1838         (WebCore::Widget::setFocus):
1839         (WebCore::QPainter::fillRect):
1840         (WebCore::QPainter::~QPainter):
1841         (WebCore::ScrollView::viewportToContents):
1842         (WebCore::TransferJob::kill):
1843         (WebCore::TransferJob::addMetaData):
1844         (WebCore::TransferJob::queryMetaData):
1845         (WebCore::TransferJob::error):
1846         (WebCore::TransferJob::errorText):
1847         (WebCore::TransferJob::isErrorPage):
1848         (WebCore::TransferJob::TransferJob):
1849         (WebCore::Widget::hide):
1850         (KLocale::language):
1851         (PlugInInfoStore::createPluginInfoForPluginAtIndex):
1852         (WebCore::screenDepth):
1853         (QFont::italic):
1854         (QFontMetrics::operator=):
1855         (QFontMetrics::xHeight):
1856         (WebCore::usableScreenRect):
1857         (QFont::operator=):
1858         (Widget::setActiveWindow):
1859         (KWQCheckIfReloading):
1860         (WebCore::ScrollView::contentsX):
1861         (WebCore::ScrollView::contentsY):
1862         (WebCore::ScrollView::contentsHeight):
1863         (WebCore::ScrollView::contentsWidth):
1864         (WebCore::ScrollView::visibleHeight):
1865         (WebCore::ScrollView::visibleWidth):
1866         (WebCore::ScrollView::hScrollBarMode):
1867         (WebCore::ScrollView::vScrollBarMode):
1868         (KWQCheckCacheObjectStatus):
1869
1870 2006-02-27  Justin Garcia  <justin.garcia@apple.com>
1871
1872         Reviewed by darin
1873         
1874         <http://bugzilla.opendarwin.org/show_bug.cgi?id=6844>
1875         elementAtPoint returns the list when the point is over a list marker
1876         
1877         Consider the case of outside list markers in nodeAtPoint.  Had to pull 
1878         the code out of RenderListMarker::paint that computed the position/size 
1879         of the list marker.
1880
1881         Added:
1882         * fast/events/onclick-list-marker.html
1883
1884         * rendering/render_list.cpp:
1885         (RenderListItem::nodeAtPoint):
1886         (RenderListItem::getAbsoluteRepaintRect):
1887         (RenderListMarker::paint):
1888         (RenderListMarker::nodeAtPoint):
1889         (RenderListMarker::getRelativeMarkerRect):
1890         * rendering/render_list.h:
1891         * rendering/render_object.h:
1892
1893 2006-02-27  Eric Seidel  <eseidel@apple.com>
1894
1895         Reviewed by timo.
1896
1897         Fix xcode project after previous KWQLogging move.
1898
1899         * WebCore.xcodeproj/project.pbxproj:
1900         * platform/Logging.h:
1901
1902 2006-02-27  Eric Seidel  <eseidel@apple.com>
1903
1904         Reviewed by timo.
1905
1906         Move KWQLogging to platform and rename as Logging.*, fix headers.
1907         This will break the mac build, which I will fix on my next commit.
1908
1909         * WebCore.vcproj/WebCore/WebCore.vcproj:
1910         * dom/DocumentImpl.cpp:
1911         * dom/dom_position.cpp:
1912         * editing/DeleteSelectionCommand.cpp:
1913         * editing/InsertLineBreakCommand.cpp:
1914         * editing/InsertParagraphSeparatorCommand.cpp:
1915         * editing/InsertTextCommand.cpp:
1916         * editing/VisiblePosition.cpp:
1917         * editing/markup.cpp:
1918         * khtml/ecma/kjs_window.cpp:
1919         * kwq/KWQLogging.h: Removed.
1920         * kwq/KWQLogging.m: Removed.
1921         * kwq/KWQRegExp.cpp:
1922         * kwq/KWQTextStream.cpp:
1923         * platform/Logging.cpp: Added.
1924         * platform/Logging.h: Added.
1925         * platform/QString.cpp:
1926         * platform/win/TemporaryLinkStubs.cpp:
1927         (WebCore::ScrollView::vScrollBarMode):
1928         (WebCore::theme):
1929
1930 2006-02-27  Eric Seidel  <eseidel@apple.com>
1931
1932         Reviewed by hyatt.
1933
1934         Fix a bunch more link errors in the win32 build, mostly by adding stubs.
1935
1936         * WebCore.vcproj/WebCore/WebCore.vcproj: add JSXMLHttpRequest and PlugInInfoStore
1937         * WebCore.vcproj/WebCore/build-generated-files.sh: update for JSXMLHttpRequest
1938         * khtml/ecma/JSXMLHttpRequest.cpp:
1939         (KJS::JSXMLHttpRequest::getValueProperty): fix switch to compile
1940         * platform/PlugInInfoStore.h:
1941         * platform/mac/PlugInInfoStoreMac.mm:
1942         * platform/win/TemporaryLinkStubs.cpp: add a bunch of stubs.
1943         (WebCore::TransferJob::errorText):
1944         (WebCore::TransferJob::isErrorPage):
1945         (WebCore::Widget::hide):
1946         (PlugInInfoStore::createPluginInfoForPluginAtIndex):
1947         (PlugInInfoStore::pluginCount):
1948         (WebCore::refreshPlugins):
1949         (QFont::QFont):
1950         (QFont::~QFont):
1951         (QFont::italic):
1952         (QFont::weight):
1953         (QFontMetrics::QFontMetrics):
1954         (QFontMetrics::~QFontMetrics):
1955         (QFontMetrics::xHeight):
1956         (Widget::setActiveWindow):
1957         (WebCore::ScrollView::contentsX):
1958         (WebCore::ScrollView::contentsY):
1959         (WebCore::ScrollView::contentsHeight):
1960         (WebCore::ScrollView::contentsWidth):
1961         (WebCore::ScrollView::visibleHeight):
1962         (WebCore::ScrollView::visibleWidth):
1963         (WebCore::ScrollView::hScrollBarMode):
1964         (WebCore::ScrollView::vScrollBarMode):
1965
1966 2006-02-27  Eric Seidel  <eseidel@apple.com>
1967
1968         Reviewed by timo.
1969
1970         Add missing include to fix build.
1971
1972         * platform/win/TemporaryLinkStubs.cpp:
1973
1974 2006-02-27  Eric Seidel  <eseidel@apple.com>
1975
1976         Reviewed by ggaren.
1977
1978         Move KConfig to platform/PlugInInfoStore and add test.
1979         http://bugzilla.opendarwin.org/show_bug.cgi?id=7498
1980
1981         Test: plugins/plugin-javascript-access.html
1982
1983         * ForwardingHeaders/kconfig.h: Removed.
1984         * WebCore.xcodeproj/project.pbxproj:
1985         * khtml/ecma/kjs_navigator.cpp:
1986         (KJS::PluginBase::PluginBase):
1987         * khtml/ecma/kjs_window.cpp:
1988         * kwq/KWQKConfigBase.h: Removed.
1989         * kwq/KWQKConfigBase.mm: Removed.
1990         * platform/PlugInInfoStore.h: Added.
1991         * platform/mac/PlugInInfoStoreMac.mm: Added.
1992         (WebCore::PlugInInfoStore::createPluginInfoForPluginAtIndex):
1993         (WebCore::PlugInInfoStore::pluginCount):
1994         (WebCore::refreshPlugins):
1995
1996 2006-02-27  Darin Adler  <darin@apple.com>
1997
1998         Reviewed by Eric.
1999
2000         * platform/win/TemporaryLinkStubs.cpp: Added more stubs.
2001
2002 2006-02-27  Eric Seidel  <eseidel@apple.com>
2003
2004         Reviewed by darin.
2005
2006         Reworked KConfig and plugin architecture to be much more sane.
2007         This is part one.  Once this lands, I'll move it under platform with a better name.
2008
2009         Darin had several great suggested further improvements as part of:
2010         http://bugzilla.opendarwin.org/show_bug.cgi?id=7451
2011         I'll make some of those when I move this to platform.
2012
2013         No layout test possible (no way to control which plugins DRT sees).
2014
2015         * khtml/ecma/kjs_navigator.cpp:
2016         (KJS::PluginBase::PluginBase):
2017         (KJS::PluginBase::~PluginBase):
2018         (KJS::PluginBase::refresh):
2019         (KJS::Plugins::getValueProperty):
2020         (KJS::Plugins::nameGetter):
2021         (KJS::Plugins::getOwnPropertySlot):
2022         (KJS::MimeTypes::getValueProperty):
2023         (KJS::MimeTypes::nameGetter):
2024         (KJS::MimeTypes::getOwnPropertySlot):
2025         (KJS::Plugin::getValueProperty):
2026         (KJS::Plugin::nameGetter):
2027         (KJS::Plugin::getOwnPropertySlot):
2028         * khtml/ecma/kjs_navigator.h:
2029         * khtml/ecma/kjs_window.cpp:
2030         * kwq/KWQKConfigBase.h:
2031         (WebCore::PluginInfoStore::PluginInfoStore):
2032         * kwq/KWQKConfigBase.mm:
2033         (WebCore::PluginInfoStore::createPluginInfoForPluginAtIndex):
2034         (WebCore::PluginInfoStore::pluginCount):
2035         (WebCore::refreshPlugins):
2036
2037 2006-02-27  Eric Seidel  <eseidel@apple.com>
2038
2039         Reviewed by darin.
2040
2041         Build fix: cast to unsigned from size_t.
2042
2043         * platform/StreamingTextDecoder.cpp:
2044
2045 2006-02-27  Maciej Stachowiak  <mjs@apple.com>
2046  
2047         Reviewed by Darin.
2048
2049         - add Selection.cpp to win32 build
2050         http://bugzilla.opendarwin.org/show_bug.cgi?id=7490
2051
2052         * WebCore.vcproj/WebCore/WebCore.vcproj:
2053
2054 2006-02-27  Maciej Stachowiak  <mjs@apple.com>
2055
2056         - use proper header for std::min.
2057
2058         * platform/StreamingTextDecoder.cpp:
2059
2060 2006-02-27  Maciej Stachowiak  <mjs@apple.com>
2061
2062         Reviewed by Darin.
2063
2064         - add new TextEncoding stuff to win32 build
2065         http://bugzilla.opendarwin.org/show_bug.cgi?id=7491
2066
2067         * WebCore.vcproj/WebCore/WebCore.vcproj:
2068         * WebCore.vcproj/WebCore/build-generated-files.sh:
2069         * platform/StreamingTextDecoder.cpp:
2070         (WebCore::StreamingTextDecoder::convertUTF16):
2071         * platform/TextEncoding.cpp:
2072
2073 2006-02-27  Darin Adler  <darin@apple.com>
2074
2075         - try to fix Windows build
2076
2077         * WebCore.vcproj/WebCore/WebCore.vcproj: Removed rendering/font.* and added platform/Font.*.
2078
2079 2006-02-27  Darin Adler  <darin@apple.com>
2080
2081         * css/csshelper.cpp: (WebCore::parseURL): Actually, the second version was fine. Rolling
2082         back to that; apologies for the churn.
2083
2084 2006-02-27  Darin Adler  <darin@apple.com>
2085
2086         * css/csshelper.cpp: (WebCore::parseURL): Third time's the charm.
2087
2088 2006-02-27  Darin Adler  <darin@apple.com>
2089
2090         * css/csshelper.cpp: (WebCore::parseURL): Oops! Checked in fixed version of this file.
2091
2092 2006-02-27  Darin Adler  <darin@apple.com>
2093
2094         Reviewed by Maciej.
2095
2096         - http://bugzilla.opendarwin.org/show_bug.cgi?id=7486
2097           a first step in improving String/StringImpl API -- use "s" and "l" less
2098
2099         * css/csshelper.cpp: (WebCore::parseURL): Use a local buffer rather than
2100         manipulating the characters directly inside a StringImpl buffer.
2101
2102         * css/cssstyleselector.cpp: (WebCore::parseUASheet): Copy the data to parse
2103         it rather than going out of our way to hack StringImpl to not copy the data.
2104         It would be better not to copy, but this is one-time work.
2105
2106         * dom/DOMImplementationImpl.cpp: (WebCore::DOMImplementationImpl::createDocument):
2107         * dom/dom2_viewsimpl.cpp: (DOM::AbstractViewImpl::getMatchedCSSRules):
2108         * dom/dom_elementimpl.cpp: (WebCore::StyledElementImpl::addCSSLength):
2109         * dom/dom_xmlimpl.cpp: (WebCore::EntityImpl::toString):
2110         * editing/CompositeEditCommand.cpp: (WebCore::CompositeEditCommand::deleteInsignificantText):
2111         * khtml/html/htmlparser.cpp: (WebCore::HTMLParser::handleError):
2112         * platform/AtomicString.cpp:
2113         (WebCore::CStringTranslator::equal):
2114         (WebCore::QCharBufferTranslator::equal):
2115         (WebCore::AtomicString::add):
2116         * platform/StringImpl.h:
2117         (WebCore::StringImpl::unicode): Added.
2118         (KXMLCore::CaseInsensitiveHash::hash): 
2119         (KXMLCore::CaseInsensitiveHash::equal):
2120         * rendering/InlineTextBox.cpp: (khtml::InlineTextBox::selectionStartEnd):
2121         * rendering/RenderBlock.cpp: (WebCore::RenderBlock::updateFirstLetter):
2122         * rendering/RenderText.cpp:
2123         (WebCore::getCharacterBreakIterator):
2124         (WebCore::RenderText::RenderText):
2125         (WebCore::RenderText::atLineWrap):
2126         (WebCore::RenderText::allAscii):
2127         (WebCore::RenderText::widthFromCache):
2128         (WebCore::RenderText::trimmedMinMaxWidth):
2129         (WebCore::RenderText::containsOnlyWhitespace):
2130         (WebCore::RenderText::setSelectionState):
2131         (WebCore::RenderText::setTextWithOffset):
2132         (WebCore::RenderText::setText):
2133         (WebCore::RenderText::width):
2134         (WebCore::RenderText::selectionRect):
2135         (WebCore::RenderText::caretMaxOffset):
2136         * rendering/RenderTextFragment.cpp:
2137         (khtml::RenderTextFragment::RenderTextFragment):
2138         (khtml::RenderTextFragment::originalString):
2139         Use length() instead of l, unicode() instead of s, and (*x)[] instead of x->s[].
2140
2141         * editing/visible_units.cpp:
2142         (WebCore::startOfParagraph): Use const.
2143         (WebCore::endOfParagraph): Ditto.
2144
2145 2006-02-27  Maciej Stachowiak  <mjs@apple.com>
2146
2147         - fix problem with a prototype that broke win32 build
2148
2149         * platform/StreamingTextDecoder.h:
2150         (WebCore::StreamingTextDecoder::convert):
2151
2152 2006-02-27  Maciej Stachowiak  <mjs@apple.com>
2153
2154         - fix debug build (broken by my last commit)
2155
2156         * platform/StreamingTextDecoder.cpp:
2157         (WebCore::StreamingTextDecoder::createICUConverter):
2158         (WebCore::StreamingTextDecoder::convertUsingICU):
2159
2160 2006-02-26  Maciej Stachowiak  <mjs@apple.com>
2161
2162         Reviewed by Darin.
2163
2164         - platformize KWQTextCodec
2165         http://bugzilla.opendarwin.org/show_bug.cgi?id=7487
2166         
2167         I renamed QTextCodec to TextEncoding and QTextDecoder to
2168         StreamingTextDecoder. I also made a bunch of other changes to make
2169         the API more sensible.
2170         
2171         * ForwardingHeaders/qtextcodec.h: Removed.
2172         * WebCore.xcodeproj/project.pbxproj:
2173         * bridge/mac/MacFrame.mm:
2174         * bridge/mac/WebCoreFrameBridge.mm:
2175         (-[WebCoreFrameBridge URLWithAttributeString:]):
2176         (-[WebCoreFrameBridge textEncoding]):
2177         (+[WebCoreFrameBridge stringWithData:textEncoding:]):
2178         (+[WebCoreFrameBridge stringWithData:textEncodingName:]):
2179         * dom/DocumentImpl.cpp:
2180         (WebCore::DocumentImpl::completeURL):
2181         * khtml/ecma/kjs_dom.cpp:
2182         (KJS::DOMDocument::getValueProperty):
2183         (KJS::DOMDocument::putValueProperty):
2184         * khtml/html/FormDataList.cpp:
2185         (DOM::FormDataList::FormDataList):
2186         (DOM::FormDataList::appendString):
2187         * khtml/html/FormDataList.h:
2188         * khtml/html/HTMLFormElementImpl.cpp:
2189         (WebCore::HTMLFormElementImpl::HTMLFormElementImpl):
2190         (WebCore::HTMLFormElementImpl::formData):
2191         * khtml/html/htmltokenizer.cpp:
2192         * khtml/misc/decoder.cpp:
2193         (Decoder::Decoder):
2194         (Decoder::setEncodingName):
2195         (Decoder::encodingName):
2196         (Decoder::decode):
2197         * khtml/misc/decoder.h:
2198         (khtml::Decoder::):
2199         (khtml::Decoder::visuallyOrdered):
2200         (khtml::Decoder::encoding):
2201         * khtml/xsl/xslt_processorimpl.cpp:
2202         (DOM::XSLTProcessorImpl::createDocumentFromSource):
2203         * kwq/KWQCharsets.cpp: Removed.
2204         * kwq/KWQCharsets.h: Removed.
2205         * kwq/KWQTextCodec.cpp: Removed.
2206         * kwq/KWQTextCodec.h: Removed.
2207         * kwq/WebCoreTextDecoder.h:
2208         * kwq/WebCoreTextDecoder.mm:
2209         * kwq/can-convert.mm: Removed.
2210         * kwq/character-sets.txt: Removed.
2211         * kwq/mac-encodings.txt: Removed.
2212         * kwq/make-charset-table.pl: Removed.
2213         * loader/CachedCSSStyleSheet.cpp:
2214         (WebCore::CachedCSSStyleSheet::CachedCSSStyleSheet):
2215         (WebCore::CachedCSSStyleSheet::setCharset):
2216         (WebCore::CachedCSSStyleSheet::data):
2217         * loader/CachedCSSStyleSheet.h:
2218         * loader/CachedScript.cpp:
2219         (WebCore::CachedScript::CachedScript):
2220         (WebCore::CachedScript::setCharset):
2221         (WebCore::CachedScript::data):
2222         * loader/CachedScript.h:
2223         * loader/CachedXSLStyleSheet.cpp:
2224         (WebCore::CachedXSLStyleSheet::setCharset):
2225         * page/Frame.cpp:
2226         (WebCore::Frame::write):
2227         (WebCore::Frame::gotoAnchor):
2228         (WebCore::Frame::encoding):
2229         (WebCore::Frame::backslashAsCurrencySymbol):
2230         * platform/CharsetNames.cpp: Added.
2231         (KXMLCore::):
2232         (WebCore::EncodingHash::equal):
2233         (WebCore::EncodingHash::hash):
2234         (WebCore::buildDictionaries):
2235         (WebCore::textEncodingIDFromCharsetName):
2236         (WebCore::charsetNameFromTextEncodingID):
2237         * platform/CharsetNames.h: Added.
2238         * platform/KURL.cpp:
2239         (KURL::KURL):
2240         (KURL::decode_string):
2241         (encodeRelativeString):
2242         * platform/KURL.h:
2243         * platform/QString.cpp:
2244         (QString::fromUtf8):
2245         * platform/StreamingTextDecoder.cpp: Added.
2246         (WebCore::StreamingTextDecoder::StreamingTextDecoder):
2247         (WebCore::StreamingTextDecoder::convertLatin1):
2248         (WebCore::StreamingTextDecoder::~StreamingTextDecoder):
2249         (WebCore::StreamingTextDecoder::convertUTF16):
2250         (WebCore::effectiveEncoding):
2251         (WebCore::StreamingTextDecoder::createICUConverter):
2252         (WebCore::unwanted):
2253         (WebCore::StreamingTextDecoder::appendOmittingUnwanted):
2254         (WebCore::StreamingTextDecoder::convertUsingICU):
2255         (WebCore::StreamingTextDecoder::convert):
2256         (WebCore::StreamingTextDecoder::toUnicode):
2257         * platform/StreamingTextDecoder.h: Added.
2258         (WebCore::StreamingTextDecoder::convert):
2259         * platform/TextEncoding.cpp: Added.
2260         (WebCore::TextEncoding::TextEncoding):
2261         (WebCore::TextEncoding::name):
2262         (WebCore::effectiveEncoding):
2263         (WebCore::TextEncoding::backslashAsCurrencySymbol):
2264         (WebCore::TextEncoding::toUnicode):
2265         * platform/TextEncoding.h: Added.
2266         (WebCore::):
2267         (WebCore::TextEncoding::):
2268         (WebCore::TextEncoding::TextEncoding):
2269         (WebCore::TextEncoding::isValid):
2270         (WebCore::TextEncoding::usesVisualOrdering):
2271         (WebCore::TextEncoding::isJapanese):
2272         (WebCore::TextEncoding::encodingID):
2273         (WebCore::TextEncoding::flags):
2274         (WebCore::operator==):
2275         (WebCore::operator!=):
2276         * platform/character-sets.txt: Added.
2277         * platform/mac/ExtraCFEncodings.h: Added.
2278         * platform/mac/QStringMac.mm:
2279         * platform/mac/TextEncodingMac.cpp: Added.
2280         (WebCore::effectiveEncoding):
2281         (WebCore::TextEncoding::fromUnicode):
2282         * platform/mac/can-convert.mm: Added.
2283         * platform/mac/mac-encodings.txt: Added.
2284         * platform/make-charset-table.pl: Added.
2285         * platform/win/win-encodings.txt: Added.
2286         * rendering/render_object.cpp:
2287         (WebCore::RenderObject::backslashAsCurrencySymbol):
2288         * xml/xmlhttprequest.cpp:
2289         (WebCore::XMLHttpRequest::send):
2290         (WebCore::XMLHttpRequest::slotData):
2291
2292 2006-02-27  Darin Adler  <darin@apple.com>
2293
2294         - fix Windows build
2295
2296         * platform/win/TemporaryLinkStubs.cpp: Change KIO::TransferJob to WebCore::TransferJob.
2297
2298 2006-02-26  Darin Adler  <darin@apple.com>
2299
2300         Reviewed by Maciej.
2301
2302         - merged Job and TransferJob into TransferJob and moved it to WebCore namespace
2303         - changed TransferJob to use a TransferJobClient object instead of signals
2304
2305         * ForwardingHeaders/kio/job.h: Changed to point to "KWQKJobClasses.h".
2306         * kwq/KWQKJob.h: Removed.
2307         * kwq/TransferJobClient.h: Added.
2308
2309         * WebCore.vcproj/WebCore/WebCore.vcproj: Updated for file changes.
2310         * WebCore.xcodeproj/project.pbxproj: Ditto.
2311
2312         * dom/xml_tokenizer.cpp: (WebCore::openFunc):
2313         * khtml/xsl/xslt_processorimpl.cpp: (DOM::docLoaderFunc):
2314         Use "new TransferJob" instead of "KIO::get" and "KIO::http_post".
2315
2316         * kwq/KWQKJobClasses.h: Eliminate Job. Add a TransferJobClient* parameter to
2317         TransferJob. Eliminate the deliverAllData parameter to TransferJob constructor.
2318         Remove the signals from TransferJob.
2319         * kwq/KWQKJobClasses.mm:
2320         (WebCore::TransferJobPrivate::TransferJobPrivate): Store a client pointer.
2321         (WebCore::TransferJob::TransferJob): Store a client pointer, remove the
2322         deliverAllData boolean.
2323         (WebCore::TransferJob::receivedResponse): Added. Replaces the old emitReceivedResponse
2324         function; uses client instead of a signal.
2325         (WebCore::TransferJob::client): Added.
2326
2327         * kwq/KWQLoader.h: Switched things to mention the WebCore namespace.
2328         Changed KIO::TransferJob to WebCore::TransferJob.
2329         * kwq/KWQLoader.mm: Ditto.
2330
2331         * kwq/KWQObject.h:
2332         * kwq/KWQObject.cpp: Removed isKHTMLLoader.
2333
2334         * kwq/KWQResourceLoader.h: Changed KIO::TransferJob to WebCore::TransferJob.
2335         * kwq/KWQResourceLoader.mm:
2336         (-[KWQResourceLoader receivedResponse:]): Call receivedResponse function on
2337         the job instead of emitReceivedResponse.
2338         (-[KWQResourceLoader redirectedToURL:]): Call receivedRedirect function on the
2339         client directly instead of emitRedirection on the job.
2340         (-[KWQResourceLoader addData:]): Call receivedData function on the
2341         client directly instead of emitData on the job.
2342         (-[KWQResourceLoader finishJobAndHandle:]): Call receivedAllData function on the
2343         client directly instead of emitResult on the job. Also fixed a potential memory leak
2344         where the handle was not released if the job was 0.
2345
2346         * kwq/KWQSignal.h:
2347         * kwq/KWQSignal.cpp:
2348         * kwq/KWQSlot.h:
2349         * kwq/KWQSlot.cpp:
2350         Removed the job-related signals and slots.
2351
2352         * loader/CachedObject.h: Removed unneeded declaration of TransferJob.
2353
2354         * loader/loader.h:
2355         * loader/loader.cpp:
2356         (WebCore::Loader::servePendingRequests): Use "new TransferJob" instead of "KIO::get".
2357         Also don't connect signals.
2358         (WebCore::Loader::receivedAllData): New name for slotFinished.
2359         (WebCore::Loader::receivedResponse): New name for slotReceivedResponse.
2360         (WebCore::Loader::receivedData): New name for slotData.
2361         (WebCore::Loader::cancelRequests): Changed KIO::Job to TransferJob.
2362         (WebCore::Loader::jobForRequest): Ditto.
2363
2364         * page/Frame.h:
2365         * page/Frame.cpp:
2366         (WebCore::Frame::didOpenURL): Use "new TransferJob" instead of "KIO::get" and
2367         "KIO::http_post". Also don't connect signals.
2368         (WebCore::Frame::receivedAllData): Renamed from slotFinished. Also slightly
2369         cleaned up the logic.
2370         (WebCore::Frame::receivedRedirect): Renamed from slotRedirection.
2371         * page/FramePrivate.h: Changed KIO::TransferJob to WebCore::TransferJob.
2372
2373         * xml/xmlhttprequest.h:
2374         * xml/xmlhttprequest.cpp:
2375         (WebCore::XMLHttpRequest::XMLHttpRequest): Eliminate XMLHttpRequestQObject.
2376         (WebCore::XMLHttpRequest::send): Use "new TransferJob" instead of
2377         "KIO::get" and "KIO::http_post". Also don't connect signals.
2378         (WebCore::XMLHttpRequest::processSyncLoadResults): Change to call the functions
2379         by their new names (names changed to use with TransferJobClient).
2380         (WebCore::XMLHttpRequest::receivedAllData): Renamed from slotFinished.
2381         (WebCore::XMLHttpRequest::receivedRedirect): Renamed from slotRedirection.
2382         (WebCore::XMLHttpRequest::receivedData): Renamed from slotData.
2383
2384 2006-02-26  Darin Adler  <darin@apple.com>
2385
2386         - try again after seeing errors from buildbot
2387
2388         * loader/CachedCSSStyleSheet.cpp:
2389         (WebCore::CachedCSSStyleSheet::checkNotify):
2390         * loader/CachedImage.cpp:
2391         (WebCore::CachedImage::data):
2392         Add __APPLE__ ifdefs to two more uses of response.
2393
2394 2006-02-26  Darin Adler  <darin@apple.com>
2395
2396         - try again after seeing errors from buildbot
2397
2398         * loader/CachedObject.cpp: (WebCore::CachedObject::~CachedObject):
2399         * loader/CachedObject.h: (WebCore::CachedObject::CachedObject):
2400         * loader/loader.cpp:
2401         Add __APPLE__ ifdefs to calls to setResponse and setAllData.
2402
2403         * platform/win/TemporaryLinkStubs.cpp: Add missing includes.
2404
2405 2006-02-26  Darin Adler  <darin@apple.com>
2406
2407         Reviewed by Maciej.
2408
2409         - more Win32 link fixes
2410
2411         * loader/CachedObject.h: Put some Mac-specific stuff inside
2412         __APPLE__ ifdefs.
2413         * platform/win/TemporaryLinkStubs.cpp: Added more stubs.
2414
2415 2006-02-26  Darin Adler  <darin@apple.com>
2416
2417         - try again after seeing errors from buildbot
2418
2419         * platform/win/TemporaryLinkStubs.cpp: Added more includes.
2420
2421 2006-02-26  Darin Adler  <darin@apple.com>
2422
2423         - try again after seeing errors from buildbot
2424
2425         * platform/win/TemporaryLinkStubs.cpp: Added more includes.
2426
2427 2006-02-26  Darin Adler  <darin@apple.com>
2428
2429         Reviewed by Maciej.
2430
2431         - work toward getting the Win32 build to link
2432
2433         * WebCore.vcproj/WebCore/WebCore.vcproj: Added KWQObject.cpp.
2434         * platform/win/TemporaryLinkStubs.cpp: Added more stubs.
2435
2436 2006-02-24  Antti Koivisto  <koivisto@iki.fi>
2437
2438         Reviewed by Hyatt.
2439
2440         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=7440
2441         Floats not positioned correctly
2442
2443         Test: fast/block/float/multiple-float-positioning.html
2444
2445         * rendering/RenderBlock.cpp: 
2446         (WebCore::RenderBlock::positionNewFloats): Correct iteration of the float list
2447
2448 2006-02-24  Graham Dennis  <Graham.Dennis@gmail.com>
2449
2450         <http://bugzilla.opendarwin.org/show_bug.cgi?id=6933>
2451         Selection extends beyond focus ring for some contentEditable divs
2452
2453         Reviewed by justin
2454
2455         * rendering/RenderBlock.cpp:
2456         (WebCore::RenderBlock::isSelectionRoot): Have root editable elements paint their
2457         own selection gaps.
2458
2459 2006-02-24  Darin Adler  <darin@apple.com>
2460
2461         Reviewed by Maciej.
2462
2463         - fix <rdar://problem/4456287> REGRESSION: assertion failure at mypage.apple.com
2464           in WebCore::TimerBase::nextFireInterval() const + 100 (Timer.cpp:188)
2465
2466         Test: fast/dom/Window/redirect-with-timer.html
2467
2468         * platform/Timer.h: Made isActive no longer inline. Added inHeap function.
2469         * platform/Timer.cpp: Changed assertions to use inHeap function for clarity.
2470         (WebCore::TimerBase::isActive): Return true for timers that are ready to fire.
2471         They have a next fire time of 0, but they should still be considered active.
2472         (WebCore::TimerBase::checkConsistency): Correct the consistency check. The new
2473         rule is that timers with a next fire time of 0 are not in the heap, and all other
2474         timers are.
2475
2476 2006-02-24  Graham Dennis  <Graham.Dennis@gmail.com>
2477
2478         <http://bugzilla.opendarwin.org/show_bug.cgi?id=7245>
2479         caret does not display at the end of some lines in contenteditable divs
2480
2481         Reviewed by justin
2482
2483         * khtml/html/HTMLElementImpl.cpp:
2484         (WebCore::HTMLElementImpl::setContentEditable):
2485         * page/Frame.cpp:
2486         (WebCore::Frame::applyEditingStyleToElement):
2487         (WebCore::Frame::removeEditingStyleFromElement):
2488
2489 2006-02-24  Eric Seidel  <eseidel@apple.com>
2490
2491         Reviewed by mjs.
2492
2493         Move dom_qname to QualifiedName and dom_atomicstringlist to AtomicStringList.
2494
2495         * WebCore+SVG/KDOMHeaders.h:
2496         * WebCore.vcproj/WebCore/WebCore.vcproj:
2497         * WebCore.xcodeproj/project.pbxproj:
2498         * css/css_base.h:
2499         * dom/AtomicStringList.h: Added.
2500         (WebCore::AtomicStringList::AtomicStringList):
2501         * dom/QualifiedName.cpp: Added.
2502         * dom/QualifiedName.h: Added.
2503         * dom/dom_atomicstringlist.h: Removed.
2504         * dom/dom_elementimpl.h:
2505         * dom/dom_qname.cpp: Removed.
2506         * dom/dom_qname.h: Removed.
2507         * editing/RemoveNodeAttributeCommand.h:
2508         * editing/SetNodeAttributeCommand.h:
2509         * khtml/html/htmlnames.h:
2510         * khtml/html/htmltokenizer.h:
2511         * ksvg2/scripts/make_names.pl: update for new headers
2512
2513 2006-02-24  Eric Seidel  <eseidel@apple.com>
2514
2515         Reviewed by beth.
2516
2517         Made a few methods on frame pure virtual.
2518         Added a bunch of stub functions for win32 linking.
2519
2520         * bridge/mac/MacFrame.h:
2521         * bridge/mac/MacFrame.mm:
2522         (WebCore::MacFrame::print):
2523         (WebCore::MacFrame::canUndo):
2524         (WebCore::MacFrame::canRedo):
2525         (WebCore::MacFrame::canPaste):
2526         * bridge/win/FrameWin.h:
2527         * page/Frame.h:
2528         * platform/win/TemporaryLinkStubs.cpp:
2529         (QTextEdit::sizeWithColumnsAndRows):
2530         (QLineEdit::maxLength):
2531         (QPainter::drawEllipse):
2532         (QTextEdit::setLineHeight):
2533         (QPainter::beginTransparencyLayer):
2534         (QLineEdit::selectedText):
2535         (Widget::setIsSelected):
2536         (QPainter::paintingDisabled):
2537         (QFontMetrics::selectionRectForText):
2538         (QTextEdit::getCursorPosition):
2539         (QSlider::QSlider):
2540         (WebCore::crossCursor):
2541         (WebCore::handCursor):
2542         (WebCore::moveCursor):
2543         (WebCore::iBeamCursor):
2544         (WebCore::waitCursor):
2545         (WebCore::helpCursor):
2546         (WebCore::eastResizeCursor):
2547         (WebCore::northResizeCursor):
2548         (WebCore::northEastResizeCursor):
2549         (WebCore::northWestResizeCursor):
2550         (WebCore::southResizeCursor):
2551         (WebCore::southEastResizeCursor):
2552         (WebCore::southWestResizeCursor):
2553         (WebCore::westResizeCursor):
2554
2555 2006-02-24  Sam Weinig  <sam.weinig@gmail.com>
2556
2557         Reviewed by Hyatt, tweaked and landed by ggaren.
2558
2559         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=5146
2560           max-height/max-width not resizing images with correct aspect ratio
2561
2562         This patch is a port and adaptation of Allan Sandfeld Jensen's (carewolf)
2563         patch of http://bugs.kde.org/show_bug.cgi?id=120107 with the needed
2564         modifications to suit the Webcore tree.  Makes images respect min/max 
2565         sizes and their intrinsic aspect ratios at the same time according to 
2566         CSS 2.1 (http://www.w3.org/TR/CSS21/visudet.html#min-max-widths).  
2567
2568         Test: fast/replaced/maxheight-percent.html
2569         Test: fast/replaced/maxheight-pxs.html
2570         Test: fast/replaced/maxwidth-percent.html
2571         Test: fast/replaced/maxwidth-pxs.html
2572         Test: fast/replaced/minheight-percent.html
2573         Test: fast/replaced/minheight-pxs.html
2574         Test: fast/replaced/minwidth-percent.html
2575         Test: fast/replaced/minwidth-pxs.html
2576
2577         * rendering/render_box.cpp:
2578         (WebCore::RenderBox::calcReplacedWidth):
2579         (WebCore::RenderBox::calcReplacedWidthUsing):
2580         (WebCore::RenderBox::calcReplacedHeight): 
2581         (WebCore::RenderBox::calcReplacedHeightUsing): Calculate percent heights correctly
2582         * rendering/render_image.cpp: Respect aspect ratios and calculate max/min
2583         (WebCore::RenderImage::calcReplacedWidth):
2584         (WebCore::RenderImage::calcReplacedHeight):
2585         (WebCore::RenderImage::calcAspectRatioWidth): Added
2586         (WebCore::RenderImage::calcAspectRatioHeight): Added
2587         (WebCore::RenderImage::calcMinMaxWidth): Added
2588         * rendering/render_image.h:
2589
2590 2006-02-24  Vicki Murley <vicki@apple.com>
2591
2592         - add missing resources for manual-tests/scrolling-nestedframesets.html
2593
2594         * manual-tests/resources/testframe-link_text.html: Added.
2595         * manual-tests/resources/testframeset.html: Added.
2596
2597 2006-02-24  Vicki Murley <vicki@apple.com>
2598
2599         - test case for <rdar://problem/4394910> calling Javascript window.close() does not trigger onbeforeunload event
2600
2601         * manual-tests/onbeforeunload-close_with_javascript.html: Added.
2602
2603 2006-02-24  Eric Seidel  <eseidel@apple.com>
2604
2605         Reviewed by mjs.
2606
2607         Add Path stubs for Win32 build.
2608
2609         * WebCore.vcproj/WebCore/WebCore.vcproj:
2610         * platform/win/TemporaryLinkStubs.cpp:
2611         (Path::Path):
2612         (Path::~Path):
2613         (Path::operator=):
2614         (Path::contains):
2615         (Path::translate):
2616         (Path::boundingRect):
2617
2618 2006-02-24  David Hyatt  <hyatt@apple.com>
2619
2620         In preparation for the elimination of QFont and QFontMetrics, rename methods on RenderStyle.  htmlFont() becomes simply
2621         font().  The old font() method turns into qfont().  Also added a helper for obtaining the fontDescription() directly from
2622         the RenderStyle (without first obtaining the htmlFont()).
2623
2624         Reviewed by darin
2625
2626         * WebCore.xcodeproj/project.pbxproj:
2627         * bindings/objc/DOM.mm:
2628         (-[DOMElement _font]):
2629         * bridge/mac/MacFrame.mm:
2630         (WebCore::MacFrame::attributedString):
2631         (WebCore::MacFrame::fontForSelection):
2632         (WebCore::MacFrame::fontAttributesForSelectionStart):
2633         * css/css_computedstyle.cpp:
2634         (WebCore::CSSComputedStyleDeclarationImpl::getPropertyCSSValue):
2635         * css/css_valueimpl.cpp:
2636         (WebCore::CSSPrimitiveValueImpl::computeLengthFloat):
2637         * css/cssstyleselector.cpp:
2638         (WebCore::CSSStyleSelector::styleForElement):
2639         (WebCore::CSSStyleSelector::pseudoStyleForElement):
2640         (WebCore::CSSStyleSelector::applyProperty):
2641         (WebCore::CSSStyleSelector::checkForTextSizeAdjust):
2642         (WebCore::CSSStyleSelector::checkForGenericFamilyChange):
2643         * dom/DocumentImpl.cpp:
2644         (WebCore::DocumentImpl::recalcStyle):
2645         * editing/visible_text.cpp:
2646         (khtml::TextIterator::exitNode):
2647         * ksvg2/svg/SVGLengthImpl.cpp:
2648         (SVGLengthImpl::updateValue):
2649         * kwq/KWQAccObject.mm:
2650         (AXAttributeStringSetStyle):
2651         * rendering/InlineTextBox.cpp:
2652         (khtml::InlineTextBox::paint):
2653         (khtml::InlineTextBox::offsetForPosition):
2654         * rendering/RenderText.cpp:
2655         (WebCore::RenderText::shouldUseMonospaceCache):
2656         (WebCore::RenderText::font):
2657         (WebCore::RenderText::width):
2658         (WebCore::RenderText::htmlFont):
2659         * rendering/bidi.cpp:
2660         (khtml::RenderBlock::tabWidth):
2661         (khtml::RenderBlock::checkLinesForTextOverflow):
2662         * rendering/render_br.cpp:
2663         (WebCore::RenderBR::lineHeight):
2664         * rendering/render_flexbox.cpp:
2665         (khtml::RenderFlexibleBox::layoutVerticalBox):
2666         * rendering/render_flow.cpp:
2667         (WebCore::RenderFlow::lineHeight):
2668         * rendering/render_form.cpp:
2669         (WebCore::RenderFormElement::setStyle):
2670         (WebCore::RenderFormElement::addIntrinsicMarginsIfAllowed):
2671         * rendering/render_image.cpp:
2672         (WebCore::RenderImage::paint):
2673         * rendering/render_line.cpp:
2674         (WebCore::InlineFlowBox::paintDecorations):
2675         (WebCore::EllipsisBox::paint):
2676         * rendering/render_list.cpp:
2677         (RenderListItem::getAbsoluteRepaintRect):
2678         (RenderListMarker::paint):
2679         * rendering/render_object.cpp:
2680         (WebCore::RenderObject::lineHeight):
2681         * rendering/render_object.h:
2682         (WebCore::RenderObject::font):
2683         * rendering/render_replaced.cpp:
2684         (WebCore::RenderWidget::setStyle):
2685         * rendering/render_style.h:
2686         (khtml::RenderStyle::font):
2687         (khtml::RenderStyle::fontDescription):
2688         (khtml::RenderStyle::qfont):
2689         * rendering/render_theme_mac.mm:
2690         (WebCore::RenderThemeMac::setFontFromControlSize):
2691
2692 2006-02-24  Maciej Stachowiak  <mjs@apple.com>
2693
2694         Reviewed by Eric.
2695
2696         - add link stubs for symbols only referenced from the link stubs file
2697
2698         * platform/win/TemporaryLinkStubs.cpp:
2699         (KWQFileButton::focusPolicy):
2700         (QLineEdit::checksDescendantsForFocus):
2701         (KWQFileButton::baselinePosition):
2702         (QSlider::~QSlider):
2703         (QListBox::~QListBox):
2704         (KWQFileButton::frameGeometry):
2705         (KWQFileButton::~KWQFileButton):
2706         (QTextEdit::focusPolicy):
2707         (QSlider::focusPolicy):
2708         (QListBox::setEnabled):
2709         (QListBox::checksDescendantsForFocus):
2710         (QListBox::focusPolicy):
2711         (QLineEdit::baselinePosition):
2712         (QSlider::sizeHint):
2713         (QLineEdit::~QLineEdit):
2714         (QTextEdit::~QTextEdit):
2715         (QTextEdit::checksDescendantsForFocus):
2716         (QLineEdit::focusPolicy):
2717         (QScrollBar::~QScrollBar):
2718
2719 2006-02-24  Maciej Stachowiak  <mjs@apple.com>
2720
2721         Rubber stamped by Eric.
2722
2723         - fix up font.h inclues to be Font.h to fix build.
2724
2725         * css/css_computedstyle.cpp:
2726         * css/css_valueimpl.cpp:
2727         * platform/Font.cpp:
2728         * rendering/render_style.h:
2729
2730 2006-02-24  Eric Seidel  <eseidel@apple.com>
2731
2732         Reviewed by mjs.
2733
2734         Fix mac build by changing constants to an enum.
2735
2736         * khtml/dom/dom2_events.h:
2737         (DOM::KeyboardEvent::):
2738
2739 2006-02-24  David Hyatt  <hyatt@apple.com>
2740
2741         Move rendering/font to platform/Font.
2742
2743         Reviewed by mjs
2744
2745         * WebCore.xcodeproj/project.pbxproj:
2746         * css/cssstyleselector.cpp:
2747         * platform/Font.cpp: Added.
2748         * platform/Font.h: Added.
2749         * rendering/font.cpp: Removed.
2750         * rendering/font.h: Removed.
2751         * rendering/render_theme_mac.mm:
2752
2753 2006-02-24  Eric Seidel  <eseidel@apple.com>
2754
2755         Reviewed by mjs.
2756
2757         Remove delcarations causing duplicate symbols on win32.
2758
2759         * khtml/dom/dom2_events.cpp:
2760
2761 2006-02-24  Eric Seidel  <eseidel@apple.com>
2762
2763         * bridge/win/FrameWin.cpp: fix line endings
2764
2765 2006-02-24  Eric Seidel  <eseidel@apple.com>
2766
2767         Reviewed by beth.
2768
2769         Removed WebCore:: prefixes added using namespace WebCore, fixes win32 build.
2770
2771         * platform/win/TemporaryLinkStubs.cpp:
2772         (QPainter::save):
2773         (Widget::enableFlushDrawing):
2774         (QPainter::drawHighlightForText):
2775         (QTextEdit::textWithHardLineBreaks):
2776         (QPainter::setPen):
2777         (QPainter::selectedTextBackgroundColor):
2778         (QPainter::fontMetrics):
2779         (Widget::show):
2780         (QLineEdit::setWritingDirection):
2781         (KWQFileButton::sizeForCharacterWidth):
2782         (QTextEdit::sizeWithColumnsAndRows):
2783         (iBeamCursor):
2784         (QPainter::misspellingLineThickness):
2785         (westResizeCursor):
2786         (Widget::isEnabled):
2787         (northWestResizeCursor):
2788         (QPainter::drawEllipse):
2789         (southWestResizeCursor):
2790         (Widget::focusPolicy):
2791         (waitCursor):
2792         (QPainter::endTransparencyLayer):
2793         (ScrollView::addChild):
2794         (Widget::~Widget):
2795         (QListBox::sizeForNumberOfLines):
2796         (FrameView::updateBorder):
2797         (QPainter::drawLineForText):
2798         (QPainter::QPainter):
2799         (QComboBox::focusPolicy):
2800         (QPainter::drawImageAtPoint):
2801         (QPainter::clearShadow):
2802         (eastResizeCursor):
2803         (QFontMetrics::boundingRect):
2804         (QPainter::beginTransparencyLayer):
2805         (northEastResizeCursor):
2806         (Widget::frameGeometry):
2807         (QPainter::addFocusRingRect):
2808         (QPainter::restore):
2809         (Widget::setEnabled):
2810         (QPainter::font):
2811         (QPainter::pen):
2812         (crossCursor):
2813         (Widget::setIsSelected):
2814         (handCursor):
2815         (QLineEdit::text):
2816         (Widget::unlockDrawingFocus):
2817         (QPainter::paintingDisabled):
2818         (northResizeCursor):
2819         (Widget::lockDrawingFocus):
2820         (QPainter::drawLine):
2821         (QPainter::setBrush):
2822         (QPainter::drawText):
2823         (QLineEdit::sizeForCharacterWidth):
2824         (Cursor::~Cursor):
2825         (QFontMetrics::selectionRectForText):
2826         (southResizeCursor):
2827         (moveCursor):
2828         (FrameView::isFrameView):
2829         (helpCursor):
2830         (QTextEdit::setWritingDirection):
2831         (Widget::setDrawingAlpha):
2832         (southEastResizeCursor):
2833         (QPainter::drawScaledAndTiledImage):
2834         (QPainter::drawImage):
2835         (QComboBox::setWritingDirection):
2836         (QComboBox::sizeHint):
2837         (QPainter::drawRect):
2838         (QPainter::drawTiledImage):
2839         (QPainter::clearFocusRing):
2840         (Widget::Widget):
2841         (QTextEdit::text):
2842         (QPainter::drawImageInRect):
2843         (Widget::disableFlushDrawing):
2844         (QPainter::initFocusRing):
2845         (QPainter::drawLineForMisspelling):
2846         (QComboBox::frameGeometry):
2847         (QListBox::setWritingDirection):
2848         (ScrollView::updateContents):
2849
2850 2006-02-24  Darin Adler  <darin@apple.com>
2851
2852         Reviewed by Hyatt.
2853
2854         - moved QScrollView from kwq to platform directory
2855
2856         * kwq/KWQScrollView.h: Removed.
2857         * kwq/KWQScrollView.mm: Removed.
2858
2859         * platform/ScrollBarMode.h: Added. Just the enum for scroll bar mode.
2860         * platform/ScrollView.h: Added. The rest of the former QScrollView.
2861         * platform/mac/ScrollViewMac.mm: Added.
2862
2863         * WebCore.xcodeproj/project.pbxproj: Updated.
2864         * WebCore.vcproj/WebCore/WebCore.vcproj: Ditto.
2865         * platform/win/TemporaryLinkStubs.cpp: Updated.
2866
2867         * bridge/mac/MacFrame.mm: (WebCore::MacFrame::createFrame):
2868         * khtml/html/html_baseimpl.cpp:
2869         (WebCore::HTMLFrameElementImpl::init):
2870         (WebCore::HTMLFrameElementImpl::parseMappedAttribute):
2871         * page/Frame.cpp: (WebCore::Frame::scrollbarsVisible):
2872         Changed scrolling constants to use new names.
2873
2874         * khtml/ecma/kjs_html.cpp: (KJS::HTMLElement::bodySetter):
2875         Use FrameView instead of QScrollView for a local variable.
2876
2877         * khtml/html/html_baseimpl.h: Use ScrollBarMode instead of
2878         QScrollView::ScrollBarMode.
2879
2880         * kwq/KWQListBox.h: Use WebCore::ScrollView instead of
2881         QScrollView and WebCore::ScrollBarMode instead of QScrollView::ScrollBarMode.
2882         * kwq/KWQTextEdit.h: Ditto.
2883         * kwq/KWQTextEdit.mm:
2884         (QTextEdit::setScrollBarModes): Ditto.
2885         (QTextEdit::focusPolicy): Ditto.
2886
2887         * page/FrameView.h:
2888         * page/FrameView.cpp:
2889         (WebCore::FrameViewPrivate::FrameViewPrivate): Use ScrollBarMode
2890         instead of QScrollView::ScrollBarMode.
2891         (WebCore::FrameView::FrameView): Remove mention of QScrollView.
2892         (WebCore::FrameView::resetScrollBars): Rename QScrollView to ScrollView.
2893         (WebCore::FrameView::applyOverflowToViewport): Use newly-named constants.
2894         (WebCore::FrameView::layout): Ditto.
2895         (WebCore::FrameView::setScrollBarsMode): Rename QScrollView to ScrollView.
2896         (WebCore::FrameView::setVScrollBarMode): Ditto.
2897         (WebCore::FrameView::setHScrollBarMode): Ditto.
2898         (WebCore::FrameView::restoreScrollBar): Ditto.
2899
2900         * platform/mac/MouseEventMac.mm: (WebCore::positionForEvent): Fixed comment.
2901         * platform/mac/WheelEventMac.mm: (WebCore::positionForEvent): Ditto.
2902         * platform/mac/WidgetMac.mm: (WebCore::Widget::getOuterView): Ditto.
2903
2904         * rendering/render_form.cpp: (WebCore::RenderTextArea::setStyle):
2905         Use ScrollBarMode instead of QScrollView::ScrollBarMode, and new constants.
2906         * rendering/render_frames.cpp:
2907         (WebCore::RenderFrameSet::userResize): Changed to use an IntRect to pass to
2908         updateContents so we can remove the overload.
2909         (WebCore::RenderPart::updateWidgetPosition): Remove unnecessary of QScrollView.
2910
2911         * rendering/render_layer.cpp:
2912         (WebCore::RenderLayer::scrollRectToVisible): Use FrameView instead of QScrollView.
2913         (WebCore::RenderLayer::setHasHorizontalScrollbar): Ditto.
2914         (WebCore::RenderLayer::setHasVerticalScrollbar): Ditto.
2915
2916 2006-02-24  Eric Seidel  <eseidel@apple.com>
2917
2918         Reviewed by anders.
2919
2920         Fix the win32 build.
2921
2922         * page/Frame.cpp:
2923         (WebCore::Frame::adjustPageHeight):
2924         (WebCore::Frame::forceLayoutWithPageWidthRange):
2925
2926 2006-02-23  David Hyatt  <hyatt@apple.com>
2927
2928         Rename FontDef to FontDescription and move it into the platform directory.
2929
2930         Reviewed by darin
2931
2932         * WebCore.xcodeproj/project.pbxproj:
2933         * bridge/mac/MacFrame.mm:
2934         (WebCore::MacFrame::attributedString):
2935         * css/css_computedstyle.cpp:
2936         (WebCore::CSSComputedStyleDeclarationImpl::getPropertyCSSValue):
2937         * css/css_valueimpl.cpp:
2938         (WebCore::CSSPrimitiveValueImpl::computeLengthFloat):
2939         * css/cssstyleselector.cpp:
2940         (WebCore::CSSStyleSelector::applyProperty):
2941         (WebCore::CSSStyleSelector::checkForTextSizeAdjust):
2942         (WebCore::CSSStyleSelector::checkForGenericFamilyChange):
2943         (WebCore::CSSStyleSelector::setFontSize):
2944         * css/cssstyleselector.h:
2945         * dom/DocumentImpl.cpp:
2946         (WebCore::DocumentImpl::recalcStyle):
2947         * editing/visible_text.cpp:
2948         (khtml::TextIterator::exitNode):
2949         * platform/FontDescription.h: Added.
2950         (WebCore::FontDescription::):
2951         (WebCore::FontDescription::FontDescription):
2952         (WebCore::FontDescription::operator!=):
2953         (WebCore::FontDescription::family):
2954         (WebCore::FontDescription::firstFamily):
2955         (WebCore::FontDescription::specifiedSize):
2956         (WebCore::FontDescription::computedSize):
2957         (WebCore::FontDescription::italic):
2958         (WebCore::FontDescription::computedPixelSize):
2959         (WebCore::FontDescription::smallCaps):
2960         (WebCore::FontDescription::isAbsoluteSize):
2961         (WebCore::FontDescription::weight):
2962         (WebCore::FontDescription::genericFamily):
2963         (WebCore::FontDescription::usePrinterFont):
2964         (WebCore::FontDescription::setFamily):
2965         (WebCore::FontDescription::setComputedSize):
2966         (WebCore::FontDescription::setSpecifiedSize):
2967         (WebCore::FontDescription::setItalic):
2968         (WebCore::FontDescription::setSmallCaps):
2969         (WebCore::FontDescription::setIsAbsoluteSize):
2970         (WebCore::FontDescription::setWeight):
2971         (WebCore::FontDescription::setGenericFamily):
2972         (WebCore::FontDescription::setUsePrinterFont):
2973         (WebCore::FontDescription::operator==):
2974         * rendering/RenderText.cpp:
2975         (WebCore::RenderText::widthFromCache):
2976         (WebCore::RenderText::trimmedMinMaxWidth):
2977         * rendering/bidi.cpp:
2978         (khtml::RenderBlock::computeHorizontalPositionsForLine):
2979         * rendering/font.cpp:
2980         (khtml::Font::selectionRectForText):
2981         (khtml::Font::drawHighlightForText):
2982         (khtml::Font::drawText):
2983         (khtml::Font::update):
2984         * rendering/font.h:
2985         (WebCore::Font::Font):
2986         (WebCore::Font::operator==):
2987         (WebCore::Font::fontDescription):
2988         (WebCore::Font::isSmallCaps):
2989         (WebCore::Font::wordSpacing):
2990         (WebCore::Font::floatWidth):
2991         (WebCore::Font::checkSelectionPoint):
2992         (WebCore::Font::width):
2993         * rendering/render_line.cpp:
2994         (WebCore::InlineFlowBox::placeBoxesHorizontally):
2995         * rendering/render_list.cpp:
2996         (RenderListItem::getAbsoluteRepaintRect):
2997         * rendering/render_style.h:
2998         (khtml::RenderStyle::wordSpacing):
2999         (khtml::RenderStyle::letterSpacing):
3000         (khtml::RenderStyle::setFontDescription):
3001         (khtml::RenderStyle::setWordSpacing):
3002         (khtml::RenderStyle::setLetterSpacing):
3003         * rendering/render_theme_mac.mm:
3004         (WebCore::RenderThemeMac::setFontFromControlSize):
3005
3006 2006-02-23  Maciej Stachowiak  <mjs@apple.com>
3007
3008         - fix build by making some pointless changes to files that Xcode doesn't 
3009         rebuild otherwise
3010
3011         * bindings/js/JSDOMCore.cpp:
3012         * bindings/js/JSDOMEvents.cpp:
3013         * dom/Element.idl:
3014         * dom/WheelEvent.idl:
3015         
3016         - add -Y 3 flag to linking; this makes the linker say what files reference 
3017         unresolved symbols
3018         
3019         * WebCore.xcodeproj/project.pbxproj:
3020
3021 2006-02-23  Darin Adler  <darin@apple.com>
3022
3023         - try to fix Windows build
3024
3025         * platform/win/TemporaryLinkStubs.cpp: Removed childX/Y stubs.
3026
3027 2006-02-23  Darin Adler  <darin@apple.com>
3028
3029         - try to fix Windows build
3030
3031         * platform/win/TemporaryLinkStubs.cpp: Removed QPalette-related stubs.
3032
3033         - remove unused forwarding headers
3034
3035         * ForwardingHeaders/kurl.h: Removed.
3036         * ForwardingHeaders/qlist.h: Removed.
3037         * ForwardingHeaders/qregion.h: Removed.
3038         * ForwardingHeaders/qsortedlist.h: Removed.
3039
3040 2006-02-23  Darin Adler  <darin@apple.com>
3041
3042         Reviewed by Maciej.
3043
3044         - removed QPalette, QRegion, QPrinter
3045         - added Path to replace QRegion
3046         - removed unused QScrollView functions
3047
3048         * ForwardingHeaders/qpalette.h: Removed.
3049         * kwq/KWQPalette.h: Removed.
3050         * kwq/KWQPalette.mm: Removed.
3051         * kwq/KWQPrinter.h: Removed.
3052         * kwq/KWQRegion.cpp: Removed.
3053         * kwq/KWQRegion.h: Removed.
3054
3055         * platform/Path.h: Added. Replaces QRegion.
3056         * platform/cg: Added.
3057         * platform/cg/PathCG.cpp: Added.
3058
3059         * WebCore.vcproj/WebCore/WebCore.vcproj: Updated for file changes.
3060         * WebCore.xcodeproj/project.pbxproj: Ditto.
3061
3062         * bridge/mac/MacFrame.mm: Removed use of KWQPrinter.h.
3063         (WebCore::MacFrame::khtmlMouseMoveEvent): Removed use of viewport().
3064         * bridge/mac/WebCoreFrameBridge.mm: Removed use of KWQPrinter.h.
3065         * khtml/html/html_imageimpl.cpp:
3066         (WebCore::HTMLAreaElementImpl::getRect): Replaced QRegion with Path.
3067         (WebCore::HTMLAreaElementImpl::getRegion): Ditto.
3068         * khtml/html/html_imageimpl.h: Ditto.
3069         * kwq/KWQPainter.mm: Removed use of QRegion.
3070         * page/Frame.cpp: (WebCore::Frame::~Frame): Removed use of viewport().
3071         * page/FrameView.cpp:
3072         (WebCore::FrameView::FrameView): Ditto.
3073         (WebCore::FrameView::viewportMouseMoveEvent): Ditto.
3074         * rendering/render_frames.cpp: (WebCore::RenderFrameSet::userResize): Ditto.
3075         * rendering/render_layer.cpp: (WebCore::RenderLayer::scrollRectToVisible): Ditto.
3076
3077         * kwq/KWQScrollView.h: Removed viewport(), hasVerticalScrollBar(),
3078         hasHorizontalScrollBar(), childX(), childY().
3079         * kwq/KWQScrollView.mm: Ditto.
3080
3081         * rendering/render_box.cpp: (WebCore::RenderBox::paintBackgroundExtended):
3082         Removed use of QPalette that always yields white.
3083         * rendering/render_canvas.cpp: (WebCore::RenderCanvas::paintBoxDecorations):
3084         Ditto.
3085
3086         * platform/Widget.h:
3087         * platform/mac/WidgetMac.mm: Removed palette() and setPalette().
3088
3089         * kwq/KWQLineEdit.h: Replaced setPalette with setColors.
3090         * kwq/KWQLineEdit.mm: (QLineEdit::setColors): Replaced setPalette.
3091         * kwq/KWQTextEdit.h: Ditto.
3092         * kwq/KWQTextEdit.mm: (QTextEdit::setColors): Ditto.
3093
3094         * rendering/render_form.cpp:
3095         (WebCore::RenderFormElement::updateFromElement): Removed call to setPalette.
3096         (WebCore::RenderLineEdit::updateFromElement): Added call to setColors.
3097         (WebCore::RenderTextArea::updateFromElement): Ditto.
3098
3099         * rendering/render_replaced.cpp: (WebCore::RenderWidget::paint):
3100         Removed use of childX and childY functions.
3101
3102 2006-02-23  Maciej Stachowiak  <mjs@apple.com>
3103
3104         Reviewed by Darin.
3105
3106         - add KURL to windows build and fix its compile issues
3107         http://bugzilla.opendarwin.org/show_bug.cgi?id=7439
3108
3109         * WebCore.vcproj/WebCore/WebCore.vcproj:
3110         * platform/KURL.cpp:
3111
3112 2006-02-23  Maciej Stachowiak  <mjs@apple.com>
3113
3114         - fix build (header name changed)
3115
3116         * platform/mac/KURLMac.mm:
3117
3118 2006-02-23  Maciej Stachowiak  <mjs@apple.com>
3119
3120         Reviewed by Eric.
3121
3122         - add temporary stubs that call abort() for functions only called from render and editing code 
3123         http://bugzilla.opendarwin.org/show_bug.cgi?id=7429
3124
3125         This gets rid of a couple hundred link errors.
3126
3127         * WebCore.vcproj/WebCore/WebCore.vcproj:
3128         * kwq/KWQFontMetrics.h:
3129         * kwq/KWQSignal.h:
3130         (KWQSignal::KWQSignal):
3131         * platform/win/TemporaryLinkStubs.cpp: Added.
3132         (notImplemented):
3133         (QLineEdit::selectAll):
3134         (WebCore::QPainter::save):
3135         (WebCore::Widget::enableFlushDrawing):
3136         (WebCore::QPainter::drawHighlightForText):
3137         (QFont::setPrinterFont):
3138         (QTextEdit::textWithHardLineBreaks):
3139         (QLineEdit::cursorPosition):
3140         (WebCore::QPainter::setPen):
3141         (WebCore::QPainter::selectedTextBackgroundColor):
3142         (WebCore::QPainter::fontMetrics):
3143         (WebCore::Widget::show):
3144         (QFont::setItalic):
3145         (QSlider::setValue):
3146         (QLineEdit::addSearchResult):
3147         (KWQFileButton::click):
3148         (QLineEdit::setWritingDirection):
3149         (KWQFileButton::sizeForCharacterWidth):
3150         (QTextEdit::sizeWithColumnsAndRows):
3151         (WebCore::iBeamCursor):
3152         (QComboBox::clear):
3153         (WebCore::QPainter::misspellingLineThickness):
3154         (QLineEdit::maxLength):
3155         (WebCore::westResizeCursor):
3156         (WebCore::Widget::isEnabled):
3157         (WebCore::northWestResizeCursor):
3158         (QTextEdit::selectionEnd):
3159         (QFont::determinePitch):
3160         (QTextEdit::setScrollBarModes):
3161         (WebCore::QPainter::drawEllipse):
3162         (WebCore::southWestResizeCursor):
3163         (QTextEdit::setReadOnly):
3164         (QListBox::appendItem):
3165         (WebCore::Widget::focusPolicy):
3166         (QTextEdit::selectAll):
3167         (WebCore::waitCursor):
3168         (WebCore::QPainter::endTransparencyLayer):
3169         (QScrollView::addChild):
3170         (QTextEdit::setDisabled):
3171         (QScrollBar::scroll):
3172         (WebCore::Widget::~Widget):
3173         (QListBox::sizeForNumberOfLines):
3174         (QScrollView::resizeContents):
3175         (QLineEdit::selectionStart):
3176         (QLineEdit::QLineEdit):
3177         (WebCore::FrameView::updateBorder):
3178         (QLineEdit::hasSelectedText):
3179         (QListBox::doneAppendingItems):
3180         (QScrollView::inWindow):
3181         (QScrollBar::setValue):
3182         (QTextEdit::hasSelectedText):
3183         (QTextEdit::selectionStart):
3184         (QFont::setWeight):
3185         (QScrollView::scrollXOffset):
3186         (QListBox::isSelected):
3187         (QLineEdit::setReadOnly):
3188         (WebCore::QPainter::drawLineForText):
3189         (QObject::disconnect):
3190         (WebCore::QPainter::QPainter):
3191         (QComboBox::~QComboBox):
3192         (QComboBox::focusPolicy):
3193         (WebCore::QPainter::drawImageAtPoint):
3194         (WebCore::QPainter::clearShadow):
3195         (QTextEdit::setLineHeight):
3196         (QMouseEvent::QMouseEvent):
3197         (WebCore::eastResizeCursor):
3198         (QScrollBar::setKnobProportion):
3199         (QFontMetrics::boundingRect):
3200         (QTextEdit::setSelectionStart):
3201         (WebCore::QPainter::beginTransparencyLayer):
3202         (WebCore::northEastResizeCursor):
3203         (WebCore::Widget::frameGeometry):
3204         (QListBox::setSelected):
3205         (WebCore::QPainter::addFocusRingRect):
3206         (QTextEdit::setCursorPosition):
3207         (WebCore::QPainter::restore):
3208         (QFontMetrics::width):
3209         (WebCore::Widget::setEnabled):
3210         (QTextEdit::setSelectionEnd):
3211         (QComboBox::populate):
3212         (QScrollView::setStaticBackground):
3213         (WebCore::QPainter::font):
3214         (QTextEdit::setAlignment):
3215         (QLineEdit::setCursorPosition):
3216         (WebCore::Widget::palette):
3217         (WebCore::QPainter::pen):
3218         (QFontMetrics::descent):
3219         (QListBox::QListBox):
3220         (QFontMetrics::ascent):
3221         (QLineEdit::selectedText):
3222         (WebCore::crossCursor):
3223         (WebCore::Widget::setIsSelected):
3224         (WebCore::handCursor):
3225         (QLineEdit::text):
3226         (WebCore::Widget::unlockDrawingFocus):
3227         (QLineEdit::setLiveSearch):
3228         (WebCore::QPainter::paintingDisabled):
3229         (WebCore::northResizeCursor):
3230         (QComboBox::QComboBox):
3231         (QSlider::setMaxValue):
3232         (WebCore::Widget::lockDrawingFocus):
3233         (WebCore::QPainter::drawLine):
3234         (WebCore::QPainter::setBrush):
3235         (QTextEdit::setSelectionRange):
3236         (WebCore::QPainter::drawText):
3237         (QScrollView::scrollPointRecursively):
3238         (QLineEdit::sizeForCharacterWidth):
3239         (WebCore::Cursor::~Cursor):
3240         (QFontMetrics::selectionRectForText):
3241         (WebCore::southResizeCursor):
3242         (QScrollView::suppressScrollBars):
3243         (QFontMetrics::checkSelectionPoint):
3244         (QTextEdit::getCursorPosition):
3245         (WebCore::moveCursor):
3246         (WebCore::FrameView::isFrameView):
3247         (QScrollBar::setSteps):
3248         (QLineEdit::setMaxLength):
3249         (QComboBox::baselinePosition):
3250         (QComboBox::appendItem):
3251         (WebCore::helpCursor):
3252         (QTextEdit::setWritingDirection):
3253         (WebCore::Widget::setDrawingAlpha):
3254         (QSlider::QSlider):
3255         (WebCore::southEastResizeCursor):
3256         (QScrollView::setVScrollBarMode):
3257         (WebCore::QPainter::drawScaledAndTiledImage):
3258         (QScrollView::scrollYOffset):
3259         (WebCore::QPainter::drawImage):
3260         (QComboBox::setCurrentItem):
3261         (QFontMetrics::height):
3262         (QComboBox::setWritingDirection):
3263         (QScrollView::setScrollBarsMode):
3264         (QComboBox::sizeHint):
3265         (WebCore::QPainter::drawRect):
3266         (QFont::setPixelSize):
3267         (QLineEdit::setSelection):
3268         (QLineEdit::setMaxResults):
3269         (QListBox::clear):
3270         (QLineEdit::edited):
3271         (WebCore::QPainter::drawTiledImage):
3272         (WebCore::QPainter::clearFocusRing):
3273         (WebCore::Widget::Widget):
3274         (QTextEdit::text):
3275         (WebCore::QPainter::drawImageInRect):
3276         (WebCore::Widget::disableFlushDrawing):
3277         (WebCore::QPainter::initFocusRing):
3278         (QSlider::setMinValue):
3279         (QTextEdit::setWordWrap):
3280         (WebCore::QPainter::drawLineForMisspelling):
3281         (QSlider::value):
3282         (QListBox::setSelectionMode):
3283         (QFontMetrics::lineSpacing):
3284         (QLineEdit::setEdited):
3285         (QComboBox::frameGeometry):
3286         (QListBox::setWritingDirection):
3287         (QLineEdit::setAlignment):
3288         (QScrollView::updateContents):
3289         (QFontMetrics::floatWidth):
3290         (QScrollView::setHScrollBarMode):
3291
3292 2006-02-23  Maciej Stachowiak  <mjs@apple.com>
3293
3294         Reviewed by Eric.
3295         
3296         - Move KURL from kwq to platform, make portable
3297         http://bugzilla.opendarwin.org/show_bug.cgi?id=7437
3298
3299         * WebCore.xcodeproj/project.pbxproj:
3300         * css/css_ruleimpl.cpp:
3301         * css/cssparser.cpp:
3302         * css/cssstyleselector.cpp:
3303         * dom/DocumentImpl.h:
3304         * khtml/html/html_baseimpl.cpp:
3305         * khtml/html/html_documentimpl.cpp:
3306         * khtml/html/html_headimpl.cpp:
3307         * khtml/xbl/xbl_binding.cpp:
3308         * ksvg2/svg/SVGDocumentImpl.cpp:
3309         * kwq/KWQTextCodec.cpp:
3310         (QTextCodec::codecForName):
3311         (QTextCodec::utf8Codec):
3312         (QTextCodec::codecForNameEightBitOnly):
3313         (QTextCodec::codecForLocale):
3314         (QTextCodec::name):
3315         (QTextCodec::makeDecoder):
3316         * kwq/KWQTextCodec.h:
3317         * loader/CachedObject.cpp:
3318         * loader/DocLoader.cpp:
3319         * page/Frame.h:
3320         * platform/KURL.cpp: Added.
3321         (KURL::decode_string):
3322         (encodeRelativeString):
3323         * platform/KURL.h: Added.
3324         * platform/mac/KURLMac.mm: Added.
3325         (KURL::getNSURL):
3326         * xml/xmlhttprequest.h:
3327
3328 2006-02-23  Darin Adler  <darin@apple.com>
3329
3330         Reviewed by John Sullivan.
3331
3332         - moved QMouseEvent, QKeyEvent, QWheelEvent, and "Foundation extras"
3333           from kwq to platform directory
3334         - moved history function from kwq to bridge directory
3335         - eliminated QEvent, MousePressEvent, MouseDoubleClickEvent, MouseMoveEvent,
3336           MoveReleaseEvent, and DrawContents classes
3337         - merged NodeImpl::MouseEvent and the MouseEvent from khtml_events.h into
3338           a single class in the page directory
3339         - broke khtmllayout.h out into a file for the Length structure in the css
3340           directory and a file for the GapRects structure in the rendering directory
3341         - redid the Length structure to work more portably by not relying on bitfield
3342           layout and improve the names to no longer explicitly mention "width"
3343         - reduced use of QGuardedPtr and other uses of the QObject "destroyed" signal
3344
3345         * ForwardingHeaders/kparts: Removed.
3346         * ForwardingHeaders/qevent.h: Removed.
3347         * khtml/khtml_events.cpp: Removed.
3348         * khtml/khtml_events.h: Removed.
3349         * khtml/misc/khtmllayout.h: Removed.
3350         * kwq/KWQEvent.h: Removed.
3351         * kwq/KWQEvent.mm: Removed.
3352         * kwq/KWQFoundationExtras.h: Removed.
3353         * kwq/KWQKHistoryProvider.mm: Removed.
3354         * kwq/KWQKPartsHistoryProvider.h: Removed.
3355
3356         * bridge/History.h: Added.
3357         * bridge/mac/HistoryMac.mm: Added.
3358         * css/Length.h: Added.
3359         * page/MouseEventWithHitTestResults.h: Added.
3360         * platform/KeyEvent.h: Added.
3361         * platform/MouseEvent.h: Added.
3362         * platform/WheelEvent.h: Added.
3363         * platform/mac/FoundationExtras.h: Added.
3364         * platform/mac/KeyEventMac.mm: Added.
3365         * platform/mac/MouseEventMac.mm: Added.
3366         * platform/mac/WheelEventMac.mm: Added.
3367         * rendering/GapRects.h: Added.
3368
3369         * WebCore.xcodeproj/project.pbxproj: Updated for above changes.
3370         * WebCore.vcproj/WebCore/WebCore.vcproj: Updated for above changes.
3371
3372         * bridge/mac/MacFrame.h: Removed unused parameters from urlSelected functions.
3373         Replaced MouseEvent, MousePressEvent, MouseMoveEvent, and MouseReleaseEvent
3374         with MouseEventWithHitTestResults.
3375         * bridge/mac/MacFrame.mm:
3376         (WebCore::MacFrame::urlSelected): Removed unused parameters.
3377         (WebCore::MacFrame::wheelEvent): Changed to use WheelEvent.
3378         (WebCore::MacFrame::keyEvent): Changed to use KeyEvent.
3379         (WebCore::MacFrame::khtmlMousePressEvent): Changed parameter type.
3380         (WebCore::MacFrame::khtmlMouseMoveEvent): Ditto.
3381         (WebCore::MacFrame::khtmlMouseReleaseEvent): Ditto.
3382         (WebCore::MacFrame::passSubframeEventToSubframe): Ditto.
3383         (WebCore::MacFrame::mouseDown): Changed to use MouseEvent.
3384         (WebCore::MacFrame::mouseDragged): Ditto.
3385         (WebCore::MacFrame::mouseUp): Ditto.
3386         (WebCore::MacFrame::mouseMoved): Ditto.
3387         (WebCore::MacFrame::sendContextMenuEvent): Ditto.
3388
3389         * css/csshelper.h: Removed a bunch of unused declarations.
3390
3391         * dom/DocumentImpl.h:
3392         * dom/DocumentImpl.cpp:
3393         (WebCore::DocumentImpl::prepareMouseEvent): Changed to take a MouseEvent
3394         and return a MouseEventWithHitTestResults.
3395         (WebCore::DocumentImpl::defaultEventHandler): Changed to use KeyEvent.
3396
3397         * dom/NodeImpl.h: Removed NodeImpl::MouseEvent and NodeImpl::MouseEventType.
3398         * dom/NodeImpl.cpp:
3399         (WebCore::NodeImpl::dispatchMouseEvent): Changed to always get the type and
3400         detail values from the caller, never from the event. Changed to use MouseEvent.
3401         (WebCore::NodeImpl::dispatchKeyEvent): Changed to use KeyEvent.
3402         (WebCore::NodeImpl::dispatchWheelEvent): Changed to use WheelEvent.
3403
3404         * dom/dom2_eventsimpl.h:
3405         * dom/dom2_eventsimpl.cpp:
3406         (WebCore::KeyboardEventImpl::KeyboardEventImpl): Changed to use KeyEvent.
3407         (WebCore::KeyboardEventImpl::charCode): Ditto.
3408
3409         * dom/dom_elementimpl.h: Removed unused mouseEventHandler function.
3410
3411         * khtml/ecma/domparser.h: Use RefPtr instead of QGuardedPtr to hold the reference
3412         to the document.
3413
3414         * khtml/ecma/kjs_proxy.h: (WebCore::KJSProxyImpl::haveInterpreter): Added. For
3415         use in the Frame destructor so we can get an existing KJS::Window object without
3416         creating a new interpreter and window object.
3417
3418         * khtml/ecma/kjs_window.h: Merged WindowQObject into Window. Changed all the
3419         guarded pointers to Frame to use plain old pointers that are cleared by the
3420         Frame explicitly (by the function disconnectFrame). Made the pointers to all
3421         the sub-objects of KJS::Window be mutable so we don't have to const_cast in
3422         the functions to get (and lazily create) them.
3423         * khtml/ecma/kjs_window.cpp:
3424         (KJS::DOMWindowTimer::DOMWindowTimer): Use Window* instead of WindowQObject*.
3425         (KJS::History::disconnectFrame): Added. Clears m_frame.
3426         (KJS::FrameArray::disconnectFrame): Added. Clears m_frame.
3427         (KJS::Window::Window): Removed code to create a WindowQObject.
3428         (KJS::Window::~Window): Removed code to delete a WindowQObject.
3429         (KJS::Window::location): Remove now-unneeded const_cast.
3430         (KJS::Window::selection): Ditto.
3431         (KJS::Window::locationbar): Ditto.
3432         (KJS::Window::menubar): Ditto.
3433         (KJS::Window::personalbar): Ditto.
3434         (KJS::Window::statusbar): Ditto.
3435         (KJS::Window::toolbar): Ditto.
3436         (KJS::Window::scrollbars): Ditto.
3437         (KJS::Window::getValueProperty): Update since m_frame is now a raw pointer.
3438         (KJS::Window::getOwnPropertySlot): Ditto.
3439         (KJS::Window::toBoolean): Ditto.
3440         (KJS::Window::scheduleClose): Remove assert that WindowQObject* is not null.
3441         (KJS::Window::isSafeScript): Update since m_frame is now a raw pointer.
3442         (KJS::Window::clear): Remove code to delete a WindowQObject. Added a call
3443         to clearAllTimeouts instead.
3444         (KJS::Window::clearAllTimeouts): Added. Does equivalent of the WindowQObject
3445         destructor.
3446         (KJS::Window::installTimeout): Moved to Window from WindowQObject.
3447         (KJS::Window::pauseTimeouts): Ditto.
3448         (KJS::Window::resumeTimeouts): Ditto.
3449         (KJS::Window::clearTimeout): Ditto.
3450         (KJS::Window::timerFired): Ditto.
3451         (KJS::Window::disconnectFrame): Added. Sets all the frame pointers to 0.
3452         (KJS::FrameArray::getOwnPropertySlot): Update since m_frame is now a raw pointer.
3453         (KJS::Location::getOwnPropertySlot): Ditto.
3454         (KJS::Location::put): Ditto.
3455         (KJS::Selection::getOwnPropertySlot): Ditto.
3456         (KJS::BarInfo::getOwnPropertySlot): Ditto.
3457
3458         * khtml/html/html_baseimpl.h: Forward-declare Length instead of including khtmllayout.h.
3459         * khtml/html/html_imageimpl.h: Ditto.
3460
3461         * khtml/html/html_inlineimpl.cpp: (WebCore::HTMLAnchorElementImpl::defaultEventHandler):
3462         Changed to use KeyEvent and removed the code to extract the button and state from the
3463         DOM even to pass to urlSelected.
3464         * ksvg2/svg/SVGAElementImpl.cpp: (SVGAElementImpl::defaultEventHandler): Ditto.
3465
3466         * khtml/html/htmltokenizer.cpp: (WebCore::HTMLTokenizer::timerFired): Change to use
3467         a RefPtr instead of a QGuardedPtr.
3468
3469         * khtml/misc/helper.h:
3470         * khtml/misc/helper.cpp: Removed printpainter and setPrintPainter.
3471
3472         * ksvg2/svg/SVGDocumentImpl.h:
3473         * ksvg2/svg/SVGDocumentImpl.cpp: (WebCore::SVGDocumentImpl::dispatchKeyEvent):
3474         Change to use KeyEvent.
3475
3476         * kwq/KWQComboBox.mm:
3477         (-[KWQPopUpButton becomeFirstResponder]):
3478         (-[KWQPopUpButton resignFirstResponder]):
3479         * kwq/KWQFileButton.mm:
3480         (KWQFileButton::focusChanged):
3481         * kwq/KWQListBox.mm:
3482         (-[KWQTableView becomeFirstResponder]):
3483         (-[KWQTableView resignFirstResponder]):
3484         * kwq/KWQSlider.mm:
3485         (-[KWQSlider becomeFirstResponder]):
3486         (-[KWQSlider resignFirstResponder]):
3487         * kwq/KWQTextArea.mm:
3488         (-[KWQTextAreaTextView becomeFirstResponder]):
3489         (-[KWQTextAreaTextView resignFirstResponder]):
3490         * kwq/KWQTextField.mm:
3491         (-[KWQTextFieldController setHasFocus:]):
3492         Updated to use new eventFilterFocusIn/Out instead of the general purpose
3493         eventFilter function. This allows us to remove QEvent and the focus events.
3494
3495         * kwq/KWQNamespace.h: Removed ButtonState.
3496
3497         * kwq/KWQObject.h:
3498         * kwq/KWQObject.cpp: Replaced eventFilter function with eventFilterFocusIn and
3499         eventFilterFocusOut, allowing us to remove QEvent. Removed event function.
3500
3501         * kwq/KWQSlot.cpp:
3502         (KWQSlot::KWQSlot): Removed the parentDestroyed slot.
3503         (KWQSlot::call): Ditto.
3504
3505         * page/Frame.h:
3506         * page/Frame.cpp:
3507         (WebCore::UserStyleSheetLoader::UserStyleSheetLoader): Renamed from
3508         PartStyleSheetLoader. Removed a lot of unneeded null checks. Use a
3509         raw Frame pointer instead of a QGuardedPtr, and count on the Frame
3510         to delete us when it's being deleted.
3511         (WebCore::UserStyleSheetLoader::~UserStyleSheetLoader): No longer
3512         a virtual function. This is not a polymorphic class.
3513         (WebCore::UserStyleSheetLoader::setStyleSheet): Remove code to delete
3514         ourselves -- that's now the frame's responsibility.
3515         (WebCore::Frame::~Frame): Call disconnectFrame on the KJS::Window and
3516         delete m_userStyleSheetLoader.
3517         (WebCore::Frame::changeLocation): Update since urlSelected no longer takes
3518         button and state parameters.
3519         (WebCore::Frame::setUserStyleSheet): Delete existing loader to stop a load
3520         in progress before starting a new load. Store reference to loader.
3521         (WebCore::Frame::urlSelected): Remove button and state parameters and unused
3522         local variable hasTarget.
3523         (WebCore::Frame::selectClosestWordFromMouseEvent): Change from QMouseEvent
3524         to MouseEvent.
3525         (WebCore::Frame::handleMousePressEventDoubleClick): Change from MousePressEvent
3526         to MouseEventWithHitTestResults.
3527         (WebCore::Frame::handleMousePressEventTripleClick): Ditto.
3528         (WebCore::Frame::handleMousePressEventSingleClick): Ditto.
3529         (WebCore::Frame::khtmlMousePressEvent): Ditto.
3530         (WebCore::Frame::handleMouseMoveEventSelection): Change from MouseMoveEvent
3531         to MouseEventWithHitTestResults.
3532         (WebCore::Frame::khtmlMouseMoveEvent): Ditto.
3533         (WebCore::Frame::khtmlMouseReleaseEvent): Change from MouseReleaseEvent
3534         to MouseEventWithHitTestResults.
3535         (WebCore::Frame::khtmlMouseDoubleClickEvent): Change from
3536         MouseReleaseDoubleClickEvent to MouseEventWithHitTestResults.
3537         (WebCore::Frame::passWidgetMouseDownEventToWidget): Change from
3538         NodeImpl::MouseEvent to MouseEventWithHitTestResults.
3539
3540         * page/FramePrivate.h: Added m_userStyleSheetLoader.
3541
3542         * page/FrameView.h:
3543         * page/FrameView.cpp:
3544         (WebCore::FrameView::viewportMousePressEvent): Change from QMouseEvent to
3545         MouseEvent and from NodeImpl::MouseEvent to MouseEventWithHitTestResults.
3546         (WebCore::FrameView::viewportMouseDoubleClickEvent): Ditto.
3547         (WebCore::selectCursor): Ditto.
3548         (WebCore::FrameView::viewportMouseMoveEvent): Ditto.
3549         (WebCore::FrameView::viewportMouseReleaseEvent): Ditto.
3550         (WebCore::FrameView::keyPressEvent): Change from QKeyEvent to KeyEvent.
3551         (WebCore::FrameView::dispatchMouseEvent): Change from QMouseEvent to
3552         MouseEvent and from NodeImpl::MouseEvent to MouseEventWithHitTestResults.
3553         (WebCore::FrameView::viewportWheelEvent): Change from QWheelEvent to
3554         WheelEvent.
3555         (WebCore::FrameView::hoverTimerFired): Update for change to prepareMouseEvent
3556         parameters.
3557
3558         * platform/Widget.h:
3559         * platform/Widget.cpp: Removed event function.
3560
3561         * rendering/render_form.h: Removed LineEditWidget, ComboBoxWidget, TextAreaWidget.
3562         * rendering/render_form.cpp:
3563         (WebCore::RenderFormElement::slotClicked): Changed from QMouseEvent to MouseEvent.
3564         (WebCore::RenderFormElement::addIntrinsicMarginsIfAllowed): Updated for changes
3565         to the Length class.
3566         (WebCore::RenderSelect::setWidgetWritingDirection): Updated for removal of
3567         ComboBoxWidget.
3568         (WebCore::RenderSelect::slotSelected): Ditto.
3569         (WebCore::RenderSelect::createComboBox): Ditto.
3570
3571         * rendering/render_replaced.h:
3572         * rendering/render_replaced.cpp:
3573         (WebCore::RenderWidget::destroy): Updated since removeEventFilter no longer takes
3574         a parameter.
3575         (WebCore::RenderWidget::setQWidget): Ditto.
3576         (WebCore::RenderWidget::eventFilterFocusIn): Added. Replaces eventFilter.
3577         (WebCore::RenderWidget::eventFilterFocusOut): Ditto.
3578
3579         * css/css_computedstyle.cpp:
3580         (WebCore::valueForLength):
3581         (WebCore::CSSComputedStyleDeclarationImpl::getPropertyCSSValue):
3582         * css/cssstyleselector.cpp:
3583         (WebCore::checkPseudoState):
3584         (WebCore::CSSStyleSelector::applyProperty):
3585         (WebCore::CSSStyleSelector::getComputedSizeFromSpecifiedSize):
3586         * khtml/html/html_imageimpl.cpp:
3587         (WebCore::HTMLAreaElementImpl::getRegion):
3588         * rendering/RenderBlock.cpp:
3589         (WebCore::RenderBlock::MarginInfo::MarginInfo):
3590         (WebCore::RenderBlock::isSelfCollapsingBlock):
3591         (WebCore::RenderBlock::layoutBlock):
3592         (WebCore::RenderBlock::determineHorizontalPosition):
3593         (WebCore::RenderBlock::leftRelOffset):
3594         (WebCore::RenderBlock::rightRelOffset):
3595         (WebCore::RenderBlock::calcMinMaxWidth):
3596         (WebCore::getBPMWidth):
3597         (WebCore::RenderBlock::calcInlineMinMaxWidth):
3598         (WebCore::RenderBlock::calcBlockMinMaxWidth):
3599         * rendering/RenderTable.cpp:
3600         (WebCore::RenderTable::calcWidth):
3601         (WebCore::RenderTable::layout):
3602         * rendering/RenderTableCell.cpp:
3603         (WebCore::RenderTableCell::calcMinMaxWidth):
3604         * rendering/RenderTableSection.cpp:
3605         (WebCore::RenderTableSection::addChild):
3606         (WebCore::RenderTableSection::addCell):
3607         (WebCore::RenderTableSection::calcRowHeight):
3608         (WebCore::RenderTableSection::layoutRows):
3609         * rendering/RenderText.h:
3610         (khtml::RenderText::marginLeft):
3611         (khtml::RenderText::marginRight):
3612         * rendering/bidi.cpp:
3613         (khtml::getBPMWidth):
3614         * rendering/render_applet.cpp:
3615         (WebCore::RenderApplet::createWidgetIfNecessary):
3616         * rendering/render_box.cpp:
3617         (WebCore::RenderBox::paintBackgroundExtended):
3618         (WebCore::RenderBox::getClipRect):
3619         (WebCore::RenderBox::relativePositionOffset):
3620         (WebCore::RenderBox::calcWidth):
3621         (WebCore::RenderBox::calcWidthUsing):
3622         (WebCore::RenderBox::sizesToIntrinsicWidth):
3623         (WebCore::RenderBox::calcHorizontalMargins):
3624         (WebCore::RenderBox::calcHeight):
3625         (WebCore::RenderBox::calcHeightUsing):
3626         (WebCore::RenderBox::calcPercentageHeight):
3627         (WebCore::RenderBox::calcReplacedWidth):
3628         (WebCore::RenderBox::calcReplacedWidthUsing):
3629         (WebCore::RenderBox::calcReplacedHeight):
3630         (WebCore::RenderBox::calcReplacedHeightUsing):
3631         (WebCore::RenderBox::availableHeightUsing):
3632         (WebCore::RenderBox::calcVerticalMargins):
3633         (WebCore::RenderBox::calcAbsoluteHorizontal):
3634         (WebCore::RenderBox::calcAbsoluteHorizontalValues):
3635         (WebCore::RenderBox::calcAbsoluteVertical):
3636         (WebCore::RenderBox::calcAbsoluteVerticalValues):
3637         * rendering/render_br.cpp:
3638         (WebCore::RenderBR::lineHeight):
3639         * rendering/render_flexbox.cpp:
3640         (khtml::RenderFlexibleBox::calcHorizontalMinMaxWidth):
3641         (khtml::RenderFlexibleBox::calcVerticalMinMaxWidth):
3642         (khtml::RenderFlexibleBox::calcMinMaxWidth):
3643         (khtml::RenderFlexibleBox::allowedChildFlex):
3644         * rendering/render_flow.cpp:
3645         (WebCore::RenderFlow::lineHeight):
3646         * rendering/render_frames.cpp:
3647         (WebCore::RenderFrameSet::layout):
3648         * rendering/render_image.cpp:
3649         (WebCore::RenderImage::isWidthSpecified):
3650         (WebCore::RenderImage::isHeightSpecified):
3651         * rendering/render_layer.cpp:
3652         (WebCore::Marquee::direction):
3653         (WebCore::Marquee::start):
3654         (WebCore::Marquee::updateMarqueeStyle):
3655         (WebCore::Marquee::timerFired):
3656         * rendering/render_line.cpp:
3657         (WebCore::InlineFlowBox::marginLeft):
3658         (WebCore::InlineFlowBox::marginRight):
3659         * rendering/render_object.cpp:
3660         (WebCore::RenderObject::mustRepaintBackgroundOrBorder):
3661         (WebCore::RenderObject::paintBorderImage):
3662         (WebCore::RenderObject::paddingTop):
3663         (WebCore::RenderObject::paddingBottom):
3664         (WebCore::RenderObject::paddingLeft):
3665         (WebCore::RenderObject::paddingRight):
3666         (WebCore::RenderObject::getVerticalPosition):
3667         (WebCore::RenderObject::lineHeight):
3668         (WebCore::RenderObject::addDashboardRegions):
3669         * rendering/render_style.h:
3670         * rendering/render_theme_mac.mm:
3671         (WebCore::RenderThemeMac::addIntrinsicMargins):
3672         * rendering/table_layout.cpp:
3673         (WebCore::FixedTableLayout::calcWidthArray):
3674         (WebCore::FixedTableLayout::calcMinMaxWidth):
3675         (WebCore::FixedTableLayout::layout):
3676         (WebCore::AutoTableLayout::recalcColumn):
3677         (WebCore::AutoTableLayout::fullRecalc):
3678         (WebCore::AutoTableLayout::calcMinMaxWidth):
3679         (WebCore::AutoTableLayout::calcEffectiveWidth):
3680         (WebCore::AutoTableLayout::layout):
3681         (WebCore::AutoTableLayout::calcPercentages):
3682         Updated for changes to the Length class.
3683         Also removed a check of the printpainter global, never used in WebCore.
3684
3685         * bindings/objc/DOM.mm:
3686         * bindings/objc/DOMCSS.mm:
3687         * bindings/objc/DOMHTML.mm:
3688         * bridge/mac/WebCoreFrameBridge.mm:
3689         * css/csshelper.cpp:
3690         * editing/SelectionController.cpp:
3691         * khtml/ecma/kjs_html.h:
3692         * kwq/KWQAccObject.mm:
3693         * kwq/KWQAccObjectCache.mm:
3694         * kwq/KWQClipboard.mm:
3695         * kwq/KWQFont.mm:
3696         * kwq/KWQFontMetrics.mm:
3697         * kwq/KWQKJobClasses.mm:
3698         * kwq/KWQKURL.mm:
3699         * kwq/KWQLoader.mm:
3700         * kwq/KWQPageState.mm:
3701         * kwq/KWQPainter.mm:
3702         * kwq/WebCoreSettings.mm:
3703         * platform/StringImpl.cpp:
3704         * platform/mac/CursorMac.mm:
3705         * platform/mac/WidgetMac.mm:
3706         * rendering/RenderBlock.h:
3707         * rendering/render_canvas.cpp:
3708         * rendering/render_line.h:
3709         * rendering/render_style.cpp:
3710         * rendering/table_layout.h:
3711         Updated includes.
3712
3713         * bindings/js/JSDOMCore.cpp: Touched, because I got strange failures if this
3714         didn't rebuild.
3715         * bindings/js/JSDOMEvents.cpp: Ditto.
3716
3717 2006-02-23  Eric Seidel  <eseidel@apple.com>
3718
3719         Reviewed by darin.
3720
3721         Fix linking of static constructed globals on win32.
3722
3723         * WebCore.vcproj/WebCore/WebCore.vcproj:
3724         * config.h:
3725         * dom/EventNames.cpp:
3726         (WebCore::EventNames::init):
3727         * dom/EventNames.h:
3728         * dom/dom_qname.cpp:
3729         (WebCore::QualifiedName::init):
3730         * dom/dom_qname.h:
3731         * khtml/html/htmlnames.cpp:
3732         (WebCore::HTMLNames::init):
3733         * khtml/html/htmlnames.h:
3734         * platform/AtomicString.cpp:
3735         (WebCore::AtomicString::init):
3736         * platform/StaticConstructors.h: Added.
3737
3738 2006-02-23  Vicki Murley <vicki@apple.com>
3739
3740         Reviewed by Tim Omernick.
3741  
3742         - fix <rdar://problem/4394910> calling Javascript window.close() does not trigger onbeforeunload event
3743
3744         Check shouldClose() before actually scheduling a close.
3745
3746         shouldClose() checks for the onbeforeunload handler, displays the onbeforeunload dialog, and returns a 
3747         result based on whether the user clicks "OK" or "Cancel".  In cases where the window is closed with cmd-w 
3748         or by clicking the red globe, shouldClose() is checked in the windowShouldClose delegate method.  Since 
3749         windowShouldClose isn't invoked when a window is closed with Javascript, it makes sense to add a check 
3750         for shouldClose() in scheduleClose(), returning early when appropriate before the chain of events that 
3751         closes a window even gets started.  
3752
3753         * bridge/mac/MacFrame.mm:
3754         (WebCore::MacFrame::scheduleClose): add a check for shouldClose()
3755
3756 2006-02-23  Vicki Murley <vicki@apple.com>
3757
3758         Reviewed by Hyatt.
3759  
3760         - fix <rdar://problem/4456004> onbeforeunload should cancel, and 
3761         <rdar://problem/4453579> REGRESSION (TOT): onbeforeunload is broken (7421)
3762
3763         * bridge/mac/MacFrame.mm:
3764         (WebCore::MacFrame::shouldClose): Onbeforeunload is a non-bubbling window
3765         event, so we should be using handleWindowEvent rather than dispatching a 
3766         generic event on the body. It seems this only worked before because of incorrect
3767         code in other parts of the tree. 
3768         * dom/dom2_eventsimpl.cpp:
3769         (WebCore::BeforeUnloadEventImpl::BeforeUnloadEventImpl): for this constructor,
3770         pass true for the cancel parameter
3771
3772 2006-02-22  Eric Seidel  <eseidel@apple.com>
3773
3774         Reviewed by darin.
3775
3776         Adding stub FrameWin class to expose link errors.
3777
3778         * WebCore.vcproj/WebCore/WebCore.vcproj:
3779         * bridge/win/FrameWin.cpp: Added.
3780         * bridge/win/FrameWin.h: Added.
3781         (WebCore::Win):
3782
3783 2006-02-22  Maciej Stachowiak  <mjs@apple.com>
3784
3785         Reviewed by Geoff.
3786
3787         - move QStringList to platform, make it portable
3788
3789         * ForwardingHeaders/qstringlist.h: Removed.
3790         * WebCore.vcproj/WebCore/WebCore.vcproj:
3791         * WebCore.xcodeproj/project.pbxproj:
3792         * dom/DocumentImpl.h:
3793         * kcanvas/KCanvasFilters.h:
3794         * khtml/xbl/xbl_protohandler.cpp:
3795         * ksvg2/svg/SVGColorImpl.cpp:
3796         * ksvg2/svg/SVGComponentTransferFunctionElementImpl.cpp:
3797         * ksvg2/svg/SVGDOMImplementationImpl.h:
3798         * ksvg2/svg/SVGFEBlendElementImpl.cpp:
3799         * ksvg2/svg/SVGFEColorMatrixElementImpl.cpp:
3800         * ksvg2/svg/SVGFEComponentTransferElementImpl.cpp:
3801         * ksvg2/svg/SVGFECompositeElementImpl.cpp:
3802         * ksvg2/svg/SVGFEDiffuseLightingElementImpl.cpp:
3803         * ksvg2/svg/SVGFEDisplacementMapElementImpl.cpp:
3804         * ksvg2/svg/SVGFEFloodElementImpl.cpp:
3805         * ksvg2/svg/SVGFEGaussianBlurElementImpl.cpp:
3806         * ksvg2/svg/SVGFELightElementImpl.cpp:
3807         * ksvg2/svg/SVGFEMergeElementImpl.cpp:
3808         * ksvg2/svg/SVGFEOffsetElementImpl.cpp:
3809         * ksvg2/svg/SVGFESpecularLightingElementImpl.cpp:
3810         * ksvg2/svg/SVGFETileElementImpl.cpp:
3811         * ksvg2/svg/SVGFETurbulenceElementImpl.cpp:
3812         * ksvg2/svg/SVGFitToViewBoxImpl.cpp:
3813         * ksvg2/svg/SVGLengthListImpl.cpp:
3814         * ksvg2/svg/SVGNumberListImpl.cpp:
3815         * ksvg2/svg/SVGPreserveAspectRatioImpl.cpp:
3816         * ksvg2/svg/SVGStringListImpl.cpp:
3817         * ksvg2/svg/SVGStyledTransformableElementImpl.cpp:
3818         * ksvg2/svg/SVGTransformableImpl.cpp:
3819         * kwq/KWQClipboard.mm:
3820         * kwq/KWQKConfigBase.mm:
3821         * kwq/KWQKHTMLSettings.h:
3822         * kwq/KWQKLocale.h:
3823         * kwq/KWQKSSLKeyGen.h:
3824         * kwq/KWQStringList.h: Removed.
3825         * kwq/KWQStringList.mm: Removed.
3826         * loader/DocLoader.h:
3827         * page/Frame.h:
3828         * platform/QStringList.cpp: Added.
3829         (QStringList::split):
3830         (QStringList::pop_front):
3831         * platform/QStringList.h: Added.
3832         * platform/mac/QStringListMac.mm: Added.
3833         (QStringList::getNSArray):
3834
3835 2006-02-21  Adele Peterson  <adele@apple.com>
3836
3837         Reviewed by Hyatt.
3838
3839         Tests:
3840         * fast/forms/input-baseline.html
3841         * fast/inline-block/contenteditable-baseline.html
3842
3843         - Fixed http://bugzilla.opendarwin.org/show_bug.cgi?id=7330
3844         baselinePosition is wrong for new text field when empty
3845
3846         * rendering/RenderBlock.cpp: (WebCore::RenderBlock::getBaselineOfLastLineBox):  
3847          If we're dealing with an empty contenteditable block, then we've added height to the block to make room for the caret, 
3848          and there are no children to give us the baseline.  Instead, compute the baseline for the block itself, and factor in the border and the padding.
3849
3850 2006-02-21  Vicki Murley <vicki@apple.com>
3851
3852         Reviewed by Adele.
3853
3854         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=7363
3855         REGRESSION (r12872): Repro crash when clicking the Quick Reply box in Gmail
3856
3857         Add a nil check for the renderer, and refetch the renderer for the old focus node
3858         after dispatching the event. 
3859
3860         * dom/DocumentImpl.cpp:
3861         (WebCore::DocumentImpl::setFocusNode):
3862
3863 2006-02-21  Maciej Stachowiak  <mjs@apple.com>
3864
3865         Rubber Stamped by Hyatt.
3866
3867         - renamed STATIC, FIXED, RELATIVE, ABSOLUTE to StaticPosition, FixedPosition, etc
3868         
3869         This avoids conflicting with win32 headers.
3870
3871         * css/css_computedstyle.cpp:
3872         (WebCore::CSSComputedStyleDeclarationImpl::getPropertyCSSValue):
3873         * css/cssstyleselector.cpp:
3874         (WebCore::CSSStyleSelector::adjustRenderStyle):
3875         (WebCore::CSSStyleSelector::applyProperty):
3876         * editing/htmlediting.cpp:
3877         (WebCore::isSpecialElement):
3878         * rendering/RenderBlock.cpp:
3879         (WebCore::RenderBlock::updateFirstLetter):
3880         * rendering/render_box.cpp:
3881         (WebCore::RenderBox::setStyle):
3882         (WebCore::RenderBox::absolutePosition):
3883         (WebCore::RenderBox::computeAbsoluteRepaintRect):
3884         * rendering/render_flow.cpp:
3885         (WebCore::RenderFlow::getAbsoluteRepaintRect):
3886         * rendering/render_layer.cpp:
3887         (WebCore::RenderLayer::convertToLayerCoords):
3888         (WebCore::RenderLayer::calculateClipRects):
3889         (WebCore::RenderLayer::calculateRects):
3890         * rendering/render_object.cpp:
3891         (WebCore::RenderObject::markContainingBlocksForLayout):
3892         (WebCore::RenderObject::containingBlock):
3893         (WebCore::RenderObject::setStyle):
3894         (WebCore::RenderObject::container):
3895         * rendering/render_style.cpp:
3896         (WebCore::RenderStyle::diff):
3897         * rendering/render_style.h:
3898         (khtml::):
3899         (khtml::RenderStyle::initialPosition):
3900
3901 2006-02-21  Maciej Stachowiak  <mjs@apple.com>
3902
3903         Rubber Stamped by Hyatt.
3904
3905         - remove KWQSignalStubs.cpp from project.
3906
3907         * WebCore.vcproj/WebCore/WebCore.vcproj:
3908
3909 2006-02-21  Maciej Stachowiak  <mjs@apple.com>
3910
3911         Platform build fix, not reviewed.
3912
3913         - undef min and max, and include <algorithm> so std::min works
3914
3915         * rendering/font.h:
3916
3917 2006-02-20  Maciej Stachowiak  <mjs@apple.com>
3918
3919         Reviewed by Geoff and Darin.
3920         
3921         Patch from Maks Orlovich, based on work by David Faure, hand-applied and 
3922         significantly reworked by me.
3923         
3924         - Patch: give internal function names (KJS merge)
3925         http://bugzilla.opendarwin.org/show_bug.cgi?id=6279
3926
3927         * khtml/ecma/kjs_binding.h:
3928         * khtml/ecma/kjs_html.cpp:
3929         (KJS::HTMLElementFunction::HTMLElementFunction):
3930         * kwq/WebCoreScriptDebugger.mm:
3931         (-[WebCoreScriptCallFrame functionName]):
3932
3933 2006-02-20  Darin Adler  <darin@apple.com>
3934
3935         Reviewed by Eric.
3936
3937         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=7331
3938           CSS parser leaks when parsing incorrect CSS
3939
3940         * css/css_base.h:
3941         (WebCore::CSSSelector::append): Replaced recursive implementation
3942         with an iterative one.
3943         (WebCore::StyleBaseImpl::StyleBaseImpl): Changed to be a Shared, not
3944         a TreeShared; parents now ref children as needed. This change was
3945         vital to fix the storage leaks. Also removed unused multiLength bool.
3946         (WebCore::StyleBaseImpl::parent): Added. Needed now that there's no
3947         TreeShared base class.
3948         (WebCore::StyleBaseImpl::setParent): Ditto.
3949         (WebCore::StyleBaseImpl::insertedIntoParent): Added. Hook for
3950         notification when added to a parent -- used by import style rules.
3951         (WebCore::StyleListImpl::StyleListImpl): Changed to use a Vector instead
3952         of a QPtrList for children. Slower for dynamic insert and remove for the
3953         DOM API, faster and more efficient for everything else.
3954         * css/css_base.cpp:
3955         (WebCore::StyleListImpl::append): Now calls insertedIntoParent
3956         and uses Vector.
3957         (WebCore::StyleListImpl::insert): Added. Calls insertedIntoParent.
3958         (WebCore::StyleListImpl::remove): Added. 
3959
3960         * css/css_grammar.y: Removed obsolete "don't inline" stuff. Changed all
3961         code that creates new objects to use new functions on CSSParser. For
3962         CSSSelector, ValueList, Function, and Value, this means using new
3963         functions with a "floating" concept, but for reference-counted classes
3964         this just means asking the CSSParser to create the object instead of
3965         calling new. Remove all explicit "delete", which is now handled by the
3966         parser instead, which works when the Bison-generated parser fails too,
3967         not just when it hits error rules in the grammar.
3968
3969         * css/css_ruleimpl.h:
3970         * css/css_ruleimpl.cpp:
3971         (WebCore::CSSImportRuleImpl::CSSImportRuleImpl): Remove call to init()
3972         which kicks off style sheet loading. We now do that when we are added to
3973         our parent instead of construction time. Also removed unused constructor.
3974         (WebCore::CSSImportRuleImpl::insertedIntoParent): Replaced init() with this
3975         function that does much the same thing at a different time. Changed code
3976         that sets m_loading to do it in a simple way that doesn't need a big comment.
3977         (WebCore::CSSMediaRuleImpl::insertRule): Use RefPtr.
3978
3979         * css/css_stylesheetimpl.cpp:
3980         (StyleSheetImpl::StyleSheetImpl): Pass 0 for parent explicitly since the
3981         empty constructor was removed in the other patch.
3982         (CSSStyleSheetImpl::CSSStyleSheetImpl): Remove code to set up m_lstChildren;
3983         that's now handled by the base class.
3984         (CSSStyleSheetImpl::insertRule): Use length() instead of m_listChildren->count()
3985         and insert instead of m_lstChildren->insert. Also use RefPtr for the result of
3986         parseRule.
3987         (CSSStyleSheetImpl::addRule): Use length() instead of m_lstChildren->count().
3988         (CSSStyleSheetImpl::deleteRule): Use length() instead of checking the result of
3989         take() for 0. Use remove() instead of m_lstChildren->take().
3990         (CSSStyleSheetImpl::parseString): Use setStrictParsing instead of going at the
3991         strictParsing data member directly.
3992         (CSSStyleSheetImpl::isLoading): Use length() and item() instead of
3993         m_lstChildren->first() and m_lstChildren->next().
3994
3995         * css/css_valueimpl.h: Add an include of QPtrList now that it's not used in
3996         any included file. Also added a constructor for CSSValueImpl, now that StyleBaseImpl
3997         has no empty constructor.
3998         * css/css_valueimpl.cpp:
3999         (WebCore::CSSMutableStyleDeclarationImpl::setProperty): Use useStrictParsing()
4000         instead of looking at the strictParsing data member directly.
4001         (WebCore::CSSMutableStyleDeclarationImpl::parseDeclaration): Ditto.
4002         (WebCore::CSSMutableStyleDeclarationImpl::setLengthProperty): Ditto.
4003         (WebCore::CSSMutableStyleDeclarationImpl::setCssText): Ditto.
4004
4005         * css/cssparser.h:
4006         (WebCore::ValueList): Changed to use a Vector and an index rather
4007         than using a QPtrList.
4008         (WebCore::CSSParser): Changed parseRule to return a PassRefPtr, removed the
4009         createStyleDeclaration function since that's now handled by createStyleRule,
4010         made clearProperties be private, and added a suite of functions to create the
4011         objects formerly made with "new" in the Bison grammar. Also put the Units enum
4012         here in the header, and added an operator so they can be or'ed together while
4013         staying with the enum type so we can use Units instead of int for a function arg.
4014         * css/cssparser.cpp:
4015         (WebCore::ValueList::~ValueList): Changed to use Vector.
4016         (WebCore::CSSParser::CSSParser): Removed initializer for rule now that it's a RefPtr.
4017         (WebCore::CSSParser::~CSSParser): Added code to delete all the items in the sets that
4018         track floating objects. Also removed an unneeded check before callling clearProperties.
4019         (WebCore::CSSParser::parseSheet): Removed "delete rule" since rule is now a RefPtr.
4020         (WebCore::CSSParser::parseRule): Changed code to use rule.release() since rule is now
4021         a RefPtr and this function now returns a PassRefPtr.
4022         (WebCore::CSSParser::parseValue): Removed "delete rule" since rule is now a RefPtr.
4023         (WebCore::CSSParser::parseColor): Ditto.
4024         (WebCore::CSSParser::parseDeclaration): Ditto.
4025         (WebCore::CSSParser::validUnit): Made this a static class member instead of a local
4026         function so it can be used by the SVG parser code. Also updated to use the new ValueList
4027         class that uses Vector.
4028         (WebCore::CSSParser::parse4Values): Updated to new ValueList.
4029         (WebCore::CSSParser::parseContent): Ditto.
4030         (WebCore::skipCommaInDashboardRegion): Ditto.
4031         (WebCore::CSSParser::parseDashboardRegions): Ditto.
4032         (WebCore::CSSParser::parseShape): Ditto.
4033         (WebCore::CSSParser::parseColorFromValue): Ditto.
4034         (WebCore::BorderImageParseContext::commitBorderImage): Ditto.
4035         (WebCore::CSSParser::createFloatingSelector): Added. Puts selector into floating set.
4036         (WebCore::CSSParser::sinkFloatingSelector): Added. Removes from floating set.
4037         (WebCore::CSSParser::createFloatingValueList): Added. Puts list into floating set.
4038         (WebCore::CSSParser::sinkFloatingValueList): Added. Removes from floating set.
4039         (WebCore::CSSParser::createFloatingFunction): Added. Puts function into floating set.
4040         (WebCore::CSSParser::sinkFloatingFunction): Added. Removes from floating set.
4041         (WebCore::CSSParser::sinkFloatingValue): Added. Removes function from floating set if
4042         value contains a function pointer.
4043         (WebCore::CSSParser::createMediaList): Added. Puts list in a vector of RefPtrs kept
4044         by the parser, so the object won't end up floating.
4045         (WebCore::CSSParser::createImportRule): Ditto.
4046         (WebCore::CSSParser::createMediaRule): Ditto.
4047         (WebCore::CSSParser::createRuleList): Ditto.
4048         (WebCore::CSSParser::createStyleRule): Ditto. The properties come from the parser's
4049         global state instead of from a parameter.
4050
4051         * khtml/xsl/xsl_stylesheetimpl.h:
4052         * khtml/xsl/xsl_stylesheetimpl.cpp:
4053         (WebCore::XSLStyleSheetImpl::XSLStyleSheetImpl): Initialize the new m_stylesheetDocTaken
4054         bool to false. Also remove code to set up m_lstChildren since the base class takes care
4055         of that now.
4056         (WebCore::XSLStyleSheetImpl::~XSLStyleSheetImpl): Only call xmlFreeDoc if the document
4057         was not taken by libxslt. We used to leak XSLStyleSheetImpl objects, which is why we
4058         didn't notice this before; we'll try to double free without this change.
4059         (WebCore::XSLStyleSheetImpl::isLoading): Use length() and item() instead of
4060         m_lstChildren->first() and m_lstChildren->next().
4061         (WebCore::XSLStyleSheetImpl::clearDocuments): Ditto.
4062         (WebCore::XSLStyleSheetImpl::parseString): Only call xmlFreeDoc if the document was not
4063         taken by libxslt. Also set m_stylesheetDocTaken for the new document.
4064         (WebCore::XSLStyleSheetImpl::loadChildSheet): Use RefPtr and append instead of
4065         m_lstChildren->append.
4066         (WebCore::XSLStyleSheetImpl::compileStyleSheet): Set m_stylesheetDocTaken to true if
4067         xsltParseStylesheetDoc is successful, since the stylesheet then owns the document.
4068         (WebCore::XSLStyleSheetImpl::locateStylesheetSubResource): Use length() and item()
4069         instead of m_lstChildren->first() and m_lstChildren->next().
4070         (WebCore::XSLStyleSheetImpl::markAsProcessed): Set m_stylesheetDocTaken, since when
4071         this is called, the document is returned to libxslt which then attaches it to a
4072         stylesheet or parent document.
4073
4074         * ksvg2/css/KSVGCSSParser.cpp: Changed to compile as separate
4075         file instead of being included in cssparser.cpp.
4076         (WebCore::CSSParser::parseSVGPaint): Take out unnnecessary check
4077         of number of args. Everything works fine without that check, and
4078         otherwise I'd have to change it for the change in data structure.
4079         (WebCore::CSSParser::parseSVGColor): Ditto.
4080         * WebCore.xcodeproj/project.pbxproj: Added KSVGCSSParser.cpp.
4081
4082         - fixed another leak found by run-webkit-leaks --leaks
4083
4084         * kwq/KWQLoader.mm: (KWQServeRequest): Delete the job if we can't do the I/O, because
4085         the caller is passing ownership to us.
4086
4087         - updated other code to use new Vector insert and remove
4088
4089         * khtml/html/HTMLFormElementImpl.cpp:
4090         (WebCore::removeFromVector): Changed to use Vector's remove.
4091         (WebCore::HTMLFormElementImpl::registerFormElement): Changed to use Vector's insert.
4092
4093 2006-02-20  Darin Adler  <darin@apple.com>
4094
4095         Collaborated with Graham Dennis <Graham.Dennis@gmail.com> on this.
4096
4097         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=6831
4098           contentEditable outline darkens as caret moves
4099
4100         Test: editing/selection/move-by-character-6.html
4101
4102         The trick was to draw the focus ring clipped to a list of rectangles instead
4103         of clipped to exactly one.
4104
4105         * kwq/KWQPainter.h: Move Color parameter from initFocusRing to drawFocusRing.
4106         * kwq/KWQPainter.mm:
4107         (WebCore::QPainterPrivate::QPainterPrivate): Change focusRingPath from
4108         an NSBezierPath to a CGMutablePathRef.
4109         (WebCore::QPainterPrivate::~QPainterPrivate): Ditto.
4110         (WebCore::QPainter::initFocusRing): Removed color parameter, and made a
4111         CGPath instead of an NSBezierPath.
4112         (WebCore::QPainter::addFocusRingRect): CGPath instead of NSBezierPath.
4113         (WebCore::QPainter::drawFocusRing): Added color parameter, and changed to
4114         use new bridge method to draw the focus ring.
4115         (WebCore::QPainter::clearFocusRing): CGPath instead of NSBezierPath.
4116
4117         * kwq/WebCoreGraphicsBridge.h:
4118         * kwq/WebCoreGraphicsBridge.m:
4119         (-[WebCoreGraphicsBridge drawFocusRingWithPath:radius:color:]):
4120         Replaced setFocusRingStyle: method with this one.
4121
4122         * rendering/render_flow.cpp: (WebCore::RenderFlow::paintFocusRing):
4123         * rendering/render_object.cpp: (WebCore::RenderObject::paintOutline):
4124         Pass color to drawFocusRing instead of initFocusRing.
4125
4126         - fixed message on exit from the other patch I just landed
4127
4128         * platform/mac/CursorMac.mm:
4129         (WebCore::leakNamedCursor): Renamed and made this leak intentionally.
4130
4131 2006-02-20  Darin Adler  <darin@apple.com>
4132
4133         Reviewed by Hyatt.
4134
4135         - moved Cursor into the platform directory from KWQ
4136         - removed a lot of other unneeded stuff from KWQ
4137
4138         * platform/Cursor.h: Added.
4139         * platform/mac/CursorMac.mm: Added.
4140         * platform/mac/CursorWin.cpp: Added.
4141
4142         * kwq/KWQBuffer.cpp: Removed.
4143         * kwq/KWQBuffer.h: Removed.
4144         * kwq/KWQCursor.h: Removed.
4145         * kwq/KWQCursor.mm: Removed.
4146         * kwq/KWQIODevice.h: Removed.
4147         * kwq/KWQKCursor.h: Removed.
4148         * kwq/KWQKCursor.mm: Removed.
4149         * kwq/KWQKDebug.h: Removed.
4150         * kwq/KWQSignalStubs.cpp: Removed.
4151
4152         * ForwardingHeaders/kcursor.h: Removed.
4153         * ForwardingHeaders/kdebug.h: Removed.
4154         * ForwardingHeaders/qbuffer.h: Removed.
4155
4156         * kwq/KWQEvent.h: Removed unused constants and types QCustomEvent,
4157         QFocusEvent, QHideEvent, QShowEvent, QContextMenuEvent, and QResizeEvent.
4158
4159         * kwq/KWQLoader.h: Removed KWQLoader class since signals are no longer needed.
4160         * kwq/KWQLoader.mm: Ditto.
4161
4162         * kwq/KWQNamespace.h: Removed DontClip, ShowPrefix, WordBreak, LayoutDirection,
4163         LeftToRight, RightToLeft, RasterOp, CopyROP, OrROP, and XorROP.
4164
4165         * kwq/KWQObject.h: Removed blockSignals, sender, _signalsBlocked, _sender,
4166         and KWQObjectSenderScope.
4167         * kwq/KWQObject.cpp:
4168         (QObject::QObject): Removed _signalsBlocked.
4169         (QObject::connect): Removed special-case signals to not complain about.
4170         All of them were either unused, converted to non-signal functions, or in one
4171         case (slotScrollBarMoved) turned into a FIXME.
4172
4173         * kwq/KWQPainter.h: Removed rasterOp and setRasterOp.
4174         * kwq/KWQPainter.mm: Ditto.
4175
4176         * kwq/KWQSignal.h:
4177         * kwq/KWQSignal.cpp: (KWQSignal::disconnect): Removed special cases for
4178         various signals; all are now using plain function calls instead.
4179
4180         * kwq/KWQSlot.h:
4181         * kwq/KWQSlot.cpp: Removed slots that are no longer needed because they
4182         are using plain function calls instead of signals.
4183
4184         * WebCore.vcproj/WebCore/WebCore.vcproj:
4185         * WebCore.xcodeproj/project.pbxproj:
4186         Updated for changed files.
4187
4188         * bridge/mac/FrameViewMac.mm: Moved the contents of KWQKHTMLView.cpp in here.
4189         * bridge/mac/KWQKHTMLView.cpp: Removed.
4190
4191         * bridge/mac/MacFrame.h: Removed signals, changed setStatusBarText to take
4192         String instead of QString.
4193         * bridge/mac/MacFrame.mm:
4194         (WebCore::MacFrame::MacFrame): Removed signals.
4195         (WebCore::MacFrame::setStatusBarText): Changed parameter type.
4196         (WebCore::MacFrame::openURLFromPageCache): Removed parameter from started function.
4197         (WebCore::MacFrame::khtmlMouseMoveEvent): Changed from QCursor() to pointerCursor().
4198
4199         * dom/DocumentImpl.h:
4200         * dom/DocumentImpl.cpp:
4201         (WebCore::DocumentImpl::DocumentImpl): Removed signals.
4202         (WebCore::DocumentImpl::implicitOpen): Ditto.
4203         (WebCore::DocumentImpl::determineParseMode): Removed a use of kdDebug.
4204         (WebCore::DocumentImpl::finishedParsing): Added. Does a setParsing(false) and then
4205         calls finishedParsing on the frame. Replaces the old finishedParsing signal.
4206
4207         * dom/xml_tokenizer.h:
4208         * dom/xml_tokenizer.cpp: Removed the finishedParsing signal since it's not just
4209         a function on the document.
4210         (WebCore::XMLTokenizer::finish): Call the function instead of emitting the signal.
4211
4212         * khtml/html/htmlparser.h:
4213         * khtml/html/htmlparser.cpp: Moved the parser inside the WebCore namespace.
4214
4215         * khtml/html/htmltokenizer.h:
4216         * khtml/html/htmltokenizer.cpp: (WebCore::HTMLTokenizer::end): Updated
4217         to call finishedParsing function on document rather than emitting a signal.
4218
4219         * kwq/KWQComboBox.mm:
4220         (-[KWQPopUpButton becomeFirstResponder]): Use QEvent instead of QFocusEvent.
4221         (-[KWQPopUpButton resignFirstResponder]): Ditto.
4222         * kwq/KWQFileButton.mm: (KWQFileButton::focusChanged): Ditto.
4223         * kwq/KWQListBox.mm:
4224         (-[KWQTableView becomeFirstResponder]): Ditto.
4225         (-[KWQTableView resignFirstResponder]): Ditto.
4226         * kwq/KWQSlider.mm:
4227         (-[KWQSlider becomeFirstResponder]): Ditto.
4228         (-[KWQSlider resignFirstResponder]): Ditto.
4229         * kwq/KWQTextArea.mm:
4230         (-[KWQTextAreaTextView becomeFirstResponder]): Ditto.
4231         (-[KWQTextAreaTextView resignFirstResponder]): Ditto.
4232