Reviewed by Maciej.
[WebKit-https.git] / WebCore / ChangeLog
1 2006-03-16  Alexey Proskuryakov  <ap@nypop.com>
2
3         Reviewed by Maciej.
4
5         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=4395
6          REGRESSION: document.open doesn't clear the document
7
8         Test: fast/dom/Document/document-reopen.html
9         Test: fast/dom/Document/doc-open-while-parsing.html
10
11         * dom/DocumentImpl.cpp:
12         (WebCore::DocumentImpl::open): Only ignore open() while the frame is still loading the main resource.
13         * page/Frame.cpp:
14         (WebCore::Frame::isComplete): Added const specifier.
15         (WebCore::Frame::isLoadingMainResource): New function.
16         * page/Frame.h:
17
18 2006-03-15  Adele Peterson  <adele@apple.com>
19
20         Reviewed by Eric.
21
22         - Fixes win32 build.
23
24         * page/Frame.cpp: (WebCore::Frame::autoscrollTimerFired): Calls isMouseButtonDown instead of CG function.
25         * platform/MouseEvent.h: Added isMouseButtonDown
26         * platform/mac/MouseEventMac.mm: (WebCore::MouseEvent::isMouseButtonDown): Calls CG function to get state of mouse button.
27         * platform/win/TemporaryLinkStubs.cpp: (MouseEvent::isMouseButtonDown): Added stub.
28
29 2006-03-15  Eric Seidel  <eseidel@apple.com>
30
31         Reviewed by geoff.
32
33         * platform/KeyEvent.h: Fix #define from QEvent_H to KeyEvent_H
34
35 2006-03-15  David Hyatt  <hyatt@apple.com>
36
37         Fix the box-sizing layout test by stopping integer overflowing from
38         occurring in the flexbox code.
39
40         Reviewed by beth
41
42         * rendering/render_flexbox.cpp:
43         (khtml::RenderFlexibleBox::allowedChildFlex):
44
45 2006-03-15  Beth Dakin  <bdakin@apple.com>
46
47         Reviewed by Eric
48
49         Fix for some leaks and intermittent broken pipes in the layout 
50         tests after check-in for http://bugzilla.opendarwin.org/
51         show_bug.cgi?id=4171.  
52
53         * platform/StringImpl.cpp:
54         (WebCore::StringImpl::capitalize): Call deleteQCharVector() for 
55         stringWithPrevious and make sure we don't walk off the end of 
56         stringWithPrevious when copying to capitalizedString.
57
58 2006-03-15  Adele Peterson  <adele@apple.com>
59
60        Reviewed by Maciej.
61
62        Followup fix for previous checkin.
63        http://bugzilla.opendarwin.org/show_bug.cgi?id=7114
64        <rdar://problem/3695120> dragging to scroll doesn't work with overflow:auto/scroll/overlay areas 
65
66        Many of the bugs related to the Radar bug have to do with autoscrolling in the RSS View.  
67        This fix walks the layer tree to find the first scrollable layer, so that autoscrolling will 
68        also work with nested layers, like those in the RSS View.
69
70        * bridge/mac/MacFrame.mm: (WebCore::MacFrame::khtmlMouseMoveEvent):
71
72 2006-03-15  Adele Peterson  <adele@apple.com>
73
74         Reviewed by Maciej.
75
76         - Fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=7114
77         Dragging to scroll doesn't work for overflow areas
78
79         No test case.  There doesn't appear to be a way to trigger the autoscroll with the EventSender.
80
81         * bridge/mac/MacFrame.mm:
82         (WebCore::MacFrame::khtmlMouseMoveEvent):  If we have a layer that can scroll, let the layer handle its autoscroll.  
83          Otherwise, call over the bridge to let AppKit scroll the view.
84         (WebCore::MacFrame::khtmlMouseReleaseEvent): Stops the autoscroll timer.
85         * page/Frame.cpp:
86         (WebCore::Frame::khtmlMouseReleaseEvent): Stops the autoscroll timer.
87         (WebCore::Frame::handleAutoscroll): Added. Saves the layer, and starts the timer.
88         (WebCore::Frame::autoscrollTimerFired): Added. Calls autoscroll() on the layer.
89         (WebCore::Frame::startAutoscrollTimer): Added.
90         (WebCore::Frame::stopAutoscrollTimer): Added.
91         * page/Frame.h: Added new autoscroll methods.
92         * page/FramePrivate.h: (WebCore::FramePrivate::FramePrivate): Initialize m_autoscrollTimer and m_autoscrollLayer.
93         * rendering/render_layer.cpp:
94         (WebCore::RenderLayer::autoscroll): Calculates how much the layer should scroll, and actually scrolls.
95         (WebCore::RenderLayer::shouldAutoscroll): If the layer has overflow then it should be able to scroll.  
96          Except for overflow:hidden areas that aren't editable.  
97          In the future, we may want to have a css property that indicates an overflow:hidden style that should also scroll.
98         * rendering/render_layer.h: Added new autoscroll methods.
99
100 2006-03-14  Justin Garcia  <justin.garcia@apple.com>
101
102         Reviewed by mjs
103         
104         <http://bugzilla.opendarwin.org/show_bug.cgi?id=7578>
105         TinyMCE: Implement execCommand CreateLink
106         
107         Used ApplyStyleCommand so that creating a link from
108         a selection doesn't change document structure.
109
110         * WebCore.xcodeproj/project.pbxproj:
111         * editing/ApplyStyleCommand.cpp:
112         (WebCore::ApplyStyleCommand::ApplyStyleCommand):
113         (WebCore::ApplyStyleCommand::doApply):
114         (WebCore::ApplyStyleCommand::removeInlineStyle):
115         (WebCore::ApplyStyleCommand::addInlineStyleIfNeeded):
116         * editing/ApplyStyleCommand.h:
117         * editing/CompositeEditCommand.cpp:
118         (WebCore::CompositeEditCommand::applyStyle):
119         * editing/CreateLinkCommand.cpp: Added.
120         (WebCore::CreateLinkCommand::CreateLinkCommand):
121         (WebCore::CreateLinkCommand::doApply):
122         * editing/CreateLinkCommand.h: Added.
123         * editing/jsediting.cpp:
124         * page/Frame.cpp:
125         (WebCore::Frame::computeAndSetTypingStyle):
126         (WebCore::Frame::applyStyle):
127         (WebCore::Frame::applyParagraphStyle):
128
129 2006-03-14  Beth Dakin  <bdakin@apple.com>
130
131         Reviewed by Maciej
132
133         Fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=4171
134         This patch changes the word-break algorithm used to apply text-
135         transform:capitalize to use a UBreakIterator. This fixes some 
136         existing edge cases we have in our text-transform:capitalize 
137         support and generally makes our results more consistent.
138
139         * platform/StringImpl.cpp:
140         (WebCore::getWordBreakIterator): Returns a UBreakIterator for a 
141         given string of a given length.
142         (WebCore::StringImpl::capitalize): Now uses the UBreakIterator to 
143         step between words and requires the previous character as input.
144         * platform/StringImpl.h: Change the declaration of capitalize() to 
145         take the previous character as a parameter. 
146         * rendering/RenderText.cpp:
147         (WebCore::RenderText::setText): Find the previous character and 
148         send it to StringImpl::capitalize()
149
150 2006-03-14  Justin Garcia  <justin.garcia@apple.com>
151
152         Reviewed by adele
153         
154         <http://bugzilla.opendarwin.org/show_bug.cgi?id=7770>
155         Should only dispatch the khtmlTextInsertedEvent for high level editing operations
156
157         Dispatching this event for low level editing operations 
158         isn't necessary and causes a big performance regression. 
159         Also renamed the event because it's dispatched for changes
160         other than just text insertion.
161
162         * dom/EventNames.h: 
163         * editing/EditCommand.cpp:
164         (WebCore::EditCommand::apply):
165         (WebCore::EditCommand::unapply):
166         (WebCore::EditCommand::reapply):
167         * khtml/html/HTMLTextFieldInnerElementImpl.cpp:
168         (WebCore::HTMLTextFieldInnerElementImpl::defaultEventHandler):
169         * page/Frame.cpp:
170         (WebCore::dispatchKHTMLEditableContentChanged):
171         (WebCore::Frame::appliedEditing):
172         (WebCore::Frame::unappliedEditing):
173         (WebCore::Frame::reappliedEditing):
174
175 2006-03-14  Darin Adler  <darin@apple.com>
176
177         Reviewed by Eric.
178
179         - fix <rdar://problem/4478121> -[WebCoreFrameBridge finalize] crashes under GC
180
181         * bridge/mac/WebCoreFrameBridge.mm: (-[WebCoreFrameBridge finalize]):
182         Don't call setBridge(nil).
183
184 2006-03-14  Darin Adler  <darin@apple.com>
185
186         - oops, didn't mean to check this in
187
188         * dom/dom_elementimpl.cpp: (WebCore::StyledElementImpl::parseMappedAttribute):
189         Reverted nil-document check that I didn't mean to remove.
190
191 2006-03-14  Beth Dakin  <bdakin@apple.com>
192
193         Reviewed by Hyatt
194
195         Fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=6796
196         This fix prevents infinite recursion when a block with overflow: 
197         auto can't decide if it needs scrollbars or not. This fix puts a 
198         guard in place in updateScrollInforAfterLayout that only allows you 
199         to re-layout if you are not currently laying out.  
200
201         * rendering/render_layer.cpp:
202         (WebCore::RenderLayer::RenderLayer): Initialize 
203         m_inOverflowRelayout to false. Fixed spacing too.
204         (WebCore::RenderLayer::updateScrollInfoAfterLayout): Place guard 
205         around layout calls in overflow:auto case.
206         * rendering/render_layer.h: Add m_inOverflowRelayout.
207
208 2006-03-14  Darin Adler  <darin@apple.com>
209
210         Reviewed by Geoff and Eric.
211
212         - fix <http://bugzilla.opendarwin.org/show_bug.cgi?id=7765>, <rdar://problem/4474884>
213           hasAttribute always returns false for uppercase attribute names like "STYLE"
214         - re-add missing JavaScript binding for getAttributeNS
215         - fixed handling of null namespace parameters in getAttributeNS and friends
216
217         Test: fast/dom/Element/attribute-uppercase.html
218
219         To match Gecko's behavior, the magic "lowercasing" of all attribute names
220         is only done when calling DOM Level 1 functions that lack an NS suffix.
221         The functions with an NS suffix are case sensitive, even in HTML documents.
222
223         * dom/NamedNodeMapImpl.h: Changed getNamedItem and removeNamedItem to be pure virtual
224         functions instead of calling through to getNamedItemNS and removeNamedItemNS.
225
226         * dom/dom_elementimpl.h: Eliminated inline versions of non-NS functions that called
227         the NS functions. They can't work that way any more since the lowercasing behavior
228         is different.
229         * dom/dom_elementimpl.cpp:
230         (WebCore::ElementImpl::getAttribute): Added. Lowercases the name if the document
231         is an HTML document, and then calls through to the qualified name version. Removed
232         the null check since getDocument is guaranteed to never return 0 now that nodes
233         hold a reference to their document.
234         (WebCore::ElementImpl::getAttributeNS): Removed the lowercasing code.
235         (WebCore::ElementImpl::setAttribute): More of the same.
236         (WebCore::ElementImpl::setAttributeNS): Ditto.
237         (WebCore::ElementImpl::removeAttribute): Ditto.
238         (WebCore::ElementImpl::removeAttributeNS): Ditto.
239         (WebCore::ElementImpl::getAttributeNode): Ditto.
240         (WebCore::ElementImpl::getAttributeNodeNS): Ditto.
241         (WebCore::ElementImpl::hasAttribute): Ditto.
242         (WebCore::ElementImpl::hasAttributeNS): Ditto.
243         (WebCore::NamedAttrMapImpl::getNamedItem): Ditto.
244         (WebCore::NamedAttrMapImpl::getNamedItemNS): Ditto.
245         (WebCore::NamedAttrMapImpl::removeNamedItem): Ditto.
246         (WebCore::NamedAttrMapImpl::removeNamedItemNS): Ditto.
247         (WebCore::StyledElementImpl::parseMappedAttribute): Removed another unneeded null
248         check like the one mentioned above.
249
250         * dom/Element.idl: Set ConvertNullToNullString for all the namespaceURI
251         parameters, since we don't want null to turn into "null". Added a semicolon
252         to the end of the hasAttributeNS line -- was causing the next declaration to
253         be eaten up (so getAttributeNS was completely broken).
254
255         * khtml/ecma/kjs_dom.cpp: (KJS::DOMNamedNodeMapProtoFunc::callAsFunction):
256         Call valueToStringWithNullCheck to do the equivalent of ConvertNullToNullString
257         for both getNamedItemNS and removeNamedItemNS.
258
259         * bindings/js/JSDOMCore.cpp: Touched so that the changes above will take effect.
260
261 2006-03-14  David Hyatt  <hyatt@apple.com>
262
263         Fix for bug 7259, opacity performs badly.
264
265         Reviewed by mjs
266
267         Adding some tests in fast/opacity.
268
269         * rendering/RenderTableRow.h:
270         (WebCore::RenderTableRow::requiresLayer):
271         * rendering/render_layer.cpp:
272         (WebCore::transparencyClipBox):
273         (WebCore::RenderLayer::beginTransparencyLayers):
274         (WebCore::RenderLayer::paintLayer):
275         (WebCore::RenderLayer::intersectsDamageRect):
276         (WebCore::RenderLayer::absoluteBoundingBox):
277         * rendering/render_layer.h:
278         (WebCore::RenderLayer::root):
279
280 2006-03-14  Eric Seidel  <eseidel@apple.com>
281
282         Reviewed by mjs.
283
284         Fix Gif crasher.
285
286         * platform/image-decoders/gif/GIFImageReader.cpp:
287         (GIFImageReader::do_lzw): Initialize array after new.
288
289 2006-03-14  Eric Seidel  <eseidel@apple.com>
290
291         Reviewed by mjs.
292
293         Make MouseEvents aware of current scroll position.
294
295         * platform/win/ScrollViewWin.cpp:
296         (WebCore::ScrollView::viewportToContents):
297         (WebCore::ScrollView::contentsToViewport):
298
299 2006-03-13  Eric Seidel  <eseidel@apple.com>
300
301         Reviewed by mjs.
302
303         Fix mouse events to be window-relative.
304
305         * platform/win/MouseEventWin.cpp:
306         (WebCore::positionForEvent):
307         (WebCore::globalPositionForEvent):
308         (WebCore::MouseEvent::MouseEvent):
309
310 2006-03-13  Eric Seidel  <eseidel@apple.com>
311
312         Reviewed by mjs.
313
314         Close DeviceContext leaks in Font code.
315         Also add moveCursor stub to make maps.google.com not crash.
316
317         * platform/win/FontWin.cpp:
318         (WebCore::getFontData):
319         (WebCore::Font::floatWidth):
320         (WebCore::Font::drawText):
321         * platform/win/TemporaryLinkStubs.cpp:
322         (Cursor::Cursor):
323         (WebCore::moveCursor):
324
325 2006-03-13  Eric Seidel  <eseidel@apple.com>
326
327         Reviewed by ggaren & TimH.
328
329         <rdar://problem/4473288> XSL file containing <xsl:include href="../Styles/EscapeString.xsl" /> fails to load file
330         XML_DTD_NODE objects in the tree were causing loadChildSheets to 
331         fail to preload child stylesheets, this patch causes us to 
332         correctly ignore all nodes besides the first XML_ELEMENT_NODE at 
333         the root level when searching the tree for xsl:include statements 
334         to pre-load.
335
336         Test: fast/xsl/xslt-second-level-import.xml
337
338         * khtml/xsl/xsl_stylesheetimpl.cpp:
339         (WebCore::XSLStyleSheetImpl::loadChildSheets):
340
341 2006-03-10  Rob Buis  <buis@kde.org>
342
343         Reviewed by darin.  Landed by eseidel.
344
345         Fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=7666:
346         dasharray on rounded rectangles is broken
347
348         Make sure the rounded rectangle is drawn clockwise, as outlined
349         in the specification.
350
351         Test: svg/custom/dashArrayOrigin.svg
352
353         * kcanvas/KCanvasCreator.cpp:
354         (WebCore::KCanvasCreator::createRoundedRectangle):
355
356 2006-03-12  Mitz Pettel  <opendarwin.org@mitzpettel.com>
357
358         Reviewed by Maciej, landed by ap.
359
360         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=5923
361           REGRESSION: scrolling on Google maps continues after the mouse is 
362           released outside the window
363
364         Test: fast/events/drag-outside-window.html
365
366         * rendering/render_layer.cpp:
367         (WebCore::RenderLayer::containsPoint): Always return true for the root
368         object to ensure that mouse events occurring outside the window target
369         the document.
370
371 2006-03-12  Alexey Proskuryakov  <ap@nypop.com>
372
373         Reviewed by Maciej.
374
375         - Fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=7735
376         REGRESSION: crash on importing bookmarks
377
378         No test - only reproducible when Safari imports the bookmarks.
379
380         * dom/EventNames.cpp:
381         (WebCore::EventNames::init): Initialize AtomicString before using it.
382         * dom/QualifiedName.cpp:
383         (WebCore::QualifiedName::init): Ditto.
384         * khtml/html/htmlnames.cpp:
385         (WebCore::HTMLNames::init): Ditto.
386         * ksvg2/scripts/make_names.pl: Ditto.
387
388 2006-03-12  David Kilzer  <ddkilzer@kilzer.net>
389
390         Reviewed by Darin, landed by ap.
391
392         - Fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=7724
393         Minor refactoring to HTMLParser::handleError() to remove duplicate code
394
395         Test: fast/invalid/missing-address-end-tag.html
396         Test: fast/invalid/missing-dl-end-tag.html
397         Test: fast/invalid/missing-dt-end-tag.html
398         Test: fast/invalid/missing-font-end-tag.html
399
400         * khtml/html/htmlparser.cpp:
401         (WebCore::HTMLParser::handleError): Refactored code.
402
403 2006-03-10  Darin Adler  <darin@apple.com>
404
405         - fix Windows build
406
407         * bridge/win/FrameWin.h: Removed declaration of generateFrameName.
408
409 2006-03-10  Darin Adler  <darin@apple.com>
410
411         Reviewed by Adele.
412
413         - removed some unused stuff from Frame and MacFrame
414
415         * page/Frame.h: Removed autoloadImages (the setter), enableMetaRefresh,
416         setCharset, backgroundURL, findTextBegin, findTextNext, preloadStyleSheet,
417         preloadScript, restored, onURL, selectionChanged, htmlError, openFile,
418         updateActions, openURLInFrame, overURL, checkLinkSecurity, and cacheId.
419         * page/FramePrivate.h: Removed m_restored, m_frameNameId, m_strSelectedURL,
420         m_strSelectedURLTarget, m_bDnd, m_bClearing, m_bSecurityInQuestion,
421         m_focusNodeRestored, m_focusNodeNumber, and m_newJSInterpreterExists.
422         * page/Frame.cpp:
423         (WebCore::Frame::didOpenURL): Removed use of m_restored, code to set
424         m_bClearing.
425         (WebCore::Frame::clear): Removed code to set m_bClearing and m_frameNameId.
426         (WebCore::Frame::khtmlMousePressEvent): Removed code to set m_strSelectedURL
427         and m_strSelectedURLTarget.
428
429         * bridge/mac/MacFrame.h: Removed scheduleHistoryNavigation and
430         requestedURLString.
431         * bridge/mac/MacFrame.mm:
432         (WebCore::MacFrame::openURLFromPageCache): Removed use of m_restored.
433         Removed unused requestedURLString.
434
435         * bridge/mac/WebCoreFrameBridge.h: Removed requestedURLString.
436
437 2006-03-10  Darin Adler  <darin@apple.com>
438
439         - fix Windows build
440
441         * page/FrameTree.cpp: Add include of <stdarg.h>.
442
443 2006-03-10  Darin Adler  <darin@apple.com>
444
445         Reviewed by Geoff.
446
447         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=3308
448           Pop-up blocking blocks window.open for already open windows
449
450         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=7422
451           Setting a frame name to the same value resets it to a generated one
452
453         - refactor frame-name-related functions into the FrameTree object
454
455         * WebCore.xcodeproj/project.pbxproj: Update for rename.
456         * bridge/mac/MacFrame.h: Remove generateFrameName.
457         * bridge/mac/MacFrame.mm: Ditto.
458         * bridge/mac/PageMac.h: Added a declaration for WebCorePageBridge.
459
460         * bridge/mac/WebCoreFrameBridge.h: Remove _frameNamespace, generateFrameName,
461         setFrameNamespace, frameNamespace.
462         * bridge/mac/WebCoreFrameBridge.mm:
463         (-[WebCoreFrameBridge childFrameNamed:]): Change to call the new child
464         function on the FrameTree.
465         (-[WebCoreFrameBridge findFrameNamed:]): Change to call the new find
466         function on the FrameTree.
467         (-[WebCoreFrameBridge RenderObject::nodeInfoAtPoint:]): Change since the
468         contentPart function has been renamed to contentFrame.
469
470         * bridge/mac/WebCoreFrameNamespaces.h: Removed everything except for the
471         one method still used on the WebKit side, framesInNamespace:.
472         * bridge/mac/WebCoreFrameNamespaces.m: Renamed.
473         * bridge/mac/WebCoreFrameNamespaces.mm: Added. Reimplemented the
474         framesInNamespace method to use the namespace in WebCore::Page.
475
476         * bridge/mac/WebCorePageBridge.h: Added setGroupName and groupName.
477         * bridge/mac/WebCorePageBridge.mm:
478         (-[WebCorePageBridge setGroupName:]): Added. Calls through to Page.
479         (-[WebCorePageBridge groupName]): Ditto.
480
481         * khtml/ecma/kjs_html.cpp:
482         (KJS::HTMLDocument::namedItemGetter): Changed to call contentFrame by its new name.
483         (KJS::HTMLElement::frameGetter): Ditto.
484         (KJS::HTMLElement::iFrameGetter): Ditto.
485
486         * khtml/ecma/kjs_window.cpp:
487         (KJS::Window::getValueProperty): Changed to call FrameTree::childCount
488         instead of Frame::frames.
489         (KJS::Window::childFrameGetter): Changed to call FrameTree::child
490         instead of Frame::childFrameNamed.
491         (KJS::Window::namedFrameGetter): Changed to call FrameTree::find
492         instead of Frame::findFrame.
493         (KJS::Window::indexGetter): Changed to call FrameTree::child
494         instead of Frame::frames.
495         (KJS::Window::getOwnPropertySlot): Changed to call FrameTree::child,
496         FrameTree::find, and FrameTree::childCount instead of Frame::childFrameNamed,
497         and Frame::findFrame, and Frame::frames.
498         (KJS::WindowFunc::callAsFunction): Call FrameTree::find to check if the window
499         is already open when considering whether to block a pop-up.
500         (KJS::FrameArray::getValueProperty): Changed to call FrameTree::childCount
501         instead of Frame::frames.
502         (KJS::FrameArray::indexGetter): Changed to call FrameTree::child
503         instead of Frame::frames.
504         (KJS::FrameArray::nameGetter): Changed to call FrameTree::child
505         instead of Frame::findFrame.
506         (KJS::FrameArray::getOwnPropertySlot): Changed to call FrameTree::child,
507         and FrameTree::childCount instead of Frame::findFrame and Frame::frames.
508
509         * khtml/html/html_baseimpl.h:
510         * khtml/html/html_baseimpl.cpp:
511         (WebCore::HTMLFrameElementImpl::isURLAllowed): Changed to call Page::frameCount
512         instead of Frame::topLevelFrameCount.
513         (WebCore::HTMLFrameElementImpl::openURL): Changed to call FrameTree::child
514         instead of Frame::findFrame.
515         (WebCore::HTMLFrameElementImpl::attach): Changed to call Page::incrementFrameCount
516         instead of Frame::incrementFrameCount. Changed to call FrameTree::uniqueChildName
517         instead of Frame::requestFrameName.
518         (WebCore::HTMLFrameElementImpl::close): Changed to call Page::decrementFrameCount
519         instead of Frame::decrementFrameCount. Changed to call FrameTree::child
520         instead of Frame::findFrame.
521         (WebCore::HTMLFrameElementImpl::contentFrame): Renamed from contentPart. Also
522         changed to call FrameTree::child instead of Frame::findFrame.
523         (WebCore::HTMLFrameElementImpl::contentDocument): Updated for name change of
524         contentFrame from contentPart.
525         (WebCore::HTMLIFrameElementImpl::attach): Changed to call Page::incrementFrameCount
526         instead of Frame::incrementFrameCount. Changed to call FrameTree::uniqueChildName
527         instead of Frame::requestFrameName.
528
529         * rendering/render_frames.cpp: (WebCore::isURLAllowed): Changed to call Page::frameCount
530         instead of Frame::topLevelFrameCount.
531
532         * page/Frame.h: Removed frameNames, frames, childFrameNamed, findFrame, currentFrame,
533         frameExists, incrementFrameCount, decrementFrameCount, topLevelFrameCount,
534         generateFrameName, and requestFrameName functions.
535         * page/Frame.cpp: (WebCore::Frame::requestFrame): Changed to use FrameTree::child
536         instead of Frame::childFrameNamed.
537
538         * page/FrameTree.h: Changed name to an atomic string. Changed childCount to unsigned.
539         Added isDescendantOf, traverseNext, child, find, uniqueChildName.
540         * page/FrameTree.cpp:
541         (WebCore::FrameTree::setName): Changed to call uniqueChildName to handle name
542         duplication logic.
543         (WebCore::FrameTree::uniqueChildName): Added. Checks for duplication and generates
544         an appropriate frame name if there is a duplicate.
545         (WebCore::FrameTree::child): Added.
546         (WebCore::FrameTree::find): Added.
547         (WebCore::FrameTree::isDescendantOf): Added.
548         (WebCore::FrameTree::traverseNext): Added.
549
550         * page/Page.h: Added setGroupName, groupName, frameNamespace, incrementFrameCount,
551         decrementFrameCount, and frameCount.
552         * page/Page.cpp:
553         (WebCore::Page::Page): Initialize m_frameCount to 0.
554         (WebCore::Page::~Page): Call setGroupName to remove the page from any group it's in.
555         (WebCore::Page::setGroupName): Added.
556         (WebCore::Page::frameNamespace): Added.
557
558         * platform/win/TemporaryLinkStubs.cpp: Removed FrameWin::generateFrameName.
559
560 2006-03-10  Justin Garcia  <justin.garcia@apple.com>
561         
562         Reviewed by darin, harrison
563         
564         ~3x speedup pasting plain text from the console
565
566         * dom/dom_position.cpp:
567         (WebCore::Position::next): 
568         (WebCore::Position::atEnd): 
569
570 2006-03-10  David Hyatt <hyatt@apple.com>
571
572         More refactoring.  Split the FontData into cross-platform and
573         platform-specific components.
574
575         Reviewed by eric
576
577         * WebCore.vcproj/WebCore/WebCore.vcproj:
578         * platform/FontData.h: Added.
579         (WebCore::FontData:::m_platformData):
580         (WebCore::FontData::platformData):
581         (WebCore::FontData::setMetrics):
582         (WebCore::FontData::ascent):
583         (WebCore::FontData::descent):
584         (WebCore::FontData::xHeight):
585         (WebCore::FontData::lineSpacing):
586         * platform/FontPlatformData.h: Added.
587         (WebCore::FontPlatformData::hfont):
588         (WebCore::FontPlatformData::scaledFont):
589         * platform/win/FontPlatformDataWin.cpp: Added.
590         (WebCore::FontPlatformData::FontPlatformData):
591         (WebCore::FontPlatformData::~FontPlatformData):
592         * platform/win/FontWin.cpp:
593         (WebCore::Font::floatWidth):
594         (WebCore::Font::drawText):
595
596 2006-03-10  Maciej Stachowiak  <mjs@apple.com>
597
598         Reviewed by Eric.
599
600         - fix win32 networking to properly use async load API
601
602         * platform/win/TransferJobWin.cpp:
603         (WebCore::TransferJobWndProc):
604         (WebCore::TransferJob::start):
605
606 2006-03-10  Eric Seidel  <eseidel@apple.com>
607
608         Fix build.
609
610         * platform/win/FontWin.cpp:
611         (WebCore::getFontData):
612         * platform/win/TemporaryLinkStubs.cpp:
613
614 2006-03-10  Adele Peterson  <adele@apple.com>
615
616         Reviewed by Tim Hatcher.
617
618         - fix for <rdar://problem/4469419> 
619         REGRESSION: RadioButtons are not checked in Safari when name attribute comes after checked attribute
620
621         Test: fast/forms/radio-attr-order.html
622
623         * khtml/html/HTMLInputElementImpl.cpp: (WebCore::HTMLInputElementImpl::parseMappedAttribute):
624         When the name attribute gets parsed for radio buttons, if its supposed to be checked by default, call setChecked.
625         Also, when the name changes on a checked button, we don't need to check that 
626         there's a form before removing it as the checked button for that group.  
627         That was an old check from when we required a form to keep track of checked buttons.
628
629 2006-03-10  Eric Seidel  <eseidel@apple.com>
630
631         Reviewed by darin.
632
633         Add real ScrollViewWin implementation (fixes redraw bugs, adds ScrollBar support.)
634
635         * platform/ScrollView.h:
636         * platform/Widget.h:
637         * platform/win/FontWin.cpp:
638         (WebCore::getCairoFont): Fix crasher.
639         * platform/win/ScrollViewWin.cpp:
640         (WebCore::ScrollView::ScrollViewPrivate::ScrollViewPrivate):
641         (WebCore::ScrollView::ScrollView):
642         (WebCore::ScrollView::~ScrollView):
643         (WebCore::ScrollView::updateContents):
644         (WebCore::ScrollView::visibleWidth):
645         (WebCore::ScrollView::visibleHeight):
646         (WebCore::ScrollView::setContentsPos):
647         (WebCore::ScrollView::resizeContents):
648         (WebCore::ScrollView::contentsX):
649         (WebCore::ScrollView::contentsY):
650         (WebCore::ScrollView::contentsWidth):
651         (WebCore::ScrollView::contentsHeight):
652         (WebCore::ScrollView::viewportToContents):
653         (WebCore::ScrollView::contentsToViewport):
654         (WebCore::ScrollView::scrollXOffset):
655         (WebCore::ScrollView::scrollYOffset):
656         (WebCore::ScrollView::scrollBy):
657         (WebCore::ScrollView::hScrollBarMode):
658         (WebCore::ScrollView::vScrollBarMode):
659         (WebCore::ScrollView::suppressScrollBars):
660         (WebCore::ScrollView::setHScrollBarMode):
661         (WebCore::ScrollView::setVScrollBarMode):
662         (WebCore::ScrollView::setScrollBarsMode):
663         (WebCore::ScrollView::setStaticBackground):
664         (WebCore::ScrollView::updateScrollInfo):
665         (WebCore::ScrollView::updateScrollBars):
666         * platform/win/TemporaryLinkStubs.cpp:
667         (BrowserExtensionWin::goBackOrForward):
668         (BrowserExtensionWin::setIconURL):
669         (ScrollView::scrollPointRecursively):
670         * platform/win/WidgetWin.cpp:
671         (WebCore::Widget::windowHandle): mark as const
672
673 2006-03-10  David Hyatt  <hyatt@apple.com>
674
675         Rename the m_renderer variable to m_dataSet now that the class name
676         has changed.
677
678         Reviewed by adele
679
680         * platform/Font.cpp:
681         (WebCore::m_wordSpacing):
682         (WebCore::Font::Font):
683         (WebCore::Font::operator=):
684         (WebCore::Font::update):
685         * platform/Font.h:
686         * platform/FontDataSet.h:
687         * platform/mac/FontMac.mm:
688         (WebCore::Font::getWebCoreFont):
689         (WebCore::Font::ascent):
690         (WebCore::Font::descent):
691         (WebCore::Font::lineSpacing):
692         (WebCore::Font::xHeight):
693         (WebCore::Font::isFixedPitch):
694         (WebCore::Font::selectionRectForText):
695         (WebCore::Font::drawText):
696         (WebCore::Font::drawHighlightForText):
697         (WebCore::Font::drawLineForText):
698         (WebCore::Font::drawLineForMisspelling):
699         (WebCore::Font::misspellingLineThickness):
700         (WebCore::Font::floatWidth):
701         (WebCore::Font::checkSelectionPoint):
702         * platform/win/FontWin.cpp:
703         (WebCore::FontData::FontData):
704         (WebCore::FontData::~FontData):
705         (WebCore::getFontData):
706         (WebCore::FontDataSet::primaryFont):
707         (WebCore::Font::floatWidth):
708         (WebCore::Font::ascent):
709         (WebCore::Font::descent):
710         (WebCore::Font::xHeight):
711         (WebCore::Font::lineSpacing):
712         (WebCore::Font::isFixedPitch):
713         (WebCore::Font::drawText):
714
715 2006-03-10  David Hyatt  <hyatt@apple.com>
716
717         Rename FontRenderer to FontDataSet.
718
719         Reviewed by adele
720
721         * WebCore.xcodeproj/project.pbxproj:
722         * platform/Font.cpp:
723         (WebCore::Font::update):
724         * platform/Font.h:
725         * platform/FontDataSet.h: Added.
726         * platform/FontRenderer.h: Removed.
727         * platform/mac/FontMac.mm:
728         (WebCore::FontDataSet::~FontDataSet):
729         (WebCore::FontDataSet::getWebCoreFont):
730         (WebCore::FontDataSet::getRenderer):
731         (WebCore::FontDataSet::determinePitch):
732         (WebCore::FontDataSet::invalidate):
733         * platform/win/FontWin.cpp:
734         (WebCore::getCairoFont):
735         (WebCore::FontDataSet::~FontDataSet):
736         (WebCore::FontDataSet::determinePitch):
737         (WebCore::FontDataSet::invalidate):
738         (WebCore::FontDataSet::primaryCairoFont):
739
740 2006-03-09  Justin Garcia  <justin.garcia@apple.com>
741
742         Reviewed by adele
743         
744         <http://bugzilla.opendarwin.org/show_bug.cgi?id=7692>
745         Should use an iterator in CompositeEditCommand::doUnapply()
746         
747         ~30% speedup of a big undo
748
749         * editing/CompositeEditCommand.cpp:
750         (WebCore::CompositeEditCommand::doUnapply):
751         (WebCore::CompositeEditCommand::doReapply):
752
753 2006-03-09  Adele Peterson  <adele@apple.com>
754
755         Reviewed by Tim O.
756
757         Removed unnecessary alerts in TextIterator advance methods.  
758         We want to be able to use advance() even if the iterator is already at the end.
759
760         * editing/visible_text.cpp:
761         (khtml::TextIterator::advance): remove assert since TextIterator will just do nothing if its already at the end.
762         (khtml::CharacterIterator::advance): ditto.
763         * rendering/RenderTextField.cpp: (WebCore::RenderTextField::visiblePositionForIndex):
764         Since the asserts in the iterator are removed, we don't have to check for it.atEnd() before calling advance.
765
766 2006-03-09  David Hyatt <hyatt@apple.com>
767
768         Make text paint with the correct foreground color on Windows.
769         Make the face validation check case insensitive.
770         Force ClearType to be on for font rendering.
771
772         Reviewed by Tim Hatcher
773
774         * platform/win/FontWin.cpp:
775         (WebCore::getCairoFont):
776         (WebCore::Font::drawText):
777
778 2006-03-09  Adele Peterson  <adele@apple.com>
779
780         Reviewed by Hyatt.
781
782         - Fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=7675
783         When new text fields change from visibility:hidden to visibility:visible, value doesn't display
784
785         Test: fast/forms/input-appearance-visibility.html
786
787         * rendering/RenderTextField.cpp: (WebCore::RenderTextField::setStyle):
788         Sets the style directly on the children of the inner div.
789
790 2006-03-09  David Hyatt <hyatt@apple.com>
791
792         Make basic text rendering work on Win32.
793
794         Reviewed by eric
795
796         * WebCore.vcproj/WebCore/WebCore.vcproj:
797         Add FontDescription.h to the Visual Studio project.
798
799         * bridge/win/FrameWin.cpp:
800         (WebCore::FrameWin::FrameWin):
801         Add some good default font settings to KHTMLSettings.
802
803         * platform/Font.cpp:
804         (WebCore::Font::update):
805         Renamed the FontRenderer method to invalidate, so that's what
806         update calls now.
807
808         * platform/FontRenderer.h:
809         * platform/mac/FontMac.mm:
810         (WebCore::FontRenderer::~FontRenderer):
811         (WebCore::FontRenderer::invalidate):
812         Rename the update method to invalidate.  Make sure the Mac
813         font renderer releases its resources when it gets destroyed.
814
815         * platform/win/FontWin.cpp:
816         (WebCore::CairoFont::CairoFont):
817         (WebCore::CairoFont::~CairoFont):
818         (WebCore::CairoFont::hfont):
819         (WebCore::CairoFont::scaledFont):
820         (WebCore::CairoFont::setMetrics):
821         (WebCore::CairoFont::ascent):
822         (WebCore::CairoFont::descent):
823         (WebCore::CairoFont::xHeight):
824         (WebCore::CairoFont::lineSpacing):
825         Implement a new class called CairoFont that encapsulates
826         the windows HFONT, the cairo font face, and the cairo scaled
827         font.
828
829         (WebCore::getCairoFont):
830         The method to look up a Cairo font.  This will eventually use
831         a hash, but for now it just always makes the fonts over and
832         over again.
833
834         (WebCore:::m_pitch):
835         (WebCore::FontRenderer::~FontRenderer):
836         (WebCore::FontRenderer::determinePitch):
837         (WebCore::FontRenderer::invalidate):
838         More of the FontRenderer plumbing.
839
840         (WebCore::FontRenderer::primaryCairoFont):
841         Returns the primary Cairo font for a family list.  This is basically
842         the first family that is present on the system.
843
844         (WebCore::Font::floatWidth):
845         The width method uses GetTextExtentPoint32W for now.  This
846         is totally wrong and will eventually be replaced by Cairo
847         code.
848
849         (WebCore::Font::ascent):
850         (WebCore::Font::descent):
851         (WebCore::Font::xHeight):
852         (WebCore::Font::lineSpacing):
853         (WebCore::Font::isFixedPitch):
854         Accessors for the metrics and pitch info.
855
856         (WebCore::Font::drawText):
857         Drawing of text.  Uses TextOut and is also basically throwaway
858         code.
859
860         * platform/win/TemporaryLinkStubs.cpp:
861         (Font::checkSelectionPoint):
862         Move the checkSelectionPoint method back to the link stubs.
863
864 2006-03-09  Justin Garcia  <justin.garcia@apple.com>
865
866         Reviewed by harrison
867     
868         Fixed formatting and changed functions to take in 
869         a const Selection& instead of a Selection.
870
871         * editing/ModifySelectionListLevelCommand.cpp:
872         (WebCore::ModifySelectionListLevelCommand::canIncreaseSelectionListLevel):
873         (WebCore::ModifySelectionListLevelCommand::canDecreaseSelectionListLevel):
874         (WebCore::ModifySelectionListLevelCommand::increaseSelectionListLevel):
875         (WebCore::ModifySelectionListLevelCommand::decreaseSelectionListLevel):
876         (WebCore::modifySelectionListLevel):
877         (WebCore::getStartEndListChildren):
878         (WebCore::canIncreaseListLevel):
879         (WebCore::canDecreaseListLevel):
880         (WebCore::ModifySelectionListLevelCommand::increaseListLevel):
881         (WebCore::ModifySelectionListLevelCommand::decreaseListLevel):
882         * editing/ModifySelectionListLevelCommand.h:
883
884 2006-03-09  Adele Peterson  <adele@apple.com>
885
886         Reviewed by Darin.
887
888         - Fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=6814
889         Implement selection methods for RenderTextField
890
891         Test: fast/forms/input-appearance-selection.html
892
893         * rendering/RenderTextField.cpp:
894         (WebCore::RenderTextField::createDivStyle): removed extra space.
895         (WebCore::RenderTextField::select): Removed checks for document and m_div since there should always be a document and 
896          m_div will be initialized as the renderer gets attached.
897         (WebCore::RenderTextField::selectionStart): Calls indexForVisiblePosition.
898         (WebCore::RenderTextField::selectionEnd): ditto.
899         (WebCore::RenderTextField::setSelectionStart): calls setSelectionRange.
900         (WebCore::RenderTextField::setSelectionEnd): ditto.
901         (WebCore::RenderTextField::setSelectionRange): gets VisiblePositions for both indices, and sets the selection.
902         (WebCore::RenderTextField::visiblePositionForIndex): Added helper method.
903         (WebCore::RenderTextField::indexForVisiblePosition): Added helper method.
904         * rendering/RenderTextField.h: Added new helper methods for selection.
905
906 2006-03-09  David Carson  <dacarson@gmail.com>
907
908         Test: fast/canvas/fillrect_gradient.html
909
910         Reviewed by Darin.
911
912         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=6103
913           Rectangles are not filled according to the Web Applications Working Draft
914
915         * khtml/ecma/kjs_html.cpp: (KJS::Context2DFunction::callAsFunction):
916         Modified fillrect function to check and use a gradient if set.
917         Builds a path to fill rects with a gradient.
918
919 2006-03-09  Mitz Pettel  <opendarwin.org@mitzpettel.com>
920
921         No test because this fixes an existing pixel test (and does not affect
922         the render tree).
923
924         Reviewed by Maciej.
925
926         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=7664
927           REGRESSION: tests that include numeric list markers fail in pixel mode
928
929         * platform/GraphicsContext.cpp:
930         (WebCore::GraphicsContext::drawText): Restored AlignRight behavior.
931
932 2006-03-09  Mitz Pettel  <opendarwin.org@mitzpettel.com>
933
934         No test because we couldn't figure out how to write one.
935
936         Reviewed by Darin.
937
938         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=7680
939           REGRESSION: Ellipsis painted over the chrome and in invalid contexts
940
941         * rendering/render_line.cpp:
942         (WebCore::EllipsisBox::paint): Replaced call to Font::drawText with
943         GraphicsContext::drawText, which checks the paintingDisabled flag.
944
945 2006-03-09  Maciej Stachowiak  <mjs@apple.com>
946
947         Reviewed by Eric.
948
949         - make link clicks work by propagating them up to a client
950
951         * Viewer/ImageView.cpp:
952         * bridge/win/FrameWin.cpp:
953         * bridge/win/FrameWin.h:
954         * platform/win/TemporaryLinkStubs.cpp:
955         (FrameWin::incomingReferrer):
956
957 2006-03-09  Eric Seidel  <eseidel@apple.com>
958
959         Reviewed by mjs.
960
961         Add support for Timers under 10ms.
962         Fix random crashers due to multi-threaded loading.
963
964         * platform/TransferJob.h:
965         * platform/TransferJobInternal.h:
966         (WebCore::TransferJobInternal::TransferJobInternal):
967         * platform/Widget.h:
968         * platform/win/SharedTimerWin.cpp:
969         (WebCore::TimerWindowWndProc):
970         (WebCore::initializeOffScreenTimerWindow):
971         (WebCore::setSharedTimerFireTime):
972         * platform/win/TemporaryLinkStubs.cpp:
973         (WebCore::TransferJob::assembleResponseHeaders):
974         (WebCore::TransferJob::retrieveCharset):
975         * platform/win/TransferJobWin.cpp:
976         (WebCore::addToOutstandingJobs):
977         (WebCore::removeFromOutstandingJobs):
978         (WebCore::lookupTransferJob):
979         (WebCore::TransferJobWndProc):
980         (WebCore::initializeOffScreenTransferJobWindow):
981         (WebCore::TransferJob::~TransferJob):
982         (WebCore::transferJobStatusCallback):
983         (WebCore::TransferJob::start):
984         (WebCore::TransferJob::cancel):
985         * platform/win/WidgetWin.cpp:
986
987 2006-03-08  Justin Garcia  <justin.garcia@apple.com>
988
989         Reviewed by darin
990         
991         <http://bugzilla.opendarwin.org/show_bug.cgi?id=7579>
992         TinyMCE: Implement execCommand(insertImage, ...)
993         
994         Implemented InsertImage and also changed paste to use a single 
995         rule for when to remove junk that remains after node removal. 
996
997         * editing/ReplaceSelectionCommand.cpp:
998         (WebCore::ReplaceSelectionCommand::removeNodeAndPruneAncestors):
999         (WebCore::ReplaceSelectionCommand::doApply):
1000         (WebCore::ReplaceSelectionCommand::removeLinePlaceholderIfNeeded):
1001         * editing/ReplaceSelectionCommand.h:
1002         * editing/htmlediting.cpp:
1003         * editing/jsediting.cpp:
1004
1005 2006-03-08  Eric Seidel  <eseidel@apple.com>
1006
1007         Reviewed by hyatt.
1008
1009         Fix build script to properly copy dll files.
1010
1011         * WebCore.vcproj/WebCore/build-generated-files.sh:
1012
1013 2006-03-08  Rob Buis  <buis@kde.org>
1014
1015         Reviewed by eseidel.
1016
1017         Fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=6899 SVG <rect> does not respect display: none
1018
1019         For svg elements that can render, call StyledElementImpl::rendererIsNeeded
1020         to decide whether the element should render. In particular this way
1021         any setting of display="none" is handled.
1022
1023         * ksvg2/svg/SVGAElementImpl.h:
1024         (WebCore::SVGAElementImpl::rendererIsNeeded):
1025         * ksvg2/svg/SVGCircleElementImpl.h:
1026         (WebCore::SVGCircleElementImpl::rendererIsNeeded):
1027         * ksvg2/svg/SVGEllipseElementImpl.h:
1028         (WebCore::SVGEllipseElementImpl::rendererIsNeeded):
1029         * ksvg2/svg/SVGForeignObjectElementImpl.h:
1030         (WebCore::SVGForeignObjectElementImpl::rendererIsNeeded):
1031         * ksvg2/svg/SVGGElementImpl.h:
1032         (WebCore::SVGGElementImpl::rendererIsNeeded):
1033         * ksvg2/svg/SVGImageElementImpl.h:
1034         (WebCore::SVGImageElementImpl::rendererIsNeeded):
1035         * ksvg2/svg/SVGLineElementImpl.h:
1036         (WebCore::SVGLineElementImpl::rendererIsNeeded):
1037         * ksvg2/svg/SVGMarkerElementImpl.h:
1038         (WebCore::SVGMarkerElementImpl::rendererIsNeeded):
1039         * ksvg2/svg/SVGMaskElementImpl.h:
1040         (WebCore::SVGMaskElementImpl::rendererIsNeeded):
1041         * ksvg2/svg/SVGPathElementImpl.h:
1042         (WebCore::SVGPathElementImpl::rendererIsNeeded):
1043         * ksvg2/svg/SVGPatternElementImpl.h:
1044         (WebCore::SVGPatternElementImpl::rendererIsNeeded):
1045         * ksvg2/svg/SVGPolyElementImpl.h:
1046         (WebCore::SVGPolyElementImpl::rendererIsNeeded):
1047         * ksvg2/svg/SVGRectElementImpl.h:
1048         (WebCore::SVGRectElementImpl::rendererIsNeeded):
1049         * ksvg2/svg/SVGSVGElementImpl.h:
1050         (WebCore::SVGSVGElementImpl::rendererIsNeeded):
1051         * ksvg2/svg/SVGSwitchElementImpl.h:
1052         (WebCore::SVGSwitchElementImpl::rendererIsNeeded):
1053         * ksvg2/svg/SVGTSpanElementImpl.h:
1054         (WebCore::SVGTSpanElementImpl::rendererIsNeeded):
1055         * ksvg2/svg/SVGTextElementImpl.h:
1056         (WebCore::SVGTextElementImpl::rendererIsNeeded):
1057         * ksvg2/svg/SVGUseElementImpl.h:
1058         (WebCore::SVGUseElementImpl::rendererIsNeeded):
1059
1060 2006-03-08  Eric Seidel  <eseidel@apple.com>
1061
1062         Reviewed by mjs.
1063
1064         Add stubs to allow JavaScript-enabled WebCore to not crash.
1065         Add ScreenWin implementation.
1066         Add alert() support.
1067
1068         * WebCore.vcproj/WebCore/WebCore.vcproj:
1069         * bridge/win/FrameWin.cpp:
1070         (WebCore::FrameWin::runJavaScriptAlert):
1071         (WebCore::FrameWin::runJavaScriptConfirm):
1072         * platform/win/ScreenWin.cpp: Added.
1073         (WebCore::monitorInfoForWidget):
1074         (WebCore::WebCore::screenRect):
1075         (WebCore::WebCore::screenDepth):
1076         (WebCore::WebCore::usableScreenRect):
1077         * platform/win/TemporaryLinkStubs.cpp:
1078         (FrameWin::canUndo):
1079         (FrameWin::runJavaScriptPrompt):
1080         (FrameWin::canPaste):
1081         (WebCore::setCookies):
1082         (WebCore::cookies):
1083         (WebCore::cookiesEnabled):
1084         (PlugInInfoStore::createPluginInfoForPluginAtIndex):
1085         (PlugInInfoStore::pluginCount):
1086         (WebCore::refreshPlugins):
1087         (FrameWin::clearUndoRedoOperations):
1088         (FrameWin::incomingReferrer):
1089
1090 2006-03-08  Darin Adler  <darin@apple.com>
1091
1092         Reviewed by Maciej.
1093
1094         - fix another instance of the bug I just fixed in the Macintosh-specific code path
1095
1096         * platform/image-decoders/gif/GIFImageReader.h: Remove not-so-useful 100ms constant.
1097         * platform/image-decoders/gif/GIFImageReader.cpp: (GIFImageReader::read):
1098         Use the correct rule for minimum frame durations.
1099
1100 2006-03-08  Maciej Stachowiak  <mjs@apple.com>
1101
1102         Reviewed by Eric.
1103
1104         - very rough implementation of networking in TransferJob for windows
1105
1106         * platform/TransferJob.h:
1107         * platform/TransferJobInternal.h:
1108         (WebCore::TransferJobInternal::TransferJobInternal):
1109         * platform/win/TransferJobWin.cpp:
1110         (WebCore::transferJobStatusCallback):
1111         (WebCore::TransferJob::start):
1112
1113 2006-03-08  Maciej Stachowiak  <mjs@apple.com>
1114
1115         Reviewed by Darin.
1116
1117         - fix win32 build
1118
1119         * platform/win/FontWin.cpp:
1120         (WebCore::Font::drawText):
1121         (WebCore::Font::drawHighlightForText):
1122         * platform/win/TemporaryLinkStubs.cpp:
1123         (GraphicsContext::clearFocusRing):
1124         (GraphicsContext::selectedTextBackgroundColor):
1125         (Font::selectionRectForText):
1126
1127 2006-03-08  Darin Adler  <darin@apple.com>
1128
1129         Reviewed by Maciej.
1130
1131         - fix one more thing from http://bugzilla.opendarwin.org/show_bug.cgi?id=7528
1132           REGRESSION: GIF animation speeds are wrong on a page with many animated GIFs
1133
1134         No layout test because I don't know how to test animated GIF speed.
1135
1136         * platform/mac/ImageSourceMac.cpp: (WebCore::ImageSource::frameDurationAtIndex):
1137         Use the correct rule for minimum frame durations. It's a bit non-intuitive, so
1138         I made the comment more explicit. The old code in WebKit had this rule.
1139
1140 2006-03-08  David Hyatt  <hyatt@apple.com>
1141
1142         Make GraphicsContext call into Font to draw all text and eliminate
1143         all knowledge of WebTextRenderers from it.
1144
1145         Reviewed by darin
1146
1147         * platform/Font.h:
1148         * platform/GraphicsContext.cpp:
1149         (WebCore::GraphicsContext::drawText):
1150         (WebCore::GraphicsContext::drawHighlightForText):
1151         (WebCore::GraphicsContext::drawLineForText):
1152         (WebCore::GraphicsContext::drawLineForMisspelling):
1153         (WebCore::GraphicsContext::misspellingLineThickness):
1154         * platform/GraphicsContext.h:
1155         (WebCore::GraphicsContext::platformContext):
1156         * platform/cairo/GraphicsContextCairo.cpp:
1157         (WebCore::GraphicsContext::platformContext):
1158         * platform/mac/FontMac.mm:
1159         (WebCore::Font::drawText):
1160         (WebCore::Font::drawHighlightForText):
1161         (WebCore::Font::drawLineForText):
1162         (WebCore::Font::drawLineForMisspelling):
1163         (WebCore::Font::misspellingLineThickness):
1164         * platform/mac/GraphicsContextMac.mm:
1165         * platform/win/FontWin.cpp:
1166         (WebCore::Font::drawText):
1167         * rendering/InlineTextBox.cpp:
1168         (WebCore::InlineTextBox::paint):
1169         (WebCore::InlineTextBox::paintSelection):
1170         (WebCore::InlineTextBox::paintMarkedTextBackground):
1171         (WebCore::InlineTextBox::paintTextMatchMarker):
1172
1173 2006-03-08  Darin Adler  <darin@apple.com>
1174
1175         Reviewed by Hyatt.
1176
1177         - fixed super-fast animation of many animated GIFs
1178
1179         No layout test because I don't know how to test animated GIF speed.
1180
1181         * platform/mac/ImageSourceMac.cpp: (WebCore::ImageSource::frameDurationAtIndex):
1182         Always take the minimum duration into account, even if there's some kind of failure
1183         getting the duration from the GIF.
1184
1185 2006-03-07  Darin Adler  <darin@apple.com>
1186
1187         Reviewed by Anders.
1188
1189         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=7655
1190           unwanted output while running layout tests
1191
1192         * khtml/xsl/xsl_stylesheetimpl.cpp: (WebCore::XSLStyleSheetImpl::parseString):
1193         Pass XML_PARSE_NOERROR and XML_PARSE_NOWARNING. We don't want errors and warnings
1194         to be logged to stdout or stderr. If we later decide we want the error messages,
1195         then we should do the additional work to put them into the web page or the
1196         console (along with the JavaScript errors).
1197
1198         * platform/ArrayImpl.cpp: (WebCore::ArrayImpl::resize): Add a preflight to protect
1199         against integer overflow due to large array size. Noticed this while looking into
1200         the malloc error message.
1201
1202 2006-03-07  Darin Adler  <darin@apple.com>
1203
1204         Reviewed by Adele.
1205
1206         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=7647
1207           Crash when typing into text contols
1208
1209         I missed a couple places that were still saying KWQWidgetHolder
1210         in the change I landed late last night.
1211
1212         * kwq/KWQTextArea.h:
1213         * kwq/KWQTextArea.mm:
1214         * kwq/KWQTextField.h:
1215         Changed them all to say WebCoreWidgetHolder.
1216
1217 2006-03-07  Eric Seidel  <eseidel@apple.com>
1218
1219         Reviewed by hyatt.
1220
1221         Fix cursor support on win32.
1222
1223         * platform/win/WidgetWin.cpp:
1224         (WebCore::Widget::setCursor):
1225
1226 2006-03-07  Eric Seidel  <eseidel@apple.com>
1227
1228         Reviewed by hyatt.
1229
1230         Fix basic text support.
1231
1232         * WebCore.vcproj/WebCore/WebCore.vcproj:
1233         * platform/cairo/GraphicsContextCairo.cpp:
1234         (WebCore::GraphicsContext::drawText):
1235
1236 2006-03-07  Dave Hyatt <hyatt@apple.com>
1237
1238         Eliminate the unused parameters of the QString version of drawText.
1239
1240         Reviewed by eric
1241
1242         * platform/GraphicsContext.h:
1243         * platform/cairo/GraphicsContextCairo.cpp:
1244         (WebCore::GraphicsContext::drawText):
1245         * platform/mac/GraphicsContextMac.mm:
1246         (WebCore::GraphicsContext::drawText):
1247         * rendering/render_image.cpp:
1248         (WebCore::RenderImage::paint):
1249         * rendering/render_list.cpp:
1250         (WebCore::RenderListMarker::paint):
1251
1252 2006-03-07  Eric Seidel  <eseidel@apple.com>
1253
1254         Reviewed by hyatt.
1255
1256         Add very basic text support.
1257         Sort a few more stubs.
1258
1259         * WebCore.vcproj/WebCore/WebCore.vcproj:
1260         * platform/cairo/GraphicsContextCairo.cpp:
1261         (WebCore::GraphicsContext::font):
1262         (WebCore::GraphicsContext::setFont):
1263         (WebCore::GraphicsContext::drawText):
1264         * platform/win/FontWin.cpp: Added.
1265         (WebCore::Font::drawText):
1266         * platform/win/TemporaryLinkStubs.cpp:
1267         (QComboBox::focusPolicy):
1268         (ScrollView::scrollXOffset):
1269         (Font::isFixedPitch):
1270         (Path::boundingRect):
1271
1272 2006-03-07  Adele Peterson  <adele@apple.com>
1273
1274         Reviewed by Hyatt.
1275
1276         - Fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=7319
1277         Can't see caret at the end of a contenteditable div with overflow:hidden
1278
1279         No tests added since I don't think the blinking caret will show up in our tests.
1280
1281         * rendering/RenderBlock.cpp:
1282         (WebCore::RenderBlock::rightmostPosition): When calculating the rightmostPosition for editable blocks, 
1283         we need to account for the caret that can be drawn 1 px past the last child inline box.
1284
1285 2006-03-07  David Kilzer  <ddkilzer@kilzer.net>
1286
1287         Reviewed by Darin.
1288
1289         - Fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=3905
1290         Missing </title> makes page blank
1291
1292         Test: fast/js/exception-linenums-in-html-1.html
1293         Test: fast/js/exception-linenums-in-html-2.html
1294         Test: fast/js/missing-title-end-tag-js.html
1295         Test: fast/tokenizer/missing-title-end-tag-1.html
1296         Test: fast/tokenizer/missing-title-end-tag-2.html
1297
1298         * khtml/html/htmlparser.cpp:
1299         (WebCore::HTMLParser::handleError): Add check for missing </title> tag and handle
1300         this condition if identified.
1301         * khtml/html/htmltokenizer.cpp:
1302         (WebCore::HTMLTokenizer::parseTag): If parseSpecial() consumes the rest of the
1303         document looking for a </title> tag, reset the state of the tokenizer and
1304         retokenize with no special handling for <title>.  The parser will handle the
1305         missing </title> tag in HTMLParser::handleError().
1306         * platform/SegmentedString.cpp:
1307         (WebCore::SegmentedString::SegmentedString): Added copy constructor.
1308         (WebCore::SegmentedString::operator=): Added assignment operator.  Previously the
1309         compiler was generating a default method for the assignment operator, but it did
1310         not handle m_currentChar properly.
1311         * platform/SegmentedString.h: Added prototypes for copy constructor and
1312         assignment operator.
1313
1314 2006-03-07  Eric Seidel  <eseidel@apple.com>
1315
1316         Fix win32 link stubs.
1317
1318         * platform/win/TemporaryLinkStubs.cpp:
1319         (WebCore::searchableIndexIntroduction):
1320         (WebCore::setCookies):
1321         (WebCore::cookies):
1322         (WebCore::cookiesEnabled):
1323         (WebCore::findNextSentenceFromIndex):
1324         (WebCore::findSentenceBoundary):
1325         (WebCore::findNextWordFromIndex):
1326         (WebCore::findWordBoundary):
1327         (WebCore::submitButtonDefaultLabel):
1328         (WebCore::inputElementAltText):
1329         (WebCore::resetButtonDefaultLabel):
1330         (WebCore::defaultLanguage):
1331
1332 2006-03-07  Darin Adler  <darin@apple.com>
1333
1334         Reviewed by Adele, except for the first change listed.
1335
1336         - fix recently-introduced bug that GuardMalloc found while I was debugging my other change
1337
1338         * rendering/render_frames.cpp: (WebCore::RenderPart::~RenderPart):
1339         Set m_widget to 0 before calling deref so we don't end up trying to do unwanted work.
1340
1341         - removed 10 more files from KWQ
1342
1343         * ForwardingHeaders/klocale.h: Removed.
1344
1345         * khtml/misc/helper.cpp: Removed.
1346         * khtml/misc/helper.h: Removed.
1347
1348         * kwq/KWQCollection.h: Removed.
1349         * kwq/KWQKCookieJar.h: Removed.
1350         * kwq/KWQKCookieJar.mm: Removed.
1351         * kwq/KWQKLocale.h: Removed.
1352         * kwq/KWQKLocale.mm: Removed.
1353         * kwq/KWQKURL.h: Removed.
1354         * kwq/KWQKURL.mm: Removed.
1355         * kwq/KWQTextUtilities.h: Removed.
1356         * kwq/KWQTextUtilities.mm: Removed.
1357         * kwq/KWQView.h: Removed.
1358
1359         * platform/CookieJar.h: Added.
1360         * platform/Language.h: Added.
1361         * platform/LocalizedStrings.h: Added.
1362         * platform/TextBoundaries.h: Added.
1363         * platform/mac/CookieJar.mm: Added.
1364         * platform/mac/Language.mm: Added.
1365         * platform/mac/LocalizedStringsMac.mm: Added.
1366         * platform/mac/TextBoundaries.mm: Added.
1367         * platform/mac/WebCoreWidgetHolder.h: Added.
1368
1369         * WebCore.xcodeproj/project.pbxproj: Updated for removed and added files.
1370         * WebCore.vcproj/WebCore/WebCore.vcproj: Updated for removed and added files.
1371
1372         * bridge/mac/WebCoreFrameBridge.mm: Updated includes.
1373         (-[WebCoreFrameBridge elementForView:]): Changed KWQWidgetHolder to WebCoreWidgetHolder.
1374
1375         * editing/visible_units.cpp:
1376         (WebCore::previousWordPositionBoundary):
1377         (WebCore::nextWordPositionBoundary):
1378         (WebCore::previousSentencePositionBoundary):
1379         (WebCore::nextSentencePositionBoundary):
1380         Call TextBoundaries.h functions instead of helper.h ones.
1381
1382         * khtml/ecma/kjs_navigator.cpp: (KJS::Navigator::getValueProperty):
1383         * ksvg2/svg/SVGTestsImpl.cpp: (WebCore::SVGTestsImpl::isValid):
1384         Changed to call defaultLanguage; cleaned up formatting.
1385
1386         * khtml/html/HTMLFormElementImpl.cpp: Removed stray comment.
1387
1388         * khtml/html/html_documentimpl.cpp:
1389         (WebCore::HTMLDocumentImpl::cookie):
1390         (WebCore::HTMLDocumentImpl::setCookie):
1391         Call CookieJar.h functions.
1392
1393         * css/css_valueimpl.cpp:
1394         * css/cssparser.cpp:
1395         * css/cssstyleselector.cpp:
1396         * dom/DocumentImpl.cpp:
1397         * dom/dom_position.cpp:
1398         * khtml/ecma/kjs_window.cpp:
1399         * khtml/html/HTMLInputElementImpl.cpp:
1400         * khtml/html/html_headimpl.cpp:
1401         * khtml/html/htmlparser.cpp:
1402         * khtml/misc/decoder.cpp:
1403         * ksvg2/svg/SVGDocumentImpl.cpp:
1404         * kwq/KWQComboBox.mm:
1405         * kwq/KWQKSSLKeyGen.mm:
1406         * kwq/KWQListBox.mm:
1407         * kwq/KWQListImpl.cpp:
1408         * kwq/KWQListImpl.h:
1409         * kwq/KWQScrollBar.mm:
1410         * kwq/KWQSlider.mm:
1411         * kwq/KWQTextField.mm:
1412         * kwq/KWQValueList.h:
1413         * loader/DocLoader.cpp:
1414         * page/Frame.cpp:
1415         * page/FrameView.cpp:
1416         * platform/mac/WidgetMac.mm:
1417         (WebCore::Widget::beforeMouseDown):
1418         (WebCore::Widget::afterMouseDown):
1419         * rendering/render_applet.cpp:
1420         * rendering/render_form.cpp:
1421         * rendering/render_image.cpp:
1422         * rendering/render_list.cpp:
1423         Updated includes and protocol names.
1424
1425         * khtml/html/htmltokenizer.cpp: (WebCore::HTMLTokenizer::write): Remove
1426         QT_VERSION code.
1427         * platform/QString.h: Remove QT_VERSION.
1428
1429         * kwq/KWQPtrList.h: Change to no longer use QPtrCollection.
1430
1431         * kwq/KWQRenderTreeDebug.h:
1432         * kwq/KWQRenderTreeDebug.cpp: (externalRepresentation):
1433         Remove unused debuggingRenderTree boolean.
1434
1435 2006-03-07  Eric Seidel  <eseidel@apple.com>
1436
1437         Reviewed by darin.
1438
1439         * platform/mac/GraphicsContextMac.mm: Add Widget.h to fix no-svg build.
1440
1441 2006-03-06  Eric Seidel  <eseidel@apple.com>
1442
1443         Reviewed by hyatt.
1444
1445         Make spinneret run again, fix webview to support dynamic resize.
1446
1447         * platform/win/TemporaryLinkStubs.cpp:
1448         (Widget::setDrawingAlpha):
1449         * platform/win/WidgetWin.cpp:
1450         (WebCore::Widget::Widget):
1451         (WebCore::Widget::setClient):
1452         (WebCore::Widget::client):
1453         (WebCore::Widget::frameGeometry):
1454
1455 2006-03-06  Eric Seidel  <eseidel@apple.com>
1456
1457         Reviewed by darin.
1458
1459         Fix win32 build.
1460
1461         * platform/win/TemporaryLinkStubs.cpp:
1462         (QScrollBar::QScrollBar):
1463         (QTextEdit::setAlignment):
1464         (Widget::client):
1465         (Widget::setClient):
1466         (QLineEdit::setAlignment):
1467
1468 2006-03-06  Beth Dakin  <bdakin@apple.com>
1469
1470         Reviewed by Darin.
1471
1472         Fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=7566 (also 
1473         <rdar://problem/4467128> ). Must call update() on a Font before 
1474         attempting to use it because the FontRenderer is not created until 
1475         update() is called.
1476
1477         * kwq/KWQListBox.mm:
1478         (QListBox::sizeForNumberOfLines): Call update()
1479         (-[KWQTableView drawRow:clipRect:]): Call update()
1480
1481 2006-03-06  Darin Adler  <darin@apple.com>
1482
1483         Reviewed by Adele.
1484
1485         - http://bugzilla.opendarwin.org/show_bug.cgi?id=7564
1486           remove QObject, QGuardedPtr, slots, and signals
1487
1488         I had written a detailed change log entry, but I lost it!
1489         I'm too annoyed to write one all over again.
1490
1491         * ForwardingHeaders/qguardedptr.h: Removed.
1492         * ForwardingHeaders/qobject.h: Removed.
1493
1494         * kwq/KWQGuardedPtr.cpp: Removed.
1495         * kwq/KWQGuardedPtr.h: Removed.
1496         * kwq/KWQNamespace.h: Removed.
1497         * kwq/KWQObject.cpp: Removed.
1498         * kwq/KWQObject.h: Removed.
1499         * kwq/KWQSignal.cpp: Removed.
1500         * kwq/KWQSignal.h: Removed.
1501         * kwq/KWQSlot.cpp: Removed.
1502         * kwq/KWQSlot.h: Removed.
1503
1504         * platform/WidgetClient.h: Added.
1505
1506         * WebCore.xcodeproj/project.pbxproj: Updated for removed and added files.
1507         * WebCore.vcproj/WebCore/WebCore.vcproj: Ditto.
1508
1509         * bindings/js/JSDOMCore.cpp: Touched.
1510         * bindings/js/JSDOMEvents.cpp: Ditto.
1511
1512         * bridge/BrowserExtension.h:
1513         (WebCore::BrowserExtension::~BrowserExtension):
1514         * bridge/mac/WebCoreFrameBridge.mm:
1515         (-[WebCoreFrameBridge elementForView:]):
1516         * dom/CDATASectionImpl.cpp:
1517         (WebCore::CDATASectionImpl::cloneNode):
1518         * dom/DocumentImpl.cpp:
1519         (WebCore::DocumentImpl::~DocumentImpl):
1520         * dom/DocumentImpl.h:
1521         * kcanvas/device/KRenderingDevice.h:
1522         * khtml/ecma/kjs_css.cpp:
1523         (KJS::DOMCSSStyleDeclaration::put):
1524         * khtml/ecma/kjs_window.cpp:
1525         (KJS::FrameArray::indexGetter):
1526         (KJS::FrameArray::nameGetter):
1527         * khtml/html/html_documentimpl.cpp:
1528         (WebCore::HTMLDocumentImpl::createTokenizer):
1529         * khtml/html/htmlparser.cpp:
1530         (WebCore::HTMLParser::HTMLParser):
1531         (WebCore::HTMLParser::insertNode):
1532         (WebCore::HTMLParser::handleError):
1533         (WebCore::HTMLParser::commentCreateErrorCheck):
1534         (WebCore::HTMLParser::noscriptCreateErrorCheck):
1535         (WebCore::HTMLParser::isInline):
1536         (WebCore::HTMLParser::finished):
1537         * khtml/html/htmlparser.h:
1538         * khtml/html/htmltokenizer.cpp:
1539         (WebCore::HTMLTokenizer::HTMLTokenizer):
1540         (WebCore::HTMLTokenizer::scriptHandler):
1541         (WebCore::HTMLTokenizer::scriptExecution):
1542         (WebCore::HTMLTokenizer::parseComment):
1543         (WebCore::HTMLTokenizer::parseTag):
1544         (WebCore::HTMLTokenizer::stopParsing):
1545         (WebCore::HTMLTokenizer::timerFired):
1546         (WebCore::HTMLTokenizer::processToken):
1547         (WebCore::parseHTMLDocumentFragment):
1548         * khtml/html/htmltokenizer.h:
1549         * kwq/KWQComboBox.h:
1550         * kwq/KWQComboBox.mm:
1551         (-[KWQPopUpButton setPopulatingMenu:QComboBox:::]):
1552         (QComboBox::itemSelected):
1553         (-[KWQPopUpButton becomeFirstResponder]):
1554         (-[KWQPopUpButton resignFirstResponder]):
1555         * kwq/KWQFileButton.h:
1556         (KWQFileButton::filename):
1557         * kwq/KWQFileButton.mm:
1558         (KWQFileButton::KWQFileButton):
1559         (KWQFileButton::filenameChanged):
1560         (-[KWQFileButtonAdapter filenameChanged:]):
1561         (-[KWQFileButtonAdapter focusChanged:]):
1562         (-[KWQFileButtonAdapter clicked]):
1563         * kwq/KWQLineEdit.h:
1564         * kwq/KWQLineEdit.mm:
1565         (QLineEdit::QLineEdit):
1566         (QLineEdit::setAlignment):
1567         (KWQNSTextAlignment):
1568         * kwq/KWQListBox.h:
1569         (QListBox::changingSelection):
1570         * kwq/KWQListBox.mm:
1571         (QListBox::QListBox):
1572         (-[KWQTableView becomeFirstResponder]):
1573         (-[KWQTableView resignFirstResponder]):
1574         (-[KWQTableView tableViewSelectionDidChange:]):
1575         * kwq/KWQScrollBar.h:
1576         (WebCore::):
1577         (QScrollBar::orientation):
1578         * kwq/KWQScrollBar.mm:
1579         (-[KWQScrollBar initWithQScrollBar:]):
1580         (QScrollBar::QScrollBar):
1581         (QScrollBar::valueChanged):
1582         (QScrollBar::scroll):
1583         * kwq/KWQSlider.h:
1584         * kwq/KWQSlider.mm:
1585         (-[KWQSlider mouseDown:]):
1586         (-[KWQSlider slide:]):
1587         (-[KWQSlider becomeFirstResponder]):
1588         (-[KWQSlider resignFirstResponder]):
1589         (QSlider::QSlider):
1590         (QSlider::sliderValueChanged):
1591         (QSlider::dimensions):
1592         * kwq/KWQTextArea.mm:
1593         (-[KWQTextAreaTextView textViewDidChangeSelection:]):
1594         (-[KWQTextAreaTextView textDidChange:]):
1595         (-[KWQTextAreaTextView becomeFirstResponder]):
1596         (-[KWQTextAreaTextView resignFirstResponder]):
1597         (-[KWQTextAreaTextView mouseDown:]):
1598         (-[KWQTextAreaTextView dispatchHTMLEvent:]):
1599         * kwq/KWQTextEdit.h:
1600         * kwq/KWQTextEdit.mm:
1601         (QTextEdit::QTextEdit):
1602         (QTextEdit::setAlignment):
1603         * kwq/KWQTextField.mm:
1604         (-[KWQTextFieldController action:]):
1605         (-[KWQTextFieldController controlTextDidEndEditing:]):
1606         (-[KWQTextFieldController controlTextDidChange:]):
1607         (-[KWQTextFieldController textChanged]):
1608         (-[KWQTextFieldController textView:didHandleEvent:]):
1609         (-[KWQTextFieldController setHasFocus:]):
1610         (-[KWQTextFieldController textViewDidChangeSelection:]):
1611         * loader/CachedObject.h:
1612         * page/Frame.cpp:
1613         (WebCore::Frame::Frame):
1614         (WebCore::Frame::~Frame):
1615         (WebCore::Frame::setOpener):
1616         (WebCore::Frame::nodeForWidget):
1617         (WebCore::Frame::disconnectOwnerRenderer):
1618         * page/Frame.h:
1619         * page/FramePrivate.h:
1620         (WebCore::FramePrivate::FramePrivate):
1621         * page/FrameView.cpp:
1622         (WebCore::FrameView::~FrameView):
1623         * platform/Brush.h:
1624         * platform/Pen.h:
1625         * platform/Widget.cpp:
1626         (WebCore::Widget::isFrameView):
1627         * platform/Widget.h:
1628         (WebCore::):
1629         * platform/mac/GraphicsContextMac.mm:
1630         (WebCore::GraphicsContext::drawText):
1631         * platform/mac/WidgetMac.mm:
1632         (WebCore::Widget::Widget):
1633         (WebCore::Widget::focusPolicy):
1634         (WebCore::Widget::sendConsumedMouseUp):
1635         (WebCore::Widget::setClient):
1636         (WebCore::Widget::client):
1637         * rendering/InlineTextBox.cpp:
1638         (WebCore::InlineTextBox::operator delete):
1639         * rendering/render_applet.cpp:
1640         (WebCore::RenderApplet::createWidgetIfNecessary):
1641         * rendering/render_form.cpp:
1642         (WebCore::RenderFormElement::clicked):
1643         (WebCore::RenderFormElement::textAlignment):
1644         (WebCore::RenderLineEdit::RenderLineEdit):
1645         (WebCore::RenderLineEdit::selectionChanged):
1646         (WebCore::RenderLineEdit::returnPressed):
1647         (WebCore::RenderLineEdit::performSearch):
1648         (WebCore::RenderLineEdit::valueChanged):
1649         (WebCore::RenderFileButton::RenderFileButton):
1650         (WebCore::RenderFileButton::returnPressed):
1651         (WebCore::RenderFileButton::valueChanged):
1652         (WebCore::RenderLegend::RenderLegend):
1653         (WebCore::RenderSelect::RenderSelect):
1654         (WebCore::RenderSelect::updateFromElement):
1655         (WebCore::RenderSelect::valueChanged):
1656         (WebCore::RenderSelect::selectionChanged):
1657         (WebCore::RenderSelect::createListBox):
1658         (WebCore::RenderTextArea::RenderTextArea):
1659         (WebCore::RenderTextArea::valueChanged):
1660         (WebCore::RenderTextArea::selectionChanged):
1661         (WebCore::RenderSlider::RenderSlider):
1662         (WebCore::RenderSlider::valueChanged):
1663         * rendering/render_form.h:
1664         (WebCore::RenderFormElement::element):
1665         (WebCore::RenderLineEdit::element):
1666         (WebCore::RenderFileButton::element):
1667         (WebCore::RenderFileButton::isEditable):
1668         (WebCore::RenderSelect::element):
1669         (WebCore::RenderTextArea::element):
1670         (WebCore::RenderSlider::element):
1671         * rendering/render_frames.cpp:
1672         (WebCore::RenderPart::RenderPart):
1673         (WebCore::RenderPart::~RenderPart):
1674         (WebCore::RenderPart::setFrame):
1675         (WebCore::RenderPart::setWidget):
1676         (WebCore::RenderPart::deleteWidget):
1677         (WebCore::RenderFrame::RenderFrame):
1678         (WebCore::RenderPartObject::RenderPartObject):
1679         (WebCore::RenderPartObject::layout):
1680         * rendering/render_frames.h:
1681         * rendering/render_layer.cpp:
1682         (WebCore::RenderLayer::RenderLayer):
1683         (WebCore::RenderLayer::~RenderLayer):
1684         (WebCore::RenderLayer::valueChanged):
1685         (WebCore::RenderLayer::setHasHorizontalScrollbar):
1686         (WebCore::RenderLayer::setHasVerticalScrollbar):
1687         (WebCore::RenderLayer::hitTest):
1688         * rendering/render_layer.h:
1689         (WebCore::RenderLayer::parent):
1690         (WebCore::RenderLayer::previousSibling):
1691         (WebCore::RenderLayer::nextSibling):
1692         (WebCore::RenderLayer::firstChild):
1693         (WebCore::RenderLayer::lastChild):
1694         * rendering/render_list.cpp:
1695         (WebCore::RenderListMarker::paint):
1696         * rendering/render_replaced.cpp:
1697         (WebCore::RenderWidget::RenderWidget):
1698         (WebCore::RenderWidget::destroy):
1699         (WebCore::RenderWidget::~RenderWidget):
1700         (WebCore::RenderWidget::setWidget):
1701         (WebCore::RenderWidget::layout):
1702         (WebCore::RenderWidget::sendConsumedMouseUp):
1703         (WebCore::RenderWidget::focusIn):
1704         (WebCore::RenderWidget::focusOut):
1705         (WebCore::RenderWidget::scrollToVisible):
1706         (WebCore::RenderWidget::isVisible):
1707         (WebCore::RenderWidget::element):
1708         (WebCore::RenderWidget::deleteWidget):
1709         * rendering/render_replaced.h:
1710         * xml/xmlhttprequest.cpp:
1711         (WebCore::requestsByDocument):
1712         (WebCore::addToRequestsByDocument):
1713         (WebCore::removeFromRequestsByDocument):
1714         (WebCore::XMLHttpRequest::getResponseText):
1715         (WebCore::XMLHttpRequest::getResponseXML):
1716         (WebCore::XMLHttpRequest::XMLHttpRequest):
1717         (WebCore::XMLHttpRequest::~XMLHttpRequest):
1718         (WebCore::XMLHttpRequest::callReadyStateChangeListener):
1719         (WebCore::XMLHttpRequest::urlMatchesDocumentDomain):
1720         (WebCore::XMLHttpRequest::open):
1721         (WebCore::XMLHttpRequest::send):
1722         (WebCore::XMLHttpRequest::abort):
1723         (WebCore::XMLHttpRequest::overrideMIMEType):
1724         (WebCore::XMLHttpRequest::setRequestHeader):
1725         (WebCore::XMLHttpRequest::getRequestHeader):
1726         (WebCore::XMLHttpRequest::getAllResponseHeaders):
1727         (WebCore::XMLHttpRequest::getResponseHeader):
1728         (WebCore::XMLHttpRequest::getSpecificHeader):
1729         (WebCore::XMLHttpRequest::responseIsXML):
1730         (WebCore::XMLHttpRequest::getStatus):
1731         (WebCore::XMLHttpRequest::getStatusText):
1732         (WebCore::XMLHttpRequest::receivedAllData):
1733         (WebCore::XMLHttpRequest::receivedRedirect):
1734         (WebCore::XMLHttpRequest::receivedData):
1735         (WebCore::XMLHttpRequest::cancelRequests):
1736         (WebCore::XMLHttpRequest::detachRequests):
1737         * xml/xmlhttprequest.h:
1738
1739 2006-03-06  Eric Seidel  <eseidel@apple.com>
1740
1741         Reviewed by beth.
1742
1743         Reorganize link stubs (alphabetically).
1744         Stub out Path methods to make cnn.com work.
1745
1746         * platform/win/TemporaryLinkStubs.cpp:
1747         (FrameView::viewportToGlobal):
1748         (FrameView::updateBorder):
1749         (FrameView::isFrameView):
1750         (FrameView::topLevelWidget):
1751         (QScrollBar::~QScrollBar):
1752         (QScrollBar::setSteps):
1753         (QScrollBar::scroll):
1754         (QScrollBar::QScrollBar):
1755         (QScrollBar::setValue):
1756         (QScrollBar::setKnobProportion):
1757         (QListBox::QListBox):
1758         (QListBox::setSelected):
1759         (QListBox::sizeForNumberOfLines):
1760         (QListBox::isSelected):
1761         (QListBox::appendItem):
1762         (QListBox::doneAppendingItems):
1763         (ScrollView::scrollXOffset):
1764         (QComboBox::focusPolicy):
1765         (QTextEdit::QTextEdit):
1766         (QTextEdit::~QTextEdit):
1767         (QTextEdit::textWithHardLineBreaks):
1768         (QTextEdit::sizeWithColumnsAndRows):
1769         (QTextEdit::setColors):
1770         (QTextEdit::setFont):
1771         (QTextEdit::setWritingDirection):
1772         (QTextEdit::checksDescendantsForFocus):
1773         (QTextEdit::selectionStart):
1774         (QTextEdit::hasSelectedText):
1775         (QTextEdit::setReadOnly):
1776         (QTextEdit::setDisabled):
1777         (QTextEdit::setLineHeight):
1778         (QTextEdit::setSelectionStart):
1779         (QTextEdit::text):
1780         (QTextEdit::setWordWrap):
1781         (QTextEdit::setAlignment):
1782         (QTextEdit::getCursorPosition):
1783         (QTextEdit::setSelectionRange):
1784         (Widget::enableFlushDrawing):
1785         (Widget::isEnabled):
1786         (Widget::focusPolicy):
1787         (Widget::disableFlushDrawing):
1788         (Widget::setIsSelected):
1789         (Widget::unlockDrawingFocus):
1790         (KJavaAppletWidget::KJavaAppletWidget):
1791         (ScrollView::scrollPointRecursively):
1792         (ScrollView::scrollBy):
1793         (QLineEdit::selectAll):
1794         (QLineEdit::addSearchResult):
1795         (QLineEdit::selectionStart):
1796         (QLineEdit::hasSelectedText):
1797         (QLineEdit::selectedText):
1798         (QLineEdit::setAutoSaveName):
1799         (QLineEdit::checksDescendantsForFocus):
1800         (QLineEdit::setMaxResults):
1801         (GraphicsContext::GraphicsContext):
1802         (GraphicsContext::addFocusRingRect):
1803         (GraphicsContext::drawLineForMisspelling):
1804         (GraphicsContext::drawFocusRing):
1805         (GraphicsContext::selectedTextBackgroundColor):
1806         (GraphicsContext::drawHighlightForText):
1807         (GraphicsContext::misspellingLineThickness):
1808         (GraphicsContext::addRoundedRectClip):
1809         (QSlider::QSlider):
1810         (QSlider::sizeHint):
1811         (QSlider::setValue):
1812         (QSlider::setMaxValue):
1813         (QSlider::~QSlider):
1814         (QSlider::setFont):
1815         (QListBox::setFont):
1816         (QListBox::~QListBox):
1817         (QListBox::setSelectionMode):
1818         (QListBox::setEnabled):
1819         (QListBox::clear):
1820         (QListBox::checksDescendantsForFocus):
1821         (KWQFileButton::KWQFileButton):
1822         (KWQFileButton::click):
1823         (KWQFileButton::sizeForCharacterWidth):
1824         (KWQFileButton::frameGeometry):
1825         (KWQFileButton::setFilename):
1826         (KWQFileButton::baselinePosition):
1827         (KWQFileButton::setFrameGeometry):
1828         (QSlider::focusPolicy):
1829         (QListBox::focusPolicy):
1830         (Cursor::Cursor):
1831         (MouseEvent::MouseEvent):
1832         (KWQKCookieJar::cookieEnabled):
1833         (WebCore::screenDepth):
1834         (WebCore::usableScreenRect):
1835         (FrameWin::createPlugin):
1836         (ScrollView::resizeContents):
1837         (ScrollView::visibleHeight):
1838         (ScrollView::visibleWidth):
1839         (ScrollView::setContentsPos):
1840         (ScrollView::contentsHeight):
1841         (ScrollView::contentsWidth):
1842         (ScrollView::inWindow):
1843         (Path::~Path):
1844         (Path::Path):
1845         (Path::contains):
1846         (Path::translate):
1847         (Path::boundingRect):
1848         (Path::operator=):
1849
1850 2006-03-03  Justin Garcia  <justin.garcia@apple.com>
1851
1852         Reviewed by darin
1853         
1854         <http://bugzilla.opendarwin.org/show_bug.cgi?id=6844>
1855         elementAtPoint returns the list when the point is over a list marker
1856
1857         Call RenderObject::setInnerNode(), which sets both the 
1858         innerNode and the innerNonSharedNode.
1859
1860         * rendering/render_list.cpp:
1861         (WebCore::RenderListItem::nodeAtPoint):
1862         * rendering/render_list.h:
1863
1864 2006-03-05  Darin Adler  <darin@apple.com>
1865
1866         * WebCore.vcproj/WebCore/WebCore.vcproj: Removed a lot of long-ago-deleted files
1867         from the kwq directory.
1868
1869 2006-03-05  Darin Adler  <darin@apple.com>
1870
1871         Reviewed by Maciej.
1872
1873         - moved all the remnants of the public C++ DOM API out of khtml/dom
1874         - changed from "int" to "ExceptionCode" for DOM exceptions
1875         - removed unused CSS_HTML_RELATIVE
1876         - changed offsetInCharacters to be a member function of NodeImpl
1877         - changed DOM functions that take a NodeType to use NodeType instead of
1878           unsigned short for clarity (will still be unsigned short in bindings)
1879         - changed exception constants so they can be used directly in the
1880           implementation code (added in the offsets for different types of exceptions)
1881         - replaced the eventListenerType function with an isHTMLEventListener function
1882         - got rid of EventListenerEvent, which is a synonym for EventImpl*
1883         - eliminated handleEventImpl, whish is now the same as handleEvent
1884
1885         - did other preparation for the "remove Impl suffix" renaming
1886           (tested by using a script that does the renaming)
1887
1888         * khtml/dom/css_rule.h: Removed.
1889         * khtml/dom/css_stylesheet.h: Removed.
1890         * khtml/dom/css_value.h: Removed.
1891         * khtml/dom/dom2_events.cpp: Removed.
1892         * khtml/dom/dom2_events.h: Removed.
1893         * khtml/dom/dom2_range.h: Removed.
1894         * khtml/dom/dom2_traversal.cpp: Removed.
1895         * khtml/dom/dom2_traversal.h: Removed.
1896         * khtml/dom/dom_exception.h: Removed.
1897         * khtml/dom/dom_node.h: Removed.
1898
1899         * dom/EventListener.h: Added.
1900         * dom/ExceptionCode.h: Added.
1901
1902         * WebCore+SVG/kdom.h: Removed NodeType and ExceptionCodes
1903         * WebCore+SVG/kdomevents.h: Removed.
1904
1905         * WebCore.xcodeproj/project.pbxproj: Updated for file changes.
1906         * WebCore.vcproj/WebCore/WebCore.vcproj: Ditto.
1907
1908         * bindings/scripts/CodeGeneratorJS.pm: Removed unneeded DOM:: prefix. Updated file
1909         names and exception prefix for changes in DOM exceptions.
1910
1911         * bindings/js/JSDOMCore.cpp: Touched to cause auto-generated code to be
1912         recompiled. We need to get this fixed!
1913         * bindings/js/JSDOMEvents.cpp: Ditto.
1914
1915         * dom/Attr.idl:
1916         * dom/CharacterData.idl:
1917         * dom/DOMImplementation.idl:
1918         * dom/DocumentType.idl:
1919         * dom/Element.idl:
1920         * dom/Entity.idl:
1921         * dom/MutationEvent.idl:
1922         * dom/Notation.idl:
1923         * dom/ProcessingInstruction.idl:
1924         * dom/Text.idl:
1925         * dom/WheelEvent.idl:
1926         Touched all IDL files so that changes in CodeGeneratorJS.pm would take effect.
1927         Added license headers.
1928
1929         * bindings/objc/DOM.mm: Fixed garbled license agreement. Updated includes.
1930         Changed from a single "using namespace WebCore" to individual using statements
1931         because of the imminent conflict between DOMImplementation in Objective C
1932         and WebCore::DOMImplementation (currently has an Impl suffix). Added a typedef
1933         for WebCore::DOMImplementationImpl. Changed to use ExceptionCode instead of int.
1934
1935         * bindings/objc/DOMCSS.h: Removed DOMCSSException and the special CSS exception
1936         codes. This is a feature of DOM Level 1 only. In DOM Level 2 these were eliminated
1937         and use basic DOM exception codes instead. We might have to do something for binary
1938         compatibility eventually, but perhaps not.
1939
1940         * bindings/objc/DOMCSS.mm:
1941         * bindings/objc/DOMEvents.mm:
1942         * bindings/objc/DOMEventsInternal.h:
1943         * bindings/objc/DOMHTML.mm:
1944         * bindings/objc/DOMHTMLInternal.h:
1945         * bindings/objc/DOMViews.mm:
1946         * bindings/objc/DOMViewsInternal.h:
1947         Fixed garbled license agreements.
1948         Changed to use ExceptionCode instead of int and name the variable "ec".
1949
1950         * bindings/objc/DOMInternal.h: Changed addDOMWrapperImpl to take NSObject* instead
1951         of id. This helps with overload resolution when addDOMWrapperImpl is renamed to be
1952         addDOMWrapper. Changed ALLOW_DOM_CAST to always use "class" in from of the type name
1953         of the WebCore class. This helps work around what seems like a bug in namespace support
1954         in Objective-C mode, although the bug only happens after the "remove Impl" renaming.
1955         * bindings/objc/DOMInternal.mm:
1956         (getDOMWrapperImpl): Changed to use HashMap.
1957         (addDOMWrapperImpl): Ditto.
1958         (removeDOMWrapper): Ditto.
1959         (raiseDOMException): Update to use new names for exception number ranges.
1960
1961         * bridge/mac/WebCoreFrameBridge.mm:
1962         * khtml/ecma/xmlserializer.cpp:
1963         * kwq/KWQAccObject.mm:
1964         Removed unneeded includes.
1965
1966         * css/css_ruleimpl.h: Moved "rule type" into this header.
1967
1968         * dom/CommentImpl.h:
1969         * dom/CommentImpl.cpp: (WebCore::CommentImpl::offsetInCharacters): Added. Returns true.
1970
1971         * khtml/ecma/XSLTProcessor.cpp: (KJS::XSLTProcessorProtoFunc::callAsFunction):
1972         Changed this around so we don't have a local variable named docImpl.
1973
1974         * khtml/ecma/kjs_binding.cpp: (KJS::setDOMException): Updated for new form of exception
1975         constants.
1976
1977         * khtml/ecma/kjs_events.h:
1978         * khtml/ecma/kjs_events.cpp:
1979         (KJS::JSAbstractEventListener::handleEvent): Changed to no longer use EventListenerEvent.
1980         (KJS::JSAbstractEventListener::isHTMLEventListener): Added.
1981
1982         * rendering/RenderTextField.h: Updated includes. Tweaked the code formatting of
1983         InputMutationListener. (Might be unnecessary since this class might be deleted soon.)
1984
1985         * bridge/mac/MacFrame.mm:
1986         * css/css_computedstyle.cpp:
1987         * css/css_computedstyle.h:
1988         * css/css_ruleimpl.cpp:
1989         * css/css_stylesheetimpl.cpp:
1990         * css/css_stylesheetimpl.h:
1991         * css/css_valueimpl.cpp:
1992         * css/css_valueimpl.cpp:
1993         * css/css_valueimpl.h:
1994         * css/css_valueimpl.h:
1995         * css/cssparser.cpp:
1996         * css/cssstyleselector.cpp:
1997         * dom/CDATASectionImpl.cpp:
1998         * dom/CDATASectionImpl.h:
1999         * dom/CharacterDataImpl.cpp:
2000         * dom/CharacterDataImpl.h:
2001         * dom/ContainerNodeImpl.cpp:
2002         * dom/DOMImplementationImpl.cpp:
2003         * dom/DocumentFragmentImpl.cpp:
2004         * dom/DocumentFragmentImpl.h:
2005         * dom/DocumentImpl.cpp:
2006         * dom/DocumentImpl.h:
2007         * dom/DocumentTypeImpl.cpp:
2008         * dom/DocumentTypeImpl.h:
2009         * dom/NamedNodeMapImpl.h:
2010         * dom/NodeImpl.cpp:
2011         * dom/NodeImpl.h:
2012         * dom/NodeListImpl.cpp:
2013         * dom/TextImpl.cpp:
2014         * dom/TextImpl.h:
2015         * dom/dom2_eventsimpl.cpp:
2016         * dom/dom2_eventsimpl.h:
2017         * dom/dom2_rangeimpl.cpp:
2018         * dom/dom2_rangeimpl.h:
2019         * dom/dom2_traversalimpl.cpp:
2020         * dom/dom2_traversalimpl.h:
2021         * dom/dom_elementimpl.cpp:
2022         * dom/dom_elementimpl.h:
2023         * dom/dom_position.cpp:
2024         * dom/dom_xmlimpl.cpp:
2025         * dom/dom_xmlimpl.h:
2026         * dom/xml_tokenizer.cpp:
2027         * editing/AppendNodeCommand.cpp:
2028         * editing/ApplyStyleCommand.cpp:
2029         * editing/CompositeEditCommand.cpp:
2030         * editing/DeleteFromTextNodeCommand.cpp:
2031         * editing/InsertIntoTextNodeCommand.cpp:
2032         * editing/InsertLineBreakCommand.cpp:
2033         * editing/InsertNodeBeforeCommand.cpp:
2034         * editing/InsertParagraphSeparatorCommand.cpp:
2035         * editing/JoinTextNodesCommand.cpp:
2036         * editing/MergeIdenticalElementsCommand.cpp:
2037         * editing/RemoveNodeAttributeCommand.cpp:
2038         * editing/RemoveNodeCommand.cpp:
2039         * editing/ReplaceSelectionCommand.cpp:
2040         * editing/Selection.cpp:
2041         * editing/SelectionController.cpp:
2042         * editing/SelectionController.h:
2043         * editing/SetNodeAttributeCommand.cpp:
2044         * editing/SplitElementCommand.cpp:
2045         * editing/SplitTextNodeCommand.cpp:
2046         * editing/VisiblePosition.cpp:
2047         * editing/WrapContentsInDummySpanCommand.cpp:
2048         * editing/htmlediting.cpp:
2049         * editing/markup.cpp:
2050         * editing/visible_text.cpp:
2051         * khtml/ecma/kjs_binding.h:
2052         * khtml/ecma/kjs_css.cpp:
2053         * khtml/ecma/kjs_dom.cpp:
2054         * khtml/ecma/kjs_html.cpp:
2055         * khtml/ecma/kjs_range.cpp:
2056         * khtml/ecma/kjs_traversal.cpp:
2057         * khtml/ecma/kjs_traversal.h:
2058         * khtml/ecma/kjs_window.cpp:
2059         * khtml/html/HTMLElementImpl.cpp:
2060         * khtml/html/HTMLOptionElementImpl.cpp:
2061         * khtml/html/HTMLOptionElementImpl.h:
2062         * khtml/html/HTMLOptionsCollectionImpl.cpp:
2063         * khtml/html/HTMLSelectElementImpl.cpp:
2064         * khtml/html/HTMLTextAreaElementImpl.cpp:
2065         * khtml/html/html_documentimpl.cpp:
2066         * khtml/html/html_documentimpl.h:
2067         * khtml/html/html_headimpl.cpp:
2068         * khtml/html/html_tableimpl.cpp:
2069         * khtml/html/html_tableimpl.h:
2070         * khtml/html/htmlparser.cpp:
2071         * khtml/xbl/xbl_tokenizer.cpp:
2072         * khtml/xsl/xsl_stylesheetimpl.cpp:
2073         * ksvg2/misc/SVGDocumentExtensions.cpp:
2074         * ksvg2/svg/SVGAnimationElementImpl.cpp:
2075         * ksvg2/svg/SVGDOMImplementationImpl.cpp:
2076         * ksvg2/svg/SVGDOMImplementationImpl.h:
2077         * ksvg2/svg/SVGDocumentImpl.cpp:
2078         * ksvg2/svg/SVGDocumentImpl.h:
2079         * ksvg2/svg/SVGElementImpl.cpp:
2080         * ksvg2/svg/SVGLengthImpl.cpp:
2081         * ksvg2/svg/SVGLocatableImpl.cpp:
2082         * ksvg2/svg/SVGPolyElementImpl.cpp:
2083         * ksvg2/svg/SVGSVGElementImpl.cpp:
2084         * ksvg2/svg/SVGStyleElementImpl.cpp:
2085         * ksvg2/svg/SVGStyleElementImpl.h:
2086         * ksvg2/svg/SVGUseElementImpl.cpp:
2087         * page/Frame.cpp:
2088         * page/FrameView.cpp:
2089         * rendering/render_object.cpp:
2090         * xml/xmlhttprequest.cpp:
2091         Changed to use ExceptionCode instead of int and name the variable "ec".
2092         Also updated use of exception codes and other constants to get them from
2093         their new locations.
2094
2095 2006-03-06  Eric Seidel  <eseidel@apple.com>
2096
2097         Reviewed by mjs.
2098
2099         Fix more pages (apple.com, yahoo.com) by returning empty error image.
2100         Empty a couple more stubs and clean up stub style a little.
2101
2102         * platform/cairo/ImageCairo.cpp:
2103         (WebCore::Image::loadResource):
2104         * platform/win/TemporaryLinkStubs.cpp:
2105         (QListBox::isSelected):
2106         (QSlider::sizeHint):
2107         (QScrollBar::~QScrollBar):
2108         (FrameWin::getObjectInstanceForWidget):
2109         (FrameWin::getEmbedInstanceForWidget):
2110         (FrameWin::recordFormValue):
2111         (FrameWin::getAppletInstanceForWidget):
2112         (FrameWin::passMouseDownEventToWidget):
2113         (FrameWin::passWheelEventToChildWidget):
2114         (FrameWin::createPlugin):
2115         (BrowserExtensionWin::createNewWindow):
2116         (Path::Path):
2117         (QLineEdit::~QLineEdit):
2118         (QLineEdit::setLiveSearch):
2119         (QComboBox::~QComboBox):
2120
2121 2006-03-06  Eric Seidel  <eseidel@apple.com>
2122
2123         Reviewed by andersca.
2124
2125         Empty enough stubs to make apple.com load.
2126
2127         * platform/win/TemporaryLinkStubs.cpp:
2128         (QTextEdit::sizeWithColumnsAndRows):
2129         (GraphicsContext::misspellingLineThickness):
2130         (QTextEdit::selectAll):
2131         (QTextEdit::setSelectionStart):
2132         (Widget::unlockDrawingFocus):
2133         (QLineEdit::setAutoSaveName):
2134         (ScrollView::scrollYOffset):
2135         (KWQFileButton::setFilename):
2136         (QListBox::setFont):
2137         (GraphicsContext::beginTransparencyLayer):
2138         (GraphicsContext::endTransparencyLayer):
2139         (QComboBox::QComboBox):
2140         (QComboBox::setFont):
2141         (QComboBox::baselinePosition):
2142         (QComboBox::setWritingDirection):
2143         (QComboBox::clear):
2144         (QComboBox::appendItem):
2145         (QComboBox::setCurrentItem):
2146         (QComboBox::sizeHint):
2147         (QComboBox::frameGeometry):
2148         (QComboBox::setFrameGeometry):
2149         (QLineEdit::setLiveSearch):
2150
2151 2006-03-06  Eric Seidel  <eseidel@apple.com>
2152
2153         Reviewed by darin.
2154
2155         Fix external resource loading.
2156         Make a bunch of stubs not abort (to fix slashdot).
2157
2158         * platform/win/TemporaryLinkStubs.cpp:
2159         (QTextEdit::textWithHardLineBreaks):
2160         (KWQFileButton::click):
2161         (QComboBox::setFrameGeometry):
2162         (QTextEdit::setText):
2163         (QListBox::appendItem):
2164         (GraphicsContext::endTransparencyLayer):
2165         (QLineEdit::selectionStart):
2166         (QTextEdit::QTextEdit):
2167         (QListBox::isSelected):
2168         (QComboBox::focusPolicy):
2169         (QTextEdit::setCursorPosition):
2170         (QTextEdit::setAlignment):
2171         (QLineEdit::selectedText):
2172         (ScrollView::scrollPointRecursively):
2173         (QScrollBar::setSteps):
2174         (QComboBox::appendItem):
2175         (GraphicsContext::drawLineForMisspelling):
2176         (KWQFileButton::setFilename):
2177         (QListBox::setWritingDirection):
2178         (QListBox::focusPolicy):
2179         (MouseEvent::MouseEvent):
2180         (QSlider::setFont):
2181         (Widget::setEnabled):
2182         (Widget::paint):
2183         (ScrollView::addChild):
2184         (ScrollView::inWindow):
2185         (GraphicsContext::setShadow):
2186         (GraphicsContext::clearShadow):
2187         (RenderThemeWin::paintCheckbox):
2188         (RenderThemeWin::paintRadio):
2189         (RenderThemeWin::paintButton):
2190         (RenderThemeWin::paintTextField):
2191         (QLineEdit::QLineEdit):
2192         (QLineEdit::setFont):
2193         (QLineEdit::setAlignment):
2194         (QLineEdit::setWritingDirection):
2195         (QLineEdit::maxLength):
2196         (QLineEdit::setMaxLength):
2197         (QLineEdit::text):
2198         (QLineEdit::setText):
2199         (QLineEdit::cursorPosition):
2200         (QLineEdit::setCursorPosition):
2201         (QLineEdit::setEdited):
2202         (QLineEdit::setReadOnly):
2203         (QLineEdit::setPlaceholderString):
2204         (QLineEdit::setColors):
2205         (QLineEdit::sizeForCharacterWidth):
2206         (QLineEdit::baselinePosition):
2207         * platform/win/TransferJobWin.cpp:
2208         (WebCore::TransferJob::fileLoadTimer):
2209         (WebCore::TransferJob::cancel):
2210
2211 2006-03-05  Darin Adler  <darin@apple.com>
2212
2213         Reviewed by Maciej.
2214
2215         - fix failure seen running editing layout tests
2216
2217         * editing/ReplaceSelectionCommand.cpp:
2218         (WebCore::ReplacementFragment::ReplacementFragment):
2219         Use selectNodeContents instead of rolling our own.
2220         It handles the "nothing at all" edge case properly.
2221
2222 2006-03-05  Eric Seidel  <eseidel@apple.com>
2223
2224         Reviewed by darin.
2225
2226         Make updateContents invalidate entire window for now.
2227         Fix indentation in fileLoadTimer.
2228
2229         * platform/win/ScrollViewWin.cpp:
2230         (WebCore::ScrollView::updateContents):
2231         * platform/win/TransferJobWin.cpp:
2232         (WebCore::TransferJob::fileLoadTimer):
2233
2234 2006-03-05  Eric Seidel  <eseidel@apple.com>
2235
2236         Reviewed by adele.
2237
2238         Add missing files to vcproj (fix win32 build).
2239         Also add svn:eol-style=native to new files.
2240
2241         * WebCore.vcproj/WebCore/WebCore.vcproj:
2242
2243 2006-03-05  Darin Adler  <mjs@apple.com>
2244
2245         - fix build
2246
2247         * rendering/render_style.h: (compareEqual): Made it inline, fixed variable name.
2248
2249 2006-03-05  Adele Peterson  <adele@apple.com>
2250
2251         Reviewed by Darin.
2252
2253         - Fixed http://bugzilla.opendarwin.org/show_bug.cgi?id=6987
2254         Implement maxlength for new text fields
2255
2256         Test added:
2257         * fast/forms/input-appearance-maxlength.html
2258
2259         * WebCore.xcodeproj/project.pbxproj: 
2260          Added BeforeTextInsertedEventImpl.h, BeforeTextInsertedEventImpl.cpp, HTMLTextFieldInnerElementImpl.h, and HTMLTextFieldInnerElementImpl.cpp
2261
2262         * khtml/html/HTMLInputElementImpl.cpp:
2263         (WebCore::HTMLInputElementImpl::init): initialize max length to 1024.
2264         (WebCore::HTMLInputElementImpl::defaultEventHandler): Added case to use the khtmlBeforeTextInsertedEvent to check for maxlength.
2265         (WebCore::HTMLInputElementImpl::parseMappedAttribute): Makes sure that maxlength is between 0 and 1024.
2266
2267         * editing/ReplaceSelectionCommand.cpp:
2268         (WebCore::ReplacementFragment::ReplacementFragment): After doing a test insert of the fragment,
2269          Send khtmlBeforeTextInsertedEvent to the root editable element so the event handler can update the text, and we can update the fragment.
2270         * editing/TypingCommand.cpp:
2271         (WebCore::TypingCommand::insertText): Send khtmlBeforeTextInsertedEvent to the root editable element so the event handler can update the text if necessary.
2272         * editing/EditCommand.cpp:
2273         (WebCore::EditCommand::apply): If we've just applied a command, send the khtmlTextInsertedEvent to the root editable element. 
2274         (WebCore::EditCommand::unapply): ditto.
2275         (WebCore::EditCommand::reapply): ditto.
2276
2277         * khtml/html/HTMLTextFieldInnerElementImpl.h: Added this class to store a pointer to the input element for the text field and to handle default events.
2278         (DOM::HTMLTextFieldInnerElementImpl::shadowParentNode): Added.
2279         (DOM::HTMLTextFieldInnerElementImpl::setShadowParentNode): Added.
2280         * khtml/html/HTMLTextFieldInnerElementImpl.cpp: Added.
2281         (WebCore::HTMLTextFieldInnerElementImpl::HTMLTextFieldInnerElementImpl):
2282         (WebCore::HTMLTextFieldInnerElementImpl::~HTMLTextFieldInnerElementImpl):
2283         (WebCore::HTMLTextFieldInnerElementImpl::defaultEventHandler):
2284          Sends khtmlBeforeTextInsertedEvents to the shadowParentNode, 
2285          and handles khtmlTextInsertedEvents by telling the renderer that the subtree has changed.
2286
2287         * rendering/RenderTextField.cpp: Removed InputMutationListener since subtreeHasChanged is now called from the editing code.
2288         (WebCore::RenderTextField::~RenderTextField): removed event listener code.
2289         (WebCore::RenderTextField::updateFromElement): ditto.  And creates HTMLTextFieldInnerElementImpl.
2290         (WebCore::RenderTextField::subtreeHasChanged): calls new text() method.
2291         (WebCore::RenderTextField::text): created to get a String of all text in the RenderTextField.
2292         * rendering/RenderTextField.h: Removed InputMutationListener class.
2293
2294         * dom/EventNames.h: Added khtmlTextInserted and khtmlBeforeTextInserted.
2295         * dom/BeforeTextInsertedEventImpl.cpp: Added.
2296         (WebCore::BeforeTextInsertedEventImpl::BeforeTextInsertedEventImpl):
2297         * dom/BeforeTextInsertedEventImpl.h: Added.
2298         (WebCore::BeforeTextInsertedEventImpl::isBeforeTextInsertedEvent):
2299         (WebCore::BeforeTextInsertedEventImpl::text):
2300         * dom/dom2_eventsimpl.cpp: (WebCore::EventImpl::isBeforeTextInsertedEvent): Added.
2301         * dom/dom2_eventsimpl.h: Added isBeforeTextInsertedEvent.
2302
2303 2006-03-05  Maciej Stachowiak  <mjs@apple.com>
2304
2305         - fix build, give this a return type.
2306
2307         * rendering/render_style.h:
2308         (compareEqual):
2309
2310 2006-03-05  Eric Seidel  <eseidel@apple.com>
2311
2312         Add "Font.h" to (try to) fix the no-svg build.
2313
2314         * platform/mac/GraphicsContextMac.mm:
2315
2316 2006-03-05  Maciej Stachowiak  <mjs@apple.com>
2317
2318         Rubber stamped by Darin.
2319
2320         - fix win32 build by avoiding use of typeof
2321
2322         * rendering/render_style.h:
2323         (compareEqual):
2324
2325 2006-03-05  Geoffrey Garen  <ggaren@apple.com>
2326
2327         Reviewed by Maciej.
2328
2329         - Second cut at fixing <rdar://problem/4467143> JavaScript enumeration 
2330         of HTML element properties skips DOM node properties
2331  
2332         The approach here is for prototypes, in their constructor methods, 
2333         to set their own prototypes, preserving the prototype 
2334         chain in cases of multiple levels of inheritance. (Previously, our
2335         code assumed that a prototype never had a prototype of its own,
2336         and always used an empty object as a prototype's prototype).
2337
2338         * bindings/scripts/CodeGeneratorJS.pm: Use the new
2339         DEFINE_PROTOTYPE_WITH_PROTOTYPE macro in place of the  
2340         KJS_IMPLEMENT_PROTOTYPE_WITH_PARENT macro.
2341         * khtml/ecma/kjs_dom.cpp: Ditto.
2342         * khtml/ecma/kjs_dom.h: Ditto.
2343         * khtml/ecma/kjs_events.cpp: Ditto.
2344
2345         Touched these files to force a rebuild:
2346
2347         * bindings/js/JSDOMCore.cpp:
2348         * bindings/js/JSDOMEvents.cpp:
2349         * dom/Attr.idl:
2350         * dom/CharacterData.idl:
2351         * dom/DOMImplementation.idl:
2352         * dom/DocumentType.idl:
2353         * dom/Element.idl:
2354         * dom/Entity.idl:
2355         * dom/MutationEvent.idl:
2356         * dom/Notation.idl:
2357         * dom/ProcessingInstruction.idl:
2358         * dom/Text.idl:
2359         * dom/WheelEvent.idl:
2360
2361 2006-03-05  Maciej Stachowiak  <mjs@apple.com>
2362
2363         Reviewed by Darin.
2364
2365         - use unsigned bitfields when storing enums in them, to avoid mangling on win32 (was causing all layout to be RTL)
2366         http://bugzilla.opendarwin.org/show_bug.cgi?id=7618
2367
2368         * css/css_base.cpp:
2369         (WebCore::CSSSelector::operator == ):
2370         (WebCore::CSSSelector::selectorText):
2371         * css/css_base.h:
2372         (WebCore::CSSSelector::CSSSelector):
2373         (WebCore::CSSSelector::pseudoType):
2374         (WebCore::CSSSelector::relation):
2375         * css/css_grammar.y:
2376         * css/cssstyleselector.cpp:
2377         (WebCore::CSSStyleSelector::checkSelector):
2378         (WebCore::CSSStyleSelector::checkOneSelector):
2379         * kcanvas/KCanvasPath.cpp:
2380         (WebCore::operator<<):
2381         * kcanvas/KCanvasPath.h:
2382         (WebCore::KCClipData::windRule):
2383         (WebCore::KCClipDataList::addPath):
2384         * kcanvas/device/quartz/KCanvasResourcesQuartz.mm:
2385         (WebCore::KCanvasClipperQuartz::applyClip):
2386         * khtml/ecma/kjs_html.h:
2387         * khtml/html/HTMLButtonElementImpl.h:
2388         * khtml/html/HTMLInputElementImpl.cpp:
2389         (WebCore::HTMLInputElementImpl::setInputType):
2390         * khtml/html/HTMLInputElementImpl.h:
2391         (DOM::HTMLInputElementImpl::inputType):
2392         * khtml/html/html_tableimpl.h:
2393         * khtml/xbl/xbl_protohandler.cpp:
2394         (XBL::m_button):
2395         * khtml/xbl/xbl_protohandler.h:
2396         * ksvg2/css/SVGRenderStyle.h:
2397         (WebCore::SVGRenderStyle::InheritedFlags::):
2398         (WebCore::SVGRenderStyle::NonInheritedFlags::):
2399         (WebCore::SVGRenderStyle::setBitDefaults):
2400         * ksvg2/svg/SVGAnimateTransformElementImpl.h:
2401         * ksvg2/svg/SVGAnimationElementImpl.cpp:
2402         (SVGAnimationElementImpl::targetAttribute):
2403         (SVGAnimationElementImpl::setTargetAttribute):
2404         * ksvg2/svg/SVGAnimationElementImpl.h:
2405         * ksvg2/svg/SVGLengthImpl.cpp:
2406         (SVGLengthImpl::value):
2407         * ksvg2/svg/SVGLengthImpl.h:
2408         * kwq/KWQKHTMLSettings.h:
2409         * loader/CachedImage.h:
2410         * loader/DocLoader.cpp:
2411         (WebCore::DocLoader::setCachePolicy):
2412         (WebCore::DocLoader::setShowAnimations):
2413         * loader/DocLoader.h:
2414         (WebCore::DocLoader::showAnimations):
2415         * platform/FontDescription.h:
2416         (WebCore::FontDescription::genericFamily):
2417         * platform/QString.cpp:
2418         (HandleNode::):
2419         * platform/QString.h:
2420         * rendering/RenderBlock.cpp:
2421         (WebCore::RenderBlock::setSelectionState):
2422         (WebCore::RenderBlock::leftRelOffset):
2423         (WebCore::RenderBlock::rightRelOffset):
2424         (WebCore::RenderBlock::leftBottom):
2425         (WebCore::RenderBlock::rightBottom):
2426         (WebCore::RenderBlock::addOverhangingFloats):
2427         (WebCore::RenderBlock::addIntrudingFloats):
2428         * rendering/RenderBlock.h:
2429         (WebCore::RenderBlock::selectionState):
2430         (WebCore::RenderBlock::FloatingObject::FloatingObject):
2431         (WebCore::RenderBlock::FloatingObject::type):
2432         * rendering/RenderTable.h:
2433         (WebCore::RenderTable::getRules):
2434         * rendering/bidi.cpp:
2435         (khtml::BidiContext::BidiContext):
2436         (khtml::operator==):
2437         (khtml::embed):
2438         (khtml::RenderBlock::computeHorizontalPositionsForLine):
2439         (khtml::RenderBlock::bidiReorderLine):
2440         (khtml::RenderBlock::layoutInlineChildren):
2441         * rendering/bidi.h:
2442         (khtml::BidiContext::dir):
2443         (khtml::BidiContext::basicDir):
2444         (khtml::BidiRun::BidiRun):
2445         * rendering/render_canvasimage.h:
2446         * rendering/render_layer.h:
2447         (WebCore::Marquee::whiteSpace):
2448         * rendering/render_object.cpp:
2449         (WebCore::RenderObject::paintBorderImage):
2450         * rendering/render_replaced.cpp:
2451         (WebCore::RenderWidget::setSelectionState):
2452         * rendering/render_replaced.h:
2453         (WebCore::RenderReplaced::selectionState):
2454         * rendering/render_style.cpp:
2455         (WebCore::RenderStyle::getPseudoStyle):
2456         * rendering/render_style.h:
2457         (khtml::BorderValue::BorderValue):
2458         (khtml::BorderValue::style):
2459         (khtml::BorderValue::nonZero):
2460         (khtml::BorderValue::operator==):
2461         (khtml::OutlineValue::operator==):
2462         (khtml::CollapsedBorderValue::style):
2463         (khtml::BorderImage::horizontalRule):
2464         (khtml::BorderImage::verticalRule):
2465         (khtml::BorderData::borderLeftWidth):
2466         (khtml::BorderData::borderRightWidth):
2467         (khtml::BorderData::borderTopWidth):
2468         (khtml::BorderData::borderBottomWidth):
2469         (khtml::BackgroundLayer::backgroundClip):
2470         (khtml::BackgroundLayer::backgroundOrigin):
2471         (khtml::BackgroundLayer::backgroundRepeat):
2472         (khtml::RenderStyle::styleType):
2473         (khtml::RenderStyle::display):
2474         (khtml::RenderStyle::originalDisplay):
2475         (khtml::RenderStyle::position):
2476         (khtml::RenderStyle::floating):
2477         (khtml::RenderStyle::borderLeftStyle):
2478         (khtml::RenderStyle::borderLeftColor):
2479         (khtml::RenderStyle::borderRightStyle):
2480         (khtml::RenderStyle::borderRightColor):
2481         (khtml::RenderStyle::borderTopStyle):
2482         (khtml::RenderStyle::borderTopColor):
2483         (khtml::RenderStyle::borderBottomStyle):
2484         (khtml::RenderStyle::borderBottomColor):
2485         (khtml::RenderStyle::outlineWidth):
2486         (khtml::RenderStyle::outlineStyle):
2487         (khtml::RenderStyle::overflow):
2488         (khtml::RenderStyle::visibility):
2489         (khtml::RenderStyle::verticalAlign):
2490         (khtml::RenderStyle::unicodeBidi):
2491         (khtml::RenderStyle::clear):
2492         (khtml::RenderStyle::tableLayout):
2493         (khtml::RenderStyle::textAlign):
2494         (khtml::RenderStyle::textTransform):
2495         (khtml::RenderStyle::direction):
2496         (khtml::RenderStyle::whiteSpace):
2497         (khtml::RenderStyle::backgroundRepeat):
2498         (khtml::RenderStyle::backgroundClip):
2499         (khtml::RenderStyle::backgroundOrigin):
2500         (khtml::RenderStyle::emptyCells):
2501         (khtml::RenderStyle::captionSide):
2502         (khtml::RenderStyle::listStyleType):
2503         (khtml::RenderStyle::listStylePosition):
2504         (khtml::RenderStyle::cursor):
2505         (khtml::RenderStyle::pageBreakInside):
2506         (khtml::RenderStyle::pageBreakBefore):
2507         (khtml::RenderStyle::pageBreakAfter):
2508         (khtml::RenderStyle::outlineOffset):
2509         (khtml::RenderStyle::appearance):
2510         (khtml::RenderStyle::boxAlign):
2511         (khtml::RenderStyle::boxDirection):
2512         (khtml::RenderStyle::boxLines):
2513         (khtml::RenderStyle::boxOrient):
2514         (khtml::RenderStyle::boxPack):
2515         (khtml::RenderStyle::boxSizing):
2516         (khtml::RenderStyle::marqueeBehavior):
2517         (khtml::RenderStyle::marqueeDirection):
2518         (khtml::RenderStyle::userModify):
2519         (khtml::RenderStyle::userDrag):
2520         (khtml::RenderStyle::userSelect):
2521         (khtml::RenderStyle::marginTopCollapse):
2522         (khtml::RenderStyle::marginBottomCollapse):
2523         (khtml::RenderStyle::wordWrap):
2524         (khtml::RenderStyle::nbspMode):
2525         (khtml::RenderStyle::khtmlLineBreak):
2526         (khtml::RenderStyle::matchNearestMailBlockquoteColor):
2527         (khtml::RenderStyle::setBorderLeftWidth):
2528         (khtml::RenderStyle::setBorderLeftStyle):
2529         (khtml::RenderStyle::setBorderLeftColor):
2530         (khtml::RenderStyle::setBorderRightWidth):
2531         (khtml::RenderStyle::setBorderRightStyle):
2532         (khtml::RenderStyle::setBorderRightColor):
2533         (khtml::RenderStyle::setBorderTopWidth):
2534         (khtml::RenderStyle::setBorderTopStyle):
2535         (khtml::RenderStyle::setBorderTopColor):
2536         (khtml::RenderStyle::setBorderBottomWidth):
2537         (khtml::RenderStyle::setBorderBottomStyle):
2538         (khtml::RenderStyle::setBorderBottomColor):
2539         (khtml::RenderStyle::setOutlineWidth):
2540         (khtml::RenderStyle::setOutlineStyle):
2541         (khtml::RenderStyle::pseudoState):
2542
2543 2006-03-05  Geoffrey Garen  <ggaren@apple.com>
2544
2545         - Rolled out the fix for <rdar://problem/4467143> because it's the
2546         wrong approach. Maciej and I discussed this on IRC.
2547
2548         * khtml/ecma/kjs_dom.cpp:
2549         (KJS::): Don't use classInfo to express prototype inheritance.
2550         classInfo is only for representing a c++ superclass relationship.
2551
2552 2006-03-05  Eric Seidel  <eseidel@apple.com>
2553
2554         Move improperly placed #endif causing no-svg build to fail.
2555
2556         * kcanvas/device/quartz/KRenderingDeviceQuartz.h:
2557
2558 2006-03-05  Alexander Kellett  <lypanov@kde.org>
2559
2560         Reviewed by Eric.
2561
2562         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=6890
2563           and http://bugzilla.opendarwin.org/show_bug.cgi?id=6951
2564           by being more tolerant towards invalid points data
2565
2566         - new tests:
2567           svg/custom/polyline-setattribute-points-null.svg
2568           svg/custom/polyline-invalid-points.svg
2569
2570         * ksvg2/svg/svgpathparser.cpp:
2571         (SVGPolyParser::parsePoints):
2572
2573 2006-03-05  Maciej Stachowiak  <mjs@apple.com>
2574
2575         Rubber stamped by Eric.
2576
2577         - remove no longer used KDOMSettings and KSVGSettings
2578
2579         * WebCore+SVG/KDOMSettings.cpp: Removed.
2580         * WebCore+SVG/KDOMSettings.h: Removed.
2581         * WebCore.xcodeproj/project.pbxproj:
2582         * ksvg2/KSVGSettings.h: Removed.
2583         * ksvg2/svg/SVGStyledElementImpl.cpp:
2584
2585 2006-03-05  Eric Seidel  <eseidel@apple.com>
2586
2587         Reviewed by mjs.
2588
2589         * platform/Font.cpp:
2590         (WebCore::Font::update): remove extra ref causing large leak.
2591
2592 2006-03-04  Eric Seidel  <eseidel@apple.com>
2593
2594         Reviewed by hyatt.
2595
2596         Re-work ImageViewer to use GraphicsContext.
2597         Add GraphicsContext(cairo_t*) constructor to make double-buffering easier.
2598         Add one more stub to prevent slashdot from crashing.
2599         Also fixed win32 build after Font change.
2600
2601         * Viewer.vcproj:
2602         * Viewer/ImageView.cpp:
2603         * platform/Color.h:
2604         * platform/GraphicsContext.h:
2605         * platform/cairo/GraphicsContextCairo.cpp:
2606         (WebCore::GraphicsContext::GraphicsContext):
2607         * platform/win/TemporaryLinkStubs.cpp:
2608         (FrameWin::createPlugin):
2609         (BrowserExtensionWin::setTypedIconURL):
2610
2611 2006-03-05  Mitz Pettel  <opendarwin.org@mitzpettel.com>
2612
2613         Reviewed by Darin, landed by ap.
2614
2615         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=4840
2616           Frames only resize wider, can't make them narrower
2617
2618         * khtml/html/html_baseimpl.cpp:
2619         (WebCore::HTMLFrameSetElementImpl::HTMLFrameSetElementImpl): Removed unused m_resizing flag.
2620         * khtml/html/html_baseimpl.h:
2621         * manual-tests/bugzilla-4840.html: Added.
2622         * page/FrameView.cpp:
2623         (WebCore::FrameViewPrivate::reset):
2624         (WebCore::FrameView::viewportMouseMoveEvent):
2625         (WebCore::FrameView::viewportMouseReleaseEvent):
2626         (WebCore::FrameView::setResizingFrameSet): New method. When a resizing frameset is set,
2627         mouse move and mouse release events target it instead of hit-testing.
2628         * page/FrameView.h:
2629         * rendering/render_frames.cpp:
2630         (WebCore::RenderFrameSet::setResizing): Inform the FrameView that we are resizing (or not).
2631
2632 2006-03-04  David Hyatt  <hyatt@apple.com>
2633
2634         Fix for bug 7586, eliminate QFontMetrics.
2635
2636         Reviewed by eric
2637
2638         * WebCore.xcodeproj/project.pbxproj:
2639         * css/css_valueimpl.cpp:
2640         (WebCore::CSSPrimitiveValueImpl::computeLengthFloat):
2641         * ksvg2/svg/SVGLengthImpl.cpp:
2642         (SVGLengthImpl::updateValue):
2643         * kwq/KWQFontMetrics.h: Removed.
2644         * kwq/KWQFontMetrics.mm: Removed.
2645         * platform/Font.cpp:
2646         (WebCore::m_wordSpacing):
2647         (WebCore::Font::Font):
2648         (WebCore::Font::operator=):
2649         (WebCore::Font::~Font):
2650         (WebCore::Font::update):
2651         (WebCore::Font::width):
2652         * platform/Font.h:
2653         (WebCore::Font::operator==):
2654         (WebCore::Font::width):
2655         (WebCore::Font::height):
2656         * platform/FontRenderer.h: Added.
2657         (WebCore::FontRenderer::isFixedPitch):
2658         * platform/GraphicsContext.h:
2659         * platform/mac/FontMac.mm: Added.
2660         (WebCore::m_renderer):
2661         (WebCore::FontRenderer::getWebCoreFont):
2662         (WebCore::FontRenderer::getRenderer):
2663         (WebCore::FontRenderer::determinePitch):
2664         (WebCore::FontRenderer::update):
2665         (WebCore::Font::getWebCoreFont):
2666         (WebCore::Font::ascent):
2667         (WebCore::Font::descent):
2668         (WebCore::Font::lineSpacing):
2669         (WebCore::Font::xHeight):
2670         (WebCore::Font::isFixedPitch):
2671         (WebCore::Font::selectionRectForText):
2672         (WebCore::Font::drawHighlightForText):
2673         (WebCore::Font::drawText):
2674         (WebCore::Font::floatWidth):
2675         (WebCore::Font::checkSelectionPoint):
2676         * platform/mac/GraphicsContextMac.mm:
2677         * rendering/InlineTextBox.h:
2678         * rendering/RenderBlock.cpp:
2679         (WebCore::stripTrailingSpace):
2680         * rendering/RenderText.cpp:
2681         (WebCore::RenderText::trimmedMinMaxWidth):
2682         * rendering/RenderText.h:
2683         * rendering/RenderTextField.cpp:
2684         (WebCore::RenderTextField::calcMinMaxWidth):
2685         * rendering/bidi.cpp:
2686         (khtml::RenderBlock::tabWidth):
2687         (khtml::RenderBlock::checkLinesForTextOverflow):
2688         * rendering/render_box.cpp:
2689         (WebCore::RenderBox::caretRect):
2690         * rendering/render_br.cpp:
2691         (WebCore::RenderBR::lineHeight):
2692         * rendering/render_flow.cpp:
2693         (WebCore::RenderFlow::lineHeight):
2694         (WebCore::RenderFlow::caretRect):
2695         * rendering/render_image.cpp:
2696         (WebCore::RenderImage::imageChanged):
2697         (WebCore::RenderImage::paint):
2698         * rendering/render_line.cpp:
2699         (WebCore::InlineFlowBox::placeBoxesVertically):
2700         * rendering/render_list.cpp:
2701         (WebCore::toHebrew):
2702         (WebCore::RenderListMarker::paint):
2703         (WebCore::RenderListMarker::calcMinMaxWidth):
2704         (WebCore::RenderListMarker::baselinePosition):
2705         (WebCore::RenderListMarker::getRelativeMarkerRect):
2706         * rendering/render_object.cpp:
2707         (WebCore::RenderObject::getVerticalPosition):
2708         (WebCore::RenderObject::lineHeight):
2709         (WebCore::RenderObject::baselinePosition):
2710         * rendering/render_object.h:
2711         * rendering/render_style.h:
2712
2713 2006-03-04  Eric Seidel  <eseidel@apple.com>
2714
2715         Reviewed by ggaren.
2716
2717         Add urlSelected stub, adjust font metrics, and fix view size/move bug.
2718
2719         * platform/win/TemporaryLinkStubs.cpp:
2720         (MouseEvent::MouseEvent):
2721         (FrameWin::urlSelected):
2722         (QFontMetrics::height):
2723         (QFontMetrics::xHeight):
2724         (QFontMetrics::ascent):
2725         (QFontMetrics::descent):
2726         (ScrollView::resizeContents):
2727         (ScrollView::setContentsPos):
2728
2729 2006-03-04  Maciej Stachowiak  <mjs@apple.com>
2730
2731         Reviewed by Eric.
2732
2733         - stop background image loads from crashing
2734
2735         * platform/cairo/GraphicsContextCairo.cpp:
2736         (WebCore::GraphicsContext::drawTiledImage):
2737         (WebCore::GraphicsContext::drawScaledAndTiledImage):
2738
2739         - fix termination condition on file load loop
2740
2741         * platform/win/TransferJobWin.cpp:
2742         (WebCore::TransferJob::fileLoadTimer):
2743
2744 2006-03-04  Geoffrey Garen  <ggaren@apple.com>
2745
2746         Reviewed by Darin.
2747
2748         - Fixed <rdar://problem/4467143> JavaScript enumeration of HTML 
2749         element properties skips DOM node properties
2750
2751         No test case yet because this is a preliminary step toward enabling my
2752         uber test case for DOM support, which will cover this.
2753
2754         * khtml/ecma/kjs_dom.cpp:
2755         (KJS::): Make DOMNode's classinfo reflect inheritance from 
2756         DOMNodeProto, so a for in enumeration can properly walk the 
2757         inheritance chain.
2758         * khtml/ecma/kjs_html.cpp:
2759         (KJS::): Used a script to sort classInfo data alphbetically.
2760         (KJS::KJS::HTMLElement::classInfo): Ditto.
2761
2762 2006-03-04  Maciej Stachowiak  <mjs@apple.com
2763
2764         Reviewed by Eric.
2765
2766          - fix mistake in TransferJob::start that made it cause a crash
2767         on non-file URLs
2768
2769         * platform/win/TransferJobWin.cpp:
2770         (WebCore::TransferJob::start):
2771
2772 2006-03-04  Maciej Stachowiak  <mjs@apple.com
2773
2774         Reviewed by Eric.
2775
2776         - make TransferJobWin handle file: URLs, and fix other bugs
2777         as needed to make local file image loads work
2778         http://bugzilla.opendarwin.org/show_bug.cgi?id=7587
2779
2780         * WebCore.vcproj/WebCore/WebCore.vcproj: add TransferJobWin
2781         to build.
2782         * bridge/win/FrameWin.cpp:
2783         (WebCore::FrameWin::FrameWin): Set autoLoadImages to true.
2784         * platform/TransferJob.cpp:
2785         (WebCore::TransferJob::TransferJob): Pass this to internal
2786         constructor, so windows version can initialize timer
2787         * platform/TransferJob.h:
2788         * platform/TransferJobInternal.h:
2789         (WebCore::TransferJobInternal::TransferJobInternal): On windows,
2790         prepare a timer for file loads.
2791         * platform/cairo/GraphicsContextCairo.cpp:
2792         (WebCore::GraphicsContext::drawFloatImage): If passed-in context
2793         is null, use our built-in context (this is probably not the best,
2794         but should work for now).
2795         * platform/win/TemporaryLinkStubs.cpp:
2796         (FrameWin::issueRedoCommand): Don't break.
2797         (WebCore::TransferJob::assembleResponseHeaders): ditto
2798         (FrameWin::saveDocumentState): ditto
2799         (FrameWin::clearUndoRedoOperations): ditto
2800         * platform/win/TransferJobWin.cpp:
2801         (WebCore::TransferJobInternal::~TransferJobInternal): Close file
2802         handle if we have one.
2803         (WebCore::TransferJob::~TransferJob): Empty.
2804         (WebCore::TransferJob::start): Open a windows file handle.
2805         (WebCore::TransferJob::fileLoadTimer): Load from windows file
2806         handle.
2807         (WebCore::TransferJob::cancel): Stop timer and close windows file 
2808         handle if present.
2809
2810 2006-03-03  Eric Seidel  <eseidel@apple.com>
2811
2812         Reviewed by hyatt.
2813
2814         Fix QString crasher on Win32, also remove c-style casts from file.
2815         Add a few more stubs to allow more layout tests to not crash.
2816         Make dlls only copy when changed.
2817         Add RenderThemeWin stubs.
2818
2819         * WebCore.vcproj/WebCore/WebCore.vcproj:
2820         * WebCore.vcproj/WebCore/build-generated-files.sh:
2821         * platform/QString.cpp:
2822         (QString::stripWhiteSpace):
2823         (QString::simplifyWhiteSpace):
2824         (QString::setLatin1):
2825         (QString::sprintf):
2826         (QString::insert):
2827         (QString::fill):
2828         * platform/win/TemporaryLinkStubs.cpp:
2829         (WebCore::usableScreenRect):
2830         (FrameWin::respondToChangedContents):
2831         (FrameWin::unfocusWindow):
2832         (FrameWin::locationbarVisible):
2833         (FrameWin::clearUndoRedoOperations):
2834         (FrameWin::issueRedoCommand):
2835         (FrameWin::canRedo):
2836         (FrameWin::canUndo):
2837         (FrameWin::saveDocumentState):
2838         (FrameWin::print):
2839         (FrameWin::issueCutCommand):
2840         (FrameWin::issueCopyCommand):
2841         (FrameWin::issueUndoCommand):
2842         (FrameWin::mimeTypeForFileName):
2843         (FrameWin::clearRecordedFormValues):
2844         (FrameWin::issuePasteCommand):
2845         (FrameWin::scheduleClose):
2846         (FrameWin::menubarVisible):
2847         (FrameWin::personalbarVisible):
2848         (FrameWin::statusbarVisible):
2849         (FrameWin::toolbarVisible):
2850         (FrameWin::issueTransposeCommand):
2851         (FrameWin::canPaste):
2852         (FrameWin::incomingReferrer):
2853         (FrameWin::canGoBackOrForward):
2854         (FrameWin::issuePasteAndMatchStyleCommand):
2855         (FrameWin::createPlugin):
2856         (BrowserExtensionWin::getHistoryLength):
2857         (BrowserExtensionWin::canRunModal):
2858         (BrowserExtensionWin::openURLNotify):
2859         (BrowserExtensionWin::canRunModalNow):
2860         (BrowserExtensionWin::runModal):
2861         (QListBox::setFont):
2862         (WebCore::TransferJob::assembleResponseHeaders):
2863         (WebCore::TransferJob::~TransferJob):
2864         (QFontMetrics::QFontMetrics):
2865         (QFontMetrics::lineSpacing):
2866         (QFontMetrics::xHeight):
2867         (QFontMetrics::ascent):
2868         (FrameWin::shouldChangeSelection):
2869         (FrameWin::generateFrameName):
2870         (FrameWin::createFrame):
2871         (RenderThemeWin::paintCheckbox):
2872         (RenderThemeWin::paintRadio):
2873         (RenderThemeWin::paintButton):
2874         (RenderThemeWin::paintTextField):
2875         * rendering/RenderThemeWin.cpp: Added.
2876         (WebCore::theme):
2877         * rendering/RenderThemeWin.h: Added.
2878
2879 2006-03-03  Geoffrey Garen  <ggaren@apple.com>
2880
2881         Test case for <rdar://problem/4465598> REGRESSION (TOT): Crash occurs at 
2882         http://maps.google.com/?output=html ( KJS::Identifier::add(KJS::UString::Rep*)
2883
2884         * manual-tests/property-map-save-crash.html: Added.
2885
2886 2006-03-03  Eric Seidel  <eseidel@apple.com>
2887
2888         Reviewed by adele.
2889
2890         Fix clearly bogus cairo elipse drawing code.
2891         Make QFontMetrics stubs slightly more sane.
2892
2893         * platform/cairo/GraphicsContextCairo.cpp:
2894         (WebCore::GraphicsContext::drawEllipse):
2895         * platform/win/TemporaryLinkStubs.cpp:
2896         (QFontMetrics::floatWidth):
2897         (QFontMetrics::height):
2898         (QFontMetrics::width):
2899         (QFontMetrics::isFixedPitch):
2900
2901 2006-03-03  Darin Adler  <darin@apple.com>
2902
2903         Reviewed by Eric.
2904
2905         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=7480
2906           non-HTML elems w/o children in HTML docs get serialized self-closing
2907         - fix problem where the HTML tokenizer would discard the first newline after </pre>
2908
2909         Test: fast/innerHTML/innerHTML-custom-tag.html
2910
2911         * editing/markup.cpp: (WebCore::shouldSelfClose): Refined rule so that it doesn't
2912         try to do any self-closing tags in HTML documents at all; updated comment.
2913
2914         * khtml/html/htmltokenizer.cpp: (WebCore::HTMLTokenizer::parseTag): Added a check
2915         of beginTag in the <pre> tag case. We were accidentally discarding a newline after
2916         a </pre> tag.
2917
2918 2006-03-03  Maciej Stachowiak  <mjs@apple.com>
2919
2920         Rubber stamped by Eric.
2921
2922         - add new files to build, fix link stubs.
2923
2924         * WebCore.vcproj/WebCore/WebCore.vcproj:
2925         * platform/win/TemporaryLinkStubs.cpp:
2926         (KWQKCookieJar::cookieEnabled):
2927         (WebCore::TransferJob::retrieveCharset):
2928         (WebCore::TransferJob::assembleResponseHeaders):
2929         (WebCore::TransferJob::~TransferJob):
2930         * platform/win/TransferJobWin.cpp: Added.
2931
2932 2006-03-03  Maciej Stachowiak  <mjs@apple.com>
2933
2934         - add file I forgot in my last commit.
2935
2936         * platform/TransferJobInternal.h: Added.
2937         (WebCore::TransferJobInternal::TransferJobInternal):
2938
2939 2006-03-03  Eric Seidel  <eseidel@apple.com>
2940
2941         Reviewed by mjs.
2942
2943         Wire up WidgetWin, CursorWin, ScrollViewWin.
2944         Stub out methods for selection and cursors.
2945
2946         * Viewer/ImageDocument.h:
2947         * WebCore.vcproj/WebCore/WebCore.vcproj:
2948         * bridge/win/FrameWin.cpp:
2949         * khtml/ecma/kjs_proxy.cpp:
2950         (WebCore::KJSProxyImpl::initScriptIfNeeded):
2951         * platform/IntRect.h:
2952         (WebCore::IntRect::IntRect):
2953         * platform/Widget.h:
2954         * platform/win/CursorWin.cpp:
2955         (WebCore::eastResizeCursor):
2956         (WebCore::northResizeCursor):
2957         (WebCore::northEastResizeCursor):
2958         (WebCore::northWestResizeCursor):
2959         (WebCore::southResizeCursor):
2960         (WebCore::southEastResizeCursor):
2961         (WebCore::southWestResizeCursor):
2962         (WebCore::westResizeCursor):
2963         * platform/win/IntRectWin.cpp:
2964         (WebCore::IntRect::IntRect):
2965         (WebCore::IntRect::operator RECT):
2966         * platform/win/MouseEventWin.cpp:
2967         * platform/win/ScrollViewWin.cpp: Added.
2968         (WebCore::ScrollView::updateContents):
2969         * platform/win/TemporaryLinkStubs.cpp:
2970         (QTextEdit::textWithHardLineBreaks):
2971         (QLineEdit::setPlaceholderString):
2972         (QScrollBar::scroll):
2973         (GraphicsContext::beginTransparencyLayer):
2974         (Widget::setIsSelected):
2975         (QLineEdit::selectedText):
2976         (QComboBox::sizeHint):
2977         (KWQFileButton::focusPolicy):
2978         (QTextEdit::focusPolicy):
2979         (QSlider::focusPolicy):
2980         (QListBox::focusPolicy):
2981         (QLineEdit::focusPolicy):
2982         (WebCore::moveCursor):
2983         (ScrollView::scrollBy):
2984         (KWQKCookieJar::cookieEnabled):
2985         (WebCore::TransferJob::TransferJob):
2986         (WebCore::screenDepth):
2987         (WebCore::usableScreenRect):
2988         (FrameWin::getObjectInstanceForWidget):
2989         (FrameWin::getEmbedInstanceForWidget):
2990         (FrameWin::getAppletInstanceForWidget):
2991         (FrameWin::passMouseDownEventToWidget):
2992         (FrameWin::issuePasteCommand):
2993         (FrameWin::issueTransposeCommand):
2994         (QSlider::setFont):
2995         (QLineEdit::setFont):
2996         (QListBox::setFont):
2997         (QFontMetrics::QFontMetrics):
2998         (QComboBox::setFont):
2999         (QTextEdit::setFont):
3000         (QTextEdit::setWritingDirection):
3001         (QFontMetrics::setFontDescription):
3002         (QFontMetrics::checkSelectionPoint):
3003         (FrameWin::addMessageToConsole):
3004         (FrameWin::shouldChangeSelection):
3005         (ScrollView::resizeContents):
3006         (ScrollView::visibleHeight):
3007         (ScrollView::visibleWidth):
3008         (ScrollView::setContentsPos):
3009         (ScrollView::contentsX):
3010         (ScrollView::contentsY):
3011         (ScrollView::contentsHeight):
3012         (ScrollView::contentsWidth):
3013         (ScrollView::viewportToContents):
3014         * platform/win/WidgetWin.cpp: Added.
3015         (WebCore::Widget::Widget):
3016         (WebCore::Widget::~Widget):
3017         (WebCore::Widget::windowHandle):
3018         (WebCore::Widget::setWindowHandle):
3019         (WebCore::Widget::setActiveWindow):
3020         (WebCore::Widget::frameGeometry):
3021         (WebCore::Widget::hasFocus):
3022         (WebCore::Widget::setFocus):
3023         (WebCore::Widget::clearFocus):
3024         (WebCore::Widget::font):
3025         (WebCore::Widget::setFont):
3026         (WebCore::Widget::setCursor):
3027         (WebCore::Widget::show):
3028         (WebCore::Widget::hide):
3029         (WebCore::Widget::setFrameGeometry):
3030         (WebCore::Widget::mapFromGlobal):
3031
3032 2006-03-03  Maciej Stachowiak  <mjs@apple.com>
3033
3034         Reviewed by Eric.
3035
3036         - move TransferJob from kwq to platform, separate platform from non-platform bits
3037
3038         * ForwardingHeaders/kio/job.h: Removed.
3039         * ForwardingHeaders/kio/jobclasses.h: Removed.
3040         * WebCore.xcodeproj/project.pbxproj:
3041         * bridge/mac/MacFrame.mm:
3042         * dom/xml_tokenizer.cpp:
3043         * khtml/xsl/xslt_processorimpl.cpp:
3044         * kwq/KWQKJobClasses.h: Removed.
3045         * kwq/KWQKJobClasses.mm: Removed.
3046         * kwq/KWQLoader.mm:
3047         * kwq/KWQResourceLoader.mm:
3048         * kwq/TransferJobClient.h: Removed.
3049         * loader/Cache.cpp:
3050         * loader/loader.cpp:
3051         * page/Frame.cpp:
3052         * platform/TransferJob.cpp: Added.
3053         (WebCore::TransferJob::TransferJob):
3054         (WebCore::TransferJob::queryMetaData):
3055         (WebCore::TransferJob::addMetaData):
3056         * platform/TransferJob.h: Added.
3057         * platform/TransferJobClient.h: Added.
3058         * platform/mac/TransferJobMac.mm: Added.
3059         (WebCore::TransferJobInternal::~TransferJobInternal):
3060         (WebCore::TransferJob::retrieveCharset):
3061         (WebCore::TransferJob::cancel):
3062         * xml/xmlhttprequest.cpp:
3063
3064 2006-03-03  Maciej Stachowiak  <mjs@apple.com>
3065
3066         Reviewed by Eric.
3067
3068         - enough link stubs to "display" local copy of WebKit site w/o hitting breakpoint
3069
3070         * platform/win/TemporaryLinkStubs.cpp:
3071         (QLineEdit::setReadOnly):
3072         (QTextEdit::setCursorPosition):
3073         (QLineEdit::setCursorPosition):
3074         (QFontMetrics::width):
3075         (GraphicsContext::drawText):
3076         (GraphicsContext::drawLineForText):
3077
3078 2006-03-02  Maciej Stachowiak  <mjs@apple.com>
3079
3080         Rubber stamped by Eric.
3081
3082         - remove function that is now gone
3083
3084         * platform/win/TemporaryLinkStubs.cpp:
3085
3086 2006-03-02  Maciej Stachowiak  <mjs@apple.com>
3087
3088         Reviewed by Eric.
3089         
3090         - move logic to kick off load from KWQLoader function to a TransferJob method
3091
3092         * kwq/KWQKJobClasses.h:
3093         * kwq/KWQKJobClasses.mm:
3094         (WebCore::TransferJob::start):
3095         * kwq/KWQLoader.h:
3096         * kwq/KWQLoader.mm:
3097         * loader/loader.cpp:
3098         (WebCore::Loader::servePendingRequests):
3099         * xml/xmlhttprequest.cpp:
3100         (WebCore::XMLHttpRequest::send):
3101
3102 2006-03-02  Maciej Stachowiak  <mjs@apple.com>
3103
3104         Rubber stamped by Eric.
3105
3106         - remove unused loader parameter to KWQServeRequest.
3107
3108         * kwq/KWQLoader.h:
3109         * kwq/KWQLoader.mm:
3110         (KWQServeRequest):
3111         * loader/loader.cpp:
3112         (WebCore::Loader::servePendingRequests):
3113         * xml/xmlhttprequest.cpp:
3114         (WebCore::XMLHttpRequest::send):
3115
3116 2006-03-02  Maciej Stachowiak  <mjs@apple.com>
3117
3118         Reviewed by Eric.
3119
3120         - remove one of the versions of KWQServeRequest.
3121
3122         * kwq/KWQLoader.h:
3123         * kwq/KWQLoader.mm:
3124         * loader/loader.cpp:
3125         (WebCore::Loader::servePendingRequests):
3126         * platform/win/TemporaryLinkStubs.cpp:
3127         (Widget::isEnabled):
3128         (KWQServeRequest):
3129
3130 2006-03-02  Maciej Stachowiak  <mjs@apple.com>
3131
3132         Rubber stamped by Eric.
3133
3134         - win32 build fix.
3135
3136         * platform/win/MouseEventWin.cpp:
3137
3138 2006-03-02  Justin Garcia  <justin.garcia@apple.com>
3139
3140         Reviewed by eric
3141         
3142         <http://bugzilla.opendarwin.org/show_bug.cgi?id=3894>
3143         uses of <cmath> should change to <math>
3144
3145         * ksvg2/svg/SVGAnimateTransformElementImpl.cpp:
3146         * ksvg2/svg/SVGAnimationElementImpl.cpp:
3147         * ksvg2/svg/SVGHelper.cpp:
3148         * ksvg2/svg/SVGLengthImpl.cpp:
3149
3150 2006-03-02  Andrew Wellington  <proton@wiretapped.net>
3151
3152         Reviewed by Darin, landed by Beth
3153
3154         Fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=3230
3155         CSS1: Words with inline elements get extra capital letters
3156
3157         Does not use UBreakIterator (yet?) for this, but a relatively
3158         simple change that fixes our failure in the CSS1 test suite 
3159         (5.4.5).
3160
3161         * platform/StringImpl.cpp:
3162         (WebCore::StringImpl::capitalize): Specify if this is a run-on
3163         * platform/StringImpl.h:
3164         * rendering/RenderContainer.cpp:
3165         (WebCore::RenderContainer::addChild): Change to re-run 
3166         capitalisation when added into tree as previous text node changes
3167         * rendering/RenderText.cpp:
3168         (WebCore::RenderText::setText): Check if previous node is text that
3169         doesn't end in a space
3170
3171 2006-03-02  Justin Garcia  <justin.garcia@apple.com>
3172
3173         Reviewed by sullivan
3174         
3175         <http://bugzilla.opendarwin.org/show_bug.cgi?id=7542>
3176         REGRESSION: (r13028) Scrolling causes incomplete drawing of <ul> bullets
3177
3178         * rendering/render_list.cpp:
3179         (WebCore::RenderListMarker::paint):
3180
3181 2006-03-02  Eric Seidel  <eseidel@apple.com>
3182
3183         Reviewed by ggaren.
3184
3185         Add (partially stubbed out) mouse event handling for Win32.
3186
3187         * WebCore.vcproj/WebCore/WebCore.vcproj:
3188         * platform/IntPoint.h:
3189         * platform/MouseEvent.h:
3190         * platform/win/IntPointWin.cpp: Added.
3191         (WebCore::IntPoint::IntPoint):
3192         (WebCore::IntPoint::operator POINT):
3193         * platform/win/MouseEventWin.cpp: Added.
3194         (WebCore::MouseEvent::MouseEvent):
3195         * platform/win/TemporaryLinkStubs.cpp:
3196         (QLineEdit::setMaxLength):
3197         (ScrollView::scrollBy):
3198         (WebCore::Widget::setFocus):
3199         (FrameWin::respondToChangedSelection):
3200         (FrameWin::runJavaScriptPrompt):
3201         (FrameWin::recordFormValue):
3202         (FrameWin::registerCommandForRedo):
3203         (FrameWin::runJavaScriptAlert):
3204         (FrameWin::runJavaScriptConfirm):
3205         (FrameWin::openURL):
3206         (FrameWin::registerCommandForUndo):
3207         (FrameWin::addMessageToConsole):
3208         (FrameWin::mimeTypeForFileName):
3209         (FrameWin::shouldChangeSelection):
3210         (FrameWin::markMisspellingsInAdjacentWords):
3211         (FrameWin::markMisspellings):
3212         (FrameWin::personalbarVisible):
3213         (FrameWin::objectContentType):
3214         (FrameWin::createFrame):
3215         (FrameWin::createPlugin):
3216         (BrowserExtensionWin::setTypedIconURL):
3217         (BrowserExtensionWin::getHistoryLength):
3218         (BrowserExtensionWin::canRunModal):
3219         (BrowserExtensionWin::openURLNotify):
3220         (BrowserExtensionWin::createNewWindow):
3221         (BrowserExtensionWin::canRunModalNow):
3222         (BrowserExtensionWin::runModal):
3223         (BrowserExtensionWin::goBackOrForward):
3224         (BrowserExtensionWin::setIconURL):
3225         (FrameWin::passSubframeEventToSubframe):
3226         (FrameWin::lastEventIsMouseUp):
3227         (BrowserExtensionWin::BrowserExtensionWin):
3228         (Widget::setCursor):
3229         (ScrollView::visibleHeight):
3230         (ScrollView::visibleWidth):
3231         (ScrollView::setContentsPos):
3232         (ScrollView::contentsX):
3233         (ScrollView::contentsY):
3234         (ScrollView::contentsHeight):
3235         (ScrollView::contentsWidth):
3236         (ScrollView::viewportToContents):
3237         (TransferJob::TransferJob):
3238         (TransferJob::addMetaData):
3239
3240 2006-03-02  Justin Garcia  <justin.garcia@apple.com>
3241
3242         Reviewed by mjs
3243         
3244         <http://tinymce.moxiecode.com/example_full.php?example=true>
3245         TinyMCE: Undo still enabled after a location change, crashes if performed
3246         
3247         Can't clear undo/redo operations registered by subframes in didOpenURL,
3248         because subframes have already been detached.
3249
3250         * page/Frame.cpp:
3251         (WebCore::Frame::didOpenURL):
3252         (WebCore::Frame::closeURL):
3253
3254 2006-03-01  Maciej Stachowiak  <mjs@apple.com>
3255
3256         Reviewed by Darin.
3257
3258         - WebCore updates for "Set up new prototype macros and avoid using #if without defined() in JSC"
3259         http://bugzilla.opendarwin.org/show_bug.cgi?id=7387
3260         
3261         Add Platform.h 
3262
3263         * ForwardingHeaders/kxmlcore/Platform.h: Added.
3264         * bridge/mac/WebCoreFrameNamespaces.m:
3265         * bridge/mac/WebCoreViewFactory.m:
3266         * bridge/mac/WebDashboardRegion.m:
3267         * config.h:
3268         * platform/Logging.cpp:
3269         * platform/mac/ScrollViewMac.mm:
3270         (WebCore::ScrollView::addChild):
3271         * platform/mac/WebCoreCookieAdapter.m:
3272         * platform/mac/WebCoreGraphicsBridge.m:
3273         * platform/mac/WebCoreHistory.m:
3274         * platform/mac/WebCoreImageRendererFactory.m:
3275         * platform/mac/WebCoreKeyGenerator.m:
3276         * platform/mac/WebCoreView.m:
3277
3278 2006-03-02  Eric Seidel  <eseidel@apple.com>
3279
3280         * WebCore.xcodeproj/project.pbxproj: update GraphicsContext.cpp path to fix build
3281
3282 2006-03-01  Eric Seidel  <eseidel@apple.com>
3283
3284         Reviewed by andersca.
3285
3286         Add first-stab GraphicsContextCairo.
3287         Shuffle a few more link stubs around, remove uncessary WebCore::
3288
3289         * WebCore.vcproj/WebCore/WebCore.vcproj:
3290         * platform/GraphicsContext.cpp: Added.
3291         * platform/GraphicsContext.h:
3292         * platform/cairo/GraphicsContextCairo.cpp:
3293         (WebCore::GraphicsContextState::GraphicsContextState):
3294         (WebCore::setColor):
3295         (WebCore::fillRectSourceOver):
3296         (WebCore::GraphicsContextPrivate::GraphicsContextPrivate):
3297         (WebCore::GraphicsContextPrivate::~GraphicsContextPrivate):
3298         (WebCore::GraphicsContext::GraphicsContext):
3299         (WebCore::GraphicsContext::~GraphicsContext):
3300         (WebCore::GraphicsContext::pen):
3301         (WebCore::GraphicsContext::setPen):
3302         (WebCore::GraphicsContext::setBrush):
3303         (WebCore::GraphicsContext::brush):
3304         (WebCore::GraphicsContext::save):
3305         (WebCore::GraphicsContext::restore):
3306         (WebCore::GraphicsContext::drawRect):
3307         (WebCore::GraphicsContext::setColorFromBrush):
3308         (WebCore::GraphicsContext::setColorFromPen):
3309         (WebCore::adjustLineToPixelBounderies):
3310         (WebCore::GraphicsContext::drawLine):
3311         (WebCore::GraphicsContext::drawEllipse):
3312         (WebCore::GraphicsContext::drawArc):
3313         (WebCore::GraphicsContext::drawConvexPolygon):
3314         (WebCore::GraphicsContext::drawFloatImage):
3315         (WebCore::GraphicsContext::drawTiledImage):
3316         (WebCore::GraphicsContext::drawScaledAndTiledImage):
3317         (WebCore::GraphicsContext::fillRect):
3318         (WebCore::GraphicsContext::addClip):
3319         (WebCore::GraphicsContext::setPaintingDisabled):
3320         (WebCore::GraphicsContext::paintingDisabled):
3321         * platform/cairo/ImageCairo.cpp:
3322         * platform/cg/GraphicsContextCG.cpp: Removed.
3323         * platform/win/TemporaryLinkStubs.cpp:
3324         (QLineEdit::selectAll):
3325         (Widget::mapFromGlobal):
3326         (QLineEdit::cursorPosition):
3327         (QTextEdit::setScrollBarModes):
3328         (QTextEdit::selectAll):
3329         (QComboBox::focusPolicy):
3330         (GraphicsContext::clearShadow):
3331         (QTextEdit::setCursorPosition):
3332         (GraphicsContext::drawText):
3333         (QLineEdit::setLiveSearch):
3334         (QComboBox::QComboBox):
3335         (Widget::lockDrawingFocus):
3336         (QTextEdit::setSelectionRange):
3337         (QSlider::QSlider):
3338         (ScrollView::scrollYOffset):
3339         (QComboBox::sizeHint):
3340         (QLineEdit::edited):
3341         (QTextEdit::text):
3342         (QSlider::value):
3343         (WebCore::Widget::setFocus):
3344         (WebCore::TransferJob::addMetaData):
3345         (FrameWin::respondToChangedContents):
3346         (FrameWin::unfocusWindow):
3347         (FrameWin::locationbarVisible):
3348         (FrameWin::respondToChangedSelection):
3349         (FrameWin::clearUndoRedoOperations):
3350         (FrameWin::issueRedoCommand):
3351         (FrameWin::getObjectInstanceForWidget):
3352         (FrameWin::getEmbedInstanceForWidget):
3353         (FrameWin::canRedo):
3354         (FrameWin::canUndo):
3355         (FrameWin::runJavaScriptPrompt):
3356         (FrameWin::recordFormValue):
3357         (FrameWin::registerCommandForRedo):
3358         (FrameWin::runJavaScriptAlert):
3359         (FrameWin::runJavaScriptConfirm):
3360         (FrameWin::openURL):
3361         (FrameWin::saveDocumentState):
3362         (FrameWin::print):
3363         (FrameWin::getAppletInstanceForWidget):
3364         (FrameWin::passMouseDownEventToWidget):
3365         (FrameWin::registerCommandForUndo):
3366         (FrameWin::issueCutCommand):
3367         (FrameWin::issueCopyCommand):
3368         (FrameWin::addMessageToConsole):
3369         (FrameWin::passWheelEventToChildWidget):
3370         (FrameWin::issueUndoCommand):
3371         (FrameWin::mimeTypeForFileName):
3372         (FrameWin::clearRecordedFormValues):
3373         (FrameWin::issuePasteCommand):
3374         (FrameWin::shouldChangeSelection):
3375         (FrameWin::scheduleClose):
3376         (FrameWin::markMisspellingsInAdjacentWords):
3377         (FrameWin::markMisspellings):
3378         (FrameWin::menubarVisible):
3379         (FrameWin::personalbarVisible):
3380         (FrameWin::lastEventIsMouseUp):
3381         (FrameWin::statusbarVisible):
3382         (FrameWin::toolbarVisible):
3383         (FrameWin::issueTransposeCommand):
3384         (FrameWin::userAgent):
3385         (FrameWin::canPaste):
3386         (FrameWin::incomingReferrer):
3387         (FrameWin::objectContentType):
3388         (FrameWin::passSubframeEventToSubframe):
3389         (FrameWin::createFrame):
3390         (FrameWin::canGoBackOrForward):
3391         (FrameWin::issuePasteAndMatchStyleCommand):
3392         (FrameWin::createPlugin):
3393         (FrameWin::generateFrameName):
3394         (QTextEdit::setWritingDirection):
3395         (QFontMetrics::checkSelectionPoint):
3396         (GraphicsContext::GraphicsContext):
3397         (QFontMetrics::isFixedPitch):
3398         (FrameWin::restoreDocumentState):
3399         (FrameWin::partClearedInBegin):
3400         (FrameWin::createEmptyDocument):
3401         (FrameWin::overrideMediaType):
3402         (FrameWin::setTitle):
3403         (FrameWin::handledOnloadEvents):
3404         (FrameWin::markedTextRange):
3405         (GraphicsContext::font):
3406         (GraphicsContext::setFont):
3407
3408 2006-03-02  Alexey Proskuryakov  <ap@nypop.com>
3409
3410         Reviewed by Darin.
3411
3412         Changed an Objective-C forward declaration from "class" to "@class".
3413         This doesn't appear to fix any problems, though.
3414
3415         * platform/StringImpl.h:
3416
3417 2006-03-01  Justin Garcia  <justin.garcia@apple.com>
3418
3419         Reviewed by darin
3420         
3421         <http://bugzilla.opendarwin.org/show_bug.cgi?id=7059>
3422         TinyMCE: Select All + delete sends you Back intsead of deleting
3423
3424         * page/Frame.cpp:
3425         (WebCore::Frame::selectFrameElementInParentIfFullySelected):
3426
3427 2006-03-01  David Harrison  <harrison@apple.com>
3428
3429         Reviewed by Justin.
3430         (missed these in my earlier commit for <rdar://problem/4359736>)
3431
3432         * bridge/mac/WebCoreFrameBridge.h:
3433         * bridge/mac/WebCoreFrameBridge.mm:
3434         (-[WebCoreFrameBridge canIncreaseSelectionListLevel]):
3435         (-[WebCoreFrameBridge canDecreaseSelectionListLevel]):
3436         (-[WebCoreFrameBridge increaseSelectionListLevel]):
3437         (-[WebCoreFrameBridge decreaseSelectionListLevel]):
3438
3439 2006-03-01  Eric Seidel  <eseidel@apple.com>
3440
3441         Reviewed by mjs.
3442
3443         Fix win32 build, add IntRectWin and GraphicsContextCairo stub.
3444
3445         * Viewer/ImageDocument.cpp:
3446         * Viewer/ImageMainFrame.cpp:
3447         * WebCore.vcproj/WebCore/WebCore.vcproj:
3448         * platform/IntRect.h:
3449         * platform/cairo/GraphicsContextCairo.cpp: Added.
3450         * platform/win/TemporaryLinkStubs.cpp:
3451         (GraphicsContext::drawLineForText):
3452         (WebCore::GraphicsContext::fillRect):
3453         (WebCore::TransferJob::TransferJob):
3454         (GraphicsContext::GraphicsContext):
3455         (WebCore::GraphicsContext::~GraphicsContext):
3456
3457 2006-02-23  David Harrison  <harrison@apple.com>
3458
3459         Reviewed by Justin.
3460
3461         <rdar://problem/4359736> Support outlining ability with lists
3462
3463         Added Mail SPI for list level changes.  It is SPI because it is not complete support
3464         for outlining.  See <rdar://problem/4457070> "API for html lists as note outlines".
3465         Additional support is to end a list when return is typed on empty list item.
3466
3467         * WebCore.vcproj/WebCore/WebCore.vcproj:
3468         * WebCore.xcodeproj/project.pbxproj:
3469         Added ModifySelectionListLevelCommand.cpp and ModifySelectionListLevelCommand.h
3470         
3471         * bridge/mac/WebCoreFrameBridge.h:
3472         * bridge/mac/WebCoreFrameBridge.mm:
3473         (-[WebCoreFrameBridge canIncreaseSelectionListLevel]):
3474         (-[WebCoreFrameBridge canDecreaseSelectionListLevel]):
3475         (-[WebCoreFrameBridge increaseSelectionListLevel]):
3476         (-[WebCoreFrameBridge decreaseSelectionListLevel]):
3477         Supply list level calls in the bridge.
3478         
3479         * editing/InsertParagraphSeparatorCommand.cpp:
3480         (WebCore::createListItemElement):
3481         New.  Creates an li.
3482         
3483         (WebCore::InsertParagraphSeparatorCommand::doApply):
3484         - slight logic cleanup
3485         - on empty list item, end the list
3486         
3487         * editing/ModifySelectionListLevelCommand.cpp: Added.
3488         (WebCore::ModifySelectionListLevelCommand::ModifySelectionListLevelCommand):
3489         (WebCore::ModifySelectionListLevelCommand::preservesTypingStyle):
3490         (WebCore::ModifySelectionListLevelCommand::doApply):
3491         (WebCore::ModifySelectionListLevelCommand::canIncreaseSelectionListLevel):
3492         (WebCore::ModifySelectionListLevelCommand::canDecreaseSelectionListLevel):
3493         (WebCore::ModifySelectionListLevelCommand::increaseSelectionListLevel):
3494         (WebCore::ModifySelectionListLevelCommand::decreaseSelectionListLevel):
3495         (WebCore::modifySelectionListLevel):
3496         (WebCore::getStartEndListChildren):
3497         (WebCore::canIncreaseListLevel):
3498         (WebCore::canDecreaseListLevel):
3499         (WebCore::ModifySelectionListLevelCommand::insertSiblingNodeRangeBefore):
3500         (WebCore::ModifySelectionListLevelCommand::insertSiblingNodeRangeAfter):
3501         (WebCore::ModifySelectionListLevelCommand::appendSiblingNodeRange):
3502         (WebCore::ModifySelectionListLevelCommand::increaseListLevel):
3503         (WebCore::ModifySelectionListLevelCommand::decreaseListLevel):
3504         * editing/ModifySelectionListLevelCommand.h: Added.
3505         New editing command for adjusting the list level.
3506         
3507         * editing/ReplaceSelectionCommand.cpp:
3508         (WebCore::ReplaceSelectionCommand::doApply):
3509         Slight logic cleanup
3510
3511         * editing/htmlediting.cpp:
3512         (WebCore::isListElement):
3513         (WebCore::enclosingListChild):
3514         New helpers.
3515         
3516         (WebCore::isTableElement):
3517         Allow caller to pass 0... return false in that case.
3518         
3519         * editing/htmlediting.h:
3520         New helpers.
3521         
3522         * rendering/RenderContainer.cpp:
3523         (WebCore::updateListMarkerNumbers):
3524         Allow for list children that are not li nodes.  Ignore and continue rather than stopping.
3525         
3526         (WebCore::RenderContainer::addChild):
3527         Allow for nil beforeChild, meaning "add at end".
3528         
3529 2006-03-01  Eric Seidel  <eseidel@apple.com>
3530
3531         Reviewed by justing.
3532
3533         Update ESelectionGranulartiy enum to use newer CamelCase styling.
3534
3535         * bridge/mac/WebCoreFrameBridge.mm:
3536         (-[WebCoreFrameBridge alterCurrentSelection:direction:granularity:]):
3537         * editing/Selection.cpp:
3538         (WebCore::Selection::Selection):
3539         (WebCore::Selection::validate):
3540         * editing/SelectionController.cpp:
3541         (WebCore::SelectionController::modifyExtendingRightForward):
3542         (WebCore::SelectionController::modifyMovingRightForward):
3543         (WebCore::SelectionController::modifyExtendingLeftBackward):
3544         (WebCore::SelectionController::modifyMovingLeftBackward):
3545         (WebCore::SelectionController::modify):
3546         * editing/TypingCommand.cpp:
3547         (WebCore::TypingCommand::deleteKeyPressed):
3548         (WebCore::TypingCommand::forwardDeleteKeyPressed):
3549         * editing/jsediting.cpp:
3550         * editing/text_granularity.h:
3551         (WebCore::):
3552         * page/Frame.cpp:
3553         (WebCore::Frame::selectClosestWordFromMouseEvent):
3554         (WebCore::Frame::handleMousePressEventTripleClick):
3555         (WebCore::Frame::handleMousePressEventSingleClick):
3556         (WebCore::Frame::handleMouseMoveEventSelection):
3557
3558 2006-03-01  Alexander Kellett  <lypanov@kde.org>
3559
3560         Reviewed by Maciej.
3561
3562         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=5966
3563
3564         Fixes already existing test:
3565           svg/W3C-SVG-1.1/coords-viewattr-02-b.svg
3566
3567         * kcanvas/RenderSVGImage.cpp:
3568         (WebCore::RenderSVGImage::adjustRectsForAspectRatio):
3569         (WebCore::RenderSVGImage::paint):
3570         * kcanvas/RenderSVGImage.h:
3571
3572 2006-03-01  Alexey Proskuryakov  <ap@nypop.com>
3573
3574         Reviewed by Darin.
3575
3576         - http://bugzilla.opendarwin.org/show_bug.cgi?id=3812
3577           XMLHttpRequest: PUT, DELETE, HEAD and all other methods but POST actually do a GET.
3578
3579         HEAD is currently unimplemented because of what seems to be a bug in NSURLConnection,
3580         and does a GET instead.
3581
3582         * kwq/KWQKJobClasses.h: Add a method parameter to TransferJob.
3583         * kwq/KWQKJobClasses.mm:
3584         (WebCore::TransferJobPrivate::TransferJobPrivate):
3585         (WebCore::TransferJob::TransferJob):
3586         (WebCore::TransferJob::method):
3587         * bridge/mac/WebCoreFrameBridge.h: URL loading functions now take a method parameter.
3588         * dom/xml_tokenizer.cpp:
3589         (WebCore::openFunc):
3590         * khtml/xsl/xslt_processorimpl.cpp:
3591         (DOM::docLoaderFunc):
3592         * kwq/KWQLoader.mm:
3593         (KWQServeRequest):
3594         (KWQServeSynchronousRequest):
3595         * loader/loader.cpp:
3596         (WebCore::Loader::servePendingRequests):
3597         * page/Frame.cpp:
3598         (WebCore::Frame::didOpenURL):
3599         * xml/xmlhttprequest.cpp:
3600         (WebCore::XMLHttpRequest::send): Honor the method passed in open().
3601         * khtml/ecma/JSXMLHttpRequest.cpp:
3602         (KJS::JSXMLHttpRequestProtoFunc::callAsFunction): Don't serialize null as "null".
3603
3604 2006-03-01  Timothy Hatcher  <timothy@apple.com>
3605
3606         Reviewed by Darin.
3607         
3608         http://bugzilla.opendarwin.org/show_bug.cgi?id=7450
3609         elementAtPoint is expensive and should return a smart dictionary
3610         
3611         <rdar://problem/2952761> moving the mouse around eats more CPU than I would expect (7450)
3612
3613         Support for WebKit. This removes the old elementAtPoint: on the bridge.
3614         WebKit now uses the bridge method getInnerNonSharedNode:innerNode:URLElement:atPoint:
3615
3616         * WebCore.exp: removes the WebCore* dictionary keys
3617         * bindings/objc/DOM.mm:
3618         (-[DOMElement