2fc053f0dc7e667fe643665be1feb6e4bcef56bd
[WebKit-https.git] / WebCore / ChangeLog
1 2006-10-18  Steve Falkenburg  <sfalken@apple.com>
2
3         Reviewed by Adam, Brady.
4
5         Loader tweaks.
6
7         * platform/cf/ResourceLoaderCFNet.cpp:
8         (WebCore::didFinishLoading):
9         (WebCore::didFail):
10         (WebCore::didReceiveChallenge):
11         (WebCore::runLoaderThread):
12         (WebCore::ResourceLoader::start):
13         (WebCore::ResourceLoader::cancel):
14
15 2006-10-18  Timothy Hatcher  <timothy@apple.com>
16
17         Reviewed by Darin.
18
19         <rdar://problem/4752138> Manipulating popup in HTML page crashed Xcode
20
21         - Store the Mac popup button cell as a RetainPtr to prevent GC collection.
22         - Convert more ObjC local statics and member variables to use RetainPtr.
23         - Convert more CFRetain/CFRelease to HardRetain/HardRelease.
24
25         * bindings/objc/DOM.mm:
26         (ObjCNodeFilterCondition::ObjCNodeFilterCondition): use HardRetain and not CFRetain
27         (ObjCNodeFilterCondition::~ObjCNodeFilterCondition): use HardRelease and not CFRelease
28         * bridge/mac/AXObjectCacheMac.mm:
29         (WebCore::AXObjectCache::~AXObjectCache): use HardRelease and not CFRelease
30         (WebCore::AXObjectCache::get): use HardRetain and not CFRetain
31         (WebCore::AXObjectCache::remove): use HardRelease and not CFRelease
32         * bridge/mac/WebCoreFrameBridge.mm:
33         (+[WebCoreFrameBridge supportedImageResourceMIMETypes]): use RetainPtr
34         (+[WebCoreFrameBridge supportedImageMIMETypes]): ditto
35         * bridge/mac/WebCoreIconDatabaseBridge.mm:
36         (+[WebCoreIconDatabaseBridge sharedInstance]): use RetainPtr
37         * platform/PopupMenu.h: renamed popup to m_popup and switched to RetainPtr<NSPopUpButtonCell>
38         * platform/cf/RetainPtr.h:
39         (WTF::::operator): implement a missing operator= template function
40         * platform/mac/PopupMenuMac.mm:
41         (WebCore::PopupMenu::PopupMenu): remove nil initialization
42         (WebCore::PopupMenu::~PopupMenu): use .get(), remove release message and rename to m_popup
43         (WebCore::PopupMenu::clear): use .get() when sending a message and rename to m_popup
44         (WebCore::PopupMenu::populate): ditto 
45         (WebCore::PopupMenu::show): ditto
46         (WebCore::PopupMenu::hide): ditto
47         (WebCore::PopupMenu::addSeparator): ditto
48         (WebCore::PopupMenu::addGroupLabel): ditto
49         (WebCore::PopupMenu::addOption): ditto
50
51 2006-10-18  Geoffrey Garen  <ggaren@apple.com>
52
53         Reviewed by Adele.
54
55         Fixed <rdar://problem/3673233> JavaScript timers do not fire if controls
56         are tracking or menus are down (run loop modes)
57
58         I spent a few hours trying to write an automated test, but DRT doesn't
59         seem to support it. Manual tests attached to related bugs.
60         
61         * bridge/mac/FrameMac.mm:
62         (WebCore::FrameMac::passMouseDownEventToWidget):
63         * platform/mac/SharedTimerMac.cpp:
64         (WebCore::setSharedTimerFireTime):
65
66 2006-10-18  Sam Weinig  <sam.weinig@gmail.com>
67
68         Reviewed by Maciej.
69
70         More Win32 buildfix.
71
72         * bridge/win/FrameWin.h:
73
74 2006-10-18  Sam Weinig  <sam.weinig@gmail.com>
75
76         Reviewed by Mitz
77
78         Win32 build fix.
79
80         * bridge/win/BrowserExtensionWin.cpp:
81         (WebCore::BrowserExtensionWin::BrowserExtensionWin):
82         (WebCore::BrowserExtensionWin::createNewWindow):
83         * bridge/win/BrowserExtensionWin.h:
84         * bridge/win/FrameWin.cpp:
85         (WebCore::FrameWin::createNewWindow):
86         * bridge/win/FrameWin.h:
87         * platform/win/CursorWin.cpp:
88         * platform/win/TemporaryLinkStubs.cpp:
89         (Image::getHBITMAP):
90
91 2006-10-18  Justin Garcia  <justin.garcia@apple.com>
92
93         Reviewed by harrison
94         
95         <rdar://problem/4784823>
96         GMail Editor: Hang occurs when removing list styling on text in a rich text message
97
98         List removal moves the contents of every list item out of the list it's 
99         in. When the code tried to move the contents of an empty list item (an li 
100         with no child nodes, not even a placeholder br), moveParagraph didn't prune 
101         the li, like it would if the li had a placeholder inside it.  So the list 
102         removal code went into an infinite loop, continually attempting to de-list 
103         an empty list item.
104
105         * editing/CompositeEditCommand.cpp:
106         (WebCore::CompositeEditCommand::moveParagraphs): If the selection
107         to move was empty and in an empty block that doesn't require a 
108         placeholder to prop itself open (like a bordered div or an li), 
109         remove it during the move.
110
111 2006-10-18  Adele Peterson  <adele@apple.com>
112
113         Reviewed by Beth.
114
115         - Fixed http://bugs.webkit.org/show_bug.cgi?id=11343
116           REGRESSION (r16975): fast/events/objc-event-api is failing
117
118           When I moved the autoscroll code from FrameMac to Frame, I mistakingly changed the order of
119           a call to invalidateClick.  This change moves it back to the sequence that existed before.  This allows
120           the click count to get properly reset during a selection.
121
122         * page/Frame.cpp: (WebCore::Frame::handleMouseMoveEvent):
123
124 2006-10-17  Geoffrey Garen  <ggaren@apple.com>
125         
126         Reviewed by Anders.
127         
128         Factored common scaling code into a helper function.
129
130         * platform/mac/ScreenMac.mm:
131         (WebCore::scale):
132         (WebCore::scaleScreenRectToPageCoordinates):
133         (WebCore::scalePageRectToScreenCoordinates):
134
135 2006-10-17  Steve Falkenburg  <sfalken@apple.com>
136
137         Build fixes
138
139         * bridge/win/BrowserExtensionWin.cpp:
140         (WebCore::BrowserExtensionWin::createNewWindow):
141         * bridge/win/BrowserExtensionWin.h:
142         * bridge/win/FrameWin.cpp:
143         (WebCore::FrameWin::createNewWindow):
144         * bridge/win/FrameWin.h:
145         * platform/gdk/BrowserExtensionGdk.h:
146         * platform/gdk/TemporaryLinkStubs.cpp:
147         (BrowserExtensionGdk::createNewWindow):
148         * platform/qt/BrowserExtensionQt.cpp:
149         (WebCore::BrowserExtensionQt::createNewWindow):
150         * platform/qt/BrowserExtensionQt.h:
151
152 2006-10-17  Geoffrey Garen  <ggaren@apple.com>
153
154         Reviewed by Anders.
155         
156         Renamed WindowArgs to WindowFeatures, and moved it into its own header.
157         ("Features" is the term of art in IE documentation. "Args" is pirate
158         talk.)
159
160         * WebCore.xcodeproj/project.pbxproj:
161         * bindings/js/kjs_window.cpp:
162         (KJS::createNewWindow):
163         (KJS::showModalDialog):
164         (KJS::setWindowFeature):
165         (KJS::parseWindowFeatures):
166         (KJS::constrainToVisible):
167         (KJS::WindowFunc::callAsFunction):
168         * bridge/BrowserExtension.h:
169         * bridge/WindowFeatures.h: Added.
170         * bridge/mac/BrowserExtensionMac.h:
171         * bridge/mac/BrowserExtensionMac.mm:
172         (WebCore::BrowserExtensionMac::createNewWindow):
173
174 2006-10-17  Sam Weinig  <sam.weinig@gmail.com>
175
176         Reviewed by Tim H.
177
178         Patch for http://bugs.webkit.org/show_bug.cgi?id=11268
179         Implement the Objective-C DOM bindings for SVGNumber, SVGRect, and SVGPoint
180
181         - Adds implementation for DOMSVGNumber, DOMSVGRect, and DOMSVGPoint.
182
183         - Moves the contents of ksvg/bindings/js/ to bindings/js/.
184
185         - Moves SVGZoomEvent.idl from ksvg/svg/ to ksvg/events/.
186
187         - Adds isSVGColor() and isSVGPaint() methods to StyleBase, matching 
188           the other CSSValue classing, and allowing the bindings to allocate
189           appropriately.
190
191         - Removes #ifdefs around the getBBox() method in SVGLocatable.idl allowing
192           generation for Objective-C.
193
194         - Assorted style cleanups.
195
196         * DerivedSources.make:
197         * WebCore.xcodeproj/project.pbxproj:
198         * bindings/objc/DOMCSS.mm:
199         (+[DOMCSSValue _CSSValueWith:WebCore::]):
200         * bindings/objc/DOMEvents.mm:
201         (+[DOMEvent _eventWith:WebCore::]):
202         * bindings/objc/DOMSVG.h:
203         * bindings/objc/DOMSVGNumber.mm:
204         (-[DOMSVGNumber dealloc]):
205         (-[DOMSVGNumber finalize]):
206         (-[DOMSVGNumber value]):
207         (-[DOMSVGNumber setValue:]):
208         (-[DOMSVGNumber _SVGNumber]):
209         (-[DOMSVGNumber _initWithFloat:]):
210         (+[DOMSVGNumber _SVGNumberWith:]):
211         * bindings/objc/DOMSVGPoint.mm:
212         (-[DOMSVGPoint dealloc]):
213         (-[DOMSVGPoint finalize]):
214         (-[DOMSVGPoint x]):
215         (-[DOMSVGPoint setX:]):
216         (-[DOMSVGPoint y]):
217         (-[DOMSVGPoint setY:]):
218         (-[DOMSVGPoint WebCore::]):
219         (-[DOMSVGPoint _initWithFloatPoint:WebCore::]):
220         (+[DOMSVGPoint _SVGPointWith:WebCore::]):
221         * bindings/objc/DOMSVGRect.mm:
222         (-[DOMSVGRect dealloc]):
223         (-[DOMSVGRect finalize]):
224         (-[DOMSVGRect x]):
225         (-[DOMSVGRect setX:]):
226         (-[DOMSVGRect y]):
227         (-[DOMSVGRect setY:]):
228         (-[DOMSVGRect width]):
229         (-[DOMSVGRect setWidth:]):
230         (-[DOMSVGRect height]):
231         (-[DOMSVGRect setHeight:]):
232         (-[DOMSVGRect WebCore::]):
233         (-[DOMSVGRect _initWithFloatRect:WebCore::]):
234         (+[DOMSVGRect _SVGRectWith:WebCore::]):
235         * bindings/scripts/CodeGeneratorObjC.pm:
236         * css/StyleBase.h:
237         (WebCore::StyleBase::isSVGColor):
238         (WebCore::StyleBase::isSVGPaint):
239         * ksvg2/bindings/js/JSSVGElementWrapperFactory.cpp: Removed.
240         * ksvg2/bindings/js/JSSVGElementWrapperFactory.h: Removed.
241         * ksvg2/bindings/js/JSSVGNumber.cpp: Removed.
242         * ksvg2/bindings/js/JSSVGNumber.h: Removed.
243         * ksvg2/bindings/js/JSSVGPoint.cpp: Removed.
244         * ksvg2/bindings/js/JSSVGPoint.h: Removed.
245         * ksvg2/bindings/js/JSSVGRect.cpp: Removed.
246         * ksvg2/bindings/js/JSSVGRect.h: Removed.
247         * ksvg2/svg/SVGColor.h:
248         (WebCore::SVGColor::isSVGColor):
249         * ksvg2/svg/SVGFECompositeElement.idl:
250         * ksvg2/svg/SVGFEFloodElement.idl:
251         * ksvg2/svg/SVGLocatable.idl:
252         * ksvg2/svg/SVGMarkerElement.idl:
253         * ksvg2/svg/SVGPaint.h:
254         (WebCore::SVGPaint::isSVGPaint):
255         * ksvg2/svg/SVGRectElement.idl:
256         * ksvg2/svg/SVGZoomEvent.idl: Removed.
257
258 2006-10-17  David Hyatt  <hyatt@apple.com>
259
260         Prepare for the elimination of the RenderLayer for <html> elements.  The layer is still present,
261         but this patch makes everything work without a root layer being around.
262
263         Reviewed by beth
264
265         * rendering/RenderBlock.cpp:
266         (WebCore::RenderBlock::paint):
267         (WebCore::RenderBlock::paintChildren):
268         (WebCore::RenderBlock::nodeAtPoint):
269         * rendering/RenderLayer.cpp:
270         (WebCore::frameVisibleRect):
271         (WebCore::RenderLayer::hitTest):
272         (WebCore::RenderLayer::hitTestLayer):
273         (WebCore::RenderLayer::intersectsDamageRect):
274         * rendering/RenderObject.cpp:
275         (WebCore::RenderObject::setInnerNode):
276         * rendering/RenderView.cpp:
277         (WebCore::RenderView::paint):
278
279 2006-10-17  David Hyatt  <hyatt@apple.com>
280
281         Back out my previous patch to the WebCore memory cache.
282
283         * loader/Cache.cpp:
284         (WebCore::Cache::flush):
285         (WebCore::Cache::setSize):
286         (WebCore::Cache::getLRUListFor):
287         (WebCore::Cache::removeFromLRUList):
288         (WebCore::Cache::insertInLRUList):
289         * loader/Cache.h:
290         * loader/CachedCSSStyleSheet.cpp:
291         (WebCore::CachedCSSStyleSheet::deref):
292         * loader/CachedCSSStyleSheet.h:
293         * loader/CachedImage.cpp:
294         (WebCore::CachedImage::deref):
295         * loader/CachedImage.h:
296         * loader/CachedResource.cpp:
297         (WebCore::CachedResource::setRequest):
298         (WebCore::CachedResource::deref):
299         * loader/CachedResource.h:
300         (WebCore::CachedResource::allowInLRUList):
301         * loader/CachedScript.cpp:
302         (WebCore::CachedScript::deref):
303         * loader/CachedScript.h:
304         * loader/CachedXBLDocument.cpp:
305         (WebCore::CachedXBLDocument::deref):
306         * loader/CachedXBLDocument.h:
307         * loader/CachedXSLStyleSheet.cpp:
308         (WebCore::CachedXSLStyleSheet::deref):
309         * loader/CachedXSLStyleSheet.h:
310
311 2006-10-17  Oliver Hunt  <oliver@apple.com>
312
313         Reviewed by Anders.
314
315         Make north and east resize cursors use correct image
316
317         * platform/win/CursorWin.cpp:
318         (WebCore::eastResizeCursor):
319         (WebCore::northResizeCursor):
320
321 2006-10-17  Oliver Hunt  <oliver@apple.com>
322
323         Reviewed by Brady
324
325         Various cursor fixes
326
327         * page/FrameView.cpp:
328         (WebCore::FrameView::handleMouseMoveEvent):
329         * platform/Cursor.h:
330         * platform/mac/CursorMac.mm:
331         (WebCore::pointerCursor):
332         * platform/win/CursorWin.cpp:
333         (WebCore::supportsAlphaCursors):
334         (WebCore::Cursor::Cursor):
335         (WebCore::Cursor::~Cursor):
336         (WebCore::pointerCursor):
337
338 2006-10-17  Justin Garcia  <justin.garcia@apple.com>
339
340         Reviewed by harrison
341         
342         <rdar://problem/4776665>
343         REGRESSION: In Mail, caret is visible when the message body isn't focused
344
345         * page/Frame.cpp:
346         (WebCore::Frame::paintCaret): If a caret blink timer is ever on in error
347         (like when the frame that contains the caret isn't focused) then we don't 
348         want to paint the caret.  We should eventually move to using a single bool
349         for caret painting.
350
351 2006-10-17  Justin Garcia  <justin.garcia@apple.com>
352
353         Reviewed by harrison
354         
355         <rdar://problem/4774354>
356         REGRESSION: In Gmail, caret reappears when dragging a selection over some text in the message body
357
358         Functions call recomputCaretRect to see if the caret rect has changed, 
359         and, if it has, they invalidate (repaint) it.  recomputeCaretRect was 
360         returning false if the caret turned into a range selection or was blown 
361         away.
362
363         * editing/SelectionController.cpp:
364         (WebCore::SelectionController::recomputeCaretRect): Don't early return if
365         !isCaret().  Obtain the FrameView* using the m_frame pointer, because m_sel 
366         may now be null.
367
368 2006-10-17  Geoffrey Garen  <ggaren@apple.com>
369
370         Reviewed by Brady.
371
372         BrowserExtension cleanup.
373         
374         - Removed unnecessary #include of BrowserExtension in Frame.h, added
375         #includes to compensate in other files.
376         
377         - Removed unused versions of createNewWindow.
378         
379         * bindings/js/kjs_window.cpp:
380         * bridge/BrowserExtension.h:
381         * bridge/mac/BrowserExtensionMac.h:
382         * bridge/mac/BrowserExtensionMac.mm:
383         (WebCore::BrowserExtensionMac::createNewWindow):
384         * bridge/mac/WebCoreFrameBridge.mm:
385         * html/HTMLFormElement.cpp:
386         * loader/mac/LoaderFunctionsMac.mm:
387         * page/Frame.h:
388         * page/FramePrivate.h:
389
390 2006-10-15  Geoffrey Garen  <ggaren@apple.com>
391
392         Reviewed by Adam.
393         
394         - Fixed "FIXME: Violates Liskov Substitution principle."
395         
396         IFRAME was never a true subclass of FRAME, since they disagreed on a
397         number of behaviors, which, confusingly, IFRAME just overrode and contradicted. 
398
399         The fix here is to factor out things common to IFRAME and FRAME into a
400         common base class, HTMLFrameElementBase.
401         
402         I also changed some " *" to "* " and added #includes in files that implicitly
403         assumed that HTMLIFrameElement.h #included HTMLFrameElement.h.
404
405 2006-10-16  Justin Garcia  <justin.garcia@apple.com>
406
407         Reviewed by sullivan
408         
409         <rdar://problem/4776765>
410         REGRESSION: Caret's ghost left behind after inserting a paragraph separator (11237)
411
412         We set m_needsLayout to false and call caretRect() in the hopes that it will give us 
413         the old caret rect.  It in fact corrects the caret rect for an offset that it 
414         believes is due to scrolling but which is actually due to a change in selection
415         without an accompanying layout.  So it returns the new caret rect regardless of
416         what m_needsLayout is set to.
417         
418         * editing/SelectionController.cpp:
419         (WebCore::repaintRectForCaret): Moved the code from caretRepaintRect that
420         adds a one pixel slop to this new function.
421         (WebCore::SelectionController::caretRepaintRect): Moved this code to
422         repaintRectForCaret.
423         (WebCore::SelectionController::recomputeCaretRect): Compare the old
424         caret rect to the new one that's computed with a fresh layout.  If
425         they are different, invalidate both repaint rects.
426
427 2006-10-17  David Harrison  <harrison@apple.com>
428
429         Reviewed by Adele.
430
431         <rdar://problem/4770453> VO not honoring secure edit fields in web pages
432
433         * bridge/mac/WebCoreAXObject.mm:
434         (-[WebCoreAXObject isPasswordField]):
435         New. Checks for input with inputType() of PASSWORD.
436         
437         (-[WebCoreAXObject subrole]):
438         Returns NSAccessibilitySecureTextFieldSubrole if [self isPasswordField].
439         
440         (-[WebCoreAXObject roleDescription]):
441         Pass [self subrole] instead of nil when calling NSAccessibilityRoleDescription.
442         
443         (-[WebCoreAXObject value]):
444         Return nil if [self isPasswordField].
445         
446         (-[WebCoreAXObject accessibilityAttributeNames]):
447         Return generic attributes if [self isPasswordField].
448
449         (-[WebCoreAXObject accessibilityParameterizedAttributeNames]):
450         Return empty array if [self isPasswordField].
451
452 2006-10-17  David Hyatt  <hyatt@apple.com>
453
454         Fix "flash to white' problem on yahoo.com as it finishes loading.  Refine the FOUC suppression
455         code so that it will only run if the body still has no renderer.
456
457         * dom/Document.cpp:
458         (WebCore::Document::updateLayoutIgnorePendingStylesheets):
459
460 2006-10-17  David Hyatt  <hyatt@apple.com>
461
462         Fix a bug where the WebCore memory cache could grow without bound during extended browsing
463         sessions.
464
465         Reviewed by mjs
466
467         * loader/Cache.cpp:
468         (WebCore::Cache::flush):
469         (WebCore::Cache::setSize):
470         (WebCore::Cache::getLRUListFor):
471         (WebCore::Cache::removeFromLRUList):
472         (WebCore::Cache::insertInLRUList):
473         * loader/Cache.h:
474         * loader/CachedCSSStyleSheet.cpp:
475         * loader/CachedCSSStyleSheet.h:
476         * loader/CachedImage.cpp:
477         * loader/CachedImage.h:
478         * loader/CachedResource.cpp:
479         (WebCore::CachedResource::setRequest):
480         (WebCore::CachedResource::deref):
481         * loader/CachedResource.h:
482         (WebCore::CachedResource::allowInLRUList):
483         * loader/CachedScript.cpp:
484         * loader/CachedScript.h:
485         * loader/CachedXBLDocument.cpp:
486         * loader/CachedXBLDocument.h:
487         * loader/CachedXSLStyleSheet.cpp:
488         * loader/CachedXSLStyleSheet.h:
489
490 2006-10-13  Justin Garcia  <justin.garcia@apple.com>
491
492         Reviewed by harrison
493         
494         <rdar://problem/3655385>
495         Editing: -indent: method unimplemented
496
497         Added Frame and bridge methods.
498
499         * bridge/mac/WebCoreFrameBridge.h:
500         * bridge/mac/WebCoreFrameBridge.mm:
501         (-[WebCoreFrameBridge indent]):
502         (-[WebCoreFrameBridge outdent]):
503         * page/Frame.cpp:
504         (WebCore::Frame::indent): 
505         (WebCore::Frame::outdent):
506         * page/Frame.h:
507
508 2006-10-16  Adam Roben  <aroben@apple.com>
509
510         Reviewed by John.
511
512         More menulist cleanup/tweaking.
513
514         * html/HTMLSelectElement.cpp:
515         (WebCore::HTMLSelectElement::setSelectedIndex): Renamed 'index'
516         parameter to 'optionIndex' for clarity.
517         (WebCore::HTMLSelectElement::menuListDefaultEventHandler): Skip over
518         items that are not enabled <option> elements when using arrow keys, and
519         make sure we pass an option index to setSelectedIndex.
520         * platform/PopupMenu.h:
521         (WebCore::PopupMenu::setWasClicked): Specify default argument.
522         * rendering/RenderMenuList.cpp:
523         (WebCore::RenderMenuList::setTextFromOption): Strip whitespace from
524         option text before setting the control text so that options within
525         <optgroup>s don't appear indented in the actual control.
526
527 2006-10-16  Sam Weinig  <sam.weinig@gmail.com>
528
529         Reviewed by Adam.
530
531         Win32 build fix.
532
533         * WebCore.vcproj/WebCore/WebCore.vcproj:
534         * bridge/win/BrowserExtensionWin.cpp:
535         (WebCore::BrowserExtensionWin::createNewWindow):
536         * bridge/win/FrameWin.cpp:
537         (WebCore::FrameWin::urlSelected):
538         (WebCore::FrameWin::submitForm):
539         (WebCore::FrameWin::createNewWindow):
540         * bridge/win/FrameWin.h:
541         * loader/loader.cpp:
542         (WebCore::Loader::receivedResponse):
543         * platform/win/GraphicsContextWin.cpp:
544         (WebCore::GraphicsContext::getWindowsContext):
545         (WebCore::GraphicsContext::releaseWindowsContext):
546         * platform/win/TemporaryLinkStubs.cpp:
547         (FrameWin::openURLRequest):
548         (WebCore::ServeSynchronousRequest):
549         (WebCore::CheckIfReloading):
550         (WebCore::IsResponseURLEqualToURL):
551         (WebCore::ResponseMIMEType):
552         (WebCore::ResponseIsMultipart):
553         (WebCore::CacheObjectExpiresTime):
554         (CachedResource::setResponse):
555         (CachedResource::setAllData):
556         * rendering/RenderThemeWin.cpp:
557         (WebCore::doneDrawing):
558         (WebCore::RenderThemeWin::paintButton):
559         (WebCore::RenderThemeWin::paintTextField):
560
561 2006-10-16  David Hyatt  <hyatt@apple.com>
562
563         Fix for bug 9347, positioned elements have the wrong containing block.  This is a change from CSS2 to
564         CSS2.1.  In the absence of any other enclosing positioned elements, the containing block for a positioned
565         element is the initial containing block (our RenderView).
566
567         Reviewed by mjs
568
569         Test cases added to fast/block/positioning for quirks and strict modes.
570
571         * rendering/RenderBlock.cpp:
572         (WebCore::RenderBlock::lowestPosition):
573         (WebCore::RenderBlock::rightmostPosition):
574         (WebCore::RenderBlock::leftmostPosition):
575         * rendering/RenderBox.cpp:
576         (WebCore::RenderBox::containingBlockHeightForPositioned):
577         (WebCore::RenderBox::calcAbsoluteVertical):
578         * rendering/RenderObject.cpp:
579         (WebCore::RenderObject::containingBlock):
580         (WebCore::RenderObject::container):
581
582 2006-10-15  Krzysztof Kowalczyk  <kkowalczyk@gmail.com>
583
584         Reviewed by Anders.
585
586         Misc Gdk/Linux build fixes.
587
588         * platform/gdk/BrowserExtensionGdk.h:
589         * platform/gdk/FrameGdk.cpp:
590         (WebCore::FrameGdk::submitForm):
591         (WebCore::FrameGdk::urlSelected):
592         * platform/gdk/FrameGdk.h:
593         * platform/gdk/RenderPopupMenuGdk.cpp:
594         (WebCore::PopupMenu::PopupMenu):
595         (WebCore::PopupMenu::~PopupMenu):
596         (WebCore::PopupMenu::clear):
597         (WebCore::PopupMenu::populate):
598         (WebCore::PopupMenu::show):
599         (WebCore::PopupMenu::hide):
600         (WebCore::PopupMenu::addSeparator):
601         (WebCore::PopupMenu::addGroupLabel):
602         (WebCore::PopupMenu::addOption):
603         * platform/gdk/RenderPopupMenuGdk.h:
604         * platform/gdk/RenderThemeGdk.cpp:
605         * platform/gdk/RenderThemeGdk.h:
606         (WebCore::RenderThemeGdk::RenderThemeGdk):
607         * platform/gdk/TemporaryLinkStubs.cpp:
608         (BrowserExtensionGdk::createNewWindow):
609         (BrowserExtensionGdk::BrowserExtensionGdk):
610         (BrowserExtensionGdk::setTypedIconURL):
611         (BrowserExtensionGdk::setIconURL):
612         (BrowserExtensionGdk::getHistoryLength):
613         (WebCore::CheckIfReloading):
614         (WebCore::CacheObjectExpiresTime):
615         (WebCore::ResponseURL):
616         (WebCore::IsResponseURLEqualToURL):
617         (WebCore::ResponseIsMultipart):
618         (WebCore::ResponseMIMEType):
619         (WebCore::CachedResource::setResponse):
620         (WebCore::CachedResource::setAllData):
621         (FileChooser::disconnectUploadControl):
622         * rendering/RenderTheme.h:
623         * rendering/RenderThemeMac.h:
624
625 2006-10-15  Sam Weinig  <sam.weinig@gmail.com>
626
627         Reviewed by Mitz.
628
629         Fix for http://bugs.webkit.org/show_bug.cgi?id=11294
630         Add getModifierState method to KeyboardEvent
631
632         * bindings/objc/DOMEvents.h:
633         * bindings/objc/DOMEvents.mm:
634         * bindings/objc/PublicDOMInterfaces.h:
635         * dom/KeyboardEvent.cpp:
636         (WebCore::KeyboardEvent::getModifierState):
637         * dom/KeyboardEvent.h:
638         * dom/KeyboardEvent.idl:
639
640 2006-10-15  Nikolas Zimmermann  <zimmermann@kde.org>
641
642         Reviewed and landed by ap.
643
644         Changed PlatformResponse handling for Qt. Don't just store
645         a QString object containing the data but a new PlatformResponseQt struct
646         containing data and url, and store it as pointer. This is compatible
647         to the OS X handling and removes the Qt plaform specific hacks from
648         CachedCSSStyleSheet, CachedResource & loader.
649
650         Add new file LoaderFunctionsQt, similar to LoaderFunctionsMac, and move
651         all methods from TemporaryLinkStubs related to loading in there, and implement
652         some like ServeSynchronousRequest (yay for xslt handling!).
653
654         * CMakeLists.txt:
655         * loader/CachedCSSStyleSheet.cpp:
656         (WebCore::CachedCSSStyleSheet::checkNotify):
657         * loader/CachedResource.h:
658         (WebCore::CachedResource::CachedResource):
659         * loader/loader.cpp:
660         (WebCore::Loader::receivedResponse):
661         * platform/ResourceLoaderClient.h:
662         * platform/ResourceLoaderInternal.h:
663         * platform/qt/FrameQt.cpp:
664         (WebCore::FrameQt::~FrameQt):
665         (WebCore::FrameQt::createEmptyDocument):
666         * platform/qt/FrameQt.h:
667         (WebCore::QtFrame):
668         * platform/qt/FrameQtClient.cpp:
669         (WebCore::FrameQtClientDefault::setFrame):
670         (WebCore::FrameQtClientDefault::openURL):
671         (WebCore::FrameQtClientDefault::loadFinished):
672         (WebCore::FrameQtClientDefault::receivedAllData):
673         * platform/qt/FrameQtClient.h:
674         * platform/qt/LoaderFunctionsQt.cpp: Added.
675         (WebCore::ServeSynchronousRequest):
676         (WebCore::NumberOfPendingOrLoadingRequests):
677         (WebCore::CheckIfReloading):
678         (WebCore::CheckCacheObjectStatus):
679         (WebCore::IsResponseURLEqualToURL):
680         (WebCore::ResponseURL):
681         (WebCore::ResponseMIMEType):
682         (WebCore::ResponseIsMultipart):
683         (WebCore::CacheObjectExpiresTime):
684         (WebCore::CachedResource::setResponse):
685         (WebCore::CachedResource::setAllData):
686         * platform/qt/ResourceLoaderManager.cpp:
687         (WebCore::ResourceLoaderManager::remove):
688         * platform/qt/ResourceLoaderQt.cpp:
689         (WebCore::ResourceLoader::~ResourceLoader):
690         (WebCore::ResourceLoader::start):
691         (WebCore::ResourceLoader::assembleResponseHeaders):
692         (WebCore::ResourceLoader::receivedResponse):
693         * platform/qt/TemporaryLinkStubs.cpp:
694
695 2006-10-14  Rob Buis  <buis@kde.org>
696
697         Reviewed by Mitz.
698
699         http://bugs.webkit.org/show_bug.cgi?id=11217
700         Cleanup svg coding style
701
702         Cleanup coding style in svg basic datastructure classes.
703
704         * ksvg2/svg/SVGAngle.cpp:
705         (WebCore::SVGAngle::valueAsString):
706         (WebCore::SVGAngle::context):
707         (WebCore::SVGAngle::setContext):
708         * ksvg2/svg/SVGAngle.h:
709         * ksvg2/svg/SVGColor.cpp:
710         * ksvg2/svg/SVGColor.h:
711         * ksvg2/svg/SVGElement.cpp:
712         (WebCore::SVGElement::ownerSVGElement):
713         (WebCore::SVGElement::viewportElement):
714         (WebCore::SVGElement::parseMappedAttribute):
715         (WebCore::SVGElement::childShouldCreateRenderer):
716         * ksvg2/svg/SVGElement.h:
717         (WebCore::svg_dynamic_cast):
718         * ksvg2/svg/SVGFitToViewBox.cpp:
719         (WebCore::SVGFitToViewBox::parseViewBox):
720         * ksvg2/svg/SVGFitToViewBox.h:
721         * ksvg2/svg/SVGLangSpace.cpp:
722         (WebCore::SVGLangSpace::parseMappedAttribute):
723         * ksvg2/svg/SVGLangSpace.h:
724         * ksvg2/svg/SVGLength.cpp:
725         (WebCore::SVGLength::SVGLength):
726         (WebCore::SVGLength::setValueAsString):
727         (WebCore::SVGLength::dpi):
728         (WebCore::SVGLength::updateValue):
729         (WebCore::SVGLength::updateValueInSpecifiedUnits):
730         (WebCore::SVGLength::context):
731         (WebCore::SVGLength::setContext):
732         * ksvg2/svg/SVGLength.h:
733         * ksvg2/svg/SVGLengthList.cpp:
734         * ksvg2/svg/SVGLengthList.h:
735         * ksvg2/svg/SVGLocatable.cpp:
736         (WebCore::SVGLocatable::nearestViewportElement):
737         (WebCore::SVGLocatable::farthestViewportElement):
738         (WebCore::SVGLocatable::getBBox):
739         (WebCore::SVGLocatable::getCTM):
740         (WebCore::SVGLocatable::getScreenCTM):
741         * ksvg2/svg/SVGNumberList.cpp:
742         * ksvg2/svg/SVGNumberList.h:
743         * ksvg2/svg/SVGPreserveAspectRatio.cpp:
744         (WebCore::SVGPreserveAspectRatio::SVGPreserveAspectRatio):
745         (WebCore::SVGPreserveAspectRatio::getCTM):
746         * ksvg2/svg/SVGPreserveAspectRatio.h:
747         * ksvg2/svg/SVGStringList.cpp:
748         (WebCore::SVGStringList::reset):
749         * ksvg2/svg/SVGStringList.h:
750         * ksvg2/svg/SVGStylable.cpp:
751         * ksvg2/svg/SVGStylable.h:
752         * ksvg2/svg/SVGTests.cpp:
753         (WebCore::SVGTests::requiredFeatures):
754         (WebCore::SVGTests::requiredExtensions):
755         (WebCore::SVGTests::systemLanguage):
756         (WebCore::SVGTests::isValid):
757         (WebCore::SVGTests::parseMappedAttribute):
758         * ksvg2/svg/SVGTests.h:
759         * ksvg2/svg/SVGTransformable.cpp:
760         (WebCore::SVGTransformable::parseTransformAttribute):
761         * ksvg2/svg/SVGTransformable.h:
762         * ksvg2/svg/SVGURIReference.cpp:
763         (WebCore::SVGURIReference::parseMappedAttribute):
764         * ksvg2/svg/SVGZoomAndPan.cpp:
765         (WebCore::SVGZoomAndPan::parseMappedAttribute):
766         * ksvg2/svg/SVGZoomAndPan.h:
767
768 2006-10-15  Nikolas Zimmermann  <zimmermann@kde.org>
769
770         Reviewed by Oliver.
771
772         Implement some functions in FrameQt / ScrollViewQt.
773
774         Added comments what needs to be done in quite some places,
775         marked some functions as no-ops.
776
777         * CMakeLists.txt:
778         * platform/qt/FrameQt.cpp:
779         (WebCore::FrameQt::FrameQt):
780         (WebCore::FrameQt::runJavaScriptConfirm):
781         (WebCore::FrameQt::locationbarVisible):
782         (WebCore::FrameQt::createFrame):
783         (WebCore::FrameQt::passSubframeEventToSubframe):
784         (WebCore::FrameQt::menubarVisible):
785         (WebCore::FrameQt::personalbarVisible):
786         (WebCore::FrameQt::statusbarVisible):
787         (WebCore::FrameQt::toolbarVisible):
788         (WebCore::FrameQt::markedTextRange):
789         (WebCore::FrameQt::lastEventIsMouseUp):
790         (WebCore::FrameQt::openURLRequest):
791         (WebCore::FrameQt::scheduleClose):
792         (WebCore::FrameQt::unfocusWindow):
793         (WebCore::FrameQt::focusWindow):
794         (WebCore::FrameQt::overrideMediaType):
795         (WebCore::FrameQt::runJavaScriptPrompt):
796         (WebCore::FrameQt::bindingRootObject):
797         (WebCore::FrameQt::addPluginRootObject):
798         (WebCore::FrameQt::registerCommandForUndo):
799         (WebCore::FrameQt::registerCommandForRedo):
800         (WebCore::FrameQt::clearUndoRedoOperations):
801         (WebCore::FrameQt::respondToChangedSelection):
802         (WebCore::FrameQt::respondToChangedContents):
803         (WebCore::FrameQt::shouldChangeSelection):
804         (WebCore::FrameQt::canGoBackOrForward):
805         (WebCore::FrameQt::canPaste):
806         (WebCore::FrameQt::canRedo):
807         (WebCore::FrameQt::canUndo):
808         * platform/qt/FrameQt.h:
809         * platform/qt/FrameQtClient.cpp:
810         (WebCore::FrameQtClientDefault::runJavaScriptAlert):
811         (WebCore::FrameQtClientDefault::runJavaScriptConfirm):
812         (WebCore::FrameQtClientDefault::runJavaScriptPrompt):
813         (WebCore::FrameQtClientDefault::menubarVisible):
814         (WebCore::FrameQtClientDefault::toolbarVisible):
815         (WebCore::FrameQtClientDefault::statusbarVisible):
816         (WebCore::FrameQtClientDefault::personalbarVisible):
817         (WebCore::FrameQtClientDefault::locationbarVisible):
818         * platform/qt/FrameQtClient.h:
819         * platform/qt/ImageSourceQt.cpp:
820         * platform/qt/RenderThemeQt.cpp:
821         * platform/qt/ScrollViewQt.cpp:
822         (WebCore::ScrollView::scrollPointRecursively):
823         * platform/qt/TemporaryLinkStubs.cpp:
824         (WebCore::CachedResource::setResponse):
825         (WebCore::CachedResource::setAllData):
826
827 2006-10-14  David Harrison  <harrison@apple.com>
828
829         Reviewed by Geoff.
830
831         <rdar://problem/4775213> REGRESSION: Can't from tab from last link on the page to URL address field
832         <rdar://problem/4783926> REGRESSION: Typing tab key enters no text
833
834         The problem is that EventTargetNode::defaultEventHandler() calls event->setDefaultHandled() regardless
835         of whether frame->view()->advanceFocus() actually changed the focus.
836
837         Trivial fix is to preventDefault() only if advanceFocus() returns true.
838
839         * No test is possible because DumpRenderTree sets the WebView preference to
840         tab to links, and that preference cannot be changed dynamically after
841         the webview is initialized. Also, the "tab from last link" is not testable
842         because DumpRenderTree uses the WebView for the whole window, so tabs can't
843         shift focus out of the WebView regardless.
844
845         * dom/EventTargetNode.cpp:
846         (WebCore::EventTargetNode::defaultEventHandler):
847
848 2006-10-14  Nikolas Zimmermann  <zimmermann@kde.org>
849
850         Reviewed by Mitz.
851
852         Fix Qt/Linux build & some little fixes:
853
854         - Adapt to Maciej's FrameLoadRequest changes.
855         - Fix response handling - don't try to compare with '0' - for us it's a non-ptr QString object.
856         - Actually call setAllData from loader/loader.cpp (David Carson forgot that in his last commit)
857         - Fix CacheObjectExpiresTime/ResponseIsMultipart signature.
858
859         * loader/CachedCSSStyleSheet.cpp:
860         (WebCore::CachedCSSStyleSheet::checkNotify):
861         * loader/CachedResource.h:
862         (WebCore::CachedResource::CachedResource):
863         * loader/loader.cpp:
864         (WebCore::Loader::receivedAllData):
865         (WebCore::Loader::receivedResponse):
866         * platform/qt/BrowserExtensionQt.cpp:
867         (WebCore::BrowserExtensionQt::createNewWindow):
868         * platform/qt/BrowserExtensionQt.h:
869         * platform/qt/FrameQt.cpp:
870         (WebCore::FrameQt::submitForm):
871         (WebCore::FrameQt::urlSelected):
872         (WebCore::FrameQt::openURLRequest):
873         * platform/qt/FrameQt.h:
874         * platform/qt/GraphicsContextQt.cpp:
875         (WebCore::GraphicsContext::setURLForRect):
876         * platform/qt/TemporaryLinkStubs.cpp:
877         (WebCore::CacheObjectExpiresTime):
878         (WebCore::ResponseIsMultipart):
879         (WebCore::CachedResource::setResponse):
880         (WebCore::CachedResource::setAllData):
881
882 2006-10-14  David Carson  <dacarson@gmail.com>
883
884         Reviewed by Maciej.
885
886         Fix: http://bugs.webkit.org/show_bug.cgi?id=11257
887         Removed Mac platform dependance, changed WebCore functions to
888         use PlatformResponse/PlatformData rather than NSURLResponse/
889         NSData. 
890
891         * loader/CachedCSSStyleSheet.cpp:
892         (WebCore::CachedCSSStyleSheet::checkNotify):
893         * loader/CachedImage.cpp:
894         (WebCore::CachedImage::createImage):
895         * loader/CachedResource.cpp:
896         (WebCore::CachedResource::~CachedResource):
897         * loader/CachedResource.h:
898         (WebCore::CachedResource::CachedResource):
899         (WebCore::CachedResource::response):
900         (WebCore::CachedResource::allData):
901         * loader/LoaderFunctions.h:
902         * loader/loader.cpp:
903         (WebCore::Loader::receivedResponse):
904         * loader/mac/LoaderFunctionsMac.mm:
905         (WebCore::ResponseMIMEType):
906         (WebCore::ResponseIsMultipart):
907         (WebCore::CacheObjectExpiresTime):
908         (WebCore::CachedResource::setResponse):
909         (WebCore::CachedResource::setAllData):
910         * platform/qt/TemporaryLinkStubs.cpp:
911         (WebCore::CacheObjectExpiresTime):
912         (WebCore::ResponseIsMultipart):
913         (WebCore::ResponseMIMEType):
914         (WebCore::CachedResource::setResponse):
915         (WebCore::CachedResource::setAllData):
916         * platform/win/TemporaryLinkStubs.cpp:
917         (WebCore::CacheObjectExpiresTime):
918         (WebCore::ResponseIsMultipart):
919         (WebCore::ResponseMIMEType):
920         (WebCore::CachedResource::setResponse):
921         (WebCore::CachedResource::setAllData):
922
923 2006-10-14  Krzysztof Kowalczyk  <kkowalczyk@gmail.com>
924
925         Reviewed by Maciej.
926
927         Fix GDK build by defining FrameGdkClient() constructor as non-virtual.
928         Pure virtual classes require non-pure destructor, who knew.
929
930         Make CURL networking dependent on USE(CURL) instead of PLATFORM(GDK),
931         so that other platforms can also use CURL, if they wish.
932
933         Silence compiler warning about unused variable in SharedTimerLinux.cpp
934
935         * platform/ResourceLoaderInternal.h:
936         (WebCore::ResourceLoaderInternal::ResourceLoaderInternal):
937         * platform/gdk/FrameGdk.h:
938         (WebCore::FrameGdkClient::~FrameGdkClient):
939         * platform/gdk/ResourceLoaderManager.cpp:
940         (WebCore::ResourceLoaderManager::downloadTimerCallback):
941         * platform/gdk/SharedTimerLinux.cpp:
942         (WebCore::stopSharedTimer):
943
944 2006-10-13  Beth Dakin  <bdakin@apple.com>
945
946         Reviewed by Geoff.
947
948         Build fix from my last check-in. Make hasOutlineAnnotation() non-
949         inline so that we don't have to include Document.h in 
950         RenderObject.h
951         Doing so causes a build failure in WebKit, and it probably isn't a 
952         good idea anyway.
953
954         * rendering/RenderObject.cpp:
955         (WebCore::RenderObject::hasOutlineAnnotation):
956         * rendering/RenderObject.h:
957         (WebCore::RenderObject::hasOutline):
958
959 2006-10-13  Beth Dakin  <bdakin@apple.com>
960
961         Patch written mostly by Ken Kraisler, but also by me.
962
963         Reviewed by Hyatt.
964
965         Fix for http://bugs.webkit.org/show_bug.cgi?id=10216 and <rdar://
966         problem/3391162> PDF created by printing should have live 
967         hyperlinks
968
969         * platform/GraphicsContext.cpp:
970         (WebCore::GraphicsContext::focusRingBoundingRect):
971         * platform/GraphicsContext.h:
972         * platform/cairo/GraphicsContextCairo.cpp:
973         (WebCore::GraphicsContext::setURLForRect):
974         * platform/cg/GraphicsContextCG.cpp:
975         (WebCore::GraphicsContext::setURLForRect): Implement method to add 
976         URL link to PDF document.
977         * rendering/InlineFlowBox.cpp:
978         (WebCore::InlineFlowBox::paint): Ask hasOutline() instead of 
979         querying the outline width
980         * rendering/RenderBlock.cpp:
981         (WebCore::RenderBlock::paintObject): Same as above.
982         * rendering/RenderFlow.cpp:
983         (WebCore::RenderFlow::paintLines): Call the new paintOutline()
984         (WebCore::RenderFlow::paintOutline): Take care of focus ring and 
985         pdf url rects, and outline painting.
986         * rendering/RenderFlow.h:
987         * rendering/RenderObject.cpp:
988         (WebCore::RenderObject::addPDFURLRect): Declaration to apply a PDF 
989         link to a rectanglular region.
990         (WebCore::RenderObject::paintOutline): Take care of pdf rects as 
991         well as focus ring painting.
992         * rendering/RenderObject.h:
993         (WebCore::RenderObject::hasOutlineAnnotation): Returns true is the 
994         element is a link and we are printing.
995         (WebCore::RenderObject::hasOutline): Returns true is the style has 
996         an outline and hasOutlineAnnotation() is true.
997         * rendering/RenderStyle.h:
998         (WebCore::RenderStyle::hasOutline): Returns true if outlineWidth is 
999         greater than 0 and outlineStyle is greater than BHIDDEN.
1000
1001 2006-10-13  Justin Garcia  <justin.garcia@apple.com>
1002
1003         Reviewed by ggaren and harrison
1004         
1005         <rdar://problem/4744008>
1006         9A270: Mail crashes when I try to paste large items from Safari
1007
1008         * editing/ReplaceSelectionCommand.cpp:
1009         (WebCore::ReplaceSelectionCommand::removeRedundantStyles):
1010         Even though we put nodes in the hash map in pre-order, they don't necessary
1011         come out of the iterator that way.  If a node is a redundant style span
1012         and one of its pruned ancestors comes off the hash map after it, and that
1013         ancestor is a redundant style span or font tag, we will try to remove it
1014         even though it has already been removed and we'll crash.
1015         The test case added with the fix depends on our hash map implementation
1016         because it requires that a particular redundant style span come out of 
1017         the iterator before its parent. So, it may eventually not provide 
1018         coverage for the fix.
1019
1020 2006-10-13  Maciej Stachowiak  <mjs@apple.com>
1021
1022         Reviewed by Darin.
1023
1024         - split FrameLoadRequest off from ResourceRequest - it's a ResourceRequest plus frame name plus lockHistory bool
1025
1026         * WebCore.xcodeproj/project.pbxproj:
1027         * bindings/js/kjs_window.cpp:
1028         (KJS::createNewWindow):
1029         (KJS::WindowFunc::callAsFunction):
1030         * bridge/BrowserExtension.h:
1031         * bridge/mac/BrowserExtensionMac.h:
1032         * bridge/mac/BrowserExtensionMac.mm:
1033         (WebCore::BrowserExtensionMac::createNewWindow):
1034         * bridge/mac/FrameMac.h:
1035         * bridge/mac/FrameMac.mm:
1036         (WebCore::FrameMac::submitForm):
1037         (WebCore::FrameMac::openURLRequest):
1038         (WebCore::FrameMac::urlSelected):
1039         * bridge/win/BrowserExtensionWin.h:
1040         * page/Frame.cpp:
1041         (WebCore::Frame::changeLocation):
1042         (WebCore::Frame::urlSelected):
1043         (WebCore::Frame::requestFrame):
1044         (WebCore::Frame::submitForm):
1045         * page/Frame.h:
1046         * page/FrameLoadRequest.h: Added.
1047         (WebCore::FrameLoadRequest::FrameLoadRequest):
1048         (WebCore::FrameLoadRequest::lockHistory):
1049         (WebCore::FrameLoadRequest::setLockHistory):
1050         * page/ResourceRequest.h:
1051         (WebCore::ResourceRequest::ResourceRequest):
1052
1053 2006-10-13  John Sullivan  <sullivan@apple.com>
1054
1055         Reviewed by Maciej
1056
1057         * loader/mac/WebFrameLoader.mm:
1058         (-[WebFrameLoader loadDocumentLoader:]):
1059         Replace ASSERT(!policyDocumentLoader) with code that handles this case. This can
1060         happen when loading a page during a decidePolicyForNavigationAction callback.
1061
1062 2006-10-13  Dave Hyatt  <hyatt@apple.com>
1063
1064         Transparency layer work.
1065
1066         Reviewed by aroben
1067
1068         * platform/GraphicsContext.h:
1069         * platform/cg/GraphicsContextCG.cpp:
1070         (WebCore::GraphicsContext::beginTransparencyLayer):
1071         (WebCore::GraphicsContext::endTransparencyLayer):
1072         * platform/cg/GraphicsContextPlatformPrivate.h:
1073         (WebCore::GraphicsContextPlatformPrivate::beginTransparencyLayer):
1074         (WebCore::GraphicsContextPlatformPrivate::endTransparencyLayer):
1075
1076 2006-10-13  Rob Buis  <buis@kde.org>
1077
1078         Reviewed by Mitz.
1079
1080         http://bugs.webkit.org/show_bug.cgi?id=11217
1081         Cleanup svg coding style
1082
1083         Cleanup coding style in svg paint server classes.
1084
1085         * ksvg2/svg/SVGGradientElement.cpp:
1086         (WebCore::SVGGradientElement::SVGGradientElement):
1087         (WebCore::SVGGradientElement::parseMappedAttribute):
1088         (WebCore::SVGGradientElement::notifyAttributeChange):
1089         (WebCore::SVGGradientElement::canvasResource):
1090         (WebCore::SVGGradientElement::rebuildStops):
1091         * ksvg2/svg/SVGGradientElement.h:
1092         * ksvg2/svg/SVGLinearGradientElement.cpp:
1093         (WebCore::SVGLinearGradientElement::SVGLinearGradientElement):
1094         (WebCore::SVGLinearGradientElement::parseMappedAttribute):
1095         (WebCore::SVGLinearGradientElement::buildGradient):
1096         * ksvg2/svg/SVGLinearGradientElement.h:
1097         * ksvg2/svg/SVGPatternElement.cpp:
1098         (WebCore::SVGPatternElement::SVGPatternElement):
1099         (WebCore::SVGPatternElement::parseMappedAttribute):
1100         (WebCore::SVGPatternElement::fillAttributesFromReferencePattern):
1101         (WebCore::SVGPatternElement::drawPatternContentIntoTile):
1102         (WebCore::SVGPatternElement::notifyClientsToRepaint):
1103         (WebCore::SVGPatternElement::notifyAttributeChange):
1104         (WebCore::SVGPatternElement::canvasResource):
1105         (WebCore::SVGPatternElement::getCTM):
1106         * ksvg2/svg/SVGPatternElement.h:
1107         (WebCore::SVGPatternElement::rendererIsNeeded):
1108         * ksvg2/svg/SVGRadialGradientElement.cpp:
1109         (WebCore::SVGRadialGradientElement::SVGRadialGradientElement):
1110         (WebCore::SVGRadialGradientElement::parseMappedAttribute):
1111         (WebCore::SVGRadialGradientElement::buildGradient):
1112         * ksvg2/svg/SVGRadialGradientElement.h:
1113         * ksvg2/svg/SVGStopElement.cpp:
1114         (WebCore::SVGStopElement::SVGStopElement):
1115         (WebCore::SVGStopElement::parseMappedAttribute):
1116         * ksvg2/svg/SVGStopElement.h:
1117
1118 2006-10-13  Geoffrey Garen  <ggaren@apple.com>
1119
1120         Reviewed by Darin, John.
1121
1122         - Merged more frame and iframe code
1123         - Fixed a bug where iframes returned incorrect values for renderer-dependent 
1124         properties during javascript: loads because they didn't have renderers at 
1125         load time
1126         
1127         PLT insists this is a small performance win. Don't believe its lies.
1128
1129         * bindings/js/kjs_html.cpp:
1130         (KJS::JSHTMLElement::frameGetter): Renamed frameWidth and frameHeight to
1131         width and height, for consistency with the rest of the DOM.
1132         * dom/ContainerNode.cpp:
1133         (WebCore::ContainerNode::queuePostAttachCallback): Added a post-attach callback
1134         queue that gets drained after the render tree is fully constructed. Currently,
1135         this is only used for frame loading.
1136         (WebCore::ContainerNode::attach):
1137         * dom/ContainerNode.h:
1138         * html/HTMLFrameElement.cpp:
1139         (WebCore::HTMLFrameElement::insertedIntoDocument): Removed frame loading from
1140         attach() because loading iframes during attach() causes a crash. 
1141         Moved frame loading logic into insertedIntoDocument(). That's a more 
1142         logical place for it because  document insertion is what 
1143         triggers frame loading. Made frame loading a post-attach callback, instead
1144         of an immediate action, to fix the incorrect values bug.
1145         (WebCore::HTMLFrameElement::attach): Added setWidget call that used to be
1146         in HTMLIFrameElement::attach. IFRAME requires this call. FRAME will soon 
1147         require this call, once I remove the call from WebKit.
1148         (WebCore::HTMLFrameElement::setLocation):
1149         (WebCore::HTMLFrameElement::width):
1150         (WebCore::HTMLFrameElement::height):
1151         * html/HTMLFrameElement.h: Made openURL non-virtual to avoid the unnecessary
1152         killing of puppies.
1153         * html/HTMLIFrameElement.cpp: Merged code into HTMLFrameElement
1154         (WebCore::HTMLIFrameElement::rendererIsNeeded):
1155         (WebCore::HTMLIFrameElement::createRenderer):
1156         (WebCore::HTMLIFrameElement::insertedIntoDocument):
1157         (WebCore::HTMLIFrameElement::removedFromDocument):
1158         (WebCore::HTMLIFrameElement::attach):
1159         * page/FrameView.h: Removed unused method.
1160
1161 2006-10-13  David Harrison  <harrison@apple.com>
1162
1163         Reviewed by Justin.
1164
1165         <rdar://problem/4746860> Mail crash in WebCore::CSSMutableStyleDeclaration::merge(WebCore::CSSMutableStyleDeclaration*, bool)
1166
1167         Tests added or changed:
1168         * editing/style/style-boundary-005.html: Added. Matches steps from bug.
1169         * editing/execCommand/hilitecolor-expected.txt: Updated (no empty Apple style spans).
1170         * editing/style/remove-underline-across-paragraph-in-bold-expected.txt: Updated (no empty Apple style spans).
1171         * editing/style/remove-underline-in-bold-expected.txt: Updated (no empty Apple style spans).
1172         * editing/style/typing-style-003-expected.txt: Updated (no empty Apple style spans).
1173
1174         * dom/Text.cpp:
1175         (WebCore::Text::splitText):
1176         Comment changes.
1177         
1178         * editing/ApplyStyleCommand.cpp:
1179         (WebCore::isUnstyledStyleSpan):
1180         Renamed from isEmptyStyleSpan.
1181         
1182         (WebCore::ApplyStyleCommand::applyRelativeFontStyleChange):
1183         Rename emptySpans local to unstyledSpans.
1184         
1185         (WebCore::dummySpanAncestorForNode):
1186         New. To locate Apple style span created when splitting a text node.
1187         
1188         (WebCore::ApplyStyleCommand::cleanupUnstyledAppleStyleSpans):
1189         Renamed from cleanUpEmptyStyleSpans. Algorithm changed to scan children
1190         of dummy span's parents, rather than traversing up from start and
1191         end locations. Old algorithm would miss empty spans in the bug case.
1192         
1193         (WebCore::ApplyStyleCommand::applyInlineStyle):
1194         Use dummySpanAncestorForNode() and cleanupUnstyledAppleStyleSpans().
1195         
1196         (WebCore::ApplyStyleCommand::removeCSSStyle):
1197         Renamed isEmptyStyleSpan() to isUnstyledStyleSpan().
1198         
1199         (WebCore::ApplyStyleCommand::mergeStartWithPreviousIfIdentical):
1200         Comment changes.
1201         
1202         * editing/ApplyStyleCommand.h:
1203         Renamed cleanUpEmptyStyleSpans() to cleanupUnstyledAppleStyleSpans().
1204           
1205         * editing/ReplaceSelectionCommand.cpp:
1206         (WebCore::ReplaceSelectionCommand::removeRedundantStyles):
1207         Allow for Apple style span to be unstyled, because old email may have this in the DOM.
1208         Use !node->hasChildNodes() instead of !node->firstChild().
1209         
1210         * editing/SplitTextNodeCommand.cpp:
1211         (WebCore::SplitTextNodeCommand::doApply):
1212         Comment changes.
1213         
1214         * rendering/RenderTreeAsText.cpp:
1215         (WebCore::isEmptyOrUnstyledAppleStyleSpan):
1216         (WebCore::operator<<):
1217         Flag empty or unstyled AppleStyleSpa nbecause we never want to leave them in the DOM
1218
1219 2006-10-13  Nikolas Zimmermann  <zimmermann@kde.org>
1220
1221         Reviewed by Eric.
1222
1223         Fix Qt/Linux build after Adele's popup menu changes.
1224
1225         * CMakeLists.txt:
1226         * platform/qt/FileChooserQt.cpp:
1227         (WebCore::FileChooser::disconnectUploadControl):
1228         * platform/qt/PopupMenuQt.cpp: Added.
1229         (WebCore::PopupMenu::PopupMenu):
1230         (WebCore::PopupMenu::~PopupMenu):
1231         (WebCore::PopupMenu::clear):
1232         (WebCore::PopupMenu::populate):
1233         (WebCore::PopupMenu::show):
1234         (WebCore::PopupMenu::hide):
1235         (WebCore::PopupMenu::addSeparator):
1236         (WebCore::PopupMenu::addGroupLabel):
1237         (WebCore::PopupMenu::addOption):
1238         * platform/qt/RenderPopupMenuQt.cpp: Removed.
1239         * platform/qt/RenderPopupMenuQt.h: Removed.
1240         * platform/qt/RenderThemeQt.cpp:
1241
1242 2006-10-13  Kevin McCullough  <KMcCullough@apple.com>
1243
1244         Reviewed by Darin.
1245
1246         fixed build failure 
1247
1248         * WebCore.xcodeproj/project.pbxproj:
1249         * loader/mac/WebFrameLoader.mm:
1250
1251 2006-10-13  Darin Adler  <darin@apple.com>
1252
1253         Reviewed by Adele.
1254
1255         - converted WebFormState from Objective-C to C++
1256
1257         * WebCore.exp: Added a new symbol, changed one symbol from C to C++.
1258
1259         * WebCore.xcodeproj/project.pbxproj: Made lots of headers "private" instead of "project".
1260         Added UChar.h and FrameLoaderTypes.h.
1261
1262         * loader/FrameLoaderTypes.h: Added. Has enums from WebFrameLoader.h.
1263
1264         * loader/mac/WebFormState.h: Converted class to C++.
1265         * loader/mac/WebFormState.mm: Ditto.
1266
1267         * loader/mac/WebFrameLoader.h:
1268         * loader/mac/WebFrameLoader.mm:
1269         (-[WebFrameLoader loadURL:referrer:loadType:target:triggeringEvent:form:formValues:]):
1270         (-[WebFrameLoader continueFragmentScrollAfterNavigationPolicy:formState:]):
1271         (-[WebFrameLoader _loadRequest:triggeringAction:loadType:formState:]):
1272         (-[WebFrameLoader invalidatePendingPolicyDecisionCallingDefaultAction:]):
1273         (-[WebFrameLoader checkNewWindowPolicyForRequest:action:frameName:formState:andCall:withSelector:]):
1274         (-[WebFrameLoader continueAfterNewWindowPolicy:]):
1275         (-[WebFrameLoader checkNavigationPolicyForRequest:documentLoader:formState:andCall:withSelector:]):
1276         (-[WebFrameLoader continueAfterNavigationPolicy:]):
1277         (-[WebFrameLoader continueLoadRequestAfterNavigationPolicy:formState:]):
1278         (-[WebFrameLoader loadDocumentLoader:withLoadType:formState:]):
1279         (-[WebFrameLoader continueLoadRequestAfterNewWindowPolicy:frameName:formState:]):
1280         (-[WebFrameLoader postWithURL:referrer:target:data:contentType:triggeringEvent:form:formValues:]):
1281         Changed Objective-C WebFormState uses to C++ WebCore::FormState.
1282
1283 2006-10-13  Adele Peterson  <adele@apple.com>
1284
1285         Reviewed by Maciej.
1286
1287         - Fix for <rdar://problem/4768591> REGRESSION: List box selection color should just be a darker version of regular selection color
1288
1289         * rendering/RenderListBox.cpp:
1290         (WebCore::RenderListBox::paintItemForeground):
1291         * rendering/RenderTheme.cpp:
1292         (WebCore::RenderTheme::activeListBoxSelectionBackgroundColor):
1293         (WebCore::RenderTheme::activeListBoxSelectionForegroundColor):
1294         (WebCore::RenderTheme::inactiveListBoxSelectionBackgroundColor):
1295         (WebCore::RenderTheme::inactiveListBoxSelectionForegroundColor):
1296         * rendering/RenderThemeMac.h:
1297         * rendering/RenderThemeMac.mm: (WebCore::RenderThemeMac::activeListBoxSelectionBackgroundColor):
1298
1299 2006-10-13  Rob Buis  <buis@kde.org>
1300
1301         Reviewed by Mitz.
1302
1303         http://bugs.webkit.org/show_bug.cgi?id=11217
1304         Cleanup svg coding style
1305
1306         Cleanup coding style in svg structure classes.
1307
1308         * ksvg2/svg/SVGDefsElement.cpp:
1309         (WebCore::SVGDefsElement::SVGDefsElement):
1310         * ksvg2/svg/SVGDefsElement.h:
1311         * ksvg2/svg/SVGDescElement.cpp:
1312         (WebCore::SVGDescElement::SVGDescElement):
1313         * ksvg2/svg/SVGDescElement.h:
1314         * ksvg2/svg/SVGDocument.cpp:
1315         * ksvg2/svg/SVGDocument.h:
1316         * ksvg2/svg/SVGElementInstance.cpp:
1317         (WebCore::SVGElementInstance::SVGElementInstance):
1318         (WebCore::SVGElementInstance::correspondingElement):
1319         (WebCore::SVGElementInstance::correspondingUseElement):
1320         (WebCore::SVGElementInstance::parentNode):
1321         (WebCore::SVGElementInstance::childNodes):
1322         (WebCore::SVGElementInstance::previousSibling):
1323         (WebCore::SVGElementInstance::nextSibling):
1324         (WebCore::SVGElementInstance::firstChild):
1325         (WebCore::SVGElementInstance::lastChild):
1326         * ksvg2/svg/SVGElementInstance.h:
1327         * ksvg2/svg/SVGElementInstanceList.cpp:
1328         * ksvg2/svg/SVGElementInstanceList.h:
1329         * ksvg2/svg/SVGGElement.cpp:
1330         (WebCore::SVGGElement::SVGGElement):
1331         (WebCore::SVGGElement::parseMappedAttribute):
1332         (WebCore::SVGDummyElement::SVGDummyElement):
1333         * ksvg2/svg/SVGGElement.h:
1334         (WebCore::SVGGElement::rendererIsNeeded):
1335         * ksvg2/svg/SVGImageElement.cpp:
1336         (WebCore::SVGImageElement::createRenderer):
1337         * ksvg2/svg/SVGImageElement.h:
1338         * ksvg2/svg/SVGSVGElement.cpp:
1339         (WebCore::SVGSVGElement::SVGSVGElement):
1340         (WebCore::SVGSVGElement::pixelUnitToMillimeterX):
1341         (WebCore::SVGSVGElement::pixelUnitToMillimeterY):
1342         (WebCore::SVGSVGElement::currentScale):
1343         (WebCore::SVGSVGElement::setCurrentScale):
1344         (WebCore::SVGSVGElement::currentTranslate):
1345         (WebCore::SVGSVGElement::parseMappedAttribute):
1346         (WebCore::SVGSVGElement::suspendRedraw):
1347         (WebCore::SVGSVGElement::unsuspendRedraw):
1348         (WebCore::SVGSVGElement::unsuspendRedrawAll):
1349         (WebCore::SVGSVGElement::forceRedraw):
1350         (WebCore::SVGSVGElement::getIntersectionList):
1351         (WebCore::SVGSVGElement::getEnclosureList):
1352         (WebCore::SVGSVGElement::checkIntersection):
1353         (WebCore::SVGSVGElement::checkEnclosure):
1354         (WebCore::SVGSVGElement::deselectAll):
1355         (WebCore::SVGSVGElement::createSVGLength):
1356         (WebCore::SVGSVGElement::createSVGAngle):
1357         (WebCore::SVGSVGElement::createSVGMatrix):
1358         (WebCore::SVGSVGElement::createSVGTransform):
1359         (WebCore::SVGSVGElement::createSVGTransformFromMatrix):
1360         (WebCore::SVGSVGElement::getCTM):
1361         (WebCore::SVGSVGElement::getScreenCTM):
1362         (WebCore::SVGSVGElement::setCurrentTime):
1363         * ksvg2/svg/SVGSVGElement.h:
1364         (WebCore::SVGSVGElement::rendererIsNeeded):
1365         * ksvg2/svg/SVGSwitchElement.cpp:
1366         (WebCore::SVGSwitchElement::SVGSwitchElement):
1367         (WebCore::SVGSwitchElement::childShouldCreateRenderer):
1368         * ksvg2/svg/SVGSwitchElement.h:
1369         (WebCore::SVGSwitchElement::rendererIsNeeded):
1370         * ksvg2/svg/SVGSymbolElement.cpp:
1371         (WebCore::SVGSymbolElement::SVGSymbolElement):
1372         (WebCore::SVGSymbolElement::parseMappedAttribute):
1373         * ksvg2/svg/SVGSymbolElement.h:
1374         (WebCore::SVGSymbolElement::shouldAttachChild):
1375         * ksvg2/svg/SVGTitleElement.cpp:
1376         (WebCore::SVGTitleElement::SVGTitleElement):
1377         * ksvg2/svg/SVGTitleElement.h:
1378         * ksvg2/svg/SVGUseElement.cpp:
1379         (WebCore::SVGUseElement::parseMappedAttribute):
1380         (WebCore::SVGUseElement::closeRenderer):
1381         * ksvg2/svg/SVGUseElement.h:
1382         (WebCore::SVGUseElement::rendererIsNeeded):
1383
1384 2006-10-12  Adele Peterson  <adele@apple.com>
1385
1386         Reviewed by Anders.
1387
1388         - Fix for http://bugs.webkit.org/show_bug.cgi?id=11172
1389           REGRESSION (NativeListBox): OPTION text paints over the edge of the select element at http://jobs.apple.com/
1390         
1391          Test: fast/forms/listbox-width-change.html
1392
1393         * rendering/RenderListBox.cpp: (WebCore::RenderListBox::updateFromElement):
1394           When the options change, call setNeedsLayoutAndMinMaxRecalc.
1395
1396 2006-10-12  Maciej Stachowiak  <mjs@apple.com>
1397
1398         Reviewed by Oliver.
1399
1400         - moved a bunch of WebFrameBridge code down to WebCoreFrameBridge, now that it no longer has any WebKit dependencies
1401
1402         * WebCore.xcodeproj/project.pbxproj:
1403         * bridge/mac/WebCoreFrameBridge.h:
1404         * bridge/mac/WebCoreFrameBridge.mm:
1405         (stringByCollapsingNonPrintingCharacters):
1406         (-[WebCoreFrameBridge setTitle:]):
1407         (-[WebCoreFrameBridge didFirstLayout]):
1408         (-[WebCoreFrameBridge notifyIconChanged:]):
1409         (-[WebCoreFrameBridge originalRequestURL]):
1410         (-[WebCoreFrameBridge isLoadTypeReload]):
1411         (-[WebCoreFrameBridge frameDetached]):
1412         (-[WebCoreFrameBridge tokenizerProcessedData]):
1413         (-[WebCoreFrameBridge receivedData:textEncodingName:]):
1414         (-[WebCoreFrameBridge startLoadingResource:withMethod:URL:customHeaders:]):
1415         (-[WebCoreFrameBridge objectLoadedFromCacheWithURL:response:data:]):
1416         (-[WebCoreFrameBridge startLoadingResource:withMethod:URL:customHeaders:postData:]):
1417         (-[WebCoreFrameBridge reportClientRedirectToURL:delay:fireDate:lockHistory:isJavaScriptFormAction:]):
1418         (-[WebCoreFrameBridge reportClientRedirectCancelled:]):
1419         (-[WebCoreFrameBridge loadURL:referrer:reload:userGesture:target:triggeringEvent:form:formValues:]):
1420         (-[WebCoreFrameBridge postWithURL:referrer:target:data:contentType:triggeringEvent:form:formValues:]):
1421         (-[WebCoreFrameBridge syncLoadResourceWithMethod:URL:customHeaders:postData:finalURL:responseHeaders:statusCode:]):
1422         (-[WebCoreFrameBridge incomingReferrer]):
1423         (-[WebCoreFrameBridge isReloading]):
1424         (-[WebCoreFrameBridge handledOnloadEvents]):
1425         (-[WebCoreFrameBridge mainResourceURLResponse]):
1426         (-[WebCoreFrameBridge loadEmptyDocumentSynchronously]):
1427         * loader/mac/LoaderNSURLExtras.h:
1428         * loader/mac/LoaderNSURLRequestExtras.h: Added.
1429         * loader/mac/LoaderNSURLRequestExtras.m: Added.
1430         (isConditionalRequest):
1431         (setHTTPReferrer):
1432         * loader/mac/WebFrameLoader.mm:
1433         * loader/mac/WebSubresourceLoader.mm:
1434
1435 2006-10-12  Adele Peterson  <adele@apple.com>
1436
1437         RS by Geoff.
1438
1439         Renamed menuListIsDetaching to disconnectMenuList, 
1440         uploadControlDetaching to disconnectUploadControl, and fileChooserDetachingSoon to disconnectFileChooser.  
1441         These names match similar methods in WebCore a little better.
1442
1443         * platform/FileChooser.h:
1444         * platform/PopupMenu.h: (WebCore::PopupMenu::disconnectMenuList):
1445         * platform/mac/FileChooserMac.mm: (-[OpenPanelController disconnectFileChooser]):
1446         (WebCore::FileChooser::disconnectUploadControl):
1447         * platform/win/TemporaryLinkStubs.cpp: (FileChooser::disconnectUploadControl):
1448         * rendering/RenderFileUploadControl.cpp: (WebCore::RenderFileUploadControl::~RenderFileUploadControl):
1449         * rendering/RenderMenuList.cpp: (WebCore::RenderMenuList::~RenderMenuList):
1450
1451 2006-10-12  Adele Peterson  <adele@apple.com>
1452
1453         Reviewed by Maciej.
1454
1455         WebCore part of fix for <rdar://problem/4450613> need a means to attach user data to any menu that is popuped up in HTML
1456
1457         Added private delegate method for clients that want access to a PopupMenu's NSMenu.
1458
1459         * bridge/mac/FrameMac.h:
1460         * bridge/mac/FrameMac.mm: (WebCore::FrameMac::willPopupMenu):
1461         * bridge/mac/WebCoreFrameBridge.h:
1462
1463         * platform/mac/PopupMenuMac.mm: (WebCore::PopupMenu::show): Calls willPopupMenu with the NSMenu about to be popped up.
1464
1465 2006-10-12  Adele Peterson  <adele@apple.com>
1466
1467         Reviewed by Alice.
1468
1469         - Fix for <rdar://problem/4707372> 
1470           After timers fix, crash in -[NSMenu performActionForItemAtIndex:] after moving/detroying active popup menu
1471
1472         * platform/PopupMenu.h: (WebCore::PopupMenu::menuListIsDetaching): Added. Zeros out the pointer to the menu list.
1473         * rendering/RenderMenuList.cpp: (WebCore::RenderMenuList::~RenderMenuList): Calls menuListIsDetaching.
1474         * platform/mac/PopupMenuMac.mm: (WebCore::PopupMenu::show): Added a RefPtr to protect the PopupMenu while the NSMenu is up,
1475           in case the RenderMenuList goes away.  Also, checks the pointer to the menu list immediately afterwards.
1476
1477 2006-10-12  Nikolas Zimmermann  <zimmermann@kde.org>
1478
1479         Reviewed by Maciej.
1480
1481         Trying to fix "DRT hangs on certain testcases" like fast/dom/Document/document-reopen.html
1482         document.open(); document.write(..); and NO document.close(). On the Qt platform this
1483         leaves a HTMLDocument which is still in parsing mode (parsing() always returns true).
1484         DRT waits forever, but m_frame->isComplete() is never true due the parsing mode problem.
1485
1486         Hmpf, this took me nine hours to debug today.
1487         Result: Couldn't find the real fix, going for a workaround for now.
1488         
1489         540 minutes, 1 line of code changed after all -> 0,0019 lines per minute.
1490
1491         * platform/qt/FrameQt.cpp:
1492         (WebCore::FrameQt::handledOnloadEvents): Call endIfNotLoading() manually.
1493         * platform/qt/FrameQtClient.cpp:
1494         (WebCore::FrameQtClientDefault::receivedData): Use write() again instead of addData().
1495
1496 2006-10-12  Adam Roben  <aroben@apple.com>
1497
1498         Reviewed by Adele.
1499
1500         Move popup menu code out of rendering/ and into platform/.
1501         RenderPopupMenu becomes PopupMenu, the
1502         RenderPopupMenuMac/RenderPopupMenuWin subclasses and all the associated
1503         virtual methods go away, RenderTheme gets to stop worrying about popup
1504         menus, PopupMenu becomes ref-counted, and everyone becomes happy.
1505
1506         * WebCore.vcproj/WebCore/WebCore.vcproj: Move files within project.
1507         * WebCore.xcodeproj/project.pbxproj: Ditto.
1508         * html/HTMLSelectElement.cpp: Remove unnecessary #include.
1509         * platform/PopupMenu.cpp: Moved from rendering/RenderPopupMenu.cpp.
1510         Also renamed showPopup()/hidePopup() to show()/hide() to disambiguate
1511         from RenderMenuList::showPopup/hidePopup.
1512         (WebCore::PopupMenu::create): New static creation method to hand back a
1513         PassRefPtr<PopupMenu>.
1514         (WebCore::PopupMenu::addItems): This platform-independent method should
1515         be called by PopupMenu::populate when the platform-specific
1516         implementation is ready to receive the menu items. Fixed an ASSERT
1517         while I was at it.
1518         * platform/PopupMenu.h: Moved from rendering/RenderPopupMenu.h. No more
1519         need for virtual methods.
1520         (WebCore::PopupMenu::wasClicked):
1521         (WebCore::PopupMenu::setWasClicked):
1522         (WebCore::PopupMenu::popupHandle):
1523         * platform/mac/PopupMenuMac.mm: Moved from
1524         rendering/RenderPopupMenuMac.mm. Much renaming ensues.
1525         (WebCore::PopupMenu::PopupMenu):
1526         (WebCore::PopupMenu::~PopupMenu):
1527         (WebCore::PopupMenu::clear):
1528         (WebCore::PopupMenu::populate):
1529         (WebCore::PopupMenu::show):
1530         (WebCore::PopupMenu::hide):
1531         (WebCore::PopupMenu::addSeparator):
1532         (WebCore::PopupMenu::addGroupLabel): Since we don't have our own
1533         RenderStyle anymore, just pick up the style from our RenderMenuList.
1534         (WebCore::PopupMenu::addOption): Ditto.
1535         * platform/win/TemporaryLinkStubs.cpp: Rename-fest.
1536         (PopupMenu::PopupMenu):
1537         (PopupMenu::~PopupMenu):
1538         (PopupMenu::clear):
1539         (PopupMenu::populate):
1540         (PopupMenu::show):
1541         (PopupMenu::hide):
1542         (PopupMenu::addSeparator):
1543         (PopupMenu::addGroupLabel):
1544         (PopupMenu::addOption):
1545         * rendering/RenderMenuList.cpp:
1546         (WebCore::RenderMenuList::~RenderMenuList):
1547         (WebCore::RenderMenuList::showPopup): Use nice new simple
1548         PopupMenu::create to make the popup.
1549         (WebCore::RenderMenuList::hidePopup):
1550         * rendering/RenderMenuList.h: Hold a RefPtr<PopupMenu> instead of a
1551         RenderPopupMenu*.
1552         (WebCore::RenderMenuList::popup):
1553         * rendering/RenderPopupMenu.cpp: Removed.
1554         * rendering/RenderPopupMenu.h: Removed.
1555         * rendering/RenderPopupMenuMac.h: Removed.
1556         * rendering/RenderPopupMenuMac.mm: Removed.
1557         * rendering/RenderPopupMenuWin.h: Removed.
1558         * rendering/RenderTheme.cpp: Get rid of createPopupMenu() method.
1559         * rendering/RenderTheme.h: Ditto.
1560         * rendering/RenderThemeMac.h: Ditto.
1561         * rendering/RenderThemeMac.mm: Ditto.
1562         * rendering/RenderThemeWin.cpp: Ditto.
1563         * rendering/RenderThemeWin.h: Ditto.
1564
1565 2006-10-12  Adele Peterson  <adele@apple.com>
1566
1567         Reviewed by Dave Harrison.
1568
1569         - Fixed <rdar://problem/4650813> REGRESSION: typing in a textarea in Safari is extremely slow (sample shows focus ring drawing)
1570
1571         * rendering/RenderObject.cpp: (WebCore::RenderObject::markContainingBlocksForLayout):
1572         Make subtree layouts work for textareas as well as text fields.
1573
1574 2006-10-12  Nikolas Zimmermann  <zimmermann@kde.org>
1575
1576         Reviewed by MacDome.
1577
1578         Finally found a way to remove our begin() trickery in FrameQt.
1579         The (probably misnamed) Frame::setEncoding() function automatically
1580         calls Frame::receivedFirstData() which calls being on the working
1581         url, which has been passed to didOpenUrl(). Took me some hours
1582         to figure out that the missing charset logic, forced us to do hacks.
1583
1584         * platform/ResourceLoader.h:
1585         * platform/ResourceLoaderInternal.h:
1586         * platform/qt/FrameQt.cpp:
1587         (WebCore::FrameQt::tokenizerProcessedData):
1588         * platform/qt/FrameQt.h:
1589         * platform/qt/FrameQtClient.cpp:
1590         (WebCore::FrameQtClientDefault::FrameQtClientDefault):
1591         (WebCore::FrameQtClientDefault::openURL):
1592         (WebCore::FrameQtClientDefault::submitForm):
1593         (WebCore::FrameQtClientDefault::receivedData):
1594         (WebCore::FrameQtClientDefault::receivedAllData):
1595         * platform/qt/FrameQtClient.h:
1596         * platform/qt/ResourceLoaderManager.cpp:
1597         (WebCore::ResourceLoaderManager::slotData):
1598         (WebCore::ResourceLoaderManager::slotMimetype):
1599         (WebCore::ResourceLoaderManager::slotResult):
1600         (WebCore::ResourceLoaderManager::remove):
1601         * platform/qt/ResourceLoaderQt.cpp:
1602         (WebCore::ResourceLoader::retrieveCharset):
1603         (WebCore::ResourceLoader::extractCharsetFromHeaders):
1604
1605 2006-10-12  Adam Roben  <aroben@apple.com>
1606
1607         Reviewed by Hyatt.
1608
1609         Bandaid-ing a null-dereference crash until a real fix is made.
1610
1611         * page/FrameView.cpp:
1612         (WebCore::FrameView::windowClipRect):
1613
1614 2006-10-12  Rob Buis  <buis@kde.org>
1615
1616         Reviewed by Mitz.
1617
1618         http://bugs.webkit.org/show_bug.cgi?id=11217
1619         Cleanup svg coding style
1620
1621         Cleanup coding style in svg text classes.
1622
1623         * ksvg2/svg/SVGTRefElement.cpp:
1624         (WebCore::SVGTRefElement::SVGTRefElement):
1625         (WebCore::SVGTRefElement::updateReferencedText):
1626         (WebCore::SVGTRefElement::parseMappedAttribute):
1627         (WebCore::SVGTRefElement::childShouldCreateRenderer):
1628         (WebCore::SVGTRefElement::createRenderer):
1629         * ksvg2/svg/SVGTRefElement.h:
1630         (WebCore::SVGTRefElement::rendererIsNeeded):
1631         * ksvg2/svg/SVGTSpanElement.cpp:
1632         (WebCore::SVGTSpanElement::SVGTSpanElement):
1633         (WebCore::SVGTSpanElement::childShouldCreateRenderer):
1634         (WebCore::SVGTSpanElement::createRenderer):
1635         * ksvg2/svg/SVGTSpanElement.h:
1636         (WebCore::SVGTSpanElement::rendererIsNeeded):
1637         * ksvg2/svg/SVGTextContentElement.cpp:
1638         (WebCore::SVGTextContentElement::SVGTextContentElement):
1639         (WebCore::SVGTextContentElement::parseMappedAttribute):
1640         * ksvg2/svg/SVGTextContentElement.h:
1641         * ksvg2/svg/SVGTextElement.cpp:
1642         (WebCore::SVGTextElement::SVGTextElement):
1643         (WebCore::SVGTextElement::localMatrix):
1644         (WebCore::SVGTextElement::parseMappedAttribute):
1645         (WebCore::SVGTextElement::updateLocalTransform):
1646         (WebCore::SVGTextElement::nearestViewportElement):
1647         (WebCore::SVGTextElement::farthestViewportElement):
1648         (WebCore::SVGTextElement::getScreenCTM):
1649         (WebCore::SVGTextElement::getCTM):
1650         (WebCore::SVGTextElement::createRenderer):
1651         (WebCore::SVGTextElement::childShouldCreateRenderer):
1652         * ksvg2/svg/SVGTextElement.h:
1653         (WebCore::SVGTextElement::getTransformToElement):
1654         (WebCore::SVGTextElement::rendererIsNeeded):
1655         * ksvg2/svg/SVGTextPositioningElement.cpp:
1656         (WebCore::SVGTextPositioningElement::SVGTextPositioningElement):
1657         (WebCore::SVGTextPositioningElement::parseMappedAttribute):
1658         * ksvg2/svg/SVGTextPositioningElement.h:
1659
1660 2006-10-12  Nikolas Zimmermann  <zimmermann@kde.org>
1661
1662         Reviewed by Maciej.
1663
1664         Specialization of alert() for DumpRenderTree - just log the output, don't show any message box.
1665
1666         * platform/qt/FrameQt.cpp:
1667         (WebCore::FrameQt::runJavaScriptAlert): Move runJavaScriptAlert functionality to FrameQtClientDefault.
1668         * platform/qt/FrameQtClient.cpp:
1669         (WebCore::FrameQtClientDefault::runJavaScriptAlert):
1670         * platform/qt/FrameQtClient.h:
1671
1672 2006-10-12  Maciej Stachowiak  <mjs@apple.com>
1673
1674         Reviewed by Eric.
1675
1676         - move m_responseMIMEType out of ResourceRequest, where it doesn't belong
1677
1678         * page/FramePrivate.h: Add m_responseMIMEType
1679         * page/ResourceRequest.h: Remove m_responseMIMEType
1680         * page/Frame.cpp:
1681         (WebCore::Frame::setResponseMIMEType): added
1682         (WebCore::Frame::responseMIMEType): added
1683         (WebCore::Frame::begin): get MIME type from the right place
1684         (WebCore::Frame::write): ditto
1685         * page/Frame.h:
1686         * bindings/js/kjs_window.cpp:
1687         (KJS::createNewWindow): updated to use new Frame methods
1688         (KJS::WindowFunc::callAsFunction): ditto
1689         * bridge/mac/WebCoreFrameBridge.mm:
1690         (-[WebCoreFrameBridge openURL:reload:contentType:refresh:lastModified:pageCache:]): ditto
1691         (-[WebCoreFrameBridge canProvideDocumentSource]): ditto
1692         * loader/PluginDocument.cpp:
1693         (WebCore::PluginTokenizer::createDocumentStructure): ditto
1694
1695 2006-10-12  Maciej Stachowiak  <mjs@apple.com>
1696
1697         Reviewed by Eric.
1698         
1699         <rdar://problem/4774321> REGRESSION: "Can't find the server" error page contains unstyled text and missing image
1700
1701         We really need some way to test loadHTMLString since it keeps breaking!
1702         
1703         * loader/mac/WebFrameLoader.mm:
1704         (-[WebFrameLoader commitProvisionalLoad:]): Set stuff up on the proper data source.
1705
1706 2006-10-12  Nikolas Zimmermann  <zimmermann@kde.org>
1707
1708         Reviewed by Eric.
1709
1710         Fix Qt/Linux build.
1711
1712         * CMakeLists.txt:
1713         * platform/qt/FileChooserQt.cpp:
1714         (WebCore::FileChooser::create):
1715
1716 2006-10-12  Krzysztof Kowalczyk  <kkowalczyk@gmail.com>
1717
1718         Reviewed by Maciej.
1719
1720         Update Gdk\Linux build for recent changes, based on Qt code
1721
1722         * platform/gdk/FrameGdk.cpp:
1723         (WebCore::FrameGdkClientDefault::FrameGdkClientDefault):
1724         (WebCore::FrameGdkClientDefault::~FrameGdkClientDefault):
1725         (WebCore::FrameGdkClientDefault::setFrame):
1726         (WebCore::FrameGdkClientDefault::openURL):
1727         (WebCore::FrameGdkClientDefault::submitForm):
1728         (WebCore::FrameGdkClientDefault::receivedResponse):
1729         (WebCore::FrameGdkClientDefault::receivedData):
1730         (WebCore::FrameGdkClientDefault::receivedAllData):
1731         (WebCore::FrameGdk::FrameGdk):
1732         (WebCore::FrameGdk::openURL):
1733         (WebCore::FrameGdk::submitForm):
1734         (WebCore::FrameGdk::urlSelected):
1735         * platform/gdk/FrameGdk.h:
1736         * platform/gdk/TemporaryLinkStubs.cpp:
1737         (FrameGdk::createJavaAppletWidget):
1738         (FileChooser::create):
1739
1740 2006-10-12  Dave Hyatt  <hyatt@apple.com>
1741
1742         Patch to add more clipping retrieval functionality for widgets.
1743        
1744         Reviewed by mjs
1745
1746         * page/Frame.h:
1747         Remove windowResizerRect.  This is in the wrong place.
1748         
1749         * page/FrameView.cpp:
1750         (WebCore::FrameView::windowClipRect):
1751         (WebCore::FrameView::windowClipRectForLayer):
1752         Break out windowClipRect into helper functions that can be called separately (to make
1753         it easier for scrollbars in overflow sections and list boxes to get to an enclosing
1754         layer and get the right clip.
1755         
1756         * page/FrameView.h:
1757         Add the new windowClipRect helper methods.
1758         
1759         * platform/ScrollBar.h:
1760         Add a new interface to ScrollbarClient so that scrollbars can hand back proper
1761         clip rects for themselves depending on how they are used.
1762         
1763         * platform/ScrollView.h:
1764         Stub out methods for talking to a double buffer backing store on Win32.
1765         
1766         * platform/Widget.h:
1767         Add the ability to query for invalidation suppression.
1768         
1769         * rendering/RenderLayer.cpp:
1770         (WebCore::RenderLayer::windowClipRect):
1771         (WebCore::RenderLayer::paintOverflowControls):
1772         (WebCore::RenderLayer::calculateRects):
1773         (WebCore::RenderLayer::childrenClipRect):
1774         (WebCore::RenderLayer::selfClipRect):
1775         * rendering/RenderLayer.h:
1776         Enhance layers so that they can return either their foreground or background
1777         document clip rects.  Make sure a layer scrollbar can return a proper clip.
1778         
1779         * rendering/RenderListBox.cpp:
1780         (WebCore::RenderListBox::windowClipRect):
1781         * rendering/RenderListBox.h:
1782         Make sure a list box scrollbar can return a proper clip.
1783         
1784         * rendering/RenderObject.cpp:
1785         (WebCore::RenderObject::enclosingLayer):
1786         * rendering/RenderObject.h:
1787         Make enclosingLayer const.
1788         
1789 2006-10-11  Darin Adler  <darin@apple.com>
1790
1791         Reviewed by John.
1792
1793         - some changes to prepare for converting more code to C++
1794
1795         * bridge/mac/WebCoreFrameBridge.h: Added import of <Cocoa/Cocoa.h> so this header is
1796         self-sufficient.
1797
1798         * bridge/mac/WebCoreViewFactory.h: Added forward declaration of the NSMenu class.
1799         Needed since the class is used in this header (for some work I have not landed yet).
1800
1801         * loader/mac/LoaderNSURLExtras.h:
1802         * loader/mac/WebFormDataStream.h:
1803         Added extern "C" so this code can be used from C++.
1804
1805         * loader/mac/LoaderNSURLExtras.m:
1806         * loader/mac/WebDataProtocol.mm:
1807         * loader/mac/WebDocumentLoader.mm:
1808         * loader/mac/WebFormDataStream.m:
1809         * loader/mac/WebLoader.mm:
1810         * loader/mac/WebMainResourceLoader.mm:
1811         * loader/mac/WebNetscapePlugInStreamLoader.mm:
1812         * loader/mac/WebPolicyDecider.mm:
1813         * loader/mac/WebSubresourceLoader.mm:
1814         Added missing includes of config.h.
1815
1816 2006-10-11  John Sullivan  <sullivan@apple.com>
1817         
1818         Darin wrote this code; we tested it; I give it the thumbs up.
1819         
1820         - fixed regression from svn revision 16982 that was generating the wrong Obj-C classes
1821
1822         The hash table to look up an element class given a QualifiedName was
1823         not working at all.
1824
1825         * dom/QualifiedName.h:
1826         (WebCore::QualifiedName::impl):
1827         Added. This new accessor method for impl is needed if we want to use
1828         a QualifiedName as a hash table key without doing the kind of specialization
1829         we do for String. Maybe later we can do the String thing.
1830
1831         * bindings/objc/DOM.mm:
1832         (WebCore::addElementClass):
1833         Use QualifiedName.impl instead of the QualifiedName pointer itself.
1834         The QualifiedName pointer is *not* unique so almost nothing would be found
1835         in this hash table!
1836         (WebCore::elementClass):
1837         ditto
1838         
1839 2006-10-11  Adam Roben  <aroben@apple.com>
1840
1841         Rubberstamped by Anders.
1842
1843         Clean up FileChooser::create and Icon::newIconForFile.
1844
1845         * WebCore.xcodeproj/project.pbxproj:
1846         * platform/mac/FileChooserMac.mm:
1847         (WebCore::FileChooser::create):
1848         * platform/mac/IconMac.mm:
1849         (WebCore::Icon::newIconForFile):
1850
1851 2006-10-11  Oliver Hunt  <oliver@apple.com>
1852
1853         Reviewed by Adam.
1854
1855         Fix for http://bugs.webkit.org/show_bug.cgi?id=11251
1856         Corrects canvas tag to not throw JS exception when drawing
1857         zero sized rects, arcs, etc
1858
1859         * html/CanvasRenderingContext2D.cpp:
1860         (WebCore::CanvasRenderingContext2D::arcTo):
1861         (WebCore::CanvasRenderingContext2D::arc):
1862         (WebCore::CanvasRenderingContext2D::rect):
1863         (WebCore::CanvasRenderingContext2D::clearRect):
1864         (WebCore::CanvasRenderingContext2D::fillRect):
1865         (WebCore::CanvasRenderingContext2D::strokeRect):
1866
1867 2006-10-11  Rob Buis  <buis@kde.org>
1868
1869         Reviewed by Mitz.
1870
1871         http://bugs.webkit.org/show_bug.cgi?id=11221
1872         REGRESSION: iExploder crash due to style="cursor: url()"
1873
1874         Take better care of empty cursor lists.
1875
1876         Test: fast/css/invalid-cursor-property-crash.html
1877
1878         * css/cssparser.cpp:
1879         (WebCore::CSSParser::parseValue):
1880
1881 2006-10-11  Adam Roben  <aroben@apple.com>
1882
1883         Fixing Windows for real this time.
1884
1885         * platform/win/TemporaryLinkStubs.cpp:
1886         (FileChooser::create):
1887
1888 2006-10-11  Adam Roben  <aroben@apple.com>
1889
1890         Fix Windows build.
1891
1892         * platform/win/TemporaryLinkStubs.cpp:
1893         (FileChooser::create):
1894
1895 2006-10-11  Antti Koivisto  <koivisto@iki.fi>
1896
1897         Reviewed by Hyatt.
1898         
1899         http://bugs.webkit.org/show_bug.cgi?id=4377
1900         
1901         Respect css visibility semantics for layers too
1902
1903         * rendering/RenderContainer.cpp:
1904         (WebCore::RenderContainer::removeChildNode):
1905         (WebCore::RenderContainer::appendChildNode):
1906         (WebCore::RenderContainer::insertChildNode):
1907         * rendering/RenderLayer.cpp:
1908         (WebCore::RenderLayer::RenderLayer):
1909         (WebCore::RenderLayer::updateLayerPositions):
1910         (WebCore::RenderLayer::setHasVisibleContent):
1911         (WebCore::RenderLayer::dirtyVisibleContentStatus):
1912         (WebCore::RenderLayer::childVisibilityChanged):
1913         (WebCore::RenderLayer::dirtyVisibleDescendantStatus):
1914         (WebCore::RenderLayer::updateVisibilityStatus):
1915         (WebCore::RenderLayer::addChild):
1916         (WebCore::RenderLayer::removeChild):
1917         (WebCore::RenderLayer::updateZOrderLists):
1918         (WebCore::RenderLayer::collectLayers):
1919         * rendering/RenderLayer.h:
1920         (WebCore::RenderLayer::hasVisibleContent):
1921         * rendering/RenderObject.cpp:
1922         (WebCore::RenderObject::setStyle):
1923
1924 2006-10-10  Maciej Stachowiak  <mjs@apple.com>
1925
1926         Reviewed by Oliver.
1927
1928         - added RetainPtr, smart pointer for refcounted ObjC objects and CFTypes
1929
1930         * WebCore.xcodeproj/project.pbxproj:
1931         * platform/cf/RetainPtr.h: Added.
1932         (WTF::):
1933         (WTF::RetainPtr::RetainPtr):
1934         (WTF::RetainPtr::~RetainPtr):
1935         (WTF::RetainPtr::get):
1936         (WTF::RetainPtr::operator*):
1937         (WTF::RetainPtr::operator->):
1938         (WTF::RetainPtr::operator!):
1939         (WTF::RetainPtr::operator UnspecifiedBoolType):
1940         (WTF::::operator):
1941         (WTF::::swap):
1942         (WTF::swap):
1943         (WTF::operator==):
1944         (WTF::operator!=):
1945         (WTF::static_pointer_cast):
1946         (WTF::const_pointer_cast):
1947         (WTF::getPtr):
1948         
1949         - use it in WidgetMac so it gets tested in at least one place
1950         
1951         * platform/mac/WidgetMac.mm:
1952         (WebCore::Widget::Widget):
1953         (WebCore::Widget::~Widget):
1954         (WebCore::Widget::setEnabled):
1955         (WebCore::Widget::isEnabled):
1956         (WebCore::Widget::setCursor):
1957         (WebCore::Widget::getView):
1958         (WebCore::Widget::setView):
1959         (WebCore::Widget::getOuterView):
1960
1961 2006-10-10  Brady Eidson  <beidson@apple.com>
1962
1963         Reviewed by Maciej.
1964
1965         Moved WebFrameLoader from WebFrameBridge into WebCoreFrameBridge
1966
1967         * bridge/mac/WebCoreFrameBridge.h:
1968         * bridge/mac/WebCoreFrameBridge.mm:
1969         (-[WebCoreFrameBridge initMainFrameWithPage:]):
1970         (-[WebCoreFrameBridge initSubframeWithOwnerElement:]):
1971         (-[WebCoreFrameBridge dealloc]):
1972         (-[WebCoreFrameBridge close]):
1973         (-[WebCoreFrameBridge setFrameLoaderClient:]):
1974         (-[WebCoreFrameBridge frameLoader]):
1975         * loader/mac/WebFrameLoader.h:
1976         * loader/mac/WebFrameLoader.mm:
1977         (-[WebFrameLoader initWithFrameBridge:]):
1978         (-[WebFrameLoader setFrameLoaderClient:]):
1979
1980 2006-10-10  Adam Roben  <aroben@apple.com>
1981
1982         Reviewed by Oliver.
1983
1984         Make FileChooser ref-counted.
1985
1986         * platform/FileChooser.h:
1987         * platform/mac/FileChooserMac.mm:
1988         (WebCore::FileChooser::create):
1989         * rendering/RenderFileUploadControl.cpp:
1990         (WebCore::RenderFileUploadControl::RenderFileUploadControl):
1991         (WebCore::RenderFileUploadControl::~RenderFileUploadControl):
1992         * rendering/RenderFileUploadControl.h:
1993
1994 2006-10-10  Sam Weinig  <sam.weinig@gmail.com>
1995
1996         Reviewed by Tim H.
1997
1998         Patch for http://bugs.webkit.org/show_bug.cgi?id=11248
1999         Even More auto-generated Objective-C DOM bindings changes
2000
2001         - Auto-generate DOMSVGPathElement.
2002
2003         - Auto-generate the internal interfaces even for classes that have
2004           custom internal implementations.  Change IDL property from ObjCNoInternal
2005           to ObjCCustomInternalImpl to indicate the change.
2006
2007         - Add SVG classes to DOMNode and DOMEvent internal interfaces.
2008
2009         - Add isSVGZoomEvent() method to Event class to match other Event subclasses
2010           and make DOM binding possible.
2011
2012         - Assorted cleanups.
2013
2014         * DerivedSources.make:
2015         * WebCore.xcodeproj/project.pbxproj:
2016         * bindings/objc/DOM.mm:
2017         (WebCore::addElementClass):
2018         (WebCore::createElementClassMap):
2019         (WebCore::elementClass):
2020         (-[DOMNode description]):
2021         (+[DOMNode _nodeWith:WebCore::]):
2022         (-[DOMNode addEventListener:listener:useCapture:]):
2023         (-[DOMNode removeEventListener:listener:useCapture:]):
2024         (-[DOMElement _NPObject]):
2025         (WebCore::ObjCEventListener::handleEvent):
2026         * bindings/objc/DOMEvents.mm:
2027         (+[DOMEvent _eventWith:WebCore::]):
2028         * bindings/objc/DOMInternal.h:
2029         * bindings/objc/DOMRGBColor.mm:
2030         (-[DOMRGBColor WebCore::]):
2031         * bindings/objc/DOMSVGPathSegInternal.h: Removed.
2032         * bindings/scripts/CodeGeneratorObjC.pm:
2033         * css/CSSRule.idl:
2034         * css/CSSValue.idl:
2035         * css/StyleSheet.idl:
2036         * dom/Event.cpp:
2037         (WebCore::Event::isSVGZoomEvent):
2038         * dom/Event.h:
2039         * dom/Event.idl:
2040         * dom/Node.idl:
2041         * ksvg2/events/SVGZoomEvent.cpp:
2042         (WebCore::SVGZoomEvent::isSVGZoomEvent):
2043         * ksvg2/events/SVGZoomEvent.h:
2044         * ksvg2/svg/SVGAnimatedAngle.idl:
2045         * ksvg2/svg/SVGCircleElement.idl:
2046         * ksvg2/svg/SVGClipPathElement.idl:
2047         * ksvg2/svg/SVGPathElement.idl:
2048         * ksvg2/svg/SVGPathSeg.idl:
2049
2050 2006-10-10  Oliver Hunt  <oliver@apple.com>
2051
2052         rubber stamped by Anders.
2053
2054         More buildbot bustage
2055
2056         * kcanvas/SVGInlineFlowBox.cpp:
2057         (WebCore::placeBoxesVerticallyWithAbsBaseline):
2058
2059 2006-10-10  Oliver Hunt  <oliver@apple.com>
2060
2061         Reviewed by Anders 
2062
2063         Unbreak build bots
2064
2065         * dom/Text.cpp:
2066         * kcanvas/RenderSVGText.cpp:
2067         (WebCore::RenderSVGText::layout):
2068         * kcanvas/SVGInlineFlowBox.cpp:
2069         (WebCore::placePositionedBoxesHorizontally):
2070         (WebCore::placeBoxesVerticallyWithAbsBaseline):
2071
2072 2006-10-10  Oliver Hunt  <oliver@apple.com>
2073
2074         Reviewed by hyatt.
2075
2076         Fixes bugs #6423, #6559, #10380 and #10839 
2077
2078         * WebCore.xcodeproj/project.pbxproj:
2079         * css/svg.css:
2080         * dom/Text.cpp:
2081         (WebCore::Text::createRenderer):
2082         * kcanvas/RenderSVGInline.cpp: Added.
2083         (WebCore::RenderSVGInline::RenderSVGInline):
2084         (WebCore::RenderSVGInline::createInlineBox):
2085         * kcanvas/RenderSVGInline.h: Added.
2086         (WebCore::RenderSVGInline::renderName):
2087         (WebCore::RenderSVGInline::requiresLayer):
2088         * kcanvas/RenderSVGInlineText.cpp: Added.
2089         (WebCore::RenderSVGInlineText::RenderSVGInlineText):
2090         (WebCore::RenderSVGInlineText::absoluteRects):
2091         (WebCore::RenderSVGInlineText::selectionRect):
2092         * kcanvas/RenderSVGInlineText.h: Added.
2093         (WebCore::RenderSVGInlineText::renderName):
2094         (WebCore::RenderSVGInlineText::requiresLayer):
2095         * kcanvas/RenderSVGTSpan.cpp: Added.
2096         (WebCore::RenderSVGTSpan::RenderSVGTSpan):
2097         (WebCore::RenderSVGTSpan::absoluteRects):
2098         * kcanvas/RenderSVGTSpan.h: Added.
2099         (WebCore::RenderSVGTSpan::renderName):
2100         * kcanvas/RenderSVGText.cpp:
2101         (WebCore::RenderSVGText::RenderSVGText):
2102         (WebCore::RenderSVGText::computeAbsoluteRepaintRect):
2103         (WebCore::RenderSVGText::layout):
2104         (WebCore::RenderSVGText::createInlineBox):
2105         (WebCore::RenderSVGText::nodeAtPoint):
2106         (WebCore::RenderSVGText::absoluteRects):
2107         (WebCore::RenderSVGText::paint):
2108         (WebCore::RenderSVGText::relativeBBox):
2109         * kcanvas/RenderSVGText.h:
2110         (WebCore::RenderSVGText::renderName):
2111         * kcanvas/SVGInlineFlowBox.cpp: Added.
2112         (WebCore::SVGInlineFlowBox::paint):
2113         (WebCore::SVGInlineFlowBox::placeBoxesHorizontally):
2114         (WebCore::SVGInlineFlowBox::verticallyAlignBoxes):
2115         (WebCore::paintSVGInlineFlow):
2116         (WebCore::translateBox):
2117         (WebCore::placePositionedBoxesHorizontally):
2118         (WebCore::placeSVGFlowHorizontally):
2119         (WebCore::placeBoxesVerticallyWithAbsBaseline):
2120         (WebCore::placeSVGFlowVertically):
2121         * kcanvas/SVGInlineFlowBox.h: Added.
2122         (WebCore::SVGInlineFlowBox::SVGInlineFlowBox):
2123         * kcanvas/SVGRootInlineBox.cpp: Added.
2124         (WebCore::SVGRootInlineBox::paint):
2125         (WebCore::SVGRootInlineBox::placeBoxesHorizontally):
2126         (WebCore::SVGRootInlineBox::verticallyAlignBoxes):
2127         * kcanvas/SVGRootInlineBox.h: Added.
2128         (WebCore::SVGRootInlineBox::SVGRootInlineBox):
2129         * ksvg2/svg/SVGTRefElement.cpp:
2130         (SVGTRefElement::createRenderer):
2131         * ksvg2/svg/SVGTSpanElement.cpp:
2132         (SVGTSpanElement::createRenderer):
2133         * rendering/InlineFlowBox.h:
2134
2135 2006-10-10  Adam Roben  <aroben@apple.com>
2136
2137         Reviewed by Adele.
2138
2139         Improve popup menu behavior.
2140
2141         * html/HTMLSelectElement.cpp:
2142         (WebCore::HTMLSelectElement::HTMLSelectElement): Cache
2143         m_lastOnChangeIndex so we know when to fire onChange.
2144         (WebCore::HTMLSelectElement::setSelectedIndex): Added parameter to
2145         specify whether we should fire onChange.
2146         (WebCore::HTMLSelectElement::dispatchBlurEvent): Fire onChange on blur.
2147         (WebCore::HTMLSelectElement::menuListDefaultEventHandler): Fire
2148         onChange when using the Enter key to change the selection.
2149         * html/HTMLSelectElement.h:
2150         * rendering/RenderMenuList.cpp:
2151         (WebCore::RenderMenuList::updateFromElement): Extract setText logic
2152         into its own method.
2153         (WebCore::RenderMenuList::setTextFromOption): New method.
2154         (WebCore::RenderMenuList::valueChanged): Let setSelectedIndex call
2155         onChange instead of calling it directly here.
2156         * rendering/RenderMenuList.h:
2157
2158 2006-10-10  Adele Peterson  <adele@apple.com>
2159
2160         Reviewed by Beth. 
2161
2162
2163         - Fix for <rdar://problem/4707489> After timers fix, crash below RenderLayer::autoscroll after moving/destroying active <input type=text>
2164           and <rdar://problem/4707519> After timers fix, crash below RenderLayer::autoscroll after moving/destroying active textarea
2165
2166         Moved autoscroll code to the Frame class
2167
2168         * bridge/mac/FrameMac.h: Moved _mouseDownMayStartDrag and _mouseDownMayStartAutoscroll flags to the frame.
2169         * bridge/mac/FrameMac.mm: Use new getters and setters for drag and autoscroll flags.  Moved autoscroll code to Frame::handleMouseMoveEvent.
2170         (WebCore::FrameMac::FrameMac):
2171         (WebCore::FrameMac::handleMousePressEvent):
2172         (WebCore::FrameMac::eventMayStartDrag):
2173         (WebCore::FrameMac::handleMouseMoveEvent):
2174         (WebCore::FrameMac::mouseDown):
2175
2176         * bridge/mac/WebCoreFrameBridge.h: Removed handleAutoscrollForMouseDragged, which called over the bridge for AppKit to do autoscroll for us.
2177         Now we scroll our views in WebCore.
2178
2179         * page/Frame.cpp:
2180         (WebCore::Frame::handleMousePressEvent): Initialize the mouseDownMayStartAutoscroll flag.
2181         (WebCore::Frame::handleMouseMoveEvent): Now kicks off autoscroll if appropriate.  Moved from FrameMac.
2182         (WebCore::Frame::updateSelectionForMouseDragOverPosition): Factored code out from handleMouseMoveEvent so we can update the selection from autoscroll too.
2183         (WebCore::Frame::mouseDownMayStartAutoscroll): Added.
2184         (WebCore::Frame::setMouseDownMayStartAutoscroll): Added.
2185         (WebCore::Frame::mouseDownMayStartDrag): Added.
2186         (WebCore::Frame::setMouseDownMayStartDrag): Added.
2187         (WebCore::Frame::autoscrollRenderer): Added
2188         (WebCore::Frame::setAutoscrollRenderer): Added.
2189         (WebCore::Frame::handleAutoscroll): Updated to use autoscrollRenderer getter and setter.
2190         (WebCore::Frame::autoscrollTimerFired): ditto.
2191         (WebCore::Frame::stopAutoscrollTimer): ditto. 
2192         * page/Frame.h: Made autoscrollRenderer and stopAutoscrollTimer public, so the renderer being autoscrolled can kill the timer when it dies.
2193
2194         * page/FramePrivate.h:
2195         (WebCore::FramePrivate::FramePrivate): Added mouseDownMayStartDrag and mouseDownMayStartAutoscroll flags.  Moved from FrameMac.
2196
2197         * page/FrameView.cpp: Store the current mouse position in window coordinates.  The callers can convert to their own coordinate space.
2198         (WebCore::FrameView::handleMousePressEvent):
2199         (WebCore::FrameView::handleMouseDoubleClickEvent):
2200         (WebCore::FrameView::handleMouseMoveEvent):
2201         (WebCore::FrameView::handleMouseReleaseEvent):
2202
2203         * rendering/RenderLayer.cpp:
2204         (WebCore::RenderLayer::autoscroll): Rewrote this to scroll recursively, and to scroll based on the mouse position (not the selection).  
2205          We also need to update the selection here, since autoscroll can occur without a mouseMove event, and the selection needs to get reset as we scroll.
2206
2207         * rendering/RenderListBox.cpp:
2208         (WebCore::RenderListBox::autoscroll): Convert the mouse coordinates to the right space.
2209
2210         * rendering/RenderObject.cpp:
2211         (WebCore::RenderObject::shouldAutoscroll): Also return true if the renderer is a root (so we know to autoscroll views too)
2212         (WebCore::RenderObject::destroy): If this renderer is being autoscrolled, stop the frame's autoscroll timer.
2213
2214 2006-10-10  Darin Adler  <darin@apple.com>
2215
2216         Rubber stamped by Maciej.
2217
2218         - convert many of the loader source files to Objective-C++ to prepare
2219           to convert some of them to C++
2220
2221         * WebCore.xcodeproj/project.pbxproj:
2222         * loader/mac/WebDataProtocol.m: Removed.
2223         * loader/mac/WebDocumentLoader.m: Removed.
2224         * loader/mac/WebFormState.m: Removed.
2225         * loader/mac/WebFrameLoader.m: Removed.
2226         * loader/mac/WebLoader.m: Removed.
2227         * loader/mac/WebMainResourceLoader.m: Removed.
2228         * loader/mac/WebNetscapePlugInStreamLoader.m: Removed.
2229         * loader/mac/WebPolicyDecider.m: Removed.
2230         * loader/mac/WebSubresourceLoader.m: Removed.
2231         * loader/mac/WebDataProtocol.mm: Added.
2232         * loader/mac/WebDocumentLoader.mm: Added.
2233         * loader/mac/WebFormState.mm: Added.
2234         * loader/mac/WebFrameLoader.mm: Added.
2235         * loader/mac/WebLoader.mm: Added.
2236         * loader/mac/WebMainResourceLoader.mm: Added.
2237         * loader/mac/WebNetscapePlugInStreamLoader.mm: Added.
2238         * loader/mac/WebPolicyDecider.mm: Added.
2239         * loader/mac/WebSubresourceLoader.mm: Added.
2240
2241 2006-10-10  Maciej Stachowiak  <mjs@apple.com>
2242
2243         Reviewed by Mitz.
2244
2245         - fixed REGRESSION (r16960): crash on navigating to site
2246         http://www.zoominfo.com/Search/CompanyDetail.aspx?CompanyID=62948057&cs=QGDwILZIE
2247         
2248         * loader/mac/WebFrameLoader.m:
2249         (-[WebFrameLoader continueLoadRequestAfterNewWindowPolicy:frameName:formState:]):
2250         Add back a mistakenly removed retain.
2251
2252 2006-10-10  Maciej Stachowiak  <mjs@apple.com>
2253
2254         Not reviewed, build fix.
2255
2256         - fixed release build
2257
2258         * WebCore.xcodeproj/project.pbxproj:
2259
2260 2006-10-10  Maciej Stachowiak  <mjs@apple.com>
2261
2262         Rubber stamped by Eric.
2263
2264         - moved a big honkin' pile of code over from WebKit; made minimal needed changes to compile
2265
2266         * WebCore.exp:
2267         * WebCore.xcodeproj/project.pbxproj:
2268         * loader/mac/LoaderNSURLExtras.m: Added.
2269         * loader/mac/WebDataProtocol.m: Added.
2270         * loader/mac/WebDocumentLoader.m: Added.
2271         * loader/mac/WebFormDataStream.m: Added.
2272         * loader/mac/WebFrameLoader.m: Added.
2273         * loader/mac/WebLoader.m: Added.
2274         (-[NSURLProtocol didReceiveResponse:]):
2275         (-[NSURLProtocol didReceiveData:lengthReceived:allAtOnce:]):
2276         * loader/mac/WebMainResourceLoader.m: Added.
2277         (-[WebMainResourceLoader didReceiveResponse:]):
2278         * loader/mac/WebPolicyDecider.m: Added.
2279         * loader/mac/WebSubresourceLoader.h: Added.
2280         * loader/mac/WebSubresourceLoader.m: Added.
2281
2282 2006-10-10  Maciej Stachowiak  <mjs@apple.com>
2283
2284         Reviewed by Oliver (sort of?)
2285
2286         - WebCore part of moving down NSURL extras
2287
2288         * WebCore.exp:
2289         * platform/mac/WebCoreSystemInterface.h:
2290         * platform/mac/WebCoreSystemInterface.mm:
2291
2292 2006-10-09  Rob Buis  <buis@kde.org>
2293
2294         Reviewed by Mitz.
2295
2296         http://bugs.webkit.org/show_bug.cgi?id=11217
2297         Cleanup svg coding style
2298
2299         Cleanup coding style in svg animation classes.
2300
2301         * ksvg2/svg/SVGAnimateColorElement.cpp:
2302         (WebCore::SVGAnimateColorElement::handleTimerEvent):
2303         * ksvg2/svg/SVGAnimateElement.cpp:
2304         (WebCore::SVGAnimateElement::SVGAnimateElement):
2305         (WebCore::SVGAnimateElement::handleTimerEvent):
2306         * ksvg2/svg/SVGAnimateTransformElement.cpp:
2307         (WebCore::SVGAnimateTransformElement::SVGAnimateTransformElement):
2308         (WebCore::SVGAnimateTransformElement::parseMappedAttribute):
2309         (WebCore::SVGAnimateTransformElement::handleTimerEvent):
2310         (WebCore::SVGAnimateTransformElement::parseTransformValue):
2311         (WebCore::SVGAnimateTransformElement::calculateRotationFromMatrix):
2312         (WebCore::SVGAnimateTransformElement::initialMatrix):
2313         (WebCore::SVGAnimateTransformElement::transformMatrix):
2314         * ksvg2/svg/SVGAnimateTransformElement.h:
2315         * ksvg2/svg/SVGAnimatedPathData.cpp:
2316         * ksvg2/svg/SVGAnimatedPathData.h:
2317         * ksvg2/svg/SVGAnimatedPoints.cpp:
2318         * ksvg2/svg/SVGAnimatedPoints.h:
2319         * ksvg2/svg/SVGAnimationElement.cpp:
2320         (WebCore::SVGAnimationElement::targetElement):
2321
2322 2006-10-09  Maciej Stachowiak  <mjs@apple.com>
2323
2324         Reviewed by Oliver.
2325
2326         - added isMainFrame and frameLoader to WebCoreFrameBridge for ease of future code motion
2327
2328         * bridge/mac/WebCoreFrameBridge.h:
2329         * bridge/mac/WebCoreFrameBridge.mm:
2330         (-[WebCoreFrameBridge isMainFrame]):
2331
2332 2006-10-09  Adam Roben  <aroben@apple.com>
2333
2334         Backing out accidental commit.
2335
2336         * page/Frame.cpp:
2337         (WebCore::Frame::finishedParsing):
2338
2339 2006-10-09  Adam Roben  <aroben@apple.com>
2340
2341         Reviewed by Darin.
2342
2343         Add ASSERTs to RefPtr to make sure we don't ref within a destructor, as
2344         this could cause recursive calls to the destructor. RefPtr now also
2345         inherits from Noncopyable.
2346
2347         * dom/NodeFilter.h:
2348         * dom/Traversal.h:
2349         * page/DOMWindow.h:
2350         * page/Frame.cpp:
2351         (WebCore::Frame::finishedParsing):
2352         * page/Frame.h:
2353         * page/Plugin.h:
2354         * platform/FontFallbackList.h:
2355         * platform/Icon.h:
2356         * platform/Shared.h:
2357         (WebCore::Shared::Shared):
2358         (WebCore::Shared::ref):
2359         (WebCore::Shared::deref):
2360         (WebCore::Shared::hasOneRef):
2361         (WebCore::Shared::refCount):
2362         * platform/StringImpl.h:
2363
2364 2006-10-09  Oliver Hunt <ohunt@apple.com>
2365
2366         Reviewed by Anders.
2367
2368         Correcting ifdef's
2369
2370         * html/CanvasGradient.cpp:
2371         (WebCore::CanvasGradient::CanvasGradient):
2372         (WebCore::CanvasGradient::~CanvasGradient):
2373         (WebCore::CanvasGradient::addColorStop):
2374         * html/CanvasGradient.h:
2375         * html/CanvasPattern.cpp:
2376         (WebCore::CanvasPattern::CanvasPattern):
2377         (WebCore::CanvasPattern::~CanvasPattern):
2378         * html/CanvasPattern.h:
2379         * html/CanvasRenderingContext2D.cpp:
2380         (WebCore::CanvasRenderingContext2D::fill):
2381         (WebCore::CanvasRenderingContext2D::stroke):
2382         (WebCore::CanvasRenderingContext2D::fillRect):
2383         (WebCore::CanvasRenderingContext2D::setShadow):
2384         (WebCore::CanvasRenderingContext2D::applyShadow):
2385         (WebCore::CanvasRenderingContext2D::drawImage):
2386         (WebCore::CanvasRenderingContext2D::createPattern):
2387         (WebCore::CanvasRenderingContext2D::applyStrokePattern):
2388         (WebCore::CanvasRenderingContext2D::applyFillPattern):
2389         * html/CanvasRenderingContext2D.h:
2390         * html/CanvasStyle.cpp:
2391         (WebCore::CanvasStyle::applyStrokeColor):
2392         (WebCore::CanvasStyle::applyFillColor):
2393         * html/HTMLCanvasElement.cpp:
2394         (WebCore::HTMLCanvasElement::paint):
2395         (WebCore::HTMLCanvasElement::createDrawingContext):
2396         * html/HTMLCanvasElement.h:
2397
2398 2006-10-09  Adam Roben  <aroben@apple.com>
2399
2400         Reviewed by Maciej.
2401
2402         Fix a possible recursive destructor call.
2403
2404         * page/Frame.cpp:
2405         (WebCore::Frame::~Frame): Add a FIXME about cleaning up the destructor.
2406         (WebCore::Frame::finishedParsing): Don't create a protector RefPtr if
2407         we're already being destroyed.
2408
2409 2006-10-09  Sam Weinig  <sam.weinig@gmail.com>
2410
2411         Reviewed by Tim H.
2412
2413         Patch for http://bugs.webkit.org/show_bug.cgi?id=11234
2414         Assorted Objective-C bindings changes
2415
2416         - Auto-generate DOMSVGPathSegArcAbs, DOMSVGPathSegArcRel, DOMSVGPathSegClosePath, 
2417           DOMSVGPathSegCurvetoCubicAbs, DOMSVGPathSegCurvetoCubicRel, 
2418           DOMSVGPathSegCurvetoCubicSmoothAbs, DOMSVGPathSegCurvetoCubicSmoothRel, 
2419           DOMSVGPathSegCurvetoQuadraticAbs, DOMSVGPathSegCurvetoQuadraticRel, 
2420           DOMSVGPathSegCurvetoQuadraticSmoothAbs, DOMSVGPathSegCurvetoQuadraticSmoothRel, 
2421           DOMSVGPathSegLinetoAbs, DOMSVGPathSegLinetoHorizontalAbs, 
2422           DOMSVGPathSegLinetoHorizontalRel, DOMSVGPathSegLinetoRel, 
2423           DOMSVGPathSegLinetoVerticalAbs, DOMSVGPathSegLinetoVerticalRel, 
2424           DOMSVGPathSegMovetoAbs, DOMSVGPathSegMovetoRel and DOMSVGSVGElement.
2425
2426         - Auto-generate absoluteImageURL method for DOMHTMLInputElement and
2427           DOMHTMLObjectElement.
2428
2429         - Auto-generate the internal methods for classes with ivars (notably 
2430           DOMNodeIterator and DOMTreeWalker)
2431
2432         - Put more methods in the WebCore namespace and factor out the  
2433           displayString method into DOMInternal.h as done by Darin in his 
2434           patch for http://bugs.webkit.org/show_bug.cgi?id=11219.
2435
2436         * DerivedSources.make:
2437         * WebCore.xcodeproj/project.pbxproj:
2438         * bindings/objc/DOM.mm:
2439         (-[DOMNode _initWithNode:WebCore::]):
2440         (+[DOMNode _nodeWith:WebCore::]):
2441         (-[DOMNode addEventListener:listener:useCapture:]):
2442         (-[DOMNode removeEventListener:listener:useCapture:]):
2443         (-[DOMNode dispatchEvent:]):
2444         (-[DOMElement _imageTIFFRepresentation]):
2445         (-[DOMNodeFilter _initWithNodeFilter:WebCore::]):
2446         (+[DOMNodeFilter _nodeFilterWith:WebCore::]):
2447         (-[DOMDocument createNodeIterator:whatToShow:filter:expandEntityReferences:]):
2448         (-[DOMDocument createTreeWalker:whatToShow:filter:expandEntityReferences:]):
2449         * bindings/objc/DOMCSS.mm:
2450         (-[DOMStyleSheet _initWithStyleSheet:WebCore::]):
2451         (+[DOMStyleSheet _styleSheetWith:WebCore::]):
2452         (-[DOMCSSRule _initWithCSSRule:WebCore::]):
2453         (+[DOMCSSRule _CSSRuleWith:WebCore::]):
2454         (-[DOMCSSValue _initWithCSSValue:WebCore::]):
2455         (+[DOMCSSValue _CSSValueWith:WebCore::]):
2456         * bindings/objc/DOMEvents.mm:
2457         (-[DOMEvent _initWithEvent:WebCore::]):
2458         (+[DOMEvent _eventWith:WebCore::]):
2459         * bindings/objc/DOMExtensions.h:
2460         * bindings/objc/DOMHTML.mm:
2461         (-[DOMHTMLInputElement _replaceCharactersInRange:withString:selectingFromIndex:]):
2462         * bindings/objc/DOMInternal.h:
2463         (-[DOMNodeFilter WebCore::]):
2464         * bindings/objc/DOMInternal.mm:
2465         (-[WebScriptObject _init]):
2466         (-[WebScriptObject _initializeScriptDOMNodeImp]):
2467         (WebCore::displayString):
2468         * bindings/objc/DOMObject.mm:
2469         (-[DOMObject dealloc]):
2470         (-[DOMObject finalize]):
2471         * bindings/objc/DOMRGBColor.mm:
2472         (-[DOMRGBColor dealloc]):
2473         (-[DOMRGBColor finalize]):
2474         (-[DOMRGBColor color]):
2475         (-[DOMRGBColor _initWithRGB:WebCore::]):
2476         (+[DOMRGBColor _RGBColorWithRGB:WebCore::]):
2477         * bindings/objc/DOMSVG.h:
2478         * bindings/objc/DOMSVGPathSegInternal.h: Added.
2479         * bindings/objc/DOMSVGPathSegInternal.mm: Added.
2480         (-[DOMSVGPathSeg WebCore::]):
2481         (-[DOMSVGPathSeg _initWithSVGPathSeg:WebCore::]):
2482         (+[DOMSVGPathSeg _SVGPathSegWith:WebCore::]):
2483         * bindings/objc/DOMXPath.mm:
2484         (-[DOMNativeXPathNSResolver _initWithXPathNSResolver:WebCore::]):
2485         (+[DOMNativeXPathNSResolver _xpathNSResolverWith:WebCore::]):
2486         * bindings/objc/PublicDOMInterfaces.h:
2487         * bindings/scripts/CodeGeneratorObjC.pm:
2488         * dom/NodeIterator.idl:
2489         * dom/TreeWalker.idl:
2490         * html/HTMLInputElement.idl:
2491         * html/HTMLObjectElement.idl:
2492         * ksvg2/svg/SVGDocument.idl:
2493         * ksvg2/svg/SVGElement.idl:
2494         * ksvg2/svg/SVGPathSeg.idl:
2495         * ksvg2/svg/SVGPathSegArcAbs.idl:
2496         * ksvg2/svg/SVGPathSegArcRel.idl:
2497         * ksvg2/svg/SVGPathSegClosePath.idl:
2498         * ksvg2/svg/SVGPathSegCurvetoCubicAbs.idl:
2499         * ksvg2/svg/SVGPathSegCurvetoCubicRel.idl:
2500         * ksvg2/svg/SVGPathSegCurvetoCubicSmoothAbs.idl:
2501         * ksvg2/svg/SVGPathSegCurvetoCubicSmoothRel.idl:
2502         * ksvg2/svg/SVGPathSegCurvetoQuadraticAbs.idl:
2503         * ksvg2/svg/SVGPathSegCurvetoQuadraticRel.idl:
2504         * ksvg2/svg/SVGPathSegCurvetoQuadraticSmoothAbs.idl:
2505         * ksvg2/svg/SVGPathSegCurvetoQuadraticSmoothRel.idl:
2506         * ksvg2/svg/SVGPathSegLinetoAbs.idl:
2507         * ksvg2/svg/SVGPathSegLinetoHorizontalAbs.idl:
2508         * ksvg2/svg/SVGPathSegLinetoHorizontalRel.idl:
2509         * ksvg2/svg/SVGPathSegLinetoRel.idl:
2510         * ksvg2/svg/SVGPathSegLinetoVerticalAbs.idl:
2511         * ksvg2/svg/SVGPathSegLinetoVerticalRel.idl:
2512         * ksvg2/svg/SVGPathSegMovetoAbs.idl:
2513         * ksvg2/svg/SVGPathSegMovetoRel.idl:
2514
2515 2006-10-09  Don Gibson  <dgibson77@gmail.com>
2516
2517         Unreviewed build fix.
2518
2519         Fix windows build bustage.
2520
2521         * platform/win/TemporaryLinkStubs.cpp:
2522
2523 2006-10-09  Krzysztof Kowalczyk  <kkowalczyk@gmail.com>
2524
2525         Reviewed by Geoff.
2526
2527         Fix memory leaks discovered via valgrind. Gdk build fixes.
2528
2529         * Projects/gdk/webcore-gdk.bkl:
2530         * make-generated-sources.sh:
2531         * platform/cairo/ImageCairo.cpp:
2532         (WebCore::Image::draw):
2533         * platform/gdk/FrameGdk.cpp:
2534         (WebCore::FrameGdk::handleGdkEvent):
2535         * platform/gdk/FrameGdk.h:
2536         * platform/gdk/PlatformScrollBar.h:
2537         (WebCore::PlatformScrollbar::horizontalScrollbarHeight):
2538         (WebCore::PlatformScrollbar::verticalScrollbarWidth):
2539
2540 2006-10-09  Nikolas Zimmermann  <zimmermann@kde.org>
2541
2542         Reviewed by Beth.
2543
2544         Fix LayoutTests/fast/css/case-transform.html with Qt - the last crashing layout test.
2545
2546         * platform/qt/GlyphMapQt.cpp: Handle UTF-16 characters properly
2547         (WebCore::GlyphMap::fillPage):
2548
2549 2006-10-09  Nikolas Zimmermann  <zimmermann@kde.org>
2550
2551         Unreviewed build fix.
2552
2553         Fix for Qt/Linux build, based on fixes to the Win32 build in r16928 and r16929.
2554
2555         * platform/qt/FrameQt.cpp:
2556         (WebCore::FrameQt::createJavaAppletWidget):
2557         * platform/qt/FrameQt.h:
2558         * platform/qt/TemporaryLinkStubs.cpp:
2559
2560 2006-10-09  Brady Eidson  <beidson@apple.com>
2561
2562         Reviewed by Maciej
2563
2564         Tiny changes to help reorganize WebFrameLoader code in WebKit
2565
2566         * bridge/mac/WebCoreIconDatabaseBridge.h: Added "createInstance"
2567         * bridge/mac/WebCoreIconDatabaseBridge.mm:
2568         (+[WebCoreIconDatabaseBridge sharedInstance]): Added, uses createInstance from WebKit side
2569
2570 2006-10-09  Adam Roben  <aroben@apple.com>
2571
2572         Reviewed by Adele.
2573
2574         Remove redundant call to Frame::cancelAndClear from ~Frame, since it's
2575         already called frome ~FrameMac.
2576
2577         * page/Frame.cpp:
2578         (WebCore::Frame::~Frame):
2579
2580 2006-10-09  Anders Carlsson  <acarlsson@apple.com>
2581
2582         * bridge/win/FrameWin.h:
2583         Add function declaration.
2584         
2585 2006-10-09  Anders Carlsson  <acarlsson@apple.com>
2586
2587         * platform/win/TemporaryLinkStubs.cpp:
2588         (FrameWin::createJavaAppletWidget):
2589         Try fixing the Win32 build.
2590
2591 2006-10-09  Anders Carlsson  <acarlsson@apple.com>
2592
2593         Reviewed by Adam.
2594
2595         Move applet widget creation to Frame and get rid of JavaAppletWidget.
2596         * WebCore.xcodeproj/project.pbxproj:
2597         * bridge/JavaAppletWidget.h: Removed.
2598         * bridge/mac/FrameMac.h:
2599         * bridge/mac/FrameMac.mm:
2600         (WebCore::FrameMac::createJavaAppletWidget):
2601         * bridge/mac/JavaAppletWidget.mm: Removed.
2602         * page/Frame.h:
2603         * rendering/RenderApplet.cpp:
2604         (WebCore::RenderApplet::createWidgetIfNecessary):
2605
2606 2006-10-09  Mitz Pettel  <mitz@webkit.org>
2607
2608         Reviewed by Darin.
2609
2610         - http://bugs.webkit.org/show_bug.cgi?id=11220
2611           Fix manual test for http://bugs.webkit.org/show_bug.cgi?id=8276
2612
2613         Subversion does not support resource forks and HFS metadata, so
2614         the resources for this test need to be on a disk image.
2615
2616         * manual-tests/plain-text-paste.html: Changed instructions to refer to the disk image.
2617         * manual-tests/resources/plain-text-paste.dmg: Added.
2618         * manual-tests/resources/plain-text-paste/._1.textClipping: Removed.
2619         * manual-tests/resources/plain-text-paste/._2.textClipping: Removed.
2620         * manual-tests/resources/plain-text-paste/._4.txt: Removed.
2621         * manual-tests/resources/plain-text-paste/._5.webloc: Removed.
2622         * manual-tests/resources/plain-text-paste/1.textClipping: Removed.
2623         * manual-tests/resources/plain-text-paste/2.textClipping: Removed.
2624         * manual-tests/resources/plain-text-paste/3.gif: Removed.
2625         * manual-tests/resources/plain-text-paste/4.txt: Removed.
2626         * manual-tests/resources/plain-text-paste/5.webloc: Removed.
2627
2628 2006-10-09  Rob Buis  <buis@kde.org>
2629
2630         Reviewed by Darin.
2631
2632         http://bugs.webkit.org/show_bug.cgi?id=11217
2633         Cleanup svg coding style
2634
2635         Cleanup coding style in filter classes.
2636
2637         * ksvg2/svg/SVGComponentTransferFunctionElement.cpp:
2638         (WebCore::SVGComponentTransferFunctionElement::SVGComponentTransferFunctionElement):
2639         (WebCore::SVGComponentTransferFunctionElement::parseMappedAttribute):
2640         * ksvg2/svg/SVGComponentTransferFunctionElement.h:
2641         * ksvg2/svg/SVGFEBlendElement.cpp:
2642         (WebCore::SVGFEBlendElement::SVGFEBlendElement):
2643         (WebCore::SVGFEBlendElement::parseMappedAttribute):
2644         (WebCore::SVGFEBlendElement::filterEffect):
2645         * ksvg2/svg/SVGFEBlendElement.h:
2646         * ksvg2/svg/SVGFEColorMatrixElement.cpp:
2647         (WebCore::SVGFEColorMatrixElement::SVGFEColorMatrixElement):
2648         (WebCore::SVGFEColorMatrixElement::parseMappedAttribute):
2649         (WebCore::SVGFEColorMatrixElement::filterEffect):
2650         * ksvg2/svg/SVGFEColorMatrixElement.h:
2651         * ksvg2/svg/SVGFECompositeElement.cpp:
2652         (WebCore::SVGFECompositeElement::parseMappedAttribute):
2653         * ksvg2/svg/SVGFECompositeElement.h:
2654         * ksvg2/svg/SVGFEDisplacementMapElement.cpp:
2655         (WebCore::SVGFEDisplacementMapElement::stringToChannel):
2656         * ksvg2/svg/SVGFEDisplacementMapElement.h:
2657         * ksvg2/svg/SVGFEFloodElement.cpp:
2658         (WebCore::SVGFEFloodElement::filterEffect):
2659         * ksvg2/svg/SVGFEFuncAElement.cpp:
2660         (WebCore::SVGFEFuncAElement::SVGFEFuncAElement):
2661         * ksvg2/svg/SVGFEFuncBElement.cpp:
2662         (WebCore::SVGFEFuncBElement::SVGFEFuncBElement):
2663         * ksvg2/svg/SVGFEFuncGElement.cpp:
2664         (WebCore::SVGFEFuncGElement::SVGFEFuncGElement):
2665         * ksvg2/svg/SVGFEFuncRElement.cpp:
2666         (WebCore::SVGFEFuncRElement::SVGFEFuncRElement):
2667         * ksvg2/svg/SVGFEGaussianBlurElement.cpp:
2668         (WebCore::SVGFEGaussianBlurElement::SVGFEGaussianBlurElement):
2669         (WebCore::SVGFEGaussianBlurElement::parseMappedAttribute):
2670         (WebCore::SVGFEGaussianBlurElement::filterEffect):
2671         * ksvg2/svg/SVGFEGaussianBlurElement.h:
2672         * ksvg2/svg/SVGFELightElement.cpp:
2673         (WebCore::SVGFELightElement::SVGFELightElement):
2674         (WebCore::SVGFELightElement::parseMappedAttribute):
2675         * ksvg2/svg/SVGFELightElement.h:
2676         * ksvg2/svg/SVGFEMergeElement.cpp:
2677         (WebCore::SVGFEMergeElement::SVGFEMergeElement):
2678
2679 2006-10-09  Rob Buis  <buis@kde.org>
2680
2681         Reviewed by olliej.
2682
2683         http://bugs.webkit.org/show_bug.cgi?id=11217
2684         Cleanup svg coding style
2685
2686         Cleanup coding style in SVGPath* classes.
2687
2688         * ksvg2/svg/SVGPathElement.cpp:
2689         (WebCore::SVGPathElement::SVGPathElement):
2690         (WebCore::SVGPathElement::getPointAtLength):
2691         (WebCore::SVGPathElement::createSVGPathSegClosePath):
2692         (WebCore::SVGPathElement::createSVGPathSegMovetoAbs):
2693         (WebCore::SVGPathElement::createSVGPathSegMovetoRel):
2694         (WebCore::SVGPathElement::createSVGPathSegLinetoAbs):
2695         (WebCore::SVGPathElement::createSVGPathSegLinetoRel):
2696         (WebCore::SVGPathElement::createSVGPathSegCurvetoCubicAbs):
2697         (WebCore::SVGPathElement::createSVGPathSegCurvetoCubicRel):
2698         (WebCore::SVGPathElement::createSVGPathSegCurvetoQuadraticAbs):
2699         (WebCore::SVGPathElement::createSVGPathSegCurvetoQuadraticRel):
2700         (WebCore::SVGPathElement::createSVGPathSegArcAbs):
2701         (WebCore::SVGPathElement::createSVGPathSegArcRel):
2702         (WebCore::SVGPathElement::createSVGPathSegLinetoHorizontalAbs):
2703         (WebCore::SVGPathElement::createSVGPathSegLinetoHorizontalRel):
2704         (WebCore::SVGPathElement::createSVGPathSegLinetoVerticalAbs):
2705         (WebCore::SVGPathElement::createSVGPathSegLinetoVerticalRel):
2706         (WebCore::SVGPathElement::createSVGPathSegCurvetoCubicSmoothAbs):
2707         (WebCore::SVGPathElement::createSVGPathSegCurvetoCubicSmoothRel):
2708         (WebCore::SVGPathElement::createSVGPathSegCurvetoQuadraticSmoothAbs):
2709         (WebCore::SVGPathElement::createSVGPathSegCurvetoQuadraticSmoothRel):
2710         (WebCore::SVGPathElement::svgMoveTo):
2711         (WebCore::SVGPathElement::svgLineTo):
2712         (WebCore::SVGPathElement::svgLineToHorizontal):
2713         (WebCore::SVGPathElement::svgLineToVertical):
2714         (WebCore::SVGPathElement::svgCurveToCubic):
2715         (WebCore::SVGPathElement::svgCurveToCubicSmooth):
2716         (WebCore::SVGPathElement::svgCurveToQuadratic):
2717         (WebCore::SVGPathElement::svgCurveToQuadraticSmooth):
2718         (WebCore::SVGPathElement::svgArcTo):
2719         (WebCore::SVGPathElement::parseMappedAttribute):
2720         (WebCore::SVGPathElement::pathSegList):
2721         (WebCore::SVGPathElement::normalizedPathSegList):
2722         (WebCore::SVGPathElement::animatedPathSegList):
2723         (WebCore::SVGPathElement::animatedNormalizedPathSegList):
2724         (WebCore::SVGPathElement::toPathData):
2725         * ksvg2/svg/SVGPathElement.h:
2726         (WebCore::SVGPathElement::rendererIsNeeded):
2727         * ksvg2/svg/SVGPathSeg.h:
2728         * ksvg2/svg/SVGPathSegArc.cpp:
2729
2730 2006-10-09  Rob Buis  <buis@kde.org>
2731
2732         Reviewed by aroben.
2733
2734         http://bugs.webkit.org/show_bug.cgi?id=11217
2735         Cleanup svg coding style
2736
2737         Cleanup coding style in svg shape classes.
2738
2739         * ksvg2/svg/SVGCircleElement.cpp:
2740         (WebCore::SVGCircleElement::SVGCircleElement):
2741         (WebCore::SVGCircleElement::parseMappedAttribute):
2742         (WebCore::SVGCircleElement::pushAttributeContext):
2743         * ksvg2/svg/SVGCircleElement.h:
2744         (WebCore::SVGCircleElement::rendererIsNeeded):
2745         * ksvg2/svg/SVGEllipseElement.cpp:
2746         * ksvg2/svg/SVGEllipseElement.h:
2747         (WebCore::SVGEllipseElement::rendererIsNeeded):
2748         * ksvg2/svg/SVGLineElement.cpp:
2749         (WebCore::SVGLineElement::parseMappedAttribute):
2750         (WebCore::SVGLineElement::pushAttributeContext):
2751         * ksvg2/svg/SVGLineElement.h:
2752         (WebCore::SVGLineElement::rendererIsNeeded):
2753         * ksvg2/svg/SVGPolyElement.cpp:
2754         (WebCore::SVGPolyElement::SVGPolyElement):
2755         (WebCore::SVGPolyElement::points):
2756         (WebCore::SVGPolyElement::animatedPoints):
2757         (WebCore::SVGPolyElement::parseMappedAttribute):
2758         (WebCore::SVGPolyElement::notifyAttributeChange):
2759         * ksvg2/svg/SVGPolyElement.h:
2760         (WebCore::SVGPolyElement::rendererIsNeeded):
2761         * ksvg2/svg/SVGPolygonElement.cpp:
2762         (WebCore::SVGPolygonElement::SVGPolygonElement):
2763         (WebCore::SVGPolygonElement::toPathData):
2764         * ksvg2/svg/SVGPolygonElement.h:
2765         * ksvg2/svg/SVGPolylineElement.cpp:
2766         (WebCore::SVGPolylineElement::SVGPolylineElement):
2767         (WebCore::SVGPolylineElement::toPathData):
2768         * ksvg2/svg/SVGPolylineElement.h:
2769         * ksvg2/svg/SVGRectElement.cpp:
2770         (WebCore::SVGRectElement::parseMappedAttribute):
2771         (WebCore::SVGRectElement::pushAttributeContext):
2772         * ksvg2/svg/SVGRectElement.h:
2773         (WebCore::SVGRectElement::rendererIsNeeded):
2774
2775 2006-10-08  Darin Adler  <darin@apple.com>
2776
2777         Reviewed by Maciej.
2778
2779         - added a bit more WebCoreSystemInterface
2780
2781             wkGetNSURLResponseCalculatedExpiration
2782             wkGetNSURLResponseLastModifiedDate
2783             wkGetNSURLResponseMustRevalidate
2784
2785         * WebCore.exp: Added the new symbols.
2786         * platform/mac/WebCoreSystemInterface.h: Ditto.
2787         * platform/mac/WebCoreSystemInterface.mm: Ditto.
2788
2789         - quiet down the code generation script
2790
2791         * bindings/scripts/CodeGenerator.pm:
2792
2793 2006-10-08  Maciej Stachowiak  <mjs@apple.com>
2794
2795         Reviewed by Darin.
2796
2797         - more code laundering - add wkSupportsMultipartXMixedReplace
2798
2799         * WebCore.exp:
2800         * platform/mac/WebCoreSystemInterface.h:
2801         * platform/mac/WebCoreSystemInterface.mm:
2802
2803 2006-10-08  Nikolas Zimmermann  <zimmermann@kde.org>
2804
2805         Reviewed by Darin and Oliver.
2806
2807         Fix artefacts when drawing polygons, most noticeable when painting <hr> elements.
2808
2809         * platform/qt/GraphicsContextQt.cpp: Fix wrong operator<< usage.
2810         (WebCore::GraphicsContext::drawConvexPolygon):
2811
2812 2006-10-08  Anders Carlsson  <acarlsson@apple.com>
2813
2814         Reviewed by Darin.
2815
2816         * page/Frame.cpp:
2817         (WebCore::Frame::submitForm):
2818         No need to use latin1() here.
2819
2820 2006-10-08  Nikolas Zimmermann  <zimmermann@kde.org>
2821
2822         Reviewed by Darin.
2823
2824         Kill warnings when generating IDL files on Qt/Linux, as the
2825         SOURCE_ROOT environment variable is not defined (and not needed) for us.
2826
2827         * bindings/scripts/CodeGenerator.pm:
2828
2829 2006-10-08  Maciej Stachowiak  <mjs@apple.com>
2830
2831         Reviewed by Darin.
2832
2833         - split didNotOpenURL: into general and page-cache-specific parts
2834
2835         * bridge/mac/WebCoreFrameBridge.h:
2836         * bridge/mac/WebCoreFrameBridge.mm:
2837         (-[WebCoreFrameBridge didNotOpenURL:]):
2838         (-[WebCoreFrameBridge invalidatePageCache:]):
2839
2840 2006-10-08  Anders Carlsson  <acarlsson@apple.com>
2841
2842         Reviewed by Darin.
2843
2844         * loader/loader.cpp:
2845         Remove DeprecatedStringList.h include.
2846         
2847         * page/Frame.cpp:
2848         (WebCore::Frame::submitForm):
2849         Don't remove "attach" from mailto URLs, we don't do it anywhere else.
2850
2851 2006-10-08  Sam Weinig  <sam.weinig@gmail.com>
2852
2853         Reviewed by Darin.
2854
2855         Patch for http://bugs.webkit.org/show_bug.cgi?id=11215
2856         Yet another round of Objective-C SVG DOM bindings auto-generation
2857
2858         - Auto-generate DOMSVGPatternElement, DOMSVGPointList, DOMSVGPolygonElement, 
2859           DOMSVGPolylineElement, DOMSVGRadialGradientElement, DOMSVGRenderingIntent,
2860           DOMSVGScriptElement, DOMSVGSetElement, DOMSVGStopElement, DOMSVGSwitchElement, 
2861           DOMSVGSymbolElement, DOMSVGTRefElement, DOMSVGTSpanElement, 
2862           DOMSVGTextContentElement, DOMSVGTextElement, DOMSVGTextPositioningElement, 
2863           DOMSVGTitleElement, DOMSVGUnitTypes, DOMSVGUseElement, DOMSVGViewElement, 
2864           DOMSVGZoomAndPan and DOMSVGZoomEvent.
2865
2866         - Auto-generate the implementations of DOMHTMLAppletElement and DOMHTMLEmbedElement
2867           using the new [ConvertFromString] property.
2868
2869         - Add forward declarations for NS* types to auto-generated classes.
2870
2871         * DerivedSources.make:
2872         * WebCore.xcodeproj/project.pbxproj:
2873         * bindings/objc/DOMHTMLAppletElement.mm: Removed.
2874         * bindings/objc/DOMHTMLEmbedElement.mm: Removed.
2875         * bindings/objc/DOMInternal.h:
2876         * bindings/objc/DOMSVG.h:
2877         * bindings/scripts/CodeGeneratorObjC.pm:
2878         * html/HTMLAppletElement.idl:
2879         * html/HTMLEmbedElement.idl:
2880         * ksvg2/svg/SVGPatternElement.idl:
2881         * ksvg2/svg/SVGPolygonElement.idl:
2882         * ksvg2/svg/SVGPolylineElement.idl:
2883         * ksvg2/svg/SVGRadialGradientElement.idl:
2884         * ksvg2/svg/SVGRenderingIntent.idl:
2885         * ksvg2/svg/SVGScriptElement.idl:
2886         * ksvg2/svg/SVGSetElement.idl:
2887         * ksvg2/svg/SVGStopElement.idl:
2888         * ksvg2/svg/SVGSwitchElement.idl:
2889         * ksvg2/svg/SVGSymbolElement.idl:
2890         * ksvg2/svg/SVGTRefElement.idl:
2891         * ksvg2/svg/SVGTSpanElement.idl:
2892         * ksvg2/svg/SVGTextContentElement.idl:
2893         * ksvg2/svg/SVGTextElement.idl:
2894         * ksvg2/svg/SVGTextPositioningElement.idl:
2895         * ksvg2/svg/SVGTitleElement.idl:
2896         * ksvg2/svg/SVGUseElement.idl:
2897         * ksvg2/svg/SVGViewElement.idl:
2898         * ksvg2/svg/SVGZoomEvent.idl:
2899
2900 2006-10-07  Anders Carlsson  <acarlsson@apple.com>
2901
2902         Reviewed by Maciej.
2903
2904         Remove crossDomain, it was unused and is one of the last functions that use DeprecatedStringList.        
2905         * loader/loader.cpp:
2906         (WebCore::Loader::servePendingRequests):
2907         
2908 2006-10-07  Anders Carlsson  <acarlsson@apple.com>
2909
2910         Reviewed by Darin.
2911
2912         Convert a bunch of RefPtr<StringImpl> to String.
2913         
2914         * bridge/mac/FrameMac.h:
2915         * bridge/mac/FrameMac.mm:
2916         (WebCore::FrameMac::didTellBridgeAboutLoad):
2917         (WebCore::FrameMac::haveToldBridgeAboutLoad):
2918         * dom/BeforeUnloadEvent.cpp:
2919         (WebCore::BeforeUnloadEvent::storeResult):
2920         * dom/BeforeUnloadEvent.h:
2921         (WebCore::BeforeUnloadEvent::result):
2922         * dom/Document.cpp:
2923         (WebCore::Document::createEntityReference):
2924         * dom/Entity.cpp:
2925         (WebCore::Entity::Entity):
2926         (WebCore::Entity::nodeName):
2927         (WebCore::Entity::toString):
2928         * dom/Entity.h:
2929         (WebCore::Entity::publicId):
2930         (WebCore::Entity::systemId):
2931         (WebCore::Entity::notationName):
2932         * dom/EntityReference.cpp:
2933         (WebCore::EntityReference::EntityReference):
2934         (WebCore::EntityReference::nodeName):
2935         (WebCore::EntityReference::cloneNode):
2936         (WebCore::EntityReference::toString):
2937         * dom/EntityReference.h:
2938         * dom/KeyboardEvent.cpp:
2939         (WebCore::KeyboardEvent::KeyboardEvent):
2940         (WebCore::KeyboardEvent::initKeyboardEvent):
2941         * dom/KeyboardEvent.h:
2942         (WebCore::KeyboardEvent::keyIdentifier):
2943         * dom/MutationEvent.cpp:
2944         (WebCore::MutationEvent::MutationEvent):
2945         (WebCore::MutationEvent::initMutationEvent):
2946         * dom/MutationEvent.h:
2947         (WebCore::MutationEvent::prevValue):
2948         (WebCore::MutationEvent::newValue):
2949         (WebCore::MutationEvent::attrName):
2950         * dom/Notation.cpp:
2951         (WebCore::Notation::Notation):
2952         (WebCore::Notation::nodeName):
2953         * dom/Notation.h:
2954         (WebCore::Notation::publicId):
2955         (WebCore::Notation::systemId):
2956         * dom/ProcessingInstruction.cpp:
2957         (WebCore::ProcessingInstruction::ProcessingInstruction):
2958         (WebCore::ProcessingInstruction::setData):
2959         (WebCore::ProcessingInstruction::nodeName):
2960         (WebCore::ProcessingInstruction::nodeValue):
2961         (WebCore::ProcessingInstruction::cloneNode):
2962         (WebCore::ProcessingInstruction::checkStyleSheet):
2963         (WebCore::ProcessingInstruction::toString):
2964         * dom/ProcessingInstruction.h:
2965         (WebCore::ProcessingInstruction::target):
2966         (WebCore::ProcessingInstruction::data):
2967         (WebCore::ProcessingInstruction::localHref):
2968
2969 2006-10-07  Sam Weinig  <sam.weinig@gmail.com>
2970
2971         Reviewed by Tim H.
2972
2973         Patch for http://bugs.webkit.org/show_bug.cgi?id=11206
2974         10 more SVG Objective-C auto-generated bindings
2975
2976         - Auto-generate DOMSVGFilterElement, DOMSVGFitToViewBox, 
2977           DOMSVGForeignObjectElement, DOMSVGGElement, DOMSVGGradientElement,
2978           DOMSVGImageElement, DOMSVGLineElement, DOMSVGLinearGradientElement, 
2979           DOMSVGMarkerElement, DOMSVGMaskElement and DOMSVGPaint.
2980
2981         - Auto-generate the text method for DOMRange.
2982
2983         * DerivedSources.make:
2984         * WebCore.xcodeproj/project.pbxproj:
2985         * bindings/objc/DOM.mm:
2986         * bindings/objc/DOMExtensions.h:
2987         * bindings/objc/DOMInternal.h:
2988         * bindings/objc/DOMPrivate.h:
2989         * bindings/objc/DOMRGBColor.mm:
2990         * bindings/objc/DOMSVG.h:
2991         * bindings/objc/PublicDOMInterfaces.h:
2992         * bindings/scripts/CodeGeneratorObjC.pm:
2993         * dom/Range.idl:
2994         * ksvg2/svg/SVGFilterElement.cpp:
2995         * ksvg2/svg/SVGFilterElement.h:
2996         * ksvg2/svg/SVGFilterElement.idl:
2997         * ksvg2/svg/SVGForeignObjectElement.idl:
2998         * ksvg2/svg/SVGGElement.idl:
2999         * ksvg2/svg/SVGGradientElement.idl:
3000         * ksvg2/svg/SVGImageElement.idl:
3001         * ksvg2/svg/SVGLineElement.idl:
3002         * ksvg2/svg/SVGLinearGradientElement.idl:
3003         * ksvg2/svg/SVGMarkerElement.idl:
3004         * ksvg2/svg/SVGMaskElement.idl:
3005         * ksvg2/svg/SVGPaint.idl:
3006
3007 2006-10-07  Sam Weinig  <sam.weinig@gmail.com>
3008
3009         Reviewed by Tim H.
3010
3011         Patch for http://bugs.webkit.org/show_bug.cgi?id=11198
3012         Auto-generate a few more Objective-C DOM interfaces
3013
3014         - Fully auto-generate DOMAbstractView and DOMRange.
3015
3016         - Auto-generate just the interface for DOMRGBColor.
3017
3018         - Add DOMRanges.h as the new top level file for Ranges
3019           module.
3020
3021         - Add DOMRanges.h and DOMXPath.h to DOM.mm
3022
3023         * DerivedSources.make:
3024         * WebCore.xcodeproj/project.pbxproj:
3025         * bindings/objc/DOM.h:
3026         * bindings/objc/DOM.mm:
3027         * bindings/objc/DOMAbstractView.h: Removed.
3028         * bindings/objc/DOMAbstractView.mm: Removed.
3029         * bindings/objc/DOMInternal.h:
3030         * bindings/objc/DOMPrivate.h:
3031         * bindings/objc/DOMRGBColor.h: Removed.
3032         * bindings/objc/DOMRGBColor.mm:
3033         * bindings/objc/DOMRange.h: Removed.
3034         * bindings/objc/DOMRanges.h: Added.
3035         * bindings/objc/PublicDOMInterfaces.h:
3036         * bindings/scripts/CodeGeneratorObjC.pm:
3037         * css/RGBColor.idl:
3038         * dom/Range.idl:
3039         * page/AbstractView.idl: Added.
3040
3041 2006-10-07  Andrew Wellington  <proton@wiretapped.net>
3042
3043         Reviewed by Eric.
3044
3045         Bug 10837: REGRESSION: Yahoo New Charts Crashes WebKit
3046         http://bugzilla.opendarwin.org/show_bug.cgi?id=10837
3047
3048         Return null when there is no frame. This matches Firefox.
3049
3050         * bindings/js/kjs_html.cpp:
3051         (KJS::JSHTMLDocument::getValueProperty):
3052
3053 2006-10-07  David Hyatt  <hyatt@apple.com>
3054
3055         Implement scroll corner painting (a white rect fill) for overflow areas to cover up
3056         scrollbar joins properly.
3057
3058         Refactor painting of scrollbars and resizers into common functions.  Eliminate the
3059         extra 20 bytes per RenderLayer by cutting out m_resizerImage and m_resizerControlRect.
3060
3061         Reviewed by mitz
3062
3063         * page/FrameView.cpp:
3064         (WebCore::selectCursor):
3065         (WebCore::FrameView::handleMouseMoveEvent):
3066         * platform/mac/PlatformScrollBar.h:
3067         (WebCore::PlatformScrollbar::horizontalScrollbarHeight):
3068         (WebCore::PlatformScrollbar::verticalScrollbarWidth):
3069         * rendering/RenderLayer.cpp:
3070         (WebCore::RenderLayer::RenderLayer):
3071         (WebCore::RenderLayer::~RenderLayer):
3072         (WebCore::RenderLayer::updateLayerPositions):
3073         (WebCore::scrollCornerRect):
3074         (WebCore::RenderLayer::positionOverflowControls):
3075         (WebCore::RenderLayer::paintOverflowControls):
3076         (WebCore::RenderLayer::isPointInResizeControl):
3077         (WebCore::RenderLayer::paintLayer):
3078         * rendering/RenderLayer.h:
3079
3080 2006-10-07  Mark Rowe  <bdash@webkit.org>
3081
3082         Reviewed by Mitz.
3083
3084         Linux/Gdk build fixes, primarily consisting of s/ScrollBar/Scrollbar/ and
3085         matching recent ResourceLoader changes.
3086
3087         * platform/gdk/FrameGdk.cpp:
3088         (WebCore::FrameGdk::openURL):
3089         (WebCore::FrameGdk::urlSelected):
3090         * platform/gdk/PlatformScrollBar.h:
3091         * platform/gdk/ResourceLoaderCurl.cpp:
3092         (WebCore::ResourceLoader::start):
3093         * platform/gdk/ScrollViewGdk.cpp:
3094         (WebCore::ScrollView::ScrollViewPrivate::ScrollViewPrivate):
3095         (WebCore::ScrollView::resizeContents):
3096         (WebCore::ScrollView::scrollBy):
3097         (WebCore::ScrollView::hScrollbarMode):
3098         (WebCore::ScrollView::vScrollbarMode):
3099         (WebCore::ScrollView::suppressScrollbars):
3100         (WebCore::ScrollView::setHScrollbarMode):
3101         (WebCore::ScrollView::setVScrollbarMode):
3102         (WebCore::ScrollView::setScrollbarsMode):
3103         * platform/gdk/TemporaryLinkStubs.cpp:
3104         (FrameView::passMousePressEventToScrollbar):
3105         (Widget::removeFromParent):
3106         (ScrollView::addChild):
3107         (ScrollView::updateScrollbars):
3108         (ScrollView::scrollbarUnderMouse):
3109         (PlatformScrollbar::PlatformScrollbar):
3110         (PlatformScrollbar::~PlatformScrollbar):
3111         (PlatformScrollbar::width):
3112         (PlatformScrollbar::height):
3113         (PlatformScrollbar::setEnabled):
3114         (PlatformScrollbar::paint):
3115         (PlatformScrollbar::updateThumbPosition):
3116         (PlatformScrollbar::updateThumbProportion):
3117         (PlatformScrollbar::setRect):
3118         (Scrollbar::Scrollbar):
3119         (Scrollbar::setSteps):
3120         (Scrollbar::scroll):
3121         (Scrollbar::setValue):
3122         (Scrollbar::setProportion):
3123
3124 2006-10-06  Dave Hyatt  <hyatt@apple.com>
3125
3126         Implement a new method for obtaining accurate clip rectangles that can be used by plugins to properly clip.
3127
3128         * page/FrameView.cpp:
3129         (WebCore::FrameView::windowClipRect):
3130         * page/FrameView.h:
3131         * platform/ScrollView.h:
3132         * platform/Widget.cpp:
3133         (WebCore::Widget::windowClipRect):
3134         * platform/Widget.h:
3135         (WebCore::Widget::geometryChanged):
3136         (WebCore::Widget::handleMouseMoveEvent):
3137         (WebCore::Widget::handleMouseReleaseEvent):
3138         * platform/mac/ScrollViewMac.mm:
3139         (WebCore::ScrollView::addChild):
3140         * rendering/RenderLayer.cpp:
3141         (WebCore::RenderLayer::documentClipRect):
3142         * rendering/RenderLayer.h:
3143
3144 2006-10-06  Steve Falkenburg  <sfalken@apple.com>
3145
3146         Reviewed by Adam.
3147
3148         Add another method we'll need for scrollbar dodging
3149
3150         * platform/ScrollView.h:
3151         * platform/win/TemporaryLinkStubs.cpp:
3152         (ScrollView::resizerOverlapsContent):
3153
3154 2006-10-06  Sam Weinig  <sam.weinig@gmail.com>
3155
3156         Reviewed by Tim H.
3157
3158         Patch for http://bugs.webkit.org/show_bug.cgi?id=11191
3159         Auto-generate the interfaces even for Objective-C DOM 
3160         bindings that need custom implementations
3161
3162         - Fully auto-generate DOMEventTarget, DOMNodeFilter and 
3163           DOMHTMLOptionElement.
3164
3165         - Auto-generate just the interface for DOMHTMLAppletElement,
3166           DOMHTMLEmbedElement, DOMSVGNumber, DOMSVGPoint and DOMSVGRect
3167           using the new IDL property ObjCCustomImplementation.
3168
3169         * DerivedSources.make:
3170         * WebCore.xcodeproj/project.pbxproj:
3171         * bindings/objc/DOMEventTarget.h: Removed.
3172         * bindings/objc/DOMHTMLAppletElement.h: Removed.
3173         * bindings/objc/DOMHTMLEmbedElement.h: Removed.
3174         * bindings/objc/DOMHTMLOptionElement.h: Removed.
3175         * bindings/objc/DOMHTMLOptionElement.mm: Removed.
3176         * bindings/objc/DOMInternal.h:
3177         * bindings/objc/DOMNodeFilter.h: Removed.
3178         * bindings/objc/DOMSVGNumber.h: Removed.
3179         * bindings/objc/DOMSVGPoint.h: Removed.
3180         * bindings/objc/DOMSVGPoint.mm:
3181         (-[DOMSVGPoint matrixTransform:]):
3182         * bindings/objc/DOMSVGRect.h: Removed.
3183         * bindings/objc/PublicDOMInterfaces.h:
3184         * bindings/scripts/CodeGeneratorObjC.pm:
3185         * dom/EventTarget.idl:
3186         * html/HTMLAppletElement.idl:
3187         * html/HTMLEmbedElement.idl:
3188         * html/HTMLOptionElement.idl:
3189         * ksvg2/svg/SVGNumber.idl:
3190         * ksvg2/svg/SVGPoint.idl:
3191         * ksvg2/svg/SVGRect.idl:
3192
3193 2006-10-06  Nikolas Zimmermann  <zimmermann@kde.org>
3194
3195         Reviewed by Tim H.
3196
3197         Make Qt/Linux compile again completly.
3198
3199         * platform/qt/WidgetQt.cpp:
3200         (WebCore::Widget::removeFromParent):
3201
3202 2006-10-06  Nikolas Zimmermann  <zimmermann@kde.org>
3203
3204         Reviewed by Tim H.
3205
3206         Fix Qt/Linux build by adapting the s/ScrollBar/Scrollbar/ patch.
3207
3208         * platform/qt/PlatformScrollBar.h:
3209         * platform/qt/ScrollViewQt.cpp:
3210         (WebCore::ScrollView::hScrollbarMode):
3211         (WebCore::ScrollView::vScrollbarMode):
3212         (WebCore::ScrollView::suppressScrollbars):
3213         (WebCore::ScrollView::setHScrollbarMode):
3214         (WebCore::ScrollView::setVScrollbarMode):
3215         (WebCore::ScrollView::setScrollbarsMode):
3216         (WebCore::ScrollView::scrollbarUnderMouse):
3217         * platform/qt/TemporaryLinkStubs.cpp:
3218         (WebCore::Scrollbar::Scrollbar):
3219         (WebCore::Scrollbar::setSteps):
3220         (WebCore::Scrollbar::scroll):
3221         (WebCore::Scrollbar::setValue):
3222         (WebCore::Scrollbar::setProportion):
3223         (WebCore::PlatformScrollbar::PlatformScrollbar):
3224         (WebCore::PlatformScrollbar::~PlatformScrollbar):
3225         (WebCore::PlatformScrollbar::width):
3226         (WebCore::PlatformScrollbar::height):
3227         (WebCore::PlatformScrollbar::setEnabled):
3228         (WebCore::PlatformScrollbar::paint):
3229         (WebCore::PlatformScrollbar::updateThumbPosition):
3230         (WebCore::PlatformScrollbar::updateThumbProportion):
3231         (WebCore::PlatformScrollbar::setRect):
3232         (FrameView::passMousePressEventToScrollbar):
3233
3234 2006-10-06  Sam Weinig  <sam.weinig@gmail.com>
3235
3236         Reviewed by Tim H.
3237
3238         Patch for http://bugs.webkit.org/show_bug.cgi?id=11177
3239         Another round of Objective-C SVG DOM bindings auto-generation
3240
3241         - Auto-generate DOMSVGAnimatedNumberList, DOMSVGAnimatedRect, 
3242           DOMSVGComponentTransferFunctionElement, DOMSVGFEBlendElement, 
3243           DOMSVGFEColorMatrixElement, DOMSVGFEComponentTransferElement, 
3244           DOMSVGFECompositeElement, DOMSVGFEDiffuseLightingElement,
3245           DOMSVGFEDisplacementMapElement, DOMSVGFEDistantLightElement, 
3246           DOMSVGFEFloodElement, DOMSVGFEFuncAElement, DOMSVGFEFuncBElement, 
3247           DOMSVGFEFuncGElement, DOMSVGFEFuncRElement, DOMSVGFEGaussianBlurElement, 
3248           DOMSVGFEImageElement, DOMSVGFEMergeElement, DOMSVGFEMergeNodeElement, 
3249           DOMSVGFEOffsetElement, DOMSVGFEPointLightElement, 
3250           DOMSVGFESpecularLightingElement, DOMSVGFESpotLightElement, 
3251           DOMSVGFETileElement, DOMSVGFETurbulenceElement, 
3252           DOMSVGFilterPrimitiveStandardAttributes and DOMSVGNumberList. 
3253
3254         - Adds interfaces and implementation stubs for DOMSVGNumber, DOMSVGPoint
3255           and DOMSVGRect.
3256
3257         - IDL clean up.
3258
3259         - Make numOctaves in SVGFETurbulenceElement use a long instead of an int
3260           in it's macro declaration and definition.
3261
3262         * DerivedSources.make:
3263         * WebCore.xcodeproj/project.pbxproj:
3264         * bindings/objc/DOMCSS.mm:
3265         (+[DOMCSSValue _CSSValueWith:WebCore::]):
3266         * bindings/objc/DOMInternal.h:
3267         * bindings/objc/DOMSVG.h:
3268         * bindings/objc/DOMSVGNumber.h: Added.
3269         * bindings/objc/DOMSVGNumber.mm: Added.
3270         (-[DOMSVGNumber dealloc]):
3271         (-[DOMSVGNumber finalize]):
3272         (-[DOMSVGNumber value]):
3273         (-[DOMSVGNumber setValue:]):
3274         (-[DOMSVGNumber _SVGNumber]):
3275         (-[DOMSVGNumber _initWithFloat:]):
3276         (+[DOMSVGNumber _SVGNumberWith:]):
3277         * bindings/objc/DOMSVGPoint.h: Added.
3278         * bindings/objc/DOMSVGPoint.mm: Added.
3279         (-[DOMSVGPoint dealloc]):
3280         (-[DOMSVGPoint finalize]):
3281         (-[DOMSVGPoint x]):
3282         (-[DOMSVGPoint setX:]):
3283         (-[DOMSVGPoint y]):
3284         (-[DOMSVGPoint setY:]):
3285         (-[DOMSVGPoint WebCore::]):
3286         (-[DOMSVGPoint _initWithFloatPoint:WebCore::]):
3287         (+[DOMSVGPoint _SVGPointWith:WebCore::]):
3288         * bindings/objc/DOMSVGRect.h: Added.
3289         * bindings/objc/DOMSVGRect.mm: Added.
3290         (-[DOMSVGRect dealloc]):
3291         (-[DOMSVGRect finalize]):
3292         (-[DOMSVGRect x]):
3293         (-[DOMSVGRect setX:]):
3294         (-[DOMSVGRect y]):
3295         (-[DOMSVGRect setY:]):
3296         (-[DOMSVGRect width]):
3297         (-[DOMSVGRect setWidth:]):
3298         (-[DOMSVGRect height]):
3299         (-[DOMSVGRect setHeight:]):
3300         (-[DOMSVGRect WebCore::]):
3301         (-[DOMSVGRect _initWithFloatRect:WebCore::]):
3302         (+[DOMSVGRect _SVGRectWith:WebCore::]):
3303         * bindings/scripts/CodeGeneratorObjC.pm:
3304         * ksvg2/svg/SVGAnimatedNumberList.idl:
3305         * ksvg2/svg/SVGAnimatedRect.idl:
3306         * ksvg2/svg/SVGComponentTransferFunctionElement.idl:
3307         * ksvg2/svg/SVGCursorElement.idl:
3308         * ksvg2/svg/SVGFEBlendElement.idl:
3309         * ksvg2/svg/SVGFEColorMatrixElement.idl:
3310         * ksvg2/svg/SVGFEComponentTransferElement.idl:
3311         * ksvg2/svg/SVGFECompositeElement.idl:
3312         * ksvg2/svg/SVGFEDiffuseLightingElement.idl:
3313         * ksvg2/svg/SVGFEDisplacementMapElement.idl:
3314         * ksvg2/svg/SVGFEDistantLightElement.idl:
3315         * ksvg2/svg/SVGFEFloodElement.idl:
3316         * ksvg2/svg/SVGFEFuncAElement.idl:
3317         * ksvg2/svg/SVGFEFuncBElement.idl:
3318         * ksvg2/svg/SVGFEFuncGElement.idl:
3319         * ksvg2/svg/SVGFEFuncRElement.idl:
3320         * ksvg2/svg/SVGFEGaussianBlurElement.idl:
3321         * ksvg2/svg/SVGFEImageElement.idl:
3322         * ksvg2/svg/SVGFEMergeElement.idl:
3323         * ksvg2/svg/SVGFEMergeNodeElement.idl:
3324         * ksvg2/svg/SVGFEOffsetElement.idl:
3325         * ksvg2/svg/SVGFEPointLightElement.idl:
3326         * ksvg2/svg/SVGFESpecularLightingElement.idl:
3327         * ksvg2/svg/SVGFESpotLightElement.idl:
3328         * ksvg2/svg/SVGFETileElement.idl:
3329         * ksvg2/svg/SVGFETurbulenceElement.cpp:
3330         * ksvg2/svg/SVGFETurbulenceElement.h:
3331         * ksvg2/svg/SVGFETurbulenceElement.idl:
3332         * ksvg2/svg/SVGNumberList.idl:
3333
3334 2006-10-06  Adam Roben  <aroben@apple.com>
3335
3336         Backing out my previous change.
3337
3338         * WebCore.xcodeproj/project.pbxproj:
3339         * page/FrameView.cpp:
3340         (WebCore::FrameView::adjustViewSize):
3341
3342 2006-10-06  Adam Roben  <aroben@apple.com>
3343
3344         Build fix.
3345
3346         * WebCore.xcodeproj/project.pbxproj:
3347         * page/FrameView.cpp:
3348         (WebCore::FrameView::windowResizerRect):
3349
3350 2006-10-06  Adam Roben  <aroben@apple.com>
3351
3352         Reviewed by Maciej.
3353
3354         More loader tweaks.
3355
3356         * platform/ResourceLoader.h:
3357         * platform/ResourceLoaderInternal.h:
3358         (WebCore::ResourceLoaderInternal::ResourceLoaderInternal):
3359         * platform/win/TemporaryLinkStubs.cpp:
3360         (WebCore::ResourceLoader::newHTTPRequest):
3361
3362 2006-10-05  Steve Falkenburg  <sfalken@apple.com>
3363
3364         Reviewed by aroben.
3365
3366         Stub out some methods that we'll be able to use to dodge a window resizer.
3367
3368         * bridge/win/FrameWin.h:
3369         * page/Frame.h:
3370         (WebCore::Frame::windowResizerRect):
3371         * page/FrameView.h:
3372         * platform/ScrollView.h:
3373         (WebCore::ScrollView::windowResizerRect):
3374         * platform/Widget.h:
3375         * platform/win/TemporaryLinkStubs.cpp:
3376         (FrameView::windowResizerRect):
3377         (Widget::setParent):
3378         (Widget::parent):
3379         (FrameWin::windowResizerRect):
3380
3381 2006-10-05  Dave Hyatt  <hyatt@apple.com>
3382
3383         Stub out setFrameGeometry.
3384         
3385         * platform/ScrollView.h:
3386
3387 2006-10-05  Adele Peterson  <adele@apple.com>
3388
3389         Reverting autoscroll fix.  I need to rework this a little.
3390
3391         * page/Frame.cpp:
3392         (WebCore::Frame::handleAutoscroll):
3393         (WebCore::Frame::autoscrollTimerFired):
3394         (WebCore::Frame::stopAutoscrollTimer):
3395         * page/Frame.h:
3396         * rendering/RenderLayer.cpp:
3397         (WebCore::RenderLayer::~RenderLayer):
3398         * rendering/RenderListBox.cpp:
3399         (WebCore::RenderListBox::~RenderListBox):
3400
3401 2006-10-05  Alice  <alice.liu@apple.com>
3402
3403         Reviewed by Adam.
3404
3405         Fixed <rdar://problem/4731778>
3406
3407         * editing/CommandByName.cpp:
3408         (WebCore::Frame::Command::):
3409         was calling the wrong enabledFn for arrow selection and navigation
3410
3411 2006-10-05  Adele Peterson  <adele@apple.com>
3412
3413         Reviewed by Maciej.
3414
3415         - Fix for <rdar://problem/4707489> After timers fix, crash below RenderLayer::autoscroll after moving/destroying active <input type="text">
3416           and <rdar://problem/4707519> After timers fix, crash below RenderLayer::autoscroll after moving/destroying active textarea
3417
3418         * rendering/RenderLayer.cpp: (WebCore::RenderLayer::~RenderLayer): If the renderer is being autoscrolled, then stop the autoscroll timer.
3419         * rendering/RenderListBox.cpp: (WebCore::RenderListBox::~RenderListBox): ditto.
3420
3421         * page/Frame.cpp: Added getter and setter for the renderer being autoscrolled.
3422         (WebCore::Frame::handleAutoscroll):
3423         (WebCore::Frame::autoscrollTimerFired):
3424         (WebCore::Frame::autoscrollRenderer):
3425         (WebCore::Frame::setAutoscrollRenderer):
3426         (WebCore::Frame::stopAutoscrollTimer):
3427         * page/Frame.h:
3428
3429 2006-10-05  Don Gibson  <dgibson77@gmail.com>
3430
3431         Reviewed by Eric.
3432
3433         Fix win32 build bustage after ggaren's Scrollbar renaming changes.
3434         Properly include PlatformScrollBar.h in WbCore.vcproj.
3435         Clean up WidgetWin.cpp a bit.
3436
3437         * WebCore.vcproj/WebCore/WebCore.vcproj:
3438         * platform/Widget.h:
3439         * platform/win/PlatformScrollBar.h:
3440         * platform/win/ScrollViewWin.cpp:
3441         (WebCore::ScrollView::ScrollViewPrivate::ScrollViewPrivate):
3442         (WebCore::ScrollView::resizeContents):
3443         (WebCore::ScrollView::scrollBy):
3444         (WebCore::ScrollView::hScrollbarMode):
3445         (WebCore::ScrollView::vScrollbarMode):
3446         (WebCore::ScrollView::suppressScrollbars):
3447         (WebCore::ScrollView::setHScrollbarMode):
3448         (WebCore::ScrollView::setVScrollbarMode):
3449         (WebCore::ScrollView::setScrollbarsMode):
3450         (WebCore::ScrollView::updateScrollbars):
3451         * platform/win/TemporaryLinkStubs.cpp:
3452         (FrameView::passMousePressEventToScrollbar):
3453         (Widget::removeFromParent):
3454         (ScrollView::scrollbarUnderMouse):
3455         (PlatformScrollbar::PlatformScrollbar):
3456         (PlatformScrollbar::~PlatformScrollbar):
3457         (PlatformScrollbar::width):
3458         (PlatformScrollbar::height):
3459         (PlatformScrollbar::setEnabled):
3460         (PlatformScrollbar::paint):
3461         (PlatformScrollbar::updateThumbPosition):
3462         (PlatformScrollbar::updateThumbProportion):
3463         (PlatformScrollbar::setRect):
3464         (Scrollbar::Scrollbar):
3465         (Scrollbar::setSteps):
3466         (Scrollbar::scroll):
3467         (Scrollbar::setValue):
3468         (Scrollbar::setProportion):
3469         * platform/win/WidgetWin.cpp:
3470         (WebCore::WidgetPrivate::WidgetPrivate):
3471         (WebCore::Widget::Widget):
3472         (WebCore::Widget::setContainingWindow):
3473         (WebCore::Widget::containingWindow):
3474
3475 2006-10-05  Geoffrey Garen  <ggaren@apple.com>
3476
3477         build fix.
3478         
3479         * WebCore.xcodeproj/project.pbxproj:
3480         * bridge/mac/BrowserExtensionMac.mm:
3481         (WebCore::BrowserExtensionMac::createNewWindow):
3482         * bridge/mac/FrameMac.mm:
3483         (WebCore::FrameMac::createFrame):
3484         * bridge/mac/FrameViewMac.mm:
3485         (WebCore::FrameView::passMousePressEventToScrollbar):
3486         * bridge/mac/WebCoreFrameBridge.mm:
3487         (-[WebCoreFrameBridge installInFrame:]):
3488         * bridge/mac/WebCoreFrameView.h:
3489         * platform/ScrollBar.cpp:
3490         * platform/Widget.h:
3491         * platform/mac/PlatformScrollBar.h:
3492         * platform/mac/PlatformScrollBarMac.mm:
3493         (NSControlSizeForScrollBarControlSize):
3494         (-[WebCoreScrollBar initWithPlatformScrollbar:]):
3495         (-[WebCoreScrollBar detachPlatformScrollbar]):
3496         (-[WebCoreScrollBar scroll:]):
3497         (-[WebCoreScrollBar widget]):
3498         (WebCore::PlatformScrollbar::PlatformScrollbar):
3499         (WebCore::PlatformScrollbar::~PlatformScrollbar):
3500         (WebCore::PlatformScrollbar::updateThumbPosition):
3501         (WebCore::PlatformScrollbar::updateThumbProportion):
3502         (WebCore::PlatformScrollbar::scrollbarHit):
3503         (WebCore::PlatformScrollbar::width):
3504         (WebCore::PlatformScrollbar::height):
3505         (WebCore::PlatformScrollbar::setRect):
3506         (WebCore::PlatformScrollbar::setEnabled):
3507         (WebCore::PlatformScrollbar::paint):
3508         * platform/mac/ScrollViewMac.mm:
3509         (WebCore::ScrollView::setVScrollbarMode):
3510         (WebCore::ScrollView::setHScrollbarMode):
3511         (WebCore::ScrollView::setScrollbarsMode):
3512         (WebCore::ScrollView::vScrollbarMode):
3513         (WebCore::ScrollView::hScrollbarMode):
3514         (WebCore::ScrollView::suppressScrollbars):
3515         (WebCore::ScrollView::scrollbarUnderMouse):
3516         * platform/mac/WidgetMac.mm:
3517         (WebCore::Widget::removeFromParent):
3518         * rendering/RenderLayer.cpp:
3519         (WebCore::RenderLayer::destroyScrollbar):
3520
3521 2006-10-05  Geoffrey Garen  <ggaren@apple.com>
3522
3523         build fix.
3524         
3525         * platform/Widget.h:
3526         * rendering/RenderLayer.cpp:
3527         (WebCore::RenderLayer::destroyScrollbar):
3528
3529 2006-10-06  Mitz Pettel  <mitz@webkit.org>
3530
3531         http://bugs.webkit.org/show_bug.cgi?id=8276
3532         Fix broken manual test added back in r13990.
3533
3534         Add resource forks for test resources.
3535
3536         * manual-tests/resources/plain-text-paste/._1.textClipping: Added.
3537         * manual-tests/resources/plain-text-paste/._2.textClipping: Added.
3538         * manual-tests/resources/plain-text-paste/._4.txt: Added.
3539         * manual-tests/resources/plain-text-paste/._5.webloc: Added.
3540
3541 2006-10-05  David Hyatt  <hyatt@apple.com>
3542
3543         Rename addClip to clip.
3544
3545         Reviewed by darin
3546
3547         * kcanvas/RenderForeignObject.cpp:
3548         (WebCore::RenderForeignObject::paint):
3549         * kcanvas/RenderSVGContainer.cpp:
3550         (WebCore::RenderSVGContainer::paint):
3551         * kcanvas/RenderSVGImage.cpp:
3552         (WebCore::RenderSVGImage::paint):
3553         * platform/GraphicsContext.h:
3554         * platform/cairo/GraphicsContextCairo.cpp:
3555         (WebCore::GraphicsContext::clip):
3556         * platform/cg/GraphicsContextCG.cpp:
3557         (WebCore::GraphicsContext::savePlatformState):
3558         (WebCore::GraphicsContext::restorePlatformState):
3559         (WebCore::GraphicsContext::clip):
3560         (WebCore::GraphicsContext::addRoundedRectClip):
3561         (WebCore::GraphicsContext::addInnerRoundedRectClip):
3562         (WebCore::GraphicsContext::scale):
3563         (WebCore::GraphicsContext::rotate):
3564         (WebCore::GraphicsContext::translate):
3565         (WebCore::GraphicsContext::concatCTM):
3566         * platform/cg/GraphicsContextPlatformPrivate.h:
3567         (WebCore::GraphicsContextPlatformPrivate::save):
3568         (WebCore::GraphicsContextPlatformPrivate::restore):
3569         (WebCore::GraphicsContextPlatformPrivate::clip):
3570         (WebCore::GraphicsContextPlatformPrivate::scale):
3571         (WebCore::GraphicsContextPlatformPrivate::rotate):
3572         (WebCore::GraphicsContextPlatformPrivate::translate):
3573         (WebCore::GraphicsContextPlatformPrivate::concatCTM):
3574         * platform/qt/GraphicsContextQt.cpp:
3575         (WebCore::GraphicsContext::clip):
3576         (WebCore::GraphicsContext::addInnerRoundedRectClip):
3577         (WebCore::GraphicsContext::addRoundedRectClip):
3578         * rendering/InlineFlowBox.cpp:
3579         (WebCore::InlineFlowBox::paintBackground):
3580         (WebCore::InlineFlowBox::paintBackgroundAndBorder):
3581         * rendering/InlineTextBox.cpp:
3582         (WebCore::InlineTextBox::paintSelection):
3583         (WebCore::InlineTextBox::paintTextMatchMarker):
3584         * rendering/RenderBox.cpp:
3585         (WebCore::RenderBox::paintBackgroundExtended):
3586         * rendering/RenderButton.cpp:
3587         (WebCore::RenderButton::paintObject):
3588         * rendering/RenderFileUploadControl.cpp:
3589         (WebCore::RenderFileUploadControl::paintObject):
3590         * rendering/RenderLayer.cpp:
3591         (WebCore::RenderLayer::beginTransparencyLayers):
3592         (WebCore::setClip):
3593         * rendering/RenderListBox.cpp:
3594         (WebCore::RenderListBox::paintObject):
3595         * rendering/RenderMenuList.cpp:
3596         (WebCore::RenderMenuList::paintObject):
3597         * rendering/RenderTableCell.cpp:
3598         (WebCore::RenderTableCell::paintBackgroundsBehindCell):
3599
3600 2006-10-05  Mitz Pettel  <mitz@webkit.org>
3601
3602         Reviewed by Darin.
3603
3604         - http://bugs.webkit.org/show_bug.cgi?id=10386
3605           Delete RenderImageButton.* and remove references from .vcproj and .bkl files
3606
3607         * CMakeLists.txt:
3608         * WebCore.vcproj/WebCore/WebCore.vcproj:
3609         * WebCoreSources.bkl:
3610         * rendering/RenderImageButton.cpp: Removed.
3611         * rendering/RenderImageButton.h: Removed.
3612
3613 2006-10-05  Mitz Pettel  <opendarwin.org@mitzpettel.com>
3614
3615         Reviewed by Darin.
3616
3617         - http://bugs.webkit.org/show_bug.cgi?id=11067
3618           manual-tests/scrollbar-hittest2.html is invalid
3619
3620         * manual-tests/scrollbar-hittest2.html:
3621
3622 2006-10-05  David Carson  <dacarson@gmail.com>
3623
3624         Reviewed by Darin.
3625
3626         http://bugs.webkit.org/show_bug.cgi?id=11152
3627         Adjust the tokenizer chunk size to be smaller for
3628         mobile devices, and also decrease the yield timer
3629         for the tokenizer so that it can resume earlier.
3630
3631         * html/HTMLTokenizer.cpp:
3632         * config.h:
3633
3634 2006-10-05  Adam Roben  <aroben@apple.com>
3635
3636         Removing accidentally-checked-in do-nothing code.
3637
3638         * html/HTMLInputElement.cpp:
3639         (WebCore::HTMLInputElement::defaultEventHandler):
3640
3641 2006-10-05  David Carson  <dacarson@gmail.com>
3642
3643         Reviewed by Mitz.
3644
3645         http://bugs.webkit.org/show_bug.cgi?id=11158
3646         Initialize class variables
3647
3648         * rendering/RenderLayer.cpp:
3649         (WebCore::RenderLayer::RenderLayer):
3650
3651 2006-10-05  Don Gibson  <dgibson77@gmail.com>
3652
3653         Reviewed by Darin, landed by Adam.
3654
3655         http://bugs.webkit.org/show_bug.cgi?id=11176
3656         Fix win32 build, adapt to Maciej's ResourceLoader changes.
3657
3658         * platform/win/ResourceLoaderWin.cpp:
3659         (WebCore::ResourceLoader::start):
3660
3661 2006-10-05  Marvin Decker  <marv.decker@gmail.com>
3662
3663         Reviewed by Darin.
3664
3665         http://bugs.webkit.org/show_bug.cgi?id=10989
3666         Provide a way for embedders to implement BrowserExtensionWin
3667
3668         * WebCore.vcproj/WebCore/WebCore.vcproj:
3669         * bridge/win/BrowserExtensionWin.cpp: Added.
3670         (BrowserExtensionWin::BrowserExtensionWin):
3671         (BrowserExtensionWin::setTypedIconURL):
3672         (BrowserExtensionWin::setIconURL):
3673         (BrowserExtensionWin::getHistoryLength):
3674         (BrowserExtensionWin::canRunModal):
3675         (BrowserExtensionWin::createNewWindow):
3676         (BrowserExtensionWin::canRunModalNow):
3677         (BrowserExtensionWin::runModal):
3678         (BrowserExtensionWin::goBackOrForward):
3679         (BrowserExtensionWin::historyURL):
3680         * bridge/win/BrowserExtensionWin.h:
3681         * bridge/win/FrameWin.cpp:
3682         (WebCore::FrameWin::createNewWindow):
3683         * bridge/win/FrameWin.h:
3684         * platform/win/TemporaryLinkStubs.cpp:
3685
3686 2006-10-05  Geoffrey Garen  <ggaren@apple.com>
3687
3688         Reviewed by Darin.
3689         
3690         Fixed <rdar://problem/4766987>
3691         
3692         - renamed ScrollBar to Scrollbar and scroll bar to scrollbar in every case
3693         except for file names.
3694         
3695         - fixed RenderLayer to properly tear down scrollbars, removing them from
3696         their parents.
3697
3698         * bindings/js/kjs_window.cpp:
3699         (KJS::showModalDialog):
3700         (KJS::setWindowFeature):
3701         (KJS::parseWindowFeatures):
3702         * bridge/BrowserExtension.h:
3703         * dom/Document.cpp:
3704         (WebCore::Document::setInPageCache):
3705         * html/HTMLFrameElement.cpp:
3706         (WebCore::HTMLFrameElement::init):
3707         (WebCore::HTMLFrameElement::parseMappedAttribute):
3708         * html/HTMLFrameElement.h:
3709         (WebCore::HTMLFrameElement::scrollingMode):
3710         * page/Frame.cpp:
3711         (WebCore::Frame::finishedParsing):
3712         (WebCore::Frame::scrollbarsVisible):
3713         * page/FrameView.cpp:
3714         (WebCore::FrameViewPrivate::FrameViewPrivate):
3715         (WebCore::FrameViewPrivate::reset):
3716         (WebCore::FrameView::~FrameView):
3717         (WebCore::FrameView::resetScrollbars):
3718         (WebCore::FrameView::clear):
3719         (WebCore::FrameView::initScrollbars):
3720         (WebCore::FrameView::applyOverflowToViewport):
3721         (WebCore::FrameView::layout):
3722         (WebCore::FrameView::handleMousePressEvent):
3723         (WebCore::selectCursor):
3724         (WebCore::FrameView::handleMouseMoveEvent):
3725         (WebCore::FrameView::setScrollbarsMode):
3726         (WebCore::FrameView::setVScrollbarMode):
3727         (WebCore::FrameView::setHScrollbarMode):
3728         (WebCore::FrameView::restoreScrollbar):
3729         (WebCore::FrameView::dispatchMouseEvent):
3730         (WebCore::FrameView::scrollbarMoved):
3731         * page/FrameView.h:
3732         * page/MouseEventWithHitTestResults.cpp:
3733         (WebCore::MouseEventWithHitTestResults::MouseEventWithHitTestResults):
3734         * page/MouseEventWithHitTestResults.h:
3735         (WebCore::MouseEventWithHitTestResults::scrollbar):
3736         * platform/ScrollBar.cpp:
3737         (WebCore::Scrollbar::Scrollbar):
3738         (WebCore::Scrollbar::setValue):
3739         (WebCore::Scrollbar::setProportion):
3740         (WebCore::Scrollbar::setSteps):
3741         (WebCore::Scrollbar::scroll):
3742         * platform/ScrollBar.h:
3743         (WebCore::):
3744         (WebCore::ScrollbarClient::~ScrollbarClient):
3745         (WebCore::Scrollbar::~Scrollbar):
3746         (WebCore::Scrollbar::orientation):
3747         (WebCore::Scrollbar::controlSize):
3748         (WebCore::Scrollbar::hasPlatformScrollbars):
3749         (WebCore::Scrollbar::client):
3750         * platform/ScrollBarMode.h:
3751         (WebCore::):
3752         * platform/ScrollView.h:
3753         * rendering/RenderBlock.cpp:
3754         (WebCore::RenderBlock::isPointInScrollbar):
3755         * rendering/RenderLayer.cpp:
3756         (WebCore::RenderLayer::RenderLayer):
3757         (WebCore::RenderLayer::~RenderLayer):
3758         (WebCore::RenderLayer::scrollToOffset):
3759         (WebCore::RenderLayer::horizontaScrollbarWidget):
3760         (WebCore::RenderLayer::verticalScrollbarWidget):
3761         (WebCore::RenderLayer::valueChanged):
3762         (WebCore::RenderLayer::createScrollbar):
3763         (WebCore::RenderLayer::destroyScrollbar):
3764         (WebCore::RenderLayer::setHasHorizontalScrollbar):
3765         (WebCore::RenderLayer::setHasVerticalScrollbar):
3766         (WebCore::RenderLayer::verticalScrollbarWidth):
3767         (WebCore::RenderLayer::horizontalScrollbarHeight):
3768         (WebCore::RenderLayer::updateScrollInfoAfterLayout):
3769         * rendering/RenderLayer.h:
3770         (WebCore::RenderLayer::horizontalScrollbar):
3771         (WebCore::RenderLayer::verticalScrollbar):
3772         * rendering/RenderListBox.cpp:
3773         (WebCore::RenderListBox::~RenderListBox):
3774         (WebCore::RenderListBox::calcMinMaxWidth):
3775         (WebCore::RenderListBox::isPointInScrollbar):
3776         (WebCore::RenderListBox::optionAtPoint):
3777         (WebCore::RenderListBox::valueChanged):
3778         * rendering/RenderListBox.h:
3779         * rendering/RenderObject.h:
3780         (WebCore::RenderObject::NodeInfo::scrollbar):
3781         (WebCore::RenderObject::NodeInfo::setScrollbar):
3782
3783 2006-10-05  Don Gibson  <dgibson77@gmail.com>
3784
3785         Reviewed by Adam.
3786
3787         http://bugs.webkit.org/show_bug.cgi?id=11138
3788         Incorrect mouse event generation on Windows
3789
3790         * platform/win/MouseEventWin.cpp:
3791         (WebCore::PlatformMouseEvent::PlatformMouseEvent):
3792         (1) Set mouse button even for non-click-related messages.
3793         (2) Track clicks correctly for all buttons, not just the left button.
3794
3795 2006-10-05  Nikolas Zimmermann  <zimmermann@kde.org>
3796
3797         Reviewed and landed by ap.
3798
3799         Fix Qt/Linux build, adapt to Eric's quartz changes and to Maciej's ResourceLoader changes.
3800
3801         * kcanvas/device/qt/KRenderingPaintServerGradientQt.cpp:
3802         (WebCore::KRenderingPaintServerLinearGradientQt::renderPath):
3803         (WebCore::KRenderingPaintServerLinearGradientQt::setup):
3804         (WebCore::KRenderingPaintServerRadialGradientQt::setup):
3805         (WebCore::KRenderingPaintServerRadialGradientQt::renderPath):
3806         * kcanvas/device/qt/KRenderingPaintServerPatternQt.cpp:
3807         (WebCore::KRenderingPaintServerPatternQt::renderPath):
3808         * kcanvas/device/qt/KRenderingPaintServerQt.cpp:
3809         (WebCore::KRenderingPaintServerQt::setPenProperties):
3810         * kcanvas/device/qt/KRenderingPaintServerSolidQt.cpp:
3811         (WebCore::KRenderingPaintServerSolidQt::setup):
3812         (WebCore::KRenderingPaintServerSolidQt::renderPath):
3813         * kcanvas/device/qt/RenderPathQt.cpp:
3814         (WebCore::getPathStroke):
3815
3816 2006-10-05  Alexey Proskuryakov  <ap@nypop.com>
3817
3818         Reviewed by Darin.
3819
3820         http://bugs.webkit.org/show_bug.cgi?id=11054
3821         REGRESSION: Traditional Chinese encoding in login authentication
3822
3823         1. Treat GB2312 encoding as GBK (its more modern superset), to match other browsers.
3824         2. On the Web, GB2312 is encoded as EUC-CN or HZ, while ICU provides a native encoding
3825         for encoding GB_2312-80 and several others. So, we need to override this behavior, too.
3826
3827         * platform/StreamingTextDecoderICU.cpp:
3828         (WebCore::TextCodecICU::registerEncodingNames):
3829
3830 2006-10-05  Eric Seidel  <eric@eseidel.com>
3831
3832         Reviewed by mjs.
3833
3834         Removed dead code.
3835         Filed http://bugs.webkit.org/show_bug.cgi?id=11167 to for followup on removed FIXMEs
3836
3837         * WebCore.xcodeproj/project.pbxproj:
3838         * ksvg2/ecma/GlobalObject.cpp: Removed.
3839         * ksvg2/ecma/GlobalObject.h: Removed.
3840
3841 2006-10-05  Adam Roben  <aroben@apple.com>
3842
3843         Reviewed by Maciej.
3844
3845         Small ResourceLoaderInternal tweak.
3846
3847         * platform/ResourceLoaderInternal.h:
3848         (WebCore::ResourceLoaderInternal::ResourceLoaderInternal):
3849
3850 2006-10-05  Eric Seidel  <eric@eseidel.com>
3851
3852         Reviewed by mjs.
3853
3854         More incremental KCanvas cleanup and optimization.
3855         Added SVGRenderStyle::hasFill() and hasStroke() removed more KSVGPainterFactory methods.
3856         Optimized dash array usage to not malloc.
3857         Also removed un-needed KSVGRenderingStyle includes.
3858
3859         * kcanvas/KCanvasTreeDebug.cpp:
3860         (WebCore::operator<<):
3861         * kcanvas/RenderPath.cpp:
3862         (WebCore::RenderPath::nodeAtPoint):
3863         * kcanvas/device/quartz/KCanvasItemQuartz.mm:
3864         (WebCore::RenderPath::strokeBBox):
3865         * kcanvas/device/quartz/KRenderingPaintServerGradientQuartz.mm:
3866         (WebCore::KRenderingPaintServerGradientQuartz::setup):
3867         (WebCore::KRenderingPaintServerGradientQuartz::renderPath):
3868         (WebCore::KRenderingPaintServerGradientQuartz::teardown):
3869         * kcanvas/device/quartz/KRenderingPaintServerQuartz.mm:
3870         (WebCore::KRenderingPaintServerSolidQuartz::setup):
3871         (WebCore::KRenderingPaintServerSolidQuartz::renderPath):
3872         (WebCore::KRenderingPaintServerPatternQuartz::setup):
3873         (WebCore::KRenderingPaintServerPatternQuartz::renderPath):
3874         * kcanvas/device/quartz/QuartzSupport.mm:
3875         (WebCore::applyStrokeStyleToContext):
3876         * ksvg2/css/SVGRenderStyle.h:
3877         (WebCore::SVGRenderStyle::hasStroke):
3878         (WebCore::SVGRenderStyle::hasFill):
3879         * ksvg2/misc/KCanvasRenderingStyle.cpp:
3880         (WebCore::KSVGPainterFactory::fillPaintServer):
3881         (WebCore::KSVGPainterFactory::strokePaintServer):
3882         * ksvg2/misc/KCanvasRenderingStyle.h:
3883
3884 2006-10-05  Maciej Stachowiak  <mjs@apple.com>
3885
3886         Reviewed by Adam.
3887
3888         - changed ResourceLoader to be refcounted
3889
3890         It keeps a ref on itself while loading as well. This makes
3891         for a much saner memory management model than the previous.
3892
3893         * bridge/mac/WebCoreResourceLoaderImp.mm:
3894         (-[WebCoreResourceLoaderImp finishJobAndHandle:]):
3895         * dom/XMLTokenizer.cpp:
3896         (WebCore::openFunc):
3897         * loader/icon/IconLoader.cpp:
3898         (IconLoader::IconLoader):
3899         (IconLoader::~IconLoader):
3900         (IconLoader::startLoading):
3901         (IconLoader::stopLoading):
3902         (IconLoader::receivedData):
3903         * loader/icon/IconLoader.h:
3904         * loader/loader.cpp:
3905         (WebCore::Loader::servePendingRequests):
3906         * platform/ResourceLoader.cpp:
3907         (WebCore::ResourceLoader::create):
3908         (WebCore::ResourceLoader::kill):
3909         * platform/ResourceLoader.h:
3910         * platform/ResourceLoaderInternal.h:
3911         (WebCore::ResourceLoaderInternal::ResourceLoaderInternal):
3912         * platform/mac/ResourceLoaderMac.mm:
3913         (WebCore::ResourceLoader::start):
3914         * xml/XSLTProcessor.cpp:
3915         (WebCore::docLoaderFunc):
3916         * xml/xmlhttprequest.cpp:
3917         (WebCore::XMLHttpRequest::send):
3918         * xml/xmlhttprequest.h:
3919
3920 2006-10-05  Eric Seidel  <eric@eseidel.com>
3921
3922         Reviewed by mjs.
3923
3924         Improve SVG opacity performance by clipping to the object bbox before starting a new opacity layer.
3925         http://bugs.webkit.org/show_bug.cgi?id=11163
3926         
3927         No SVG performance tests yet.
3928
3929         * kcanvas/RenderForeignObject.cpp:
3930         (WebCore::RenderForeignObject::paint):
3931         * kcanvas/RenderSVGContainer.cpp:
3932         (WebCore::RenderSVGContainer::paint):
3933         * kcanvas/RenderSVGImage.cpp:
3934         (WebCore::RenderSVGImage::paint):
3935         * kcanvas/RenderSVGText.cpp:
3936         (WebCore::RenderSVGText::paint):
3937
3938 2006-10-05  Dave Hyatt  <hyatt@apple.com>
3939
3940         Stub out some stuff for widget focusability.
3941
3942         Reviewed by maciej
3943  
3944         * page/FrameView.cpp:
3945         (WebCore::FrameView::dispatchMouseEvent):
3946         * platform/ScrollView.h:
3947         * platform/Widget.h:
3948
3949 2006-10-05  Adam Roben  <aroben@apple.com>
3950
3951         Reviewed by Maciej and Tim H.
3952
3953         Copy some WebKit frame lifetime logic into WebCore -- just a step
3954         along the path to frame lifetime being handled completely in WebCore.
3955
3956         * bridge/mac/FrameMac.mm:
3957         (WebCore::FrameMac::setView): Move platform-independent parts of this
3958         method into Frame.
3959         * page/Frame.cpp:
3960         (WebCore::Frame::setView): Adding platform-independent parts of
3961         FrameMac::setView
3962         (WebCore::Frame::detachChildren): New method to accomplish what
3963         -[WebFrameBridge _detachChildren] currently does.
3964         (WebCore::Frame::clear): Call detachChildren
3965         * page/Frame.h: Add declaration for detachChildren
3966
3967 2006-10-04  Alice Liu  <alice.liu@apple.com>
3968
3969         Reviewed by Darin.
3970
3971         Fixed <rdar://problem/4758577> REGRESSION: Business and People widgets fails to complete search query
3972
3973         * xml/xmlhttprequest.cpp:
3974         (WebCore::XMLHttpRequest::setRequestHeader):
3975         removed exception set when the request is not open yet
3976
3977 2006-10-04  Anders Carlsson  <acarlsson@apple.com>
3978
3979         Reviewed by John Sullivan.
3980
3981         <rdar://problem/4654328>
3982         Safari Crashes in WebCore::PluginTokenizer::writeRawData If I Try to Open a SWF File With Plug-ins Turned Off
3983         
3984         * loader/PluginDocument.cpp:
3985         (WebCore::PluginTokenizer::writeRawData):
3986         Only send the data to the plug-in if plug-ins are enabled, otherwise just silently eat it.
3987
3988 2006-10-03  Alexey Proskuryakov  <ap@nypop.com>
3989
3990         Reviewed by Tim H.
3991
3992         http://bugs.webkit.org/show_bug.cgi?id=11130
3993         Convert "undefined" to AE missing value
3994
3995         * bridge/mac/WebCoreFrameBridge.mm:
3996         (aeDescFromJSValue): return missing value for UndefinedType.
3997
3998 2006-10-03  Dave Hyatt  <hyatt@apple.com>
3999
4000         Scrolling work.  Eliminate convertTo/FromContainingWindow as cross-platform functions.  Add back in
4001         the windowToContents/contentsToWindow functions.
4002         
4003         Reviewed by anders
4004
4005         * bridge/mac/FrameMac.mm:
4006         (WebCore::FrameMac::eventMayStartDrag):
4007         (WebCore::FrameMac::dragHysteresisExceeded):
4008         (WebCore::FrameMac::mouseDown):
4009         (WebCore::FrameMac::shouldDragAutoNode):
4010         (WebCore::FrameMac::sendContextMenuEvent):
4011         * bridge/mac/FrameViewMac.mm:
4012         (WebCore::FrameView::passMousePressEventToScrollbar):
4013         * bridge/mac/WebCoreFrameBridge.mm:
4014         (-[WebCoreFrameBridge _visiblePositionForPoint:]):
4015         * dom/EventTargetNode.cpp:
4016         (WebCore::EventTargetNode::dispatchMouseEvent):
4017         (WebCore::EventTargetNode::dispatchWheelEvent):
4018         * page/Frame.cpp:
4019         (WebCore::Frame::selectClosestWordFromMouseEvent):
4020         (WebCore::Frame::handleMousePressEventTripleClick):
4021         (WebCore::Frame::handleMousePressEventSingleClick):
4022         (WebCore::Frame::handleMouseMoveEvent):
4023         (WebCore::Frame::handleMouseReleaseEvent):
4024         * page/FrameView.cpp:
4025         (WebCore::FrameView::handleMousePressEvent):
4026         (WebCore::FrameView::handleMouseDoubleClickEvent):
4027         (WebCore::selectCursor):
4028         (WebCore::FrameView::handleMouseMoveEvent):
4029         (WebCore::FrameView::handleMouseReleaseEvent):
4030         (WebCore::FrameView::dispatchDragEvent):
4031         (WebCore::FrameView::prepareMouseEvent):
4032         (WebCore::FrameView::handleWheelEvent):
4033         * page/FrameView.h:
4034         * platform/ScrollBar.cpp:
4035         (WebCore::ScrollBar::setValue):
4036         * platform/ScrollView.h:
4037         * platform/Widget.h:
4038         (WebCore::Widget::scrolled):
4039         * platform/mac/ScrollViewMac.mm:
4040         (WebCore::ScrollView::contentsToWindow):
4041         (WebCore::ScrollView::windowToContents):
4042         (WebCore::ScrollView::scrollbarUnderMouse):
4043         * platform/mac/WidgetMac.mm:
4044         * rendering/RenderLayer.cpp:
4045         (WebCore::RenderLayer::resize):
4046         (WebCore::RenderLayer::positionScrollbars):
4047         * rendering/RenderReplaced.cpp:
4048         (WebCore::RenderReplaced::shouldPaint):
4049         * rendering/RenderView.cpp:
4050         * rendering/RenderView.h:
4051         * rendering/RenderWidget.cpp:
4052         (WebCore::RenderWidget::setWidget):
4053
4054 2006-09-26  David Smith  <catfish.man@gmail.com>
4055
4056         Reviewed by Timothy.
4057
4058         http://bugs.webkit.org/show_bug.cgi?id=3723
4059         Add -scrollDOMRangeToVisible:
4060
4061         No automated tests are possible as this code path isn't reachable from JavaScript.
4062
4063         * bridge/mac/WebCoreFrameBridge.h:
4064         * bridge/mac/WebCoreFrameBridge.mm:
4065         (-[WebCoreFrameBridge scrollDOMRangeToVisible:]):
4066
4067 2006-10-03  Graham Dennis  <graham.dennis@gmail.com>
4068
4069         Reviewed by Timothy.
4070
4071         <http://bugs.webkit.org/show_bug.cgi?id=10338>
4072         When contentEditable, cursor doesn't change to hand
4073         
4074         Allow the behaviour of editable links to be specified by a WebPreference
4075         The preference WebKitEditableLinkBehavior has four options:
4076          - AlwaysLive: Safari 2.0 behaviour
4077          - OnlyLiveWithShiftKey: Firefox/WinIE behaviour (and prior WebKit-ToT behaviour)
4078          - LiveWhenNotFocused: Editable links are live only when their editable block is not
4079              focused, or when the shift key is pressed
4080          - DefaultBehavior: This is the same as OnlyLiveWithShiftKey.
4081          
4082         No layout tests, just a modification of a manual-test as it isn't possible to test
4083         this automatically.
4084
4085         * bridge/mac/WebCoreSettings.h:
4086         * bridge/mac/WebCoreSettings.mm:
4087         (-[WebCoreSettings setEditableLinkBehavior:]):
4088         (-[WebCoreSettings editableLinkBehavior]):
4089         * html/HTMLAnchorElement.cpp:
4090         (WebCore::HTMLAnchorElement::HTMLAnchorElement):
4091         (WebCore::HTMLAnchorElement::defaultEventHandler):
4092         (WebCore::HTMLAnchorElement::setActive):
4093         * html/HTMLAnchorElement.h:
4094         * manual-tests/contenteditable-link.html:
4095         * page/FrameView.cpp:
4096         (WebCore::nodeIsNotBeingEdited):
4097         (WebCore::selectCursor):
4098         * page/Settings.h:
4099         (WebCore::Settings::):
4100         (WebCore::Settings::Settings):
4101         (WebCore::Settings::editableLinkBehavior):
4102         (WebCore::Settings::setEditableLinkBehavior):
4103
4104 2006-10-03  Beth Dakin  <bdakin@apple.com>
4105
4106         Reviewed Darin.
4107
4108         No test cases needed.
4109
4110         Implemented a version of StringImpl::append that takes a UChar* and 
4111         a length.
4112
4113         * platform/StringImpl.cpp:
4114         (WebCore::StringImpl::append):
4115         (WebCore::StringImpl::insert): Call new append instead of making a 
4116         new StringImpl.
4117         * platform/StringImpl.h:
4118
4119 2006-10-03  MorganL  <morganl.webkit@yahoo.com>
4120
4121         Reviewed by Darin.
4122
4123         Fixes: http://bugs.webkit.org/show_bug.cgi?id=11099
4124         HttpSendRequestEx results in ERROR_HTTP_HEADER_NOT_FOUND
4125
4126         * platform/win/ResourceLoaderWin.cpp:
4127         (WebCore::ResourceLoader::onHandleCreated):
4128
4129 2006-10-02  Geoffrey Garen  <ggaren@apple.com>
4130
4131         Feared, loathed, reviewed by Darin.
4132
4133         More frame/iframe merging. Merged IFRAME::willRemove and IFRAME::detach 
4134         into FRAME, plus other cleanup.
4135         
4136         No new behavior, so no new test. Layout tests pass. Basic browsing and
4137         Mail editing seem to work.
4138         
4139         * dom/Node.cpp:
4140         (WebCore::Node::detach): Removed random commented-out code.
4141         * html/HTMLFrameElement.cpp:
4142         (WebCore::HTMLFrameElement::isURLAllowed): 
4143         (1) Removed reference to FrameView, to dissociate frame loading from rendering.
4144         (2) Renamed newURL to completeURL because the difference between newURL
4145         and URLString is that newURL is a KURL that is the complete version of URLString,
4146         not that it is new.
4147         (WebCore::HTMLFrameElement::willRemove): 
4148         (1) Removed close() call and moved close() code into willRemove(), also removing 
4149         close() call from detach(), since willRemove is the well-defined place 
4150         from DOM tear-down, not detach().
4151         (2) Removed manual renderer detach code because the DOM is not responsible
4152         for managing the render tree. I confirmed that this change not
4153         regress <rdar://problem/4132581>.
4154         (3) Removed questionable ASSERT. The ASSERT assumed that iframe elements
4155         lost their content frames after being removed from the DOM. That's our 
4156         current behavior, but it's going to change in future rounds of refactoring.
4157         This also fixes <rdar://problem/4750835>.
4158         (WebCore::HTMLFrameElement::setLocation): Removed wacky manual calls to
4159         attach/detach, because the render tree should not be in charge of deciding
4160         when to load.
4161         * html/HTMLFrameElement.h:
4162         * html/HTMLIFrameElement.cpp:
4163         (WebCore::HTMLIFrameElement::attach): Renamed renderPart to renderPartObject,
4164         because the renderer is a renderPartObject, not a renderPart.
4165         * html/HTMLIFrameElement.h:
4166
4167 2006-10-03  Mark Rowe  <bdash@webkit.org>
4168
4169         Reviewed by Mitz.
4170
4171         http://bugs.webkit.org/show_bug.cgi?id=11137
4172         Bug 11137: GdkLauncher dies with "pure virtual method called" if
4173         window is closed while page still loading
4174
4175         * platform/gdk/FrameGdk.cpp:
4176         (WebCore::FrameGdk::~FrameGdk): Call cancelAndClear to allow virtual
4177         methods to be called before the FrameGdk portion of "this" is torn down.
4178
4179 2006-10-03  Adam Roben  <aroben@apple.com>
4180
4181         Reviewed by Darin.
4182
4183         Handle tab key presses in the DOM.
4184
4185         * dom/EventTargetNode.cpp:
4186         (WebCore::EventTargetNode::defaultEventHandler): Add tab key handling.
4187         * page/FrameView.cpp:
4188         (WebCore::FrameView::advanceFocus): Rename and reimplement
4189         focusNextPrevNode. Now we just call Element::focus().
4190         * page/FrameView.h: Rename focusNextPrevNode to advanceFocus and make
4191         it public.
4192
4193 2006-10-03  Justin Garcia  <justin.garcia@apple.com>
4194
4195         Reviewed by mjs
4196         
4197         <rdar://problem/4760612>
4198         TOT REGRESSION: Repro assertion failure when forwarding draft in Range::compareBoundaryPoints
4199         
4200         No layout test possible, attributedStringFrom:(DOMNode*)...etc isn't available to DRT.
4201         
4202         * dom/Range.cpp:
4203         (WebCore::Range::boundaryPointsValid): compareBoundaryPoints asserts that the incoming 
4204         positions are non-null since most of it's callers would be in a bad state if the positions 
4205         were null.  boundaryPointsValid, which calls compareBoundaryPoints, is an exception.  
4206         Instead of removing the assert I've added nil checks in boundaryPointsValid, to keep it 
4207         from entering compareBoundaryPoints and hitting the assert.
4208
4209 2006-10-03  Adele Peterson  <adele@apple.com>
4210
4211         Reviewed by Geoff.
4212
4213         Make code for turning off new listbox implementation mac-only, since there's no implementation on other platforms.
4214
4215         * html/HTMLSelectElement.cpp:
4216         (WebCore::HTMLSelectElement::recalcStyle):
4217         (WebCore::HTMLSelectElement::isKeyboardFocusable):
4218         (WebCore::HTMLSelectElement::isMouseFocusable):
4219         (WebCore::HTMLSelectElement::createRenderer):
4220         (WebCore::HTMLSelectElement::setRecalcListItems):
4221         (WebCore::HTMLSelectElement::notifyOptionSelected):
4222         (WebCore::HTMLSelectElement::defaultEventHandler):
4223
4224 2006-10-04  Darin Adler  <darin@apple.com>
4225
4226         Reviewed by Geoff.
4227
4228         - fix http://bugs.webkit.org/show_bug.cgi?id=11132
4229           Caret disappears when you're typing
4230
4231         * editing/SelectionController.cpp:
4232         (WebCore::SelectionController::setSelection): Remove unnecessary call to
4233         clearCaretRectIfNeeded. The recomputeCaretRect now takes care of this.
4234         (WebCore::SelectionController::recomputeCaretRect): Explicitly set m_needsLayout
4235         to false so we can get the old caret repaint rect. Later we need to change the
4236         design so getting the rect doesn't have a side effect of causing a layout without
4237         invalidation.
4238
4239 2006-10-03  David Harrison  <harrison@apple.com>
4240
4241         Reviewed by Maciej.
4242
4243         <rdar://problem/4671286> Candidate Window isn't displayed and only first candidate is displayed at typing location.
4244
4245         Updated test:
4246         * fast/text/justified-text-rect.html
4247
4248         * bridge/mac/WebCoreFrameBridge.mm:
4249         (-[WebCoreFrameBridge convertToNSRange:]):
4250         (-[WebCoreFrameBridge convertToDOMRange:]):