6538877ac093163c85dddf81b8f07ecdbc6ad8fc
[WebKit-https.git] / WebCore / ChangeLog
1 2006-10-26  Anders Carlsson  <acarlsson@apple.com>
2
3         Build fix.
4
5         * html/CanvasRenderingContext2D.cpp:
6         Include MathExtras.h
7         
8 2006-10-26  John Sullivan  <sullivan@apple.com>
9
10         Reviewed by Anders.
11
12         Some changes to support new grammar checking code in WebKit.
13
14         * WebCore.exp:
15         added mangled symbol for Document->removeMarkers() so I can call it from WebKit
16         
17         * WebCore.xcodeproj/project.pbxproj:
18         Made Document.h and DocumentMarker.h private so I can include them from WebKit.
19         Made HTMLCollection.h private because Document.h uses it.
20         
21         * bridge/mac/WebCoreFrameBridge.h:
22         * bridge/mac/WebCoreFrameBridge.mm:
23         removed unmarkAllMisspellings(); WebKit now calls through to the Document directly
24
25 2006-10-26  Anders Carlsson  <acarlsson@apple.com>
26
27         Reviewed by Brady.
28
29         Add reverseFind to String and use it instead of findRev.
30         Use CString instead of DeprecatedCString in one place.
31         
32         * html/HTMLFormElement.cpp:
33         (WebCore::HTMLFormElement::formData):
34         * ksvg2/svg/SVGURIReference.cpp:
35         (WebCore::SVGURIReference::getTarget):
36         * loader/Decoder.cpp:
37         (WebCore::Decoder::checkForCSSCharset):
38         * platform/PlatformString.h:
39         (WebCore::String::reverseFind):
40         * platform/StringImpl.cpp:
41         (WebCore::StringImpl::reverseFind):
42         * platform/StringImpl.h:
43
44 2006-10-26  John Sullivan  <sullivan@apple.com>
45
46         Reviewed by Darin
47         
48         More plumbing for grammar checking. Still no grammars is checked.
49
50         * dom/DocumentMarker.h:
51         (WebCore::DocumentMarker::):
52         added Grammar to enum of marker types; removed explicit enum values; removed unnecessary "enum"
53         
54         * platform/GraphicsContext.h:
55         renamed method drawLineForMisspelling to drawLineForMisspellingOrBadGrammar;
56         now takes a bool parameter for whether it represents bad grammar or a misspelling 
57         
58         * platform/mac/GraphicsContextMac.mm:
59         (WebCore::GraphicsContext::drawLineForMisspellingOrBadGrammar):
60         Renamed from drawLineForMisspelling; uses green dot instead of red dot for grammar case. Changed
61         an existing "assert" to "ASSERT".
62         
63         * rendering/InlineTextBox.h:
64         renamed function paintSpellingMarker to paintSpellingOrGrammarMarker;
65
66         * rendering/InlineTextBox.cpp:
67         (WebCore::InlineTextBox::paintSpellingOrGrammarMarker):
68         Renamed from paintSpellingMarker; now takes a bool parameter for whether it represents
69         bad grammar or a misspelling
70         (WebCore::InlineTextBox::paintAllMarkersOfType):
71         now handles markers of type Grammar
72
73 === Safari-521.29 ===
74         
75 2006-10-26  Sam Weinig  <sam.weinig@gmail.com>
76
77         Reviewed by Mitz.
78
79         Fix for http://bugs.webkit.org/show_bug.cgi?id=11424
80         Cleanup rendering code
81
82         - Assorted code cleanup.
83
84         * rendering/AutoTableLayout.cpp:
85         * rendering/AutoTableLayout.h:
86         (WebCore::AutoTableLayout::totalPercent):
87         * rendering/CounterListItem.h:
88         * rendering/CounterNode.cpp:
89         * rendering/CounterNode.h:
90         (WebCore::CounterNode::~CounterNode):
91         (WebCore::CounterNode::isReset):
92         * rendering/CounterResetNode.cpp:
93         * rendering/CounterResetNode.h:
94         * rendering/DataRef.h:
95         (WebCore::DataRef::DataRef):
96         * rendering/DeprecatedRenderSelect.h:
97         * rendering/DeprecatedSlider.cpp:
98         * rendering/DeprecatedSlider.h:
99         * rendering/EllipsisBox.cpp:
100         * rendering/EllipsisBox.h:
101         (WebCore::EllipsisBox::EllipsisBox):
102         * rendering/FixedTableLayout.cpp:
103         * rendering/FixedTableLayout.h:
104         * rendering/GapRects.h:
105         * rendering/InlineBox.cpp:
106         * rendering/InlineBox.h:
107         (WebCore::InlineBox::InlineBox):
108         (WebCore::InlineBox::setConstructed):
109         (WebCore::InlineBox::clearTruncation):
110         (WebCore::InlineBox::markDirty):
111         * rendering/InlineFlowBox.cpp:
112         * rendering/InlineFlowBox.h:
113         (WebCore::InlineFlowBox::InlineFlowBox):
114         (WebCore::InlineFlowBox::setConstructed):
115         (WebCore::InlineFlowBox::setEdges):
116         (WebCore::InlineFlowBox::setVerticalOverflowPositions):
117         (WebCore::InlineFlowBox::setVerticalSelectionPositions):
118         * rendering/InlineRunBox.h:
119         (WebCore::InlineRunBox::paintBackgroundAndBorder):
120         (WebCore::InlineRunBox::paintDecorations):
121         * rendering/InlineTextBox.cpp:
122         * rendering/InlineTextBox.h:
123         (WebCore::InlineTextBox::InlineTextBox):
124         (WebCore::InlineTextBox::end):
125         (WebCore::InlineTextBox::textObject):
126         * rendering/Length.h:
127         (WebCore::Length::Length):
128         * rendering/ListMarkerBox.cpp:
129         * rendering/ListMarkerBox.h:
130         * rendering/RenderPartObject.h:
131         * rendering/RootInlineBox.cpp:
132         * rendering/RootInlineBox.h:
133         * rendering/SVGInlineFlowBox.cpp:
134         * rendering/SVGInlineFlowBox.h:
135         (WebCore::SVGInlineFlowBox::SVGInlineFlowBox):
136         * rendering/SVGRootInlineBox.cpp:
137         * rendering/SVGRootInlineBox.h:
138         (WebCore::SVGRootInlineBox::SVGRootInlineBox):
139         * rendering/TableLayout.h:
140         (WebCore::TableLayout::TableLayout):
141         (WebCore::TableLayout::~TableLayout):
142         * rendering/bidi.h:
143         (WebCore::BidiStatus::BidiStatus):
144         (WebCore::BidiRun::BidiRun):
145         * rendering/break_lines.h:
146
147 2006-10-26  Justin Garcia  <justin.garcia@apple.com>
148
149         Reviewed by john
150
151         <http://bugs.webkit.org/show_bug.cgi?id=11329>
152         Gmail Editor: Can't remove styling applied to selection after clicking "Remove Formatting" toolbar icon.
153         
154         * editing/Editor.cpp:
155         (WebCore::Editor::removeFormattingAndStyle): Moved from JSEditor.
156         Wrapped the plain text fragment in a style span with the document 
157         default style so that it will appear unstyled regardless of where
158         it is inserted.  Could have also inserted the plain text fragment 
159         and then applied the document default style to it, but there is not 
160         yet any redundant style prevention in ApplyStyleCommand, so this
161         is cleaner.
162         * editing/Editor.h:
163         * editing/JSEditor.cpp:
164
165 2006-10-26  Oliver Hunt  <oliver@apple.com>
166
167         Reviewed by Anders.
168         Fixes <rdar://problem/4800518> -- needed to update existing
169         canvas path elements when transforms are performed on the
170         context.
171
172         * html/CanvasRenderingContext2D.cpp:
173         (WebCore::CanvasRenderingContext2D::scale):
174         (WebCore::CanvasRenderingContext2D::rotate):
175         (WebCore::CanvasRenderingContext2D::translate):
176
177 2006-10-26  Nikolas Zimmermann  <zimmermann@kde.org>
178
179         Reviewed by Darin.
180
181         Fix Qt/Linux build.
182
183         * platform/network/qt/ResourceLoaderManager.cpp:
184         (WebCore::ResourceLoaderManager::slotData):
185         (WebCore::ResourceLoaderManager::slotMimetype):
186         (WebCore::ResourceLoaderManager::remove):
187         (WebCore::ResourceLoaderManager::add):
188         * platform/network/qt/ResourceLoaderQt.cpp:
189         (WebCore::ResourceLoader::receivedResponse):
190         * platform/qt/FrameQtClient.cpp:
191         (WebCore::FrameQtClientDefault::openURL):
192         * platform/qt/LoaderFunctionsQt.cpp:
193         (WebCore::ServeSynchronousRequest):
194
195 2006-10-26  Adam Roben  <aroben@apple.com>
196
197         Reviewed by Adele.
198
199         Fix: <rdar://problem/3951815> add "type-to-select" feature for list
200         boxes (<select> elements)
201
202         This also adds type-ahead find for closed menulists (popups).
203
204         * WebCore.xcodeproj/project.pbxproj: Version wars.
205         * html/HTMLSelectElement.h: Add new instance variables for type-ahead
206         find.
207         * html/HTMLSelectElement.cpp:
208         (WebCore::HTMLSelectElement::HTMLSelectElement): Initialize new
209         instance variables.
210         (WebCore::HTMLSelectElement::defaultEventHandler): Perform type-ahead
211         find on printable character presses.
212         (WebCore::HTMLSelectElement::menuListDefaultEventHandler): Remove
213         redundant check that the listIndex has changed (setSelectedIndex does
214         this for us), and fix indentation.
215         (WebCore::HTMLSelectElement::listBoxDefaultEventHandler): Change an if
216         to an else-if.
217         (WebCore::stripLeadingWhiteSpace): Helper function for typeAheadFind()
218         to strip leading whitespace (including non-breaking spaces) from a
219         string.
220         (WebCore::HTMLSelectElement::typeAheadFind): New method to perform
221         type-ahead find.
222         * platform/PopupMenu.h: Added new updateFromElement() method to be
223         called from RenderMenuList::updateFromElement().
224         * platform/mac/PopupMenuMac.mm:
225         (WebCore::PopupMenu::updateFromElement): While we are using
226         NSPopUpButtonCell for our popups, this method can stay empty.
227         * rendering/RenderListBox.cpp:
228         (WebCore::RenderListBox::updateFromElement): Scroll to reveal the first
229         selected element.
230         * rendering/RenderMenuList.cpp:
231         (WebCore::RenderMenuList::updateFromElement): Tell the popup to update
232         if it's visible.
233
234 2006-10-26  Darin Adler  <darin@apple.com>
235
236         Reviewed by Anders.
237
238         - fix http://bugs.webkit.org/show_bug.cgi?id=11360
239           editing/pasteboard/copy-paste-bidi intermittently fails due to disappearance of anonymous RenderBlock
240
241         * editing/ReplaceSelectionCommand.cpp:
242         (WebCore::ReplaceSelectionCommand::removeRedundantStyles):
243         Use two vectors instead of a hash map: more efficient, deterministic. There was no
244         reason to use a hash table.
245
246 2006-10-26  Maciej Stachowiak  <mjs@apple.com>
247
248         Reviewed by Anders.
249
250         - .5% speed improvement by avoiding excess CFURLRef allocation
251
252         * loader/CachedResource.cpp:
253         (WebCore::CachedResource::getCFURL): New method. For Mac only (for now), cache the CFURL
254         here for later reuse.
255         * loader/CachedResource.h:
256         * loader/mac/LoaderFunctionsMac.mm:
257         (WebCore::CheckCacheObjectStatus): Use the cached CFURL, don't make a whole new one.
258
259 2006-10-25  Darin Adler  <darin@apple.com>
260
261         Reviewed by Anders.
262
263         - removed 55 methods from WebCoreFrameBridge
264         - changed callers to use Frame directly instead
265         - put FrameLoaderTypes.h types into the WebCore namespace
266         - first steps to get FrameLoader.h ready for cross-platform duty
267
268         * WebCore.exp:
269         * WebCore.xcodeproj/project.pbxproj:
270         * bridge/mac/BrowserExtensionMac.mm:
271         (WebCore::BrowserExtensionMac::createNewWindow):
272         * bridge/mac/FrameMac.h:
273         * bridge/mac/FrameMac.mm:
274         (WebCore::FrameMac::loadRequest):
275         (WebCore::FrameMac::startRedirectionTimer):
276         (WebCore::FrameMac::stopRedirectionTimer):
277         (WebCore::FrameMac::passSubframeEventToSubframe):
278         (WebCore::FrameMac::handledOnloadEvents):
279         (WebCore::FrameMac::isLoadTypeReload):
280         * bridge/mac/WebCoreFrameBridge.h:
281         * bridge/mac/WebCoreFrameBridge.mm:
282         (-[WebCoreFrameBridge executionContextForView:]):
283         (updateRenderingForBindings):
284         (-[WebCoreFrameBridge canTargetLoadInFrame:]):
285         (-[WebCoreFrameBridge forceLayoutAdjustingViewSize:]):
286         (-[WebCoreFrameBridge forceLayoutWithMinimumPageWidth:maximumPageWidth:adjustingViewSize:]):
287         (-[WebCoreFrameBridge installInFrame:]):
288         (-[WebCoreFrameBridge numPendingOrLoadingRequests]):
289         (-[WebCoreFrameBridge replaceSelectionWithNode:selectReplacement:smartReplace:matchStyle:]):
290         (-[WebCoreFrameBridge baseWritingDirectionForSelectionStart]):
291         (-[WebCoreFrameBridge dragOperationForDraggingInfo:]):
292         (stringByCollapsingNonPrintingCharacters):
293         (-[WebCoreFrameBridge startLoadingResource:withMethod:URL:customHeaders:]):
294         (-[WebCoreFrameBridge startLoadingResource:withMethod:URL:customHeaders:postData:]):
295         (-[WebCoreFrameBridge syncLoadResourceWithMethod:URL:customHeaders:postData:finalURL:responseHeaders:statusCode:]):
296         * loader/FrameLoaderTypes.h:
297         * loader/mac/FrameLoader.h:
298         * loader/mac/FrameLoader.mm:
299         (WebCore::FrameLoader::FrameLoader):
300         (WebCore::FrameLoader::setupForReplace):
301         (WebCore::FrameLoader::load):
302         (WebCore::FrameLoader::activeDocumentLoader):
303         (WebCore::FrameLoader::state):
304         (WebCore::FrameLoader::setState):
305         (WebCore::FrameLoader::clearProvisionalLoad):
306         (WebCore::FrameLoader::markLoadComplete):
307         (WebCore::FrameLoader::commitProvisionalLoad):
308         (WebCore::FrameLoader::receivedMainResourceError):
309         (WebCore::FrameLoader::handleFallbackContent):
310         (WebCore::FrameLoader::isLoadingMainFrame):
311         (WebCore::FrameLoader::continueAfterNewWindowPolicy):
312         (WebCore::FrameLoader::continueAfterNavigationPolicy):
313         (WebCore::FrameLoader::continueAfterWillSubmitForm):
314         (WebCore::FrameLoader::continueLoadRequestAfterNavigationPolicy):
315         (WebCore::FrameLoader::transitionToCommitted):
316         (WebCore::FrameLoader::checkLoadCompleteForThisFrame):
317         (WebCore::FrameLoader::continueLoadRequestAfterNewWindowPolicy):
318         (-[WebCoreFrameLoaderAsDelegate continueAfterNewWindowPolicy:]):
319         (-[WebCoreFrameLoaderAsDelegate continueAfterNavigationPolicy:]):
320         (-[WebCoreFrameLoaderAsDelegate continueAfterWillSubmitForm:]):
321         * loader/mac/ImageDocumentMac.mm:
322         (WebCore::finishImageLoad):
323         * loader/mac/WebDocumentLoader.mm:
324         (WebCore::DocumentLoader::isLoadingInAPISense):
325         * loader/mac/WebMainResourceLoader.h:
326         * loader/mac/WebMainResourceLoader.mm:
327         (WebCore::MainResourceLoader::continueAfterContentPolicy):
328         (-[WebCoreMainResourceLoaderAsPolicyDelegate continueAfterContentPolicy:]):
329         * loader/mac/WebSubresourceLoader.mm:
330         (-[WebCoreSubresourceHandle initWithLoader:]):
331         * platform/mac/ListBoxMac.mm:
332         (-[WebCoreTableView keyDown:]):
333         (-[WebCoreTableView keyUp:]):
334         * platform/mac/WebCoreTextField.mm:
335         (-[WebCoreTextFieldController textView:shouldHandleEvent:]):
336
337 2006-10-25  Steve Falkenburg  <sfalken@apple.com>
338
339         Reviewed by Darin.
340
341         Printing fixes
342
343         * page/Frame.cpp:
344         (WebCore::Frame::adjustPageHeight):
345         * page/Frame.h:
346         (WebCore::Frame::setupRootForPrinting):
347         (WebCore::Frame::computePageRects):
348
349 2006-10-25  Anders Carlsson  <acarlsson@apple.com>
350
351         Reviewed by Geoff.
352
353         <rdar://problem/4799088>
354         REGRESSION: Translation widget fails to convert data and reports a "Data unavailable" error.
355
356         * loader/mac/WebSubresourceLoader.h:
357         * loader/mac/WebSubresourceLoader.mm:
358         (-[WebCoreSubresourceHandle initWithLoader:]):
359         Set the HTTP method before the HTTP body.
360
361 2006-10-25  Geoffrey Garen  <ggaren@apple.com>
362
363         Reviewed by Adam.
364
365         Renamed WebFrameLoader to FrameLoader, to match class name.
366
367         * WebCore.xcodeproj/project.pbxproj:
368         * bridge/mac/FrameMac.mm:
369         * bridge/mac/WebCoreFrameBridge.mm:
370         * loader/mac/FrameLoader.mm: Added.
371         * loader/mac/IconLoaderMac.mm:
372         * loader/mac/WebDocumentLoader.mm:
373         * loader/mac/WebFrameLoader.h: Removed.
374         * loader/mac/WebFrameLoader.mm: Removed.
375         * loader/mac/WebLoader.mm:
376         * loader/mac/WebMainResourceLoader.mm:
377         * loader/mac/WebNetscapePlugInStreamLoader.mm:
378         * loader/mac/WebSubresourceLoader.mm:
379
380 2006-10-25  Darin Adler  <darin@apple.com>
381
382         - fix full builds
383
384         * WebCore.xcodeproj/project.pbxproj: Mark bridge/mac/WebCoreResourceLoader.h as private.
385
386 2006-10-25  David Smith  <catfish.man@gmail.com>
387
388         Reviewed by Mitz.
389
390         Fixed REGRESSION (r17280): Repro crash when clicking a link with target="_blank"
391         http://bugs.webkit.org/show_bug.cgi?id=11411
392
393         * bridge/mac/WebCoreFrameBridge.mm:
394         (-[WebCoreFrameBridge canTargetLoadInFrame:]): Check that the target has a frame before using it.
395
396 2006-10-25  Maciej Stachowiak  <mjs@apple.com>
397
398         Rubber stamped by Mitz.
399
400         - moved some files that are essentially part of the ResourceLoader implementation to platform/network/mac
401
402         * WebCore.xcodeproj/project.pbxproj:
403         * bridge/mac/WebCoreResourceLoader.h: Moved to platform/network/mac.
404         * bridge/mac/WebCoreResourceLoaderImp.h: Moved to platform/network/mac.
405         * bridge/mac/WebCoreResourceLoaderImp.mm: Moved to platform/network/mac.
406
407 2006-10-25  Maciej Stachowiak  <mjs@apple.com>
408
409         Rubber stamped by Mark.
410
411         - remove no longer existing symbol that was breaking linking
412
413         * WebCore.exp:
414
415 2006-10-25  Maciej Stachowiak  <mjs@apple.com>
416
417         Reviewed by Mitz.
418         
419         - fixed "REGRESSION: Activity window doesn't always list all files until refresh"
420         http://bugs.webkit.org/show_bug.cgi?id=11212
421
422         I couldn't figure out how to write a test case.
423
424         * bindings/js/kjs_window.cpp:
425         (KJS::Window::clear): Avoid crashing if already detached.
426         * bridge/mac/FrameMac.h:
427         * bridge/mac/FrameMac.mm:
428         (WebCore::FrameMac::clear): Change prototype to make this a proper
429         overload for Frame::clear once again(!).
430
431 2006-10-24  Darin Adler  <darin@apple.com>
432
433         Reviewed by Anders.
434
435         - converted WebFrameLoaderClient to C++
436         - renamed frame->frameLoader() function to frame->loader()
437         - renamed [bridge impl] to [bridge _frame]
438         - removed some bridge methods
439
440         * WebCore.exp: Added more exports.
441         * WebCore.xcodeproj/project.pbxproj: Made FrameTree.h private instead of project-internal
442         so it can be used in WebKit.
443
444         * bridge/mac/BrowserExtensionMac.mm:
445         (WebCore::BrowserExtensionMac::createNewWindow):
446         * bridge/mac/FrameMac.mm:
447         (WebCore::FrameMac::createFrame):
448         (WebCore::FrameMac::didFirstLayout):
449         * bridge/mac/WebCoreAXObject.mm:
450         (-[WebCoreAXObject rendererForView:]):
451         * bridge/mac/WebCoreFrameBridge.h:
452         * bridge/mac/WebCoreFrameBridge.mm:
453         (-[WebCoreFrameBridge _shouldAllowAccessFrom:]):
454         (-[WebCoreFrameBridge canTargetLoadInFrame:]):
455         (-[WebCoreFrameBridge setOpener:]):
456         (-[WebCoreFrameBridge getData:andResponse:forURL:]):
457         (-[WebCoreFrameBridge getAllResourceDatas:andResponses:]):
458         (-[WebCoreFrameBridge setTitle:]):
459         (-[WebCoreFrameBridge originalRequestURL]):
460         (-[WebCoreFrameBridge isLoadTypeReload]):
461         (-[WebCoreFrameBridge frameDetached]):
462         (-[WebCoreFrameBridge tokenizerProcessedData]):
463         (-[WebCoreFrameBridge receivedData:textEncodingName:]):
464         (-[WebCoreFrameBridge objectLoadedFromCacheWithURL:response:data:]):
465         (-[WebCoreFrameBridge reportClientRedirectToURL:delay:fireDate:lockHistory:isJavaScriptFormAction:]):
466         (-[WebCoreFrameBridge reportClientRedirectCancelled:]):
467         (-[WebCoreFrameBridge syncLoadResourceWithMethod:URL:customHeaders:postData:finalURL:responseHeaders:statusCode:]):
468         (-[WebCoreFrameBridge incomingReferrer]):
469         (-[WebCoreFrameBridge isReloading]):
470         (-[WebCoreFrameBridge handledOnloadEvents]):
471         (-[WebCoreFrameBridge mainResourceURLResponse]):
472         (-[WebCoreFrameBridge loadEmptyDocumentSynchronously]):
473         (-[WebCoreFrameBridge _frame]):
474         (-[WebCoreFrameBridge executionContextForView:]):
475         * bridge/mac/WebCorePageBridge.mm:
476         (-[WebCorePageBridge setMainFrame:]):
477         * dom/Position.cpp:
478         (WebCore::Position::upstream):
479         * loader/mac/IconLoaderMac.mm:
480         (IconLoader::notifyIconChanged):
481         * loader/mac/WebDocumentLoader.mm:
482         (WebCore::DocumentLoader::frameLoader):
483         (WebCore::DocumentLoader::stopLoading):
484         (WebCore::DocumentLoader::finishedLoading):
485         (WebCore::DocumentLoader::setupForReplaceByMIMEType):
486         * loader/mac/WebFormState.mm:
487         (WebCore::FormState::FormState):
488         * loader/mac/WebFrameLoader.h:
489         * loader/mac/WebFrameLoader.mm:
490         (WebCore::FrameLoader::~FrameLoader):
491         (WebCore::FrameLoader::prepareForLoadStart):
492         (WebCore::FrameLoader::finalSetupForReplace):
493         (WebCore::FrameLoader::safeLoad):
494         (WebCore::FrameLoader::load):
495         (WebCore::FrameLoader::startLoading):
496         (WebCore::FrameLoader::stopLoadingSubframes):
497         (WebCore::FrameLoader::stopLoading):
498         (WebCore::FrameLoader::cancelPendingArchiveLoad):
499         (WebCore::FrameLoader::defersCallbacksChanged):
500         (WebCore::FrameLoader::setDefersCallbacks):
501         (WebCore::FrameLoader::setDocumentLoader):
502         (WebCore::FrameLoader::provisionalLoadStarted):
503         (WebCore::FrameLoader::clearProvisionalLoad):
504         (WebCore::FrameLoader::identifierForInitialRequest):
505         (WebCore::FrameLoader::willSendRequest):
506         (WebCore::FrameLoader::didReceiveAuthenticationChallenge):
507         (WebCore::FrameLoader::didCancelAuthenticationChallenge):
508         (WebCore::FrameLoader::didReceiveResponse):
509         (WebCore::FrameLoader::didReceiveData):
510         (WebCore::FrameLoader::didFinishLoad):
511         (WebCore::FrameLoader::didFailToLoad):
512         (WebCore::FrameLoader::privateBrowsingEnabled):
513         (WebCore::FrameLoader::receivedMainResourceError):
514         (WebCore::FrameLoader::clientRedirectCancelledOrFinished):
515         (WebCore::FrameLoader::clientRedirected):
516         (WebCore::FrameLoader::continueFragmentScrollAfterNavigationPolicy):
517         (WebCore::FrameLoader::closeOldDataSources):
518         (WebCore::FrameLoader::opened):
519         (WebCore::FrameLoader::commitProvisionalLoad):
520         (WebCore::FrameLoader::download):
521         (WebCore::FrameLoader::finishedLoading):
522         (WebCore::FrameLoader::notifyIconChanged):
523         (WebCore::FrameLoader::cancelledError):
524         (WebCore::FrameLoader::fileDoesNotExistError):
525         (WebCore::FrameLoader::willUseArchive):
526         (WebCore::FrameLoader::isArchiveLoadPending):
527         (WebCore::FrameLoader::handleUnimplementablePolicy):
528         (WebCore::FrameLoader::cannotShowMIMEType):
529         (WebCore::FrameLoader::interruptionForPolicyChangeError):
530         (WebCore::FrameLoader::canShowMIMEType):
531         (WebCore::FrameLoader::representationExistsForURLScheme):
532         (WebCore::FrameLoader::generatedMIMETypeForURLScheme):
533         (WebCore::FrameLoader::checkContentPolicy):
534         (WebCore::FrameLoader::reloadAllowingStaleData):
535         (WebCore::FrameLoader::reload):
536         (WebCore::FrameLoader::didReceiveServerRedirectForProvisionalLoadForFrame):
537         (WebCore::FrameLoader::finishedLoadingDocument):
538         (WebCore::FrameLoader::committedLoad):
539         (WebCore::FrameLoader::revertToProvisional):
540         (WebCore::FrameLoader::setMainDocumentError):
541         (WebCore::FrameLoader::mainReceivedCompleteError):
542         (WebCore::FrameLoader::subframeIsLoading):
543         (WebCore::FrameLoader::willChangeTitle):
544         (WebCore::FrameLoader::didChangeTitle):
545         (WebCore::FrameLoader::checkNewWindowPolicy):
546         (WebCore::FrameLoader::continueAfterNewWindowPolicy):
547         (WebCore::FrameLoader::checkNavigationPolicy):
548         (WebCore::FrameLoader::continueAfterNavigationPolicy):
549         (WebCore::FrameLoader::continueLoadRequestAfterNavigationPolicy):
550         (WebCore::FrameLoader::didFirstLayout):
551         (WebCore::FrameLoader::frameLoadCompleted):
552         (WebCore::FrameLoader::transitionToCommitted):
553         (WebCore::FrameLoader::checkLoadCompleteForThisFrame):
554         (WebCore::FrameLoader::continueLoadRequestAfterNewWindowPolicy):
555         (WebCore::FrameLoader::sendRemainingDelegateMessages):
556         (WebCore::FrameLoader::requestFromDelegate):
557         (WebCore::FrameLoader::post):
558         (WebCore::FrameLoader::detachChildren):
559         (WebCore::FrameLoader::detachFromParent):
560         (WebCore::FrameLoader::addExtraFieldsToRequest):
561         (WebCore::FrameLoader::actionInformation):
562         (WebCore::FrameLoader::checkLoadComplete):
563         (WebCore::FrameLoader::setClient):
564         (WebCore::FrameLoader::client):
565         (WebCore::FrameLoaderClient::~FrameLoaderClient):
566         * loader/mac/WebFrameLoaderClient.h:
567         * loader/mac/WebLoader.mm:
568         (WebCore::WebResourceLoader::frameLoader):
569         * loader/mac/WebSubresourceLoader.mm:
570         (-[WebCoreSubresourceHandle initWithLoader:]):
571         * page/Frame.cpp:
572         (WebCore::Frame::loader):
573         * page/Frame.h:
574         * platform/mac/SliderMac.mm:
575         (Slider::focusPolicy):
576
577 2006-10-24  Darin Adler  <darin@apple.com>
578
579         Rubber stamped by Anders.
580
581         - get rid of the assertion firing while running the layout tests
582
583         This does not fix the real problem, which is that we need to map offsets within
584         possibly-text-transformed text in the render tree to DOM tree offsets and vice
585         versa -- but it gets the tests running again.
586
587         * dom/Position.cpp: (WebCore::Position::upstream): Commented out the assertion.
588
589 2006-10-24  Maciej Stachowiak  <mjs@apple.com>
590
591         Reviewed by Oliver.
592
593         - more ResourceLoader cleanup
594             - moved HTTPHeaderMap out of ResourceRequest class, so ResourceResponse will be able to use it too
595             - took out attempts to suppress setting of "HEAD" and "GET" methods, since underlying bugs are now fixed
596         
597         * loader/LoaderFunctions.h:
598         * loader/mac/LoaderFunctionsMac.mm:
599         (WebCore::ServeSynchronousRequest):
600         * loader/mac/WebSubresourceLoader.mm:
601         (-[WebCoreSubresourceHandle initWithLoader:]):
602         * platform/network/HTTPHeaderMap.h: Added.
603         * platform/network/ResourceLoader.cpp:
604         (WebCore::ResourceLoader::requestHeaders):
605         * platform/network/ResourceLoader.h:
606         * platform/network/ResourceRequest.h:
607         * platform/network/cf/ResourceLoaderCFNet.cpp:
608         (WebCore::addHeadersFromHashMap):
609         * xml/xmlhttprequest.cpp:
610         (WebCore::XMLHttpRequest::send):
611         * xml/xmlhttprequest.h:
612
613 2006-10-24  Justin Garcia  <justin.garcia@apple.com>
614
615         Reviewed by darin
616
617         <http://bugs.webkit.org/show_bug.cgi?id=10993>
618         GMail Editor: Caret doesn't always position itself after list marker
619         
620         List creation uses moveParagraphs to push content into list items.  
621         moveParagraphs uses a TextIterator to restore selections after moves.
622         Some characters emitted by the TextIterator had bad ranges associated
623         with them.  rangeFromLocationAndLength would skip past the range it
624         should have used when asked for ranges of length 0.
625
626         * editing/TextIterator.cpp:
627         (WebCore::TextIterator::TextIterator): No longer need to initialize a
628         removed member variable.
629         (WebCore::TextIterator::advance): An extra newline is emitted when leaving
630         some blocks.  Use the same range for this newline as for the first newline.
631         We should remove this code and just emit two '\n's.
632         (WebCore::TextIterator::handleTextNode): Setup m_range.
633         (WebCore::TextIterator::handleTextBox): Ditto.
634         (WebCore::TextIterator::handleReplacedElement): Ditto.
635         (WebCore::TextIterator::handleNonTextNode): Ditto.
636         (WebCore::TextIterator::exitNode): Use an m_range from the last VisiblePosition
637         in the block we're leaving to that VP after that one.
638         (WebCore::TextIterator::emitCharacter): This function now takes in the start
639         and the end of the range associated with the emited character, and sets up m_range.
640         (WebCore::TextIterator::range): Return m_range.  If it is null (we are atEnd), 
641         return the end of the range used to create the iterator, as a convenience to
642         callers that use call range() on an iterator that is atEnd.
643         (WebCore::SimplifiedBackwardsTextIterator::SimplifiedBackwardsTextIterator):
644         Same as the changes made to TextIterator's constructor.
645         (WebCore::SimplifiedBackwardsTextIterator::advance): Use a null m_range instead of
646         a null m_positionNode to signal that we're finished.
647         (WebCore::SimplifiedBackwardsTextIterator::handleTextNode): Ditto.
648         (WebCore::SimplifiedBackwardsTextIterator::handleReplacedElement): Similar to changes
649         made to TextIterator.
650         (WebCore::SimplifiedBackwardsTextIterator::emitCharacter): Ditto.
651         (WebCore::SimplifiedBackwardsTextIterator::emitNewline): Simplified.
652         (WebCore::SimplifiedBackwardsTextIterator::range): Similar to the changes made to
653         TextIterator::range.
654         (WebCore::CharacterIterator::range): This function assumed that an iterator's
655         range() was safe to modify.
656         (WebCore::TextIterator::rangeFromLocationAndLength):
657         If the range we're looking for starts in the current chunk, this function assumed
658         that if the chunk started in a text node, it would end in the same text node.  This
659         is no longer the case.
660         If the range we're looking for starts in the middle of the current chunk, I assume
661         that the chunk is inside a text node, because those are the only chunks with length
662         greater than one at the moment.
663         If the range we're looking for is a zero length range that starts/ends at the end of the
664         current chunk, we used to return the start of the next chunk, but that's wrong and
665         is what caused this bug.
666         * editing/TextIterator.h:
667         (WebCore::TextIterator::atEnd): The iterator is atEnd when m_range is null.
668         (WebCore::SimplifiedBackwardsTextIterator::atEnd):
669         * editing/visible_units.cpp:
670         (WebCore::previousBoundary): Cleaned up by using a convenience function.
671         (WebCore::nextBoundary): Ditto.
672
673 2006-10-24  Anders Carlsson  <acarlsson@apple.com>
674
675         Reviewed by Maciej.
676
677         * platform/network/mac/ResourceLoaderMac.mm:
678         (WebCore::ResourceLoader::start):
679         Don't retain the header dictionary.
680
681 2006-10-24  Geoffrey Garen  <ggaren@apple.com>
682
683         Reviewed by Anders.
684
685         Fixed http://bugs.webkit.org/show_bug.cgi?id=11404
686         REGRESSION: Reproducible assertion failure in Shared<WebCore::StringImpl>::ref() 
687         running svg/custom/svg/custom/gradient-attr-update.svg
688         
689         SVGRenderStyle wasn't ref-ing the shared objects it held onto. Oops.
690
691         * ksvg2/css/SVGRenderStyle.h:
692         * ksvg2/css/SVGRenderStyleDefs.h:
693
694 2006-10-24  Anders Carlsson  <acarlsson@apple.com>
695
696         Reviewed by Mitz.
697
698         * platform/network/ResourceRequest.h:
699         (WebCore::ResourceRequest::ResourceRequest):
700         Set the http method to "GET" in the constructor that takes a String.
701
702 2006-10-24  Sam Weinig  <sam.weinig@gmail.com>
703
704         Reviewed by Tim H.
705
706         Move kcanvas/Render* and kcanvas/SVG* to rendering/Render*
707         and rendering/SVG* respectively.  Fix Xcode project and
708         CMakeLists.txt to account for the moves.
709
710         * CMakeLists.txt:
711         * WebCore.xcodeproj/project.pbxproj:
712         * kcanvas/RenderForeignObject.cpp: Removed.
713         * kcanvas/RenderForeignObject.h: Removed.
714         * kcanvas/RenderPath.cpp: Removed.
715         * kcanvas/RenderPath.h: Removed.
716         * kcanvas/RenderSVGContainer.cpp: Removed.
717         * kcanvas/RenderSVGContainer.h: Removed.
718         * kcanvas/RenderSVGImage.cpp: Removed.
719         * kcanvas/RenderSVGImage.h: Removed.
720         * kcanvas/RenderSVGInline.cpp: Removed.
721         * kcanvas/RenderSVGInline.h: Removed.
722         * kcanvas/RenderSVGInlineText.cpp: Removed.
723         * kcanvas/RenderSVGInlineText.h: Removed.
724         * kcanvas/RenderSVGTSpan.cpp: Removed.
725         * kcanvas/RenderSVGTSpan.h: Removed.
726         * kcanvas/RenderSVGText.cpp: Removed.
727         * kcanvas/RenderSVGText.h: Removed.
728         * kcanvas/SVGInlineFlowBox.cpp: Removed.
729         * kcanvas/SVGInlineFlowBox.h: Removed.
730         * kcanvas/SVGRootInlineBox.cpp: Removed.
731         * kcanvas/SVGRootInlineBox.h: Removed.
732
733 2006-10-24  Geoffrey Garen  <ggaren@apple.com>
734
735         Rolling back in, now fixed:
736         
737         Nixed a few more redundant loading functions in Frame. Did my best to update
738         the non-Mac builds.
739
740         * bridge/mac/FrameMac.h:
741         * bridge/mac/FrameMac.mm:
742         (WebCore::FrameMac::urlSelected): Kept always 'true' argument for userGesture
743         always 'true', because changing it broke the world, and testing seems to
744         indicate that the one caller that might have passed 'false' didn't need to.
745         * page/Frame.cpp:
746         (WebCore::Frame::requestFrame):
747         (WebCore::Frame::frameLoader):
748         (WebCore::Frame::redirectionTimerFired):
749         * page/Frame.h:
750         * platform/gdk/FrameGdk.cpp:
751         * platform/gdk/FrameGdk.h:
752         * platform/gdk/TemporaryLinkStubs.cpp:
753         (FrameGdk::issueCopyCommand):
754         * platform/qt/FrameQt.cpp:
755         * platform/qt/FrameQt.h:
756         * platform/win/TemporaryLinkStubs.cpp:
757         (WebCore::FrameWin::shouldInterruptJavaScript):
758         (WebCore::FrameWin::issueCopyCommand):
759
760 2006-10-24  Anders Carlsson  <acarlsson@apple.com>
761
762         Fix the build (Update for changes to ResourceLoader)
763         
764         * platform/network/cf/ResourceLoaderCFNet.cpp:
765         (WebCore::addHeadersFromHashMap):
766         (WebCore::ResourceLoader::start):
767         (WebCore::ResourceLoader::cancel):
768
769 2006-10-24  Sam Weinig  <sam.weinig@gmail.com>
770
771         Reviewed by Mitz.
772
773         Change #includes using <kcanvas/*.h> to use "*.h" instead
774         to prepare for moving the kcanvas files.
775
776         * kcanvas/RenderSVGContainer.h:
777         * ksvg2/svg/SVGAElement.cpp:
778         * ksvg2/svg/SVGFEDiffuseLightingElement.cpp:
779         * ksvg2/svg/SVGFETileElement.cpp:
780         * ksvg2/svg/SVGStyledLocatableElement.cpp:
781         * ksvg2/svg/SVGStyledTransformableElement.cpp:
782
783 2006-10-24  Maciej Stachowiak  <mjs@apple.com>
784
785         Reviewed by Darin.
786
787         - More movement towards the final network API.
788         
789         Changed ResourceLoader::create to take a ResurceRequest and start
790         the load. Removed methods relating to setting request
791         headers. Removed methods relating to metaData. Added some more
792         convenience methods to ResourceRequest.
793
794         * dom/XMLTokenizer.cpp:
795         (WebCore::openFunc):
796         * loader/LoaderFunctions.h:
797         * loader/icon/IconLoader.cpp:
798         (IconLoader::startLoading):
799         (IconLoader::didFinishLoading):
800         * loader/icon/IconLoader.h:
801         * loader/loader.cpp:
802         (WebCore::Loader::servePendingRequests):
803         * loader/mac/LoaderFunctionsMac.mm:
804         (WebCore::ServeSynchronousRequest):
805         * platform/gdk/FrameGdk.cpp:
806         (WebCore::FrameGdkClientDefault::openURL):
807         (WebCore::FrameGdkClientDefault::submitForm):
808         * platform/network/ResourceLoader.cpp:
809         (WebCore::ResourceLoader::ResourceLoader):
810         (WebCore::ResourceLoader::create):
811         (WebCore::ResourceLoader::responseHTTPHeadersAsString):
812         (WebCore::ResourceLoader::url):
813         (WebCore::ResourceLoader::postData):
814         (WebCore::ResourceLoader::method):
815         (WebCore::ResourceLoader::client):
816         * platform/network/ResourceLoader.h:
817         * platform/network/ResourceLoaderInternal.h:
818         (WebCore::ResourceLoaderInternal::ResourceLoaderInternal):
819         * platform/network/ResourceRequest.h:
820         (WebCore::ResourceRequest::ResourceRequest):
821         (WebCore::ResourceRequest::httpAccept):
822         (WebCore::ResourceRequest::setHTTPAccept):
823         (WebCore::ResourceRequest::addHTTPHeaderFields):
824         * platform/network/mac/ResourceLoaderMac.mm:
825         (WebCore::ResourceLoader::start):
826         (WebCore::ResourceLoader::receivedResponse):
827         * platform/qt/FrameQtClient.cpp:
828         (WebCore::FrameQtClientDefault::openURL):
829         (WebCore::FrameQtClientDefault::submitForm):
830         * platform/win/TemporaryLinkStubs.cpp:
831         (WebCore::ResourceLoader::retrieveResponseEncoding):
832         * xml/XSLTProcessor.cpp:
833         (WebCore::docLoaderFunc):
834         * xml/xmlhttprequest.cpp:
835         (WebCore::XMLHttpRequest::send):
836         (WebCore::XMLHttpRequest::didFinishLoading):
837         (WebCore::XMLHttpRequest::didReceiveData):
838         * xml/xmlhttprequest.h:
839
840 2006-10-24  Anders Carlsson  <acarlsson@apple.com>
841
842         Reviewed by Geoff.
843
844         * loader/FormData.cpp:
845         (WebCore::FormData::FormData):
846         * loader/FormData.h:
847         (WebCore::FormData::FormData):
848         Add new constructor that takes a void* and a size.
849
850 2006-10-24  Geoffrey Garen  <ggaren@apple.com>
851
852         Rolling out my last change because it broke the world.
853
854         * bridge/mac/FrameMac.h:
855         * bridge/mac/FrameMac.mm:
856         (WebCore::FrameMac::openURL):
857         (WebCore::FrameMac::openURLRequest):
858         (WebCore::FrameMac::urlSelected):
859         * page/Frame.cpp:
860         (WebCore::Frame::openURL):
861         (WebCore::Frame::frameLoader):
862         (WebCore::Frame::requestFrame):
863         (WebCore::Frame::redirectionTimerFired):
864         * page/Frame.h:
865         * platform/gdk/FrameGdk.cpp:
866         (WebCore::FrameGdk::openURL):
867         * platform/gdk/FrameGdk.h:
868         * platform/gdk/TemporaryLinkStubs.cpp:
869         * platform/qt/FrameQt.cpp:
870         (WebCore::FrameQt::openURL):
871         (WebCore::FrameQt::openURLRequest):
872         * platform/qt/FrameQt.h:
873         * platform/win/TemporaryLinkStubs.cpp:
874         (WebCore::FrameWin::openURL):
875         (WebCore::FrameWin::openURLRequest):
876
877 2006-10-24  Nikolas Zimmermann  <zimmermann@kde.org>
878
879         Reviewed by Adam.
880
881         Fixes: http://bugs.webkit.org/show_bug.cgi?id=11396
882
883         Kill KRenderingFillPainter/KRenderingStrokePainter. Those are not needed
884         anymore, since kcanvas/ksvg2 are tightly integrated. No LayoutTests fixed
885         or broken.
886
887         * CMakeLists.txt:
888         * WebCore.xcodeproj/project.pbxproj:
889         * kcanvas/KCanvasTreeDebug.cpp:
890         (WebCore::operator<<):
891         (WebCore::writeStyle):
892         * kcanvas/RenderPath.cpp:
893         (WebCore::RenderPath::fillContains):
894         * kcanvas/device/KRenderingFillPainter.cpp:
895         * kcanvas/device/KRenderingFillPainter.h:
896         * kcanvas/device/KRenderingStrokePainter.cpp:
897         * kcanvas/device/KRenderingStrokePainter.h:
898         * kcanvas/device/qt/KRenderingPaintServerGradientQt.cpp:
899         (WebCore::KRenderingPaintServerLinearGradientQt::setup):
900         (WebCore::KRenderingPaintServerRadialGradientQt::setup):
901         * kcanvas/device/qt/KRenderingPaintServerPatternQt.cpp:
902         * kcanvas/device/qt/KRenderingPaintServerQt.cpp:
903         (WebCore::KRenderingPaintServerQt::setPenProperties):
904         * kcanvas/device/qt/KRenderingPaintServerQt.h:
905         * kcanvas/device/qt/KRenderingPaintServerSolidQt.cpp:
906         (WebCore::KRenderingPaintServerSolidQt::setup):
907         * kcanvas/device/qt/RenderPathQt.cpp:
908         (WebCore::getPathStroke):
909         (WebCore::RenderPath::strokeBBox):
910         * kcanvas/device/quartz/KCanvasItemQuartz.mm:
911         (WebCore::RenderPath::strokeBBox):
912         * kcanvas/device/quartz/KRenderingDeviceQuartz.mm:
913         * kcanvas/device/quartz/KRenderingPaintServerGradientQuartz.mm:
914         * kcanvas/device/quartz/KRenderingPaintServerQuartz.mm:
915         (WebCore::KRenderingPaintServerQuartzHelper::fillPath):
916         (WebCore::KRenderingPaintServerQuartzHelper::clipToFillPath):
917         * kcanvas/device/quartz/QuartzSupport.h:
918         (WebCore::CGLineCapFromKC):
919         (WebCore::CGLineJoinFromKC):
920         * kcanvas/device/quartz/QuartzSupport.mm:
921         (WebCore::applyStrokeStyleToContext):
922         (WebCore::strokeBoundingBox):
923         * ksvg2/css/SVGCSSStyleSelector.cpp:
924         (WebCore::CSSStyleSelector::applySVGProperty):
925         * ksvg2/css/SVGRenderStyle.h:
926         (WebCore::SVGRenderStyle::InheritedFlags::):
927         * ksvg2/css/SVGRenderStyleDefs.h:
928         * ksvg2/misc/KCanvasRenderingStyle.cpp:
929         (WebCore::KSVGPainterFactory::dashArrayFromRenderingStyle):
930         * ksvg2/misc/KCanvasRenderingStyle.h:
931         * ksvg2/svg/SVGFEImageElement.cpp:
932
933 2006-10-24  Geoffrey Garen  <ggaren@apple.com>
934
935         Reviewed by Anders.
936
937         Nixed a few more redundant loading functions in Frame. Did my best to update
938         the non-Mac builds.
939
940         * bridge/mac/FrameMac.h:
941         * bridge/mac/FrameMac.mm:
942         (WebCore::FrameMac::urlSelected): Changed always 'true' argument for userGesture
943         to actually check for a user gesture. New callers rely on this behavior,
944         and it seems like the previous behavior must have been a bug.
945         * page/Frame.cpp:
946         (WebCore::Frame::requestFrame):
947         (WebCore::Frame::frameLoader):
948         (WebCore::Frame::redirectionTimerFired):
949         * page/Frame.h:
950         * platform/gdk/FrameGdk.cpp:
951         * platform/gdk/FrameGdk.h:
952         * platform/gdk/TemporaryLinkStubs.cpp:
953         (FrameGdk::issueCopyCommand):
954         * platform/qt/FrameQt.cpp:
955         * platform/qt/FrameQt.h:
956         * platform/win/TemporaryLinkStubs.cpp:
957         (WebCore::FrameWin::shouldInterruptJavaScript):
958         (WebCore::FrameWin::issueCopyCommand):
959
960 2006-10-24  Nikolas Zimmermann  <zimmermann@kde.org>
961
962         Reviewed by Maciej.
963
964         Fix Qt/Linux build.
965
966         - Remove BrowserExtensionQt, move it's methods to Page/FrameQt.
967         - Fix CMakeLists.txt to include platform/network.
968
969         * CMakeLists.txt:
970         * platform/qt/BrowserExtensionQt.cpp: Removed.
971         * platform/qt/BrowserExtensionQt.h: Removed.
972         * platform/qt/FrameQt.cpp:
973         (WebCore::FrameQt::FrameQt):
974         (WebCore::FrameQt::createNewWindow):
975         (WebCore::FrameQt::goBackOrForward):
976         (WebCore::FrameQt::historyURL):
977         (WebCore::FrameQt::getHistoryLength):
978         * platform/qt/FrameQt.h:
979         * platform/qt/PageQt.cpp:
980         (WebCore::Page::canRunModal):
981         (WebCore::Page::canRunModalNow):
982         (WebCore::Page::runModal):
983
984 2006-10-24  Krzysztof Kowalczyk  <kkowalczyk@gmail.com>
985
986         Reviewed by Tim H.
987
988         Fix for http://bugs.webkit.org/show_bug.cgi?id=11314
989         Fix build when XSLT_SUPPORT is not defined
990
991         Fix unconditional use of XSLT support.
992
993         * dom/XMLTokenizer.cpp:
994         (WebCore::XMLTokenizer::end):
995
996 2006-10-24  Simon Hausmann  <hausmann@kde.org>
997
998         Reviewed by Darin.
999
1000         * CMakeLists.txt: Added project name to kde4_automoc macro, as
1001           required by the latest KDE4 cmake module.
1002
1003 2006-10-24  Mitz Pettel  <mitz@webkit.org>
1004
1005         Reviewed by Tim H.
1006
1007         - fix http://bugs.webkit.org/show_bug.cgi?id=11394
1008           HTMLViewSourceDocuments are leaking
1009
1010         * html/HTMLViewSourceDocument.h: Changed RefPtr to plain pointer to avoid
1011         ref cycle.
1012
1013 2006-10-23  Geoffrey Garen  <ggaren@apple.com>
1014
1015         Reviewed by Darin.
1016
1017         Removed one of Frame's redundant urlSelected methods.
1018
1019         * bridge/mac/FrameMac.h:
1020         * bridge/mac/FrameMac.mm:
1021         (WebCore::FrameMac::urlSelected):
1022         since it's unused.
1023         * html/HTMLAnchorElement.cpp:
1024         (WebCore::HTMLAnchorElement::defaultEventHandler): Changed DeprecatedString
1025         to String because the former is deprecated and its performance is irrelevant
1026         here. Added call to completeURL because Frame no longer does it for us.
1027         Having the call here also improves clarity about the element's behavior.
1028         * ksvg2/svg/SVGAElement.cpp:
1029         (WebCore::SVGAElement::defaultEventHandler): ditto. Also removed bizarre
1030         irrelevent NULL checks on ownerDocument() because I couldn't help myself.
1031         * page/Frame.cpp:
1032         (WebCore::Frame::changeLocation):
1033         (WebCore::Frame::urlSelected):
1034         * page/Frame.h:
1035         * platform/network/ResourceRequest.h: Removed explicit keyword on constructor
1036         because we want to be able to use these constructors instead of helper functions
1037         mimicking their behavior sprinkled across different classes.
1038         (WebCore::ResourceRequest::ResourceRequest):
1039
1040 2006-10-24  Brady Eidson  <beidson@apple.com>
1041
1042         Reviewed by Maciej
1043
1044         Moved FrameLoader from WebCoreFrameBridge to Frame.  Frame.h/cpp have generic accessors to the FrameLoader itself
1045         and creation/deletion is currently managed in FrameMac.mm
1046
1047         Besides explicitly commented-upon methods, most of the touched code simply changes to get the FrameLoader from the 
1048         frame instead of the bridge.
1049
1050         The method [WebCoreFrameBridge frameLoader] remains but only for WebKit's use - No new WebCore code should make 
1051         use of it as its days are numbered!
1052
1053         * bridge/mac/FrameMac.mm:
1054         (WebCore::FrameMac::FrameMac): Create the FrameLoader
1055         (WebCore::FrameMac::~FrameMac): Nuke it
1056         (WebCore::FrameMac::loadRequest):
1057
1058         * bridge/mac/WebCoreFrameBridge.h: No longer holds an m_frameLoader
1059         * bridge/mac/WebCoreFrameBridge.mm:
1060         (-[WebCoreFrameBridge initMainFrameWithPage:withEditorClient:]): No longer creates the FrameLoader
1061         (-[WebCoreFrameBridge initSubframeWithOwnerElement:withEditorClient:]): Ditto
1062         (-[WebCoreFrameBridge clearFrame]): No longer tears down the FrameLoader
1063         (-[WebCoreFrameBridge setFrameLoaderClient:]):
1064         (-[WebCoreFrameBridge frameLoader]):
1065         (-[WebCoreFrameBridge setTitle:]):
1066         (-[WebCoreFrameBridge didFirstLayout]):
1067         (-[WebCoreFrameBridge notifyIconChanged:]):
1068         (-[WebCoreFrameBridge originalRequestURL]):
1069         (-[WebCoreFrameBridge isLoadTypeReload]):
1070         (-[WebCoreFrameBridge frameDetached]):
1071         (-[WebCoreFrameBridge tokenizerProcessedData]):
1072         (-[WebCoreFrameBridge receivedData:textEncodingName:]):
1073         (-[WebCoreFrameBridge objectLoadedFromCacheWithURL:response:data:]):
1074         (-[WebCoreFrameBridge reportClientRedirectToURL:delay:fireDate:lockHistory:isJavaScriptFormAction:]):
1075         (-[WebCoreFrameBridge reportClientRedirectCancelled:]):
1076         (-[WebCoreFrameBridge syncLoadResourceWithMethod:URL:customHeaders:postData:finalURL:responseHeaders:statusCode:]):
1077         (-[WebCoreFrameBridge incomingReferrer]):
1078         (-[WebCoreFrameBridge isReloading]):
1079         (-[WebCoreFrameBridge handledOnloadEvents]):
1080         (-[WebCoreFrameBridge mainResourceURLResponse]):
1081         (-[WebCoreFrameBridge loadEmptyDocumentSynchronously]):
1082
1083         * loader/mac/WebDocumentLoader.mm:
1084         (WebCore::DocumentLoader::frameLoader):
1085
1086         * loader/mac/WebFrameLoader.mm:
1087         (WebCore::FrameLoader::load):
1088         (WebCore::FrameLoader::stopLoadingSubframes):
1089         (WebCore::FrameLoader::defersCallbacksChanged):
1090         (WebCore::FrameLoader::setState):
1091         (WebCore::FrameLoader::closeOldDataSources):
1092         (WebCore::FrameLoader::subframeIsLoading):
1093         (WebCore::FrameLoader::continueLoadRequestAfterNewWindowPolicy):
1094         (WebCore::FrameLoader::post):
1095         (WebCore::FrameLoader::detachChildren):
1096         (WebCore::FrameLoader::checkLoadComplete):
1097
1098         * loader/mac/WebLoader.mm:
1099         (WebCore::WebResourceLoader::frameLoader):
1100
1101         * loader/mac/WebSubresourceLoader.mm:
1102         (-[WebCoreSubresourceHandle initWithLoader:]):
1103
1104         * page/Frame.cpp:
1105         (WebCore::Frame::frameLoader):
1106         * page/Frame.h:
1107         * page/FramePrivate.h:
1108         (WebCore::FramePrivate::FramePrivate):
1109
1110 2006-10-24  Darin Adler  <darin@apple.com>
1111
1112         Reviewed by Maciej.
1113
1114         - fixed two crashes in layout tests I just introduced
1115
1116         * loader/mac/WebFrameLoader.mm:
1117         (WebCore::FrameLoader::load): Add null check.
1118         (WebCore::FrameLoader::setState): Ditto.
1119
1120 2006-10-23  Darin Adler  <darin@apple.com>
1121
1122         Reviewed by Geoff.
1123
1124         - converted WebDocumentLoader to C++
1125
1126         * WebCore.exp:
1127         * bridge/mac/WebCoreFrameBridge.mm:
1128         (-[WebCoreFrameBridge setTitle:]):
1129         (-[WebCoreFrameBridge originalRequestURL]):
1130         (-[WebCoreFrameBridge receivedData:textEncodingName:]):
1131         (-[WebCoreFrameBridge syncLoadResourceWithMethod:URL:customHeaders:postData:finalURL:responseHeaders:statusCode:]):
1132         (-[WebCoreFrameBridge incomingReferrer]):
1133         (-[WebCoreFrameBridge isReloading]):
1134         (-[WebCoreFrameBridge mainResourceURLResponse]):
1135         * loader/mac/WebDocumentLoader.h:
1136         * loader/mac/WebDocumentLoader.mm:
1137         (WebCore::DocumentLoader::DocumentLoader):
1138         (WebCore::DocumentLoader::frameLoader):
1139         (WebCore::DocumentLoader::~DocumentLoader):
1140         (WebCore::DocumentLoader::setMainResourceData):
1141         (WebCore::DocumentLoader::mainResourceData):
1142         (WebCore::DocumentLoader::originalRequest):
1143         (WebCore::DocumentLoader::originalRequestCopy):
1144         (WebCore::DocumentLoader::request):
1145         (WebCore::DocumentLoader::initialRequest):
1146         (WebCore::DocumentLoader::actualRequest):
1147         (WebCore::DocumentLoader::URL):
1148         (WebCore::DocumentLoader::unreachableURL):
1149         (WebCore::DocumentLoader::replaceRequestURLForAnchorScroll):
1150         (WebCore::DocumentLoader::setRequest):
1151         (WebCore::DocumentLoader::setResponse):
1152         (WebCore::DocumentLoader::isStopping):
1153         (WebCore::DocumentLoader::bridge):
1154         (WebCore::DocumentLoader::setMainDocumentError):
1155         (WebCore::DocumentLoader::mainDocumentError):
1156         (WebCore::DocumentLoader::clearErrors):
1157         (WebCore::DocumentLoader::mainReceivedError):
1158         (WebCore::DocumentLoader::stopLoading):
1159         (WebCore::DocumentLoader::setupForReplace):
1160         (WebCore::DocumentLoader::commitIfReady):
1161         (WebCore::DocumentLoader::finishedLoading):
1162         (WebCore::DocumentLoader::setCommitted):
1163         (WebCore::DocumentLoader::isCommitted):
1164         (WebCore::DocumentLoader::setLoading):
1165         (WebCore::DocumentLoader::isLoading):
1166         (WebCore::DocumentLoader::commitLoad):
1167         (WebCore::DocumentLoader::doesProgressiveLoad):
1168         (WebCore::DocumentLoader::receivedData):
1169         (WebCore::DocumentLoader::setupForReplaceByMIMEType):
1170         (WebCore::DocumentLoader::updateLoading):
1171         (WebCore::DocumentLoader::response):
1172         (WebCore::DocumentLoader::setFrame):
1173         (WebCore::DocumentLoader::attachToFrame):
1174         (WebCore::DocumentLoader::detachFromFrame):
1175         (WebCore::DocumentLoader::prepareForLoadStart):
1176         (WebCore::DocumentLoader::loadingStartedTime):
1177         (WebCore::DocumentLoader::setIsClientRedirect):
1178         (WebCore::DocumentLoader::isClientRedirect):
1179         (WebCore::DocumentLoader::setPrimaryLoadComplete):
1180         (WebCore::DocumentLoader::isLoadingInAPISense):
1181         (WebCore::DocumentLoader::addResponse):
1182         (WebCore::DocumentLoader::stopRecordingResponses):
1183         (WebCore::DocumentLoader::title):
1184         (WebCore::DocumentLoader::setLastCheckedRequest):
1185         (WebCore::DocumentLoader::lastCheckedRequest):
1186         (WebCore::DocumentLoader::triggeringAction):
1187         (WebCore::DocumentLoader::setTriggeringAction):
1188         (WebCore::DocumentLoader::responses):
1189         (WebCore::DocumentLoader::setOverrideEncoding):
1190         (WebCore::DocumentLoader::overrideEncoding):
1191         (WebCore::DocumentLoader::setTitle):
1192         (WebCore::DocumentLoader::URLForHistory):
1193         * loader/mac/WebFrameLoader.h:
1194         * loader/mac/WebFrameLoader.mm:
1195         (WebCore::FrameLoader::setupForReplaceByMIMEType):
1196         (WebCore::FrameLoader::finalSetupForReplace):
1197         (WebCore::FrameLoader::safeLoad):
1198         (WebCore::FrameLoader::load):
1199         (WebCore::FrameLoader::startLoading):
1200         (WebCore::FrameLoader::stopLoading):
1201         (WebCore::FrameLoader::activeDocumentLoader):
1202         (WebCore::FrameLoader::addPlugInStreamLoader):
1203         (WebCore::FrameLoader::removePlugInStreamLoader):
1204         (WebCore::FrameLoader::addSubresourceLoader):
1205         (WebCore::FrameLoader::removeSubresourceLoader):
1206         (WebCore::FrameLoader::setDocumentLoader):
1207         (WebCore::FrameLoader::documentLoader):
1208         (WebCore::FrameLoader::setPolicyDocumentLoader):
1209         (WebCore::FrameLoader::provisionalDocumentLoader):
1210         (WebCore::FrameLoader::setProvisionalDocumentLoader):
1211         (WebCore::FrameLoader::setState):
1212         (WebCore::FrameLoader::clearProvisionalLoad):
1213         (WebCore::FrameLoader::commitProvisionalLoad):
1214         (WebCore::FrameLoader::didReceiveResponse):
1215         (WebCore::FrameLoader::originalRequest):
1216         (WebCore::FrameLoader::receivedMainResourceError):
1217         (WebCore::FrameLoader::continueFragmentScrollAfterNavigationPolicy):
1218         (WebCore::FrameLoader::opened):
1219         (WebCore::FrameLoader::initialRequest):
1220         (WebCore::FrameLoader::receivedData):
1221         (WebCore::FrameLoader::setRequest):
1222         (WebCore::FrameLoader::isStopping):
1223         (WebCore::FrameLoader::setResponse):
1224         (WebCore::FrameLoader::mainReceivedError):
1225         (WebCore::FrameLoader::finishedLoading):
1226         (WebCore::FrameLoader::notifyIconChanged):
1227         (WebCore::FrameLoader::URL):
1228         (WebCore::FrameLoader::checkContentPolicy):
1229         (WebCore::FrameLoader::shouldReloadToHandleUnreachableURL):
1230         (WebCore::FrameLoader::reloadAllowingStaleData):
1231         (WebCore::FrameLoader::reload):
1232         (WebCore::FrameLoader::finishedLoadingDocument):
1233         (WebCore::FrameLoader::committedLoad):
1234         (WebCore::FrameLoader::revertToProvisional):
1235         (WebCore::FrameLoader::setMainDocumentError):
1236         (WebCore::FrameLoader::mainReceivedCompleteError):
1237         (WebCore::FrameLoader::subframeIsLoading):
1238         (WebCore::FrameLoader::willChangeTitle):
1239         (WebCore::FrameLoader::didChangeTitle):
1240         (WebCore::FrameLoader::checkNavigationPolicy):
1241         (WebCore::FrameLoader::continueLoadRequestAfterNavigationPolicy):
1242         (WebCore::FrameLoader::transitionToCommitted):
1243         (WebCore::FrameLoader::checkLoadCompleteForThisFrame):
1244         (WebCore::FrameLoader::detachFromParent):
1245         * loader/mac/WebFrameLoaderClient.h:
1246
1247 2006-10-23  Brady Eidson  <beidson@apple.com>
1248
1249         Lovingly reviewed by Maciej
1250
1251         Moved loadURL and postURL logic out of WebCoreFrameBridge to FrameMac::loadRequest
1252         This is a big step towards moving FrameLoader out of the Bridge into Frame/Mac itself
1253
1254         * bridge/mac/BrowserExtensionMac.mm:
1255         (WebCore::BrowserExtensionMac::createNewWindow): Use FrameMac::loadRequest
1256
1257         * bridge/mac/FrameMac.mm:
1258         (WebCore::FrameMac::loadRequest): loadURL and postURL logic moved from WebCoreFrameBridge to here
1259
1260         * bridge/mac/WebCoreFrameBridge.h: Nuked loadURL and postURL
1261         * bridge/mac/WebCoreFrameBridge.mm: Ditto
1262         * loader/mac/WebFrameLoader.mm:
1263         (-[WebFrameLoader safeLoadURL:]): Use FrameMac::loadRequest
1264
1265 2006-10-23  Geoffrey Garen  <ggaren@apple.com>
1266
1267         RS by Maciej.
1268
1269         Inside Frame, moved the plethora of load() and stopLoading() functions next 
1270         to each other to facilitate merging and crying.
1271
1272         * bridge/mac/FrameMac.h:
1273         * bridge/mac/FrameMac.mm:
1274         (WebCore::FrameMac::loadRequest):
1275         (WebCore::FrameMac::submitForm):
1276         (WebCore::FrameMac::openURL):
1277         (WebCore::FrameMac::openURLRequest):
1278         (WebCore::FrameMac::urlSelected):
1279         (WebCore::FrameMac::openURLFromPageCache):
1280         (WebCore::FrameMac::createFrame):
1281         * page/Frame.cpp:
1282         (WebCore::Frame::openURL):
1283         (WebCore::Frame::changeLocation):
1284         (WebCore::Frame::urlSelected):
1285         (WebCore::Frame::requestFrame):
1286         (WebCore::Frame::loadSubframe):
1287         (WebCore::Frame::submitFormAgain):
1288         (WebCore::Frame::submitForm):
1289         (WebCore::Frame::stop):
1290         (WebCore::Frame::closeURL):
1291         (WebCore::Frame::cancelRedirection):
1292         (WebCore::Frame::iconURL):
1293         (WebCore::Frame::didOpenURL):
1294         (WebCore::Frame::didExplicitOpen):
1295         * page/Frame.h:
1296
1297 2006-10-23  Geoffrey Garen  <ggaren@apple.com>
1298
1299         RS by Maciej.
1300
1301         Moved our plethora of load() and stopLoading() functions next to each other
1302         to facilitate merging and laughter.
1303
1304         * loader/mac/WebFrameLoader.h:
1305         * loader/mac/WebFrameLoader.mm:
1306         (WebCore::cancelAll):
1307         (WebCore::FrameLoader::prepareForLoadStart):
1308         (WebCore::FrameLoader::setupForReplace):
1309         (WebCore::FrameLoader::setupForReplaceByMIMEType):
1310         (WebCore::FrameLoader::finalSetupForReplace):
1311         (WebCore::FrameLoader::safeLoad):
1312         (WebCore::FrameLoader::load):
1313         (WebCore::FrameLoader::startLoadingMainResource):
1314         (WebCore::FrameLoader::startLoading):
1315         (WebCore::FrameLoader::stopLoadingPlugIns):
1316         (WebCore::FrameLoader::stopLoadingSubresources):
1317         (WebCore::FrameLoader::stopLoading):
1318         (WebCore::FrameLoader::stopLoadingSubframes):
1319         (WebCore::FrameLoader::cancelMainResourceLoad):
1320         (WebCore::FrameLoader::cancelPendingArchiveLoad):
1321         (WebCore::FrameLoader::removeSubresourceLoader):
1322         (WebCore::FrameLoader::mainResourceData):
1323         (WebCore::FrameLoader::releaseMainResourceLoader):
1324
1325 2006-10-23  Darin Adler  <darin@apple.com>
1326
1327         Reviewed by Maciej.
1328
1329         - converted WebFrameLoader to C++
1330
1331         * WebCore.exp: Added many new entry points for WebKit.
1332         * WebCore.xcodeproj/project.pbxproj: Made more files private (SPI).
1333
1334         * bridge/mac/WebCoreFrameBridge.h:
1335         * bridge/mac/WebCoreFrameBridge.mm:
1336         (-[WebCoreFrameBridge initMainFrameWithPage:withEditorClient:]):
1337         (-[WebCoreFrameBridge initSubframeWithOwnerElement:withEditorClient:]):
1338         (-[WebCoreFrameBridge dealloc]):
1339         (-[WebCoreFrameBridge close]):
1340         (-[WebCoreFrameBridge clearFrame]):
1341         (-[WebCoreFrameBridge setFrameLoaderClient:]):
1342         (-[WebCoreFrameBridge frameLoader]):
1343         (-[WebCoreFrameBridge setTitle:]):
1344         (-[WebCoreFrameBridge didFirstLayout]):
1345         (-[WebCoreFrameBridge notifyIconChanged:]):
1346         (-[WebCoreFrameBridge originalRequestURL]):
1347         (-[WebCoreFrameBridge isLoadTypeReload]):
1348         (-[WebCoreFrameBridge frameDetached]):
1349         (-[WebCoreFrameBridge tokenizerProcessedData]):
1350         (-[WebCoreFrameBridge receivedData:textEncodingName:]):
1351         (-[WebCoreFrameBridge startLoadingResource:withMethod:URL:customHeaders:]):
1352         (-[WebCoreFrameBridge objectLoadedFromCacheWithURL:response:data:]):
1353         (-[WebCoreFrameBridge startLoadingResource:withMethod:URL:customHeaders:postData:]):
1354         (-[WebCoreFrameBridge reportClientRedirectToURL:delay:fireDate:lockHistory:isJavaScriptFormAction:]):
1355         (-[WebCoreFrameBridge reportClientRedirectCancelled:]):
1356         (-[WebCoreFrameBridge loadURL:referrer:reload:userGesture:target:triggeringEvent:form:formValues:]):
1357         (-[WebCoreFrameBridge postWithURL:referrer:target:data:contentType:triggeringEvent:form:formValues:]):
1358         (-[WebCoreFrameBridge syncLoadResourceWithMethod:URL:customHeaders:postData:finalURL:responseHeaders:statusCode:]):
1359         (-[WebCoreFrameBridge incomingReferrer]):
1360         (-[WebCoreFrameBridge isReloading]):
1361         (-[WebCoreFrameBridge handledOnloadEvents]):
1362         (-[WebCoreFrameBridge mainResourceURLResponse]):
1363         (-[WebCoreFrameBridge loadEmptyDocumentSynchronously]):
1364         * loader/mac/WebDocumentLoader.h:
1365         * loader/mac/WebDocumentLoader.mm:
1366         (-[WebDocumentLoader frameLoader]):
1367         (-[WebDocumentLoader dealloc]):
1368         (-[WebDocumentLoader mainResourceData]):
1369         (-[WebDocumentLoader setRequest:]):
1370         (-[WebDocumentLoader bridge]):
1371         (-[WebDocumentLoader setMainDocumentError:]):
1372         (-[WebDocumentLoader mainReceivedError:complete:]):
1373         (-[WebDocumentLoader stopLoading]):
1374         (-[WebDocumentLoader setupForReplace]):
1375         (-[WebDocumentLoader commitIfReady]):
1376         (-[WebDocumentLoader finishedLoading]):
1377         (-[WebDocumentLoader commitLoadWithData:]):
1378         (-[WebDocumentLoader doesProgressiveLoadWithMIMEType:]):
1379         (-[WebDocumentLoader setupForReplaceByMIMEType:]):
1380         (-[WebDocumentLoader updateLoading]):
1381         (-[WebDocumentLoader setFrame:]):
1382         (-[WebDocumentLoader attachToFrame]):
1383         (-[WebDocumentLoader detachFromFrame]):
1384         (-[WebDocumentLoader prepareForLoadStart]):
1385         (-[WebDocumentLoader setPrimaryLoadComplete:]):
1386         (-[WebDocumentLoader isLoadingInAPISense]):
1387         (-[WebDocumentLoader setTitle:]):
1388         * loader/mac/WebFrameLoader.h:
1389         (WebCore::FrameLoader::frame):
1390         * loader/mac/WebFrameLoader.mm:
1391         (WebCore::FrameLoader::FrameLoader):
1392         (WebCore::FrameLoader::~FrameLoader):
1393         (WebCore::FrameLoader::activeDocumentLoader):
1394         (WebCore::FrameLoader::addPlugInStreamLoader):
1395         (WebCore::FrameLoader::removePlugInStreamLoader):
1396         (WebCore::FrameLoader::defersCallbacksChanged):
1397         (WebCore::FrameLoader::defersCallbacks):
1398         (WebCore::setAllDefersCallbacks):
1399         (WebCore::FrameLoader::setDefersCallbacks):
1400         (WebCore::cancelAll):
1401         (WebCore::FrameLoader::stopLoadingPlugIns):
1402         (WebCore::FrameLoader::isLoadingMainResource):
1403         (WebCore::FrameLoader::isLoadingSubresources):
1404         (WebCore::FrameLoader::isLoadingPlugIns):
1405         (WebCore::FrameLoader::isLoading):
1406         (WebCore::FrameLoader::stopLoadingSubresources):
1407         (WebCore::FrameLoader::addSubresourceLoader):
1408         (WebCore::FrameLoader::removeSubresourceLoader):
1409         (WebCore::FrameLoader::mainResourceData):
1410         (WebCore::FrameLoader::releaseMainResourceLoader):
1411         (WebCore::FrameLoader::cancelMainResourceLoad):
1412         (WebCore::FrameLoader::startLoadingMainResource):
1413         (WebCore::FrameLoader::stopLoading):
1414         (WebCore::FrameLoader::setDocumentLoader):
1415         (WebCore::FrameLoader::documentLoader):
1416         (WebCore::FrameLoader::setPolicyDocumentLoader):
1417         (WebCore::FrameLoader::provisionalDocumentLoader):
1418         (WebCore::FrameLoader::setProvisionalDocumentLoader):
1419         (WebCore::FrameLoader::state):
1420         (WebCore::FrameLoader::timeOfLastCompletedLoad):
1421         (WebCore::FrameLoader::provisionalLoadStarted):
1422         (WebCore::FrameLoader::setState):
1423         (WebCore::FrameLoader::clearProvisionalLoad):
1424         (WebCore::FrameLoader::markLoadComplete):
1425         (WebCore::FrameLoader::commitProvisionalLoad):
1426         (WebCore::FrameLoader::stopLoadingSubframes):
1427         (WebCore::FrameLoader::startLoading):
1428         (WebCore::FrameLoader::setupForReplace):
1429         (WebCore::FrameLoader::identifierForInitialRequest):
1430         (WebCore::FrameLoader::willSendRequest):
1431         (WebCore::FrameLoader::didReceiveAuthenticationChallenge):
1432         (WebCore::FrameLoader::didCancelAuthenticationChallenge):
1433         (WebCore::FrameLoader::didReceiveResponse):
1434         (WebCore::FrameLoader::didReceiveData):
1435         (WebCore::FrameLoader::didFinishLoad):
1436         (WebCore::FrameLoader::didFailToLoad):
1437         (WebCore::FrameLoader::privateBrowsingEnabled):
1438         (WebCore::FrameLoader::originalRequest):
1439         (WebCore::FrameLoader::receivedMainResourceError):
1440         (WebCore::FrameLoader::clientRedirectCancelledOrFinished):
1441         (WebCore::FrameLoader::clientRedirected):
1442         (WebCore::FrameLoader::shouldReload):
1443         (WebCore::FrameLoader::load):
1444         (WebCore::FrameLoader::continueFragmentScrollAfterNavigationPolicy):
1445         (WebCore::FrameLoader::closeOldDataSources):
1446         (WebCore::FrameLoader::opened):
1447         (WebCore::FrameLoader::initialRequest):
1448         (WebCore::FrameLoader::receivedData):
1449         (WebCore::FrameLoader::setRequest):
1450         (WebCore::FrameLoader::download):
1451         (WebCore::FrameLoader::bridge):
1452         (WebCore::FrameLoader::handleFallbackContent):
1453         (WebCore::FrameLoader::isStopping):
1454         (WebCore::FrameLoader::setupForReplaceByMIMEType):
1455         (WebCore::FrameLoader::setResponse):
1456         (WebCore::FrameLoader::mainReceivedError):
1457         (WebCore::FrameLoader::finishedLoading):
1458         (WebCore::FrameLoader::notifyIconChanged):
1459         (WebCore::FrameLoader::URL):
1460         (WebCore::FrameLoader::cancelledError):
1461         (WebCore::FrameLoader::fileDoesNotExistError):
1462         (WebCore::FrameLoader::willUseArchive):
1463         (WebCore::FrameLoader::isArchiveLoadPending):
1464         (WebCore::FrameLoader::cancelPendingArchiveLoad):
1465         (WebCore::FrameLoader::handleUnimplementablePolicy):
1466         (WebCore::FrameLoader::cannotShowMIMEType):
1467         (WebCore::FrameLoader::interruptionForPolicyChangeError):
1468         (WebCore::FrameLoader::isHostedByObjectElement):
1469         (WebCore::FrameLoader::isLoadingMainFrame):
1470         (WebCore::FrameLoader::canShowMIMEType):
1471         (WebCore::FrameLoader::representationExistsForURLScheme):
1472         (WebCore::FrameLoader::generatedMIMETypeForURLScheme):
1473         (WebCore::FrameLoader::checkNavigationPolicy):
1474         (WebCore::FrameLoader::checkContentPolicy):
1475         (WebCore::FrameLoader::cancelContentPolicyCheck):
1476         (WebCore::FrameLoader::shouldReloadToHandleUnreachableURL):
1477         (WebCore::FrameLoader::reloadAllowingStaleData):
1478         (WebCore::FrameLoader::reload):
1479         (WebCore::FrameLoader::didReceiveServerRedirectForProvisionalLoadForFrame):
1480         (WebCore::FrameLoader::finishedLoadingDocument):
1481         (WebCore::FrameLoader::committedLoad):
1482         (WebCore::FrameLoader::isReplacing):
1483         (WebCore::FrameLoader::setReplacing):
1484         (WebCore::FrameLoader::revertToProvisional):
1485         (WebCore::FrameLoader::setMainDocumentError):
1486         (WebCore::FrameLoader::mainReceivedCompleteError):
1487         (WebCore::FrameLoader::finalSetupForReplace):
1488         (WebCore::FrameLoader::prepareForLoadStart):
1489         (WebCore::FrameLoader::subframeIsLoading):
1490         (WebCore::FrameLoader::willChangeTitle):
1491         (WebCore::FrameLoader::didChangeTitle):
1492         (WebCore::FrameLoader::loadType):
1493         (WebCore::FrameLoader::invalidatePendingPolicyDecision):
1494         (WebCore::FrameLoader::checkNewWindowPolicy):
1495         (WebCore::FrameLoader::continueAfterNewWindowPolicy):
1496         (WebCore::FrameLoader::continueAfterNavigationPolicy):
1497         (WebCore::FrameLoader::continueAfterWillSubmitForm):
1498         (WebCore::FrameLoader::continueLoadRequestAfterNavigationPolicy):
1499         (WebCore::FrameLoader::didFirstLayout):
1500         (WebCore::FrameLoader::frameLoadCompleted):
1501         (WebCore::FrameLoader::firstLayoutDone):
1502         (WebCore::FrameLoader::isQuickRedirectComing):
1503         (WebCore::FrameLoader::transitionToCommitted):
1504         (WebCore::FrameLoader::checkLoadCompleteForThisFrame):
1505         (WebCore::FrameLoader::continueLoadRequestAfterNewWindowPolicy):
1506         (WebCore::FrameLoader::sendRemainingDelegateMessages):
1507         (WebCore::FrameLoader::requestFromDelegate):
1508         (WebCore::FrameLoader::post):
1509         (WebCore::FrameLoader::detachChildren):
1510         (WebCore::FrameLoader::detachFromParent):
1511         (WebCore::FrameLoader::addExtraFieldsToRequest):
1512         (WebCore::FrameLoader::safeLoad):
1513         (WebCore::FrameLoader::actionInformation):
1514         (WebCore::FrameLoader::checkLoadComplete):
1515         (WebCore::FrameLoader::setFrameLoaderClient):
1516         (WebCore::FrameLoader::client):
1517         (WebCore::FrameLoader::asDelegate):
1518         (-[WebCoreFrameLoaderAsDelegate initWithLoader:]):
1519         (-[WebCoreFrameLoaderAsDelegate detachFromLoader]):
1520         (-[WebCoreFrameLoaderAsDelegate continueFragmentScrollAfterNavigationPolicy:formState:]):
1521         (-[WebCoreFrameLoaderAsDelegate continueAfterNewWindowPolicy:]):
1522         (-[WebCoreFrameLoaderAsDelegate continueAfterNavigationPolicy:]):
1523         (-[WebCoreFrameLoaderAsDelegate continueAfterWillSubmitForm:]):
1524         (-[WebCoreFrameLoaderAsDelegate continueLoadRequestAfterNavigationPolicy:formState:]):
1525         (-[WebCoreFrameLoaderAsDelegate continueLoadRequestAfterNewWindowPolicy:frameName:formState:]):
1526         * loader/mac/WebLoader.h:
1527         (WebCore::WebResourceLoader::identifier):
1528         (WebCore::WebResourceLoader::reachedTerminalState):
1529         (WebCore::WebResourceLoader::cancelled):
1530         * loader/mac/WebLoader.mm:
1531         (WebCore::WebResourceLoader::WebResourceLoader):
1532         (WebCore::WebResourceLoader::releaseResources):
1533         (WebCore::WebResourceLoader::load):
1534         (WebCore::WebResourceLoader::frameLoader):
1535         (WebCore::WebResourceLoader::willSendRequest):
1536         (WebCore::WebResourceLoader::didReceiveAuthenticationChallenge):
1537         (WebCore::WebResourceLoader::didCancelAuthenticationChallenge):
1538         (WebCore::WebResourceLoader::didReceiveResponse):
1539         (WebCore::WebResourceLoader::didReceiveData):
1540         (WebCore::WebResourceLoader::didFinishLoading):
1541         (WebCore::WebResourceLoader::didFinishLoadingOnePart):
1542         (WebCore::WebResourceLoader::didFail):
1543         (WebCore::WebResourceLoader::willCacheResponse):
1544         (WebCore::WebResourceLoader::didCancel):
1545         (WebCore::WebResourceLoader::cancel):
1546         (WebCore::WebResourceLoader::cancelledError):
1547         (WebCore::WebResourceLoader::delegate):
1548         * loader/mac/WebMainResourceLoader.h:
1549         * loader/mac/WebMainResourceLoader.mm:
1550         (WebCore::MainResourceLoader::MainResourceLoader):
1551         (WebCore::MainResourceLoader::create):
1552         (WebCore::MainResourceLoader::receivedError):
1553         (WebCore::MainResourceLoader::didCancel):
1554         (WebCore::MainResourceLoader::interruptionForPolicyChangeError):
1555         (WebCore::MainResourceLoader::isPostOrRedirectAfterPost):
1556         (WebCore::MainResourceLoader::addData):
1557         (WebCore::MainResourceLoader::willSendRequest):
1558         (WebCore::MainResourceLoader::continueAfterContentPolicy):
1559         (WebCore::MainResourceLoader::didReceiveResponse):
1560         (WebCore::MainResourceLoader::didReceiveData):
1561         (WebCore::MainResourceLoader::didFinishLoading):
1562         (WebCore::MainResourceLoader::didFail):
1563         (WebCore::MainResourceLoader::loadNow):
1564         (WebCore::MainResourceLoader::policyDelegate):
1565         * loader/mac/WebNetscapePlugInStreamLoader.h:
1566         * loader/mac/WebNetscapePlugInStreamLoader.mm:
1567         (WebCore::NetscapePlugInStreamLoader::NetscapePlugInStreamLoader):
1568         (WebCore::NetscapePlugInStreamLoader::create):
1569         (WebCore::NetscapePlugInStreamLoader::didReceiveResponse):
1570         (WebCore::NetscapePlugInStreamLoader::didFinishLoading):
1571         (WebCore::NetscapePlugInStreamLoader::didFail):
1572         (WebCore::NetscapePlugInStreamLoader::didCancel):
1573         * loader/mac/WebSubresourceLoader.h:
1574         * loader/mac/WebSubresourceLoader.mm:
1575         (-[WebCoreSubresourceHandle initWithLoader:]):
1576
1577 2006-10-23  Geoffrey Garen  <ggaren@apple.com>
1578
1579         Reviewed by Bradee.
1580
1581         Shrunk BrowserExtension in preparation for its imminent death, moving page-
1582         level operations to Page and frame-level operations to Frame.
1583         
1584         Removed bizarre Mac(this) syntax inside virtual FrameMac member functions, 
1585         because 'this' is guaranteed by the compiler to be a FrameMac*.
1586         
1587         * bindings/js/kjs_window.cpp: Added NULL checks for m_frame in places
1588         where it can be NULL.
1589         * bindings/js/kjs_window.cpp:
1590         (KJS::canShowModalDialog):
1591         (KJS::canShowModalDialogNow):
1592         (KJS::showModalDialog):
1593         (KJS::History::getValueProperty):
1594         (KJS::HistoryFunc::callAsFunction):
1595         * bridge/BrowserExtension.h:
1596         (WebCore::BrowserExtension::~BrowserExtension):
1597         * bridge/mac/BrowserExtensionMac.h:
1598         * bridge/mac/BrowserExtensionMac.mm:
1599         (WebCore::BrowserExtensionMac::createNewWindow):
1600         * bridge/mac/FrameMac.h:
1601         * bridge/mac/FrameMac.mm:
1602         (WebCore::FrameMac::frameDetached):
1603         (WebCore::FrameMac::unfocusWindow):
1604         (WebCore::FrameMac::bridgeForWidget):
1605         (WebCore::FrameMac::documentViewForNode):
1606         (WebCore::FrameMac::passSubframeEventToSubframe):
1607         (WebCore::Frame::setNeedsReapplyStyles):
1608         (WebCore::FrameMac::customHighlightLineRect):
1609         (WebCore::FrameMac::paintCustomHighlight):
1610         (WebCore::FrameMac::getHistoryLength):
1611         (WebCore::FrameMac::goBackOrForward):
1612         (WebCore::FrameMac::historyURL):
1613         * bridge/mac/PageMac.mm:
1614         (WebCore::Page::canRunModal):
1615         (WebCore::Page::canRunModalNow):
1616         (WebCore::Page::runModal):
1617         * bridge/mac/WebCoreFrameBridge.h:
1618         * bridge/mac/WebCorePageBridge.h:
1619         * bridge/win/BrowserExtensionWin.h:
1620         * page/Frame.cpp:
1621         (WebCore::Frame::scheduleHistoryNavigation):
1622         (WebCore::Frame::redirectionTimerFired):
1623         * page/Frame.h:
1624         * page/Page.h:
1625
1626 2006-10-23  Justin Garcia  <justin.garcia@apple.com>
1627
1628         Reviewed by mjs
1629
1630         <http://bugs.webkit.org/show_bug.cgi?id=11334>
1631         Writely Editor: Placing caret in a list "highlights" both Numbered List and Bulleted List toolbar icons
1632
1633         * WebCore.xcodeproj/project.pbxproj:
1634         * editing/Editor.cpp:
1635         (WebCore::Editor::selectionUnorderedListState): Added.
1636         (WebCore::Editor::selectionOrderedListState): Added.
1637         * editing/Editor.h:
1638         * editing/JSEditor.cpp:
1639         * page/Frame.cpp:
1640         * page/Frame.h:
1641
1642 2006-10-23  John Sullivan  <sullivan@apple.com>
1643
1644         Reviewed by Tim H
1645
1646         * WebCore.xcodeproj/project.pbxproj:
1647         Include WebCorePrefix.h in Xcode project for convenience and for consistency with WebKit
1648
1649 2006-10-23  Sam Weinig  <sam.weinig@gmail.com>
1650
1651         Reviewed by Tim H.
1652
1653         Patch for http://bugs.webkit.org/show_bug.cgi?id=11291
1654         PNG as cursor image format instead of TIFF
1655
1656         Original patch by Lars Naesbye Christensen (larsnaesbye@stud.ku.dk)
1657
1658         - Convert cursor images from TIFF to PNG.
1659
1660         * Resources/eastResizeCursor.png: Added.
1661         * Resources/eastResizeCursor.tiff: Removed.
1662         * Resources/eastWestResizeCursor.png: Added.
1663         * Resources/eastWestResizeCursor.tiff: Removed.
1664         * Resources/helpCursor.png: Added.
1665         * Resources/helpCursor.tiff: Removed.
1666         * Resources/linkCursor.png: Added.
1667         * Resources/linkCursor.tiff: Removed.
1668         * Resources/moveCursor.png: Added.
1669         * Resources/moveCursor.tiff: Removed.
1670         * Resources/northEastResizeCursor.png: Added.
1671         * Resources/northEastResizeCursor.tiff: Removed.
1672         * Resources/northEastSouthWestResizeCursor.png: Added.
1673         * Resources/northEastSouthWestResizeCursor.tiff: Removed.
1674         * Resources/northResizeCursor.png: Added.
1675         * Resources/northResizeCursor.tiff: Removed.
1676         * Resources/northSouthResizeCursor.png: Added.
1677         * Resources/northSouthResizeCursor.tiff: Removed.
1678         * Resources/northWestResizeCursor.png: Added.
1679         * Resources/northWestResizeCursor.tiff: Removed.
1680         * Resources/northWestSouthEastResizeCursor.png: Added.
1681         * Resources/northWestSouthEastResizeCursor.tiff: Removed.
1682         * Resources/southEastResizeCursor.png: Added.
1683         * Resources/southEastResizeCursor.tiff: Removed.
1684         * Resources/southResizeCursor.png: Added.
1685         * Resources/southResizeCursor.tiff: Removed.
1686         * Resources/southWestResizeCursor.png: Added.
1687         * Resources/southWestResizeCursor.tiff: Removed.
1688         * Resources/waitCursor.png: Added.
1689         * Resources/waitCursor.tiff: Removed.
1690         * Resources/westResizeCursor.png: Added.
1691         * Resources/westResizeCursor.tiff: Removed.
1692         * WebCore.xcodeproj/project.pbxproj:
1693         * platform/mac/CursorMac.mm:
1694         (WebCore::leakNamedCursor):
1695
1696 2006-10-23  Maciej Stachowiak  <mjs@apple.com>
1697
1698         Not reviewed.
1699
1700         - fixed build from last change.
1701
1702         * bridge/mac/FrameMac.h:
1703         * bridge/mac/FrameMac.mm:
1704         (WebCore::FrameMac::loadRequest):
1705         (WebCore::FrameMac::openURL):
1706
1707 2006-10-23  Adam Roben  <aroben@apple.com>
1708
1709         Reviewed by Adele.
1710
1711         Move border-radius rule for <select>s into RenderThemeMac, as this is
1712         really a platform-specific look.
1713
1714         * css/html4.css:
1715         * rendering/RenderThemeMac.mm:
1716         (WebCore::RenderThemeMac::adjustMenuListButtonStyle):
1717
1718 2006-10-23  Maciej Stachowiak  <mjs@apple.com>
1719
1720         Reviewed by Brady.
1721
1722         - moved things around so loadURL:... is only called from one place
1723
1724         * bridge/mac/FrameMac.h:
1725         * bridge/mac/FrameMac.mm:
1726         (WebCore::FrameMac::frameDetached):
1727         (WebCore::FrameMac::loadRequest):
1728         (WebCore::FrameMac::submitForm):
1729         (WebCore::FrameMac::openURL):
1730         (WebCore::FrameMac::openURLRequest):
1731         (WebCore::FrameMac::urlSelected):
1732
1733 2006-10-23  Justin Garcia  <justin.garcia@apple.com>
1734
1735         Reviewed by john
1736         
1737         <http://bugs.webkit.org/show_bug.cgi?id=11333>
1738         Writely Editor: After inserting a HR element, pressing return key creates a copy of this HR element in the document
1739         
1740         Added special cases in InsertLineBreakCommand for inserting before
1741         and after tables and horizontal rules.  Also, perform InsertLineBreak
1742         instead of InsertParagraphSeparator at these positions.
1743
1744         * editing/InsertLineBreakCommand.cpp:
1745         (WebCore::InsertLineBreakCommand::doApply):  Use the canonical form
1746         of the caret position when we check for the new special cases because 
1747         we know that we canonicalize VisiblePositions to those positions.
1748         Added code to handle inserting before/after tables and horizontal rules.  
1749         Fixed a bug when inserting at the end of a block (it checked for a collapse
1750         of the inserted br by looking for the absence of a br, but the line break 
1751         might have been a '\n' in white-space:pre text).  Removed unused LOGs.
1752         * editing/InsertParagraphSeparatorCommand.cpp:
1753         (WebCore::InsertParagraphSeparatorCommand::doApply): Perform an 
1754         InsertLineBreakCommand when before/after a table or a horizontal rule
1755         so that we don't have to maintain two pieces of special case code.
1756         Migrated to enclosingBlock.
1757         * editing/htmlediting.cpp: Added a FIXME.
1758         * editing/visible_units.cpp:
1759         (WebCore::startOfParagraph): Added a workaround for 8622.
1760         
1761 2006-10-23  Adam Roben  <aroben@apple.com>
1762
1763         Reviewed by Adele.
1764
1765         Make popups a little more flexible.
1766
1767         * platform/PopupMenu.h:
1768
1769 2006-10-23  Sam Weinig  <sam.weinig@gmail.com>
1770
1771         Reviewed by Tim H.
1772
1773         Cleanup CodeGeneratorJS.pm
1774
1775         * bindings/scripts/CodeGeneratorJS.pm:
1776
1777 2006-10-23  Adam Roben  <aroben@apple.com>
1778
1779         Rubberstamped by Brady.
1780
1781         * loader/icon/IconLoader.h: Changed angle-brackets to quotes for
1782         #include of ResourceLoader.h, since it's a WebCore header.
1783
1784 2006-10-23  Darin Adler  <darin@apple.com>
1785
1786         - fixed mistake that was preventing any loading from happening
1787
1788         * platform/network/ResourceLoaderClient.h: (WebCore::ResourceLoaderClient::didReceiveData):
1789         Changed parameter back to int. Perhaps we want to move to "long long" consistently, but
1790         I'll leave that up to Maciej.
1791
1792 2006-10-23  Maciej Stachowiak  <mjs@apple.com>
1793
1794         Reviewed by Anders.
1795
1796         - start converting ResourceLoaderClient to new API
1797
1798         Did the bits I could do without introducing new types:
1799         
1800         - renamed receivedData to didReceiveData
1801         - renamed version of receivedAllData that doesn't pass any data to didFinishLoading
1802
1803         * bridge/mac/WebCoreResourceLoaderImp.mm:
1804         (-[WebCoreResourceLoaderImp addData:]):
1805         (-[WebCoreResourceLoaderImp finishJobAndHandle:]):
1806         * loader/icon/IconLoader.cpp:
1807         (IconLoader::didReceiveData):
1808         (IconLoader::didFinishLoading):
1809         * loader/icon/IconLoader.h:
1810         * loader/loader.cpp:
1811         (WebCore::Loader::didReceiveData):
1812         * loader/loader.h:
1813         * platform/gdk/FrameGdk.cpp:
1814         (WebCore::FrameGdkClientDefault::didReceiveData):
1815         * platform/gdk/FrameGdk.h:
1816         * platform/network/ResourceLoaderClient.h:
1817         (WebCore::ResourceLoaderClient::didReceiveData):
1818         (WebCore::ResourceLoaderClient::didFinishLoading):
1819         (WebCore::ResourceLoaderClient::receivedResponse):
1820         * platform/network/cf/ResourceLoaderCFNet.cpp:
1821         (WebCore::didReceiveData):
1822         (WebCore::didFinishLoading):
1823         (WebCore::didFail):
1824         (WebCore::ResourceLoader::cancel):
1825         * platform/network/gdk/ResourceLoaderManager.cpp:
1826         (WebCore::writeCallback):
1827         (WebCore::ResourceLoaderManager::downloadTimerCallback):
1828         (WebCore::ResourceLoaderManager::remove):
1829         * platform/network/qt/ResourceLoaderManager.cpp:
1830         (WebCore::ResourceLoaderManager::slotData):
1831         (WebCore::ResourceLoaderManager::remove):
1832         * platform/network/win/ResourceLoaderWin.cpp:
1833         (WebCore::ResourceLoader::onRequestComplete):
1834         (WebCore::ResourceLoader::fileLoadTimer):
1835         (WebCore::ResourceLoader::cancel):
1836         * platform/qt/FrameQtClient.cpp:
1837         (WebCore::FrameQtClientDefault::didReceiveData):
1838         * platform/qt/FrameQtClient.h:
1839         * xml/xmlhttprequest.cpp:
1840         (WebCore::XMLHttpRequest::processSyncLoadResults):
1841         (WebCore::XMLHttpRequest::didFinishLoading):
1842         (WebCore::XMLHttpRequest::didReceiveData):
1843         * xml/xmlhttprequest.h:
1844
1845 2006-10-23  Maciej Stachowiak  <mjs@apple.com>
1846
1847         Rubber stamped by Anders.
1848
1849         - marked files executable
1850         
1851         * ksvg2/scripts/csscssmakeprops:
1852         * ksvg2/scripts/csscssmakevalues:
1853
1854 2006-10-22  Maciej Stachowiak  <mjs@apple.com>
1855
1856         Reviewed by Anders.
1857
1858         - moved ResourceLoader and related files to platform/network
1859         in preparation for building out this API.
1860
1861         I tried to update all the build systems but I'm not sure they are
1862         all fixed properly
1863
1864         * page/ResourceRequest.h: Moved to platform/network.
1865         * platform/ResourceLoader.cpp: Moved to platform/network.
1866         * platform/ResourceLoader.h: Moved to platform/network.
1867         * platform/ResourceLoaderClient.h: Moved to platform/network.
1868         * platform/ResourceLoaderInternal.h: Moved to platform/network.
1869         * platform/cf/ResourceLoaderCFNet.cpp: Moved to platform/network/cf.
1870         * platform/gdk/ResourceLoaderCurl.cpp: Moved to platform/network/gdk.
1871         * platform/gdk/ResourceLoaderManager.cpp: Moved to platform/network/gdk.
1872         * platform/gdk/ResourceLoaderManager.h: Moved to platform/network/gdk.
1873         * platform/mac/ResourceLoaderMac.mm: Moved to platform/network/mac.
1874         * platform/qt/ResourceLoaderManager.cpp: Moved to platform/network/qt.
1875         * platform/qt/ResourceLoaderManager.h: Moved to platform/network/qt.
1876         * platform/qt/ResourceLoaderQt.cpp: Moved to platform/network/qt.
1877         * platform/win/ResourceLoaderWin.cpp: Moved to platform/network/win.
1878         * platform/win/ResourceLoaderWin.h: Moved to platform/network/win.
1879         * webcore-base.bkl: Updated for new paths.
1880         * CMakeLists.txt: ditto
1881         * Projects/gdk/webcore-gdk.bkl: ditto
1882         * WebCore.xcodeproj/project.pbxproj: ditto
1883         * WebCoreSources.bkl: ditto
1884
1885 2006-10-22  Sam Weinig  <sam.weinig@gmail.com>
1886
1887         Reviewed by Tim H.
1888
1889         - Add DOMHTMLFormElementPrivate.h to the project.
1890
1891         * WebCore.xcodeproj/project.pbxproj:
1892         * bindings/objc/DOMPrivate.h:
1893
1894 2006-10-22  Darin Adler  <darin@apple.com>
1895
1896         - another try at fixing Qt
1897
1898         * CMakeLists.txt: Added DeleteButton.cpp and DeleteButtonController.cpp.
1899
1900         - and fix a couple warnings while I'm at it
1901
1902         * platform/image-decoders/ImageDecoder.h: (WebCore::RGBA32Buffer::setRGBA):
1903         Don't do unsigned *= float.
1904
1905         * rendering/break_lines.cpp: (WebCore::nextBreakablePosition): Move unused variable
1906         inside #if so it's consistent.
1907
1908 2006-10-21  Darin Adler  <darin@apple.com>
1909
1910         - fix the Qt build
1911
1912         * platform/qt/EditorClientQt.cpp:
1913         (WebCore::EditorClientQt::shouldShowDeleteInterface):
1914         * platform/qt/EditorClientQt.h:
1915         * platform/qt/FrameQt.cpp:
1916
1917 2006-10-21  Darin Adler  <darin@apple.com>
1918
1919         Reviewed by Adele.
1920
1921         - convert WebLoader and its 3 subclasses to C++ (this time with a leak fixed)
1922
1923         Renamed WebLoader to WebCore::WebResourceLoader (should be ResourceLoader, but
1924         there's currently another class with that name).
1925         Renamed WebMainResourceLoader to WebCore::MainResourceLoader.
1926         Renamed WebSubresourceLoader to WebCore::SubresourceLoader.
1927         Renamed WebNetscapePlugInStreamLoader to WebCore::NetscapePlugInStreamLoader.
1928
1929         Converted the classes to C++ and added Objective-C delegates to forward from
1930         API that still requires Objective-C.
1931
1932         Did not yet rename the source files.
1933
1934         * WebCore.exp: Removed WebLoader, WebNetscapePlugInStreamLoader, and WebSubresourceLoader
1935         classes. Added 5 functions from the WebResourceLoader and NetscapePlugInStreamLoader
1936         classes.
1937
1938         * WebCore.xcodeproj/project.pbxproj: Made RetainPtr.h a private header instead of project.
1939
1940         * platform/cf/RetainPtr.h: Put into the WebCore namespace rather than the WTF namespace.
1941
1942         * loader/mac/WebLoader.h:
1943         * loader/mac/WebLoader.mm:
1944         * loader/mac/WebMainResourceLoader.h:
1945         * loader/mac/WebMainResourceLoader.mm:
1946         * loader/mac/WebNetscapePlugInStreamLoader.h:
1947         * loader/mac/WebNetscapePlugInStreamLoader.mm:
1948         * loader/mac/WebSubresourceLoader.h:
1949         * loader/mac/WebSubresourceLoader.mm:
1950         Translate to C++.
1951
1952         * bridge/mac/WebCoreFrameBridge.mm:
1953         (-[WebCoreFrameBridge startLoadingResource:withMethod:URL:customHeaders:]):
1954         (-[WebCoreFrameBridge startLoadingResource:withMethod:URL:customHeaders:postData:]):
1955         * loader/mac/WebFrameLoader.h:
1956         * loader/mac/WebFrameLoader.mm:
1957         (isCaseInsensitiveEqual):
1958         (isBackForwardLoadType):
1959         (-[WebFrameLoader dealloc]):
1960         (-[WebFrameLoader addPlugInStreamLoader:]):
1961         (-[WebFrameLoader removePlugInStreamLoader:]):
1962         (-[WebFrameLoader setDefersCallbacks:]):
1963         (-[WebFrameLoader stopLoadingPlugIns]):
1964         (-[WebFrameLoader isLoadingMainResource]):
1965         (-[WebFrameLoader isLoadingSubresources]):
1966         (-[WebFrameLoader isLoadingPlugIns]):
1967         (-[WebFrameLoader stopLoadingSubresources]):
1968         (-[WebFrameLoader addSubresourceLoader:]):
1969         (-[WebFrameLoader removeSubresourceLoader:]):
1970         (-[WebFrameLoader mainResourceData]):
1971         (-[WebFrameLoader releaseMainResourceLoader]):
1972         (-[WebFrameLoader cancelMainResourceLoad]):
1973         (-[WebFrameLoader startLoadingMainResourceWithRequest:identifier:]):
1974         (-[WebFrameLoader stopLoadingWithError:]):
1975         (-[WebFrameLoader willUseArchiveForRequest:originalURL:loader:]):
1976         (-[WebFrameLoader archiveLoadPendingForLoader:]):
1977         (-[WebFrameLoader cancelPendingArchiveLoadForLoader:]):
1978         * loader/mac/WebFrameLoaderClient.h:
1979         Call the new C++ API.
1980
1981 2006-10-21  Adam Roben  <aroben@apple.com>
1982
1983         Reviewed by Anders.
1984
1985         Popup tweaks.
1986
1987         * platform/PopupMenu.h:
1988
1989 2006-10-21  Darin Adler  <darin@apple.com>
1990
1991         * editing/DeleteButtonController.cpp: (WebCore::enclosingDeletableTable):
1992         Oops, edited this before landing it and introduced a null-deref! This fixes it.
1993
1994 2006-10-21  Darin Adler  <darin@apple.com>
1995
1996         Reviewed by Anders.
1997
1998         - fix http://bugs.webkit.org/show_bug.cgi?id=11379
1999           assertion failure seen in editing tests (in new DeleteButtonController)
2000
2001         I cleaned up the relationship between the Frame, Editor, EditorClient, and
2002         DeleteButtonController a bit while also making the simple change to fix the
2003         assertion failure.
2004
2005         * bridge/mac/FrameMac.h: Change EditorClient parameter to a PassRefPtr since we take ownership.
2006         * bridge/mac/FrameMac.mm: (WebCore::FrameMac::FrameMac):
2007
2008         * page/Frame.h: Change EditorClient parameter to a PassRefPtr since we take ownership.
2009         * page/Frame.cpp:
2010         (WebCore::Frame::Frame): Ditto.
2011         (WebCore::Frame::appliedEditing): Removed unneeded parameter to the respondToChangedContents
2012         function, and moved it to Editor rather than right on the DeleteButtonController.
2013         (WebCore::Frame::unappliedEditing): Ditto.
2014         (WebCore::Frame::reappliedEditing): Ditto.
2015         * page/FramePrivate.h: (WebCore::FramePrivate::FramePrivate): More of the same.
2016
2017         * editing/DeleteButtonController.h:
2018         * editing/DeleteButtonController.cpp:
2019         (WebCore::DeleteButtonController::DeleteButtonController): Replaced Editor* with a Frame*.
2020         The general pattern is that we always use the Frame* as the frame identifier. See FrameTree,
2021         for example.
2022         (WebCore::enclosingDeletableTable): Added. Helper function used by the respondToChangedSelection
2023         function. Includes an additional check for whether the container is contentEditable, which
2024         was missing from the old version. This prevents the assertion failure. Also added a check that
2025         the table itself is editable.
2026         (WebCore::DeleteButtonController::respondToChangedSelection): Rewrote to use the helper.
2027         (WebCore::DeleteButtonController::respondToChangedContents): Removed the unnecessary
2028         selection parameter. No need to pass in the state of the frame since we can get it if we need it.
2029         (WebCore::DeleteButtonController::show): Updated to use frame pointer rather than editor pointer.
2030
2031         * editing/Editor.cpp: Fixed formatting. Even the temporary placeholder functions should be
2032         formatted on multiple lines as usual.
2033         (WebCore::Editor::respondToChangedSelection): Added. Forwards to the delete button controller.
2034         (WebCore::Editor::respondToChangedContents): Ditto.
2035         (WebCore::Editor::Editor): Changed EditorClient parameter to a PassRefPtr since we take ownership.
2036
2037         * editing/Editor.h: Changed the DeleteButtonController to use an OwnPtr instead of being
2038         defined inline to decouple so that we don't have to include DeleteButtonController.h. That way
2039         changes to DeleteButtonController.h cause very little to recompile.
2040
2041         * editing/SelectionController.cpp: (WebCore::SelectionController::setSelection):
2042         Updated to call the editor instead of the delete button controller for the selection change.
2043
2044 2006-10-21  Anders Carlsson  <acarlsson@apple.com>
2045
2046         Reviewed by Darin.
2047
2048         * loader/mac/LoaderFunctionsMac.mm:
2049         (WebCore::ServeSynchronousRequest):
2050         * platform/mac/ResourceLoaderMac.mm:
2051         (WebCore::ResourceLoader::start):
2052         Don't leak the header dictionary.
2053
2054 2006-10-21  Darin Adler  <darin@apple.com>
2055
2056         Reviewed by Adam.
2057
2058         - http://bugs.webkit.org/show_bug.cgi?id=11376
2059           build scripts should invoke make with "-j" option for multiple processors
2060
2061         * WebCore.xcodeproj/project.pbxproj: Pass -j `sysctl -n hw.ncpu` to make.
2062
2063 2006-10-21  Timothy Hatcher  <timothy@apple.com>
2064
2065         Reviewed by Geoff.
2066
2067         <rdar://problem/4478625> HTML Editing: Basic table editing and culling
2068
2069         Initial implementaltion of table deletion user interface:
2070         * Interface shows up on the nearest table containing the entire selection.
2071         * Shows a Dashboard style close button in the top left corner.
2072         * Shows a 60% opaque black outline around the table.
2073         * Adds a new EditorClient function shouldShowDeleteInterface.
2074
2075         Also adds a new constructor CachedImage and setter functions on
2076         HTMLImageElement and HTMLImageLoader allowing an Image object to be set
2077         and image element in the page. This change also paves the way to allow an
2078         NSImage setter on DOMHTMLImageElement. 
2079
2080         * Resources/deleteButton.tiff: Added.
2081         * Resources/deleteButtonPressed.tiff: Added.
2082         * WebCore.xcodeproj/project.pbxproj:
2083         * bridge/EditorClient.h:
2084         * editing/DeleteButton.cpp: Added.
2085         (WebCore::DeleteButton::DeleteButton):
2086         (WebCore::DeleteButton::defaultEventHandler): notify the controller to delete on click
2087         * editing/DeleteButton.h: Added.
2088         * editing/DeleteButtonController.cpp: Added.
2089         (WebCore::DeleteButtonController::DeleteButtonController):
2090         (WebCore::DeleteButtonController::respondToChangedSelection): move the interface to the new element, or hide
2091         (WebCore::DeleteButtonController::respondToChangedContents): call updateOutlineStyle
2092         (WebCore::DeleteButtonController::updateOutlineStyle): resize the outline if the table changed size
2093         (WebCore::DeleteButtonController::show): shows the interface on a new element
2094         (WebCore::DeleteButtonController::hide): hides the existing interface
2095         (WebCore::DeleteButtonController::deleteTarget): deletes the targeted element
2096         * editing/DeleteButtonController.h: Added.
2097         (WebCore::DeleteButtonController::target): getter for the current target
2098         * editing/Editor.cpp:
2099         (WebCore::Editor::shouldShowDeleteInterface): call the new shouldShowDeleteInterface client function
2100         (WebCore::Editor::Editor): remove the manual ref now that we use RefPtr for m_client
2101         (WebCore::Editor::~Editor): remove the manual deref now that we use RefPtr for m_client
2102         * editing/Editor.h:
2103         (WebCore::Editor::frame): new getter
2104         (WebCore::Editor::deleteButtonController): ditto
2105         * editing/SelectionController.cpp:
2106         (WebCore::SelectionController::setSelection): notify the DeleteButtonController about the new selection
2107         * html/HTMLImageElement.h:
2108         (WebCore::HTMLImageElement::setCachedImage): new setter that replaces the CachedImage
2109         * html/HTMLImageLoader.cpp:
2110         (WebCore::HTMLImageLoader::setImage): ditto
2111         * html/HTMLImageLoader.h:
2112         * loader/CachedImage.cpp:
2113         (WebCore::CachedImage::CachedImage): new constructor that takes an Image
2114         * loader/CachedImage.h: ditto
2115         * page/Frame.cpp:
2116         (WebCore::Frame::selectionController): cleanup coding style
2117         (WebCore::Frame::editor): ditto
2118         (WebCore::Frame::command): ditto
2119         (WebCore::Frame::appliedEditing): tell the delete button outline to update
2120         (WebCore::Frame::unappliedEditing): ditto
2121         (WebCore::Frame::reappliedEditing): ditto
2122         * rendering/RenderTable.cpp:
2123         (WebCore::RenderTable::addChild): workaround until bug 11363 is fixed
2124
2125 2006-10-21  Sam Weinig  <sam.weinig@gmail.com>
2126
2127         Reviewed by Tim H.
2128
2129         Cleanup bindings generation a little through re-factoring 
2130         and general style cleanup.
2131
2132         * bindings/scripts/CodeGenerator.pm:
2133         * bindings/scripts/CodeGeneratorJS.pm:
2134         * bindings/scripts/CodeGeneratorObjC.pm:
2135
2136 2006-10-21  Nikolas Zimmermann  <zimmermann@kde.org>
2137
2138         Reviewed by Mitz.
2139
2140         Fix crashes on Qt/Linux. Offer a default EditorClient and pass it down to Frame ctor.
2141
2142         * CMakeLists.txt:
2143         * platform/qt/EditorClientQt.cpp: Added.
2144         (WebCore::EditorClientQt::shouldDeleteRange):
2145         * platform/qt/EditorClientQt.h: Added.
2146         (WebCore::EditorClientQt::~EditorClientQt):
2147         * platform/qt/FrameQt.cpp:
2148         (WebCore::FrameQt::FrameQt):
2149         * platform/qt/FrameQt.h:
2150
2151 2006-10-21  Sam Weinig  <sam.weinig@gmail.com>
2152
2153         Reviewed by Tim H.
2154
2155         Fix for http://bugs.webkit.org/show_bug.cgi?id=11372
2156         Auto-generate a few more Objective-C DOM methods.
2157
2158         - Auto-generate getMatchedCSSRules and getComputedStyle methods.
2159
2160         * bindings/objc/DOMCSS.h:
2161         * bindings/objc/DOMCSS.mm:
2162         * bindings/objc/DOMExtensions.h:
2163         * bindings/objc/PublicDOMInterfaces.h:
2164         * bindings/scripts/CodeGeneratorObjC.pm:
2165         * dom/Document.idl:
2166         * page/DOMWindow.idl:
2167
2168 2006-10-21  Nikolas Zimmermann  <zimmermann@kde.org>
2169
2170         Reviewed by aliu, landed by aliu.
2171
2172         Fix Qt/Linux build.
2173
2174         * CMakeLists.txt:
2175         * platform/qt/FrameQt.cpp:
2176         (WebCore::FrameQt::FrameQt):
2177         * platform/qt/SoundQt.cpp: Added.
2178         (WebCore::systemBeep):
2179
2180 2006-10-21  Nikolas Zimmermann  <zimmermann@kde.org>
2181
2182         Reviewed by Mitz, landed by ap.
2183
2184         Fix obscure crashes in RenderTableSection on Rob's musicdb file.
2185         The problem was a missing layout() call on the frame view.
2186         Thanks go to Mitz Pettel for the initial hint!
2187
2188         * platform/qt/ScrollViewCanvasQt.cpp:
2189         (WebCore::ScrollViewCanvasQt::paintEvent):
2190
2191 2006-10-20  Steve Falkenburg  <sfalken@apple.com>
2192
2193         Reviewed by Anders.
2194
2195         Send User-Agent on requests.
2196         Send custom request headers properly.
2197
2198         * platform/cf/ResourceLoaderCFNet.cpp:
2199         (WebCore::addHeadersFromHashMap): Switch over to HashMap iteration from string parsing
2200         (WebCore::ResourceLoader::start): Send proper User-Agent, change call to add headers
2201
2202 2006-10-20  Timothy Hatcher  <timothy@apple.com>
2203
2204         Reviewed by Hyatt.
2205
2206         Fix some bad formatting.
2207
2208         * css/cssstyleselector.cpp:
2209         (WebCore::CSSStyleSelector::checkOneSelector):
2210
2211 2006-10-20  Darin Adler  <darin@apple.com>
2212
2213         Reviewed by John.
2214
2215         - fixed <rdar://problem/4795716> REGRESSION: User names and passwords aren't being saved (.Mac, etc.) -- WebKit formState passing empty strings
2216
2217         * loader/mac/WebFormState.mm: (WebCore::FormState::FormState): Fix typo -- need to pass "key"
2218         as the key, not the dictionary itself.
2219
2220 2006-10-20  Alice Liu  <alice.liu@apple.com>
2221
2222         Reviewed by Maciej.
2223
2224         This is the initial foundation for the EditingController class and
2225         everything else it needs to work.  The idea is that the Frame has an
2226         EditingController object that it calls to handle editing commands, the
2227         most simple examples being copy/paste.  This controller will handle
2228         these editing commands in WebCore, and only hand off to WebKit to call
2229         editing delegates (to the let the app intercept editing actions if it
2230         wants to).  Thus we need a platform-specific client to which the
2231         EditingController hands off the delegate calls, 
2232         WebCoreEditingControllerClient.  On the WebCore side this is an 
2233         abstract base class, and on the WebKit(Mac) side this is an ObjC++
2234         subclass, WebEditingControllerClient.  How does the EditingController
2235         get a handle to its platform-specific client?  In WebKit, the creator
2236         of a platform-specific Frame creates the client (which is ref-counted)
2237         and passes it down the chain of constructors until it gets back to the
2238         EditingController, which then refs it in its constructor and derefs in
2239         its destructor.
2240         
2241         No Layout tests needed.
2242         
2243         * WebCore.xcodeproj/project.pbxproj:
2244         Added files and made DomRangeInternal.h and EditingClient.h private headers, necessary for WebKit to compile
2245
2246         * bridge/EditorClient.h: Added.
2247         (WebCore::EditorClient::~EditorClient):
2248
2249         * bridge/mac/FrameMac.h:
2250         Added an EditingClient to the constructor, to pass down to Frame constructor
2251
2252         * bridge/mac/FrameMac.mm:
2253         (WebCore::FrameMac::FrameMac):
2254         Passed client down to Frame constructor
2255         
2256         * bridge/mac/WebCoreFrameBridge.h:
2257         Added an EditingClient to the constructor, to pass down to FrameMac constructor
2258         
2259         * bridge/mac/WebCoreFrameBridge.mm:
2260         (-[WebCoreFrameBridge initMainFrameWithPage:withEditorClient:]):
2261         (-[WebCoreFrameBridge initSubframeWithOwnerElement:withEditorClient:]):
2262         Passed client down to FrameMac constructor
2263         
2264         * editing/Editor.cpp: Added.
2265         Mostly stuf implementations of the following functions, except for a couple.  These are all needed by cut, copy, paste, delete.
2266         (WebCore::generalPasteboard):
2267         (WebCore::Editor::canCopy):
2268         (WebCore::Editor::canCut):
2269         (WebCore::Editor::canDelete):
2270         (WebCore::Editor::canDeleteRange):
2271         (WebCore::Editor::canPaste):
2272         (WebCore::Editor::canSmartCopyOrDelete):
2273         (WebCore::Editor::deleteSelection):
2274         (WebCore::Editor::deleteSelectionWithSmartDelete):
2275         (WebCore::Editor::isSelectionRichlyEditable):
2276         (WebCore::Editor::pasteAsPlainTextWithPasteboard):
2277         (WebCore::Editor::pasteWithPasteboard):
2278         (WebCore::Editor::selectedRange):
2279         (WebCore::Editor::shouldDeleteRange):
2280         (WebCore::Editor::tryDHTMLCopy):
2281         (WebCore::Editor::tryDHTMLCut):
2282         (WebCore::Editor::tryDHTMLPaste):
2283         (WebCore::Editor::writeSelectionToPasteboard):
2284         (WebCore::Editor::Editor):
2285         (WebCore::Editor::~Editor):
2286         (WebCore::Editor::cut):
2287         (WebCore::Editor::copy):
2288         (WebCore::Editor::paste):
2289         (WebCore::Editor::performDelete):
2290         
2291         * editing/Editor.h: Added.
2292         
2293         * page/Frame.h:
2294         Added an EditingClient to the constructor, to pass down to Editor constructor
2295
2296         * page/Frame.cpp:
2297         (WebCore::Frame::Frame):
2298         Passed down to Editor constructor
2299         (WebCore::Frame::editor):
2300         Accessor for Editor stored in FramePrivate
2301         
2302         * page/FramePrivate.h:
2303         (WebCore::FramePrivate::FramePrivate):
2304         Added an Editor object to the FramePrivate data
2305         
2306         * platform/Sound.h: Added.
2307         Made a platform-independent accessor to a beep function
2308         
2309         * platform/mac/SoundMac.mm: Added.
2310         (WebCore::systemBeep):
2311         calls mac system beep
2312         
2313 2006-10-20  David Hyatt  <hyatt@apple.com>
2314
2315         Make sure to support the "encoding" property on form elements for
2316         legacy compatibility.
2317
2318         Reviewed by darin/john
2319
2320         No test cases added.  Not sure how to do a form submission of
2321         various encodings as a layout test.
2322
2323         * html/HTMLFormElement.h:
2324         (WebCore::HTMLFormElement::encoding):
2325         (WebCore::HTMLFormElement::setEncoding):
2326         * html/HTMLFormElement.idl:
2327
2328 2006-10-20  Nikolas Zimmermann  <zimmermann@kde.org>
2329
2330         Reviewed and by Anders.
2331
2332         Fix warnings in JS generation by killing the whole isRefPtr logic,
2333         and just using WTF::getPtr as Sam Weinig suggested. Also kill some
2334         places using get() where getPtr() is cleaner - not for m_impl.get().
2335
2336         * CMakeLists.txt: Tiny cleanup + add deps for CodeGenerator(JS).pm on all IDLs.
2337         * bindings/scripts/CodeGeneratorJS.pm:
2338
2339 2006-10-20  Darin Adler  <darin@apple.com>
2340
2341         - rolled out my loader change; caused world leak and possibly a plug-in crash
2342
2343 2006-10-20  Anders Carlsson  <acarlsson@apple.com>
2344
2345         Reviewed by Tim H
2346
2347         * loader/mac/LoaderFunctionsMac.mm:
2348         Autorelease the header NSDictionary.
2349         
2350 2006-10-20  Anders Carlsson  <acarlsson@apple.com>
2351
2352         Reviewed by Geoff.
2353
2354         * bindings/js/kjs_window.cpp:
2355         (KJS::Window::timerFired):
2356         Check if the timeout id is still in the table before trying to access it. If it isn't in the table
2357         it has been deleted inside of the execute method.
2358
2359 2006-10-20  Anders Carlsson  <acarlsson@apple.com>
2360
2361         Reviewed by Darin and Geoff.
2362
2363         Remove debugging output.
2364         * xml/xmlhttprequest.cpp:
2365         (WebCore::XMLHttpRequest::send):
2366
2367 2006-10-20  David Harrison  <harrison@apple.com>
2368
2369         Reviewed by John.
2370
2371         <rdar://problem/4792755> REGRESSON: Drag selecting is erratic
2372
2373         No test because it would require autoscrolling, which is not available to layout tests.
2374
2375         * rendering/RenderLayer.cpp:
2376         (WebCore::RenderLayer::autoscroll):
2377         Use hitTest() to find the correct node.
2378         
2379         (WebCore::RenderLayer::hitTest):
2380         Trivial source formatting.
2381
2382 2006-10-20  Nikolas Zimmermann  <zimmermann@kde.org>
2383
2384         Reviewed and landed by Anders.
2385
2386         Fix regression introduced during the ResourceLoader transition (Maciej's rewrite).
2387
2388         * platform/qt/ResourceLoaderManager.cpp:
2389         (WebCore::ResourceLoaderManager::add):
2390
2391 2006-10-20  Darin Adler  <darin@apple.com>
2392
2393         Reviewed by Adele.
2394
2395         - convert WebLoader and its 3 subclasses to C++
2396
2397         Renamed WebLoader to WebCore::WebResourceLoader (should be ResourceLoader, but
2398         there's currently another class with that name).
2399         Renamed WebMainResourceLoader to WebCore::MainResourceLoader.
2400         Renamed WebSubresourceLoader to WebCore::SubresourceLoader.
2401         Renamed WebNetscapePlugInStreamLoader to WebCore::NetscapePlugInStreamLoader.
2402
2403         Converted the classes to C++ and added Objective-C delegates to forward from
2404         API that still requires Objective-C.
2405
2406         Did not yet rename the source files.
2407
2408         * WebCore.exp: Removed WebLoader, WebNetscapePlugInStreamLoader, and WebSubresourceLoader
2409         classes. Added 5 functions from the WebResourceLoader and NetscapePlugInStreamLoader
2410         classes.
2411
2412         * WebCore.xcodeproj/project.pbxproj: Made RetainPtr.h a private header instead of project.
2413
2414         * platform/cf/RetainPtr.h: Put into the WebCore namespace rather than the WTF namespace.
2415
2416         * loader/mac/WebLoader.h:
2417         * loader/mac/WebLoader.mm:
2418         * loader/mac/WebMainResourceLoader.h:
2419         * loader/mac/WebMainResourceLoader.mm:
2420         * loader/mac/WebNetscapePlugInStreamLoader.h:
2421         * loader/mac/WebNetscapePlugInStreamLoader.mm:
2422         * loader/mac/WebSubresourceLoader.h:
2423         * loader/mac/WebSubresourceLoader.mm:
2424         Translate to C++.
2425
2426         * bridge/mac/WebCoreFrameBridge.mm:
2427         (-[WebCoreFrameBridge startLoadingResource:withMethod:URL:customHeaders:]):
2428         (-[WebCoreFrameBridge startLoadingResource:withMethod:URL:customHeaders:postData:]):
2429         * loader/mac/WebFrameLoader.h:
2430         * loader/mac/WebFrameLoader.mm:
2431         (isCaseInsensitiveEqual):
2432         (isBackForwardLoadType):
2433         (-[WebFrameLoader dealloc]):
2434         (-[WebFrameLoader addPlugInStreamLoader:]):
2435         (-[WebFrameLoader removePlugInStreamLoader:]):
2436         (-[WebFrameLoader setDefersCallbacks:]):
2437         (-[WebFrameLoader stopLoadingPlugIns]):
2438         (-[WebFrameLoader isLoadingMainResource]):
2439         (-[WebFrameLoader isLoadingSubresources]):
2440         (-[WebFrameLoader isLoadingPlugIns]):
2441         (-[WebFrameLoader stopLoadingSubresources]):
2442         (-[WebFrameLoader addSubresourceLoader:]):
2443         (-[WebFrameLoader removeSubresourceLoader:]):
2444         (-[WebFrameLoader mainResourceData]):
2445         (-[WebFrameLoader releaseMainResourceLoader]):
2446         (-[WebFrameLoader cancelMainResourceLoad]):
2447         (-[WebFrameLoader startLoadingMainResourceWithRequest:identifier:]):
2448         (-[WebFrameLoader stopLoadingWithError:]):
2449         (-[WebFrameLoader willUseArchiveForRequest:originalURL:loader:]):
2450         (-[WebFrameLoader archiveLoadPendingForLoader:]):
2451         (-[WebFrameLoader cancelPendingArchiveLoadForLoader:]):
2452         * loader/mac/WebFrameLoaderClient.h:
2453         Call the new C++ API.
2454
2455 2006-10-20  Nikolas Zimmermann  <zimmermann@kde.org>
2456
2457         Reviewed and landed by Anders.
2458
2459         Offer a way for WebKitPart to be able to detect when
2460         the webpage has been completly loaded (including subresources).
2461
2462         Also fix Qt/Linux build by removing PopupMenu.cpp from CMakeLists.txt
2463         and removing some functions from PopupMenuQt.cpp, and alter FrameQt.cpp.
2464
2465         * CMakeLists.txt:
2466         * platform/qt/FrameQt.cpp:
2467         (WebCore::FrameQt::submitForm):
2468         (WebCore::FrameQt::client):
2469         * platform/qt/FrameQt.h:
2470         * platform/qt/FrameQtClient.cpp:
2471         (WebCore::FrameQtClientDefault::setFrame):
2472         (WebCore::FrameQtClientDefault::openURL):
2473         (WebCore::FrameQtClientDefault::submitForm):
2474         (WebCore::FrameQtClientDefault::checkLoaded):
2475         (WebCore::FrameQtClientDefault::traverseNextFrameStayWithin):
2476         (WebCore::FrameQtClientDefault::numPendingOrLoadingRequests):
2477         (WebCore::FrameQtClientDefault::receivedAllData):
2478         * platform/qt/FrameQtClient.h:
2479         * platform/qt/LoaderFunctionsQt.cpp:
2480         (WebCore::CheckCacheObjectStatus):
2481         * platform/qt/PopupMenuQt.cpp:
2482         * platform/qt/ResourceLoaderManager.cpp:
2483         (WebCore::ResourceLoaderManager::ResourceLoaderManager):
2484         (WebCore::ResourceLoaderManager::slotResult):
2485         (WebCore::ResourceLoaderManager::add):
2486         * platform/qt/ResourceLoaderManager.h:
2487         * platform/qt/ResourceLoaderQt.cpp:
2488         (WebCore::ResourceLoader::start):
2489
2490 2006-10-20  Steve Falkenburg  <sfalken@apple.com>
2491
2492         Reviewed by Geoff.
2493
2494         Fix compiler warnings
2495
2496         * platform/ResourceLoaderClient.h:
2497
2498 2006-10-20  Sam Weinig  <sam.weinig@gmail.com>
2499
2500         Reviewed by Mitz.
2501
2502         Win32 build fix and cleanup.
2503
2504         * WebCore.vcproj/WebCore/WebCore.vcproj:
2505         * bridge/win/FrameWin.cpp:
2506         (WebCore::FrameWin::FrameWin):
2507         (WebCore::FrameWin::submitForm):
2508         * page/ResourceRequest.h:
2509         (WebCore::ResourceRequest::addHTTPHeaderField):
2510         * platform/win/TemporaryLinkStubs.cpp:
2511         (WebCore::Slider::~Slider):
2512         (WebCore::Slider::setMinValue):
2513         (WebCore::searchableIndexIntroduction):
2514         (WebCore::findNextSentenceFromIndex):
2515         (WebCore::findSentenceBoundary):
2516         (WebCore::findNextWordFromIndex):
2517         (WebCore::FrameWin::getObjectInstanceForWidget):
2518         (WebCore::FrameWin::getEmbedInstanceForWidget):
2519         (WebCore::FrameWin::runJavaScriptPrompt):
2520         (WebCore::FrameWin::restoreDocumentState):
2521         (WebCore::FrameWin::partClearedInBegin):
2522         (WebCore::FrameWin::createEmptyDocument):
2523         (WebCore::FrameWin::overrideMediaType):
2524         (WebCore::FrameWin::markedTextRange):
2525         (WebCore::FrameWin::passSubframeEventToSubframe):
2526         (WebCore::FrameWin::lastEventIsMouseUp):
2527         (WebCore::FrameWin::addMessageToConsole):
2528         (WebCore::FrameWin::shouldChangeSelection):
2529         (WebCore::FrameWin::respondToChangedSelection):
2530         (WebCore::FrameWin::createFrame):
2531         (WebCore::FrameWin::saveDocumentState):
2532         (WebCore::FrameWin::clearUndoRedoOperations):
2533         (WebCore::FrameWin::incomingReferrer):
2534         (WebCore::FrameWin::markMisspellingsInAdjacentWords):
2535         (WebCore::FrameWin::respondToChangedContents):
2536         (WebCore::FrameWin::handledOnloadEvents):
2537         (WebCore::FrameWin::createPlugin):
2538         (WebCore::FrameWin::objectContentType):
2539         (WebCore::screenDepthPerComponent):
2540         (WebCore::screenIsMonochrome):
2541         (WebCore::historyContains):
2542         (WebCore::submitButtonDefaultLabel):
2543         (WebCore::inputElementAltText):
2544         (WebCore::resetButtonDefaultLabel):
2545         (WebCore::fileButtonChooseFileLabel):
2546         (WebCore::fileButtonNoFileSelectedLabel):
2547         (WebCore::defaultLanguage):
2548         (WebCore::findWordBoundary):
2549         (WebCore::PlugInInfoStore::createPluginInfoForPluginAtIndex):
2550         (WebCore::PlugInInfoStore::supportsMIMEType):
2551         (WebCore::refreshPlugins):
2552         (WebCore::ResourceLoader::assembleResponseHeaders):
2553         (WebCore::ResourceLoader::retrieveResponseEncoding):
2554         (WebCore::ResourceLoader::startHTTPRequest):
2555         (WebCore::TextField::TextField):
2556         (WebCore::focusRingColor):
2557         (WebCore::setFocusRingColorChangeFunction):
2558         (WebCore::PopupMenu::~PopupMenu):
2559         (WebCore::PopupMenu::hide):
2560
2561 2006-10-20  Rob Buis  <buis@kde.org>
2562
2563         Reviewed by Darin.
2564
2565         http://bugs.webkit.org/show_bug.cgi?id=11303
2566         Path::transform() should be implemented on Qt build
2567
2568         Use QPainterPath API to implement Path::transform.
2569         This fixes svg/custom/clip-path-with-transform.svg on
2570         the qt build.
2571
2572         * platform/qt/PathQt.cpp:
2573         (WebCore::Path::transform):
2574
2575 2006-10-20  Rob Buis  <buis@kde.org>
2576
2577         Reviewed by Mitz.
2578
2579         http://bugs.webkit.org/show_bug.cgi?id=11217
2580         Cleanup svg coding style
2581
2582         Cleanup coding style in svg clipping and painting classes.
2583
2584         * ksvg2/svg/SVGClipPathElement.cpp:
2585         (WebCore::SVGClipPathElement::parseMappedAttribute):
2586         (WebCore::SVGClipPathElement::canvasResource):
2587         * ksvg2/svg/SVGClipPathElement.h:
2588         * ksvg2/svg/SVGMarkerElement.cpp:
2589         (WebCore::SVGMarkerElement::SVGMarkerElement):
2590         (WebCore::SVGMarkerElement::parseMappedAttribute):
2591         (WebCore::SVGMarkerElement::setOrientToAngle):
2592         (WebCore::SVGMarkerElement::canvasResource):
2593         * ksvg2/svg/SVGMarkerElement.h:
2594         (WebCore::SVGMarkerElement::rendererIsNeeded):
2595         * ksvg2/svg/SVGMaskElement.cpp:
2596         (WebCore::SVGMaskElement::SVGMaskElement):
2597         (WebCore::SVGMaskElement::parseMappedAttribute):
2598         (WebCore::SVGMaskElement::drawMaskerContent):
2599         (WebCore::SVGMaskElement::canvasResource):
2600         * ksvg2/svg/SVGMaskElement.h:
2601         (WebCore::SVGMaskElement::rendererIsNeeded):
2602         * ksvg2/svg/SVGPaint.cpp:
2603         (WebCore::SVGPaint::setPaint):
2604         (WebCore::SVGPaint::cssText):
2605         * ksvg2/svg/SVGPaint.h:
2606
2607 2006-10-20  David Hyatt  <hyatt@apple.com>
2608
2609         Make sure to do the code that checks the repeatInterval before the timer has been
2610         deleted. (Duh.)
2611
2612         Reviewed by andersca
2613
2614         * bindings/js/kjs_window.cpp:
2615         (KJS::DOMWindowTimer::setNestingLevel):
2616         (KJS::Window::timerFired):
2617         (KJS::DOMWindowTimer::fired):
2618         * platform/Timer.h:
2619
2620 2006-10-20  David Hyatt  <hyatt@apple.com>
2621
2622         Honor tiny timer intervals for JS timeouts as they are nested until a cutoff point is reached.
2623         At that point clamp to 10ms to prevent excessive CPU usage.
2624
2625         Reviewed by anders
2626
2627         * bindings/js/kjs_window.cpp:
2628         (KJS::DOMWindowTimer::DOMWindowTimer):
2629         (KJS::DOMWindowTimer::nestingLevel):
2630         (KJS::Window::installTimeout):
2631         (KJS::Window::pauseTimeouts):
2632         (KJS::Window::resumeTimeouts):
2633         (KJS::DOMWindowTimer::fired):
2634         * platform/Timer.h:
2635         (WebCore::TimerBase::startRepeating):
2636         (WebCore::TimerBase::startOneShot):
2637         (WebCore::TimerBase::repeatInterval):
2638         (WebCore::TimerBase::augmentRepeatInterval):
2639         (WebCore::TimerBase::inHeap):
2640         (WebCore::Timer::Timer):
2641         (WebCore::Timer::fired):
2642
2643 2006-10-20  Steve Falkenburg  <sfalken@apple.com>
2644
2645         Build fix
2646
2647         * ksvg2/svg/SVGAElement.cpp:
2648         (WebCore::SVGAElement::defaultEventHandler):
2649
2650 2006-10-19  Steve Falkenburg  <sfalken@apple.com>
2651
2652         Reviewed by Adam.
2653
2654         Use GetKeyState rather than GetAsyncKeyState since we're
2655         calling in these cases in direct response to an event, and want the
2656         key state associated with that event.
2657         
2658         Pass triggering event to url selection method.
2659         
2660         * bridge/mac/FrameMac.h: Add triggeringEvent parameter
2661         * bridge/mac/FrameMac.mm:
2662         (WebCore::FrameMac::urlSelected): Add triggeringEvent parameter
2663         * bridge/win/FrameWin.cpp:
2664         (WebCore::FrameWin::urlSelected): Add triggeringEvent parameter
2665         * bridge/win/FrameWin.h: Add triggeringEvent parameter
2666         * html/HTMLAnchorElement.cpp:
2667         (WebCore::HTMLAnchorElement::defaultEventHandler): Pass triggering event to URL selection method
2668         * page/Frame.cpp:
2669         (WebCore::Frame::changeLocation): Add 0 as triggeringEvent
2670         (WebCore::Frame::urlSelected): Pass through triggeringEvent
2671         * page/Frame.h: Add triggeringEvent parameter to urlSelected methods
2672         * platform/win/KeyEventWin.cpp:
2673         (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent): Use GetKeyState instead of GetAsyncKeyState
2674         * platform/win/MouseEventWin.cpp: Use GetKeyState instead of GetAsyncKeyState
2675         (WebCore::PlatformMouseEvent::PlatformMouseEvent):
2676
2677 2006-10-19  David Hyatt  <hyatt@apple.com>
2678
2679         Correct typos from changing "flush" to "prune" using automated search/replace.
2680
2681         Change the cache heuristic for flushing to allow a higher watermark before initiating an
2682         aggressive prune.  This ensures that small cache sizes are no worse in terms of performance
2683         than the old buggy cache.
2684
2685         Make sizes unsigned instead of ints in the cache's APIs and member variables.
2686
2687         * loader/Cache.cpp:
2688         (WebCore::Cache::prune):
2689         (WebCore::Cache::setMaximumSize):
2690         * loader/Cache.h:
2691         (WebCore::Cache::maximumSize):
2692
2693 2006-10-19  Anders Carlsson  <acarlsson@apple.com>
2694
2695         Reviewed by Daddy Hyatt.
2696
2697         Use a real hash map for the headers.
2698
2699         * loader/LoaderFunctions.h:
2700         * loader/mac/LoaderFunctionsMac.mm:
2701         (WebCore::ServeSynchronousRequest):
2702         * platform/ResourceLoader.cpp:
2703         (WebCore::ResourceLoader::setRequestHeaders):
2704         (WebCore::ResourceLoader::requestHeaders):
2705         * platform/ResourceLoader.h:
2706         * platform/ResourceLoaderInternal.h:
2707         * platform/mac/ResourceLoaderMac.mm:
2708         (WebCore::ResourceLoader::start):
2709         * xml/xmlhttprequest.cpp:
2710         (WebCore::XMLHttpRequest::open):
2711         (WebCore::XMLHttpRequest::send):
2712         (WebCore::XMLHttpRequest::setRequestHeader):
2713         (WebCore::XMLHttpRequest::getRequestHeader):
2714         * xml/xmlhttprequest.h:
2715
2716 2006-10-19  Adam Roben  <aroben@apple.com>
2717
2718         Reviewed by Ada.
2719
2720         Pippity-poppity popup tweaks.
2721
2722         * WebCore.xcodeproj/project.pbxproj: Removed PopupMenu.cpp from project.
2723         * html/HTMLSelectElement.cpp:
2724         (WebCore::HTMLSelectElement::setSelectedIndex): Only fire onChange if
2725         requested and the new index is actually different than the old one.
2726         * platform/IntPoint.h: Added another casting operator.
2727         * platform/PopupMenu.cpp: Removed. The code in here, while
2728         platform-independent, was only useful for the NSPopUpButtonCell
2729         implementation of popup menus, so I've moved it to PopupMenuMac.mm.
2730         * platform/PopupMenu.h: Moved the definition of PopupMenu::create into
2731         the header since it's fairly simple. Made some more methods private now
2732         that we don't have subclasses and virtual methods anymore.
2733         (WebCore::PopupMenu::create):
2734         (WebCore::PopupMenu::menuList):
2735         (WebCore::PopupMenu::itemHeight):
2736         (WebCore::PopupMenu::windowRect):
2737         (WebCore::PopupMenu::listIndexAtPoint):
2738         (WebCore::PopupMenu::focusedIndex):
2739         (WebCore::PopupMenu::setWasClicked):
2740         (WebCore::PopupMenu::wasClicked):
2741         (WebCore::PopupMenu::setScrollOffset):
2742         (WebCore::PopupMenu::scrollOffset):
2743         (WebCore::PopupMenu::wheelDelta):
2744         * platform/mac/PopupMenuMac.mm: Added the code from PopupMenu.cpp.
2745         (WebCore::PopupMenu::populate): Call our own clear() method to clear
2746         the menu.
2747         * platform/win/IntPointWin.cpp: New casting operator.
2748         (WebCore::IntPoint::IntPoint):
2749         (WebCore::IntPoint::operator POINTS):
2750
2751 2006-10-19  Adam Roben  <aroben@apple.com>
2752
2753         Reviewed by Darin.
2754
2755         Cleaning up Document::nextFocusNode and Document::previousFocusNode.
2756
2757         * dom/Document.cpp:
2758         (WebCore::Document::nextFocusNode):
2759         (WebCore::Document::previousFocusNode):
2760
2761 2006-10-19  Maciej Stachowiak  <mjs@apple.com>
2762
2763         Reviewed by Geoff.
2764
2765         - implement new ResourceRequest API and fix up code as appropriate
2766         
2767         * bindings/js/kjs_window.cpp:
2768         (KJS::createNewWindow):
2769         (KJS::WindowFunc::callAsFunction):
2770         * bridge/mac/BrowserExtensionMac.mm:
2771         (WebCore::BrowserExtensionMac::createNewWindow):
2772         * bridge/mac/FrameMac.mm:
2773         (WebCore::FrameMac::submitForm):
2774         (WebCore::FrameMac::openURLRequest):
2775         (WebCore::FrameMac::urlSelected):
2776         * bridge/mac/WebCoreFrameBridge.mm:
2777         (-[WebCoreFrameBridge openURL:reload:contentType:refresh:lastModified:pageCache:]):
2778         * dom/DOMImplementation.cpp:
2779         (WebCore::addString):
2780         (WebCore::isSVG10Feature):
2781         (WebCore::isSVG11Feature):
2782         * dom/Document.h:
2783         * editing/CommandByName.cpp:
2784         * editing/JSEditor.cpp:
2785         * page/Frame.cpp:
2786         (WebCore::Frame::changeLocation):
2787         (WebCore::Frame::urlSelected):
2788         (WebCore::Frame::requestFrame):
2789         (WebCore::Frame::submitForm):
2790         * page/Frame.h:
2791         * page/FramePrivate.h:
2792         * page/ResourceRequest.h:
2793         (WebCore::):
2794         (WebCore::ResourceRequest::ResourceRequest):
2795         (WebCore::ResourceRequest::cachePolicy):
2796         (WebCore::ResourceRequest::setCachePolicy):
2797         (WebCore::ResourceRequest::timeoutInterval):
2798         (WebCore::ResourceRequest::setTimeoutInterval):
2799         (WebCore::ResourceRequest::mainDocumentURL):
2800         (WebCore::ResourceRequest::setMainDocumentURL):
2801         (WebCore::ResourceRequest::httpMethod):
2802         (WebCore::ResourceRequest::setHTTPMethod):
2803         (WebCore::ResourceRequest::httpHeaderField):
2804         (WebCore::ResourceRequest::setHTTPHeaderField):
2805         (WebCore::ResourceRequest::httpContentType):
2806         (WebCore::ResourceRequest::setHTTPContentType):
2807         (WebCore::ResourceRequest::httpReferrer):
2808         (WebCore::ResourceRequest::setHTTPReferrer):
2809         (WebCore::ResourceRequest::httpUserAgent):
2810         (WebCore::ResourceRequest::setHTTPUserAgent):
2811         (WebCore::ResourceRequest::httpBody):
2812         (WebCore::ResourceRequest::setHTTPBody):
2813         (WebCore::ResourceRequest::addHTTPHeaderField):
2814         * platform/FontCache.cpp:
2815         (WebCore::computeHash):
2816         * platform/StringHash.h:
2817         (WTF::):
2818         * platform/StringImpl.cpp:
2819         (WebCore::equalIgnoringCase):
2820         * rendering/RenderPartObject.cpp:
2821         (WebCore::RenderPartObject::updateWidget):
2822
2823 2006-10-19  Justin Garcia  <justin.garcia@apple.com>
2824
2825         Reviewed by levi
2826         
2827         <rdar://problem/4447885>
2828         API: WebView should have a method something like incrementLeftMarginBy: or indentBy:
2829         
2830         Fixed indent/outdent to only increment the left margin, to match other browsers.
2831         Used blockquote class="webkit-indent-blockquote" to do this.  Mail can now
2832         implement indent/outdent by customizing the appearance of these blockquotes,
2833         instead of using a new API.
2834         
2835         * css/html4.css: Added margin: 0 0 0 40px for webkit-indent-blockquotes.
2836         * editing/IndentOutdentCommand.cpp:
2837         (WebCore::indentBlockquoteString): Added.
2838         (WebCore::createIndentBlockquoteElement): Added.
2839         (WebCore::isIndentBlockquote): Added.
2840         (WebCore::isListOrBlockquote): Added.
2841         (WebCore::IndentOutdentCommand::IndentOutdentCommand):
2842         (WebCore::IndentOutdentCommand::prepareBlockquoteLevelForInsertion): Fixed
2843         a bug in the code that added an extra br if the placeholder collapsed upon insertion.
2844         Used the new indentBlockquote checks and enclosing element getters.  
2845         (WebCore::IndentOutdentCommand::indentRegion): Ditto.
2846         (WebCore::IndentOutdentCommand::outdentParagraph): Ditto.  Cleaned up the
2847         logic to pull the selection out of a list a bit.
2848         * editing/htmlediting.cpp:
2849         (WebCore::enclosingNodeOfType): Added this generic enclosing element getter.
2850         * editing/htmlediting.h:
2851
2852 2006-10-19  Timothy Hatcher  <timothy@apple.com>
2853
2854         Rolling out the this change since it caused a bad regression:
2855         <rdar://problem/4788524> REGRESSION: Incomplete repaint of text area when deleting (11277)
2856
2857 2006-10-12  Adele Peterson  <adele@apple.com>
2858           
2859         Reviewed by Dave Harrison.
2860           
2861         - Fixed <rdar://problem/4650813> REGRESSION: typing in a textarea in Safari is extremely slow (sample shows focus ring drawing)
2862           
2863         * rendering/RenderObject.cpp: (WebCore::RenderObject::markContainingBlocksForLayout):
2864         Make subtree layouts work for textareas as well as text fields.
2865
2866 2006-10-19  Nikolas Zimmermann  <zimmermann@kde.org>
2867
2868         Reviewed and landed by Anders.
2869
2870         Fix Qt/Linux build.
2871
2872         * CMakeLists.txt:
2873         * loader/Cache.h:
2874         * platform/qt/BrowserExtensionQt.cpp:
2875         * platform/qt/BrowserExtensionQt.h:
2876         * platform/qt/CursorQt.cpp:
2877         (WebCore::pointerCursor):
2878         * platform/qt/LoaderFunctionsQt.cpp:
2879         (WebCore::NumberOfPendingOrLoadingRequests):
2880         (WebCore::CheckCacheObjectStatus):
2881         * platform/qt/ResourceLoaderQt.cpp:
2882         (WebCore::ResourceLoader::retrieveResponseEncoding):
2883         (WebCore::ResourceLoader::receivedResponse):
2884
2885 2006-10-19  Sam Weinig  <sam.weinig@gmail.com>
2886
2887         Reviewed by ap.
2888
2889         Win32 build fix.
2890
2891         * bridge/win/FrameWin.cpp:
2892         * bridge/win/FrameWin.h:
2893         * platform/win/TemporaryLinkStubs.cpp:
2894         (WebCore::ResourceLoader::retrieveResponseEncoding):
2895
2896 2006-10-19  Alexey Proskuryakov  <ap@nypop.com>
2897
2898         Reviewed by Mitz.
2899
2900         http://bugs.webkit.org/show_bug.cgi?id=11141
2901         REGRESSION(r16681-r16691): CSS '@import' doesn't respect HTML Base element
2902
2903         Undo one misguided change made in bug 11011 - stop setting inline stylesheet's href
2904         to document URL. This matches WinIE and partially matches Firefox - although the latter
2905         reports the href as if it were inherited, it still doesn't use it when resolving URIs in
2906         @import rules.
2907
2908         Test: http/tests/uri/css-href.php
2909
2910         * html/HTMLStyleElement.cpp:
2911         (WebCore::HTMLStyleElement::childrenChanged):
2912         * ksvg2/svg/SVGStyleElement.cpp:
2913         (WebCore::SVGStyleElement::childrenChanged):
2914
2915 2006-10-19  Anders Carlsson  <acarlsson@apple.com>
2916
2917         * loader/Cache.cpp:
2918         Get rid of #include "loader.h", Cache.h already includes this and it breaks on operating systems
2919         with case-sensitive file systems.
2920
2921 2006-10-19  Anders Carlsson  <acarlsson@apple.com>
2922
2923         Reviewed by Maciej, Brady.
2924
2925         Remove "charset" from the ResourceLoader metadata map and use 
2926         a getter function instead. Also, rename charset to encoding in a couple of places.
2927         
2928         * loader/CachedCSSStyleSheet.cpp:
2929         (WebCore::CachedCSSStyleSheet::setEncoding):
2930         * loader/CachedCSSStyleSheet.h:
2931         * loader/CachedResource.h:
2932         (WebCore::CachedResource::setEncoding):
2933         * loader/CachedScript.cpp:
2934         (WebCore::CachedScript::setEncoding):
2935         * loader/CachedScript.h:
2936         * loader/CachedXBLDocument.cpp:
2937         (WebCore::CachedXBLDocument::setEncoding):
2938         * loader/CachedXBLDocument.h:
2939         * loader/CachedXSLStyleSheet.cpp:
2940         (WebCore::CachedXSLStyleSheet::setEncoding):
2941         * loader/CachedXSLStyleSheet.h:
2942         * loader/loader.cpp:
2943         (WebCore::Loader::receivedResponse):
2944         * platform/ResourceLoader.cpp:
2945         (WebCore::ResourceLoader::responseEncoding):
2946         (WebCore::ResourceLoader::queryMetaData):
2947         * platform/ResourceLoader.h:
2948         * platform/ResourceLoaderInternal.h:
2949         (WebCore::ResourceLoaderInternal::ResourceLoaderInternal):
2950         * platform/mac/ResourceLoaderMac.mm:
2951         (WebCore::ResourceLoader::retrieveResponseEncoding):
2952         (WebCore::ResourceLoader::receivedResponse):
2953         * xml/xmlhttprequest.cpp:
2954         (WebCore::XMLHttpRequest::receivedData):
2955
2956 2006-10-19  David Hyatt  <hyatt@apple.com>
2957
2958         Rewrite of the WebCore memory cache.  The following changes have been made (along with many more):
2959
2960         (1) Referenced objects are now also cached.
2961
2962         (2) Pruning of the cache will occur once the cache is both full and in addition
2963         more than half full with unreferenced objects.
2964
2965         (3) The prune is much more aggressive now, since referenced objects are counted when
2966         pruning.  The cache will therefore often prune out every unreferenced object if lots of
2967         windows/tabs are open.
2968
2969         (4) Consolidated the request methods for various types of resources to go through a single
2970         requestResource bottleneck function.
2971
2972         (5) deref on CachedResource is no longer virtual, since the implementation in every subclass was
2973         identical.
2974
2975         (6) Changed "object" to "resource" everywhere.
2976
2977         (7) The Cache is now an actual object, obtained via cache().
2978
2979         (8) Fixed bugs with the autoload images preference so that it would really work properly when disabled
2980         and enabled.
2981
2982         (9) Tweaked ImageDocuments to set up the status properly for the CachedResource that they use.
2983
2984         (10) Fixed the LRU-SP algorithm so that the LRU aspect really kicks in (by leaving the live objects
2985         in the LRU lists).  Also fixed a bug with the "-SP" part of the algorithm where the access count was
2986         being incorrectly weighted too much due to a math error.
2987
2988         (11) Fixed a bug where the old cache could grow without bound because it didn't know anything about
2989         the size of referenced resources.
2990
2991         Reviewed by Maciej, bradee-oh
2992
2993         * bridge/mac/WebCoreCache.mm:
2994         (+[WebCoreCache statistics]):
2995         (+[WebCoreCache empty]):
2996         (+[WebCoreCache setDisabled:]):
2997         * bridge/mac/WebCoreFrameBridge.mm:
2998         (-[WebCoreFrameBridge initMainFrameWithPage:]):
2999         (-[WebCoreFrameBridge getData:andResponse:forURL:]):
3000         (-[WebCoreFrameBridge getAllResourceDatas:andResponses:]):
3001         * css/CSSImageValue.cpp:
3002         (WebCore::CSSImageValue::image):
3003         * dom/XMLTokenizer.cpp:
3004         (WebCore::openFunc):
3005         * html/HTMLImageLoader.cpp:
3006         (WebCore::HTMLImageLoader::updateFromElement):
3007         * loader/Cache.cpp:
3008         (WebCore::cache):
3009         (WebCore::Cache::Cache):
3010         (WebCore::createResource):
3011         (WebCore::Cache::requestResource):
3012         (WebCore::Cache::resourceForURL):
3013         (WebCore::Cache::prune):
3014         (WebCore::Cache::setMaximumSize):
3015         (WebCore::Cache::remove):
3016         (WebCore::Cache::addDocLoader):
3017         (WebCore::Cache::removeDocLoader):
3018         (WebCore::fastLog2):
3019         (WebCore::Cache::lruListFor):
3020         (WebCore::Cache::removeFromLRUList):
3021         (WebCore::Cache::insertInLRUList):
3022         (WebCore::Cache::resourceAccessed):
3023         (WebCore::Cache::adjustSize):
3024         (WebCore::Cache::getStatistics):
3025         (WebCore::Cache::setDisabled):
3026         * loader/Cache.h:
3027         (WebCore::LRUList::LRUList):
3028         (WebCore::Cache::loader):
3029         (WebCore::Cache::maximumSize):
3030         (WebCore::Cache::disabled):
3031         (WebCore::Cache::addToLiveObjectSize):
3032         (WebCore::Cache::removeFromLiveObjectSize):
3033         (WebCore::Cache::TypeStatistic::TypeStatistic):
3034         * loader/CachedCSSStyleSheet.cpp:
3035         (WebCore::CachedCSSStyleSheet::CachedCSSStyleSheet):
3036         * loader/CachedCSSStyleSheet.h:
3037         * loader/CachedImage.cpp:
3038         (WebCore::CachedImage::CachedImage):
3039         (WebCore::CachedImage::~CachedImage):
3040         (WebCore::brokenImage):
3041         (WebCore::nullImage):
3042         (WebCore::CachedImage::image):
3043         (WebCore::CachedImage::data):
3044         * loader/CachedImage.h:
3045         (WebCore::CachedImage::stillNeedsLoad):
3046         * loader/CachedResource.cpp:
3047         (WebCore::CachedResource::CachedResource):
3048         (WebCore::CachedResource::~CachedResource):
3049         (WebCore::CachedResource::finish):
3050         (WebCore::CachedResource::setExpireDate):
3051         (WebCore::CachedResource::isExpired):
3052         (WebCore::CachedResource::setRequest):
3053         (WebCore::CachedResource::ref):
3054         (WebCore::CachedResource::deref):
3055         (WebCore::CachedResource::setSize):
3056         * loader/CachedResource.h:
3057         (WebCore::CachedResource::):
3058         (WebCore::CachedResource::setCharset):
3059         (WebCore::CachedResource::url):
3060         (WebCore::CachedResource::type):
3061         (WebCore::CachedResource::referenced):
3062         (WebCore::CachedResource::count):
3063         (WebCore::CachedResource::status):
3064         (WebCore::CachedResource::size):
3065         (WebCore::CachedResource::isLoaded):
3066         (WebCore::CachedResource::setLoading):
3067         (WebCore::CachedResource::isImage):
3068         (WebCore::CachedResource::accessCount):
3069         (WebCore::CachedResource::increaseAccessCount):
3070         (WebCore::CachedResource::setInCache):
3071         (WebCore::CachedResource::inCache):
3072         (WebCore::CachedResource::cachePolicy):
3073         (WebCore::CachedResource::response):
3074         (WebCore::CachedResource::allData):
3075         (WebCore::CachedResource::canDelete):
3076         (WebCore::CachedResource::schedule):
3077         (WebCore::CachedResource::accept):
3078         (WebCore::CachedResource::setAccept):
3079         * loader/CachedScript.cpp:
3080         (WebCore::CachedScript::CachedScript):
3081         * loader/CachedScript.h:
3082         * loader/CachedXBLDocument.cpp:
3083         * loader/CachedXBLDocument.h:
3084         * loader/CachedXSLStyleSheet.cpp:
3085         (WebCore::CachedXSLStyleSheet::CachedXSLStyleSheet):
3086         * loader/CachedXSLStyleSheet.h:
3087         * loader/DocLoader.cpp:
3088         (WebCore::DocLoader::DocLoader):
3089         (WebCore::DocLoader::~DocLoader):
3090         (WebCore::DocLoader::checkForReload):
3091         (WebCore::DocLoader::requestImage):
3092         (WebCore::DocLoader::requestCSSStyleSheet):
3093         (WebCore::DocLoader::requestScript):
3094         (WebCore::DocLoader::requestXSLStyleSheet):
3095         (WebCore::DocLoader::requestXBLDocument):
3096         (WebCore::DocLoader::requestResource):
3097         (WebCore::DocLoader::setAutoLoadImages):
3098         (WebCore::DocLoader::removeCachedResource):
3099         * loader/DocLoader.h:
3100         (WebCore::DocLoader::cachedResource):
3101         (WebCore::DocLoader::allCachedResources):
3102         (WebCore::DocLoader::autoLoadImages):
3103         (WebCore::DocLoader::cachePolicy):
3104         (WebCore::DocLoader::expireDate):
3105         (WebCore::DocLoader::frame):
3106         (WebCore::DocLoader::doc):
3107         (WebCore::DocLoader::loadInProgress):
3108         * loader/ImageDocument.cpp:
3109         (WebCore::ImageTokenizer::finish):
3110         * loader/loader.cpp:
3111         (WebCore::Loader::receivedAllData):
3112         (WebCore::Loader::cancelRequests):
3113         * loader/mac/LoaderFunctionsMac.mm:
3114         (WebCore::NumberOfPendingOrLoadingRequests):
3115         (WebCore::CheckCacheObjectStatus):
3116         * page/Frame.cpp:
3117         (WebCore::UserStyleSheetLoader::UserStyleSheetLoader):
3118         (WebCore::Frame::Frame):
3119         (WebCore::Frame::stopLoading):
3120         (WebCore::Frame::setAutoLoadImages):
3121         (WebCore::Frame::autoLoadImages):
3122         (WebCore::Frame::begin):
3123         (WebCore::Frame::checkCompleted):
3124         (WebCore::Frame::reparseConfiguration):
3125         * page/Frame.h:
3126         * xml/XSLTProcessor.cpp:
3127         (WebCore::docLoaderFunc):
3128         * xml/xmlhttprequest.cpp:
3129         (WebCore::XMLHttpRequest::send):
3130
3131 2006-10-18  Maciej Stachowiak  <mjs@apple.com>
3132
3133         Reviewed by Geoff.
3134
3135         - remove vestiges of KXMLCore name (former name of WTF).
3136
3137         * config.h:
3138
3139 2006-10-18  Geoffrey Garen  <ggaren@apple.com>
3140
3141         Reviewed by Beth.
3142         
3143         Fixed http://bugs.webkit.org/show_bug.cgi?id=11222
3144
3145         Some global JS objects lacked references to their property hashtables,
3146         so for-in enumeration didn't work. I added the references, and then removed
3147         a few bogus properties from the tables. The bogus ones got in there through
3148         bit rot.
3149         
3150         We should come up with some solution to these hand-written bindings bugs.
3151         Maybe we could use a script to autogenerate them or something.
3152
3153         * bindings/js/kjs_window.cpp:
3154         (KJS::):
3155         (KJS::History::getValueProperty):
3156
3157 2006-10-18  Adam Roben  <aroben@apple.com>
3158
3159         Reviewed by Brady.
3160
3161         Change Shift-Tab to generate keyIdentifier U+000009 (Tab) instead of
3162         U+000019 (Backtab). This matches our windowsKeyCode for this key
3163         combination.
3164
3165         * platform/mac/KeyEventMac.mm:
3166         (WebCore::keyIdentifierForKeyEvent):
3167
3168 2006-10-18  Steve Falkenburg  <sfalken@apple.com>
3169
3170         Reviewed by Adam, Brady.
3171
3172         Loader tweaks.
3173
3174         * platform/cf/ResourceLoaderCFNet.cpp:
3175         (WebCore::didFinishLoading):
3176         (WebCore::didFail):
3177         (WebCore::didReceiveChallenge):
3178         (WebCore::runLoaderThread):
3179         (WebCore::ResourceLoader::start):
3180         (WebCore::ResourceLoader::cancel):
3181
3182 2006-10-18  Timothy Hatcher  <timothy@apple.com>
3183
3184         Reviewed by Darin.
3185
3186         <rdar://problem/4752138> Manipulating popup in HTML page crashed Xcode
3187
3188         - Store the Mac popup button cell as a RetainPtr to prevent GC collection.
3189         - Convert more ObjC local statics and member variables to use RetainPtr.
3190         - Convert more CFRetain/CFRelease to HardRetain/HardRelease.
3191
3192         * bindings/objc/DOM.mm:
3193         (ObjCNodeFilterCondition::ObjCNodeFilterCondition): use HardRetain and not CFRetain
3194         (ObjCNodeFilterCondition::~ObjCNodeFilterCondition): use HardRelease and not CFRelease
3195         * bridge/mac/AXObjectCacheMac.mm:
3196         (WebCore::AXObjectCache::~AXObjectCache): use HardRelease and not CFRelease
3197         (WebCore::AXObjectCache::get): use HardRetain and not CFRetain
3198         (WebCore::AXObjectCache::remove): use HardRelease and not CFRelease
3199         * bridge/mac/WebCoreFrameBridge.mm:
3200         (+[WebCoreFrameBridge supportedImageResourceMIMETypes]): use RetainPtr
3201         (+[WebCoreFrameBridge supportedImageMIMETypes]): ditto
3202         * bridge/mac/WebCoreIconDatabaseBridge.mm:
3203         (+[WebCoreIconDatabaseBridge sharedInstance]): use RetainPtr
3204         * platform/PopupMenu.h: renamed popup to m_popup and switched to RetainPtr<NSPopUpButtonCell>
3205         * platform/cf/RetainPtr.h:
3206         (WTF::::operator): implement a missing operator= template function
3207         * platform/mac/PopupMenuMac.mm:
3208         (WebCore::PopupMenu::PopupMenu): remove nil initialization
3209         (WebCore::PopupMenu::~PopupMenu): use .get(), remove release message and rename to m_popup
3210         (WebCore::PopupMenu::clear): use .get() when sending a message and rename to m_popup
3211         (WebCore::PopupMenu::populate): ditto 
3212         (WebCore::PopupMenu::show): ditto
3213         (WebCore::PopupMenu::hide): ditto
3214         (WebCore::PopupMenu::addSeparator): ditto
3215         (WebCore::PopupMenu::addGroupLabel): ditto
3216         (WebCore::PopupMenu::addOption): ditto
3217
3218 2006-10-18  Geoffrey Garen  <ggaren@apple.com>
3219
3220         Reviewed by Adele.
3221
3222         Fixed <rdar://problem/3673233> JavaScript timers do not fire if controls
3223         are tracking or menus are down (run loop modes)
3224
3225         I spent a few hours trying to write an automated test, but DRT doesn't
3226         seem to support it. Manual tests attached to related bugs.
3227         
3228         * bridge/mac/FrameMac.mm:
3229         (WebCore::FrameMac::passMouseDownEventToWidget):
3230         * platform/mac/SharedTimerMac.cpp:
3231         (WebCore::setSharedTimerFireTime):
3232
3233 2006-10-18  Sam Weinig  <sam.weinig@gmail.com>
3234
3235         Reviewed by Maciej.
3236
3237         More Win32 buildfix.
3238
3239         * bridge/win/FrameWin.h:
3240
3241 2006-10-18  Sam Weinig  <sam.weinig@gmail.com>
3242
3243         Reviewed by Mitz
3244
3245         Win32 build fix.
3246
3247         * bridge/win/BrowserExtensionWin.cpp:
3248         (WebCore::BrowserExtensionWin::BrowserExtensionWin):
3249         (WebCore::BrowserExtensionWin::createNewWindow):
3250         * bridge/win/BrowserExtensionWin.h:
3251         * bridge/win/FrameWin.cpp:
3252         (WebCore::FrameWin::createNewWindow):
3253         * bridge/win/FrameWin.h:
3254         * platform/win/CursorWin.cpp:
3255         * platform/win/TemporaryLinkStubs.cpp:
3256         (Image::getHBITMAP):
3257
3258 2006-10-18  Justin Garcia  <justin.garcia@apple.com>
3259
3260         Reviewed by harrison
3261         
3262         <rdar://problem/4784823>
3263         GMail Editor: Hang occurs when removing list styling on text in a rich text message
3264
3265         List removal moves the contents of every list item out of the list it's 
3266         in. When the code tried to move the contents of an empty list item (an li 
3267         with no child nodes, not even a placeholder br), moveParagraph didn't prune 
3268         the li, like it would if the li had a placeholder inside it.  So the list 
3269         removal code went into an infinite loop, continually attempting to de-list 
3270         an empty list item.
3271
3272         * editing/CompositeEditCommand.cpp:
3273         (WebCore::CompositeEditCommand::moveParagraphs): If the selection
3274         to move was empty and in an empty block that doesn't require a 
3275         placeholder to prop itself open (like a bordered div or an li), 
3276         remove it during the move.
3277
3278 2006-10-18  Adele Peterson  <adele@apple.com>
3279
3280         Reviewed by Beth.
3281
3282         - Fixed http://bugs.webkit.org/show_bug.cgi?id=11343
3283           REGRESSION (r16975): fast/events/objc-event-api is failing
3284
3285           When I moved the autoscroll code from FrameMac to Frame, I mistakingly changed the order of
3286           a call to invalidateClick.  This change moves it back to the sequence that existed before.  This allows
3287           the click count to get properly reset during a selection.
3288
3289         * page/Frame.cpp: (WebCore::Frame::handleMouseMoveEvent):
3290
3291 2006-10-17  Geoffrey Garen  <ggaren@apple.com>
3292         
3293         Reviewed by Anders.
3294         
3295         Factored common scaling code into a helper function.
3296
3297         * platform/mac/ScreenMac.mm:
3298         (WebCore::scale):
3299         (WebCore::scaleScreenRectToPageCoordinates):
3300         (WebCore::scalePageRectToScreenCoordinates):
3301
3302 2006-10-17  Steve Falkenburg  <sfalken@apple.com>
3303
3304         Build fixes
3305
3306         * bridge/win/BrowserExtensionWin.cpp:
3307         (WebCore::BrowserExtensionWin::createNewWindow):
3308         * bridge/win/BrowserExtensionWin.h:
3309         * bridge/win/FrameWin.cpp:
3310         (WebCore::FrameWin::createNewWindow):
3311         * bridge/win/FrameWin.h:
3312         * platform/gdk/BrowserExtensionGdk.h:
3313         * platform/gdk/TemporaryLinkStubs.cpp:
3314         (BrowserExtensionGdk::createNewWindow):
3315         * platform/qt/BrowserExtensionQt.cpp:
3316         (WebCore::BrowserExtensionQt::createNewWindow):
3317         * platform/qt/BrowserExtensionQt.h:
3318
3319 2006-10-17  Geoffrey Garen  <ggaren@apple.com>
3320
3321         Reviewed by Anders.
3322         
3323         Renamed WindowArgs to WindowFeatures, and moved it into its own header.
3324         ("Features" is the term of art in IE documentation. "Args" is pirate
3325         talk.)
3326
3327         * WebCore.xcodeproj/project.pbxproj:
3328         * bindings/js/kjs_window.cpp:
3329         (KJS::createNewWindow):
3330         (KJS::showModalDialog):
3331         (KJS::setWindowFeature):
3332         (KJS::parseWindowFeatures):
3333         (KJS::constrainToVisible):
3334         (KJS::WindowFunc::callAsFunction):
3335         * bridge/BrowserExtension.h:
3336         * bridge/WindowFeatures.h: Added.
3337         * bridge/mac/BrowserExtensionMac.h:
3338         * bridge/mac/BrowserExtensionMac.mm:
3339         (WebCore::BrowserExtensionMac::createNewWindow):
3340
3341 2006-10-17  Sam Weinig  <sam.weinig@gmail.com>
3342
3343         Reviewed by Tim H.
3344
3345         Patch for http://bugs.webkit.org/show_bug.cgi?id=11268
3346         Implement the Objective-C DOM bindings for SVGNumber, SVGRect, and SVGPoint
3347
3348         - Adds implementation for DOMSVGNumber, DOMSVGRect, and DOMSVGPoint.
3349
3350         - Moves the contents of ksvg/bindings/js/ to bindings/js/.
3351
3352         - Moves SVGZoomEvent.idl from ksvg/svg/ to ksvg/events/.
3353
3354         - Adds isSVGColor() and isSVGPaint() methods to StyleBase, matching 
3355           the other CSSValue classing, and allowing the bindings to allocate
3356           appropriately.
3357
3358         - Removes #ifdefs around the getBBox() method in SVGLocatable.idl allowing
3359           generation for Objective-C.
3360
3361         - Assorted style cleanups.
3362
3363         * DerivedSources.make:
3364         * WebCore.xcodeproj/project.pbxproj:
3365         * bindings/objc/DOMCSS.mm:
3366         (+[DOMCSSValue _CSSValueWith:WebCore::]):
3367         * bindings/objc/DOMEvents.mm:
3368         (+[DOMEvent _eventWith:WebCore::]):
3369         * bindings/objc/DOMSVG.h:
3370         * bindings/objc/DOMSVGNumber.mm:
3371         (-[DOMSVGNumber dealloc]):
3372         (-[DOMSVGNumber finalize]):
3373         (-[DOMSVGNumber value]):
3374         (-[DOMSVGNumber setValue:]):
3375         (-[DOMSVGNumber _SVGNumber]):
3376         (-[DOMSVGNumber _initWithFloat:]):
3377         (+[DOMSVGNumber _SVGNumberWith:]):
3378         * bindings/objc/DOMSVGPoint.mm:
3379         (-[DOMSVGPoint dealloc]):
3380         (-[DOMSVGPoint finalize]):
3381         (-[DOMSVGPoint x]):
3382         (-[DOMSVGPoint setX:]):
3383         (-[DOMSVGPoint y]):
3384         (-[DOMSVGPoint setY:]):
3385         (-[DOMSVGPoint WebCore::]):
3386         (-[DOMSVGPoint _initWithFloatPoint:WebCore::]):
3387         (+[DOMSVGPoint _SVGPointWith:WebCore::]):
3388         * bindings/objc/DOMSVGRect.mm:
3389         (-[DOMSVGRect dealloc]):
3390         (-[DOMSVGRect finalize]):
3391         (-[DOMSVGRect x]):
3392         (-[DOMSVGRect setX:]):
3393         (-[DOMSVGRect y]):
3394         (-[DOMSVGRect setY:]):
3395         (-[DOMSVGRect width]):
3396         (-[DOMSVGRect setWidth:]):
3397         (-[DOMSVGRect height]):
3398         (-[DOMSVGRect setHeight:]):
3399         (-[DOMSVGRect WebCore::]):
3400         (-[DOMSVGRect _initWithFloatRect:WebCore::]):
3401         (+[DOMSVGRect _SVGRectWith:WebCore::]):
3402         * bindings/scripts/CodeGeneratorObjC.pm:
3403         * css/StyleBase.h:
3404         (WebCore::StyleBase::isSVGColor):
3405         (WebCore::StyleBase::isSVGPaint):
3406         * ksvg2/bindings/js/JSSVGElementWrapperFactory.cpp: Removed.
3407         * ksvg2/bindings/js/JSSVGElementWrapperFactory.h: Removed.
3408         * ksvg2/bindings/js/JSSVGNumber.cpp: Removed.
3409         * ksvg2/bindings/js/JSSVGNumber.h: Removed.
3410         * ksvg2/bindings/js/JSSVGPoint.cpp: Removed.
3411         * ksvg2/bindings/js/JSSVGPoint.h: Removed.
3412         * ksvg2/bindings/js/JSSVGRect.cpp: Removed.
3413         * ksvg2/bindings/js/JSSVGRect.h: Removed.
3414         * ksvg2/svg/SVGColor.h:
3415         (WebCore::SVGColor::isSVGColor):
3416         * ksvg2/svg/SVGFECompositeElement.idl:
3417         * ksvg2/svg/SVGFEFloodElement.idl:
3418         * ksvg2/svg/SVGLocatable.idl:
3419         * ksvg2/svg/SVGMarkerElement.idl:
3420         * ksvg2/svg/SVGPaint.h:
3421         (WebCore::SVGPaint::isSVGPaint):
3422         * ksvg2/svg/SVGRectElement.idl:
3423         * ksvg2/svg/SVGZoomEvent.idl: Removed.
3424
3425 2006-10-17  David Hyatt  <hyatt@apple.com>
3426
3427         Prepare for the elimination of the RenderLayer for <html> elements.  The layer is still present,
3428         but this patch makes everything work without a root layer being around.
3429
3430         Reviewed by beth
3431
3432         * rendering/RenderBlock.cpp:
3433         (WebCore::RenderBlock::paint):
3434         (WebCore::RenderBlock::paintChildren):
3435         (WebCore::RenderBlock::nodeAtPoint):
3436         * rendering/RenderLayer.cpp:
3437         (WebCore::frameVisibleRect):
3438         (WebCore::RenderLayer::hitTest):
3439         (WebCore::RenderLayer::hitTestLayer):
3440         (WebCore::RenderLayer::intersectsDamageRect):
3441         * rendering/RenderObject.cpp:
3442         (WebCore::RenderObject::setInnerNode):
3443         * rendering/RenderView.cpp:
3444         (WebCore::RenderView::paint):
3445
3446 2006-10-17  David Hyatt  <hyatt@apple.com>
3447
3448         Back out my previous patch to the WebCore memory cache.
3449
3450         * loader/Cache.cpp:
3451         (WebCore::Cache::flush):
3452         (WebCore::Cache::setSize):
3453         (WebCore::Cache::getLRUListFor):
3454         (WebCore::Cache::removeFromLRUList):
3455         (WebCore::Cache::insertInLRUList):
3456         * loader/Cache.h:
3457         * loader/CachedCSSStyleSheet.cpp:
3458         (WebCore::CachedCSSStyleSheet::deref):
3459         * loader/CachedCSSStyleSheet.h:
3460         * loader/CachedImage.cpp:
3461         (WebCore::CachedImage::deref):
3462         * loader/CachedImage.h:
3463         * loader/CachedResource.cpp:
3464         (WebCore::CachedResource::setRequest):
3465         (WebCore::CachedResource::deref):
3466         * loader/CachedResource.h:
3467         (WebCore::CachedResource::allowInLRUList):
3468         * loader/CachedScript.cpp:
3469         (WebCore::CachedScript::deref):
3470         * loader/CachedScript.h:
3471         * loader/CachedXBLDocument.cpp:
3472         (WebCore::CachedXBLDocument::deref):
3473         * loader/CachedXBLDocument.h:
3474         * loader/CachedXSLStyleSheet.cpp:
3475         (WebCore::CachedXSLStyleSheet::deref):
3476         * loader/CachedXSLStyleSheet.h:
3477
3478 2006-10-17  Oliver Hunt  <oliver@apple.com>
3479
3480         Reviewed by Anders.
3481
3482         Make north and east resize cursors use correct image
3483
3484         * platform/win/CursorWin.cpp:
3485         (WebCore::eastResizeCursor):
3486         (WebCore::northResizeCursor):
3487
3488 2006-10-17  Oliver Hunt  <oliver@apple.com>
3489
3490         Reviewed by Brady
3491
3492         Various cursor fixes
3493
3494         * page/FrameView.cpp:
3495         (WebCore::FrameView::handleMouseMoveEvent):
3496         * platform/Cursor.h:
3497         * platform/mac/CursorMac.mm:
3498         (WebCore::pointerCursor):
3499         * platform/win/CursorWin.cpp:
3500         (WebCore::supportsAlphaCursors):
3501         (WebCore::Cursor::Cursor):
3502         (WebCore::Cursor::~Cursor):
3503         (WebCore::pointerCursor):
3504
3505 2006-10-17  Justin Garcia  <justin.garcia@apple.com>
3506
3507         Reviewed by harrison
3508         
3509         <rdar://problem/4776665>
3510         REGRESSION: In Mail, caret is visible when the message body isn't focused
3511
3512         * page/Frame.cpp:
3513         (WebCore::Frame::paintCaret): If a caret blink timer is ever on in error
3514         (like when the frame that contains the caret isn't focused) then we don't 
3515         want to paint the caret.  We should eventually move to using a single bool
3516         for caret painting.
3517
3518 2006-10-17  Justin Garcia  <justin.garcia@apple.com>
3519
3520         Reviewed by harrison
3521         
3522         <rdar://problem/4774354>
3523         REGRESSION: In Gmail, caret reappears when dragging a selection over some text in the message body
3524
3525         Functions call recomputCaretRect to see if the caret rect has changed, 
3526         and, if it has, they invalidate (repaint) it.  recomputeCaretRect was 
3527         returning false if the caret turned into a range selection or was blown 
3528         away.
3529
3530         * editing/SelectionController.cpp:
3531         (WebCore::SelectionController::recomputeCaretRect): Don't early return if
3532         !isCaret().  Obtain the FrameView* using the m_frame pointer, because m_sel 
3533         may now be null.
3534
3535 2006-10-17  Geoffrey Garen  <ggaren@apple.com>
3536
3537         Reviewed by Brady.
3538
3539         BrowserExtension cleanup.
3540         
3541         - Removed unnecessary #include of BrowserExtension in Frame.h, added
3542         #includes to compensate in other files.
3543         
3544         - Removed unused versions of createNewWindow.
3545         
3546         * bindings/js/kjs_window.cpp:
3547         * bridge/BrowserExtension.h:
3548         * bridge/mac/BrowserExtensionMac.h:
3549         * bridge/mac/BrowserExtensionMac.mm:
3550         (WebCore::BrowserExtensionMac::createNewWindow):
3551         * bridge/mac/WebCoreFrameBridge.mm:
3552         * html/HTMLFormElement.cpp:
3553         * loader/mac/LoaderFunctionsMac.mm:
3554         * page/Frame.h:
3555         * page/FramePrivate.h:
3556
3557 2006-10-15  Geoffrey Garen  <ggaren@apple.com>
3558
3559         Reviewed by Adam.
3560         
3561         - Fixed "FIXME: Violates Liskov Substitution principle."
3562         
3563         IFRAME was never a true subclass of FRAME, since they disagreed on a
3564         number of behaviors, which, confusingly, IFRAME just overrode and contradicted. 
3565
3566         The fix here is to factor out things common to IFRAME and FRAME into a
3567         common base class, HTMLFrameElementBase.
3568         
3569         I also changed some " *" to "* " and added #includes in files that implicitly
3570         assumed that HTMLIFrameElement.h #included HTMLFrameElement.h.
3571
3572 2006-10-16  Justin Garcia  <justin.garcia@apple.com>
3573
3574         Reviewed by sullivan
3575         
3576         <rdar://problem/4776765>
3577         REGRESSION: Caret's ghost left behind after inserting a paragraph separator (11237)
3578
3579         We set m_needsLayout to false and call caretRect() in the hopes that it will give us 
3580         the old caret rect.  It in fact corrects the caret rect for an offset that it 
3581         believes is due to scrolling but which is actually due to a change in selection
3582         without an accompanying layout.  So it returns the new caret rect regardless of
3583         what m_needsLayout is set to.
3584         
3585         * editing/SelectionController.cpp:
3586         (WebCore::repaintRectForCaret): Moved the code from caretRepaintRect that
3587         adds a one pixel slop to this new function.
3588         (WebCore::SelectionController::caretRepaintRect): Moved this code to
3589         repaintRectForCaret.
3590         (WebCore::SelectionController::recomputeCaretRect): Compare the old
3591         caret rect to the new one that's computed with a fresh layout.  If
3592         they are different, invalidate both repaint rects.
3593
3594 2006-10-17  David Harrison  <harrison@apple.com>
3595
3596         Reviewed by Adele.
3597
3598         <rdar://problem/4770453> VO not honoring secure edit fields in web pages
3599
3600         * bridge/mac/WebCoreAXObject.mm:
3601         (-[WebCoreAXObject isPasswordField]):
3602         New. Checks for input with inputType() of PASSWORD.
3603         
3604         (-[WebCoreAXObject subrole]):
3605         Returns NSAccessibilitySecureTextFieldSubrole if [self isPasswordField].
3606         
3607         (-[WebCoreAXObject roleDescription]):
3608         Pass [self subrole] instead of nil when calling NSAccessibilityRoleDescription.
3609         
3610         (-[WebCoreAXObject value]):
3611         Return nil if [self isPasswordField].
3612         
3613         (-[WebCoreAXObject accessibilityAttributeNames]):
3614         Return generic attributes if [self isPasswordField].
3615
3616         (-[WebCoreAXObject accessibilityParameterizedAttributeNames]):
3617         Return empty array if [self isPasswordField].
3618
3619 2006-10-17  David Hyatt  <hyatt@apple.com>
3620
3621         Fix "flash to white' problem on yahoo.com as it finishes loading.  Refine the FOUC suppression
3622         code so that it will only run if the body still has no renderer.
3623
3624         * dom/Document.cpp:
3625         (WebCore::Document::updateLayoutIgnorePendingStylesheets):
3626
3627 2006-10-17  David Hyatt  <hyatt@apple.com>
3628
3629         Fix a bug where the WebCore memory cache could grow without bound during extended browsing
3630         sessions.
3631
3632         Reviewed by mjs
3633
3634         * loader/Cache.cpp:
3635         (WebCore::Cache::flush):
3636         (WebCore::Cache::setSize):
3637         (WebCore::Cache::getLRUListFor):
3638         (WebCore::Cache::removeFromLRUList):
3639         (WebCore::Cache::insertInLRUList):
3640         * loader/Cache.h:
3641         * loader/CachedCSSStyleSheet.cpp:
3642         * loader/CachedCSSStyleSheet.h:
3643         * loader/CachedImage.cpp:
3644         * loader/CachedImage.h:
3645         * loader/CachedResource.cpp:
3646         (WebCore::CachedResource::setRequest):
3647         (WebCore::CachedResource::deref):
3648         * loader/CachedResource.h:
3649         (WebCore::CachedResource::allowInLRUList):
3650         * loader/CachedScript.cpp:
3651         * loader/CachedScript.h:
3652         * loader/CachedXBLDocument.cpp:
3653         * loader/CachedXBLDocument.h:
3654         * loader/CachedXSLStyleSheet.cpp:
3655         * loader/CachedXSLStyleSheet.h:
3656
3657 2006-10-13  Justin Garcia  <justin.garcia@apple.com>
3658
3659         Reviewed by harrison
3660         
3661         <rdar://problem/3655385>
3662         Editing: -indent: method unimplemented
3663
3664         Added Frame and bridge methods.
3665
3666         * bridge/mac/WebCoreFrameBridge.h:
3667         * bridge/mac/WebCoreFrameBridge.mm:
3668         (-[WebCoreFrameBridge indent]):
3669         (-[WebCoreFrameBridge outdent]):
3670         * page/Frame.cpp:
3671         (WebCore::Frame::indent): 
3672         (WebCore::Frame::outdent):
3673         * page/Frame.h:
3674
3675 2006-10-16  Adam Roben  <aroben@apple.com>
3676
3677         Reviewed by John.
3678
3679         More menulist cleanup/tweaking.
3680
3681         * html/HTMLSelectElement.cpp:
3682         (WebCore::HTMLSelectElement::setSelectedIndex): Renamed 'index'
3683         parameter to 'optionIndex' for clarity.
3684         (WebCore::HTMLSelectElement::menuListDefaultEventHandler): Skip over
3685         items that are not enabled <option> elements when using arrow keys, and
3686         make sure we pass an option index to setSelectedIndex.
3687         * platform/PopupMenu.h:
3688         (WebCore::PopupMenu::setWasClicked): Specify default argument.
3689         * rendering/RenderMenuList.cpp:
3690         (WebCore::RenderMenuList::setTextFromOption): Strip whitespace from
3691         option text before setting the control text so that options within
3692         <optgroup>s don't appear indented in the actual control.
3693
3694 2006-10-16  Sam Weinig  <sam.weinig@gmail.com>
3695
3696         Reviewed by Adam.
3697
3698         Win32 build fix.
3699
3700         * WebCore.vcproj/WebCore/WebCore.vcproj:
3701         * bridge/win/BrowserExtensionWin.cpp:
3702         (WebCore::BrowserExtensionWin::createNewWindow):
3703         * bridge/win/FrameWin.cpp:
3704         (WebCore::FrameWin::urlSelected):
3705         (WebCore::FrameWin::submitForm):
3706         (WebCore::FrameWin::createNewWindow):
3707         * bridge/win/FrameWin.h:
3708         * loader/loader.cpp:
3709         (WebCore::Loader::receivedResponse):
3710         * platform/win/GraphicsContextWin.cpp:
3711         (WebCore::GraphicsContext::getWindowsContext):
3712         (WebCore::GraphicsContext::releaseWindowsContext):
3713         * platform/win/TemporaryLinkStubs.cpp:
3714         (FrameWin::openURLRequest):
3715         (WebCore::ServeSynchronousRequest):
3716         (WebCore::CheckIfReloading):
3717         (WebCore::IsResponseURLEqualToURL):
3718         (WebCore::ResponseMIMEType):
3719         (WebCore::ResponseIsMultipart):
3720         (WebCore::CacheObjectExpiresTime):
3721         (CachedResource::setResponse):
3722         (CachedResource::setAllData):
3723         * rendering/RenderThemeWin.cpp:
3724         (WebCore::doneDrawing):
3725         (WebCore::RenderThemeWin::paintButton):
3726         (WebCore::RenderThemeWin::paintTextField):
3727
3728 2006-10-16  David Hyatt  <hyatt@apple.com>
3729
3730         Fix for bug 9347, positioned elements have the wrong containing block.  This is a change from CSS2 to
3731         CSS2.1.  In the absence of any other enclosing positioned elements, the containing block for a positioned
3732         element is the initial containing block (our RenderView).
3733
3734         Reviewed by mjs
3735
3736         Test cases added to fast/block/positioning for quirks and strict modes.
3737
3738         * rendering/RenderBlock.cpp:
3739         (WebCore::RenderBlock::lowestPosition):
3740         (WebCore::RenderBlock::rightmostPosition):
3741         (WebCore::RenderBlock::leftmostPosition):
3742         * rendering/RenderBox.cpp:
3743         (WebCore::RenderBox::containingBlockHeightForPositioned):
3744         (WebCore::RenderBox::calcAbsoluteVertical):
3745         * rendering/RenderObject.cpp:
3746         (WebCore::RenderObject::containingBlock):
3747         (WebCore::RenderObject::container):
3748
3749 2006-10-15  Krzysztof Kowalczyk  <kkowalczyk@gmail.com>
3750
3751         Reviewed by Anders.
3752
3753         Misc Gdk/Linux build fixes.
3754
3755         * platform/gdk/BrowserExtensionGdk.h:
3756         * platform/gdk/FrameGdk.cpp:
3757         (WebCore::FrameGdk::submitForm):
3758         (WebCore::FrameGdk::urlSelected):
3759         * platform/gdk/FrameGdk.h:
3760         * platform/gdk/RenderPopupMenuGdk.cpp:
3761         (WebCore::PopupMenu::PopupMenu):
3762         (WebCore::PopupMenu::~PopupMenu):
3763         (WebCore::PopupMenu::clear):
3764         (WebCore::PopupMenu::populate):
3765         (WebCore::PopupMenu::show):
3766         (WebCore::PopupMenu::hide):
3767         (WebCore::PopupMenu::addSeparator):
3768         (WebCore::PopupMenu::addGroupLabel):
3769         (WebCore::PopupMenu::addOption):
3770         * platform/gdk/RenderPopupMenuGdk.h:
3771         * platform/gdk/RenderThemeGdk.cpp:
3772         * platform/gdk/RenderThemeGdk.h:
3773         (WebCore::RenderThemeGdk::RenderThemeGdk):
3774         * platform/gdk/TemporaryLinkStubs.cpp:
3775         (BrowserExtensionGdk::createNewWindow):
3776         (BrowserExtensionGdk::BrowserExtensionGdk):
3777         (BrowserExtensionGdk::setTypedIconURL):
3778         (BrowserExtensionGdk::setIconURL):
3779         (BrowserExtensionGdk::getHistoryLength):
3780         (WebCore::CheckIfReloading):
3781         (WebCore::CacheObjectExpiresTime):
3782         (WebCore::ResponseURL):
3783         (WebCore::IsResponseURLEqualToURL):
3784         (WebCore::ResponseIsMultipart):
3785         (WebCore::ResponseMIMEType):
3786         (WebCore::CachedResource::setResponse):
3787         (WebCore::CachedResource::setAllData):
3788         (FileChooser::disconnectUploadControl):
3789         * rendering/RenderTheme.h:
3790         * rendering/RenderThemeMac.h:
3791
3792 2006-10-15  Sam Weinig  <sam.weinig@gmail.com>
3793
3794         Reviewed by Mitz.
3795
3796         Fix for http://bugs.webkit.org/show_bug.cgi?id=11294
3797         Add getModifierState method to KeyboardEvent
3798
3799         * bindings/objc/DOMEvents.h:
3800         * bindings/objc/DOMEvents.mm:
3801         * bindings/objc/PublicDOMInterfaces.h:
3802         * dom/KeyboardEvent.cpp:
3803         (WebCore::KeyboardEvent::getModifierState):
3804         * dom/KeyboardEvent.h:
3805         * dom/KeyboardEvent.idl:
3806
3807 2006-10-15  Nikolas Zimmermann  <zimmermann@kde.org>
3808
3809         Reviewed and landed by ap.
3810
3811         Changed PlatformResponse handling for Qt. Don't just store
3812         a QString object containing the data but a new PlatformResponseQt struct
3813         containing data and url, and store it as pointer. This is compatible
3814         to the OS X handling and removes the Qt plaform specific hacks from
3815         CachedCSSStyleSheet, CachedResource & loader.
3816
3817         Add new file LoaderFunctionsQt, similar to LoaderFunctionsMac, and move
3818         all methods from TemporaryLinkStubs related to loading in there, and implement
3819         some like ServeSynchronousRequest (yay for xslt handling!).
3820
3821         * CMakeLists.txt:
3822         * loader/CachedCSSStyleSheet.cpp:
3823         (WebCore::CachedCSSStyleSheet::checkNotify):
3824         * loader/CachedResource.h:
3825         (WebCore::CachedResource::CachedResource):
3826         * loader/loader.cpp:
3827         (WebCore::Loader::receivedResponse):
3828         * platform/ResourceLoaderClient.h:
3829         * platform/ResourceLoaderInternal.h:
3830         * platform/qt/FrameQt.cpp:
3831         (WebCore::FrameQt::~FrameQt):
3832         (WebCore::FrameQt::createEmptyDocument):
3833         * platform/qt/FrameQt.h:
3834         (WebCore::QtFrame):
3835         * platform/qt/FrameQtClient.cpp:
3836         (WebCore::FrameQtClientDefault::setFrame):
3837         (WebCore::FrameQtClientDefault::openURL):
3838         (WebCore::FrameQtClientDefault::loadFinished):
3839         (WebCore::FrameQtClientDefault::receivedAllData):
3840         * platform/qt/FrameQtClient.h:
3841         * platform/qt/LoaderFunctionsQt.cpp: Added.
3842         (WebCore::ServeSynchronousRequest):
3843         (WebCore::NumberOfPendingOrLoadingRequests):
3844         (WebCore::CheckIfReloading):
3845         (WebCore::CheckCacheObjectStatus):
3846         (WebCore::IsResponseURLEqualToURL):
3847         (WebCore::ResponseURL):
3848         (WebCore::ResponseMIMEType):
3849         (WebCore::ResponseIsMultipart):
3850         (WebCore::CacheObjectExpiresTime):
3851         (WebCore::CachedResource::setResponse):
3852         (WebCore::CachedResource::setAllData):
3853         * platform/qt/ResourceLoaderManager.cpp:
3854         (WebCore::ResourceLoaderManager::remove):
3855         * platform/qt/ResourceLoaderQt.cpp:
3856         (WebCore::ResourceLoader::~ResourceLoader):
3857         (WebCore::ResourceLoader::start):
3858         (WebCore::ResourceLoader::assembleResponseHeaders):
3859         (WebCore::ResourceLoader::receivedResponse):
3860         * platform/qt/TemporaryLinkStubs.cpp:
3861
3862 2006-10-14  Rob Buis  <buis@kde.org>
3863
3864         Reviewed by Mitz.
3865
3866         http://bugs.webkit.org/show_bug.cgi?id=11217
3867         Cleanup svg coding style
3868
3869         Cleanup coding style in svg basic datastructure classes.
3870
3871         * ksvg2/svg/SVGAngle.cpp:
3872         (WebCore::SVGAngle::valueAsString):
3873         (WebCore::SVGAngle::context):
3874         (WebCore::SVGAngle::setContext):
3875         * ksvg2/svg/SVGAngle.h:
3876         * ksvg2/svg/SVGColor.cpp:
3877         * ksvg2/svg/SVGColor.h:
3878         * ksvg2/svg/SVGElement.cpp:
3879         (WebCore::SVGElement::ownerSVGElement):
3880         (WebCore::SVGElement::viewportElement):
3881         (WebCore::SVGElement::parseMappedAttribute):
3882         (WebCore::SVGElement::childShouldCreateRenderer):
3883         * ksvg2/svg/SVGElement.h:
3884         (WebCore::svg_dynamic_cast):
3885         * ksvg2/svg/SVGFitToViewBox.cpp:
3886         (WebCore::SVGFitToViewBox::parseViewBox):
3887         * ksvg2/svg/SVGFitToViewBox.h:
3888         * ksvg2/svg/SVGLangSpace.cpp:
3889         (WebCore::SVGLangSpace::parseMappedAttribute):
3890         * ksvg2/svg/SVGLangSpace.h:
3891         * ksvg2/svg/SVGLength.cpp:
3892         (WebCore::SVGLength::SVGLength):
3893         (WebCore::SVGLength::setValueAsString):
3894         (WebCore::SVGLength::dpi):
3895         (WebCore::SVGLength::updateValue):
3896         (WebCore::SVGLength::updateValueInSpecifiedUnits):
3897         (WebCore::SVGLength::context):
3898         (WebCore::SVGLength::setContext):
3899         * ksvg2/svg/SVGLength.h:
3900         * ksvg2/svg/SVGLengthList.cpp:
3901         * ksvg2/svg/SVGLengthList.h:
3902         * ksvg2/svg/SVGLocatable.cpp:
3903         (WebCore::SVGLocatable::nearestViewportElement):
3904         (WebCore::SVGLocatable::farthestViewportElement):
3905         (WebCore::SVGLocatable::getBBox):
3906         (WebCore::SVGLocatable::getCTM):
3907         (WebCore::SVGLocatable::getScreenCTM):
3908         * ksvg2/svg/SVGNumberList.cpp:
3909         * ksvg2/svg/SVGNumberList.h:
3910         * ksvg2/svg/SVGPreserveAspectRatio.cpp:
3911         (WebCore::SVGPreserveAspectRatio::SVGPreserveAspectRatio):
3912         (WebCore::SVGPreserveAspectRatio::getCTM):
3913         * ksvg2/svg/SVGPreserveAspectRatio.h:
3914         * ksvg2/svg/SVGStringList.cpp:
3915         (WebCore::SVGStringList::reset):
3916         * ksvg2/svg/SVGStringList.h:
3917         * ksvg2/svg/SVGStylable.cpp:
3918         * ksvg2/svg/SVGStylable.h:
3919         * ksvg2/svg/SVGTests.cpp:
3920         (WebCore::SVGTests::requiredFeatures):
3921         (WebCore::SVGTests::requiredExtensions):
3922         (WebCore::SVGTests::systemLanguage):
3923         (WebCore::SVGTests::isValid):
3924         (WebCore::SVGTests::parseMappedAttribute):
3925         * ksvg2/svg/SVGTests.h:
3926         * ksvg2/svg/SVGTransformable.cpp:
3927         (WebCore::SVGTransformable::parseTransformAttribute):
3928         * ksvg2/svg/SVGTransformable.h:
3929         * ksvg2/svg/SVGURIReference.cpp:
3930         (WebCore::SVGURIReference::parseMappedAttribute):
3931         * ksvg2/svg/SVGZoomAndPan.cpp:
3932         (WebCore::SVGZoomAndPan::parseMappedAttribute):
3933         * ksvg2/svg/SVGZoomAndPan.h:
3934
3935 2006-10-15  Nikolas Zimmermann  <zimmermann@kde.org>
3936
3937         Reviewed by Oliver.
3938
3939         Implement some functions in FrameQt / ScrollViewQt.
3940
3941         Added comments what needs to be done in quite some places,
3942         marked some functions as no-ops.
3943
3944         * CMakeLists.txt:
3945         * platform/qt/FrameQt.cpp:
3946         (WebCore::FrameQt::FrameQt):
3947         (WebCore::FrameQt::runJavaScriptConfirm):
3948         (WebCore::FrameQt::locationbarVisible):
3949         (WebCore::FrameQt::createFrame):
3950         (WebCore::FrameQt::passSubframeEventToSubframe):
3951         (WebCore::FrameQt::menubarVisible):
3952         (WebCore::FrameQt::personalbarVisible):
3953         (WebCore::FrameQt::statusbarVisible):
3954         (WebCore::FrameQt::toolbarVisible):
3955         (WebCore::FrameQt::markedTextRange):
3956         (WebCore::FrameQt::lastEventIsMouseUp):
3957         (WebCore::FrameQt::openURLRequest):
3958         (WebCore::FrameQt::scheduleClose):
3959         (WebCore::FrameQt::unfocusWindow):
3960         (WebCore::FrameQt::focusWindow):
3961         (WebCore::FrameQt::overrideMediaType):
3962         (WebCore::FrameQt::runJavaScriptPrompt):
3963         (WebCore::FrameQt::bindingRootObject):
3964         (WebCore::FrameQt::addPluginRootObject):
3965         (WebCore::FrameQt::registerCommandForUndo):
3966         (WebCore::FrameQt::registerCommandForRedo):
3967         (WebCore::FrameQt::clearUndoRedoOperations):
3968         (WebCore::FrameQt::respondToChangedSelection):
3969         (WebCore::FrameQt::respondToChangedContents):
3970         (WebCore::FrameQt::shouldChangeSelection):
3971         (WebCore::FrameQt::canGoBackOrForward):
3972         (WebCore::FrameQt::canPaste):
3973         (WebCore::FrameQt::canRedo):
3974         (WebCore::FrameQt::canUndo):
3975         * platform/qt/FrameQt.h:
3976         * platform/qt/FrameQtClient.cpp:
3977         (WebCore::FrameQtClientDefault::runJavaScriptAlert):
3978         (WebCore::FrameQtClientDefault::runJavaScriptConfirm):
3979         (WebCore::FrameQtClientDefault::runJavaScriptPrompt):
3980         (WebCore::FrameQtClientDefault::menubarVisible):
3981         (WebCore::FrameQtClientDefault::toolbarVisible):
3982         (WebCore::FrameQtClientDefault::statusbarVisible):
3983         (WebCore::FrameQtClientDefault::personalbarVisible):
3984         (WebCore::FrameQtClientDefault::locationbarVisible):
3985         * platform/qt/FrameQtClient.h:
3986         * platform/qt/ImageSourceQt.cpp:
3987         * platform/qt/RenderThemeQt.cpp:
3988         * platform/qt/ScrollViewQt.cpp:
3989         (WebCore::ScrollView::scrollPointRecursively):
3990         * platform/qt/TemporaryLinkStubs.cpp:
3991         (WebCore::CachedResource::setResponse):
3992         (WebCore::CachedResource::setAllData):
3993
3994 2006-10-14  David Harrison  <harrison@apple.com>
3995
3996         Reviewed by Geoff.
3997
3998         <rdar://problem/4775213> REGRESSION: Can't from tab from last link on the page to URL address field
3999         <rdar://problem/4783926> REGRESSION: Typing tab key enters no text
4000
4001         The problem is that EventTargetNode::defaultEventHandler() calls event->setDefaultHandled() regardless
4002         of whether frame->view()->advanceFocus() actually changed the focus.
4003
4004         Trivial fix is to preventDefault() only if advanceFocus() returns true.
4005
4006         * No test is possible because DumpRenderTree sets the WebView preference to
4007         tab to links, and that preference cannot be changed dynamically after
4008         the webview is initialized. Also, the "tab from last link" is not testable
4009         because DumpRenderTree uses the WebView for the whole window, so tabs can't
4010         shift focus out of the WebView regardless.
4011
4012         * dom/EventTargetNode.cpp:
4013         (WebCore::EventTargetNode::defaultEventHandler):
4014
4015 2006-10-14  Nikolas Zimmermann  <zimmermann@kde.org>
4016
4017         Reviewed by Mitz.
4018
4019         Fix Qt/Linux build & some little fixes:
4020
4021         - Adapt to Maciej's FrameLoadRequest changes.
4022         - Fix response handling - don't try to compare with '0' - for us it's a non-ptr QString object.
4023         - Actually call setAllData from loader/loader.cpp (David Carson forgot that in his last commit)
4024         - Fix CacheObjectExpiresTime/ResponseIsMultipart signature.
4025
4026         * loader/CachedCSSStyleSheet.cpp:
4027         (WebCore::CachedCSSStyleSheet::checkNotify):
4028         * loader/CachedResource.h:
4029         (WebCore::CachedResource::CachedResource):
4030         * loader/loader.cpp:
4031         (WebCore::Loader::receivedAllData):
4032         (WebCore::Loader::receivedResponse):
4033         * platform/qt/BrowserExtensionQt.cpp:
4034         (WebCore::BrowserExtensionQt::createNewWindow):
4035         * platform/qt/BrowserExtensionQt.h:
4036         * platform/qt/FrameQt.cpp:
4037         (WebCore::FrameQt::submitForm):
4038         (WebCore::FrameQt::urlSelected):
4039         (WebCore::FrameQt::openURLRequest):
4040         * platform/qt/FrameQt.h:
4041         * platform/qt/GraphicsContextQt.cpp:
4042         (WebCore::GraphicsContext::setURLForRect):
4043         * platform/qt/TemporaryLinkStubs.cpp:
4044         (WebCore::CacheObjectExpiresTime):
4045         (WebCore::ResponseIsMultipart):
4046         (WebCore::CachedResource::setResponse):
4047         (WebCore::CachedResource::setAllData):
4048
4049 2006-10-14  David Carson  <dacarson@gmail.com>
4050
4051         Reviewed by Maciej.
4052
4053         Fix: http://bugs.webkit.org/show_bug.cgi?id=11257
4054         Removed Mac platform dependance, changed WebCore functions to
4055         use PlatformResponse/PlatformData rather than NSURLResponse/
4056         NSData. 
4057
4058         * loader/CachedCSSStyleSheet.cpp:
4059         (WebCore::CachedCSSStyleSheet::checkNotify):
4060         * loader/CachedImage.cpp:
4061         (WebCore::CachedImage::createImage):
4062         * loader/CachedResource.cpp:
4063         (WebCore::CachedResource::~CachedResource):
4064         * loader/CachedResource.h:
4065         (WebCore::CachedResource::CachedResource):
4066         (WebCore::CachedResource::response):
4067         (WebCore::CachedResource::allData):
4068         * loader/LoaderFunctions.h:
4069         * loader/loader.cpp:
4070         (WebCore::Loader::receivedResponse):
4071         * loader/mac/LoaderFunctionsMac.mm:
4072         (WebCore::ResponseMIMEType):
4073         (WebCore::ResponseIsMultipart):
4074         (WebCore::CacheObjectExpiresTime):
4075         (WebCore::CachedResource::setResponse):
4076         (WebCore::CachedResource::setAllData):
4077         * platform/qt/TemporaryLinkStubs.cpp:
4078         (WebCore::CacheObjectExpiresTime):
4079         (WebCore::ResponseIsMultipart):
4080         (WebCore::ResponseMIMEType):
4081         (WebCore::CachedResource::setResponse):
4082         (WebCore::CachedResource::setAllData):
4083         * platform/win/TemporaryLinkStubs.cpp:
4084         (WebCore::CacheObjectExpiresTime):
4085         (WebCore::ResponseIsMultipart):
4086         (WebCore::ResponseMIMEType):
4087         (WebCore::CachedResource::setResponse):
4088         (WebCore::CachedResource::setAllData):
4089
4090 2006-10-14  Krzysztof Kowalczyk  <kkowalczyk@gmail.com>
4091
4092         Reviewed by Maciej.
4093
4094         Fix GDK build by defining FrameGdkClient() constructor as non-virtual.
4095         Pure virtual classes require non-pure destructor, who knew.
4096
4097         Make CURL networking dependent on USE(CURL) instead of PLATFORM(GDK),
4098         so that other platforms can also use CURL, if they wish.
4099
4100         Silence compiler warning about unused variable in SharedTimerLinux.cpp
4101
4102         * platform/ResourceLoaderInternal.h:
4103         (WebCore::ResourceLoaderInternal::ResourceLoaderInternal):
4104         * platform/gdk/FrameGdk.h:
4105         (WebCore::FrameGdkClient::~FrameGdkClient):
4106         * platform/gdk/ResourceLoaderManager.cpp:
4107         (WebCore::ResourceLoaderManager::downloadTimerCallback):
4108         * platform/gdk/SharedTimerLinux.cpp:
4109         (WebCore::stopSharedTimer):
4110
4111 2006-10-13  Beth Dakin  <bdakin@apple.com>
4112
4113         Reviewed by Geoff.
4114
4115         Build fix from my last check-in. Make hasOutlineAnnotation() non-
4116         inline so that we don't have to include Document.h in 
4117         RenderObject.h
4118         Doing so causes a build failure in WebKit, and it probably isn't a 
4119         good idea anyway.
4120
4121         * rendering/RenderObject.cpp:
4122         (WebCore::RenderObject::hasOutlineAnnotation):
4123         * rendering/RenderObject.h:
4124         (WebCore::RenderObject::hasOutline):
4125
4126 2006-10-13  Beth Dakin  <bdakin@apple.com>
4127
4128         Patch written mostly by Ken Kraisler, but also by me.
4129
4130         Reviewed by Hyatt.
4131
4132         Fix for http://bugs.webkit.org/show_bug.cgi?id=10216 and <rdar://
4133         problem/3391162> PDF created by printing should have live 
4134         hyperlinks
4135
4136         * platform/GraphicsContext.cpp:
4137         (WebCore::GraphicsContext::focusRingBoundingRect):
4138         * platform/GraphicsContext.h:
4139         * platform/cairo/GraphicsContextCairo.cpp:
4140         (WebCore::GraphicsContext::setURLForRect):
4141         * platform/cg/GraphicsContextCG.cpp:
4142         (WebCore::GraphicsContext::setURLForRect): Implement method to add 
4143         URL link to PDF document.
4144         * rendering/InlineFlowBox.cpp:
4145         (WebCore::InlineFlowBox::paint): Ask hasOutline() instead of 
4146         querying the outline width
4147         * rendering/RenderBlock.cpp:
4148         (WebCore::RenderBlock::paintObject): Same as above.
4149         * rendering/RenderFlow.cpp:
4150         (WebCore::RenderFlow::paintLines): Call the new paintOutline()
4151         (WebCore::RenderFlow::paintOutline): Take care of focus ring and 
4152         pdf url rects, and outline painting.
4153         * rendering/RenderFlow.h:
4154         * rendering/RenderObject.cpp:
4155         (WebCore::RenderObject::addPDFURLRect): Declaration to apply a PDF 
4156         link to a rectanglular region.
4157         (WebCore::RenderObject::paintOutline): Take care of pdf rects as 
4158         well as focus ring painting.
4159         * rendering/RenderObject.h:
4160         (WebCore::RenderObject::hasOutlineAnnotation): Returns true is the 
4161         element is a link and we are printing.
4162         (WebCore::RenderObject::hasOutline): Returns true is the style has 
4163         an outline and hasOutlineAnnotation() is true.
4164         * rendering/RenderStyle.h:
4165         (WebCore::RenderStyle::hasOutline): Returns true if outlineWidth is 
4166         greater than 0 and outlineStyle is greater than BHIDDEN.
4167
4168 2006-10-13  Justin Garcia  <justin.garcia@apple.com>
4169
4170         Reviewed by ggaren and harrison
4171         
4172         <rdar://problem/4744008>
4173         9A270: Mail crashes when I try to paste large items from Safari
4174
4175         * editing/ReplaceSelectionCommand.cpp:
4176         (WebCore::ReplaceSelectionCommand::removeRedundantStyles):
4177         Even though we put nodes in the hash map in pre-order, they don't necessary
4178         come out of the iterator that way.  If a node is a redundant style span
4179         and one of its pruned ancestors comes off the hash map after it, and that
4180         ancestor is a redundant style span or font tag, we will try to remove it
4181         even though it has already been removed and we'll crash.
4182         The test case added with the fix depends on our hash map implementation
4183         because it requires that a particular redundant style span come out of 
4184         the iterator before its parent. So, it may eventually not provide 
4185         coverage for the fix.
4186
4187 2006-10-13  Maciej Stachowiak  <mjs@apple.com>
4188
4189         Reviewed by Darin.
4190
4191         - split FrameLoadRequest off from ResourceRequest - it's a ResourceRequest plus frame name plus lockHistory bool
4192
4193         * WebCore.xcodeproj/project.pbxproj:
4194         * bindings/js/kjs_window.cpp:
4195         (KJS::createNewWindow):
4196         (KJS::WindowFunc::callAsFunction):
4197         * bridge/BrowserExtension.h:
4198         * bridge/mac/BrowserExtensionMac.h:
4199         * bridge/mac/BrowserExtensionMac.mm:
4200         (WebCore::BrowserExtensionMac::createNewWindow):
4201         * bridge/mac/FrameMac.h:
4202         * bridge/mac/FrameMac.mm: