0cae0684cd04a5270ad69a50fc3dadb35b3f6eef
[WebKit-https.git] / WebCore / ChangeLog
1 2007-02-09  Maciej Stachowiak  <mjs@apple.com>
2
3         Reviewed by Mark.
4
5         <rdar://problem/4980176>
6
7         * page/Frame.cpp:
8         (WebCore::Frame::pageDestroyed): Since this frame is getting
9         disconnected from its page, ensure it is not the focus node.
10
11 2007-02-09  Krzysztof  <kkowalczyk@gmail.com>
12
13         Reviewed by Maciej.
14
15         gdklauncher crashes when compiled with NDEBUG defined.
16
17         * Projects/gdk/webcore-gdk.bkl:
18
19 2007-02-09  Maciej Stachowiak  <mjs@apple.com>
20
21         Reviewed by Mitz.
22
23         <rdar://problem/4971224> REGRESSION: ASSERT in WebCore with Mail (12491)
24         http://bugs.webkit.org/show_bug.cgi?id=12491
25
26         No test case. Not testable since there is no way to do substitute
27         data loads from layout tests.
28         
29         * loader/MainResourceLoader.cpp:
30         (WebCore::MainResourceLoader::continueAfterContentPolicy): Don't dispatch data load
31         callback when loading empty data.
32
33 2007-02-09  Mark Rowe  <mrowe@apple.com>
34
35         Reviewed by Maciej.
36
37         http://bugs.webkit.org/show_bug.cgi?id=12705
38         REGRESSION: Crash with user stylesheet set
39
40         Allow the Frame::canLoad check to skipped so that user stylesheets can be loaded in remote documents.
41
42         * ChangeLog:
43         * loader/DocLoader.cpp:
44         (WebCore::DocLoader::requestCSSStyleSheet): Skip canLoad check if this is a user stylesheet.
45         (WebCore::DocLoader::requestUserCSSStyleSheet):
46         (WebCore::DocLoader::requestResource): Allow canLoad check to be skipped.
47         * loader/DocLoader.h:
48         * page/Frame.cpp:
49         (WebCore::UserStyleSheetLoader::UserStyleSheetLoader):
50
51 2007-02-08  Krzysztof Kowalczyk  <kkowalczyk@gmail.com>
52
53         Reviewed by Darin.
54
55         Linux/gdk build fixes.
56
57         * Projects/gdk/webcore-gdk.bkl: Account for file renaming.
58         * platform/gdk/KeyEventGdk.cpp: Make gdk's tab key recognized as tab so that
59         keyboard link walking works on gdk.
60         (WebCore::keyIdentifierForGdkKeyCode):
61
62 2007-02-08  Adele Peterson  <adele@apple.com>
63
64         Reviewed by Brady.
65
66         Fix for http://bugs.webkit.org/show_bug.cgi?id=12599
67         <rdar://problem/4973507> REGRESSION: When replying in Gmail, the caret disappears when you start to type (12599)
68
69         When a frame's window was focused, the page didn't get updated about the new frame getting focus.
70         This was causing handleKeyPress to fail because it kept getting a selection for the wrong frame (which wasn't editable).
71
72         Test: fast/frames/iframe-window-focus.html
73
74         * page/Frame.cpp:
75         (WebCore::Frame::focusWindow):
76         (WebCore::Frame::unfocusWindow):
77         * page/Frame.h:
78         * page/mac/FrameMac.mm:
79         (WebCore::FrameMac::focusWindow):
80         (WebCore::FrameMac::unfocusWindow):
81
82 2007-02-08  Adele Peterson  <adele@apple.com>
83
84         Reviewed by Brady.
85
86         Fix for http://bugs.webkit.org/show_bug.cgi?id=12480
87         <rdar://problem/4971222> REGRESSION (NativeListBox): Deselecting option causes list to jump to top
88
89         Test: fast/forms/listbox-deselect-scroll.html
90
91         * html/HTMLSelectElement.cpp:
92         (WebCore::HTMLSelectElement::activeSelectionStartListIndex): Added.  Returns the index for the active selection.  If there is no active selection,
93          it returns the first selected index.
94         (WebCore::HTMLSelectElement::activeSelectionEndListIndex): Added.  If there is no active selection, it returns the last selected index.
95         * html/HTMLSelectElement.h:
96         * rendering/RenderListBox.cpp: (WebCore::RenderListBox::scrollToRevealSelection): Instead of using the first and last selected indices,
97           use the active selection indices to determine which item to reveal.  This way, when you're selecting with the keyboard, or the mouse,
98           no unnecessary scrolling will occur if the end of your active selection is already visible.
99
100 2007-02-08  Adele Peterson  <adele@apple.com>
101
102         Reviewed by Hyatt.
103
104         Fix for <rdar://problem/4963411> Items of SELECT element are incorrectly highlighted when display:block is set
105
106         Test: fast/forms/select-block-background.html
107
108         * rendering/RenderListBox.cpp: (WebCore::RenderListBox::paintObject):
109           Paint the item backgrounds during the PaintPhaseChildBlockBackground or PaintPhaseChildBlockBackgrounds phase.
110
111 2007-02-08  Mitz Pettel  <mitz@webkit.org>
112
113         Reviewed by Adele.
114
115         - fix http://bugs.webkit.org/show_bug.cgi?id=11047
116           REGRESSION: Empty options cause the entire select to collapse
117         
118         Test: fast/forms/select-empty-option-height.html
119
120         - fix http://bugs.webkit.org/show_bug.cgi?id=10783
121           REGRESSION (r16044): Clicking a popup changes layout around it
122
123         * rendering/RenderMenuList.cpp:
124         (WebCore::RenderMenuList::setText): If the option text is empty, use a RenderBR
125         as inner text, to ensure that the inner div has line height.
126
127 2007-02-08  Geoffrey Garen  <ggaren@apple.com>
128
129         Reviewed by Beth Dakin.
130
131         Added a hard counter for SubresourceLoaders because the leaks tool now
132         ignores them.
133         
134         * loader/SubresourceLoader.cpp:
135         (WebCore::):
136         (WebCore::SubresourceLoaderCounter::~SubresourceLoaderCounter):
137         (WebCore::SubresourceLoader::SubresourceLoader):
138         (WebCore::SubresourceLoader::~SubresourceLoader):
139         * page/Frame.cpp: Removed unnecessary #define
140
141 2007-02-08  Geoffrey Garen  <ggaren@apple.com>
142
143         Reviewed by Beth Dakin.
144
145         Fixed <rdar://problem/4982374> CSSComputedStyleDeclaration::getPropertyCSSValue 
146         leak reported by buildbot
147         
148         The leak was a typo: "new" instead of "return new". I also generously
149         deployed RefPtr in places that were holding ref-counted objects in
150         bare pointers.
151
152         * css/CSSComputedStyleDeclaration.cpp:
153         (WebCore::valueForShadow):
154         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
155
156 2007-02-08  Krzysztof Kowalczyk  <kkowalczyk@gmail.com>
157
158         Reviewed by Adam Roben.
159
160         Linux/gdk build fixes.
161
162         * platform/gdk/EditorClientGdk.cpp: Added. Based on qt version.
163         (WebCore::EditorClientGdk::shouldDeleteRange):
164         (WebCore::EditorClientGdk::shouldShowDeleteInterface):
165         (WebCore::EditorClientGdk::isContinuousSpellCheckingEnabled):
166         (WebCore::EditorClientGdk::isGrammarCheckingEnabled):
167         (WebCore::EditorClientGdk::spellCheckerDocumentTag):
168         (WebCore::EditorClientGdk::shouldBeginEditing):
169         (WebCore::EditorClientGdk::shouldEndEditing):
170         (WebCore::EditorClientGdk::shouldInsertText):
171         (WebCore::EditorClientGdk::shouldApplyStyle):
172         (WebCore::EditorClientGdk::didBeginEditing):
173         (WebCore::EditorClientGdk::respondToChangedContents):
174         (WebCore::EditorClientGdk::didEndEditing):
175         (WebCore::EditorClientGdk::didWriteSelectionToPasteboard):
176         (WebCore::EditorClientGdk::didSetSelectionTypesForPasteboard):
177         (WebCore::EditorClientGdk::selectWordBeforeMenuEvent):
178         (WebCore::EditorClientGdk::isEditable):
179         (WebCore::EditorClientGdk::registerCommandForUndo):
180         (WebCore::EditorClientGdk::registerCommandForRedo):
181         (WebCore::EditorClientGdk::clearUndoRedoOperations):
182         (WebCore::EditorClientGdk::canUndo):
183         (WebCore::EditorClientGdk::canRedo):
184         (WebCore::EditorClientGdk::undo):
185         (WebCore::EditorClientGdk::redo):
186         (WebCore::EditorClientGdk::shouldInsertNode):
187         (WebCore::EditorClientGdk::pageDestroyed):
188         (WebCore::EditorClientGdk::smartInsertDeleteEnabled):
189         (WebCore::EditorClientGdk::toggleContinuousSpellChecking):
190         (WebCore::EditorClientGdk::toggleGrammarChecking):
191         (WebCore::EditorClientGdk::handleKeyPress):
192         (WebCore::EditorClientGdk::EditorClientGdk):
193         (WebCore::EditorClientGdk::setPage):
194         * platform/gdk/EditorClientGdk.h: Added. Ditto.
195         * platform/gdk/FrameGdk.cpp: Add exitAfterLoading and dumpRenderTreeAfterLoading
196         as small debugging features. Remove FrameGdkClient as no other platform has Frame*Client
197         anymore. Adjust for new APIs.
198         (WebCore::FrameGdk::FrameGdk):
199         (WebCore::FrameGdk::onDidFinishLoad):
200         (WebCore::FrameGdk::dumpRenderTree):
201         (WebCore::FrameGdk::keyPress):
202         (WebCore::FrameGdk::handleGdkEvent):
203         (WebCore::FrameGdk::focusWindow):
204         (WebCore::FrameGdk::unfocusWindow):
205         (WebCore::FrameGdk::getObjectInstanceForWidget):
206         (WebCore::FrameGdk::getEmbedInstanceForWidget):
207         (WebCore::FrameGdk::bindingRootObject):
208         (WebCore::FrameGdk::print):
209         (WebCore::FrameGdk::getAppletInstanceForWidget):
210         (WebCore::FrameGdk::issueCutCommand):
211         (WebCore::FrameGdk::issueCopyCommand):
212         (WebCore::FrameGdk::issuePasteCommand):
213         (WebCore::FrameGdk::issueTransposeCommand):
214         (WebCore::FrameGdk::issuePasteAndMatchStyleCommand):
215         (WebCore::FrameGdk::markedTextRange):
216         (WebCore::FrameGdk::shouldChangeSelection):
217         (WebCore::FrameGdk::respondToChangedSelection):
218         (WebCore::FrameGdk::mimeTypeForFileName):
219         * platform/gdk/FrameGdk.h: Ditto.
220         (WebCore::FrameGdk::setExitAfterLoading):
221         (WebCore::FrameGdk::exitAfterLoading):
222         (WebCore::FrameGdk::setDumpRenderTreeAfterLoading):
223         (WebCore::FrameGdk::dumpRenderTreeAfterLoading):
224         (WebCore::GdkFrame):
225         * platform/gdk/TemporaryLinkStubs.cpp: Adjust to new APIs. Small cleanups.
226         (FrameView::updateBorder):
227         (Widget::setEnabled):
228         (Widget::isEnabled):
229         (Widget::enableFlushDrawing):
230         (Widget::removeFromParent):
231         (Widget::paint):
232         (Widget::setIsSelected):
233         (Widget::invalidate):
234         (Widget::invalidateRect):
235         (PlatformMouseEvent::PlatformMouseEvent):
236         (WebCore::findWordBoundary):
237         (ChromeClientGdk::chromeDestroyed):
238         (ChromeClientGdk::closeWindowSoon):
239         (ChromeClientGdk::canTakeFocus):
240         (ChromeClientGdk::takeFocus):
241         (ChromeClientGdk::canRunBeforeUnloadConfirmPanel):
242         (ChromeClientGdk::addMessageToConsole):
243         (ChromeClientGdk::runBeforeUnloadConfirmPanel):
244         (ChromeClientGdk::runJavaScriptAlert):
245         (ChromeClientGdk::runJavaScriptConfirm):
246         (ChromeClientGdk::runJavaScriptPrompt):
247         (ChromeClientGdk::setStatusbarText):
248         (ChromeClientGdk::shouldInterruptJavaScript):
249         (WebCore::inputElementAltText):
250         (WebCore::resetButtonDefaultLabel):
251         (WebCore::searchableIndexIntroduction):
252         (WebCore::fileButtonChooseFileLabel):
253         (WebCore::fileButtonNoFileSelectedLabel):
254         (WebCore::contextMenuItemTagOpenLinkInNewWindow):
255         (WebCore::contextMenuItemTagDownloadLinkToDisk):
256         (WebCore::contextMenuItemTagCopyLinkToClipboard):
257         (WebCore::contextMenuItemTagOpenImageInNewWindow):
258         (WebCore::contextMenuItemTagDownloadImageToDisk):
259         (WebCore::contextMenuItemTagCopyImageToClipboard):
260         (WebCore::contextMenuItemTagOpenFrameInNewWindow):
261         (WebCore::contextMenuItemTagCopy):
262         (WebCore::contextMenuItemTagGoBack):
263         (WebCore::contextMenuItemTagGoForward):
264         (WebCore::contextMenuItemTagStop):
265         (WebCore::contextMenuItemTagReload):
266         (WebCore::contextMenuItemTagCut):
267         (WebCore::contextMenuItemTagPaste):
268         (WebCore::contextMenuItemTagNoGuessesFound):
269         (WebCore::contextMenuItemTagIgnoreSpelling):
270         (WebCore::contextMenuItemTagLearnSpelling):
271         (WebCore::contextMenuItemTagSearchWeb):
272         (WebCore::contextMenuItemTagLookUpInDictionary):
273         (WebCore::contextMenuItemTagOpenLink):
274         (WebCore::contextMenuItemTagIgnoreGrammar):
275         (WebCore::contextMenuItemTagSpellingMenu):
276         (WebCore::contextMenuItemTagShowSpellingPanel):
277         (WebCore::contextMenuItemTagCheckSpelling):
278         (WebCore::contextMenuItemTagCheckSpellingWhileTyping):
279         (WebCore::contextMenuItemTagCheckGrammarWithSpelling):
280         (WebCore::contextMenuItemTagFontMenu):
281         (WebCore::contextMenuItemTagBold):
282         (WebCore::contextMenuItemTagItalic):
283         (WebCore::contextMenuItemTagUnderline):
284         (WebCore::contextMenuItemTagOutline):
285         (WebCore::contextMenuItemTagWritingDirectionMenu):
286         (WebCore::contextMenuItemTagDefaultDirection):
287         (WebCore::contextMenuItemTagLeftToRight):
288         (WebCore::contextMenuItemTagRightToLeft):
289         (PlugInInfoStore::createPluginInfoForPluginAtIndex):
290         (PlugInInfoStore::pluginCount):
291         (WebCore::PlugInInfoStore::supportsMIMEType):
292         (WebCore::refreshPlugins):
293         (SearchPopupMenu::saveRecentSearches):
294         (SearchPopupMenu::loadRecentSearches):
295         (SearchPopupMenu::SearchPopupMenu):
296         (Path::apply):
297         (PlatformScrollbar::PlatformScrollbar):
298         (PlatformScrollbar::~PlatformScrollbar):
299         (PlatformScrollbar::width):
300         (PlatformScrollbar::height):
301         (PlatformScrollbar::setEnabled):
302         (PlatformScrollbar::paint):
303         (PlatformScrollbar::updateThumbPosition):
304         (PlatformScrollbar::updateThumbProportion):
305         (PlatformScrollbar::setRect):
306         (ResourceHandle::willLoadFromCache):
307         (ResourceHandle::loadsBlocked):
308         (ResourceHandle::loadResourceSynchronously):
309         (PageCache::close):
310         (Editor::ignoreSpelling):
311         (Editor::learnSpelling):
312         (Editor::isSelectionUngrammatical):
313         (Editor::isSelectionMisspelled):
314         (Editor::guessesForMisspelledSelection):
315         (Editor::guessesForUngrammaticalSelection):
316         (Editor::markMisspellingsAfterTypingToPosition):
317         (Editor::newGeneralClipboard):
318         (Pasteboard::generalPasteboard):
319         (Pasteboard::writeSelection):
320         (Pasteboard::writeURL):
321         (Pasteboard::clear):
322         (Pasteboard::canSmartReplace):
323         (Pasteboard::documentFragment):
324         (Pasteboard::plainText):
325         (Pasteboard::Pasteboard):
326         (Pasteboard::~Pasteboard):
327         (ContextMenu::ContextMenu):
328         (ContextMenu::~ContextMenu):
329         (ContextMenu::appendItem):
330         (ContextMenu::setPlatformDescription):
331         (ContextMenu::platformDescription):
332         (ContextMenuItem::ContextMenuItem):
333         (ContextMenuItem::~ContextMenuItem):
334         (ContextMenuItem::releasePlatformDescription):
335         (ContextMenuItem::type):
336         (ContextMenuItem::setType):
337         (ContextMenuItem::action):
338         (ContextMenuItem::setAction):
339         (ContextMenuItem::title):
340         (ContextMenuItem::setTitle):
341         (ContextMenuItem::platformSubMenu):
342         (ContextMenuItem::setSubMenu):
343         (ContextMenuItem::setChecked):
344         (ContextMenuItem::setEnabled):
345         (WebCore::systemBeep):
346         (WebCore::userIdleTime):
347
348 2007-02-08  Krzysztof Kowalczyk  <kkowalczyk@gmail.com>
349
350         Reviewed by Adam Roben.
351
352         Linux/gdk build fixes.
353
354         * platform/GlyphPageTreeNode.h: Fix header guard name.
355         * platform/gdk/ChromeClientGdk.h:
356         * platform/gdk/CursorGdk.cpp:
357         (WebCore::verticalTextCursor):
358         (WebCore::cellCursor):
359         (WebCore::contextMenuCursor):
360         (WebCore::noDropCursor):
361         (WebCore::copyCursor):
362         (WebCore::progressCursor):
363         (WebCore::aliasCursor):
364         * platform/gdk/MouseEventGdk.cpp:
365         (WebCore::PlatformMouseEvent::PlatformMouseEvent):
366         * platform/gdk/PageGdk.cpp: Removed. No longer used.
367         * platform/gdk/RenderThemeGdk.cpp:
368         (WebCore::RenderThemeGdk::getThemeData):
369         (WebCore::RenderThemeGdk::setCheckboxSize):
370         (WebCore::RenderThemeGdk::paintCheckbox):
371         (WebCore::RenderThemeGdk::setRadioSize):
372         (WebCore::RenderThemeGdk::paintRadio):
373         (WebCore::RenderThemeGdk::paintButton):
374         (WebCore::RenderThemeGdk::adjustTextFieldStyle):
375         (WebCore::RenderThemeGdk::paintTextField):
376         (WebCore::RenderThemeGdk::paintTextArea):
377         (WebCore::RenderThemeGdk::systemFont):
378         * platform/gdk/RenderThemeGdk.h:
379         * platform/gdk/ScreenGdk.cpp:
380         (WebCore::screenDepth):
381         (WebCore::screenDepthPerComponent):
382         (WebCore::screenIsMonochrome):
383         (WebCore::screenRect):
384         (WebCore::screenAvailableRect):
385
386 2007-02-08  Krzysztof Kowalczyk  <kkowalczyk@gmail.com>
387
388         Reviewed by Adam Roben.
389
390         Linux/gdk build fixes for cairo.
391
392         * platform/graphics/GraphicsContext.cpp:
393         * platform/graphics/cairo/GraphicsContextCairo.cpp:
394         (WebCore::GraphicsContext::GraphicsContext):
395         (WebCore::GraphicsContext::strokeArc):
396         (WebCore::GraphicsContext::drawFocusRing):
397         (WebCore::GraphicsContext::setFocusRingClip):
398         (WebCore::GraphicsContext::clearFocusRingClip):
399         (WebCore::GraphicsContext::drawLineForMisspellingOrBadGrammar):
400         (WebCore::GraphicsContext::origin):
401         (WebCore::GraphicsContext::setPlatformFillColor):
402         (WebCore::GraphicsContext::setPlatformStrokeColor):
403         (WebCore::GraphicsContext::setPlatformStrokeThickness):
404         (WebCore::GraphicsContext::setPlatformStrokeStyle):
405         (WebCore::GraphicsContext::setPlatformFont):
406         (WebCore::GraphicsContext::setURLForRect):
407         (WebCore::GraphicsContext::addRoundedRectClip):
408         (WebCore::GraphicsContext::addInnerRoundedRectClip):
409         (WebCore::GraphicsContext::setShadow):
410         (WebCore::GraphicsContext::clearShadow):
411         (WebCore::GraphicsContext::beginTransparencyLayer):
412         (WebCore::GraphicsContext::endTransparencyLayer):
413         (WebCore::GraphicsContext::clearRect):
414         (WebCore::GraphicsContext::strokeRect):
415         (WebCore::GraphicsContext::setLineCap):
416         (WebCore::GraphicsContext::setLineJoin):
417         (WebCore::GraphicsContext::setMiterLimit):
418         (WebCore::GraphicsContext::setAlpha):
419         (WebCore::toCairoOperator):
420         (WebCore::GraphicsContext::setCompositeOperation):
421         (WebCore::GraphicsContext::clip):
422         (WebCore::GraphicsContext::rotate):
423         (WebCore::GraphicsContext::scale):
424         (WebCore::GraphicsContext::clipOut):
425         (WebCore::GraphicsContext::clipOutEllipseInRect):
426         (WebCore::GraphicsContext::fillRoundedRect):
427
428 2007-02-08  Krzysztof Kowalczyk  <kkowalczyk@gmail.com>
429
430         Reviewed by Adam Roben.
431
432         Linux/gdk build fixes.
433
434         * Projects/gdk/webcore-gdk.bkl:
435         * WebCoreSources.bkl:
436         * webcore-base.bkl:
437
438 2007-02-08  Brady Eidson  <beidson@apple.com>
439
440         Reviewed by Tim Hatcher
441
442         Tweaked the thread violation behavior to be disabled by default, and to provide
443         an easy breakpoint to set.  
444         The possibilities for the "WebCoreThreadCheck" user defaults key are -
445           - The value "None" disables thread checking
446           - The value "Log" causes an NSLog on a violation
447           - The value "Exception" causes exceptions to be raised on a violation
448
449         * platform/Logging.h:
450         * platform/mac/LoggingMac.mm:
451         (WebCore::_WebCoreThreadViolationCheck):
452         (WebCoreReportThreadViolation):  In the global namespace, making breakpoints cake!
453
454 2007-02-08  Brady Eidson  <beidson@apple.com>
455
456         Reviewed by Tim Hatcher
457
458         <rdar://problem/4983515> Need mechanism to protect against WebKit calls from secondary threads
459         This initial landing is a conservative move until we can be certain of performance impact.
460         By writing to the user defaults key @"WebCoreThreadCheck" for the WebKit app you're running -
461           - The value "None" disables thread checking
462           - The value "Exception" causes exceptions to be raised on a violation
463           - The default is to do the check, and NSLog each violation
464
465         * bindings/objc/ExceptionHandlers.h:  Add a "Is Main Thread" assert macro
466         * bindings/scripts/CodeGeneratorObjC.pm: Use new mechanism in allocs and deallocs for now
467
468         * platform/Logging.h: Added WebCoreThreadViolationCheck macro
469         * platform/mac/LoggingMac.mm:
470         (WebCore::_WebCoreThreadViolationCheck): Check for main-threadedness, and do some stuff
471
472 2007-02-08  Kevin McCullough  <KMcCullough@apple.com>
473
474         Reviewed by Maciej, Darin, and Mark.
475
476         rdar://problem/4922454
477         - Prevents remote sites from executing local scripts.
478
479         * bindings/objc/DOM.mm: - renamed a function that is now in the base class
480         (-[DOMElement image]):
481         (-[DOMElement _imageTIFFRepresentation]):
482         * dom/XMLTokenizer.cpp: - removed needless asserts
483         (WebCore::XMLTokenizer::notifyFinished):
484         * html/HTMLImageLoader.cpp: - renamed a function that is now in the base class
485         (WebCore::HTMLImageLoader::dispatchLoadEvent):
486         * html/HTMLTokenizer.cpp: - removed needless asserts
487         (WebCore::HTMLTokenizer::reset):
488         (WebCore::HTMLTokenizer::notifyFinished):
489         * ksvg2/misc/SVGImageLoader.cpp: - renamed a function that is now in the base class
490         (WebCore::SVGImageLoader::dispatchLoadEvent):
491         * loader/Cache.cpp: - return early if an error occured
492         (WebCore::Cache::requestResource):
493         (WebCore::Cache::remove):
494         * loader/CachedImage.h: - renamed a function that is now in the base class
495         (WebCore::CachedImage::canRender):
496         * loader/CachedResource.h: - renamed a function that is now in the base class
497         (WebCore::CachedResource::errorOccurred):
498         * loader/CachedScript.h: - renamed a function that is now in the base class 
499         (WebCore::CachedScript::schedule):
500         * loader/DocLoader.cpp: - The heart of the fix, prevents resources from being created or retrieved from the cache if a remote site is requesting the local resource.
501         (WebCore::DocLoader::requestResource):
502         (WebCore::DocLoader::setLoadInProgress):
503         * page/EventHandler.cpp: - renamed a function that is now in the base class
504         (WebCore::selectCursor):
505         * rendering/HitTestResult.cpp: - renamed a function that is now in the base class
506         (WebCore::HitTestResult::image):
507         * rendering/RenderImage.cpp: - renamed a function that is now in the base class
508         (WebCore::RenderImage::setCachedImage):
509         (WebCore::RenderImage::imageChanged):
510         (WebCore::RenderImage::paint):
511         (WebCore::RenderImage::layout):
512         (WebCore::RenderImage::calcAspectRatioWidth):
513         (WebCore::RenderImage::calcAspectRatioHeight):
514         * rendering/RenderImage.h: - renamed a function that is now in the base class
515         (WebCore::RenderImage::errorOccurred):
516         * rendering/RenderListItem.cpp: - renamed a function that is now in the base class
517         (WebCore::RenderListItem::setStyle):
518         * rendering/RenderListMarker.cpp: - renamed a function that is now in the base class
519         (WebCore::RenderListMarker::isImage):
520
521 2007-02-07  Krzysztof Kowalczyk  <kkowalczyk@gmail.com>
522
523         Reviewed by Maciej.
524
525         Add updateGeometry() to gdk's ScrollView. Needed to fix resizing of the window
526         in gdk.
527
528         * platform/ScrollView.h:
529         * platform/gdk/ScrollViewGdk.cpp:
530         (WebCore::ScrollView::updateGeometry):
531         (WebCore::ScrollView::setDrawable):
532
533 2007-02-07  Krzysztof Kowalczyk  <kkowalczyk@gmail.com>
534
535         Reviewed by Maciej.
536
537         Linux/gdk build fixes.
538
539         * platform/ContextMenuItem.h:
540         * platform/PlatformMenuDescription.h:
541         * platform/gdk/PopupMenuGdk.cpp: Added. Renamed from RenderPopupMenuGdk.cpp for
542         consistency with other platforms.
543         (WebCore::PopupMenu::PopupMenu):
544         (WebCore::PopupMenu::~PopupMenu):
545         * platform/gdk/RenderPopupMenuGdk.cpp: Removed.
546         * platform/gdk/RenderPopupMenuGdk.h: Removed.
547
548 2007-02-07  Mitz Pettel  <mitz@webkit.org>
549
550         Reviewed by Maciej.
551
552         - fix http://bugs.webkit.org/show_bug.cgi?id=12608
553           Incorrect min. width calculation of a series of floats with clear:both and white-space:nowrap
554
555         Test: fast/block/float/nowrap-clear-min-width.html
556
557         * rendering/RenderBlock.cpp:
558         (WebCore::RenderBlock::calcInlineMinMaxWidth):
559
560 2007-02-07  Mitz Pettel  <mitz@webkit.org>
561
562         Reviewed by Dave Hyatt.
563
564         - fix http://bugs.webkit.org/show_bug.cgi?id=10522
565           REGRESSION: Incomplete repaint after table relayout that decreases height
566
567         Test: fast/repaint/intermediate-layout-position.html
568
569         * rendering/RenderBlock.cpp:
570         (WebCore::RenderBlock::layoutBlock): Adjust the old bounds by the layout delta,
571         to get the block's absolute bounds as they were before its ancestors moved it
572         during layout.
573         (WebCore::RenderBlock::collapseMargins): Update the layout delta for the child
574         when moving it.
575         (WebCore::RenderBlock::clearFloatsIfNeeded): Ditto.
576         (WebCore::RenderBlock::determineHorizontalPosition): Ditto.
577         (WebCore::RenderBlock::layoutBlockChildren): Ditto.
578         * rendering/RenderFlexibleBox.cpp:
579         (WebCore::RenderFlexibleBox::layoutBlock): Adjust the old bounds by the current
580         layout delta.
581         * rendering/RenderHTMLCanvas.cpp:
582         (WebCore::RenderHTMLCanvas::layout): Ditto.
583         * rendering/RenderImage.cpp:
584         (WebCore::RenderImage::layout): Ditto.
585         * rendering/RenderTable.cpp:
586         (WebCore::RenderTable::layout): Ditto.
587         * rendering/RenderView.h:
588         (WebCore::RenderView::layoutDelta): Added. Keeps track of the offset between
589         the position of the object currently being laid out and its position at the
590         end of the last layout.
591         (WebCore::RenderView::addLayoutDelta): Added.
592
593 2007-02-07  Christopher Brichford  <chrisb@adobe.com>
594
595         Reviewed by Brady.
596
597         http://bugs.webkit.org/show_bug.cgi?id=6286
598         Very large (~500MB) images cause reproducible Safari crash
599
600         * loader/CachedImage.cpp: 
601         (WebCore::CachedImage::bufferData): Detect failure to create a
602         large Vector<> and call error() when that happens.
603
604 2007-02-07  Mitz Pettel  <mitz@webkit.org>
605
606         Reviewed by Dave Hyatt.
607
608         - fix http://bugs.webkit.org/show_bug.cgi?id=5399
609           no-repeat on negatively positioned background images are ignored
610
611         Test: fast/backgrounds/repeat/negative-offset-repeat.html
612
613         - fix http://bugs.webkit.org/show_bug.cgi?id=5821
614           Changing background of <col> doesn't repaint the column
615
616         Test: fast/repaint/table-col-background.html
617
618         - fix http://bugs.webkit.org/show_bug.cgi?id=11720
619           REGRESSION: large amounts of CPU consumed viewing this site
620
621         * rendering/RenderBox.cpp:
622         (WebCore::RenderBox::imageChanged): Added. Finds the border and/or background
623         layer(s) that use the image and invalidates only the rect in which the image
624         actually paints. There are two special cases in this function: 1) for the body
625         element, the background is propagated to the root; 2) inline flows do a full
626         repaint.
627         (WebCore::RenderBox::calculateBackgroundImageGeometry): Added. Factored out,
628         simplified and corrected the calculation of the rectangle into which the background
629         image paints, the tile size and the pattern phase.
630         (WebCore::RenderBox::paintBackgroundExtended):
631         * rendering/RenderBox.h:
632         * rendering/RenderObject.cpp:
633         * rendering/RenderObject.h:
634         (WebCore::RenderObject::imageChanged): Moved the implementation to RenderBox.
635         * rendering/RenderTableCol.cpp:
636         (WebCore::RenderTableCol::getAbsoluteRepaintRect): Overridden to return the
637         table's repaint rect.
638         (WebCore::RenderTableCol::imageChanged): Overridden to do a full repaint, which
639         currently repaints the entire table.
640         * rendering/RenderTableCol.h:
641         * rendering/RenderTableRow.cpp:
642         (WebCore::RenderTableRow::imageChanged): Overridden to do a full repaint
643         of the row, since the backgrounds are painted by the cells.
644         * rendering/RenderTableRow.h:
645         * rendering/RenderTableSection.cpp:
646         (WebCore::RenderTableSection::imageChanged): Overridden to do a full
647         repaint of the section, since the backgrounds are painted by the cells.
648         * rendering/RenderTableSection.h:
649
650 2007-02-07  Anders Carlsson  <acarlsson@apple.com>
651
652         Reviewed by Maciej.
653
654         Move shouldInterruptJavaScript to the Chrome.
655
656         * bindings/js/kjs_binding.cpp:
657         (KJS::ScriptInterpreter::shouldInterruptScript):
658         * page/Chrome.cpp:
659         (WebCore::Chrome::shouldInterruptJavaScript):
660         * page/Chrome.h:
661         * page/ChromeClient.h:
662         * page/Frame.h:
663         * page/mac/FrameMac.h:
664         * page/mac/FrameMac.mm:
665         * page/mac/WebCoreFrameBridge.h:
666         * platform/graphics/svg/SVGImageEmptyClients.h:
667         (WebCore::SVGEmptyChromeClient::shouldInterruptJavaScript):
668
669 2007-02-07  Darin Adler  <darin@apple.com>
670
671         Reviewed by Maciej.
672
673         - <rdar://problem/4826861> WebKit tests show memory leaks in NSHTMLReader, caused by method named "hash"
674
675         * bindings/scripts/CodeGeneratorObjC.pm: Added a list of method names we should never use, since they
676         are in base classes WebScriptObject and NSObject. Luckily, only "hash" is causing trouble. Added
677         "hash" to the existing special case for "id". Now "hash" is "hashName" just as "id" is "idName".
678
679 2007-02-07  Krzysztof Kowalczyk  <kkowalczyk@gmail.com>
680
681         Reviewed by Adam Roben.
682
683         Linux/gdk build fixes for graphics-related stuff.
684
685         * platform/graphics/cairo/ImageCairo.cpp:
686         (WebCore::BitmapImage::checkForSolidColor):
687         * platform/graphics/cairo/ImageSourceCairo.cpp:
688         (WebCore::ImageSource::setData):
689         * platform/graphics/gdk/ImageGdk.cpp:
690         (WebCore::BitmapImage::initPlatformData):
691         (WebCore::BitmapImage::invalidatePlatformData):
692         (WebCore::Image::loadPlatformResource):
693         (WebCore::Image::drawPattern):
694
695 2007-02-07  Krzysztof Kowalczyk  <kkowalczyk@gmail.com>
696
697         Reviewed by Maciej.
698
699         Linux/gdk build fixes related to networking.
700
701         * platform/network/ResourceHandleInternal.h: Add accessor for m_client.
702         (WebCore::ResourceHandleInternal::client):
703         * platform/network/gdk/ResourceHandleCurl.cpp: Add missing functions and
704         massage for changed APIs.
705         (WebCore::ResourceHandle::start):
706         (WebCore::ResourceHandle::cancel):
707         (WebCore::ResourceHandle::bufferedData):
708         (WebCore::ResourceHandle::supportsBufferedData):
709         (WebCore::ResourceHandle::setDefersLoading):
710         * platform/network/gdk/ResourceHandleManager.cpp: Rename get() to
711         sharedInstance(). Massaged for changed APIs.
712         (WebCore::ResourceHandleManager::sharedInstance):
713         (WebCore::writeCallback):
714         (WebCore::ResourceHandleManager::downloadTimerCallback):
715         (WebCore::ResourceHandleManager::remove):
716         * platform/network/gdk/ResourceHandleManager.h: Ditto.
717
718 2007-02-07  Krzysztof Kowalczyk  <kkowalczyk@gmail.com>
719
720         Reviewed by Maciej.
721
722         Mismatched type of alloc/free function crashes gdk build.
723
724         * platform/image-decoders/jpeg/JPEGImageDecoder.cpp:
725         (WebCore::JPEGImageReader::close):
726
727 2007-02-07  Krzysztof Kowalczyk  <kkowalczyk@gmail.com>
728
729         Reviewed by Adam Roben.
730
731         Linux/gdk build fixes - add file based on qt implementation.
732
733         * platform/DragData.h:
734         * platform/gdk/DragDataGdk.cpp: Added.
735
736 2007-02-07  Krzysztof Kowalczyk  <kkowalczyk@gmail.com>
737
738         Reviewed by Adam Roben.
739
740         Linux/gdk build fixes - add new files based on qt implementation.
741
742         * page/gdk/DragControllerGdk.cpp: Added.
743         (WebCore::DragController::dragOperation):
744         * page/gdk/EventHandlerGdk.cpp: Added.
745         (WebCore::EventHandler::focusDocumentView):
746         (WebCore::EventHandler::passWidgetMouseDownEventToWidget):
747         (WebCore::EventHandler::handleDrag):
748         (WebCore::EventHandler::eventActivatedView):
749
750 2007-02-07  Krzysztof Kowalczyk  <kkowalczyk@gmail.com>
751
752         Reviewed by Adam Roben.
753
754         Linux/gdk build fixes - add new files based on Qt implementation.
755
756         * loader/gdk/DocumentLoaderGdk.cpp: Added.
757         (WebCore::DocumentLoader::getResponseModifiedHeader):
758         * loader/gdk/FrameLoaderClientGdk.cpp: Added.
759         (WebCore::FrameLoaderClientGdk::FrameLoaderClientGdk):
760         (WebCore::FrameLoaderClientGdk::frame):
761         (WebCore::FrameLoaderClientGdk::userAgent):
762         (WebCore::FrameLoaderClientGdk::createDocumentLoader):
763         (WebCore::FrameLoaderClientGdk::dispatchWillSubmitForm):
764         (WebCore::FrameLoaderClientGdk::committedLoad):
765         (WebCore::FrameLoaderClientGdk::dispatchDidReceiveAuthenticationChallenge):
766         (WebCore::FrameLoaderClientGdk::dispatchDidCancelAuthenticationChallenge):
767         (WebCore::FrameLoaderClientGdk::dispatchWillSendRequest):
768         (WebCore::FrameLoaderClientGdk::assignIdentifierToInitialRequest):
769         (WebCore::FrameLoaderClientGdk::postProgressStartedNotification):
770         (WebCore::FrameLoaderClientGdk::postProgressEstimateChangedNotification):
771         (WebCore::FrameLoaderClientGdk::postProgressFinishedNotification):
772         (WebCore::FrameLoaderClientGdk::frameLoaderDestroyed):
773         (WebCore::FrameLoaderClientGdk::dispatchDidReceiveResponse):
774         (WebCore::FrameLoaderClientGdk::dispatchDecidePolicyForMIMEType):
775         (WebCore::FrameLoaderClientGdk::dispatchDecidePolicyForNewWindowAction):
776         (WebCore::FrameLoaderClientGdk::dispatchDecidePolicyForNavigationAction):
777         (WebCore::FrameLoaderClientGdk::createPlugin):
778         (WebCore::FrameLoaderClientGdk::createFrame):
779         (WebCore::FrameLoaderClientGdk::redirectDataToPlugin):
780         (WebCore::FrameLoaderClientGdk::createJavaAppletWidget):
781         (WebCore::FrameLoaderClientGdk::objectContentType):
782         (WebCore::FrameLoaderClientGdk::overrideMediaType):
783         (WebCore::FrameLoaderClientGdk::windowObjectCleared):
784         (WebCore::FrameLoaderClientGdk::setMainFrameDocumentReady):
785         (WebCore::FrameLoaderClientGdk::hasWebView):
786         (WebCore::FrameLoaderClientGdk::hasFrameView):
787         (WebCore::FrameLoaderClientGdk::dispatchDidFinishLoad):
788         (WebCore::FrameLoaderClientGdk::frameLoadCompleted):
789         (WebCore::FrameLoaderClientGdk::privateBrowsingEnabled):
790         (WebCore::FrameLoaderClientGdk::makeDocumentView):
791         (WebCore::FrameLoaderClientGdk::makeRepresentation):
792         (WebCore::FrameLoaderClientGdk::forceLayout):
793         (WebCore::FrameLoaderClientGdk::forceLayoutForNonHTML):
794         (WebCore::FrameLoaderClientGdk::setCopiesOnScroll):
795         (WebCore::FrameLoaderClientGdk::detachedFromParent1):
796         (WebCore::FrameLoaderClientGdk::detachedFromParent2):
797         (WebCore::FrameLoaderClientGdk::detachedFromParent3):
798         (WebCore::FrameLoaderClientGdk::detachedFromParent4):
799         (WebCore::FrameLoaderClientGdk::loadedFromPageCache):
800         (WebCore::FrameLoaderClientGdk::dispatchDidHandleOnloadEvents):
801         (WebCore::FrameLoaderClientGdk::dispatchDidReceiveServerRedirectForProvisionalLoad):
802         (WebCore::FrameLoaderClientGdk::dispatchDidCancelClientRedirect):
803         (WebCore::FrameLoaderClientGdk::dispatchWillPerformClientRedirect):
804         (WebCore::FrameLoaderClientGdk::dispatchDidChangeLocationWithinPage):
805         (WebCore::FrameLoaderClientGdk::dispatchWillClose):
806         (WebCore::FrameLoaderClientGdk::dispatchDidReceiveIcon):
807         (WebCore::FrameLoaderClientGdk::dispatchDidStartProvisionalLoad):
808         (WebCore::FrameLoaderClientGdk::dispatchDidReceiveTitle):
809         (WebCore::FrameLoaderClientGdk::dispatchDidCommitLoad):
810         (WebCore::FrameLoaderClientGdk::dispatchDidFinishDocumentLoad):
811         (WebCore::FrameLoaderClientGdk::dispatchDidFirstLayout):
812         (WebCore::FrameLoaderClientGdk::dispatchShow):
813         (WebCore::FrameLoaderClientGdk::cancelPolicyCheck):
814         (WebCore::FrameLoaderClientGdk::dispatchDidLoadMainResource):
815         (WebCore::FrameLoaderClientGdk::revertToProvisionalState):
816         (WebCore::FrameLoaderClientGdk::clearUnarchivingState):
817         (WebCore::FrameLoaderClientGdk::willChangeTitle):
818         (WebCore::FrameLoaderClientGdk::didChangeTitle):
819         (WebCore::FrameLoaderClientGdk::finishedLoading):
820         (WebCore::FrameLoaderClientGdk::finalSetupForReplace):
821         (WebCore::FrameLoaderClientGdk::setDefersLoading):
822         (WebCore::FrameLoaderClientGdk::isArchiveLoadPending):
823         (WebCore::FrameLoaderClientGdk::cancelPendingArchiveLoad):
824         (WebCore::FrameLoaderClientGdk::clearArchivedResources):
825         (WebCore::FrameLoaderClientGdk::canHandleRequest):
826         (WebCore::FrameLoaderClientGdk::canShowMIMEType):
827         (WebCore::FrameLoaderClientGdk::representationExistsForURLScheme):
828         (WebCore::FrameLoaderClientGdk::generatedMIMETypeForURLScheme):
829         (WebCore::FrameLoaderClientGdk::restoreScrollPositionAndViewState):
830         (WebCore::FrameLoaderClientGdk::provisionalLoadStarted):
831         (WebCore::FrameLoaderClientGdk::didFinishLoad):
832         (WebCore::FrameLoaderClientGdk::prepareForDataSourceReplacement):
833         (WebCore::FrameLoaderClientGdk::setTitle):
834         (WebCore::FrameLoaderClientGdk::setDocumentViewFromPageCache):
835         (WebCore::FrameLoaderClientGdk::dispatchDidReceiveContentLength):
836         (WebCore::FrameLoaderClientGdk::dispatchDidFinishLoading):
837         (WebCore::FrameLoaderClientGdk::dispatchDidFailLoading):
838         (WebCore::FrameLoaderClientGdk::dispatchDidLoadResourceFromMemoryCache):
839         (WebCore::FrameLoaderClientGdk::dispatchDidFailProvisionalLoad):
840         (WebCore::FrameLoaderClientGdk::dispatchDidFailLoad):
841         (WebCore::FrameLoaderClientGdk::download):
842         (WebCore::FrameLoaderClientGdk::cancelledError):
843         (WebCore::FrameLoaderClientGdk::cannotShowURLError):
844         (WebCore::FrameLoaderClientGdk::interruptForPolicyChangeError):
845         (WebCore::FrameLoaderClientGdk::cannotShowMIMETypeError):
846         (WebCore::FrameLoaderClientGdk::fileDoesNotExistError):
847         (WebCore::FrameLoaderClientGdk::shouldFallBack):
848         (WebCore::FrameLoaderClientGdk::willUseArchive):
849         (WebCore::FrameLoaderClientGdk::saveScrollPositionAndViewStateToItem):
850         (WebCore::FrameLoaderClientGdk::saveDocumentViewToPageCache):
851         (WebCore::FrameLoaderClientGdk::canCachePage):
852         (WebCore::FrameLoaderClientGdk::dispatchCreatePage):
853         (WebCore::FrameLoaderClientGdk::dispatchUnableToImplementPolicy):
854         (WebCore::FrameLoaderClientGdk::setMainDocumentError):
855         (WebCore::FrameLoaderClientGdk::startDownload):
856         (WebCore::FrameLoaderClientGdk::updateGlobalHistoryForStandardLoad):
857         (WebCore::FrameLoaderClientGdk::updateGlobalHistoryForReload):
858         (WebCore::FrameLoaderClientGdk::shouldGoToHistoryItem):
859         * loader/gdk/FrameLoaderClientGdk.h: Added.
860         (WebCore::FrameLoaderClientGdk::~FrameLoaderClientGdk):
861         (WebCore::FrameLoaderClientGdk::setFrame):
862
863 2007-02-07  Krzysztof Kowalczyk  <kkowalczyk@gmail.com>
864
865         Reviewed by Maciej.
866
867         Linux/gdk fixes related to fonts.
868
869         * platform/gdk/FontDataGdk.cpp:
870         (WebCore::FontData::platformInit): remove a work-around for older cairo versions
871         since Ubuntu 6.10 ships with cairo that is new enough
872         * platform/gdk/FontGdk.cpp:
873         (WebCore::Font::drawGlyphs):
874         * platform/gdk/FontPlatformDataGdk.cpp: Remove unused variables.
875         (WebCore::FontPlatformData::FontPlatformData):
876
877 2007-02-07  Alexey Proskuryakov  <ap@webkit.org>
878
879         Reviewed by Darin.
880
881         http://bugs.webkit.org/show_bug.cgi?id=12582
882         REGRESSION: Unclosed <title> makes the window display garbage or empty title
883
884         Automatic testing is not possible, and manual testing probably doesn't make sense.
885
886         * loader/DocumentLoader.cpp:
887         (WebCore::canonicalizedTitle): Bail out early if the passed in string is all whitespace.
888
889 2007-02-06  Anders Carlsson  <acarlsson@apple.com>
890
891         Reviewed by John Sullivan.
892
893         <rdar://problem/4977952>
894         REGRESSION: Yahoo Messenger IM is totally blank
895         
896         * loader/FrameLoader.cpp:
897         (WebCore::FrameLoader::checkContentPolicy):
898         Don't ask the policy delegate for content that has valid substitute data.
899         
900         (WebCore::FrameLoader::checkNavigationPolicy):
901         If the loader has substitute data but doesn't have an unreachable URL, let the policy
902         delegate decide what to do.
903
904 2007-02-07  Geoffrey Garen  <ggaren@apple.com>
905
906         Reviewed by Darin Adler.
907
908         Restoring some of the functionality I removed in r19445. It's insufficient for
909         each page to cancel keepAlive only for its child frames, because a frame
910         can be removed from the page before we get a chance to cancel its keepAlive.
911         So, the page destructor has to cancel keepAlive for all frames. This is safe
912         because we prohibit closing a WebView while JavaScript is executing.
913
914         * page/Frame.cpp:
915         (WebCore::keepAliveSet):
916         (WebCore::Frame::keepAlive):
917         (WebCore::Frame::cancelAllKeepAlive):
918         (WebCore::Frame::lifeSupportTimerFired):
919         * page/Frame.h:
920         * page/Page.cpp:
921         (WebCore::Page::~Page):
922
923 2007-02-07  Alexey Proskuryakov  <ap@webkit.org>
924
925         Reviewed by Darin.
926
927         http://bugs.webkit.org/show_bug.cgi?id=12603
928         A crash when trying to use XPath functions normalize-space(), string-length() and number()
929
930         Test: fast/xpath/implicit-node-args.html
931
932         * xml/XPathFunctions.cpp:
933         (WebCore::XPath::FunNumber::doEvaluate): Implemented zero parameter case.
934         (WebCore::XPath::FunctionMapping::): Corrected descriptions of these functions, as they
935         do allow zero parameters.
936         (WebCore::XPath::createFunction): Combined the two failure cases to ensure that this
937         function never returns 0.
938
939 2007-02-07  Zack Rusin  <zrusin@trolltech.com>
940
941         Fix compilation
942
943         * page/qt/EventHandlerQt.cpp:
944         (WebCore::EventHandler::eventActivatedView):
945
946 2007-02-06  Alice Liu  <alice.liu@apple.com>
947
948         Reviewed by Maciej.
949
950         Added editing command functions for scrolling by page and moving the caret
951
952         * editing/Editor.cpp:
953         (WebCore::execMoveUpByPageAndModifyCaret):
954         (WebCore::execMoveDownByPageAndModifyCaret):
955         (WebCore::CommandEntry::):
956
957 2007-02-06  Justin Garcia  <justin.garcia@apple.com>
958
959         Reviewed by john
960
961         <rdar://problem/4922367>
962         WebView selectLine: followed by deleteBackward: deletes TABLE element of following line
963
964         * editing/AppendNodeCommand.cpp:
965         (WebCore::AppendNodeCommand::doApply): Don't ASSERT when manipulating
966         non-editable content that is embedded in editable content.  We'll do 
967         this kind of manipulation when removing redundant style spans after
968         pasting content that has non-editable pieces.
969         * editing/InsertNodeBeforeCommand.cpp:
970         (WebCore::InsertNodeBeforeCommand::doApply): Ditto.
971         * editing/htmlediting.cpp:
972         (WebCore::isContentEditable): Added, wrapper for Node::isContentEditable
973         (WebCore::rangeCompliantEquivalent): Although legal, 
974         [{table, select, etc.}, {0, numChildren}] don't refer to children of the element, 
975         but positions before and after the element.  So, rangeCompliantEquivalent is 
976         really responsible for converting illegal positions *and* legal positions 
977         that have a special meaning internally.
978         * editing/htmlediting.h:
979
980 2007-02-06  Anders Carlsson  <acarlsson@apple.com>
981
982         Reviewed by Brady.
983
984         * platform/String.cpp:
985         (WebCore::String::ascii):
986         Fix dumping null Strings.
987
988 2007-02-06  Anders Carlsson  <acarlsson@apple.com>
989
990         Reviewed by Geoff.
991
992         Fix <rdar://problem/4979484>
993         
994         * css/CSSPrimitiveValue.cpp:
995         (WebCore::isCSSTokenizerIdentifier):
996         Do the range check before calling isalpha or isalnum.
997
998 2007-02-06  Geoffrey Garen  <ggaren@apple.com>
999
1000         Reviewed by Darin Adler.
1001
1002         Fixed Frame/RenderObject/Node leak report seen while running SVG image tests.
1003         (We'll need this fix if we ever re-enable SVG image.)
1004         
1005         The extra reference belonged to the Frame keepAlive timer (so this was
1006         not a "real" leak, in the end). The Page destructor has code to cancel all 
1007         Frame keepAlive timers upon the destruction of the last Page, but an SVG 
1008         image puts a Page within a Page, making this condition impossible to meet.
1009         
1010         The fix here is to have each individual page cancel the keepAlive timers 
1011         belonging to its child frames.
1012         
1013         * page/Frame.cpp: Changed the FrameCounter to use WTF logging.
1014         (WebCore::): Nixed the lifeSupportSet, since it's no longer used.
1015         (WebCore::Frame::cancelKeepAlive): Renamed from "endLifeSupport" to match
1016         the name "keepAlive".
1017         * page/Page.cpp:
1018         (WebCore::Page::~Page): Made each page cancel its child keepAlive timers 
1019         and clear its mainFrame, since we may never reach the condition of having 0 Pages.
1020
1021 2007-02-06  Adam Roben  <aroben@apple.com>
1022
1023         Rubberstamped by Brady.
1024
1025         Revert the log channel constants to their old values for all you pretty
1026         people out there who were using the old ones. I also renamed
1027         LogResources to LogPlatformLeaks to be a bit more specific.
1028
1029         * platform/Logging.cpp:
1030         (WebCore::):
1031         * platform/Logging.h:
1032
1033 2007-02-05  Justin Garcia  <justin.garcia@apple.com>
1034
1035         Reviewed by john
1036
1037         <rdar://problem/4959067>
1038         Bullets get erased or moved down to another line
1039         <rdar://problem/4912529>
1040         Seed: Bulleted list in Note in Mail.app does not work with Japanese input mode
1041         
1042         Do not expand the selection to include fully selected 
1043         special elements when insering text over a selection.
1044
1045         * editing/CompositeEditCommand.cpp:
1046         (WebCore::CompositeEditCommand::deleteSelection): Pass
1047         expandForSpecialElements through to DeleteSelectionCommand's constructor.
1048         (WebCore::CompositeEditCommand::moveParagraphs): Use the 
1049         convenience function.
1050         * editing/CompositeEditCommand.h:
1051         * editing/DeleteSelectionCommand.h:
1052         * editing/InsertTextCommand.cpp:
1053         (WebCore::InsertTextCommand::input): Do not expand the selection
1054         to be deleted for special elements.
1055         * editing/ReplaceSelectionCommand.cpp:
1056         (WebCore::ReplaceSelectionCommand::doApply): Added a FIXME about 
1057         when we should expand the selection.
1058
1059 2007-02-06  Geoffrey Garen  <ggaren@apple.com>
1060
1061         Reviewed by Anders Carlsson.
1062         
1063         Disabled support for SVG image because it crashes all the time.
1064
1065         * loader/CachedImage.cpp:
1066         (WebCore::CachedImage::createImage):
1067
1068 2007-02-06  Mitz Pettel  <mitz@webkit.org>
1069
1070         Reviewed by Darin.
1071
1072         - fix http://bugs.webkit.org/show_bug.cgi?id=12518
1073           Betsson.com crashes browser
1074
1075         Test: fast/layers/generated-layer-scrollbar-crash.html
1076
1077         * rendering/RenderLayer.cpp:
1078         (WebCore::RenderLayer::createScrollbar): Changed element()->document() to
1079         document() to work with anonymous objects.
1080         (WebCore::RenderLayer::updateOverflowStatus): Ditto.
1081
1082 2007-02-06  Eric Seidel  <eric@webkit.org>
1083
1084         Reviewed by mitz.
1085
1086         WebKit ignores floating point values for stroke-miterlimit
1087         http://bugs.webkit.org/show_bug.cgi?id=12577
1088         
1089         Test: svg/W3C-SVG-1.1/painting-stroke-07-t.svg
1090
1091         * ksvg2/css/SVGCSSParser.cpp:
1092         (WebCore::CSSParser::parseSVGValue):
1093         * ksvg2/css/SVGCSSStyleSelector.cpp:
1094         (WebCore::CSSStyleSelector::applySVGProperty):
1095         * ksvg2/css/SVGRenderStyle.h:
1096         * ksvg2/css/SVGRenderStyleDefs.h:
1097         (WebCore::StyleStrokeData::operator!=):
1098
1099 2007-02-06  Adam Roben  <aroben@apple.com>
1100
1101         Reviewed by Ada and Oliver.
1102
1103         Adding a new LogResources channel for tracking platform resource usage.
1104
1105         * platform/Logging.cpp: Added new channel, cleaned up constants to be more readable.
1106         * platform/Logging.h: Declare new channel.
1107
1108 2007-02-06  Alexey Proskuryakov  <ap@webkit.org>
1109
1110         Reviewed by Geoff.
1111
1112         http://bugs.webkit.org/show_bug.cgi?id=12619
1113         Non-abbreviated XPaths don't work
1114
1115         Test: fast/xpath/ancestor-axis.html
1116
1117         * xml/XPathParser.cpp:
1118         (WebCore::XPath::Parser::lex): Fix axis name parsing to actually work.
1119         * xml/XPathStep.cpp:
1120         (WebCore::XPath::Step::nodeTestMatches): Fix "*" node test to actually work.
1121
1122 2007-02-06  Mark Rowe  <mrowe@apple.com>
1123
1124         Roll out incomplete support for font-stretch (r19350) at Dave Hyatt's request.
1125         See http://bugs.webkit.org/show_bug.cgi?id=12530#c9 for more info.
1126
1127         * css/CSSComputedStyleDeclaration.cpp:
1128         (WebCore::):
1129         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
1130         * css/cssparser.cpp:
1131         (WebCore::CSSParser::parseValue):
1132         * css/cssstyleselector.cpp:
1133         (WebCore::CSSStyleSelector::applyDeclarations):
1134         (WebCore::CSSStyleSelector::applyProperty):
1135         * platform/FontCache.cpp:
1136         (WebCore::FontPlatformDataCacheKey::FontPlatformDataCacheKey):
1137         (WebCore::FontPlatformDataCacheKey::operator==):
1138         (WebCore::computeHash):
1139         (WebCore::FontPlatformDataCacheKeyTraits::deletedValue):
1140         (WebCore::FontPlatformDataCacheKeyTraits::emptyValue):
1141         (WebCore::FontCache::getCachedFontPlatformData):
1142         * platform/FontDescription.h:
1143         (WebCore::FontDescription::FontDescription):
1144         (WebCore::FontDescription::weight):
1145         (WebCore::FontDescription::setWeight):
1146         (WebCore::FontDescription::operator==):
1147         * platform/mac/FontCacheMac.mm:
1148         (WebCore::FontCache::createFontPlatformData):
1149         * platform/mac/WebFontCache.mm:
1150         (acceptableChoice):
1151         (betterChoice):
1152         (+[WebFontCache fontWithFamily:traits:size:]):
1153
1154 2007-02-05  Adele Peterson  <adele@apple.com>
1155
1156         Reviewed by Darin.
1157
1158         A few small updates to my bidi patch.
1159
1160         * rendering/RenderFileUploadControl.cpp: (WebCore::RenderFileUploadControl::paintObject): Moved the declaration of the CharacterBuffer outside the if statement since we use its data outside that scope.
1161         * rendering/RenderListBox.cpp: (WebCore::RenderListBox::paintItemForeground): ditto.
1162         * rendering/bidi.cpp: (WebCore::RenderBlock::bidiReorderCharacters): Used a PassRefPtr for the BidiContext.
1163
1164 2007-02-05  Adele Peterson  <adele@apple.com>
1165
1166         Reviewed by Adam.
1167
1168         Fix for assertion failure in fast/events/objc-keyboard-event-creation.html
1169
1170         * html/HTMLInputElement.cpp:
1171         (WebCore::HTMLInputElement::selectionStart): Check that the selection offsets are not equal to -1 (which is means the selection has never been set) instead of checking for >= 0.
1172         (WebCore::HTMLInputElement::selectionEnd): ditto.
1173         (WebCore::HTMLInputElement::setValue): ditto.
1174         (WebCore::HTMLInputElement::selection): Return an empty selection if the input is not a text field or if no selection has ever been set in the text field.
1175         * html/HTMLTextAreaElement.cpp:
1176         (WebCore::HTMLTextAreaElement::selectionStart): Check that the selection offsets are not equal to -1.
1177         (WebCore::HTMLTextAreaElement::selectionEnd): ditto.
1178         (WebCore::HTMLTextAreaElement::setValue): ditto.
1179         (WebCore::HTMLTextAreaElement::selection): Return an empty selection if no selection has ever been set in the textarea.
1180
1181         * dom/Position.cpp: Added FIXMEs that we should catch the negative offset earlier.
1182         (WebCore::Position::previous):
1183         (WebCore::Position::next):
1184
1185 2007-02-05  Justin Garcia  <justin.garcia@apple.com>
1186
1187         Reviewed by harrison
1188
1189         <rdar://problem/4947387>
1190         REGRESSION Shift Command Left should only select to the beginning of the line
1191
1192         * editing/Editor.cpp:
1193         (WebCore::CommandEntry::): Never copy/paste code.
1194
1195 2007-02-05  Darin Adler  <darin@apple.com>
1196
1197         Reviewed by John Sullivan.
1198
1199         - fix http://bugs.webkit.org/show_bug.cgi?id=11535
1200           <rdar://problem/4946959> REGRESSION: onclick="this.select();" not working on new forms (11535)
1201
1202         Test: fast/forms/input-select-on-click.html
1203
1204         * page/EventHandler.h: Added m_mouseDownWasSingleClickInSelection boolean.
1205         Organized other booleans a bit more logically.
1206         * page/EventHandler.cpp:
1207         (WebCore::EventHandler::EventHandler): Rearrange order to match EventHandler.h, add
1208         m_mouseDownWasSingleClickInSelection initialization.
1209         (WebCore::EventHandler::handleMousePressEventSingleClick): Set m_mouseDownWasSingleClickInSelection
1210         to true in the appropriate special case.
1211         (WebCore::EventHandler::handleMousePressEvent): Set m_mouseDownWasSingleClickInSelection to false.
1212         (WebCore::EventHandler::handleMouseReleaseEvent): Change code to clear selection or set to caret to
1213         only fire if m_mouseDownWasSingleClickInSelection was true rather than firing for any
1214         m_mouseDownMayStartSelect case.
1215
1216 2007-02-05  George Staikos  <staikos@kde.org>
1217
1218         Reviewed by Maciej.
1219
1220         Send HTTP cookies.
1221
1222         * platform/network/qt/ResourceHandleManagerQt.cpp:
1223         (WebCore::RequestQt::RequestQt):
1224
1225 2007-02-05  Adele Peterson  <adele@apple.com>
1226
1227         Reviewed by Mitz and Anders.
1228
1229         Fix for http://bugs.webkit.org/show_bug.cgi?id=11811
1230         <rdar://problem/4947184> REGRESSION (r11783): Hebrew text in list boxes is reversed
1231
1232         http://bugs.webkit.org/show_bug.cgi?id=11812
1233         <rdar://problem/4960269> REGRESSION (Native file upload): Hebrew filenames are reversed
1234
1235         Tests: 
1236         fast/text/international/bidi-listbox.html
1237         fast/text/international/bidi-listbox-atsui.html
1238
1239         * rendering/RenderBlock.h: Added static bidiReorderCharacters that will run the bidi algorithm on a character buffer.
1240         * rendering/bidi.cpp:
1241         (WebCore::RenderBlock::bidiReorderCharacters): Added. Creates an anonymous RenderBlock and RenderText to feed into bidiReorderLines.
1242         (WebCore::RenderBlock::constructLine): Uses the new convenience methods on BidiRun.
1243         * rendering/bidi.h:
1244         (WebCore::BidiRun::reversed): Added convenience method.
1245         (WebCore::BidiRun::dirOverride): ditto.
1246
1247         * rendering/RenderFileUploadControl.cpp: (WebCore::RenderFileUploadControl::paintObject): Creates a buffer and calls bidiReorderCharacters
1248           to get a correctly ordered character buffer for drawText.
1249         * rendering/RenderListBox.cpp: (WebCore::RenderListBox::paintItemForeground): ditto.
1250
1251 2007-02-05  Mitz Pettel  <mitz@webkit.org>
1252
1253         Reviewed by Darin.
1254
1255         - fix http://bugs.webkit.org/show_bug.cgi?id=12590
1256           REGRESSION: Text selection is weird in textareas in Trac wiki editing pages
1257
1258         Test: fast/repaint/selection-gap-overflow-scroll.html
1259
1260         * rendering/RenderBlock.cpp:
1261         (WebCore::RenderBlock::selectionGapRects): Adjust for overflow scroll.
1262
1263 2007-02-05  Mitz Pettel  <mitz@webkit.org>
1264
1265         Reviewed by Adele.
1266
1267         - fix http://bugs.webkit.org/show_bug.cgi?id=11916
1268           REGRESSION (SearchField): RTL search fields are mixed up
1269
1270         Test: fast/forms/search-rtl.html
1271
1272         * rendering/RenderTextControl.cpp:
1273         (WebCore::RenderTextControl::createInnerBlockStyle): Always make the inner
1274         block LTR so that the results button will be on the left and the cancel
1275         button will be on the right.
1276         (WebCore::RenderTextControl::createInnerTextStyle): Inherit the direction
1277         property directly from the control so that it won't be masked by the inner
1278         block's LTR override.
1279         (WebCore::RenderTextControl::nodeAtPoint): Removed code that swapped the
1280         results and cancel buttons for RTL.
1281         (WebCore::RenderTextControl::forwardEvent): Ditto.
1282         (WebCore::RenderTextControl::clientPaddingLeft): Ditto.
1283         (WebCore::RenderTextControl::clientPaddingRight): Ditto.
1284
1285 2007-02-05  Mitz Pettel  <mitz@webkit.org>
1286
1287         Reviewed by Adele.
1288
1289         - fix http://bugs.webkit.org/show_bug.cgi?id=12618
1290           REGRESSION (SearchField): Dragging across the text and releasing over the clear button clears the field
1291
1292         Test: fast/forms/search-cancel-button-mouseup.html
1293
1294         Made the cancel button capturing.
1295
1296         * html/HTMLTextFieldInnerElement.cpp:
1297         (WebCore::HTMLSearchFieldCancelButtonElement::HTMLSearchFieldCancelButtonElement):
1298         (WebCore::HTMLSearchFieldCancelButtonElement::defaultEventHandler):
1299         * html/HTMLTextFieldInnerElement.h:
1300
1301 2007-02-05  Mitz Pettel  <mitz@webkit.org>
1302
1303         Reviewed by Darin.
1304
1305         - fix http://bugs.webkit.org/show_bug.cgi?id=6626
1306           Arabic & Farsi rendered with no shaping (all glyphs separate, unreadable!)
1307
1308         No test possible since Mac OS X only ships with fonts that contain shaping
1309         information.
1310
1311         * icu/unicode/ushape.h: Added from
1312         http://www.opensource.apple.com/darwinsource/10.4.8.ppc/ICU-6.2.9/icuSources/common/unicode/
1313         * platform/FontData.h:
1314         (WebCore::FontData::shapesArabic): Added. Returns whether the font contains
1315         shaping information for Arabic or not.
1316         * platform/mac/FontDataMac.mm:
1317         (WebCore::FontData::platformInit):
1318         (WebCore::FontData::checkShapesArabic): Added. Checks whether the font contains
1319         a glyph metamorphosis table. The heuristic is that if a font contains Arabic glyphs
1320         and a metamorphosis table, then it includes shaping information for Arabic.
1321         * platform/mac/FontMac.mm:
1322         (WebCore::overrideLayoutOperation): Changed to use the same character buffer passed
1323         to ATSUI instead of the original character buffer and to give zero-width spaces zero
1324         width.
1325         (WebCore::isArabicLamWithAlefLigature): Added. Checks if the character is one
1326         of the Arabic presentation forms of Lam with Alef.
1327         (WebCore::shapeArabic): Added. This is a wrapper around the ICU Arabic shaping routine
1328         that replaces each space following a Lam with Alef ligature resulting from shaping
1329         with a zero-width space.
1330         (WebCore::ATSULayoutParameters::initialize): Changed to allocate the auxiliary buffer
1331         lazily for mirroring and Arabic shaping. Added a call to shapeArabic() when required.
1332
1333 2007-02-05  Eric Seidel  <eric@webkit.org>
1334
1335         No review, build fix only.
1336
1337         * ksvg2/svg/SVGStyleElement.cpp: add forgotten header.
1338
1339 2007-02-05  Eric Seidel  <eric@webkit.org>
1340
1341         Reviewed by bdash.
1342
1343         Fix style name testcase which I broke in my last commit.
1344
1345         * ksvg2/svg/SVGStyleElement.cpp:
1346         (WebCore::SVGStyleElement::xmlspace):
1347         (WebCore::SVGStyleElement::title): override Element::title()
1348         (WebCore::SVGStyleElement::parseMappedAttribute):
1349         * ksvg2/svg/SVGStyleElement.h:
1350
1351 2007-02-04  Eric Seidel  <eric@webkit.org>
1352
1353         Reviewed by darin.
1354
1355         Fix hand cursor on link hover for SVG
1356         Fix status text on link hover for SVG
1357         Fix tooltips on link hover for SVG
1358         Fix link dragging for SVG
1359         http://bugs.webkit.org/show_bug.cgi?id=12575
1360         
1361         Test: added manual-tests/svg-links.svg
1362
1363         * dom/Document.cpp:
1364         (WebCore::Document::prepareMouseEvent):
1365         * dom/Element.cpp:
1366         (WebCore::Element::title):
1367         * dom/Element.h:
1368         * html/HTMLElement.cpp:
1369         (WebCore::HTMLElement::setId):
1370         (WebCore::HTMLElement::title):
1371         (WebCore::HTMLElement::setTitle):
1372         (WebCore::HTMLElement::setLang):
1373         * html/HTMLElement.h:
1374         * ksvg2/svg/SVGAElement.cpp:
1375         (WebCore::SVGAElement::title):
1376         (WebCore::SVGAElement::parseMappedAttribute):
1377         (WebCore::SVGAElement::defaultEventHandler):
1378         * ksvg2/svg/SVGAElement.h:
1379         * ksvg2/svg/SVGTitleElement.cpp:
1380         * ksvg2/svg/SVGTitleElement.h:
1381         * manual-tests/svg-links.svg: Added.
1382         * rendering/HitTestResult.cpp:
1383         (WebCore::HitTestResult::title):
1384         (WebCore::HitTestResult::absoluteImageURL):
1385         (WebCore::HitTestResult::absoluteLinkURL):
1386         (WebCore::HitTestResult::isLiveLink):
1387         (WebCore::HitTestResult::titleDisplayString):
1388
1389 2007-02-04  Alexey Proskuryakov  <ap@webkit.org>
1390
1391         Reviewed by Darin.
1392
1393         http://bugs.webkit.org/show_bug.cgi?id=12602
1394         XPath functions string(), normalize-space() and string-length() don't work
1395         without arguments
1396
1397         Test: fast/xpath/implicit-node-args.html
1398
1399         * xml/XPathFunctions.cpp:
1400         (WebCore::XPath::FunString::doEvaluate):
1401         (WebCore::XPath::FunStringLength::doEvaluate):
1402         (WebCore::XPath::FunNormalizeSpace::doEvaluate):
1403         Don't try to pass RefPtr<Node> to the Value ctor.
1404
1405 2007-02-04  Alexey Proskuryakov  <ap@webkit.org>
1406
1407         Reviewed by Darin.
1408
1409         http://bugs.webkit.org/show_bug.cgi?id=8791
1410         XPath should support custom node resolvers
1411
1412         * bindings/js/JSCustomXPathNSResolver.cpp: Added.
1413         (WebCore::JSCustomXPathNSResolver::create):
1414         (WebCore::JSCustomXPathNSResolver::JSCustomXPathNSResolver):
1415         (WebCore::JSCustomXPathNSResolver::~JSCustomXPathNSResolver):
1416         (WebCore::JSCustomXPathNSResolver::lookupNamespaceURI):
1417         * bindings/js/JSCustomXPathNSResolver.h: Added.
1418         * bindings/objc/DOMCustomXPathNSResolver.h: Added.
1419         * bindings/objc/DOMCustomXPathNSResolver.mm: Added.
1420         (WebCore::DOMCustomXPathNSResolver::DOMCustomXPathNSResolver):
1421         (WebCore::DOMCustomXPathNSResolver::~DOMCustomXPathNSResolver):
1422         (WebCore::DOMCustomXPathNSResolver::lookupNamespaceURI):
1423         Wrappers for JS/ObjC objects that can be used as resolvers.
1424
1425         * bindings/scripts/CodeGeneratorJS.pm:
1426         * bindings/scripts/CodeGeneratorObjC.pm:
1427         Use the above wrappers to support custom resolvers.
1428
1429         * xml/XPathNSResolver.cpp:
1430         * xml/XPathNSResolver.h:
1431         Turned this class into an abstract one.
1432
1433         * xml/NativeXPathNSResolver.cpp: Added.
1434         (WebCore::NativeXPathNSResolver::NativeXPathNSResolver):
1435         (WebCore::NativeXPathNSResolver::~NativeXPathNSResolver):
1436         (WebCore::NativeXPathNSResolver::lookupNamespaceURI):
1437         * xml/NativeXPathNSResolver.h: Added.
1438         A XPathNSResolver subclass, doing what XPathNSResolver used to do.
1439
1440         * xml/XPathEvaluator.cpp:
1441         (WebCore::XPathEvaluator::createNSResolver): Create a NativeXPathNSResolver.
1442
1443         * WebCore.xcodeproj/project.pbxproj: Added new files.
1444
1445 2007-02-04  Oliver Hunt  <oliver@apple.com>
1446
1447         Reviewed by Adam.
1448
1449         Tidying up EventHandler, and moving more of
1450         EventHandlerMac.mm to EventHandler.cpp
1451
1452         Also added EventHandler::eventLoopHandleMouse[Dragged,Up]
1453         these are basically helper functions to allow correct event
1454         handling on MacOS.        
1455
1456         * page/EventHandler.cpp:
1457         (WebCore::EventHandler::handleMouseUp):
1458         (WebCore::EventHandler::dragSourceMovedTo):
1459         (WebCore::EventHandler::dragSourceEndedAt):
1460         (WebCore::EventHandler::dispatchDragSrcEvent):
1461            Moved from EventHandlerMac to EventHandler
1462
1463         * page/EventHandler.h:
1464         (WebCore::EventHandler::eventLoopHandleMouseUp):
1465         (WebCore::EventHandler::eventLoopHandleMouseDragged):
1466           Null implementations of two Mac helper functions
1467         * page/mac/EventHandlerMac.mm:
1468         (WebCore::EventHandler::eventLoopHandleMouseDragged):           
1469         (WebCore::EventHandler::handleDrag):
1470           Much tidying, reduced nesting, made less dependent on NS types   
1471         (WebCore::EventHandler::eventLoopHandleMouseDragged):
1472         (WebCore::EventHandler::eventLoopHandleMouseUp):  
1473           Helper functions to let us process events properly on MacOS
1474
1475         * page/mac/WebCoreFrameBridge.mm:
1476         (-[WebCoreFrameBridge dragSourceEndedAt:operation:]):
1477
1478 2007-02-04  George Staikos  <staikos@kde.org>
1479
1480         Reviewed by Zack.
1481
1482         Some Qt hacks and cleanups - makes rendering of forms much better on
1483         OS X
1484
1485         * platform/qt/PlatformKeyboardEventQt.cpp: Add Key_Return/Enter
1486         (WebCore::keyIdentifierForQtKeyCode):
1487         (WebCore::windowsKeyCodeForKeyEvent):
1488         * platform/qt/RenderThemeQt.cpp: Hacks and fix buttons
1489         (WebCore::RenderThemeQt::addIntrinsicMargins):
1490         (WebCore::RenderThemeQt::setCheckboxSize):
1491         (WebCore::RenderThemeQt::supportsFocus):
1492         (WebCore::RenderThemeQt::applyTheme):
1493
1494 2007-02-03  Maciej Stachowiak  <mjs@apple.com>
1495
1496         Rubber stamped by Adam.
1497
1498         - remove obsolete code that has an annoying space in the directory name
1499
1500         * WebCore.vcproj/Image Viewer/Image Viewer.cpp: Removed.
1501         * WebCore.vcproj/Image Viewer/Image Viewer.h: Removed.
1502         * WebCore.vcproj/Image Viewer/Image Viewer.rc: Removed.
1503         * WebCore.vcproj/Image Viewer/Image Viewer.reg: Removed.
1504         * WebCore.vcproj/Image Viewer/Image Viewer.vcproj: Removed.
1505         * WebCore.vcproj/Image Viewer/ImageDocument.cpp: Removed.
1506         * WebCore.vcproj/Image Viewer/ImageDocument.h: Removed.
1507         * WebCore.vcproj/Image Viewer/ImageMainFrame.cpp: Removed.
1508         * WebCore.vcproj/Image Viewer/ImageMainFrame.h: Removed.
1509         * WebCore.vcproj/Image Viewer/ImageView.cpp: Removed.
1510         * WebCore.vcproj/Image Viewer/ImageView.h: Removed.
1511         * WebCore.vcproj/Image Viewer/Resource.h: Removed.
1512         * WebCore.vcproj/Image Viewer/res/Image Viewer.ico: Removed.
1513         * WebCore.vcproj/Image Viewer/res/Image ViewerDoc.ico: Removed.
1514         * WebCore.vcproj/Image Viewer/res/ImageViewer.rc2: Removed.
1515         * WebCore.vcproj/Image Viewer/res/Toolbar.bmp: Removed.
1516         * WebCore.vcproj/Image Viewer/stdafx.cpp: Removed.
1517         * WebCore.vcproj/Image Viewer/stdafx.h: Removed.
1518
1519 2007-02-04  Mitz Pettel  <mitz@webkit.org>
1520
1521         Reviewed by Oliver.
1522
1523         - fix http://bugs.webkit.org/show_bug.cgi?id=12564
1524           REGRESSION: Uncaught AppKit exception when using the scrollwheel while Gmail is loading
1525
1526         * platform/mac/PlatformMouseEventMac.mm:
1527         (WebCore::eventNumberForEvent): Scroll wheel events don't have an event number.
1528
1529 2007-02-04  Nikolas Zimmermann  <zimmermann@kde.org>
1530
1531         Reviewed by Sam.
1532
1533         Add support for xml:space="preserve" for SVG text.
1534         It can be modeled by using white-space="pre" and replace \n by spaces.
1535
1536         Handle xml:space="default" correctly.
1537         Always remove tabs from SVG text - as demanded by spec.
1538
1539         Added test: svg/custom/text-whitespace-handling.svg
1540
1541         * css/svg.css:
1542         * ksvg2/svg/SVGTextContentElement.cpp:
1543         (WebCore::SVGTextContentElement::parseMappedAttribute):
1544         * rendering/RenderText.cpp:
1545         (WebCore::RenderText::setStyle):
1546         (WebCore::RenderText::setTextInternal):
1547         * rendering/bidi.cpp:
1548         (WebCore::shouldPreserveNewline):
1549         (WebCore::RenderBlock::skipWhitespace):
1550         (WebCore::RenderBlock::findNextLineBreak):
1551
1552 2007-02-03  Alexey Proskuryakov  <ap@webkit.org>
1553
1554         Reviewed by Darin.
1555
1556         http://bugs.webkit.org/show_bug.cgi?id=12560
1557         W3C XPath test Text_Nodes.svg fails
1558
1559         Covered by dom/svg/level3/xpath/Text_Nodes.svg
1560
1561         * xml/XPathStep.cpp:
1562         (WebCore::XPath::Step::nodeTestMatches): Only include the first text sibling in text() matches.
1563
1564 2007-02-03  Alexey Proskuryakov  <ap@webkit.org>
1565
1566         Reviewed by Darin.
1567
1568         http://bugs.webkit.org/show_bug.cgi?id=12485
1569         XPath id() function doesn't work as root in paths
1570
1571         Test: fast/xpath/id-path.html
1572
1573         * xml/XPathPath.cpp:
1574         (WebCore::XPath::Path::doEvaluate): Implemented.
1575         (WebCore::XPath::LocationPath::evaluate): A new overload that takes an initial NodeVector.
1576         (WebCore::XPath::LocationPath::doEvaluate): Moved most of the logic to the new evaluate().
1577
1578         * xml/XPathPath.h: Added a new evaluate() overload and a using declaration to keep the
1579         generic one visible.
1580
1581 2007-02-03  Alexey Proskuryakov  <ap@webkit.org>
1582
1583         Reviewed by Darin.
1584
1585         http://bugs.webkit.org/show_bug.cgi?id=12559
1586         REGRESSION: Crash in checkForHeadCharset() under GuardMalloc
1587
1588         No tests possible.
1589
1590         * loader/TextResourceDecoder.cpp:
1591         (WebCore::TextResourceDecoder::checkForHeadCharset): Fix end of buffer checks; sprinkle a number 
1592         of new ones over the function.
1593
1594 2007-02-03  David Kilzer  <ddkilzer@webkit.org>
1595
1596         Reviewed by NOBODY (no-svg build fix).
1597
1598         * page/EventHandler.cpp: Include FloatPoint.h.
1599
1600 2007-02-03  Alexey Proskuryakov  <ap@webkit.org>
1601
1602         Reviewed by Mitz.
1603
1604         http://bugs.webkit.org/show_bug.cgi?id=12549
1605         Wrong character encoding at www.ravmilim.co.il
1606
1607         Test: fast/encoding/meta-charset.html
1608
1609         * loader/TextResourceDecoder.cpp:
1610         (WebCore::TextResourceDecoder::checkForHeadCharset): Fix an off by one error.
1611
1612 2007-02-02  Maciej Stachowiak  <mjs@apple.com>
1613         
1614         Reviewed by Hyatt & Adele.
1615         
1616         - <rdar://problem/4896972> TV guide listings page doesn't finish loading (11674)
1617         
1618         Test case: fast/forms/disabled-select-change-index.html
1619         
1620         * html/HTMLOptionElement.cpp:
1621         (WebCore::HTMLOptionElement::setSelected): Allow changing selected state of a disabled
1622         option.
1623         
1624 2007-02-03  Nikolas Zimmermann  <zimmermann@kde.org>
1625
1626         Build fix, not reviewed.
1627
1628         Blind attempt to fix Qt build.
1629
1630         * WebCore.pro: Add RenderSVGGradientStop.cpp / RenderSVGHiddenContainer.cpp
1631
1632 2007-02-03  Nikolas Zimmermann  <zimmermann@kde.org>
1633
1634         Reviewed by Eric & Maciej.
1635
1636         Fix serveral <use> issues:
1637         - When events are dispatch to a referenced element, the actual event.target
1638           has to be set to the corresponding SVGElementInstance object
1639
1640         - Node::shadowAncestorNode() should _not_ return the shadowParentNode for SVG elements
1641           This is only needed for the HTML forms concept and breaks event dispatching for SVG shadow tree elements.
1642
1643         - Add SVGElementInstance as possible EventTarget in bindings/js/kjs_dom.cpp
1644           (Now event.target returns the actual SVGElementInstance object for a shadow tree element)
1645
1646         Fixes: http://bugs.webkit.org/show_bug.cgi?id=12502 (Reproducible crash when browsing SVG map.)
1647         Fixes: http://bugs.webkit.org/show_bug.cgi?id=12511 (<use> has event dispatching issues)
1648
1649         Added test: svg/custom/use-event-handler-on-use-element.svg
1650         Added test: svg/custom/use-event-handler-on-referenced-element.svg
1651         Added test: svg/custom/use-elementInstance-event-target.svg
1652         Added test: svg/custom/use-elementInstance-methods.svg
1653
1654         * bindings/js/kjs_dom.cpp:
1655         (KJS::toJS):
1656         * dom/EventTarget.cpp:
1657         (WebCore::EventTarget::toSVGElementInstance):
1658         * dom/EventTarget.h:
1659         * dom/EventTargetNode.cpp:
1660         (WebCore::EventTargetNode::handleLocalEvents):
1661         (WebCore::EventTargetNode::dispatchGenericEvent):
1662         (WebCore::EventTargetNode::dispatchEvent):
1663         * dom/EventTargetNode.h:
1664         * dom/Node.cpp:
1665         (WebCore::Node::shadowAncestorNode):
1666         * ksvg2/svg/SVGElement.cpp:
1667         (WebCore::shadowTreeParentElementForShadowTreeElement):
1668         (WebCore::SVGElement::dispatchEvent):
1669         * ksvg2/svg/SVGElement.h:
1670         * ksvg2/svg/SVGElementInstance.cpp:
1671         (WebCore::SVGElementInstance::toSVGElementInstance):
1672         * ksvg2/svg/SVGElementInstance.h:
1673         * ksvg2/svg/SVGUseElement.cpp:
1674         (WebCore::SVGUseElement::notifyAttributeChange):
1675         (WebCore::SVGUseElement::instanceForShadowTreeElement):
1676         * ksvg2/svg/SVGUseElement.h:
1677
1678 2007-02-02  Oliver Hunt  <oliver@apple.com>
1679
1680         Reviewed by Geoff.
1681
1682         Add guard around accessing [NSEvent eventNumber] to ensure
1683         we don't attempt to access it on on non-mouse related NSEvent.
1684
1685         * platform/mac/PlatformMouseEventMac.mm:
1686         (WebCore::eventNumberForEvent):
1687         (WebCore::PlatformMouseEvent::PlatformMouseEvent):
1688
1689 2007-02-02  Adam Roben  <aroben@apple.com>
1690
1691         Reviewed by Anders.
1692
1693         Try to be a little less selfish about DocumentLoader.
1694
1695         Spotted while working on <rdar://problem/4957747>.
1696
1697         * page/ContextMenuController.cpp:
1698         (WebCore::ContextMenuController::contextMenuItemSelected):
1699             Everyone can open frames in new windows.
1700
1701 2007-02-02  Nikolas Zimmermann  <zimmermann@kde.org>
1702
1703         Reviewed by Eric.
1704
1705         Move xml:space/xml:lang from svgattrs.in to xmlattrs.in where they actually belong.
1706         Now they are actually recognized by SVGLangSpace::parseMappedAttribute.
1707         Patch implementing xml:space="preserve" coming soon, which acts as test for this stuff.
1708
1709         Always build XMLNames.cpp (not only for SVG) and replace all occourences of
1710         "http://www.w3.org/XML/1998/namespace" by "XMLNames::xmlNamespaceURI".
1711
1712         * DerivedSources.make:
1713         * dom/DOMImplementation.cpp:
1714         (WebCore::DOMImplementation::createDocument):
1715         * ksvg2/svg/SVGLangSpace.cpp:
1716         (WebCore::SVGLangSpace::SVGLangSpace):
1717         (WebCore::SVGLangSpace::parseMappedAttribute):
1718         * ksvg2/svg/SVGLangSpace.h:
1719         * ksvg2/svg/svgattrs.in:
1720         * page/Frame.cpp:
1721         (WebCore::Frame::Frame):
1722         * xml/XPathNSResolver.cpp:
1723         (WebCore::XPathNSResolver::lookupNamespaceURI):
1724         * xml/xmlattrs.in:
1725
1726 2007-02-02  Beth Dakin  <bdakin@apple.com>
1727
1728         Reviewed by Maciej.
1729
1730         Working on a layout test.
1731
1732         Fix for <rdar://problem/4966100> REGRESSION: Reproducible ASSERT 
1733         hit at Walgreens.com
1734
1735         * page/Frame.cpp:
1736         (WebCore::Frame::setView): If we are setting the view to 0 and 
1737         detaching the document, call unscheduleRealyout() on the old view 
1738         before setting it to 0.
1739
1740 2007-02-01  Geoffrey Garen  <ggaren@apple.com>
1741
1742         Reviewed by Maciej Stachowiak.
1743         
1744         Added support for selectively ignoring WebCore::Node leaks during layout
1745         tests, so that we can ignore known leaks in other components.
1746
1747         * WebCore.exp:
1748         * dom/Node.cpp:
1749         (WebCore::Node::isSupported): Moved isSupported up with the rest of the static functions.
1750
1751         (WebCore::): Added an ignoreSet, which collects WebCore::Nodes whose lifetime
1752         we want to ignore. We need to track which nodes to ignore rather than, say,
1753         just suspending the count, because node destruction depends on lots of
1754         different variables, so it would be nearly impossible to know when exactly 
1755         to suspend the count and when exactly to resume it.
1756
1757         (WebCore::NodeCounter::~NodeCounter): Changed to use WTFLog instead of fprintf.
1758
1759         (WebCore::Node::startIgnoringLeaks): Do the ignoring.
1760         (WebCore::Node::stopIgnoringLeaks): ditto
1761         (WebCore::Node::Node): ditto
1762         (WebCore::Node::~Node): ditto
1763
1764         * dom/Node.h: Moved isSupported up with the rest of the static functions.
1765
1766         * platform/mac/LoggingMac.mm:
1767         (WebCore::initializeWithUserDefault): Renamed from "initializeLoggingChannel"
1768         because the real goal here is to honor a user default -- WTFLoggingChannels
1769         need no run-time initialization. Also replaced "off by default, on if a 
1770         user default says so" behavior with "only override existing setting if a
1771         user default says so" behavior. It seemed like a bug that you would specify 
1772         a channel's on/off state in its definition, but this function would unconditionally
1773         blow that state away.
1774         (WebCore::InitializeLoggingChannelsIfNecessary):
1775
1776 2007-02-02  Eric Seidel  <eric@webkit.org>
1777
1778         Reviewed by mitz.
1779
1780         Fix gradient stop style resolution to be less of a hack, fixing style invalidation:
1781         http://bugs.webkit.org/show_bug.cgi?id=12193
1782         and fix stop-color and stop-opacity not to inherit:
1783         http://bugs.webkit.org/show_bug.cgi?id=12193
1784         
1785         Tests:
1786         * svg/custom/gradient-stops-style-change.svg: added
1787         * svg/W3C-SVG-1.1/pservers-grad-18-b.svg: updated
1788
1789         * WebCore.xcodeproj/project.pbxproj:
1790         * ksvg2/css/SVGCSSStyleSelector.cpp:
1791         (WebCore::CSSStyleSelector::applySVGProperty):
1792         * ksvg2/css/SVGRenderStyle.cpp:
1793         (WebCore::SVGRenderStyle::inheritedNotEqual):
1794         (WebCore::SVGRenderStyle::inheritFrom):
1795         * ksvg2/css/SVGRenderStyle.h:
1796         * ksvg2/svg/SVGDefsElement.cpp:
1797         (WebCore::SVGDefsElement::createRenderer):
1798         * ksvg2/svg/SVGGradientElement.cpp:
1799         (WebCore::SVGGradientElement::createRenderer):
1800         (WebCore::SVGGradientElement::buildStops):
1801         * ksvg2/svg/SVGGradientElement.h:
1802         (WebCore::SVGGradientElement::rendererIsNeeded):
1803         * ksvg2/svg/SVGStopElement.cpp:
1804         (WebCore::SVGStopElement::createRenderer):
1805         * ksvg2/svg/SVGStopElement.h:
1806         (WebCore::SVGStopElement::rendererIsNeeded):
1807         * rendering/RenderSVGGradientStop.cpp: Added.
1808         * rendering/RenderSVGGradientStop.h: Added.
1809         * rendering/RenderSVGHiddenContainer.cpp: Added.
1810         * rendering/RenderSVGHiddenContainer.h: Added.
1811         * rendering/RenderSVGContainer.cpp:
1812         * rendering/RenderSVGContainer.h:
1813
1814 2007-02-02  Zack Rusin  <zrusin@trolltech.com>
1815
1816         Reviewed by Lars
1817
1818         Fix scrolling-on-selection bug by correctly
1819         scrolling to the offset instead of trying to 
1820         ensure visibility with margins.
1821
1822         * platform/qt/ScrollViewQt.cpp:
1823         (WebCore::ScrollView::scrollPointRecursively):
1824
1825 2007-02-02  Zack Rusin  <zrusin@trolltech.com>
1826
1827         Reviewed by Lars
1828
1829         Fix drawing of dashed and colored lines. Pen
1830         has to be inherited for stroke to stay consistent.
1831
1832         * platform/graphics/qt/GraphicsContextQt.cpp:
1833         (WebCore::GraphicsContext::setAlpha):
1834         (WebCore::GraphicsContext::setPlatformStrokeColor):
1835         (WebCore::GraphicsContext::setPlatformStrokeStyle):
1836
1837 2007-02-01  Nicholas Shanks  <webkit@nickshanks.com>
1838
1839         Reviewed by Mark.
1840
1841         Add support for CSS2 font-stretch property.
1842
1843         * css/CSSComputedStyleDeclaration.cpp:
1844         (WebCore::):
1845         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
1846         * css/cssparser.cpp:
1847         (WebCore::CSSParser::parseValue):
1848         * css/cssstyleselector.cpp:
1849         (WebCore::CSSStyleSelector::applyDeclarations):
1850         (WebCore::CSSStyleSelector::applyProperty):
1851         * platform/FontCache.cpp:
1852         (WebCore::FontPlatformDataCacheKey::FontPlatformDataCacheKey):
1853         (WebCore::FontPlatformDataCacheKey::operator==):
1854         (WebCore::computeHash):
1855         (WebCore::FontPlatformDataCacheKeyTraits::deletedValue):
1856         (WebCore::FontPlatformDataCacheKeyTraits::emptyValue):
1857         (WebCore::FontCache::getCachedFontPlatformData):
1858         * platform/FontDescription.h:
1859         (WebCore::):
1860         (WebCore::FontDescription::FontDescription):
1861         (WebCore::FontDescription::stretch):
1862         (WebCore::FontDescription::narrowerStretch):
1863         (WebCore::FontDescription::widerStretch):
1864         (WebCore::FontDescription::setStretch):
1865         (WebCore::FontDescription::operator==):
1866         * platform/mac/FontCacheMac.mm:
1867         (WebCore::FontCache::createFontPlatformData):
1868         * platform/mac/WebFontCache.mm:
1869         (acceptableChoice):
1870         (betterChoice):
1871         (+[WebFontCache fontWithFamily:traits:size:]):
1872
1873 2007-02-01  Timothy Hatcher  <timothy@apple.com>
1874
1875         Reviewed by Mark Rowe.
1876
1877         <rdar://problem/4969201> REGRESSION: Safari applies the wrong font to BODY element at http://www.apple.com/downloads/dashboard/
1878
1879         * platform/mac/WebFontCache.mm:
1880         (+[WebFontCache fontWithFamily:traits:size:]): Don't call [NSFont fontWithName:] with the desiredFamily on Tiger.
1881
1882 2007-02-01  Alexey Proskuryakov  <ap@webkit.org>
1883
1884         Reviewed by Darin.
1885
1886         http://bugs.webkit.org/show_bug.cgi?id=12506
1887         REGRESSION: Safari doesn't display hebrew text on a web page,
1888         displayed correctly on Tiger
1889
1890         * loader/TextResourceDecoder.cpp:
1891         (WebCore::TextResourceDecoder::checkForHeadCharset): Advance the pointer when necessary.
1892
1893 2007-02-01  George Staikos  <staikos@kde.org>
1894
1895         Reviewed by Zack and Lars.
1896
1897         Add a cookie interface for the Qt build.
1898
1899         * WebCore.pro:
1900         * platform/qt/CookieJarQt.cpp:
1901         (WebCore::setCookies):
1902         (WebCore::cookies):
1903         (WebCore::cookiesEnabled):
1904
1905 2007-02-01  Maciej Stachowiak  <mjs@apple.com>
1906
1907         Reviewed by Adele.
1908         
1909         - fixed <rdar://problem/4922764> ASSERTION: (!m_contentFunction) in PolicyCheck::call trying to visit feed URL (CNN, Apple, etc.)
1910
1911         * loader/FrameLoader.cpp:
1912         (WebCore::FrameLoader::stopPolicyCheck): Call new cancel method instead of call(false) on old check.
1913         (WebCore::PolicyCheck::cancel): call any callback function that is set with false or PolicyIgnore as
1914         appropriate.
1915         * loader/FrameLoader.h:
1916
1917 2007-02-01  Beth Dakin  <bdakin@apple.com>
1918
1919         Reviewed by Hyatt.
1920
1921         Fix for http://bugs.webkit.org/show_bug.cgi?id=10517 REGRESSION 
1922         (r12065-r12082): Navigation graphic wraps to the next line on 
1923         duart.com and <rdar://problem/4960505> REGRESSION: The Awesome 
1924         Windows Vista page has a layout error in the header table (10517)
1925
1926         The problem is that we never supported a quirk that other browsers 
1927         support where, under very specific circumstances, a table cell will 
1928         grow to fit an image inside of it. This is only a regression 
1929         because a bug was fixed were we were 1 pixel off in the calculation 
1930         of overflow in some cases.
1931
1932         * rendering/RenderBlock.cpp:
1933         (WebCore::shouldGrowTableCellForImage):
1934         (WebCore::RenderBlock::calcInlineMinMaxWidth):
1935
1936 2007-02-01  Zack Rusin  <zrusin@trolltech.com>
1937
1938         Reviewed by Lars
1939
1940         Implement native look for comboboxes
1941         and fix/implement popup menus.
1942
1943         * platform/PopupMenu.h:
1944         * platform/qt/PopupMenuQt.cpp:
1945         (WebCore::PopupMenu::PopupMenu):
1946         (WebCore::PopupMenu::~PopupMenu):
1947         (WebCore::PopupMenu::clear):
1948         (WebCore::PopupMenu::populate):
1949         (WebCore::PopupMenu::show):
1950         (WebCore::PopupMenu::hide):
1951         (WebCore::PopupMenu::updateFromElement):
1952         * platform/qt/RenderThemeQt.cpp:
1953         (WebCore::RenderThemeQt::adjustMenuListStyle):
1954         (WebCore::RenderThemeQt::paintButton):
1955         (WebCore::RenderThemeQt::paintTextField):
1956         (WebCore::RenderThemeQt::paintMenuList):
1957
1958 2007-02-01  Darin Adler  <darin@apple.com>
1959
1960         Reviewed by Maciej.
1961
1962         - fix <rdar://problem/4887428> REGRESSION: Implement slight delay for firing incremental onSearch event
1963
1964         * rendering/RenderTextControl.h:
1965         * rendering/RenderTextControl.cpp:
1966         (WebCore::RenderTextControl::RenderTextControl): Set up timer.
1967         (WebCore::RenderTextControl::subtreeHasChanged): Start timer here instead of immediately sending event.
1968         (WebCore::RenderTextControl::searchEventTimerFired): Added. Sends search event.
1969         (WebCore::RenderTextControl::stopSearchEventTimer): Added.
1970         (WebCore::RenderTextControl::startSearchEventTimer): Added. Sends search event right away if there is
1971         no text. If there is some text, sets the timer using the same delay rule as NSSearchField. If you keep
1972         typing, then the timer keeps getting reset 0.2 seconds into the future until you pause.
1973
1974         * html/HTMLInputElement.cpp: (WebCore::HTMLInputElement::onSearch): Tell the renderer to
1975         stop the timer, since we're sending a search event. This helps when a caller other than
1976         the timer decides to send an explicit search event.
1977
1978 2007-02-01  Maciej Stachowiak  <mjs@apple.com>
1979
1980         Fix by Darin, reviewed by Maciej.
1981
1982         - fix ~10% performance regression from encoding fix
1983
1984         * loader/TextResourceDecoder.cpp:
1985         (WebCore::TextResourceDecoder::checkForHeadCharset): Fix a logic
1986         error which made huge strings accidentally.
1987
1988 2007-02-01  Lars Knoll <lars@trolltech.com>
1989
1990         Fix the Qt build
1991
1992         * page/qt/EventHandlerQt.cpp:
1993
1994 2007-01-31  Darin Adler  <darin@apple.com>
1995
1996         Reviewed by Adam and Geoff.
1997
1998         - fix <rdar://problem/4786767> REGRESSION: <select> controls are not resized when zooming text
1999
2000         Test: fast/forms/select-width-font-change.html
2001
2002         * rendering/RenderMenuList.h: Cleaned up formatting a bit. Removed unneeded include of PopupMenu.h.
2003         Made a lot more things private, including the PopupMenuClient base class, all of the virtual
2004         functions from PopupMenuClient, and the setTextFromOption function. Added updateOptionsWidth.
2005
2006         * rendering/RenderMenuList.cpp:
2007         (WebCore::RenderMenuList::setStyle): Added code to call updateOptionsWidth when the font changes.
2008         (WebCore::RenderMenuList::updateOptionsWidth): Added. Factored code out of updateFromElement.
2009         Changed to do nothing when m_optionsWidth is already correct.
2010         (WebCore::RenderMenuList::updateFromElement): Moved code to recomputed options width to the new
2011         updateOptionsWidth function.
2012         (WebCore::RenderMenuList::text): Made const.
2013
2014 2007-01-31  Oliver Hunt  <oliver@apple.com>
2015
2016         Reviewed by Adam.
2017
2018         Migrate more drag and drop logic to WebCore, start preparing
2019         to move EventHandler::handleDrag from EventHandlerMac to EventHandler 
2020
2021         * WebCore.exp:   
2022           updating methods
2023                     
2024         * dom/Clipboard.cpp:
2025         * dom/Clipboard.h:
2026         (WebCore::Clipboard::Clipboard):
2027         (WebCore::Clipboard::setDragHasStarted):
2028         (WebCore::Clipboard::dragStarted): 
2029           Moving from ClipboardMac to Clipboard 
2030
2031         * dom/EventTargetNode.cpp:
2032         (WebCore::EventTargetNode::dispatchMouseEvent):
2033           PlatformMouseEvent no longer lies about button state, however 
2034           DOM Events don't allow NoButton, so we need to convert NoButton 
2035           to LeftButton when we create a DOM Event from PlatformMouseEvent
2036
2037         * page/DragClient.h:
2038           Tidying comment 
2039
2040         * page/DragController.cpp:
2041         (WebCore::createMouseEvent):
2042           Updated for new PlatformMouseEvent constructors
2043         (WebCore::DragController::mayStartDragAtEventLocation):
2044           Migrated from WebKit
2045
2046         * page/DragController.h:
2047           Added above function declarations
2048
2049         * page/EventHandler.cpp:
2050         (WebCore::EventHandler::dragState): 
2051         (WebCore::EventHandler::dragHysteresisExceeded):
2052         (WebCore::EventHandler::freeClipboard):
2053         (WebCore::EventHandler::shouldDragAutoNode):
2054           Moved from EventHandlerMac
2055         (WebCore::EventHandler::handleMouseMoveEvent):
2056         (WebCore::EventHandler::eventMayStartDrag):
2057         (WebCore::EventHandler::handleMousePressEvent):
2058           Use DragController     
2059
2060         * page/EventHandler.h:
2061           Added DragState struct definition to EventHandler
2062
2063         * page/mac/EventHandlerMac.mm:
2064         (WebCore::EventHandler::eventActivatedView):
2065         (WebCore::EventHandler::handleDrag):
2066         (WebCore::EventHandler::handleMouseUp):
2067         (WebCore::EventHandler::mouseDown):
2068           Update to use DragController and PlatformMouseEvent
2069
2070         * page/mac/WebCoreFrameBridge.h:
2071         * page/mac/WebCoreFrameBridge.mm:
2072         (-[WebCoreFrameBridge dragSourceMovedTo:]):
2073         (-[WebCoreFrameBridge dragSourceEndedAt:operation:]):
2074           Use DragController for state
2075
2076         * platform/PlatformMouseEvent.h:
2077         (WebCore::):
2078         (WebCore::PlatformMouseEvent::PlatformMouseEvent):
2079         (WebCore::PlatformMouseEvent::eventType):
2080         (WebCore::PlatformMouseEvent::timestamp):
2081         (WebCore::PlatformMouseEvent::eventNumber):
2082         (WebCore::PlatformMouseEvent::setClickCount):
2083           Exposing necessary data for Drag logic
2084
2085         * platform/mac/ClipboardMac.h:
2086         * platform/mac/ClipboardMac.mm:
2087         (WebCore::ClipboardMac::ClipboardMac):
2088         (WebCore::ClipboardMac::setDragImage):
2089           Have moved a number of fields from ClipboardMac to Clipboard
2090           so need to use accessors in a few places now
2091
2092         * platform/mac/PlatformMouseEventMac.mm:
2093         (WebCore::mouseButtonForEvent):
2094         (WebCore::mouseEventForNSEvent):
2095         (WebCore::PlatformMouseEvent::PlatformMouseEvent):
2096           Determine MouseEventType, and provide event time info
2097
2098 2007-01-31  Alexey Proskuryakov  <ap@webkit.org>
2099
2100         Reviewed by Darin.
2101
2102         http://bugs.webkit.org/show_bug.cgi?id=12506
2103         REGRESSION: Safari doesn't display hebrew text on a web page,
2104         displayed correctly on Tiger
2105
2106         * loader/TextResourceDecoder.cpp:
2107         (WebCore::TextResourceDecoder::checkForHeadCharset): Skip over 
2108         quoted attributes.
2109
2110 2007-01-31  David Carson  <dacarson@gmail.com>
2111
2112         Reviewed by Darin.
2113
2114         - fix http://bugs.webkit.org/show_bug.cgi?id=12510
2115         Initialize the variable m_totalLoops
2116         Is tested by LayoutTests/fast/css/MarqueeLayoutTest.html
2117
2118         * rendering/RenderLayer.cpp:
2119         (WebCore::Marquee::Marquee):
2120
2121 2007-01-31  Anders Carlsson  <acarlsson@apple.com>
2122
2123         Reviewed by Maciej.
2124
2125         <rdar://problem/4886776>
2126         REGRESSION: After opening a web archive, location shows the actual URL, not the webarchive file
2127
2128         * WebCore.exp:
2129         * loader/FrameLoader.cpp:
2130         (WebCore::FrameLoader::continueLoadWithData):
2131         * loader/FrameLoader.h:
2132         New function which continues a load but using a given buffer instead.
2133         
2134 2007-01-31  Adele Peterson  <adele@apple.com>
2135
2136         Reviewed by Adam.
2137
2138         Fix for http://bugs.webkit.org/show_bug.cgi?id=12516
2139         REGRESSION (r19313): All keyboard navigation has stopped working
2140
2141         For non-editable selections, handleKeyPress doesn't need to call _interceptEditingKeyEvent. 
2142
2143         * editing/Editor.cpp:
2144         (WebCore::selectionForEvent): Moved this to the top of the file.
2145         (WebCore::Editor::handleKeyPress): Do the equivalent of the _canEdit check that used to be in WebKit WebEditorClient::handleKeyPress.
2146
2147 2007-01-31  Geoffrey Garen  <ggaren@apple.com>
2148
2149         Reviewed by Darin Adler.
2150
2151         Added a Range counter to detect leaks. Tweaked the Node counter.
2152         
2153         Also fixed a TextIterator destructive modification bug that I noticed along the
2154         way. No test case for this bug because no clients have been bitten by it
2155         yet.
2156
2157         * dom/Node.cpp: Renamed NodeImplCounter to NodeCounter, changed counter
2158         to unsigned, fixed formatting to match style guidelines.
2159         (WebCore::NodeCounter::~NodeCounter):
2160         (WebCore::Node::Node):
2161         (WebCore::Node::~Node):
2162
2163         * dom/Range.cpp:
2164         (WebCore::RangeCounter::~RangeCounter): Added.
2165         (WebCore::Range::Range):
2166         (WebCore::Range::~Range):
2167         (WebCore::Range::ownerDocument): New accessor, used by TextIterator to avoid
2168         annoying NULL checks.
2169         * dom/Range.h:
2170
2171         * editing/TextIterator.cpp:
2172         (WebCore::TextIterator::subrange): 
2173         (1) Don't initialize result with entireRange --  doing so would create a 
2174         PassRefPtr that pointed to entireRange, so this function would destructively 
2175         modify the Range you passed it. Initialize it with a new Range instead.
2176         (2) Don't use a PassRefPtr as a local variable, because they have sneaky
2177         semantics. Use a RefPtr instead.
2178         (3) Don't call CharacterIterator::range() willy-nilly, since it does 
2179         non-trivial work. Use a local variable instead.
2180
2181 2007-01-31  Adele Peterson  <adele@apple.com>
2182
2183         Reviewed by Darin.
2184
2185         WebCore part of fix for <rdar://problem/4521461> REGRESSION: when keyPress event changes form focus, inserted key goes to wrong control
2186
2187         Test: fast/events/keypress-focus-change.html
2188
2189         * editing/Editor.cpp:
2190         (WebCore::selectionForEvent): Added.  This computes a selection that considers the case where an event handler 
2191          has moved the selection outside of a text control.  In that case, we use the target control's selection.
2192         (WebCore::Editor::insertText): This gets the selectionForEvent, checks that the selection is editable,
2193          and calls TypingCommand::insertText with the correct selection.
2194
2195         * editing/TypingCommand.h: Added a version of insertText that takes a selection.  The old version of insertText will call this, and pass
2196           in the frame's selection.
2197         * editing/TypingCommand.cpp: (WebCore::TypingCommand::insertText): Added. Uses the passed in selection to 
2198           set the starting and ending selections correctly so that the editing machinery will insert the text in the correct place.
2199
2200         * page/Page.h: Added convenience method to get selection from focused or main frame.
2201         * page/Page.cpp: (WebCore::Page::selection):
2202
2203         * html/HTMLInputElement.h: Added selection methods to get selection for text controls.
2204         * html/HTMLInputElement.cpp: (WebCore::HTMLInputElement::selection):
2205         * html/HTMLTextAreaElement.h:
2206         * html/HTMLTextAreaElement.cpp: (WebCore::HTMLTextAreaElement::selection):
2207         * rendering/RenderTextControl.h:
2208         * rendering/RenderTextControl.cpp: (WebCore::RenderTextControl::selection):
2209
2210 2007-01-31  Darin Adler  <darin@apple.com>
2211
2212         - fix build
2213
2214         * ForwardingHeaders/wtf/ListHashSet.h: Added.
2215
2216 2007-01-31  Zack Rusin  <zrusin@trolltech.com>
2217
2218         Reviewed by Lars
2219
2220         Return the correct selection color.
2221
2222         * platform/qt/RenderThemeQt.cpp:
2223         (WebCore::RenderThemeQt::supportsFocusRing):
2224         (WebCore::RenderThemeQt::platformActiveSelectionBackgroundColor):
2225         (WebCore::RenderThemeQt::platformInactiveSelectionBackgroundColor):
2226         (WebCore::RenderThemeQt::platformActiveSelectionForegroundColor):
2227         (WebCore::RenderThemeQt::platformInactiveSelectionForegroundColor):
2228
2229 2007-01-31  Maciej Stachowiak  <mjs@apple.com>
2230
2231         Reviewed by Mark.
2232
2233         - fixed <rdar://problem/4751164> REGRESSION: Safari places text on incorrect button when returning to a page via back [10541]
2234         http://bugs.webkit.org/show_bug.cgi?id=10541
2235
2236         * dom/Document.cpp:
2237         (WebCore::Document::formElementsState):
2238         * dom/Document.h:
2239         
2240         I couldn't figure out the back/forward support in the tests enough
2241         to make an automated test, but this maual test reproduces the
2242         problem 100% without this patch:
2243         
2244         * manual-tests/back.html: Added.
2245         * manual-tests/form-control-madness.html: Added.
2246
2247 2007-01-31  David Kilzer  <ddkilzer@kilzer.net>
2248
2249         Reviewed by Mitz.
2250
2251         - fix http://bugs.webkit.org/show_bug.cgi?id=12490
2252           Clean up canPlaceOnLine logic in bidi.cpp
2253
2254         No test cases since there is no change in functionality.
2255
2256         * rendering/bidi.cpp:
2257         (WebCore::RenderBlock::findNextLineBreak): Simplify canFitOnLine expression.
2258
2259 2007-01-31  Zack Rusin  <zack@kde.org>
2260
2261         Adding comments explaining how the focus ring implementation
2262         works on the Qt platform and just move focus ring rendering
2263         related code to the same spot.
2264
2265         * platform/graphics/qt/GraphicsContextQt.cpp:
2266         (WebCore::setFocusRingColorChangeFunction):
2267         (WebCore::focusRingColor):
2268         (WebCore::GraphicsContext::drawFocusRing):
2269         * platform/qt/TemporaryLinkStubs.cpp:
2270
2271 2007-01-31  Zack Rusin  <zrusin@trolltech.com>
2272
2273         Reviewed by Lars
2274
2275         Properly propagate key events. 
2276
2277         * page/qt/FrameQt.cpp:
2278         * page/qt/FrameQt.h: Remove redundant method.
2279         * platform/qt/ScrollViewCanvasQt.cpp:
2280         (WebCore::ScrollViewCanvasQt::handleKeyEvent):
2281
2282 2007-01-31  George Staikos  <staikos@kde.org>
2283
2284         Reviewed by Zack and Lars.
2285
2286         Fix double delete on cancel as well as assertion with proxy.
2287
2288         * platform/network/qt/ResourceHandleManagerQt.cpp:
2289         (WebCore::WebCoreHttp::getConnection):
2290         (WebCore::WebCoreHttp::onRequestFinished):
2291         (WebCore::WebCoreHttp::cancel):
2292
2293 2007-01-31  Mark Rowe  <mrowe@apple.com>
2294
2295         Reviewed by Oliver.
2296
2297         * dom/Document.h: Change #if XSLT_SUPPORT to #ifdef XSLT_SUPPORT.
2298
2299 2007-01-31  Lars Knoll <lars@trolltech.com>
2300
2301         Fix the Qt build.
2302
2303         * platform/network/qt/ResourceHandleQt.cpp:
2304         (WebCore::ResourceHandle::setDefersLoading):
2305
2306 2007-01-31  Zack Rusin  <zack@kde.org>
2307
2308         Reviewed by Eric.
2309
2310         Implement SVGImage on the Qt platform.
2311
2312         * WebCore.pro:
2313         * loader/CachedImage.cpp:
2314         (WebCore::CachedImage::createImage):
2315         * platform/graphics/ImageBuffer.h:
2316         * platform/graphics/qt/ImageBufferQt.cpp:
2317         (WebCore::ImageBuffer::create):
2318         (WebCore::ImageBuffer::ImageBuffer):
2319         (WebCore::ImageBuffer::~ImageBuffer):
2320         (WebCore::ImageBuffer::context):
2321         (WebCore::ImageBuffer::pixmap):
2322         * platform/graphics/svg/SVGImage.cpp:
2323         (WebCore::SVGImage::nativeImageForCurrentFrame):
2324         (WebCore::SVGImage::setData):
2325
2326 2007-01-30  Maciej Stachowiak  <mjs@apple.com>
2327
2328         Reviewed by Brady.
2329
2330         - fixed <rdar://problem/4939366> REGRESSION: Assertion failure and crash when going back in history (12314)
2331
2332         * loader/FrameLoader.cpp:
2333         (WebCore::FrameLoader::createWindow): special case a frame name of "_blank"
2334         (WebCore::FrameLoader::continueLoadAfterNewWindowPolicy): ditto
2335
2336 2007-01-30  Maciej Stachowiak  <mjs@apple.com>
2337
2338         Reviewed by Anders.
2339
2340         - fixed <rdar://problem/4963871> REGRESSION: Crash occurs at WebCore::Frame::loader() when attempting to open a saved archive file
2341
2342         * loader/DocumentLoader.cpp:
2343         (WebCore::DocumentLoader::request): Removed obsolete FIXME.
2344         (WebCore::DocumentLoader::initialRequest): Ditto.
2345         * loader/MainResourceLoader.cpp:
2346         (WebCore::MainResourceLoader::MainResourceLoader): Handle data loads from a timer, otherwise bad things happen.
2347         (WebCore::MainResourceLoader::handleDataLoadNow):
2348         (WebCore::MainResourceLoader::handleDataLoadSoon):
2349         (WebCore::MainResourceLoader::loadNow):
2350         (WebCore::MainResourceLoader::didCancel): cancel data load timer
2351         * loader/MainResourceLoader.h:
2352
2353 2007-01-30  Timothy Hatcher  <timothy@apple.com>
2354
2355         Reviewed by Darin.
2356
2357         <rdar://problem/4961953> Stop using NSString deprecated methods like initWithCString:
2358
2359         * WebCore.xcodeproj/project.pbxproj:
2360         * platform/graphics/svg/filters/cg/WKArithmeticFilter.m:
2361         (-[WKArithmeticFilter init]):
2362         * platform/graphics/svg/filters/cg/WKComponentMergeFilter.m:
2363         (-[WKComponentMergeFilter init]):
2364         * platform/graphics/svg/filters/cg/WKDiffuseLightingFilter.m:
2365         (-[WKDiffuseLightingFilter init]):
2366         * platform/graphics/svg/filters/cg/WKDiscreteTransferFilter.m:
2367         (-[WKDiscreteTransferFilter init]):
2368         * platform/graphics/svg/filters/cg/WKDisplacementMapFilter.m:
2369         (-[WKDisplacementMapFilter init]):
2370         * platform/graphics/svg/filters/cg/WKDistantLightFilter.m:
2371         (-[WKDistantLightFilter init]):
2372         * platform/graphics/svg/filters/cg/WKGammaTransferFilter.m:
2373         (-[WKGammaTransferFilter init]):
2374         * platform/graphics/svg/filters/cg/WKLinearTransferFilter.m:
2375         (-[WKLinearTransferFilter init]):
2376         * platform/graphics/svg/filters/cg/WKNormalMapFilter.m:
2377         (-[WKNormalMapFilter init]):
2378         * platform/graphics/svg/filters/cg/WKPointLightFilter.m:
2379         (-[WKPointLightFilter init]):
2380         * platform/graphics/svg/filters/cg/WKSpecularLightingFilter.m:
2381         (-[WKSpecularLightingFilter init]):
2382         * platform/graphics/svg/filters/cg/WKSpotLightFilter.m:
2383         (-[WKSpotLightFilter init]):
2384         * platform/graphics/svg/filters/cg/WKTableTransferFilter.m:
2385         (-[WKTableTransferFilter init]):
2386
2387 2007-01-30  David Hyatt  <hyatt@apple.com>
2388
2389         Fix for Radar bug #4679426, golden gate bridge Web site layout broken.
2390         
2391         This is a regression caused by the addition of :lang support.  This
2392         feature caused us to accept any pseudo-class/element with function
2393         arguments, even ones we couldn't handle.  The site used such a construct
2394         in conjunction with :not, which turned :not(something-crazy) into not(false).
2395         This ended up being "true", and so we started matching a rule we used to
2396         reject.
2397
2398         The fix is to now aggressively parse pseudo-elements and classes and to
2399         cause the rejection of an entire rule if any pseudoclass or element within
2400         any simple selector of that rule is unrecognized.
2401
2402         Reviewed by darin
2403
2404         fast/css/invalid-pseudo-classes.html
2405
2406         * css/CSSGrammar.y:
2407         * css/CSSSelector.cpp:
2408         (WebCore::CSSSelector::extractPseudoType):
2409         * css/CSSSelector.h:
2410         (WebCore::CSSSelector::):
2411         * css/cssstyleselector.cpp:
2412         (WebCore::CSSStyleSelector::checkOneSelector):
2413
2414 2007-01-30  Mitz Pettel  <mitz@webkit.org>
2415
2416         Reviewed by Darin.
2417
2418         - fix http://bugs.webkit.org/show_bug.cgi?id=12487
2419           REGRESSION: Repro crash when a second background image is animated
2420
2421         Test: fast/images/animated-background-image-crash.html
2422
2423         * rendering/RenderObject.cpp:
2424         (WebCore::RenderObject::arenaDelete): Deref() all background images and the
2425         border image.
2426
2427 2007-01-30  Darin Adler  <darin@apple.com>
2428
2429         Reviewed by Maciej.
2430
2431         * dom/EventTarget.h:
2432         * dom/EventTarget.cpp: (WebCore::EventTarget::toNode):
2433         Use EventTargetNode instead of Node. Removed unneeded includes.
2434         Make EventTarget's destructor protected to make it clear that you
2435         should never delete one.
2436
2437         * dom/EventTargetNode.h:
2438         (WebCore::EventTargetNode::toNode):
2439         Tweaked formatting. Updated for change to return value.
2440
2441         * platform/graphics/BitmapImage.h: Updated comment for clarity.
2442         Marked FrameData Noncopyable.
2443
2444         * platform/graphics/Image.h: Tweaked formatting.
2445
2446         * platform/graphics/ImageAnimationObserver.h:
2447         Make ImageAnimationObserver's destructor protected to make it clear that you
2448         should never delete one.
2449
2450 2007-01-30  Mitz Pettel  <mitz@webkit.org>
2451
2452         Reviewed by Darin (by way of Hyatt).
2453
2454         - fix http://bugs.webkit.org/show_bug.cgi?id=12373
2455           ASSERTION FAILURE: !child->needsLayout() on paypal.com
2456
2457         Test: fast/table/inline-form-assert.html
2458
2459         * rendering/RenderContainer.cpp:
2460         (WebCore::RenderContainer::layout): Changed the assertion to ignore inlines.
2461
2462 2007-01-30  Alexey Proskuryakov  <ap@webkit.org>
2463
2464         Reviewed by Darin.
2465
2466         http://bugs.webkit.org/show_bug.cgi?id=12486
2467         XPathNSResolver.lookupNamespaceURI should return null if no URI is found
2468
2469         * xml/XPathNSResolver.idl: added [ConvertNullStringTo=Null].
2470
2471 2007-01-30  Anders Carlsson  <acarlsson@apple.com>
2472
2473         Reviewed by Maciej.
2474
2475         Revert the parts of 19244 that removed deferring NSURLConnections, that was not a correct change.
2476         Remove ASSERTS from loader.cpp that aren't true anymore since the callbacks are invoked without a handle
2477         when loading a subresource from an archive.
2478
2479         * loader/MainResourceLoader.cpp:
2480         (WebCore::MainResourceLoader::loadNow):
2481         * loader/ResourceLoader.cpp:
2482         (WebCore::ResourceLoader::releaseResources):
2483         (WebCore::ResourceLoader::load):
2484         (WebCore::ResourceLoader::setDefersLoading):
2485         * loader/loader.cpp:
2486         (WebCore::Loader::didFail):
2487         (WebCore::Loader::didReceiveResponse):
2488         (WebCore::Loader::didReceiveData):
2489         * platform/network/ResourceHandle.cpp:
2490         (WebCore::ResourceHandle::ResourceHandle):
2491         (WebCore::ResourceHandle::create):
2492         * platform/network/ResourceHandle.h:
2493         * platform/network/ResourceHandleInternal.h:
2494         (WebCore::ResourceHandleInternal::ResourceHandleInternal):
2495         * platform/network/mac/ResourceHandleMac.mm:
2496         (WebCore::ResourceHandle::start):
2497         (WebCore::ResourceHandle::setDefersLoading):
2498
2499 2007-01-30  Darin Adler  <darin@apple.com>
2500
2501         Reviewed by John.
2502
2503         - fix for <rdar://problem/4911504> REGRESSION: With a image selected, ctrl-clicking
2504           on page displays the wrong contextual menu items "Search in Google", "Search in Spotlight"
2505           and "Look up in Dictionary"
2506
2507         * platform/ContextMenu.cpp:
2508         (WebCore::selectionContainsPossibleWord): Added. Returns true if there are some
2509         non-whitespace characters in the selection.
2510         (WebCore::ContextMenu::populate): Don't add SearchSpotlightItem, SearchWebItem,
2511         or LookInDictionaryItem if selectionContainsPossibleWord returns false.
2512
2513 2007-01-30  Nikolas Zimmermann  <zimmermann@kde.org>
2514
2515         Reviewed by Oliver.
2516
2517         Respect stroke-width in absolute repaint rect calculations for SVG text.
2518         Added test: svg/custom/text-repaint-including-stroke.svg
2519
2520         * rendering/RenderSVGText.cpp:
2521         (WebCore::RenderSVGText::relativeBBox):
2522
2523 2007-01-30  Steve Falkenburg  <sfalken@apple.com>
2524
2525         Reviewed by Oliver.
2526
2527         Add missing includes.
2528
2529         * ksvg2/svg/SVGElementInstance.cpp:
2530
2531 2007-01-30  Alexey Proskuryakov  <ap@webkit.org>
2532
2533         Reviewed by Darin.
2534
2535         http://bugs.webkit.org/show_bug.cgi?id=12452
2536         XPath id() function is not supported
2537
2538         * xml/XPathFunctions.cpp:
2539         (WebCore::XPath::isWhitespace): A helper to detect XML whitespace.
2540
2541         (WebCore::XPath::FunId::isConstant):
2542         (WebCore::XPath::FunId::doEvaluate):
2543         (WebCore::XPath::FunctionMapping::):
2544         Implemented id().
2545
2546 2007-01-30  Zack Rusin  <zrusin@trolltech.com>
2547
2548         Reviewed by Sam.
2549
2550         Make the gradients work on the Qt platform.
2551
2552         * platform/graphics/svg/SVGPaintServerGradient.h:
2553         * platform/graphics/svg/SVGPaintServerLinearGradient.h:
2554         * platform/graphics/svg/SVGPaintServerRadialGradient.h:
2555         * platform/graphics/svg/qt/SVGPaintServerGradientQt.cpp:
2556         (WebCore::SVGPaintServerGradient::fillColorArray):
2557         (WebCore::SVGPaintServerGradient::setup):
2558         * platform/graphics/svg/qt/SVGPaintServerLinearGradientQt.cpp:
2559         (WebCore::SVGPaintServerLinearGradient::setupGradient):
2560         * platform/graphics/svg/qt/SVGPaintServerRadialGradientQt.cpp:
2561         (WebCore::SVGPaintServerRadialGradient::setupGradient):
2562
2563 2007-01-30  Nikolas Zimmermann  <zimmermann@kde.org>
2564
2565         Reviewed by Eric & Oliver. Leak related fixes reviewed by Mark.
2566
2567         Finally make the SVG <use> implementation use the proper "shadow tree" concept,
2568         which is also used by the HTML forms implementation. It's the first time in ksvg
2569         history that <use> is not implement as a crude hack, but proper & sane.
2570
2571         Implement deep expansion of use trees both for the instance & shadow tree.
2572         (<use> on a <symbol> containing a <g> containg a <use> element referencing a <rect>)
2573  
2574         The shadow tree is free of any symbol/use tags, but is properly expanded to the
2575         actual referenced content. The instance tree (SVGElementInstance objects) now exactly
2576         exposes the "expanded" shadow tree, as required by the specification. Previously
2577         we cloned referenced <use> elements, so our faked use shadow tree itself contained
2578         <use> elements. That lead to very nasty bugs - finally these dirty pieces are gone.
2579
2580         Checked twice that the updating logic works for all weird "deep expansions" cases. Example:
2581         <rect id="someRect"/> <g id="g"> <symbol> <use xlink:href="#someRect"/> </g> <use xlink:href="#g" id="use"/>
2582  
2583         If you walk through the instanceRoot using JavasScript, and explicitely modify some propertties of "someRect"
2584         -> all instances get updated correctly. For such simple cases it doesn't even involve recloning the shadow tree!
2585
2586         SVGElementInstance is now an EventTarget, as demanded by the specification - sending events to <use> instances
2587         will be implemented in a follow-up patch - as well as the "share event listeners with referenced target" logic.
2588
2589         Fixes all updating/stability issues with svg/carto.net/window.svg.
2590         Fixes: http://bugs.webkit.org/show_bug.cgi?id=6000 (<use> does not handle recursion safely)
2591
2592         Added test: svg/custom/use-on-use.svg (deep use referencing)
2593         Added test: svg/custom/use-on-g-containing-use.svg (nested deep use referencing)
2594         Added test: svg/custom/use-modify-target-container.svg (instanceRoot scripting, modifying <g> target)
2595         Added test: svg/custom/use-modify-target-symbol.svg (instanceRoot scripting, modfiying <symbol> target)
2596         Added test: svg/custom/use-modify-container-in-target.svg (modify <g> within referenced use target -> needs to update instances)
2597         Added test: svg/custom/use-recursion-1.svg (referencing container, whose children reference itself)
2598         Added test: svg/custom/use-recursion-2.svg (<use> self referencing)
2599         Added test: svg/custom/use-recursion-3.svg (<use> self rerencing, within <use> target)
2600         Added test: svg/custom/use-recursion-4.svg (cyclic referencing, within <use> target)
2601
2602         * bindings/scripts/CodeGeneratorJS.pm:
2603         * css/cssstyleselector.cpp:
2604         (WebCore::CSSStyleSelector::initForStyleResolve):
2605         (WebCore::CSSStyleSelector::adjustRenderStyle):
2606         * ksvg2/misc/SVGDocumentExtensions.cpp:
2607         (WebCore::SVGDocumentExtensions::removeTimeContainer):
2608         * ksvg2/svg/SVGElement.cpp:
2609         (WebCore::SVGElement::SVGElement):
2610         (WebCore::SVGElement::viewportElement):
2611         * ksvg2/svg/SVGElement.h:
2612         (WebCore::SVGElement::isShadowNode):
2613         (WebCore::SVGElement::shadowParentNode):
2614         (WebCore::SVGElement::setShadowParentNode):
2615         * ksvg2/svg/SVGElementInstance.cpp:
2616         (WebCore::SVGElementInstance::SVGElementInstance):
2617         (WebCore::SVGElementInstance::correspondingUseElement):
2618         (WebCore::SVGElementInstance::shadowTreeElement):
2619         (WebCore::SVGElementInstance::setShadowTreeElement):
2620         (WebCore::containsUseChildNode):
2621         (WebCore::SVGElementInstance::updateInstance):
2622         (WebCore::SVGElementInstance::addEventListener):
2623         (WebCore::SVGElementInstance::removeEventListener):
2624         (WebCore::SVGElementInstance::dispatchEvent):
2625         * ksvg2/svg/SVGElementInstance.h:
2626         (WebCore::SVGElementInstance::refEventTarget):
2627         (WebCore::SVGElementInstance::derefEventTarget):
2628         (WebCore::SVGElementInstance::hasOneRef):
2629         (WebCore::SVGElementInstance::refCount):
2630         (WebCore::SVGElementInstance::setParent):
2631         (WebCore::SVGElementInstance::parent):
2632         * ksvg2/svg/SVGElementInstance.idl:
2633         * ksvg2/svg/SVGGElement.cpp:
2634         (WebCore::SVGGElement::localMatrix):
2635         * ksvg2/svg/SVGGElement.h:
2636         * ksvg2/svg/SVGHiddenElement.h: Removed.
2637         * ksvg2/svg/SVGSVGElement.cpp:
2638         (WebCore::SVGSVGElement::~SVGSVGElement):
2639         * ksvg2/svg/SVGStyledElement.cpp:
2640         (WebCore::SVGStyledElement::updateElementInstance):
2641         * ksvg2/svg/SVGUseElement.cpp:
2642         (WebCore::SVGUseElement::removedFromDocument):
2643         (WebCore::SVGUseElement::notifyAttributeChange):
2644         (WebCore::dumpInstanceTree):
2645         (WebCore::SVGUseElement::buildPendingResource):
2646         (WebCore::SVGUseElement::attach):
2647         (WebCore::SVGUseElement::buildInstanceTree):
2648         (WebCore::SVGUseElement::handleDeepUseReferencing):
2649         (WebCore::SVGUseElement::buildShadowTree):
2650         (WebCore::SVGUseElement::expandUseElementsInShadowTree):
2651         (WebCore::SVGUseElement::attachShadowTree):
2652         (WebCore::SVGUseElement::associateInstancesWithShadowTreeElements):
2653         (WebCore::SVGUseElement::transferUseAttributesToReplacedElement):
2654         * ksvg2/svg/SVGUseElement.h:
2655
2656 2007-01-30  Maciej Stachowiak  <mjs@apple.com>
2657
2658         Reviewed by Eric.
2659
2660         <rdar://problem/4928646> REGRESSION: manual-tests/remove-input-file-onchange.html crashes
2661         
2662         * platform/FileChooser.h:
2663         (WebCore::FileChooser::disconnected): New method, so the RenderFileControl can tell when it's
2664         gotten disconected.
2665         * rendering/RenderFileUploadControl.cpp:
2666         (WebCore::RenderFileUploadControl::valueChanged): Avoid calling repainted() when onChange()
2667         handler destroyed us.
2668
2669 2007-01-30  Simon Hausmann  <hausmann@kde.org>
2670
2671         Reviewed by Zack.
2672
2673         Combine libJavaScriptCore into libWebKitQt.
2674         Build with ELF visibility if possible.
2675
2676         * WebCore.pro:
2677
2678 2007-01-30  Zack Rusin  <zack@kde.org>
2679
2680         The method has been removed from the header
2681         (make it compile)
2682
2683         * platform/network/qt/ResourceHandleQt.cpp:
2684
2685 2007-01-30  Zack Rusin  <zrusin@trolltech.com>
2686
2687         Reviewed by aroben
2688
2689         Compile fix. 
2690
2691         * loader/ResourceLoader.cpp:
2692         (WebCore::ResourceLoader::releaseResources):
2693         (WebCore::ResourceLoader::setDefersLoading):
2694
2695 2007-01-29  Zack Rusin  <zack@kde.org>
2696
2697         Reviewed by Lars
2698
2699         Propagate the allows-scrolling property on the frames
2700         correctly. If the frame has been constructed as non-
2701         scrolling, respect that and don't show scrollbars.
2702
2703         * platform/ScrollView.h:
2704         * platform/qt/ScrollViewQt.cpp:
2705         (WebCore::ScrollView::ScrollView):
2706         (WebCore::ScrollView::setHScrollbarMode):
2707         (WebCore::ScrollView::setVScrollbarMode):
2708         (WebCore::ScrollView::setAllowsScrolling):
2709
2710 2007-01-29  Geoffrey Garen  <ggaren@apple.com>
2711
2712         I am the chosen one! I have seen the faces of the final five! I will
2713         save the WebKit build!
2714         
2715         * loader/ResourceLoader.cpp:
2716         (WebCore::ResourceLoader::load):
2717
2718 2007-01-30  Graham Dennis  <graham.dennis@gmail.com>
2719
2720         Reviewed by Maciej.
2721
2722         Part of fix for http://bugs.webkit.org/show_bug.cgi?id=10725
2723         Image data in from RTFD clipboard data thrown away
2724         
2725         ResourceHandles no longer need to be able to defer loading as that is
2726         now handled by the ResourceLoader.
2727
2728         * loader/MainResourceLoader.cpp:
2729         (WebCore::MainResourceLoader::loadNow): updated to remove defersLoading argument.
2730         * loader/ResourceLoader.cpp:
2731         (WebCore::ResourceLoader::releaseResources): release the deferred request.
2732         (WebCore::ResourceLoader::load): defer creating the ResourceHandle instead of
2733         asking the ResourceHandle to defer loading.
2734         (WebCore::ResourceLoader::setDefersLoading): create the ResourceHandle if we have deferred creating it.
2735         * loader/ResourceLoader.h:
2736         * platform/network/ResourceHandle.cpp: ResourceHandle's don't need to know about deferLoading.
2737         (WebCore::ResourceHandle::ResourceHandle):
2738         (WebCore::ResourceHandle::create):
2739         * platform/network/ResourceHandle.h: ditto.
2740         * platform/network/ResourceHandleInternal.h: ditto.
2741         (WebCore::ResourceHandleInternal::ResourceHandleInternal):
2742         * platform/network/mac/ResourceHandleMac.mm: ditto.
2743         (WebCore::ResourceHandle::start):
2744
2745 2007-01-29  Brady Eidson  <beidson@apple.com>
2746
2747         Reviewed by Alice
2748
2749         Lets use smart pointers, shall we?
2750
2751         * platform/network/ResourceHandleInternal.h:
2752
2753 2007-01-29  Justin Garcia  <justin.garcia@apple.com>
2754
2755         Reviewed by harrison
2756         
2757         <rdar://problem/4960137>
2758         ASSERTION FAILURE calling SelectionController::setBaseAndExtent (11833)
2759
2760         * editing/SelectionController.cpp:
2761         (WebCore::SelectionController::setSelection): Hand off the selection
2762         to the selectionController responsible for it, instead of asserting.
2763         A selection object can't be constructed with endpoints in different 
2764         documents, so this code is only necessary for one endpoint.
2765
2766 2007-01-29  Ada Chan  <adachan@apple.com>
2767
2768         Reviewed by Brady.
2769         
2770         Moved the update of the title of the current entry in the backforward list to WebCore.
2771
2772         * loader/FrameLoader.cpp:
2773         (WebCore::FrameLoader::didChangeTitle):
2774
2775 2007-01-29  Adele Peterson  <adele@apple.com>
2776
2777         Reviewed by Darin.
2778
2779         More preparation for event handling fixes.
2780
2781         * bridge/EditorClient.h: Removed EventTargetNode parameter from handleKeyPress since we can just get that from the event.
2782         * dom/EventTargetNode.cpp: (WebCore::EventTargetNode::defaultEventHandler): ditto.
2783         * page/EventHandler.cpp: (WebCore::EventHandler::defaultKeyboardEventHandler): ditto.
2784         * page/EventHandler.h: ditto.
2785         * platform/graphics/svg/SVGImageEmptyClients.h: (WebCore::SVGEmptyEditorClient::handleKeyPress): ditto.
2786
2787         * editing/Editor.h:
2788         * editing/Editor.cpp:
2789         (WebCore::Editor::handleKeyPress): Removed EventTargetNode parameter.
2790         (WebCore::Editor::execCommand): Made commandMap use AtomicStringImpls instead of Strings.
2791         (WebCore::Editor::insertText): Moved from the bridge.
2792
2793         * page/mac/WebCoreFrameBridge.h: Moved insertText method to Editor.
2794         * page/mac/WebCoreFrameBridge.mm:
2795
2796         * WebCore.exp: Updated exports.
2797
2798 2007-01-29  Anders Carlsson  <acarlsson@apple.com>
2799
2800         Reviewed by Geoff.
2801
2802         <rdar://problem/4960097>
2803         http://bugs.webkit.org/show_bug.cgi?id=12444
2804         Assertion failure in -[WebCoreFrameBridge installInFrame:]
2805         
2806         The problem was that the XML tokenizer didn't create elements with 
2807         createdByParser set to true.
2808         
2809         * dom/Document.cpp:
2810         (WebCore::Document::createElement):
2811         New method which takes a QName. This is used by both the XML tokenizer and createElementNS.
2812         
2813         (WebCore::Document::createElementNS):
2814         Call new createElement method.
2815         
2816         * dom/XMLTokenizer.h:        
2817         * dom/XMLTokenizer.cpp:
2818         (WebCore::XMLTokenizer::XMLTokenizer):
2819         (WebCore::XMLTokenizer::~XMLTokenizer):
2820         Use an OwnPtr for the pending callbacks object. Also, use String instead of StringImpl in the hash map.
2821         
2822         (WebCore::toString):
2823         (WebCore::XMLTokenizer::startElementNs):
2824         Call createElement.
2825         
2826 2007-01-29  Brady Eidson  <beidson@apple.com>
2827
2828         Reviewed by Oliver
2829
2830         http://bugs.webkit.org/show_bug.cgi?id=12465
2831         Only set the iconURL port for non-zero ports
2832
2833         * loader/FrameLoader.cpp:
2834         (WebCore::FrameLoader::iconURL):
2835
2836 2007-01-29  John Sullivan  <sullivan@apple.com>
2837
2838         * platform/network/mac/ResourceRequestMac.mm:
2839         Build fix -- removed #import of no-longer-extant WebDataProtocol.h (and also one of the
2840         two #imports for WebCoreSystemInterface.h, while I was at it)
2841
2842 2007-01-29  Anders Carlsson  <acarlsson@apple.com>
2843
2844         Reviewed by Oliver.
2845
2846         * page/DragController.cpp:
2847         (WebCore::DragController::dragEnteredOrUpdated):
2848         Only try a drag operation if the drag client explicitly specified that it is OK
2849
2850 2007-01-29  Oliver Hunt  <oliver@apple.com>
2851
2852         Reviewed by Adam.
2853
2854         Migrated more drag logic and state to WebCore
2855                                               
2856         * page/DragClient.h:       
2857
2858         * page/DragController.cpp:
2859         (WebCore::DragController::delegateDragSourceAction):
2860           New forwarding method for the UI delegate
2861         * page/DragController.h:
2862         (WebCore::DragController::dragOffset):
2863           Now store the drag offset -- the offset of the cursor relative to the drag image)
2864           in DragController
2865         * page/EventHandler.cpp:
2866         (WebCore::EventHandler::allowDHTMLDrag):
2867           Moved from WebFrameBridge
2868         * page/EventHandler.h:
2869         * page/mac/EventHandlerMac.mm:
2870         (WebCore::EventHandler::eventMayStartDrag):
2871         (WebCore::EventHandler::handleDrag):                  
2872           EventHandlerMac now uses EventHandler::allowDHTMLDrag rather than the 
2873           implementation in WebFrameBridge
2874         * page/mac/WebCoreFrameBridge.h:
2875           removed definition of allowDHTMLDrag from WebFrameBridge
2876         * platform/graphics/svg/SVGImageEmptyClients.h:
2877         (WebCore::SVGEmptyDragClient::dragSourceActionMaskForPoint):
2878           Updated empty DragClient
2879
2880 2007-01-29  Alexey Proskuryakov  <ap@webkit.org>
2881
2882         Reviewed by Darin.
2883
2884         http://bugs.webkit.org/show_bug.cgi?id=12359
2885         XPathEvaluator may return some nodes more than once in a result set
2886
2887         Test: fast/xpath/nodeset-duplicates.html
2888
2889         * xml/XPathPath.cpp:
2890         (WebCore::XPath::LocationPath::doEvaluate): Ensure uniqueness of elements
2891         in the node-set.
2892
2893         * xml/XPathPredicate.cpp:
2894         (WebCore::XPath::Union::doEvaluate): Fixed a uniqueness algorithm that was
2895         already present here. Added a FIXME about incorrect result ordering.
2896
2897 2007-01-29  Alexey Proskuryakov  <ap@webkit.org>
2898
2899         Reviewed by Darin.
2900
2901         http://bugs.webkit.org/show_bug.cgi?id=12340
2902         XPathEvaluator behavior does not match Firefox - name() and attribute nodes
2903
2904         * xml/XPathFunctions.cpp:
2905         (WebCore::XPath::FunName::doEvaluate): Do not try to append a prefix if it doesn't exist.
2906
2907 2007-01-29  Alexey Proskuryakov  <ap@webkit.org>
2908
2909         Reviewed by Darin.
2910
2911         http://bugs.webkit.org/show_bug.cgi?id=11815
2912         XPathEvaluator behavior does not match Firefox - substring() and empty element
2913
2914         Test: fast/xpath/empty-string-substring.html
2915
2916         * xml/XPathValue.cpp:
2917         (WebCore::XPath::Value::Value):
2918         * xml/XPathValue.h:
2919         Added a constructor taking const char*, so that string literals and arrays don't 
2920         get converted to boolean values.
2921
2922 2007-01-29  Zack Rusin  <zrusin@trolltech.com>
2923
2924         Cosmetic fixes - don't resize the widget in the constructor
2925         (it was a hack from the initial port) and fix the paint
2926         signature.
2927
2928         * platform/qt/ScrollViewCanvasQt.cpp:
2929         (WebCore::ScrollViewCanvasQt::ScrollViewCanvasQt):
2930         * platform/qt/WidgetQt.cpp:
2931         (WebCore::Widget::paint):
2932
2933 2007-01-29  Maciej Stachowiak  <mjs@apple.com>
2934
2935         - change from struct to class to make picky compilers happy
2936
2937         * loader/SubstituteData.h:
2938
2939 2007-01-30  Mark Rowe  <mrowe@apple.com>
2940
2941         Reviewed by Maciej.
2942
2943         http://bugs.webkit.org/show_bug.cgi?id=12458
2944         Bug 12458: Crash in W3C-SVG-1.1/animate-elem-09-t.svg running layout tests under guard malloc
2945
2946         * ksvg2/svg/SVGAnimationElement.cpp: 
2947         (WebCore::parseValues): ptr either points to a ';' or off the end of the buffer.  We're
2948         interested in what comes before the ';', so start there instead.
2949
2950 2007-01-29  Zack Rusin  <zrusin@trolltech.com>
2951
2952         Reviewed by Lars.
2953
2954         Take the scrollbars into considation when computing
2955         the contents size of the main frame.
2956
2957         * platform/qt/PlatformScrollBarQt.cpp:
2958         (WebCore::PlatformScrollbar::paint):
2959         * platform/qt/ScrollViewQt.cpp:
2960         (WebCore::ScrollView::visibleWidth):
2961         (WebCore::ScrollView::visibleHeight):
2962         (WebCore::ScrollView::visibleContentRect):
2963         * platform/qt/WidgetQt.cpp:
2964         (WebCore::Widget::invalidate):
2965         (WebCore::Widget::invalidateRect):
2966
2967 2007-01-29  Maciej Stachowiak  <mjs@apple.com>
2968
2969         - fix includes
2970
2971         * loader/SubstituteData.h:
2972
2973 2007-01-29  Maciej Stachowiak  <mjs@apple.com>
2974
2975         - added new file that I forgot in the last commit
2976
2977         * loader/SubstituteData.h: Added.
2978         (WebCore::SubstituteData::SubstituteData):
2979         (WebCore::SubstituteData::isValid):
2980         (WebCore::SubstituteData::content):
2981         (WebCore::SubstituteData::mimeType):
2982         (WebCore::SubstituteData::textEncoding):
2983         (WebCore::SubstituteData::failingURL):
2984
2985 2007-01-29  Maciej Stachowiak  <mjs@apple.com>
2986
2987         Reviewed by Mark.
2988
2989         - made data loading cross-platform
2990         - fixed <rdar://problem/4910106>
2991
2992         * WebCore.exp:
2993         * WebCore.xcodeproj/project.pbxproj:
2994         * loader/CachedResource.cpp:
2995         * loader/CachedResource.h:
2996         * loader/DocLoader.cpp:
2997         (WebCore::DocLoader::requestResource):
2998         * loader/DocumentLoader.cpp:
2999         (WebCore::DocumentLoader::DocumentLoader):
3000         (WebCore::DocumentLoader::setRequest):
3001         (WebCore::DocumentLoader::urlForHistory):
3002         (WebCore::DocumentLoader::unreachableURL):
3003         * loader/DocumentLoader.h:
3004         (WebCore::DocumentLoader::substituteData):
3005         * loader/FrameLoader.cpp:
3006         (WebCore::FrameLoader::load):
3007         (WebCore::FrameLoader::shouldReloadToHandleUnreachableURL):
3008         (WebCore::FrameLoader::reloadAllowingStaleData):
3009         (WebCore::FrameLoader::reload):
3010         (WebCore::FrameLoader::commitProvisionalLoad):
3011         (WebCore::FrameLoader::startLoadingMainResource):
3012         (WebCore::FrameLoader::startLoading):
3013         (WebCore::FrameLoader::checkNavigationPolicy):
3014         * loader/FrameLoader.h:
3015         * loader/FrameLoaderClient.h:
3016         * loader/MainResourceLoader.cpp:
3017         (WebCore::MainResourceLoader::willSendRequest):
3018         (WebCore::MainResourceLoader::continueAfterContentPolicy):
3019         (WebCore::MainResourceLoader::handleEmptyLoad):
3020         (WebCore::MainResourceLoader::handleDataLoad):
3021         (WebCore::MainResourceLoader::loadNow):
3022         (WebCore::MainResourceLoader::load):
3023         * loader/MainResourceLoader.h:
3024         * loader/mac/DocumentLoaderMac.mm:
3025         * loader/mac/WebDataProtocol.h: Removed.
3026         * loader/mac/WebDataProtocol.mm: Removed.
3027         * loader/qt/DocumentLoaderQt.cpp:
3028         * platform/graphics/svg/SVGImageEmptyClients.h:
3029         (WebCore::SVGEmptyFrameLoaderClient::createDocumentLoader):
3030
3031 2007-01-29  Zack Rusin  <zrusin@trolltech.com>
3032
3033         Order the build files alphabetically instead of
3034         the random mess we had before.
3035
3036         * WebCore.pro:
3037
3038 2007-01-29  Zack Rusin  <zack@kde.org>
3039
3040         Reviewed by Lars
3041
3042         Use the platform independent scrollbar code.
3043         Remove the redundant empty stubs and forward
3044         few missing platform scrollbar calls.
3045
3046         * WebCore.pro:
3047         * platform/qt/PlatformScrollBarQt.cpp:
3048         (WebCore::PlatformScrollbar::paint):
3049         (WebCore::PlatformScrollbar::setRect):
3050
3051 2007-01-29  Lars Knoll <lars@trolltech.com>
3052
3053         Reviewed by Zack
3054
3055         Fix the way we handle native widgets (QWidget) inside
3056         WebCore. Now WebCore::Widget owns the QWidget in all
3057         cases. This is the only way to get well defined semantics
3058         for all teh native widgets we have (currently ScrollView
3059         and ScrollBar, but plugins will follow).
3060
3061         This has the side effect that one cannot rely on a defined 
3062         lifetime of a QWebFrame when using the API. 
3063
3064         * platform/Widget.h:
3065         * platform/qt/PlatformScrollBarQt.cpp:
3066         (WebCore::PlatformScrollbar::PlatformScrollbar):
3067         * platform/qt/ScrollViewQt.cpp:
3068         (WebCore::ScrollView::addChild):
3069         (WebCore::ScrollView::removeChild):
3070         * platform/qt/WidgetQt.cpp:
3071         (WebCore::WidgetPrivate::WidgetPrivate):
3072         (WebCore::WidgetPrivate::~WidgetPrivate):
3073         (WebCore::Widget::qwidget):
3074
3075 2007-01-28  George Staikos  <staikos@kde.org>
3076
3077         Reviewed by Maciej.
3078
3079         Don't send data during a redirect -> causes assert failure.
3080
3081         * platform/network/qt/ResourceHandleManagerQt.cpp:
3082         (WebCore::ResourceHandleManager::receivedData):
3083
3084 2007-01-29  Mark Rowe  <mrowe@apple.com>
3085
3086         Reviewed by Brady.
3087
3088         http://bugs.webkit.org/show_bug.cgi?id=11085
3089         Bug 11085: REGRESSION: favicon.ico always looked for on port 80
3090
3091         * loader/FrameLoader.cpp:
3092         (WebCore::FrameLoader::iconURL): Copy the port over to the favicon URL.
3093
3094 2007-01-28  Adam Roben  <aroben@apple.com>
3095
3096         Reviewed by Adele.
3097
3098         Fix http://bugs.webkit.org/show_bug.cgi?id=12453
3099         REGRESSION(r19197): Tabbing into web page requires two key presses
3100
3101         All layout tests pass.
3102
3103         * page/FocusController.cpp:
3104         (WebCore::FocusController::advanceFocus): If there's no focused frame,
3105         actually go ahead and find a focusable node instead of just focusing
3106         the main frame and quitting. This behavior was a holdover from a
3107         previous desired tabbing behavior with respect to frames.
3108
3109 2007-01-28  David Kilzer  <ddkilzer@webkit.org>
3110
3111         Reviewed by Darin and David Hyatt.
3112
3113         - fix http://bugs.webkit.org/show_bug.cgi?id=12423
3114           Mixing white-space:pre text with non white-space:pre text does not wrap properly
3115
3116         Test: fast/block/basic/white-space-pre-wraps.html
3117
3118         * rendering/bidi.cpp:
3119         (WebCore::RenderBlock::findNextLineBreak): Wrap a non-wrapping text run if it
3120         appears on a line with previous text runs that do wrap.
3121
3122 2007-01-28  Mitz Pettel  <mitz@webkit.org>
3123
3124         Reviewed by Darin.
3125
3126         - fix http://bugs.webkit.org/show_bug.cgi?id=8360
3127           Repro crash when onscroll handler deletes the scrolled object
3128
3129         Test: fast/layers/removed-by-scroll-handler.html
3130
3131         * page/FrameView.cpp:
3132         (WebCore::FrameViewPrivate::FrameViewPrivate): Added a m_enqueueEvents count.
3133         (WebCore::FrameView::layout): Raise the enqueue count before starting layout and
3134         until after enqueued events are dispatched.
3135         (WebCore::FrameView::scheduleEvent): Made this function dispatch the event
3136         immediately unless the enqueue count is positive.
3137         * rendering/RenderLayer.cpp:
3138         (WebCore::RenderLayer::scrollToOffset): Schedule the scroll event through the
3139         FrameView.
3140         (WebCore::RenderLayer::scrollRectToVisible):
3141         (WebCore::RenderLayer::updateScrollInfoAfterLayout):
3142         (WebCore::Marquee::start):
3143
3144 2007-01-28  Charles Ying  <charles_ying@yahoo.com>
3145
3146         Reviewed by eseidel.  Landed by eseidel.
3147
3148         Fix http://bugs.webkit.org/show_bug.cgi?id=12429
3149             animateTransform rotate, with cx/cy is broken
3150             
3151         SVGTransform now contains a float point to store the rotation center, needed
3152             to track rotation center for interpolation by animateTransform.
3153             
3154         SVGTransform now has an additional constructor:
3155             SVGTransform(type) to make empty base value transforms that match their
3156             distanced values.
3157             
3158         Removed m_colorDistance and m_transformDistance from their respective classes
3159             as they are now computed at update time.
3160
3161         Fix a case where animateTransform did not parse transform values correctly
3162             according to BNF in W3C spec:
3163
3164         Test case in:
3165         * manual-tests/animation/animateTransform-toanimation.svg: Added.
3166
3167         Fix a case where animateTransform only specified a to animation only.
3168
3169         Test case in:
3170         * manual-tests/animation/animateTransform-parser.svg: Added.
3171
3172         * ksvg2/svg/SVGAnimateColorElement.cpp:
3173         (WebCore::SVGAnimateColorElement::updateAnimationBaseValueFromElement):
3174         (WebCore::SVGAnimateColorElement::updateAnimatedValue):
3175         (WebCore::SVGAnimateColorElement::calculateFromAndToValues):
3176         * ksvg2/svg/SVGAnimateColorElement.h:
3177         * ksvg2/svg/SVGAnimateTransformElement.cpp:
3178         (WebCore::SVGAnimateTransformElement::updateAnimatedValue):
3179         (WebCore::SVGAnimateTransformElement::updateAnimationBaseValueFromElement):
3180         (WebCore::SVGAnimateTransformElement::calculateFromAndToValues):
3181         (WebCore::SVGAnimateTransformElement::parseTransformValue):
3182         * ksvg2/svg/SVGAnimateTransformElement.h:
3183         * ksvg2/svg/SVGTransform.cpp:
3184         (SVGTransform::SVGTransform):
3185         (SVGTransform::angle):
3186         (SVGTransform::rotationCenter):
3187         (SVGTransform::setTranslate):
3188         (SVGTransform::setScale):
3189         (SVGTransform::setRotate):
3190         (SVGTransform::setSkewX):
3191         (SVGTransform::setSkewY):
3192         * ksvg2/svg/SVGTransform.h:
3193         * ksvg2/svg/SVGTransformDistance.cpp:
3194         (WebCore::SVGTransformDistance::SVGTransformDistance):
3195         (WebCore::SVGTransformDistance::scaledDistance):
3196         (WebCore::SVGTransformDistance::addSVGTransforms):
3197         (WebCore::SVGTransformDistance::addSVGTransform):
3198         (WebCore::SVGTransformDistance::addToSVGTransform):
3199         (WebCore::SVGTransformDistance::distance):
3200         * ksvg2/svg/SVGTransformDistance.h:
3201         * manual-tests/animation/animateTransform-parser.svg: Added.
3202         * manual-tests/animation/animateTransform-toanimation.svg: Added.
3203
3204 2007-01-27  Adam Roben  <aroben@apple.com>
3205
3206         Reviewed by Ada.
3207
3208         Fix <rdar://problem/4957184> REGRESSION: After creating a new mail
3209         message, the caret is automatically in message body
3210
3211         -[WebHTMLView _updateActiveState] was calling
3212         FocusController::focusedOrMainFrame, which had the surprising
3213         side-effect of setting the focused frame if there was none. The fix
3214         was to remove this side-effect.
3215
3216         No tests possible, as this bug involves focus outside the WebView,
3217         which we have no support for in DRT.
3218
3219         Change inspired by Dave Harrison.
3220
3221         * page/FocusController.cpp:
3222         (WebCore::FocusController::focusedOrMainFrame): Removed this method's
3223         non-obvious side-effect of setting the focused frame.
3224         * WebCore.xcodeproj/project.pbxproj: Version wars.
3225
3226 2007-01-27  Don Gibson  <dgibson77@gmail.com>
3227
3228         Reviewed by Maciej.
3229
3230         http://bugs.webkit.org/show_bug.cgi?id=11880: Improve some egregious
3231         Windows form control drawing issues:
3232         Provide Classic mode fallbacks for the button/textfield drawing
3233         routines.
3234         Provide some basic drawing of menulists (still relatively broken).
3235         Some cleanup.
3236
3237         * platform/win/TemporaryLinkStubs.cpp:
3238         (WebCore::RenderThemeWin::systemFont):
3239         * rendering/RenderThemeWin.cpp:
3240         (WebCore::m_menuListTheme):
3241         (WebCore::RenderThemeWin::close):
3242         (WebCore::RenderThemeWin::determineClassicState):
3243         (WebCore::RenderThemeWin::getThemeData):
3244         (WebCore::RenderThemeWin::paintButton):
3245         (WebCore::RenderThemeWin::paintTextField):
3246         (WebCore::RenderThemeWin::paintMenuList):
3247         (WebCore::RenderThemeWin::paintMenuListButton):
3248         * rendering/RenderThemeWin.h:
3249         (WebCore::ThemeData::m_classicState):
3250         (WebCore::RenderThemeWin::setRadioSize):
3251         (WebCore::RenderThemeWin::paintTextArea):
3252
3253 2007-01-27  David Kilzer  <ddkilzer@webkit.org>
3254
3255         Reviewed by Adam.
3256
3257         - fix http://bugs.webkit.org/show_bug.cgi?id=12260
3258           Windows platform build is not maintained
3259
3260         * loader/win/FrameLoaderWin.cpp:
3261         * platform/network/win/ResourceHandleWin.cpp:
3262         * platform/win/TemporaryLinkStubs.cpp:
3263         (WebCore::contextMenuItemTagOpenLinkInNewWindow):
3264         (WebCore::contextMenuItemTagDownloadLinkToDisk):
3265         (WebCore::contextMenuItemTagCopyLinkToClipboard):
3266         (WebCore::contextMenuItemTagOpenImageInNewWindow):
3267         (WebCore::contextMenuItemTagDownloadImageToDisk):
3268         (WebCore::contextMenuItemTagCopyImageToClipboard):
3269         (WebCore::contextMenuItemTagOpenFrameInNewWindow):
3270         (WebCore::contextMenuItemTagCopy):
3271         (WebCore::contextMenuItemTagGoBack):
3272         (WebCore::contextMenuItemTagGoForward):
3273         (WebCore::contextMenuItemTagStop):
3274         (WebCore::contextMenuItemTagReload):
3275         (WebCore::contextMenuItemTagCut):
3276         (WebCore::contextMenuItemTagPaste):
3277         (WebCore::contextMenuItemTagNoGuessesFound):
3278         (WebCore::contextMenuItemTagIgnoreSpelling):
3279         (WebCore::contextMenuItemTagLearnSpelling):
3280         (WebCore::contextMenuItemTagSearchWeb):
3281         (WebCore::contextMenuItemTagLookUpInDictionary):
3282         (WebCore::contextMenuItemTagOpenLink):
3283         (WebCore::contextMenuItemTagIgnoreGrammar):
3284         (WebCore::contextMenuItemTagSpellingMenu):
3285         (WebCore::contextMenuItemTagShowSpellingPanel):
3286         (WebCore::contextMenuItemTagCheckSpelling):
3287         (WebCore::contextMenuItemTagCheckSpellingWhileTyping):
3288         (WebCore::contextMenuItemTagCheckGrammarWithSpelling):
3289         (WebCore::contextMenuItemTagFontMenu):
3290         (WebCore::contextMenuItemTagBold):
3291         (WebCore::contextMenuItemTagItalic):
3292         (WebCore::contextMenuItemTagUnderline):
3293         (WebCore::contextMenuItemTagOutline):
3294         (WebCore::contextMenuItemTagWritingDirectionMenu):
3295         (WebCore::contextMenuItemTagDefaultDirection):
3296         (WebCore::contextMenuItemTagLeftToRight):
3297         (WebCore::contextMenuItemTagRightToLeft):
3298         (WebCore::DocumentLoader::unreachableURL):
3299         (WebCore::FrameLoader::redirectDataToPlugin):
3300         (WebCore::FrameLoader::partClearedInBegin):
3301         (WebCore::FrameLoader::createPlugin):
3302
3303 2007-01-27  Sam Weinig  <sam@webkit.org>
3304
3305         Reviewed by Mitz.
3306
3307         - Patch for http://bugs.webkit.org/show_bug.cgi?id=11957
3308           REGRESSION: Unordered List Bullets too big and changing from size
3309
3310         * rendering/RenderListMarker.cpp:
3311         (WebCore::RenderListMarker::paint): Explicitly set the stroke size to 1.0f.
3312
3313 2007-01-27  Lars Knoll <lars@trolltech.com>
3314
3315         Fix the Qt build and disable the usage
3316         of QScrollbars for PlatformScrollBar for 
3317         now as it causes crashes in the layout tests.
3318
3319         * WebCore.pro:
3320         * ksvg2/svg/SVGTransformDistance.cpp:
3321         * page/qt/FrameQt.cpp:
3322         (WebCore::FrameQt::FrameQt):
3323         (WebCore::FrameQt::bindingRootObject):
3324         (WebCore::FrameQt::createRootObject):
3325         * page/qt/FrameQt.h:
3326         * platform/qt/PlatformScrollBarQt.cpp:
3327         (WebCore::PlatformScrollbar::PlatformScrollbar):
3328         * platform/qt/ScrollViewQt.cpp:
3329         (WebCore::ScrollView::addChild):
3330
3331 2007-01-27  David Kilzer  <ddkilzer@kilzer.net>
3332
3333         Reviewed by NOBODY (buildbot build fix).
3334
3335         * ksvg2/svg/ColorDistance.cpp:
3336         (WebCore::ColorDistance::scaledDistance): Added static cast of arguments to int.
3337
3338 2007-01-27  Rob Buis  <buis@kde.org>
3339
3340         Reviewed by NOBODY (typo in method name fix).
3341
3342         * ksvg2/svg/SVGSVGElement.cpp:
3343         (WebCore::SVGSVGElement::addSVGWindowEventListener):
3344         (WebCore::SVGSVGElement::parseMappedAttribute):
3345         * ksvg2/svg/SVGSVGElement.h:
3346
3347 2007-01-27  Eric Seidel  <eric@webkit.org>
3348
3349         Reviewed by olliej.
3350
3351         Fix support for SVG's <set> element.
3352
3353         Manual test added.
3354
3355         * ksvg2/svg/SVGSetElement.cpp:
3356         (WebCore::SVGSetElement::updateAnimatedValue):
3357         (WebCore::SVGSetElement::calculateFromAndToValues):
3358         * ksvg2/svg/SVGSetElement.h:
3359         * manual-tests/animation/set-to.svg: Added.
3360
3361 2007-01-27  Alexey Proskuryakov  <ap@webkit.org>
3362
3363         Release build fix.
3364
3365         * loader/TextResourceDecoder.cpp:
3366         (WebCore::TextResourceDecoder::checkForHeadCharset):
3367
3368 2007-01-27  Alexey Proskuryakov  <ap@webkit.org>
3369
3370         Reviewed by Darin.
3371
3372         http://bugs.webkit.org/show_bug.cgi?id=12389
3373         Chinese decoding error at hk.antispam.yahoo.com
3374
3375         Test: fast/encoding/noscript-in-head.html
3376
3377         * loader/TextResourceDecoder.cpp:
3378         (WebCore::TextResourceDecoder::checkForHeadCharset): We were already allowing 
3379         NOSCRIPT tags in head, let's actually skip over their content.
3380
3381 2007-01-26  Geoffrey Garen  <ggaren@apple.com>
3382
3383         Reviewed by Maciej Stachowiak.
3384         
3385         Fixed <rdar://problem/4608404> WebScriptObject's _executionContext lack 
3386         of ownership policy causes crashes (e.g., in Dashcode)
3387
3388         Added RootObject ref-counting goodness.
3389
3390         * page/mac/FrameMac.h:
3391         * page/mac/FrameMac.mm:
3392         (WebCore::FrameMac::cleanupPluginObjects): Invalidate our RootObjects 
3393         instead of detroying them. Track _bindingRootObject separately from the
3394         rest of our RootObjects, since it has its own variable.
3395
3396         * page/mac/WebCoreFrameBridge.mm:
3397         (createRootObject): Use the Frame's new, more encapsulated function to
3398         create a RootObject.
3399
3400         * bindings/objc/WebScriptObject.mm: Nixed rootObject setters, since they
3401         were unused and they complicated reference-counting.
3402
3403 2007-01-26  David Kilzer  <ddkilzer@webkit.org>
3404
3405         Reviewed by Eric.
3406
3407         Release build fix.
3408
3409         * ksvg2/svg/SVGAnimationElement.cpp:
3410         (WebCore::SVGAnimationElement::calculateValueIndexAndPercentagePast): Added static cast
3411         to unsigned when calculating flooredValueIndex.
3412
3413 2007-01-26  Darin Adler  <darin@apple.com>
3414
3415         - checked in slightly newer revision of the patch below
3416
3417         * css/CSSComputedStyleDeclaration.cpp:
3418         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
3419         Grouped all the unimplemented values at the bottom. Fixed the ifdef for
3420         CSS_PROP__WEBKIT_DASHBOARD_REGION so that it compiles on all platforms.
3421
3422         * css/cssparser.cpp: (WebCore::CSSParser::parseValue): Removed default
3423         case and added type so that the compiler warns about missing properties.
3424         * css/cssstyleselector.cpp: (WebCore::CSSStyleSelector::applyProperty): Ditto.
3425
3426 2007-01-26  Darin Adler  <darin@apple.com>
3427
3428         Reviewed by Beth.
3429
3430         - fix http://bugs.webkit.org/show_bug.cgi?id=12412
3431           "unimplemented propertyID: 46" seen at dojotoolkit.org
3432
3433         Covered by fast/css/computed-style.html
3434
3435         * css/CSSPropertyNames.in: Sorted the file into two separate sections, one
3436         for properties without the -webkit- prefix and another for properties with.
3437
3438         * css/makeprop: Generate a CSSPropertyID enum instead of a set of #defines.
3439         Removed unused CSS_PROP_MIN and CSS_PROP_MAX. Renamed CSS_PROP_TOTAL to
3440         numCSSProperties and changed it to a const int instead of #define.
3441         Added a declaration of getPropertyName in the header. Changed the return
3442         type of getPropertyName to const char* and the parameter type to CSSPropertyID.
3443
3444         * css/CSSComputedStyleDeclaration.cpp: Sort the lists of properties in
3445         an easier to maintain order -- properties without a WebKit prefix first.
3446         (WebCore::valueForLength): Changed return value to PassRefPtr.
3447         (WebCore::valueForMaxLength): Ditto.
3448         (WebCore::valueForBorderStyle): Ditto.
3449         (WebCore::valueForTextAlign): Ditto.
3450         (WebCore::valueForAppearance): Added.
3451         (WebCore::valueForMarginCollapse): Added.
3452         (WebCore::valueForShadow): Changed return value to PassRefPtr.
3453         (WebCore::getPositionOffsetValue): Ditto.
3454         (WebCore::currentColorOrValidColor): Ditto.
3455         (WebCore::CSSComputedStyleDeclaration::cssText): Added cast since
3456         getPropertyName now takes an enum value.
3457         (WebCore::primitiveValueFromLength): Changed return value to PassRefPtr.
3458         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
3459         Added cast to CSSPropertyID so that gcc will detect missing enums in the
3460         switch statement. Simplified the background-size and border-spacing
3461         implementations so they don't have local variables. Added lots of cases
3462         to the switch statement for unimplemented properties. Implemented the
3463         outline-width, box-sizing, -webkit-appearance, -webkit-rtl-ordering,
3464         -webkit-user-drag, and -webkit-user-select properties.
3465         (WebCore::CSSComputedStyleDeclaration::item): Added cast since
3466         getPropertyName now takes an enum value.
3467
3468         * css/CSSMutableStyleDeclaration.cpp: Removed declaration of getPropertyName.
3469         (WebCore::CSSMutableStyleDeclaration::item): Added cast since
3470         getPropertyName now takes an enum value.
3471
3472         * css/CSSProperty.cpp: Removed declaration of getPropertyName.
3473         (WebCore::CSSProperty::cssText): Added cast since
3474         getPropertyName now takes an enum value and returns a const char*.
3475
3476         * css/CSSStyleDeclaration.cpp: Removed declaration of getPropertyName.
3477         (WebCore::CSSStyleDeclaration::getPropertyShorthand): Added cast since
3478         getPropertyName now takes an enum value and returns a const char*.
3479
3480 2007-01-26  Alice Liu  <alice.liu@apple.com>
3481
3482         Reviewed by Brady.
3483
3484         Fixed <rdar://problem/4838076> CrashTracer: 10 crashes in Mail at com.apple.WebCore: WTF::HashMap<WebCore::String
3485
3486         * loader/DocLoader.cpp:
3487         (WebCore::DocLoader::requestResource):
3488         Added nil check around resource from cache.
3489
3490 2007-01-26  Adam Roben  <aroben@apple.com>
3491
3492         Reviewed by Oliver.
3493
3494         Build fix.
3495
3496         * ksvg2/svg/SVGAnimationElement.cpp:
3497         (WebCore::SVGAnimationElement::calculateValueIndexAndPercentagePast):
3498         Keep index variables as unsigned until we need to convert to float.
3499
3500 2007-01-26  Alice Liu  <alice.liu@apple.com>
3501
3502         Reviewed by Ada.
3503
3504         Fixed <rdar://problem/4919097> REGRESSION: Ctrl-Y fails to yank (11076)
3505
3506         * editing/Editor.cpp:
3507         (WebCore::Editor::deleteWithDirection):
3508         If there's no selection, locally create a range that is to the end of the granularity unit and pass that to deleteRange(). 
3509
3510 2007-01-26  Sam Weinig  <sam@webkit.org>
3511
3512         Reviewed by Maciej.
3513
3514         Qt build fix.
3515
3516         * page/qt/EventHandlerQt.cpp:
3517
3518 2007-01-26  Dex Deacon  <occupant4@gmail.com>
3519
3520         Reviewed by Hyatt.
3521
3522         Fix so that we only relayout frameset children on calls to layout.
3523
3524         * page/FrameView.cpp:
3525         (WebCore::FrameView::layout):
3526
3527 2007-01-26  Oliver Hunt  <oliver@apple.com>
3528
3529         Build Fix
3530
3531         * ksvg2/svg/ColorDistance.cpp:
3532         * ksvg2/svg/SVGAnimationElement.cpp:
3533         (WebCore::SVGAnimationElement::handleTimerEvent):
3534
3535 2007-01-26  Eric Seidel  <eric@webkit.org>
3536
3537         Reviewed by olliej.
3538
3539         Add support for calcMode, keyTimes and (nearly) keySplines.
3540         http://bugs.webkit.org/show_bug.cgi?id=12350
3541         Re-architect much of the animation system to remove huge sections of code.
3542         Added new ColorDistance, SVGTransformDistance to simplify animateColor, animateTransform calculations.
3543         I also added basic <animateMotion> support since it was so easy w/ the new architecture.
3544         
3545         Adding manual animation tests until bug 12074 is fixed.
3546
3547         * WebCore.xcodeproj/project.pbxproj:
3548         * ksvg2/misc/SVGTimer.cpp:
3549         (WebCore::SVGTimer::applyAnimations):
3550         * ksvg2/svg/ColorDistance.cpp: Added.
3551         (WebCore::ColorDistance::ColorDistance):
3552         (WebCore::clampColorValue):
3553         (WebCore::ColorDistance::scaledDistance):
3554         (WebCore::ColorDistance::addColorsAndClamp):
3555         (WebCore::ColorDistance::addToColorAndClamp):
3556         (WebCore::ColorDistance::isZero):
3557         (WebCore::ColorDistance::distance):
3558         * ksvg2/svg/ColorDistance.h: Added.
3559         * ksvg2/svg/SVGAnimateColorElement.cpp:
3560         (WebCore::SVGAnimateColorElement::SVGAnimateColorElement):
3561         (WebCore::SVGAnimateColorElement::updateAnimationBaseValueFromElement):
3562         (WebCore::SVGAnimateColorElement::applyAnimatedValueToElement):
3563         (WebCore::SVGAnimateColorElement::updateAnimatedValue):
3564         (WebCore::SVGAnimateColorElement::calculateFromAndToValues):
3565         * ksvg2/svg/SVGAnimateColorElement.h:
3566         (WebCore::SVGAnimateColorElement::contextElement):
3567         * ksvg2/svg/SVGAnimateElement.h:
3568         (WebCore::SVGAnimateElement::updateAnimatedValue):
3569         (WebCore::SVGAnimateElement::calculateFromAndToValues):
3570         * ksvg2/svg/SVGAnimateMotionElement.cpp:
3571         (WebCore::SVGAnimateMotionElement::hasValidTarget):
3572         (WebCore::SVGAnimateMotionElement::updateAnimatedValue):
3573         (WebCore::parsePoint):
3574         (WebCore::SVGAnimateMotionElement::calculateFromAndToValues):
3575         (WebCore::SVGAnimateMotionElement::updateAnimationBaseValueFromElement):
3576         (WebCore::SVGAnimateMotionElement::applyAnimatedValueToElement):
3577         * ksvg2/svg/SVGAnimateMotionElement.h:
3578         * ksvg2/svg/SVGAnimateTransformElement.cpp:
3579         (WebCore::SVGAnimateTransformElement::SVGAnimateTransformElement):
3580         (WebCore::SVGAnimateTransformElement::updateAnimatedValue):
3581         (WebCore::SVGAnimateTransformElement::updateAnimationBaseValueFromElement):
3582         (WebCore::SVGAnimateTransformElement::applyAnimatedValueToElement):
3583         (WebCore::SVGAnimateTransformElement::calculateFromAndToValues):
3584         (WebCore::SVGAnimateTransformElement::parseTransformValue):
3585         * ksvg2/svg/SVGAnimateTransformElement.h:
3586         (WebCore::SVGAnimateTransformElement::contextElement):
3587         * ksvg2/svg/SVGAnimationElement.cpp:
3588         (WebCore::SVGAnimationElement::parseKeyNumbers):
3589         (WebCore::parseValues):
3590         (WebCore::parseKeySplines):