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