1 2006-09-06 Alexey Proskuryakov <ap@nypop.com>
3 * MigrateHeaders.make: Fixed a double slash in
4 "$(PRIVATE_HEADERS_DIR)//DOMCharacterDataPrivate.h" (this was reported
5 to cause a build failure under certain circumstances).
7 2006-09-05 MorganL <morlmor@yahoocom>
9 Reviewed/landed by aroben.
11 Fixes bug 10743: Windows build is busted.
16 2006-09-05 Timothy Hatcher <timothy@apple.com>
20 Drastically simplified the makefile for migrating headers from
21 WebCore and JavaScriptCore. The old version was always copying the files.
23 * MigrateHeaders.make:
25 2006-09-05 Darin Adler <darin@apple.com>
29 - WebKit side of changes to encoding
31 * WebView/WebHTMLRepresentation.m: (-[WebHTMLRepresentation documentSource]):
32 Changed to call new -[WebCoreFrameBridge stringWithData:] instead of the calling
33 the old methods that used a CFStringEncoding: -[WebCoreFrameBridge textEncoding]
34 and +[WebCoreFrameBridge stringWithData:textEncoding:].
36 * WebView/WebResource.m: (-[WebResource _stringValue]): Removed special case for
37 nil encoding name. The bridge itself now has the rule that "nil encoding name
38 means Latin-1", so we don't need to check for nil.
40 * WebView/WebFrame.m: (-[WebFrame _checkLoadComplete]): Retain the frame until
41 we get the parent frame while walking up parent frames, because it's possible
42 for _checkLoadCompleteForThisFrame to release the last reference to the frame.
43 (Not reviewed; needed to run performance tests successfully.)
45 2006-09-05 Timothy Hatcher <timothy@apple.com>
49 <rdar://problem/4682225> conflicting typedefs in Netscape plug-in headers
51 * Plugins/npfunctions.h: fix the return type for NPN_IntFromIdentifierProcPtr to be int32_t
53 2006-09-04 Timothy Hatcher <timothy@apple.com>
57 Bug 10714: ObjC autogeneration needs safe-guards against easily modifying the public API
58 http://bugzilla.opendarwin.org/show_bug.cgi?id=10714
60 - Added the new private DOM headers.
61 - Factored out the common commands into variables.
62 - Made WebDashboardRegion.h private again.
63 - Rename DOMDOMImplementation.h to DOMImplementation.h when files
64 are migrated. Also fixes up #imports.
66 * MigrateHeaders.make:
68 2006-09-03 Sam Weinig <sam.weinig@gmail.com>
70 Reviewed by Darin and Tim H.
72 - patch for http://bugzilla.opendarwin.org/show_bug.cgi?id=10711
73 Auto-generate the Objective-C DOM Stylesheet bindings
75 * MigrateHeaders.make:
77 2006-09-02 Sam Weinig <sam.weinig@gmail.com>
81 - patch for http://bugzilla.opendarwin.org/show_bug.cgi?id=10684
82 Auto-generate the Objective-C DOM CSS bindings
84 * MigrateHeaders.make:
86 2006-09-01 MorganL <morlmor@yahoo.com>
88 Reviewed by Darin. Updated/landed by Adam.
90 Fixes http://bugzilla.opendarwin.org/show_bug.cgi?id=10553
94 (WebFrame::initWithName):
96 2006-09-01 Brady Eidson <beidson@apple.com>
100 A "never should be reached" method was reached - lets not release the shared database bridge, esp
101 since we never retain it!
103 * Misc/WebIconDatabase.m:
104 (-[WebIconDatabase _applicationWillTerminate:]): Don't release the bridge
106 2006-09-01 Darin Adler <darin@apple.com>
110 - a few small tweaks to the icon database bridge
112 * Misc/WebIconDatabase.m: (-[WebIconDatabase init]): Updated for name change.
114 * WebCoreSupport/WebIconDatabaseBridge.h: Removed unneeded declarations.
115 * WebCoreSupport/WebIconDatabaseBridge.m:
116 (-[WebIconDatabaseBridge init]): Added. Always returns nil since you're not supposed
117 to allocate one of these.
118 (-[WebIconDatabaseBridge _init]): Renamed from init. Used internally to make the
119 shared instance. Added the "self = [super init]" idiom even though it's not important
120 in this case just to be consistent.
121 (-[WebIconDatabaseBridge releaseCachedLoaderForIconURL:]): Moved this up in the file
122 so it can be called without declaring it in the header.
123 (+[WebIconDatabaseBridge sharedInstance]): Renamed. Calls the new _init. Also use
124 CFRetain for compatibility.
125 (-[WebIconDatabaseBridge dealloc]): Emptied this out and made it just assert (false).
126 (-[WebIconDatabaseBridge finalize]): Added and made it assert (false) too.
128 2006-09-01 Timothy Hatcher <timothy@apple.com>
132 Bug 10677: Omit "-webkit-text-security: none;" from the computed style list
133 http://bugzilla.opendarwin.org/show_bug.cgi?id=10677
135 * WebInspector/webInspector/inspector.js:
137 2006-08-31 Sam Weinig <sam.weinig@gmail.com>
141 - patch for http://bugzilla.opendarwin.org/show_bug.cgi?id=10669
142 Auto-generate the remaining Objective-C HTML DOM bindings
144 * MigrateHeaders.make:
146 2006-08-31 Adele Peterson <adele@apple.com>
150 WebKit part of fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=10666
151 Password: Disallow Spelling, Font, Speech, and Writing Direction context menu
153 * DefaultDelegates/WebDefaultContextMenuDelegate.m: (-[WebDefaultUIDelegate editingContextMenuItemsForElement:defaultMenuItems:]):
154 Check that the selection isn't in a password field before adding these items to the default editing context menu.
155 Search In Google, Search In Spotlight, Look up in Dictionary, Spelling, Font, Speech, Writing Direction
156 * WebView/WebHTMLView.m: (-[WebHTMLView _isSelectionInPasswordField]): Added.
157 * WebView/WebHTMLViewPrivate.h:
159 2006-08-31 Sam Weinig <sam.weinig@gmail.com>
163 - patch for http://bugzilla.opendarwin.org/show_bug.cgi?id=10653
164 Auto-generate another 20 Objective-C DOM HTML bindings
166 * MigrateHeaders.make:
167 * WebKit.xcodeproj/project.pbxproj:
169 2006-08-31 Adele Peterson <adele@apple.com>
171 Reviewed by John Sullivan.
173 Removed wkSecureEventInput and wkSetSecureEventInput, since this can be done with API.
175 * WebCoreSupport/WebSystemInterface.m: (InitWebCoreSystemInterface):
177 2006-08-31 John Sullivan <sullivan@apple.com>
179 Reviewed by Tim Omernick
181 - fixed <rdar://problem/4711200> Loading history would be faster if it bypassed
182 NSURL API for local files
184 * History/WebHistory.m:
185 (-[WebHistoryPrivate _loadHistoryGutsFromURL:savedItemsCount:collectDiscardedItemsInto:error:]):
186 Load file URLs using [NSDictionary dictionaryWithContentsOfFile:]. I also cleaned up some minor
187 style issues in this method, and I removed the support for old NSArray-style history files (which we
188 stopped using before Safari 1.0).
190 2006-08-30 Adele Peterson <adele@apple.com>
194 WebKit part of fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=10575
195 Enable secure input mode for new password fields
197 * WebCoreSupport/WebSystemInterface.m: (InitWebCoreSystemInterface):
199 2006-08-30 Brady Eidson <beidson@apple.com>
203 <rdar://problem/4707718> Change behavior so if the WebCore::IconDatabase can't open, WebKit releases the bridge and
204 continues on as if the IconDatabase is disabled.
206 * Misc/WebIconDatabase.m:
207 (-[WebIconDatabase init]): Release the bridge on failure to open
208 * WebCoreSupport/WebIconDatabaseBridge.m:
209 (+[WebIconDatabaseBridge sharedBridgeInstance]): Moved static shared instance out as a global
210 (-[WebIconDatabaseBridge dealloc]): Clear pointer to the shared instance
212 2006-08-30 Timothy Hatcher <timothy@apple.com>
216 Simplify the header copies from WebCore and JavaScriptCore.
217 Headers that need to be migrated from the other projects need
218 to be added to MigrateHeaders.make.
220 * MigrateHeaders.make: Added.
221 * WebKit.xcodeproj/project.pbxproj:
223 2006-08-30 Sam Weinig <sam.weinig@gmail.com>
227 - patch for http://bugzilla.opendarwin.org/show_bug.cgi?id=10640
228 Auto-generate 10 more Objective-C DOM HTML bindings
230 * WebKit.xcodeproj/project.pbxproj:
232 2006-08-30 Adele Peterson <adele@apple.com>
236 WebKit part of fix for:
237 http://bugzilla.opendarwin.org/show_bug.cgi?id=10576
238 Disallow copy from new password fields
240 * WebView/WebHTMLView.m:
241 (-[WebHTMLView _canCopy]): Now also calls across the bridge to ask if it mayCopy.
242 (-[WebHTMLView _canCut]): Calls _canCopy now.
243 (-[NSArray validateUserInterfaceItem:]): Calls _canCut when validating the "Cut" menu item.
244 This used to call _canDelete (which used to be the same as _canCut), but now _canCut also checks _canCopy.
246 2006-08-30 Karl Adam <karladam@yahoo-inc.com>
248 Reviewed by Eric and Tim H.
250 Bug 10634: -webView:dragDestinationActionMaskForDraggingInfo: is ignored
251 http://bugzilla.opendarwin.org/show_bug.cgi?id=10634
253 Remove the check for canShowFile: from _web_bestURL: since
254 it shouldn't be concerned with whether or not the view
255 can show the URL, merely return the most appropriate URL.
257 * Misc/WebNSPasteboardExtras.m:
258 (-[NSPasteboard _web_bestURL]):
259 * Misc/WebNSViewExtras.m:
260 (-[NSView _web_dragOperationForDraggingInfo:]):
262 2006-08-29 Brady Eidson <beidson@apple.com>
264 Reviewed by Kevin Decker (Sarge)
266 <rdar://problem/4678414> - New IconDB needs to delete icons when asked
268 * Misc/WebIconDatabase.m:
269 (-[WebIconDatabase removeAllIcons]): Call through to WebCore to remove icons, then send notification
271 2006-08-29 Brady Eidson <beidson@apple.com>
275 Added a truth value check for to setIconURL:forURL so WebKit can avoid sending a notification
276 This is a win on the iBench
278 * Misc/WebIconDatabase.m:
279 (-[WebIconDatabase _setIconURL:forURL:]):
281 2006-08-29 Brady Eidson <beidson@apple.com>
283 Reviewed by Tim Hatchers rubber stamp
285 Removed some accidentally left-in console spew during the conversion to the new DB
287 * Misc/WebIconDatabase.m:
288 (objectFromPathForKey): Nuked some NSLogs
290 2006-08-29 Tim Omernick <timo@apple.com>
292 Reviewed by Darin Adler.
294 <rdar://problem/4688618> REGRESSION(10.4.7-9A241): JMol java applet fails in Safari not Firefox
296 No layout test for now because Java doesn't work in DumpRenderTree.
298 * Plugins/WebPluginDatabase.m:
299 (-[WebPluginDatabase refresh]):
300 Add each plug-in MIME type to registeredMIMETypes, even if we don't register a document view class for the
301 MIME type. This fixes -[WebPluginDatabase isMIMETypeRegistered:] and thus fallback content for Java applets
302 (we were always rendering fallback content, if any, for Java applets).
304 2006-08-29 Sam Weinig <sam.weinig@gmail.com>
308 - patch for http://bugzilla.opendarwin.org/show_bug.cgi?id=10628
309 Auto-generate the remaining Objective-C DOM bindings
311 Auto-generates DOMHTMLCollection, DOMHTMLElement, DOMHTMLFormElement,
312 and DOMHTMLOptionsCollection.
314 * WebKit.xcodeproj/project.pbxproj:
316 2006-08-28 Brady Eidson <beidson@apple.com>
320 Short of a few small snippets that still need to be pushed to WebCore, this
321 is a final prune of WebIconDatabase. WebFileDatabase and WebLRUFileList are gone
322 and the small remaining snippets of WebFileDatabase code that were still important
323 are now in static functions in WebIconDatabase.m
325 * Loader/WebIconLoader.m:
326 (-[WebIconLoader didFinishLoading]): Removed the flag
327 * Misc/WebFileDatabase.h: Removed.
328 * Misc/WebFileDatabase.m: Removed.
329 * Misc/WebIconDatabase.m:
330 (+[WebIconDatabase sharedIconDatabase]):
331 (-[WebIconDatabase init]):
332 (-[WebIconDatabase iconForURL:withSize:cache:]):
333 (-[WebIconDatabase iconURLForURL:]):
334 (-[WebIconDatabase defaultIconWithSize:]):
335 (-[WebIconDatabase retainIconForURL:]):
336 (-[WebIconDatabase releaseIconForURL:]):
337 (-[WebIconDatabase _isEnabled]):
338 (-[WebIconDatabase _setIconData:forIconURL:]):
339 (-[WebIconDatabase _setHaveNoIconForIconURL:]):
340 (-[WebIconDatabase _setIconURL:forURL:]):
341 (-[WebIconDatabase _hasEntryForIconURL:]):
342 (-[WebIconDatabase _applicationWillTerminate:]):
343 (-[WebIconDatabase _resetCachedWebPreferences:]):
344 (uniqueFilePathForKey): Added from WebFileDatabase
345 (objectFromPathForKey): Added from WebFileDatabase
346 (iconDataFromPathForIconURL):
347 (-[WebIconDatabase _convertToWebCoreFormat]): Make use of static functions and local variables
348 instead of using WebFileDatabase and WebIconDatabase variables that are now obsolete
349 * Misc/WebIconDatabasePrivate.h: Removed alot of obsoleted members
350 * Misc/WebLRUFileList.h: Removed.
351 * Misc/WebLRUFileList.m: Removed.
352 * WebKit.xcodeproj/project.pbxproj: Deleted 4 files
353 * WebKitPrefix.h: Removed ICONDEBUG
355 2006-08-28 Tim Omernick <timo@apple.com>
357 Reviewed by Darin Adler.
359 * Plugins/WebBaseNetscapePluginView.m:
360 (-[WebBaseNetscapePluginView createPluginScriptableObject]):
361 Removed a bogus typecast.
363 2006-08-28 Tim Omernick <timo@apple.com>
365 Reviewed by John Sullivan.
367 Part of <rdar://problem/4481553> NetscapeMoviePlugIn example code scripting doesn't work in Firefox (4319)
368 <http://bugzilla.opendarwin.org/show_bug.cgi?id=4319>: NetscapeMoviePlugIn example code scripting doesn't work
371 * Plugins/WebBaseNetscapePluginView.h:
372 * Plugins/WebBaseNetscapePluginView.m:
373 (-[WebBaseNetscapePluginView createPluginScriptableObject]):
374 Renamed this method (see corresponding WebCore ChangeLog entry for an explanation).
377 2006-08-28 Brady Eidson <beidson@apple.com>
379 Reviewed by Tim Hatcher's rubberstamp
381 Rolled out my last change (16070 - pruning WebFileDatabase code) as it caused a difficult-to-track down
382 failure in layout tests on a release build.
384 * Misc/WebFileDatabase.h:
385 * Misc/WebFileDatabase.m:
386 (+[WebFileDatabaseOp opWithCode:key:object:]):
387 (-[WebFileDatabaseOp initWithCode:key:object:]):
388 (-[WebFileDatabaseOp opcode]):
389 (-[WebFileDatabaseOp key]):
390 (-[WebFileDatabaseOp object]):
391 (-[WebFileDatabaseOp perform:]):
392 (-[WebFileDatabaseOp dealloc]):
394 (-[WebFileDatabase _createLRUList:]):
395 (-[WebFileDatabase _truncateToSizeLimit:]):
396 (+[WebFileDatabase _syncLoop:]):
398 (-[WebFileDatabase setTimer]):
399 (-[WebFileDatabase setObject:forKey:]):
400 (-[WebFileDatabase removeObjectForKey:]):
401 (-[WebFileDatabase removeAllObjects]):
402 (-[WebFileDatabase objectForKey:]):
403 (-[WebFileDatabase performSetObject:forKey:]):
404 (-[WebFileDatabase performRemoveObjectForKey:]):
405 (-[WebFileDatabase open]):
406 (-[WebFileDatabase close]):
407 (-[WebFileDatabase lazySync:]):
408 (-[WebFileDatabase sync]):
409 (-[WebFileDatabase sizeLimit]):
410 (-[WebFileDatabase count]):
411 (-[WebFileDatabase usage]):
412 (-[WebFileDatabase setSizeLimit:]):
413 * Misc/WebIconDatabase.m:
414 (-[WebIconDatabase _createFileDatabase]):
415 (-[WebIconDatabase _loadIconDictionaries]):
416 * WebKit.xcodeproj/project.pbxproj:
418 2006-08-28 Darin Adler <darin@apple.com>
420 Reviewed by Tim Hatcher.
422 * WebInspector/webInspector/inspector.js: Add "resize: none" to the list of
423 default values for CSS properties so it will be omitted from most displays
426 2006-08-28 Brady Eidson <beidson@apple.com>
430 Major prune of unnecessary WebFileDatabase code. In the end, what
431 useful code that remains in WebFileDatabase will likely be moved directly
434 * Misc/WebFileDatabase.h:
435 * Misc/WebFileDatabase.m:
436 (-[WebFileDatabase initWithPath:]):
437 (-[WebFileDatabase objectForKey:]):
438 (-[WebFileDatabase open]):
439 (-[WebFileDatabase close]):
440 * Misc/WebIconDatabase.m:
441 (-[WebIconDatabase _createFileDatabase]):
442 (-[WebIconDatabase _loadIconDictionaries]):
443 * Misc/WebLRUFileList.h: Removed.
444 * Misc/WebLRUFileList.m: Removed.
445 * WebKit.xcodeproj/project.pbxproj:
447 2006-08-27 Sam Weinig <sam.weinig@gmail.com>
451 - patch for http://bugzilla.opendarwin.org/show_bug.cgi?id=4624
452 WebCore needs autogenerated Obj-C DOM bindings
454 First round of auto-generated Objective C DOM bindings, starting
457 * WebKit.xcodeproj/project.pbxproj:
459 2006-08-25 Brady Eidson <beidson@apple.com>
461 Reviewed by Tim Hatcher
463 Fixed up some leaks on [WebIconDatabase init]
465 * Misc/WebIconDatabase.m:
466 (-[WebIconDatabase init]):
468 2006-08-24 Timothy Hatcher <timothy@apple.com>
472 * WebView/WebFrame.m:
473 (-[WebFrame _updateBackground]): reworded the comment about scroll view and setDrawsBackground:YES
475 (-[WebViewPrivate dealloc]): release the background color
477 2006-08-24 Timothy Hatcher <timothy@apple.com>
481 WebView API to allow changing the background color that draws under transparent page backgrounds.
483 * WebView/WebFrame.m:
484 (-[WebFrame _makeDocumentView]):
485 (-[WebFrame _updateBackground]):
486 * WebView/WebFrameInternal.h:
487 * WebView/WebFrameView.m:
488 (-[WebFrameView drawRect:]):
490 (-[WebView setBackgroundColor:]):
491 (-[WebView backgroundColor]):
492 (-[WebView _commonInitializationWithFrameName:groupName:]):
493 (-[WebView setDrawsBackground:]):
494 * WebView/WebViewPrivate.h:
496 2006-08-24 Timothy Hatcher <timothy@apple.com>
500 Fix for Mail stationary. Selecting a stationary item would cause this exception.
501 *** -[WebSubresourceLoader copyWithZone:]: selector not recognized
502 Uncaught exception - *** -[WebSubresourceLoader copyWithZone:]: selector not recognized
504 * Loader/WebFrameLoader.m:
505 (-[WebFrameLoader willUseArchiveForRequest:originalURL:loader:]):
506 Use _webkit_setObject:forUncopiedKey: when addign the resource to pendingArchivedResources.
508 2006-08-23 Maciej Stachowiak <mjs@apple.com>
512 - fix assertion which I accidentally changed to one that sometimes fails
513 http://bugzilla.opendarwin.org/show_bug.cgi?id=10531
515 * Loader/WebDocumentLoadState.m:
516 (-[WebDocumentLoadState dealloc]):
517 * WebView/WebDataSource.m:
518 (-[WebDataSourcePrivate dealloc]):
519 (-[WebDataSource dealloc]):
521 2006-08-23 Maciej Stachowiak <mjs@apple.com>
525 - move WebFrame code that creates WebDataSources down to WebFrameLoader, in preparation
526 for WebFrameLoader just holding on to WebDocumentLoadState
528 * Loader/WebFrameLoader.h:
529 * Loader/WebFrameLoader.m:
530 (-[WebFrameLoader _loadRequest:archive:]):
531 (-[WebFrameLoader _loadRequest:triggeringAction:loadType:formState:]):
532 (-[WebFrameLoader _reloadAllowingStaleDataWithOverrideEncoding:]):
533 (-[WebFrameLoader reload]):
534 * WebView/WebFrame.m:
535 (-[WebFrame _loadItem:withLoadType:]):
536 (-[WebFrame _continueLoadRequestAfterNewWindowPolicy:frameName:formState:]):
537 (-[WebFrame _loadURL:referrer:loadType:target:triggeringEvent:form:formValues:]):
538 (-[WebFrame _postWithURL:referrer:target:data:contentType:triggeringEvent:form:formValues:]):
539 (-[WebFrame _shouldReloadToHandleUnreachableURLFromRequest:]):
540 (-[WebFrame loadRequest:]):
541 (-[WebFrame loadArchive:]):
542 (-[WebFrame reload]):
543 * WebView/WebFrameInternal.h:
544 * WebView/WebFramePrivate.h:
546 (-[WebView setCustomTextEncodingName:]):
548 2006-08-23 Brady Eidson <beidson@apple.com>
552 First pass at pruning unused WebIconDatabase code. Focus on removing methods that simply
553 have no place in the new DB at all. A few renames and a few important FIXMEs result, but no
554 functionality changes.
556 * Loader/WebIconLoader.m:
557 (-[WebIconLoader didFinishLoading]): Call to WebIconDatabase instead of directly to the bridge
558 * Misc/WebIconDatabase.h:
559 * Misc/WebIconDatabase.m:
560 (-[WebIconDatabase init]):
561 (-[WebIconDatabase iconForURL:withSize:cache:]):
562 (-[WebIconDatabase iconURLForURL:]):
563 (-[WebIconDatabase defaultIconWithSize:]):
564 (-[WebIconDatabase retainIconForURL:]):
565 (-[WebIconDatabase releaseIconForURL:]):
566 (-[WebIconDatabase removeAllIcons]):
567 (-[WebIconDatabase _setIconData:forIconURL:]):
568 (-[WebIconDatabase _setHaveNoIconForIconURL:]):
569 (-[WebIconDatabase _setIconURL:forURL:]):
570 (-[WebIconDatabase _hasEntryForIconURL:]):
571 (-[WebIconDatabase _applicationWillTerminate:]):
572 (-[WebIconDatabase _resetCachedWebPreferences:]):
573 * Misc/WebIconDatabasePrivate.h: Changed setIcon: to setIconData:
575 2006-08-23 Maciej Stachowiak <mjs@apple.com>
579 - started factoring most of the guts of WebDataSource into a new class
581 WebDocumentLoadState is decoupled from the rest of WebKit and will
582 be moved down to WebCore. I only moved one of the data fields of
583 WebDataSource for now.
585 * Loader/WebDocumentLoadState.h: Added.
586 * Loader/WebDocumentLoadState.m: Added.
587 (-[WebDocumentLoadState initWithRequest:]): New class.
588 (-[WebDocumentLoadState dealloc]):
589 (-[WebDocumentLoadState setFrameLoader:]):
590 (-[WebDocumentLoadState setMainResourceData:]):
591 (-[WebDocumentLoadState mainResourceData]):
592 * Loader/WebFrameLoader.m:
593 (-[WebFrameLoader _setDataSource:]): Remove redundant _setWebFrame: call,
594 it would have been called already by this point.
595 (-[WebFrameLoader _setProvisionalDataSource:]): ditto.
596 * WebKit.xcodeproj/project.pbxproj:
597 * WebView/WebDataSource.m:
598 (-[WebDataSourcePrivate dealloc]):
599 (-[WebDataSource _setWebFrame:]):
600 (-[WebDataSource _setPrimaryLoadComplete:]):
601 (-[WebDataSource initWithRequest:]):
602 (-[WebDataSource data]):
604 2006-08-23 Maciej Stachowiak <mjs@apple.com>
608 - refactoring of WebDataSource in preparation for moving a bunch of it to a new class
610 - minimize WebDataSourceInternal.h to be only methods called from outside WebDataSource
611 - reduce Private category implementation to be only the SPI methods
612 - make new Internal and FileInternal categories which contain the
613 remainder (depending on whether they are called from outside of
616 * WebView/WebDataSource.m:
617 (-[WebDataSource _setMainDocumentError:]):
619 (+[WebDataSource _representationClassForMIMEType:]):
620 (-[WebDataSource _commitIfReady]):
621 (-[WebDataSource _commitLoadWithData:]):
622 (-[WebDataSource _doesProgressiveLoadWithMIMEType:]):
623 (-[WebDataSource _addResponse:]):
624 (-[WebDataSource _revertToProvisionalState]):
625 (-[WebDataSource _mainDocumentError]):
626 (-[WebDataSource _addSubframeArchives:]):
627 (-[WebDataSource _fileWrapperForURL:]):
628 (+[WebDataSource _repTypesAllowImageTypeOmission:]):
629 (-[WebDataSource _decidePolicyForMIMEType:decisionListener:]):
630 (-[WebDataSource _finishedLoading]):
631 (-[WebDataSource _setResponse:]):
632 (-[WebDataSource _setRequest:]):
633 (-[WebDataSource _setupForReplaceByMIMEType:]):
634 (-[WebDataSource _receivedMainResourceError:complete:]):
635 (-[WebDataSource _mainReceivedError:complete:]):
636 (-[WebDataSource _defersCallbacks]):
637 (-[WebDataSource _downloadWithLoadingConnection:request:response:proxy:]):
638 (-[WebDataSource _didFailLoadingWithError:forResource:]):
639 (-[WebDataSource _didFinishLoadingForResource:]):
640 (-[WebDataSource _didReceiveData:contentLength:forResource:]):
641 (-[WebDataSource _didReceiveResponse:forResource:]):
642 (-[WebDataSource _didCancelAuthenticationChallenge:forResource:]):
643 (-[WebDataSource _didReceiveAuthenticationChallenge:forResource:]):
644 (-[WebDataSource _willSendRequest:forResource:redirectResponse:]):
645 (-[WebDataSource _identifierForInitialRequest:]):
646 (-[WebDataSource _archivedSubresourceForURL:]):
647 (-[WebDataSource _startLoading]):
648 (-[WebDataSource _stopRecordingResponses]):
649 (-[WebDataSource _loadingStartedTime]):
650 (-[WebDataSource _replaceSelectionWithArchive:selectReplacement:]):
651 (-[WebDataSource _documentFragmentWithArchive:]):
652 (-[WebDataSource _documentFragmentWithImageResource:]):
653 (-[WebDataSource _imageElementWithImageResource:]):
654 (-[WebDataSource _title]):
655 (-[WebDataSource _isStopping]):
656 (-[WebDataSource _setWebFrame:]):
657 (-[WebDataSource _URL]):
658 (-[WebDataSource _loadFromPageCache:]):
659 (-[WebDataSource _popSubframeArchiveWithName:]):
660 (-[WebDataSource _setIsClientRedirect:]):
661 (-[WebDataSource _setURL:]):
662 (-[WebDataSource _setLastCheckedRequest:]):
663 (-[WebDataSource _defersCallbacksChanged]):
664 (-[WebDataSource _lastCheckedRequest]):
665 (-[WebDataSource _stopLoading]):
666 (-[WebDataSource _bridge]):
667 (-[WebDataSource _webView]):
668 (-[WebDataSource _triggeringAction]):
669 (-[WebDataSource _setTriggeringAction:]):
670 (-[WebDataSource __adoptRequest:]):
671 (-[WebDataSource _isDocumentHTML]):
672 (-[WebDataSource _stopLoadingWithError:]):
673 (-[WebDataSource _setPrimaryLoadComplete:]):
674 (-[WebDataSource _responses]):
675 (-[WebDataSource _makeRepresentation]):
676 (-[WebDataSource _isClientRedirect]):
677 (-[WebDataSource _originalRequest]):
678 (-[WebDataSource _URLForHistory]):
679 (-[WebDataSource _addToUnarchiveState:]):
680 (-[WebDataSource _setOverrideEncoding:]):
681 (-[WebDataSource _setIconURL:]):
682 (-[WebDataSource _setIconURL:withType:]):
683 (-[WebDataSource _overrideEncoding]):
684 (-[WebDataSource _setTitle:]):
685 * WebView/WebDataSourceInternal.h:
687 2006-08-23 Brady Eidson <beidson@apple.com>
689 Reviewed by John Sullivan
692 Flip the switch to the new Icon Database
693 Massive code pruning is coming up
695 * WebKitPrefix.h: Flipped the switch
697 2006-08-23 Brady Eidson <beidson@apple.com>
700 Since I just pushed the default URL icon from WebKit to WebCore, but
701 WebKit was still using its version of the default icon, this patch makes it
702 use the WebCore version
704 * Misc/WebIconDatabase.m:
705 (-[WebIconDatabase defaultIconWithSize:]):
707 2006-08-22 Maciej Stachowiak <mjs@apple.com>
711 - remove "loading" flag from WebDataSource and code that manages it; it is redundat.
713 * Loader/WebFrameLoader.m:
714 (-[WebFrameLoader addPlugInStreamLoader:]):
715 (-[WebFrameLoader removePlugInStreamLoader:]):
716 (-[WebFrameLoader addSubresourceLoader:]):
717 (-[WebFrameLoader removeSubresourceLoader:]):
718 * WebView/WebDataSource.m:
719 (-[WebDataSourcePrivate dealloc]):
720 (-[WebDataSource _setPrimaryLoadComplete:]):
721 (-[WebDataSource _stopLoading]):
722 (-[WebDataSource _prepareForLoadStart]):
723 (-[WebDataSource _startLoading]):
724 (-[WebDataSource isLoading]):
725 * WebView/WebDataSourceInternal.h:
727 2006-08-22 Maciej Stachowiak <mjs@apple.com>
731 <rdar://problem/4683948> REGRESSION: Assertion failure in [FrameProgressEntry addChild:forDataSource:] (fandango.com)
733 * Loader/WebFrameLoader.m:
734 (-[WebFrameLoader addSubresourceLoader:]): Add a WebKit-level assertion that should fire when this bad
736 * Loader/WebSubresourceLoader.m:
737 (+[WebSubresourceLoader startLoadingResource:withRequest:customHeaders:referrer:forFrameLoader:]): Prevent
738 the situation from occuring.
740 2006-08-22 Maciej Stachowiak <mjs@apple.com>
744 - pull more WebDataSource code into WebFrameLoader
745 - make WebMainResourceLoader not depend on WebKit or on SPI
747 * Loader/WebFrameLoader.h:
748 * Loader/WebFrameLoader.m:
749 (-[WebFrameLoader _downloadWithLoadingConnection:request:response:proxy:]):
750 (-[WebFrameLoader _updateIconDatabaseWithURL:]):
751 (-[WebFrameLoader _notifyIconChanged:]):
752 (-[WebFrameLoader _iconLoaderReceivedPageIcon:]):
753 (-[WebFrameLoader _checkNavigationPolicyForRequest:andCall:withSelector:]):
754 (-[WebFrameLoader _checkContentPolicyForMIMEType:andCall:withSelector:]):
755 (-[WebFrameLoader cancelContentPolicy]):
756 * Loader/WebIconLoader.m:
757 (-[WebIconLoader didFinishLoading]):
758 * Loader/WebLoader.m:
759 (-[NSURLProtocol loadWithRequest:]):
760 (-[NSURLProtocol setDefersCallbacks:]):
761 * Loader/WebMainResourceLoader.h:
762 * Loader/WebMainResourceLoader.m:
763 (-[WebMainResourceLoader initWithFrameLoader:]):
764 (-[WebMainResourceLoader dealloc]):
765 (-[WebMainResourceLoader cancelWithError:]):
766 (-[WebMainResourceLoader continueAfterNavigationPolicy:formState:]):
767 (-[WebMainResourceLoader willSendRequest:redirectResponse:]):
768 (-[WebMainResourceLoader continueAfterContentPolicy:]):
769 (-[WebMainResourceLoader checkContentPolicy]):
770 (-[WebMainResourceLoader didReceiveResponse:]):
771 * Plugins/WebPluginContainerCheck.m:
772 * WebCoreSupport/WebSystemInterface.m:
773 (InitWebCoreSystemInterface):
774 * WebView/WebDataSource.m:
775 (-[WebDataSource _loadIcon]):
776 (-[WebDataSource _cancelledError]):
777 (+[WebDataSource _repTypesAllowImageTypeOmission:]):
778 (+[WebDataSource _representationClassForMIMEType:]):
779 (-[WebDataSource _commitLoadWithData:]):
780 (-[WebDataSource _isDocumentHTML]):
781 * WebView/WebDataSourceInternal.h:
782 * WebView/WebFramePrivate.h:
783 * WebView/WebPolicyDelegate.m:
784 * WebView/WebPolicyDelegatePrivate.h:
786 2006-08-21 Maciej Stachowiak <mjs@apple.com>
790 - move more code from WebDataSource to WebFrameLoader
792 Also marked a few more methods in WebDataSource as likely MOVABLE in a future round, since they do not
793 use any of WebDataSource's private data.
795 * Loader/WebFrameLoader.h:
796 * Loader/WebFrameLoader.m:
797 (-[WebFrameLoader addPlugInStreamLoader:]):
798 (-[WebFrameLoader removePlugInStreamLoader:]):
799 (-[WebFrameLoader addSubresourceLoader:]):
800 (-[WebFrameLoader removeSubresourceLoader:]):
801 (-[WebFrameLoader _didReceiveAuthenticationChallenge:forResource:]):
802 (-[WebFrameLoader _didCancelAuthenticationChallenge:forResource:]):
803 (-[WebFrameLoader _didReceiveResponse:forResource:]):
804 (-[WebFrameLoader _didReceiveData:contentLength:forResource:]):
805 (-[WebFrameLoader _didFinishLoadingForResource:]):
806 (-[WebFrameLoader _didFailLoadingWithError:forResource:]):
807 (-[WebFrameLoader _privateBrowsingEnabled]):
808 (-[WebFrameLoader _finishedLoadingResource]):
809 (-[WebFrameLoader _receivedError:]):
810 (-[WebFrameLoader _finishedLoading]):
811 * Loader/WebMainResourceLoader.m:
812 (-[WebMainResourceLoader didReceiveData:lengthReceived:allAtOnce:]):
813 (-[WebMainResourceLoader didFinishLoading]):
814 * Loader/WebNetscapePlugInStreamLoader.m:
815 (-[WebNetscapePlugInStreamLoader didFinishLoading]):
816 (-[WebNetscapePlugInStreamLoader didFailWithError:]):
817 (-[WebNetscapePlugInStreamLoader cancelWithError:]):
818 * Loader/WebSubresourceLoader.m:
819 (+[WebSubresourceLoader startLoadingResource:withRequest:customHeaders:referrer:forFrameLoader:]):
820 (-[WebSubresourceLoader signalFinish]):
821 (-[WebSubresourceLoader didFailWithError:]):
822 (-[WebSubresourceLoader cancel]):
823 * Plugins/WebNetscapePluginStream.m:
824 (-[WebNetscapePluginStream start]):
825 * WebView/WebDataSource.m:
826 (-[WebDataSource _replaceSelectionWithArchive:selectReplacement:]):
827 (-[WebDataSource _updateIconDatabaseWithURL:]):
828 (-[WebDataSource _loadIcon]):
829 (-[WebDataSource _setPrimaryLoadComplete:]):
830 (-[WebDataSource _cancelledError]):
831 (+[WebDataSource _repTypesAllowImageTypeOmission:]):
832 (+[WebDataSource _representationClassForMIMEType:]):
833 (-[WebDataSource _commitLoadWithData:]):
834 (-[WebDataSource _receivedMainResourceError:complete:]):
835 (-[WebDataSource _iconLoaderReceivedPageIcon:]):
836 (-[WebDataSource _isDocumentHTML]):
837 * WebView/WebDataSourceInternal.h:
839 2006-08-21 Brady Eidson <beidson@apple.com>
843 Quick ICONDEBUG flag fix
845 * Misc/WebIconDatabase.m:
846 (-[WebIconDatabase _applicationWillTerminate:]):
848 2006-08-21 Brady Eidson <beidson@apple.com>
852 -Renamed an internal only method for clarity
853 -Tweaked WebDataSource for notification purposes with the new expiring icons
854 -Fixed a bug with the ICONDEBUG flag
856 * Misc/WebIconDatabase.m:
857 (-[WebIconDatabase init]):
858 (-[WebIconDatabase iconForURL:withSize:cache:]): #ifdef bug fixed
859 (-[WebIconDatabase _hasEntryForIconURL:]): Renamed for clarity
860 * Misc/WebIconDatabasePrivate.h:
861 * WebView/WebDataSource.m:
862 (-[WebDataSource _updateIconDatabaseWithURL:]):
863 (-[WebDataSource _notifyIconChanged:]):
864 (-[WebDataSource _loadIcon]):
865 (-[WebDataSource _iconLoaderReceivedPageIcon:]):
867 2006-08-17 Maciej Stachowiak <mjs@apple.com>
871 - pull a bit of WebDataSource code into WebFrameLoader
873 * Loader/WebFrameLoader.m:
874 (-[WebFrameLoader _receivedError:]):
875 (-[WebFrameLoader webFrame]):
876 (-[WebFrameLoader _handleFallbackContent]):
877 (+[WebFrameLoader _canShowMIMEType:]):
878 (+[WebFrameLoader _representationExistsForURLScheme:]):
879 (+[WebFrameLoader _generatedMIMETypeForURLScheme:]):
880 * WebView/WebDataSource.m:
881 * WebView/WebDataSourceInternal.h:
883 2006-08-17 Timothy Hatcher <timothy@apple.com>
885 Reviewed by Kevin Decker.
887 <rdar://problem/4606857> WebKit: WebPreferencesChangedNotification not exported in 64-bit
891 2006-08-17 Timothy Hatcher <timothy@apple.com>
893 Reviewed by Kevin Decker.
895 <rdar://problem/4633896> -[WebView close] should clear all delegates and call setHostWindow:nil
896 <rdar://problem/4649759> Crash when selecting View Source menu using Chinese (-[WebView _close])
898 Check to make sure _private is not null. A WebView can be dealloced before _private is setup.
899 Set the _private->closed flag at the beginning of _close to prevent reentry.
900 Set the host window and all the delegates to nil in _close.
905 2006-08-16 Brady Eidson <beidson@apple.com>
909 * Misc/WebIconDatabase.m: Pruned unused method
910 * Misc/WebIconDatabasePrivate.h: Ditto
913 2006-08-15 Maciej Stachowiak <mjs@apple.com>
915 Reviewed by Adele (preliminary version) and later by Kevin.
917 - remove most WebKit dependencies from WebMainResourceLoader.
919 * Loader/WebFrameLoader.h:
920 * Loader/WebFrameLoader.m:
921 (-[WebFrameLoader cannotShowMIMETypeForURL:]):
922 (-[WebFrameLoader interruptForPolicyChangeErrorWithRequest:]):
923 (-[WebFrameLoader isHostedByObjectElement]):
924 (-[WebFrameLoader isLoadingMainFrame]):
925 (+[WebFrameLoader _canShowMIMEType:]):
926 (+[WebFrameLoader _representationExistsForURLScheme:]):
927 (+[WebFrameLoader _generatedMIMETypeForURLScheme:]):
928 * Loader/WebMainResourceLoader.h:
929 * Loader/WebMainResourceLoader.m:
930 (-[WebMainResourceLoader interruptForPolicyChangeError]):
931 (-[WebMainResourceLoader willSendRequest:redirectResponse:]):
932 (isCaseInsensitiveEqual):
933 (shouldLoadAsEmptyDocument):
934 (-[WebMainResourceLoader continueAfterContentPolicy:response:]):
935 (-[WebMainResourceLoader didReceiveResponse:]):
936 (-[WebMainResourceLoader didReceiveData:lengthReceived:allAtOnce:]):
937 (-[WebMainResourceLoader didFinishLoading]):
938 (-[WebMainResourceLoader loadWithRequestNow:]):
939 (-[WebMainResourceLoader loadWithRequest:]):
941 2006-08-15 Tim Omernick <timo@apple.com>
943 Reviewed by Kevin Decker.
945 * Plugins/WebNetscapePluginPackage.m:
946 (-[WebNetscapePluginPackage _unloadWithShutdown:]):
947 Fixed a subtle problem with the 64-bit debug build -- as written, this would LOG() on 64-bit and do nothing on
949 * Plugins/WebPluginDatabase.m:
950 (-[WebPluginDatabase _scanForNewPlugins]):
951 Use +[NSMutableSet set] here.
953 2006-08-15 Tim Omernick <timo@apple.com>
955 Reviewed by Darin Adler.
957 <http://bugzilla.opendarwin.org/show_bug.cgi?id=8980>
958 ASSERTION FAILED: !isLoaded (WebKit/WebKit/Plugins/WebBasePluginPackage.m:228 -[WebBasePluginPackage dealloc])
960 <rdar://problem/4526052> intermittent assertion failure in -[WebBasePluginPackage dealloc] running layout tests (8980)
962 * Plugins/WebPluginDatabase.h:
963 * Plugins/WebPluginDatabase.m:
964 (+[WebPluginDatabase installedPlugins]):
965 Observe NSApplicationWillTerminateNotification so we can unload plug-ins on quit.
966 (-[WebPluginDatabase plugins]):
967 'plugins' is now a dictionary.
968 (-[WebPluginDatabase close]):
969 Call new -_removePlugin: method.
970 (-[WebPluginDatabase refresh]):
971 Moved parts of this method out into other methods: -_addPlugin:, -_removePlugin:, and -_scanForNewPlugins.
972 (-[WebPluginDatabase _plugInPaths]):
973 No changes; just moved in file.
974 (-[WebPluginDatabase _addPlugin:]):
975 New method. Refactored from -refresh. Adds a plug-in to the database.
976 (-[WebPluginDatabase _removePlugin:]):
977 New method. Refactored from -refresh. Remove a plug-in from the database.
978 (-[WebPluginDatabase _scanForNewPlugins]):
979 New method. Refactored from -refresh. Returns the list of plug-in packages on disk.
980 (-[WebPluginDatabase _applicationWillTerminate]):
981 New method. Called when the application terminates. Closes the plug-in database so that all plug-ins are
982 removed from the DB (and unloaded if necessary).
984 * Plugins/WebBasePluginPackage.h:
985 * Plugins/WebBasePluginPackage.m:
986 (-[WebBasePluginPackage initWithPath:]):
987 Try to create the NSBundle first, so if the file is not a valid bundle we bail out early. This
988 avoids some stat()s and allocations during the plug-in refresh process.
989 (-[WebBasePluginPackage isLoaded]):
991 (-[WebBasePluginPackage load]):
992 Base class for plug-in packages now always loads "successfully".
993 (-[WebBasePluginPackage dealloc]):
994 Removed this assertion. The base plug-in package class has no concept of
996 (-[WebBasePluginPackage finalize]):
998 (-[WebBasePluginPackage wasRemovedFromPluginDatabase:]):
999 Moved code to unload plug-in package to WebNetscapePluginPackage. Not all plug-in
1000 packages can be "unloaded".
1002 * Plugins/WebNetscapePluginPackage.h:
1003 * Plugins/WebNetscapePluginPackage.m:
1004 (-[WebNetscapePluginPackage _unloadWithShutdown:]):
1005 Combined old -unload and -unloadWithoutShutdown methods into this new one.
1006 (-[WebNetscapePluginPackage initWithPath:]):
1007 Call new unload method.
1008 (-[WebNetscapePluginPackage load]):
1010 (-[WebNetscapePluginPackage wasRemovedFromPluginDatabase:]):
1012 (-[WebNetscapePluginPackage open]):
1013 New method. Called when a plug-in instance starts running.
1014 (-[WebNetscapePluginPackage close]):
1015 New method. Called when a plug-in instance stops running. When all plug-in instances
1016 close the plug-in package, and the plug-in package is removed from the database, the plug-in
1019 * Plugins/WebPluginPackage.m:
1020 (-[WebPluginPackage initWithPath:]):
1021 (-[WebPluginPackage load]):
1022 Made this a bit more efficient by checking if the bundle is already loaded.
1023 (-[WebBasePluginPackage unload]):
1025 (-[WebBasePluginPackage isLoaded]):
1028 * Plugins/WebBaseNetscapePluginView.m:
1029 (-[WebBaseNetscapePluginView start]):
1030 Open the plug-in package so it remains loaded while this instance uses it.
1031 (-[WebBaseNetscapePluginView stop]):
1032 Close the plug-in package when the plug-in instance is stopped.
1034 * Plugins/WebBaseNetscapePluginStream.m:
1035 (-[WebBaseNetscapePluginStream startStreamResponseURL:expectedContentLength:lastModifiedDate:MIMEType:]):
1036 This check is not necessary. Netscape plug-in packages are never unloaded until all their instances have
1037 been stopped, and a Netscape plug-in instance will stop its streams when it is stopped.
1038 (-[WebBaseNetscapePluginStream _destroyStream]):
1040 (-[WebBaseNetscapePluginStream finishedLoadingWithData:]):
1042 (-[WebBaseNetscapePluginStream _deliverData]):
1045 2006-08-15 Mark Rowe <opendarwin.org@bdash.net.nz>
1049 Build fix: DWARF and -gfull are incompatible with symbol separation.
1051 * WebKit.xcodeproj/project.pbxproj:
1053 2006-08-15 Mark Rowe <opendarwin.org@bdash.net.nz>
1057 http://bugzilla.opendarwin.org/show_bug.cgi?id=10394
1058 Bug 10394: WebKit Release and Production configurations should enable dead code stripping
1060 * WebKit.xcodeproj/project.pbxproj:
1062 2006-08-15 Maciej Stachowiak <mjs@apple.com>
1066 - remove WebKit dependencies from WebPlugInStreamLoader via a protocol veil of ignorance
1068 * Loader/WebNetscapePlugInStreamLoader.h:
1069 * Loader/WebNetscapePlugInStreamLoader.m:
1070 (-[WebNetscapePlugInStreamLoader initWithDelegate:frameLoader:]):
1071 * Loader/WebPlugInStreamLoaderDelegate.h: Added.
1072 * Plugins/WebBaseNetscapePluginStream.h:
1073 * Plugins/WebNetscapePluginStream.m:
1074 (-[WebNetscapePluginStream initWithRequest:pluginPointer:notifyData:sendNotification:]):
1075 * WebKit.xcodeproj/project.pbxproj:
1077 2006-08-15 Mark Rowe <opendarwin.org@bdash.net.nz>
1081 http://bugzilla.opendarwin.org/show_bug.cgi?id=10384
1082 Bug 10384: Switch to DWARF for Release configuration
1084 * WebKit.xcodeproj/project.pbxproj:
1086 2006-08-15 Graham Dennis <graham.dennis@gmail.com>
1090 - patch for http://bugzilla.opendarwin.org/show_bug.cgi?id=10314
1091 WebUnarchivingState archivedResourceForURL: doesn't work
1093 * WebView/WebUnarchivingState.m:
1094 (-[WebUnarchivingState archivedResourceForURL:]):
1095 Fixed to get objects from the archived resources dictionary using
1096 the URL as a string instead of as the URL itself (as this is how
1097 the data is put into the dictionary).
1099 2006-08-14 Maciej Stachowiak <mjs@apple.com>
1103 - remove many (but not all) WebKit dependencies from WebNetscapePlugInStreamLoader (it still
1104 depends on WebNetscapePluginStream).
1106 * Loader/WebFrameLoader.h:
1107 * Loader/WebFrameLoader.m:
1108 (-[WebFrameLoader fileDoesNotExistErrorWithResponse:]):
1109 * Loader/WebNetscapePlugInStreamLoader.h:
1110 * Loader/WebNetscapePlugInStreamLoader.m:
1111 (-[WebNetscapePlugInStreamLoader initWithStream:frameLoader:]):
1112 (-[WebNetscapePlugInStreamLoader releaseResources]):
1113 (-[WebNetscapePlugInStreamLoader didReceiveResponse:]):
1114 * Plugins/WebNetscapePluginStream.m:
1115 (-[WebNetscapePluginStream initWithRequest:pluginPointer:notifyData:sendNotification:]):
1117 2006-08-14 Maciej Stachowiak <mjs@apple.com>
1119 Reviewed by Tim Omernick.
1121 - fixed REGRESSION: crash when leaving youtube page while movie is still loading
1122 http://bugzilla.opendarwin.org/show_bug.cgi?id=10398
1124 * Loader/WebNetscapePlugInStreamLoader.m:
1125 (-[WebNetscapePlugInStreamLoader initWithStream:view:]): Set the frame loader for this stream.
1126 (-[WebNetscapePlugInStreamLoader cancelWithError:]): Make sure to destroy the stream as well;
1127 otherwise, when we try to clean up later, we won't have the right context.
1129 2006-08-14 David Hyatt <hyatt@apple.com>
1131 Fix for Radar bug 4478840, Safari should not reduce null events sent to
1132 plug-ins in windows that are inactive but visible.
1134 With this fix you can view videos in visible background windows on YouTube
1135 (for example) and not see any drop in frame rate.
1139 * Plugins/WebBaseNetscapePluginView.m:
1140 (-[WebBaseNetscapePluginView restartNullEvents]):
1142 2006-08-14 Maciej Stachowiak <mjs@apple.com>
1146 - removed WebKit-level dependencies from WebFormDataStream. Use WebCore version of system interface
1148 * Loader/WebFormDataStream.m:
1150 (formEventCallback):
1152 * WebCoreSupport/WebSystemInterface.m:
1153 (InitWebCoreSystemInterface):
1155 2006-08-14 Maciej Stachowiak <mjs@apple.com>
1157 Rubber stamped by Brady.
1159 - move WebFormDataStream from WebView to Loader
1161 * WebKit.xcodeproj/project.pbxproj:
1162 * WebView/WebFormDataStream.h: Removed.
1163 * WebView/WebFormDataStream.m: Removed.
1165 2006-08-13 Maciej Stachowiak <mjs@apple.com>
1169 - remove WebKit dependencies from WebSubresourceLoader, except WebFormDataStream
1171 (WebFormDataStream will be moved into the Loader directory soon)
1173 * Loader/WebFrameLoader.h:
1174 * Loader/WebFrameLoader.m:
1175 (-[WebFrameLoader _addExtraFieldsToRequest:mainResource:alwaysFromRequest:]):
1176 * Loader/WebSubresourceLoader.m:
1177 (isConditionalRequest):
1178 (hasCaseInsensitivePrefix):
1181 (+[WebSubresourceLoader startLoadingResource:withRequest:customHeaders:referrer:forFrameLoader:]):
1183 2006-08-13 Brady Eidson <beidson@apple.com>
1187 Relocated the WebIconLoaders
1189 * Misc/WebIconLoader.h: Moved to Loader/
1190 * Misc/WebIconLoader.m: Moved to Loader/
1191 * WebKit.xcodeproj/project.pbxproj:
1193 2006-08-13 Maciej Stachowiak <mjs@apple.com>
1197 - removed non-Loader WebKit dependencies from WebDataProtocol for
1198 real (whoops) and fix some typos.
1200 * Loader/WebDataProtocol.m:
1201 (isCaseInsensitiveEqual): Added.
1202 (+[WebDataProtocol _webIsDataProtocolURL:]): Avoid WebKit calls.
1203 (-[WebDataProtocol startLoading]): ditto
1204 * Loader/WebFrameLoader.m:
1205 (isCaseInsensitiveEqual): Fixed spelling from isCaseSensitiveEqual.
1206 (-[WebFrameLoader _canUseResourceForRequest:]): Use proper call.
1208 2006-08-13 Brady Eidson <beidson@apple.com>
1212 The way of detecting a failed icon load before was to try and construct
1213 an image from the icon and if that image construction failed, mark the icon
1215 A much more efficient way is to check for an error response. We'll still
1216 check for invalid image data, but most servers will correctly return an HTTP
1217 error on a missing icon.
1219 * Misc/WebIconLoader.m:
1220 (-[WebIconLoader didFinishLoading]): Added check for http error response
1222 2006-08-13 Maciej Stachowiak <mjs@apple.com>
1226 - remove all non-Loader dependencies from WebLoader
1228 As part of this I moved WebDataProtocol to the loader directory
1229 and removed dependencies on the rest of WebKit from that too.
1231 * Loader/WebFrameLoader.h:
1232 * Loader/WebFrameLoader.m:
1233 (-[WebFrameLoader setDefersCallbacks:]):
1234 (-[WebFrameLoader stopLoading]):
1235 (-[WebFrameLoader cancelledErrorWithRequest:]):
1236 (-[WebFrameLoader clearArchivedResources]):
1237 (-[WebFrameLoader deliverArchivedResources]):
1238 (-[WebFrameLoader deliverArchivedResourcesAfterDelay]):
1239 (isCaseSensitiveEqual):
1240 (-[WebFrameLoader _canUseResourceForRequest:]):
1241 (-[WebFrameLoader _canUseResourceWithResponse:]):
1242 (-[WebFrameLoader pendingArchivedResources]):
1243 (-[WebFrameLoader willUseArchiveForRequest:originalURL:loader:]):
1244 (-[WebFrameLoader archiveLoadPendingForLoader:]):
1245 (-[WebFrameLoader cancelPendingArchiveLoadForLoader:]):
1246 * Loader/WebLoader.h:
1247 * Loader/WebLoader.m:
1248 (-[NSURLProtocol releaseResources]):
1249 (-[NSURLProtocol loadWithRequest:]):
1250 (-[NSURLProtocol setDefersCallbacks:]):
1251 (-[NSURLProtocol addData:allAtOnce:]):
1252 (-[NSURLProtocol resourceData]):
1253 (-[NSURLProtocol didReceiveData:lengthReceived:allAtOnce:]):
1254 (-[NSURLProtocol connection:didReceiveData:lengthReceived:]):
1255 (-[NSURLProtocol cancelWithError:]):
1256 (-[NSURLProtocol cancelledError]):
1257 * Loader/WebMainResourceLoader.m:
1258 (-[WebMainResourceLoader addData:allAtOnce:]):
1259 (-[WebMainResourceLoader didReceiveData:lengthReceived:allAtOnce:]):
1260 * Loader/WebNetscapePlugInStreamLoader.m:
1261 (-[WebNetscapePlugInStreamLoader didReceiveData:lengthReceived:allAtOnce:]):
1262 * Loader/WebSubresourceLoader.m:
1263 (-[WebSubresourceLoader didReceiveData:lengthReceived:allAtOnce:]):
1264 * WebKit.xcodeproj/project.pbxproj:
1265 * WebView/WebDataProtocol.h: Removed.
1266 * WebView/WebDataProtocol.m: Removed.
1268 2006-08-11 Tim Omernick <timo@apple.com>
1272 <http://bugzilla.opendarwin.org/show_bug.cgi?id=10111> - Menu flickers over Flash content
1273 <rdar://problem/3052546> Plugins don't work with z-index (overlapping elements, etc.)
1275 * Plugins/WebBaseNetscapePluginView.m:
1276 (-[WebBaseNetscapePluginView saveAndSetNewPortStateForUpdate:]):
1277 Don't just clip to the dirty region for "transparent" plug-ins -- do it for all plug-ins. This is a
1278 generally useful thing to do, as it prevents the plug-in from drawing over parts of the window that
1279 have already been drawn and are not expected to be redrawn in the same update.
1281 2006-08-11 Brady Eidson <beidson@apple.com>
1283 Reviewed by John, Timo, Adele, and Darin
1285 In addition to a few style/good-practice cleanups, this patch will convert the old icon database
1286 format to the WebCore format if the WebCore db is empty (implying this conversion has yet to take
1287 place). After the conversion, it will delete all traces of the old format to free the unneeded space
1289 * Misc/WebIconDatabase.m:
1290 (-[WebIconDatabase init]):
1291 (-[WebIconDatabase _setIconURL:forURL:]): Changed the bridge's name for this method to be more clear
1292 (-[WebIconDatabase _createFileDatabase]):
1293 (-[WebIconDatabase _iconDataForIconURL:]): This grabs the raw data for use in the conversion function
1294 (-[WebIconDatabase _convertToWebCoreFormat]): This does the actual conversion
1296 2006-08-11 Tim Omernick <timo@apple.com>
1298 Reviewed by John Sullivan.
1300 Needed for <rdar://problem/4678070>.
1302 * Plugins/WebBaseNetscapePluginView.m:
1303 (-[WebBaseNetscapePluginView sendEvent:]):
1304 Changed an assertion to an early return. It should be possible to send events, especially updateEvt (for image capturing
1305 purposes), to off-screen plug-ins. It just doesn't work right now. See <rdar://problem/4318269>.
1307 2006-08-11 John Sullivan <sullivan@apple.com>
1311 - fixed <rdar://problem/4522894> Would be nice if Safari shrank pages a little if necessary
1312 to avoid printing an almost-empty page
1314 * WebView/WebHTMLView.m:
1315 (-[NSArray knowsPageRange:]):
1316 If the last page has a short-enough orphan (< 1/10 of the page height is the number I pulled
1317 out of ... the air), then we adjust the scale factor slightly and check whether this reduces
1318 the page count and thus eliminates the orphan.
1320 2006-08-07 Brady Eidson <beidson@apple.com>
1322 Reviewed by Anders and John
1324 * Misc/WebIconDatabase.m:
1325 (-[WebIconDatabase init]):
1326 (-[WebIconDatabase isIconExpiredForIconURL:]): Get if an icon expired
1327 (-[WebIconDatabase isIconExpiredForPageURL:]): Ditto
1328 (-[WebIconDatabase _setIconURL:forURL:]):
1329 (-[WebIconDatabase _sendNotificationForURL:]): Moved to WebKitPendingPublic for use outside of WebIconDatabase
1330 (-[WebIconDatabase loadIconFromURL:]): Allow a load outside the context of a page load
1331 * Misc/WebIconDatabasePrivate.h:
1333 * Misc/WebIconLoader.m:
1334 (-[WebIconLoader didFinishLoading]): fixed up the "flipping the switch" #defs a bit
1335 (-[WebIconLoader willSendRequest:redirectResponse:]): override to allow a load
1336 outside of the context of a page load
1338 * WebCoreSupport/WebIconDatabaseBridge.h: Added.
1339 * WebCoreSupport/WebIconDatabaseBridge.m: Added.
1340 (-[WebIconDatabaseBridge init]):
1341 (-[WebIconDatabaseBridge dealloc]):
1342 (-[WebIconDatabaseBridge loadIconFromURL:]): Kick off a load on an icon outside
1343 of the context of any page load
1344 (-[WebIconDatabaseBridge _setIconData:forIconURL:]): WebKit side of bridge method
1345 (-[WebIconDatabaseBridge _setHaveNoIconForIconURL:]): WebKit side of bridge method
1346 (-[WebIconDatabaseBridge releaseCachedLoaderForIconURL:]):
1347 (+[WebIconDatabaseBridge sharedBridgeInstance]): Moved this from WebCore to WebKit
1348 so both sides of the bridge get the WebKit version
1349 * WebKit.xcodeproj/project.pbxproj: Added some files
1350 * WebView/WebDataSource.m:
1351 (-[WebDataSource _loadIcon]): Added check for reload/expired icon to force
1352 a load even if we already have it
1354 2006-08-04 Sam Weinig <sam.weinig@gmail.com>
1358 - patch for http://bugzilla.opendarwin.org/show_bug.cgi?id=10192
1359 Make WebCore (and friends) compile with -Wshorten-64-to-32
1361 * Adds 'f' to float literals where expecting a float.
1362 * Use ceilf() instead of ceil() when assigning to a float.
1363 * Adds explicit casts where OK.
1365 NOTE: The -Wshorten-64-to-32 flag was not added for WebKit
1366 because there are still a few places where no error handling
1367 is in place. The flag can be added as soon as those are worked
1370 * Misc/WebNSControlExtras.m:
1371 (-[NSControl sizeToFitAndAdjustWindowHeight]):
1372 * Misc/WebNSImageExtras.m:
1373 (-[NSImage _web_scaleToMaxSize:]):
1374 * Misc/WebNSViewExtras.h:
1375 * Misc/WebNSViewExtras.m:
1376 * Plugins/WebBaseNetscapePluginView.m:
1377 (-[WebBaseNetscapePluginView saveAndSetNewPortStateForUpdate:]):
1378 (-[WebBaseNetscapePluginView drawRect:]):
1379 * WebCoreSupport/WebFrameBridge.m:
1380 (-[WebFrameBridge expiresTimeForResponse:]):
1381 * WebInspector/WebInspector.m:
1382 (-[NSWindow window]):
1383 (-[WebInspector treeViewScrollTo:]):
1384 (-[WebInspector _updateSystemColors]):
1385 (-[WebInspector webView:plugInViewWithArguments:]):
1386 (-[WebInspector outlineView:objectValueForTableColumn:byItem:]):
1387 * WebInspector/WebInspectorOutlineView.m:
1388 (-[WebInspectorOutlineView _highlightRow:clipRect:]):
1389 * WebInspector/WebNodeHighlight.m:
1390 (-[WebNodeHighlight initWithBounds:andRects:forView:]):
1391 * WebInspector/WebNodeHighlightView.m:
1392 (-[WebNodeHighlightView roundedRect:withRadius:]):
1393 (-[WebNodeHighlightView initWithHighlight:andRects:forView:]):
1394 (-[WebNodeHighlightView drawRect:]):
1395 * WebView/WebFrame.m:
1396 (-[WebFrame _opened]):
1397 * WebView/WebFrameView.m:
1398 (-[WebFrameView initWithFrame:]):
1399 * WebView/WebHTMLView.m:
1400 (-[WebHTMLView _dragImageForLinkElement:]):
1401 (-[WebHTMLView _web_setPrintingModeRecursive]):
1402 (-[WebHTMLView _web_clearPrintingModeRecursive]):
1403 (-[NSArray layout]):
1404 (-[NSArray _setPrinting:minimumPageWidth:maximumPageWidth:adjustViewSize:]):
1405 (-[NSArray adjustPageHeightNew:top:bottom:limit:]):
1406 (-[NSArray _scaleFactorForPrintOperation:]):
1407 (-[NSArray setPageWidthForPrinting:]):
1408 (-[NSArray _endPrintMode]):
1409 (-[NSArray knowsPageRange:]):
1410 (-[NSArray _originalFontA]):
1411 (-[NSArray _originalFontB]):
1412 (-[WebTextCompleteController _buildUI]):
1413 (-[WebTextCompleteController _placePopupWindow:]):
1414 * WebView/WebPDFView.m:
1415 (-[WebPDFView _makeTextStandardSize:]):
1416 (-[WebPDFView selectionImageForcingWhiteText:]):
1417 (-[PDFPrefUpdatingProxy forwardInvocation:]):
1418 * WebView/WebPreferences.m:
1419 (-[WebPreferences _floatValueForKey:]):
1420 * WebView/WebView.m:
1421 (-[WebView makeTextSmaller:]):
1422 (-[WebView canMakeTextStandardSize]):
1423 (-[WebView makeTextStandardSize:]):
1425 2006-08-04 David Kilzer <ddkilzer@kilzer.net>
1427 Reviewed by NOBODY (build fix).
1429 * WebCoreSupport/WebSubresourceLoader.m: REALLY moved to Loader/
1430 * WebView/WebFrameLoader.h: REALLY moved to Loader/
1431 * WebView/WebFrameLoader.m: REALLY moved to Loader/
1432 * WebView/WebLoader.h: REALLY moved to Loader/
1433 * WebView/WebLoader.m: REALLY moved to Loader/
1434 * WebView/WebMainResourceLoader.m: REALLY moved to Loader/
1436 2006-08-03 Maciej Stachowiak <mjs@apple.com>
1440 - moved all loader code that is slated to be moved down to WebCore to a new Loader directory
1442 (next step is to remove dependencies on the rest of WebKit from this directory)
1444 * Loader/WebNetscapePlugInStreamLoader.h: Added.
1445 * Loader/WebNetscapePlugInStreamLoader.m: Added. Cut out of WebNetscapePluginStream.m
1446 (-[WebNetscapePlugInStreamLoader initWithStream:view:]):
1447 (-[WebNetscapePlugInStreamLoader isDone]):
1448 (-[WebNetscapePlugInStreamLoader releaseResources]):
1449 (-[WebNetscapePlugInStreamLoader didReceiveResponse:]):
1450 (-[WebNetscapePlugInStreamLoader didReceiveData:lengthReceived:]):
1451 (-[WebNetscapePlugInStreamLoader didFinishLoading]):
1452 (-[WebNetscapePlugInStreamLoader didFailWithError:]):
1453 (-[WebNetscapePlugInStreamLoader cancelWithError:]):
1454 * Plugins/WebNetscapePluginStream.m:
1455 * WebKit.xcodeproj/project.pbxproj:
1456 * WebCoreSupport/WebSubresourceLoader.h: Moved to Loader/
1457 * WebCoreSupport/WebSubresourceLoader.m: Moved to Loader/
1458 * WebView/WebFrameLoader.h: Moved to Loader/
1459 * WebView/WebFrameLoader.m: Moved to Loader/
1460 * WebView/WebLoader.h: Moved to Loader/
1461 * WebView/WebLoader.m: Moved to Loader/
1462 * WebView/WebMainResourceLoader.h: Moved to Loader/
1463 * WebView/WebMainResourceLoader.m: Moved to Loader/
1465 2006-08-03 Tim Omernick <timo@apple.com>
1467 Reviewed by Kevin Decker.
1469 <rdar://problem/4667460> Windowless OpenGL plug-ins render incorrectly on PowerPC
1471 * Plugins/WebBaseNetscapePluginView.m:
1472 (-[WebBaseNetscapePluginView _aglOffscreenImageForDrawingInRect:]):
1473 Fixed color component swapping so that it works on both x86 and PPC. See comments.
1475 2006-08-03 Brady Eidson <beidson@apple.com>
1477 Reviewed by Tim Hatcher's rubber stamp
1478 Fixed Intel build break caused by weinig's -W change in r15781
1480 * WebView/WebView.m: wrapped cpu-dependent defs with defined() macro
1482 2006-08-03 Maciej Stachowiak <mjs@apple.com>
1486 - fixed problem that could cause assertion failures in Safari
1488 * Plugins/WebBaseNetscapePluginView.m:
1489 (-[WebBaseNetscapePluginView loadRequest:inTarget:withNotifyData:sendNotification:]): Don't
1490 allow a plugin to start new loads once its document is no longer the one actively loading.
1492 2006-08-03 Maciej Stachowiak <mjs@apple.com>
1496 - remove use of WebDataSource from WebLoader and subclasses, just have them talk to the
1497 WebFrameLoader instead.
1499 For now this is done by forarding all the calls.
1501 * Misc/WebIconLoader.m:
1502 (-[WebIconLoader didFinishLoading]):
1503 * Plugins/WebNetscapePluginStream.m:
1504 (-[WebNetscapePluginStream initWithRequest:pluginPointer:notifyData:sendNotification:]):
1505 (-[WebNetscapePluginStream start]):
1506 (-[WebNetscapePlugInStreamLoader didFinishLoading]):
1507 (-[WebNetscapePlugInStreamLoader didFailWithError:]):
1508 (-[WebNetscapePlugInStreamLoader cancelWithError:]):
1509 * WebCoreSupport/WebFrameBridge.m:
1510 (-[WebFrameBridge startLoadingResource:withMethod:URL:customHeaders:]):
1511 (-[WebFrameBridge startLoadingResource:withMethod:URL:customHeaders:postData:]):
1512 * WebCoreSupport/WebSubresourceLoader.h:
1513 * WebCoreSupport/WebSubresourceLoader.m:
1514 (-[WebSubresourceLoader initWithLoader:frameLoader:]):
1515 (+[WebSubresourceLoader startLoadingResource:withRequest:customHeaders:referrer:forFrameLoader:]):
1516 (+[WebSubresourceLoader startLoadingResource:withMethod:URL:customHeaders:referrer:forFrameLoader:]):
1517 (+[WebSubresourceLoader startLoadingResource:withMethod:URL:customHeaders:postData:referrer:forFrameLoader:]):
1518 (-[WebSubresourceLoader receivedError:]):
1519 (-[WebSubresourceLoader signalFinish]):
1520 (-[WebSubresourceLoader didFailWithError:]):
1521 (-[WebSubresourceLoader cancel]):
1522 * WebKit.xcodeproj/project.pbxproj:
1523 * WebView/WebDataSource.m:
1524 (-[WebDataSource _updateLoading]):
1525 (-[WebDataSource textEncodingName]):
1526 (-[WebDataSource _mainReceivedBytesSoFar:complete:]):
1527 * WebView/WebFrameLoader.h:
1528 * WebView/WebFrameLoader.m:
1529 (-[WebFrameLoader loadIconWithRequest:]):
1530 (-[WebFrameLoader startLoadingMainResourceWithRequest:identifier:]):
1531 (-[WebFrameLoader clearIconLoader]):
1532 (-[WebFrameLoader commitProvisionalLoad]):
1533 (-[WebFrameLoader activeDataSource]):
1534 (-[WebFrameLoader _archivedSubresourceForURL:]):
1535 (-[WebFrameLoader _defersCallbacks]):
1536 (-[WebFrameLoader _identifierForInitialRequest:]):
1537 (-[WebFrameLoader _willSendRequest:forResource:redirectResponse:]):
1538 (-[WebFrameLoader _didReceiveAuthenticationChallenge:forResource:]):
1539 (-[WebFrameLoader _didCancelAuthenticationChallenge:forResource:]):
1540 (-[WebFrameLoader _didReceiveResponse:forResource:]):
1541 (-[WebFrameLoader _didReceiveData:contentLength:forResource:]):
1542 (-[WebFrameLoader _didFinishLoadingForResource:]):
1543 (-[WebFrameLoader _didFailLoadingWithError:forResource:]):
1544 (-[WebFrameLoader _privateBrowsingEnabled]):
1545 (-[WebFrameLoader _addPlugInStreamLoader:]):
1546 (-[WebFrameLoader _removePlugInStreamLoader:]):
1547 (-[WebFrameLoader _finishedLoadingResource]):
1548 (-[WebFrameLoader _receivedError:]):
1549 (-[WebFrameLoader _addSubresourceLoader:]):
1550 (-[WebFrameLoader _removeSubresourceLoader:]):
1551 (-[WebFrameLoader _originalRequest]):
1552 (-[WebFrameLoader webFrame]):
1553 (-[WebFrameLoader _receivedMainResourceError:complete:]):
1554 (-[WebFrameLoader initialRequest]):
1555 (-[WebFrameLoader _receivedData:]):
1556 (-[WebFrameLoader _setRequest:]):
1557 (-[WebFrameLoader _downloadWithLoadingConnection:request:response:proxy:]):
1558 (-[WebFrameLoader _handleFallbackContent]):
1559 (-[WebFrameLoader _isStopping]):
1560 (-[WebFrameLoader _decidePolicyForMIMEType:decisionListener:]):
1561 (-[WebFrameLoader _setupForReplaceByMIMEType:]):
1562 (-[WebFrameLoader _setResponse:]):
1563 (-[WebFrameLoader _mainReceivedError:complete:]):
1564 (-[WebFrameLoader _finishedLoading]):
1565 (-[WebFrameLoader _mainReceivedBytesSoFar:complete:]):
1566 (-[WebFrameLoader _iconLoaderReceivedPageIcon:]):
1567 (-[WebFrameLoader _URL]):
1568 * WebView/WebLoader.h:
1569 * WebView/WebLoader.m:
1570 (-[NSURLProtocol releaseResources]):
1571 (-[NSURLProtocol loadWithRequest:]):
1572 (-[NSURLProtocol setFrameLoader:]):
1573 (-[NSURLProtocol frameLoader]):
1574 (-[NSURLProtocol willSendRequest:redirectResponse:]):
1575 (-[NSURLProtocol didReceiveAuthenticationChallenge:]):
1576 (-[NSURLProtocol didCancelAuthenticationChallenge:]):
1577 (-[NSURLProtocol didReceiveResponse:]):
1578 (-[NSURLProtocol didReceiveData:lengthReceived:]):
1579 (-[NSURLProtocol signalFinish]):
1580 (-[NSURLProtocol didFailWithError:]):
1581 (-[NSURLProtocol willCacheResponse:]):
1582 (-[NSURLProtocol cancelWithError:]):
1583 * WebView/WebMainResourceLoader.h:
1584 * WebView/WebMainResourceLoader.m:
1585 (-[WebMainResourceLoader initWithFrameLoader:]):
1586 (-[WebMainResourceLoader receivedError:]):
1587 (-[WebMainResourceLoader cancelWithError:]):
1588 (-[WebMainResourceLoader _isPostOrRedirectAfterPost:redirectResponse:]):
1589 (-[WebMainResourceLoader addData:]):
1590 (-[WebMainResourceLoader willSendRequest:redirectResponse:]):
1591 (-[WebMainResourceLoader continueAfterContentPolicy:response:]):
1592 (-[WebMainResourceLoader continueAfterContentPolicy:]):
1593 (-[WebMainResourceLoader checkContentPolicyForResponse:]):
1594 (-[WebMainResourceLoader didReceiveResponse:]):
1595 (-[WebMainResourceLoader didReceiveData:lengthReceived:]):
1596 (-[WebMainResourceLoader didFinishLoading]):
1597 (-[WebMainResourceLoader didFailWithError:]):
1598 (-[WebMainResourceLoader loadWithRequestNow:]):
1600 2006-08-03 Sam Weinig <sam.weinig@gmail.com>
1604 - patch for http://bugzilla.opendarwin.org/show_bug.cgi?id=10176
1605 Make WebCore compile with -Wundef
1607 * Adds -Wundef flag to Xcode project
1608 * Converts #ifs to #ifdef and #ifndefs where needed.
1610 * Carbon/CarbonUtils.m:
1611 * Carbon/CarbonWindowAdapter.m:
1612 * Carbon/HIViewAdapter.m:
1613 (+[NSView bindHIViewToNSView:nsView:]):
1614 * Carbon/HIWebView.m:
1615 (HIWebViewEventHandler):
1616 * Misc/WebFileDatabase.m:
1617 (UniqueFilePathForKey):
1618 * Misc/WebNSWindowExtras.m:
1619 (swizzleInstanceMethod):
1620 * Misc/WebTypesInternal.h:
1621 * Plugins/WebNetscapeDeprecatedFunctions.c:
1622 * Plugins/WebNetscapeDeprecatedFunctions.h:
1623 * Plugins/WebNetscapePluginPackage.h:
1624 * Plugins/WebNetscapePluginPackage.m:
1625 (-[WebNetscapePluginPackage unloadWithoutShutdown]):
1626 (-[WebNetscapePluginPackage load]):
1627 * WebKit.xcodeproj/project.pbxproj:
1629 2006-08-03 Darin Adler <darin@apple.com>
1631 Reviewed by Eric Seidel.
1635 * WebView/WebFrame.m: (-[WebFramePrivate dealloc]): Release the frame loader.
1637 2006-08-02 Timothy Hatcher <timothy@apple.com>
1639 Rubber stamped by Maciej.
1641 Adding back resultsWithXpathQuery, removed by Darin's earlier change.
1642 This function is called from ObjC, but not used from JavaScript.
1644 * WebInspector/webInspector/inspector.js:
1646 2006-08-02 Timothy Hatcher <timothy@apple.com>
1650 Bug 10200: [Drosera] Deadlock between Drosera and Safari while loading page
1651 http://bugzilla.opendarwin.org/show_bug.cgi?id=10200
1653 Prevent reentrancy in our debugger callbacks. This was causing a deadlock in Drosera because
1654 suspendProcessIfPaused was being called during a DO call into Safari.
1656 Preventing reentrancy also prevents scripts that Drosera injects and evaluates from showing
1657 up in rare cases (such as a iframe loading about:blank). I thought this would prevent cases
1658 where you call a function from the console and expect it to break on a breakpoint in them, but
1659 this appears to never have worked even without this change. When that is figured out we can
1660 reconsider a better solution to reentrancy. I have filed that as bug 10214.
1662 I also removed the NSRunLoop runMode:beforeDate: calls since DO handles this for us since
1663 we don't use "onway void" as the return type for the callbacks. Note: using onway void for
1664 the listener callbacks causes bad synchronization issues and obscure crashes.
1666 * DefaultDelegates/WebScriptDebugServer.m:
1667 (-[WebScriptDebugServer webView:didLoadMainResourceForDataSource:]):
1668 (-[WebScriptDebugServer webView:didParseSource:baseLineNumber:fromURL:sourceId:forWebFrame:]):
1669 (-[WebScriptDebugServer webView:failedToParseSource:baseLineNumber:fromURL:withError:forWebFrame:]):
1670 (-[WebScriptDebugServer webView:didEnterCallFrame:sourceId:line:forWebFrame:]):
1671 (-[WebScriptDebugServer webView:willExecuteStatement:sourceId:line:forWebFrame:]):
1672 (-[WebScriptDebugServer webView:willLeaveCallFrame:sourceId:line:forWebFrame:]):
1673 (-[WebScriptDebugServer webView:exceptionWasRaised:sourceId:line:forWebFrame:]):
1674 * DefaultDelegates/WebScriptDebugServerPrivate.h:
1676 2006-08-02 Maciej Stachowiak <mjs@apple.com>
1680 - fix assertion failure on layout tests by stopping plugins from loading at a clearly defined time
1681 - add more assertions for safety
1683 * WebView/WebDataSource.m:
1684 (-[WebDataSourcePrivate dealloc]): Removed obsolete comment.
1685 (-[WebDataSource _updateLoading]): Add assertion ensuring this method is only called
1686 at a time when this data source is the one that might be loading for a frame.
1687 (-[WebDataSource _stopLoading]): Stop loading plugins as a FIXME suggests we should.
1688 * WebView/WebFrameLoader.m:
1689 (-[WebFrameLoader isLoadingPlugIns]): New helper method.
1690 (-[WebFrameLoader isLoading]): Consider plugin loads too - otherwise we won't stop them
1691 at stopLoading time.
1693 2006-08-02 Adam Roben <aroben@apple.com>
1697 - Rename TransferJob to ResourceLoader (this file was forgotten in an
1698 earlier change by Maciej)
1702 2006-08-01 Maciej Stachowiak <mjs@apple.com>
1706 - Change things around so WebFrameLoader tracks the main and provisional data source,
1707 as well as the frame load state, pulling much code out of WebFrame along the way.
1709 The most significant aspects of this change are:
1711 - management of WebDataSources and WebFrameState was moved into WebFrameLoader
1712 - there is now just one WebFrameLoader shared between the primary and provisional data source
1714 * WebKit.xcodeproj/project.pbxproj:
1715 * WebView/WebDataSource.m:
1716 (-[WebDataSourcePrivate dealloc]):
1717 (-[WebDataSource _updateLoading]):
1718 (-[WebDataSource _loadIcon]):
1719 (-[WebDataSource _setPrimaryLoadComplete:]):
1720 (-[WebDataSource _stopLoading]):
1721 (-[WebDataSource _startLoading]):
1722 (-[WebDataSource _addSubresourceLoader:]):
1723 (-[WebDataSource _removeSubresourceLoader:]):
1724 (-[WebDataSource _addPlugInStreamLoader:]):
1725 (-[WebDataSource _removePlugInStreamLoader:]):
1726 (-[WebDataSource _defersCallbacksChanged]):
1727 (-[WebDataSource _stopLoadingWithError:]):
1728 (-[WebDataSource _revertToProvisionalState]):
1729 (-[WebDataSource _setupForReplaceByMIMEType:]):
1730 (-[WebDataSource initWithRequest:]):
1731 (-[WebDataSource data]):
1732 (-[WebDataSource isLoading]):
1733 * WebView/WebFrame.m:
1734 (-[WebFramePrivate init]):
1735 (-[WebFramePrivate dealloc]):
1736 (-[WebFrame _closeOldDataSources]):
1737 (-[WebFrame _detachFromParent]):
1738 (-[WebFrame _makeDocumentView]):
1739 (-[WebFrame _receivedMainResourceError:]):
1740 (-[WebFrame _transitionToCommitted:]):
1741 (+[WebFrame _timeOfLastCompletedLoad]):
1742 (-[WebFrame _checkLoadCompleteForThisFrame]):
1743 (-[WebFrame _loadItem:withLoadType:]):
1744 (-[WebFrame _continueAfterWillSubmitForm:]):
1745 (-[WebFrame _continueLoadRequestAfterNavigationPolicy:formState:]):
1746 (-[WebFrame _initWithWebFrameView:webView:bridge:]):
1747 (-[WebFrame _frameLoader]):
1748 (-[WebFrame _provisionalLoadStarted]):
1749 (-[WebFrame _prepareForDataSourceReplacement]):
1750 (-[WebFrame _frameLoadCompleted]):
1751 (-[WebFrame provisionalDataSource]):
1752 (-[WebFrame dataSource]):
1753 (-[WebFrame stopLoading]):
1754 * WebView/WebFrameInternal.h:
1755 * WebView/WebFrameLoader.h:
1756 * WebView/WebFrameLoader.m:
1757 (-[WebFrameLoader initWithWebFrame:]):
1758 (-[WebFrameLoader dealloc]):
1759 (-[WebFrameLoader dataSource]):
1760 (-[WebFrameLoader _setDataSource:]):
1761 (-[WebFrameLoader clearDataSource]):
1762 (-[WebFrameLoader provisionalDataSource]):
1763 (-[WebFrameLoader _setProvisionalDataSource:]):
1764 (-[WebFrameLoader _clearProvisionalDataSource]):
1765 (-[WebFrameLoader state]):
1766 (+[WebFrameLoader timeOfLastCompletedLoad]):
1767 (-[WebFrameLoader _setState:]):
1768 (-[WebFrameLoader clearProvisionalLoad]):
1769 (-[WebFrameLoader markLoadComplete]):
1770 (-[WebFrameLoader commitProvisionalLoad]):
1771 (-[WebFrameLoader stopLoading]):
1772 (-[WebFrameLoader startLoading]):
1773 (-[WebFrameLoader startProvisionalLoad:]):
1774 (-[WebFrameLoader setupForReplace]):
1775 * WebView/WebFramePrivate.h:
1777 2006-08-01 Tim Omernick <timo@apple.com>
1779 Reviewed by John Sullivan.
1781 <rdar://problem/4480737> Flash crashes after it replaces itself via a document.write()
1783 I kind of hate to do this, but this is the best way to work around buggy plug-ins like Flash that assume that
1784 NPP_Destroy() cannot be called while the browser is calling one of its other plug-in functions. The classic
1785 situation is a plug-in that replaces itself via an NPN_Invoke() that executes a document.write().
1787 * Plugins/WebBaseNetscapePluginView.h:
1788 * Plugins/WebBaseNetscapePluginView.m:
1789 (-[WebBaseNetscapePluginView sendEvent:]):
1790 Call -willCallPlugInFunction and -didCallPlugInFunction around calls to the NPP_* functions.
1791 (-[WebBaseNetscapePluginView setWindowIfNecessary]):
1793 (-[WebBaseNetscapePluginView start]):
1794 It should not be possible to start a plug-in instance while we are calling into it (one of those chicken/egg
1795 problems). Added a sanity-checking assertion.
1796 (-[WebBaseNetscapePluginView stop]):
1797 If we're already calling a plug-in function, do not call NPP_Destroy(). The plug-in function we are calling
1798 may assume that its instance->pdata, or other memory freed by NPP_Destroy(), is valid and unchanged until said
1799 plugin-function returns.
1800 (-[WebBaseNetscapePluginView pluginScriptableObject]):
1801 Call -willCallPlugInFunction and -didCallPlugInFunction around calls to the NPP_* functions.
1802 (-[WebBaseNetscapePluginView willCallPlugInFunction]):
1803 Increment plug-in function call depth.
1804 (-[WebBaseNetscapePluginView didCallPlugInFunction]):
1805 Decrement plug-in function call depth. Stop if we're supposed to stop.
1806 (-[WebBaseNetscapePluginView evaluateJavaScriptPluginRequest:]):
1807 Call -willCallPlugInFunction and -didCallPlugInFunction around calls to the NPP_* functions.
1808 (-[WebBaseNetscapePluginView webFrame:didFinishLoadWithReason:]):
1810 (-[WebBaseNetscapePluginView _printedPluginBitmap]):
1813 * Plugins/WebBaseNetscapePluginStream.m:
1814 (-[WebBaseNetscapePluginStream startStreamResponseURL:expectedContentLength:lastModifiedDate:MIMEType:]):
1815 Call -willCallPlugInFunction and -didCallPlugInFunction around calls to the NPP_* functions.
1816 (-[WebBaseNetscapePluginStream _destroyStream]):
1818 (-[WebBaseNetscapePluginStream _deliverData]):
1821 2006-08-01 Maciej Stachowiak <mjs@apple.com>
1823 - fix build after last change
1825 * WebView/WebFrame.m:
1826 (-[WebFrame _checkLoadCompleteForThisFrame]):
1828 2006-08-01 Maciej Stachowiak <mjs@apple.com>
1832 - revert part of my last fix that broke the Safari bookmarks view
1834 * WebView/WebFrame.m:
1835 (-[WebFrame _checkLoadCompleteForThisFrame]): still send layout message for non-HTML views
1837 2006-08-01 Tim Omernick <timo@apple.com>
1841 Fixed an assertion failure I ran into while debugging <rdar://problem/4652683>.
1843 * Plugins/WebNetscapePluginEmbeddedView.m:
1844 (-[WebNetscapePluginEmbeddedView redeliverStream]):
1845 Don't clear the "instance" ivar here. This code was refactored here from the old WebNetscapePluginRepresentation,
1846 which also had an "instance" ivar. It is never appropriate to clear a plug-in view's instance. That is done when
1847 the plug-in is destroyed.
1849 2006-08-01 Maciej Stachowiak <mjs@apple.com>
1853 - some refactoring in preparation for moving more stuff to WebFrameLoader.
1855 * WebView/WebFrame.m:
1856 (-[WebFrame _clearDataSource]):
1857 (-[WebFrame _detachFromParent]):
1858 (-[WebFrame _commitProvisionalLoad]):
1859 (-[WebFrame _transitionToCommitted:]):
1860 (-[WebFrame _clearProvisionalLoad]):
1861 (-[WebFrame _markLoadComplete]):
1862 (-[WebFrame _checkLoadCompleteForThisFrame]):
1863 (-[WebFrame _startProvisionalLoad:]):
1864 (-[WebFrame _continueLoadRequestAfterNavigationPolicy:formState:]):
1865 (-[WebFrame stopLoading]):
1867 2006-07-31 Maciej Stachowiak <mjs@apple.com>
1869 Reviewed by Tim Hatcher.
1871 - renamed TransferJob to ResourceLoader in WebCore
1874 (WebFrame::loadDataSource):
1875 (WebFrame::receivedRedirect):
1876 (WebFrame::receivedResponse):
1877 (WebFrame::receivedData):
1878 (WebFrame::receivedAllData):
1879 (WebFrame::setStatusText):
1882 2006-07-31 Darin Adler <darin@apple.com>
1886 - omit the margin and padding boxes for display types where they are ignored
1887 - use CSS instead of properties for table spacing and padding as suggested by Tim H.
1889 * WebInspector/webInspector/inspector.css: Added rules for spacing and padding.
1890 Added rules that hide the margin and padding boxes (borders and all but the center cell)
1891 when the hide attribute is present.
1892 * WebInspector/webInspector/inspector.html: Added classes for the rules above.
1893 Removed cellpadding and cellspacing attributes.
1894 * WebInspector/webInspector/inspector.js: Added code to hide/show the margin and
1895 padding boxes based on the display type.
1897 2006-07-31 Duncan Wilcox <duncan@mclink.it>
1901 Fixes <http://bugzilla.opendarwin.org/show_bug.cgi?id=10159>
1902 "REGRESSION: delegate returning no menu elements crashes webkit"
1904 No automated test, because there's no way to programmatically open a context menu,
1905 no manual test because there's no way to customize the context menu delegate.
1907 * WebView/WebView.m:
1908 (-[WebView _menuForElement:defaultItems:]): Make sure the context menu returned
1909 some menu items before accessing the first one.
1911 2006-07-31 Timothy Hatcher <timothy@apple.com>
1915 <rdar://problem/4658194> REGRESSION: "Search in Google"
1916 and "Search in Spotlight" fail to work on text selected in a frame
1918 Use selectedFrame to get the frame with the text selection.
1920 * WebView/WebView.m:
1921 (-[WebView _searchWithGoogleFromMenu:]):
1922 (-[WebView _searchWithSpotlightFromMenu:]):
1924 2006-07-31 Darin Adler <darin@apple.com>
1926 Reviewed by Tim Hatcher.
1928 - http://bugzilla.opendarwin.org/show_bug.cgi?id=10168
1929 add a first cut at a Metrics pane to the inspector
1931 * WebInspector/webInspector/inspector.css: Add styles for the new metrics pane.
1932 * WebInspector/webInspector/inspector.html: Add the new metrics pane, starting with
1933 the table to show the box model.
1934 * WebInspector/webInspector/inspector.js: Add the new metrics pane. Add back some
1935 "title" attributes so we have more tooltips. Removed the optional parameter to
1938 2006-07-31 Anders Carlsson <acarlsson@apple.com>
1942 * Plugins/WebPluginDatabase.m:
1943 (-[WebPluginDatabase refresh]):
1944 Create a mutable set instead of a mutable array.
1946 2006-07-30 Darin Adler <darin@apple.com>
1948 Reviewed by Tim Hatcher.
1950 * WebInspector/webInspector/inspector.js: Fix bug where a null property value
1951 leads to an empty style pane.
1953 2006-07-30 Darin Adler <darin@apple.com>
1955 Reviewed by Tim Hatcher.
1957 - http://bugzilla.opendarwin.org/show_bug.cgi?id=10163
1958 some improvements for the inspector
1960 * WebInspector/WebInspector.m:
1961 (+[WebInspector sharedWebInspector:]): Fixed bug that could cause the inspector
1962 to be garbage collected if used in an application with GC enabled.
1963 (-[WebInspector dealloc]): Removed a call to a non-existent close method.
1964 (-[WebInspector window]): Added a custom WebPreferences object and called
1965 setPrivateBrowsingEnabled:YES so the inspector won't appear in the history menu.
1966 Also call setProhibitsMainFrameScrolling:YES to try to get rid of trouble where
1967 the inspector scrolls when dragging.
1969 * WebInspector/webInspector/inspector.css: Added style for the new color swatch,
1970 and JavaScript properties. More of the style should be shared between the panes,
1971 but this should be OK for now.
1973 * WebInspector/webInspector/inspector.html: Added a first cut at a JavaScript
1974 properties pane. Needs work, but better than nothing.
1976 * WebInspector/webInspector/inspector.js: Lots of improvements:
1977 - Omit "typical" property values from computed style display, making it much shorter.
1978 - Use the words "black", "white", and "transparent" when appropriate for color values.
1979 - Refactored the loaded() function to get rid of repetitive scrollbar setup.
1980 - Added a new scrollarea for the JavaScript properties pane.
1981 - Simplified refreshScrollbars() -- we now refresh all scrollbars every time, which does no harm.
1982 - Removed unused resultsWithXpathQuery().
1983 - Use [] instead of "new Array()" and {} instead of "new Object()".
1984 - Removed unused xpathForNode().
1985 - Changed style pane to display the style for a text node's parent instead of saying
1986 it can't display the style for text.
1987 - Fixed regression I caused a while back by checking the length of a computed style
1988 and not trying to display anything if its length is 0. Before this change and the
1989 corresponding change in WebCore, we'd see a complete list of all styles with the
1990 empty string as the value for each one.
1991 - Changed the name of the computedStyle flag on the style rules array to isComputedStyle
1992 to make it easier to understand it's a boolean.
1993 - Fixed an error in the code that does !important scanning where it was trying to
1994 do a special case for computed style, but was checking the computed style flag on
1996 - Added populateStyleListItem() function to factor out things in common between the
1997 items in the top level list and the expanded tree for shorthand properties.
1998 - Added code to make a color swatch next to the textual representation for any
1999 property that contains a color.
2000 - Implemented a first cut at a simple JavaScript properties pane.
2002 2006-07-29 Darin Adler <darin@apple.com>
2004 - Removed tabs from these source files that still had them.
2005 We don't use them; that way source files look fine in editors
2006 that have tabs set to 8 spaces or to 4 spaces.
2007 - Removed allow-tabs Subversion property from the files too.
2009 * DefaultDelegates/WebDefaultPolicyDelegate.m:
2010 * History/WebHistory.m:
2011 * Misc/WebDownload.m:
2012 * Misc/WebIconDatabase.m:
2013 * Misc/WebKitErrors.m:
2014 * Misc/WebKitLogging.m:
2015 * Misc/WebNSDataExtras.m:
2016 * Misc/WebNSFileManagerExtras.m:
2017 * Panels/WebPanelAuthenticationHandler.m:
2018 * Plugins/WebBaseNetscapePluginView.m:
2019 * Plugins/npfunctions.h:
2020 * WebCoreSupport/WebSubresourceLoader.m:
2021 * WebView/WebMainResourceLoader.m:
2022 * WebView/WebView.h:
2023 * WebView/WebView.m:
2025 2006-07-29 Sam Weinig <sam.weinig@gmail.com>
2029 - patch for http://bugzilla.opendarwin.org/show_bug.cgi?id=10080
2030 Adopt pedantic changes from the Unity project to improve
2031 cross-compiler compatibility
2034 * Adding missing newline to the end of the file.
2035 * Turning on gcc warning for missing newline at the end of a source file
2036 (GCC_WARN_ABOUT_MISSING_NEWLINE in Xcode, -Wnewline in gcc).
2038 * WebKit.xcodeproj/project.pbxproj:
2039 * WebView/WebResourcePrivate.h:
2041 2006-07-29 Mitz Pettel <opendarwin.org@mitzpettel.com>
2043 Reviewed by John Sullivan.
2045 - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9984
2046 ASSERTION FAILURE: _private->mouseDownEvent != nil
2047 (WebKit/WebView/WebHTMLView.m:4863 -[WebHTMLView(WebInternal) _delegateDragSourceActionMask])
2049 * WebView/WebHTMLView.m:
2050 (-[WebHTMLView _setMouseDownEvent:]): Moved into the WebHTMLViewFileInternal category and changed
2052 (-[WebHTMLView _startDraggingImage:at:operation:event:sourceIsDHTML:DHTMLWroteData:]):
2053 Copy the hit HTMLView's mouse down event to the top HTMLView.
2054 (-[WebHTMLView acceptsFirstMouse:]): Added a call to _setMouseDownEvent:nil before returning.
2055 (-[WebHTMLView shouldDelayWindowOrderingForEvent:]): Added a call to _setMouseDownEvent:nil
2057 (-[WebHTMLView mouseUp:]): Added a call to _setMouseDownEvent:nil to clear the event set in
2058 mouseDown: (and used during dragging).
2059 (-[WebHTMLView _delegateDragSourceActionMask]): Copy the hit HTMLView's mouse down event to
2062 2006-07-28 Timothy Hatcher <timothy@apple.com>
2066 <rdar://problem/4657473> REGRESSION: Spell check not available from contextual menu in Mail
2068 The context menu code should be checking isContentEditable
2069 on DOMNode not just DOMElement. This is needed because DOMText
2070 will be the node class of any text that is clicked.
2072 * DefaultDelegates/WebDefaultContextMenuDelegate.m:
2073 (-[WebDefaultUIDelegate webView:contextMenuItemsForElement:defaultMenuItems:]):
2075 2006-07-25 Geoffrey Garen <ggaren@apple.com>
2077 Reviewed by Maciej, inspired by John.
2079 - Fixed <rdar://problem/4651931> 1% REGRESSION on iBench HTML due to
2080 repeated requests for non-existent favicon
2082 An optimization to avoid serializing favicon data for missing icons had stomped an
2083 optimization to avoid GETing a missing favicon more than once. The solution
2084 is a happy marriage of optimizations, ensuring that we *retain* the missing
2085 favicon's "i am missing" data without posting a notification or saving it to disk.
2087 * Misc/WebIconDatabase.m:
2088 (-[WebIconDatabase _setIconURL:forURL:]):
2090 2006-07-25 David Harrison <harrison@apple.com>
2092 Reviewed by timo and Darin.
2094 <rdar://problem/4618584> "Paste and Match Style" is not working in Mail (add SPI)
2096 * WebKit.xcodeproj/project.pbxproj:
2097 * WebView/WebView.m:
2098 (-[WebView replaceSelectionWithNode:]):
2099 (-[WebView _replaceSelectionWithNode:matchStyle:]):
2100 * WebView/WebViewPrivate.h:
2101 (-[WebView _replaceSelectionWithNode:matchStyle::]):
2102 New SPI that is same as replaceSelectionWithNode: with added parameter whether to match existing style.
2104 2006-07-24 Darin Adler <darin@apple.com>
2106 Reviewed by Adele and Justin.
2108 - update for change to require context when creating fragments from text
2109 (needed to handle whitespace properly)
2111 * WebView/WebHTMLView.m:
2112 (-[WebHTMLView _documentFragmentFromPasteboard:inContext:allowPlainText:chosePlainText:]):
2113 Added context parameter, pass through to bridge.
2114 (-[WebHTMLView _pasteWithPasteboard:allowPlainText:]): Pass selection range as context
2115 when calling above method.
2116 (-[WebHTMLView concludeDragForDraggingInfo:actionMask:]): Pass drag caret as context when
2117 calling above method.
2119 2006-07-24 Maciej Stachowiak <mjs@apple.com>
2123 - fix <rdar://problem/4609195> Help Viewer loads empty window (not getting didFailLoadingWithError: callback)
2124 (without re-introducing http://bugzilla.opendarwin.org/show_bug.cgi?id=10062 )
2126 * WebView/WebLoader.h:
2127 * WebView/WebMainResourceLoader.m:
2128 (-[WebMainResourceLoader receivedError:]): Copy in some code from the base class to do it in the proper
2129 order, surrounding the call to [ds _receivedMainResourceError:error complete:YES].
2131 2006-07-24 Anders Carlsson <acarlsson@apple.com>
2135 * Misc/WebIconDatabase.m:
2136 (-[WebIconDatabase removeAllIcons]):
2137 Make an array of the keys and iterate through it to avoid modifying the
2138 dictionary while enumerating it.
2140 2006-07-24 Timothy Hatcher <timothy@apple.com>
2142 Reviewed by John and Darin.
2144 <rdar://problem/4634290> Cannot selectively install a custom
2145 scroller that differs from the default Aqua frame size.
2147 Adds two new private methods to WebFrameView that allows
2148 an application to set a custom scroll view class. This is needed
2149 if the application wants to install a custom scroller that is wider
2150 than the typical scroller, because NSScrollView does the content
2151 rect calculations in a class method (ignoring custom scrollers.)
2152 The _setScrollViewClass method requires the class to be a subclass
2153 of WebDynamicScrollBarView, or nil can be passed to reset to the default class.
2154 A new scroll view of the specified class will then replace the previous
2155 one without the need to reload content of the frame.
2157 * WebView/WebFrameView.m:
2158 (-[WebFrameView _customScrollViewClass]):
2159 (-[WebFrameView _setCustomScrollViewClass:]):
2160 * WebView/WebFrameViewPrivate.h:
2162 2006-07-24 Alexey Proskuryakov <ap@nypop.com>
2166 Fix http://bugzilla.opendarwin.org/show_bug.cgi?id=10009
2167 REGRESSION: Schubert-IT PDF Plug-in not working for full page (works in frames)
2169 * WebView/WebView.m:
2170 (+[WebView _viewClass:andRepresentationClass:forMIMEType:]): If we've got a type supported by WebPDFView,
2171 make sure to initialize the plugin database, in case a plugin wants to handle it.
2173 2006-07-23 Mark Rowe <opendarwin.org@bdash.net.nz>
2177 Bug 9686: [Drosera] Need the ability to break into Drosera on Javascript exceptions
2178 http://bugzilla.opendarwin.org/show_bug.cgi?id=9686
2180 WebKit portion of the fix.
2182 * DefaultDelegates/WebDefaultScriptDebugDelegate.m:
2183 (-[WebDefaultScriptDebugDelegate webView:exceptionWasRaised:sourceId:line:forWebFrame:]):
2184 * DefaultDelegates/WebScriptDebugServer.h:
2185 * DefaultDelegates/WebScriptDebugServer.m:
2186 (-[WebScriptDebugServer webView:exceptionWasRaised:sourceId:line:forWebFrame:]): Notify
2187 listeners that an exception has been raised.
2188 * WebView/WebScriptDebugDelegate.h:
2189 * WebView/WebScriptDebugDelegate.m:
2190 (-[WebScriptCallFrame exceptionRaised:sourceId:line:]): Dispatch through to delegate and
2191 WebScriptDebugServer.
2193 2006-07-23 Adele Peterson <adele@apple.com>
2197 - Fix for <rdar://problem/4646276> CrashTracer: 7 crashes in Safari at com.apple.WebCore: WebCore::RenderTableSection::paint + 155
2199 * WebView/WebHTMLView.m: (-[WebHTMLView _web_layoutIfNeededRecursive:testDirtyRect:]):
2200 needsDisplay was returning NO even though the view has a dirty rect (see <rdar://problem/4647062>). Since we know about
2201 the dirty rect, we don't actually need to check needsDisplay.
2203 2006-07-22 Timothy Hatcher <timothy@apple.com>
2207 Bug 10062: REGRESSION: dom/xhtml/level2/html/HTMLIFrameElement11.xhtml asserts/crashes
2208 http://bugzilla.opendarwin.org/show_bug.cgi?id=10062
2210 2006-07-21 Timothy Hatcher <timothy@apple.com>
2214 <rdar://problem/4609195> Help Viewer loads empty window
2215 (not getting didFailLoadingWithError: callback)
2217 Call super's didFailWithError before _receivedMainResourceError
2218 because _receivedMainResourceError will cause the datasource's
2219 frame to be set to nil before the didFailLoadingWithError delegate
2220 callback is sent. (This order is needed now that WebDataSource does
2221 not hold on to the WebView; it uses the WebFrame to get to the WebView.
2222 If the WebFrame is nil we can't get to the WebView's resource load delegate.)
2224 * WebView/WebMainResourceLoader.m:
2225 (-[WebMainResourceLoader receivedError:]):
2228 2006-07-22 Timothy Hatcher <timothy@apple.com>
2232 <rdar://problem/4646318> REGRESSION: Ctrl-clicking on a selection containing a word doesn't display a complete contextual menu
2234 Show the editing context menu if the WebView is editible.
2235 The original change only checked if the DOM element was editable,
2236 and isContentEditable returns NO if entire WebView is editable.
2238 * DefaultDelegates/WebDefaultContextMenuDelegate.m:
2239 (-[WebDefaultUIDelegate webView:contextMenuItemsForElement:defaultMenuItems:]):
2241 2006-07-21 Timothy Hatcher <timothy@apple.com>
2245 <rdar://problem/4609195> Help Viewer loads empty window
2246 (not getting didFailLoadingWithError: callback)
2248 Call super's didFailWithError before _receivedMainResourceError
2249 because _receivedMainResourceError will cause the datasource's
2250 frame to be set to nil before the didFailLoadingWithError delegate
2251 callback is sent. (This order is needed now that WebDataSource does
2252 not hold on to the WebView; it uses the WebFrame to get to the WebView.
2253 If the WebFrame is nil we can't get to the WebView's resource load delegate.)
2255 * WebView/WebMainResourceLoader.m:
2256 (-[WebMainResourceLoader receivedError:]):
2258 === Safari-521.20 ===
2260 2006-07-21 Timothy Hatcher <timothy@apple.com>
2264 <rdar://problem/4607572> REGRESSION (521.10.1 - 521.13): most context menu items missing when a form field is focused (common on google.com) (9680)
2266 Do not use _isEditable call since that only checks if the current
2267 selection or frame is editible. We now check if the currently clicked element
2268 is a content editible area, a textarea, an isindex or an input element that
2269 return YES to _isTextField.
2271 * DefaultDelegates/WebDefaultContextMenuDelegate.m:
2272 (-[WebDefaultUIDelegate webView:contextMenuItemsForElement:defaultMenuItems:]):
2274 2006-07-20 John Sullivan <sullivan@apple.com>
2278 - WebKit part of fix for:
2279 <rdar://problem/4557386> REGRESSION (419.3-521.19): repro Safari world leak involving
2280 closing tabs after clicking in a web page
2282 * WebCoreSupport/WebFrameBridge.m:
2283 (-[WebFrameBridge textViewWasFirstResponderAtMouseDownTime:]):
2284 renamed to be more specific (formerly wasFirstResponderAtMouseDownTime:)
2286 * WebView/WebHTMLViewInternal.h:
2287 * WebView/WebHTMLView.m:
2288 (-[WebTextCompleteController dealloc]):
2289 updated for name change
2290 (-[NSArray _setMouseDownEvent:]):
2291 Now only retains the first responder if it's a textView, since that's the only case that the only client
2292 actually cares about. This avoids a reference cycle caused by retaining self. This is the only substantive
2293 part of the patch; all the rest is just renaming for clarity, and comments.
2294 (-[NSArray mouseDown:]):
2295 updated for name change
2296 (-[WebHTMLView _textViewWasFirstResponderAtMouseDownTime:]):
2297 renamed to be more specific (formerly _wasFirstResponderAtMouseDownTime:)
2299 2006-07-19 Tim Omernick <timo@apple.com>
2303 <rdar://problem/4523432> safari crashed right after disabling "block pop up windows" (or other WebPreferences changes)
2305 * Plugins/WebBaseNetscapePluginView.m:
2306 (-[WebBaseNetscapePluginView viewWillMoveToSuperview:]):
2307 Stop the plug-in when it is removed from its superview. It is not sufficient to do this in -viewWillMoveToWindow:nil, because
2308 the WebView might still has a hostWindow at that point, which prevents the plug-in from being destroyed.
2309 There is no need to start the plug-in when moving into a superview. -viewDidMoveToWindow takes care of that.
2311 === Safari-521.19 ===
2313 2006-07-17 Tim Omernick <timo@apple.com>
2317 <rdar://problem/4612079> need a way to prevent pages from scrolling to reveal elements that are focused
2320 * WebView/WebViewPrivate.h:
2321 * WebView/WebView.m:
2322 (-[WebView setProhibitsMainFrameScrolling:]):
2323 New method. Prohibits scrolling in the WebView's main frame. Used to "lock" a WebView to a specific
2326 2006-07-17 Timothy Hatcher <timothy@apple.com>
2330 <rdar://problem/4635311> REGRESSION: WebKit should call windowScriptObjectAvailable before attaching the script debugger
2332 * WebCoreSupport/WebFrameBridge.m:
2333 (-[WebFrameBridge windowObjectCleared]):
2335 2006-07-17 Timothy Hatcher <timothy@apple.com>
2339 <rdar://problem/4634874> WebScriptObject and WebUndefined are no longer defined by WebKit
2341 Copy WebScriptObject.h from WebCore's private headers, not JavaScriptCore.
2343 * WebKit.xcodeproj/project.pbxproj:
2345 2006-07-17 John Sullivan <sullivan@apple.com>
2347 Reviewed by Tim Omernick.
2349 - fixed <rdar://problem/4604366> Orange Find highlight displays text in wrong size on PDF pages
2350 if they're not at "actual size"
2352 To match WebHTMLView, I made the methods that return attributed strings take the view's scale
2353 factor into account.
2355 * WebView/WebPDFView.m:
2356 (-[WebPDFView _scaledAttributedString:]):
2357 new helper method, takes an attributed string and returns one that's scaled by the view's
2358 current scale factor
2359 (-[WebPDFView attributedString]):
2360 pass result through _scaledAttributedString:
2361 (-[WebPDFView selectedAttributedString]):
2364 2006-07-17 Justin Garcia <justin.garcia@apple.com>
2368 Rolled the first fix for:
2369 <http://bugzilla.opendarwin.org/show_bug.cgi?id=9642>
2370 GMail Editor: Operations that use drop down menus blow away the selection
2371 back in and removed the call to _clearSelectionInOtherFrames from
2372 -[WebHTMLView becomeFirstResponder] to fix the bug.
2374 * WebView/WebHTMLView.m:
2375 (-[NSArray maintainsInactiveSelection]):
2376 (-[NSArray becomeFirstResponder]):
2377 * WebView/WebView.m:
2378 (-[WebView maintainsInactiveSelection]):
2380 2006-07-15 Darin Adler <darin@apple.com>
2382 Reviewed by John Sullivan.
2384 - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9928
2385 REGRESSION: Text Encoding menu inoperative (after gcc protocol build fix)
2387 * WebView/WebHTMLView.m:
2388 (-[WebHTMLView _documentRange]): Moved into WebHTMLViewFileInternal category.
2389 (-[WebHTMLView selectionRect]): Moved into WebDocumentPrivateProtocols category.
2390 (-[WebHTMLView selectionView]): Ditto.
2391 (-[WebHTMLView selectionImageForcingWhiteText:]): Ditto.
2392 (-[WebHTMLView selectionImageRect]): Ditto.
2393 (-[WebHTMLView pasteboardTypesForSelection]): Ditto.
2394 (-[WebHTMLView selectAll]): Ditto.
2395 (-[WebHTMLView deselectAll]): Ditto.
2396 (-[WebHTMLView string]): Ditto.
2397 (-[WebHTMLView _attributeStringFromDOMRange:]): Ditto.
2398 (-[WebHTMLView attributedString]): Ditto.
2399 (-[WebHTMLView selectedString]): Ditto.
2400 (-[WebHTMLView selectedAttributedString]): Ditto.
2401 (-[WebHTMLView supportsTextEncoding]): Ditto.
2402 (-[WebHTMLView _canProcessDragWithDraggingInfo:]): Moved into WebDocumentInternalProtocols.
2403 (-[WebHTMLView _isMoveDrag]): Ditto.
2404 (-[WebHTMLView _isNSColorDrag:]): Ditto.
2405 (-[WebHTMLView draggingUpdatedWithDraggingInfo:actionMask:]): Ditto.
2406 (-[WebHTMLView draggingCancelledWithDraggingInfo:]): Ditto.
2407 (-[WebHTMLView concludeDragForDraggingInfo:actionMask:]): Ditto.
2408 (-[WebHTMLView elementAtPoint:]): Ditto.
2409 (-[WebHTMLView elementAtPoint:allowShadowContent:]): Ditto.
2411 * WebKit.xcodeproj/project.pbxproj: Let Xcode 2.3 do its thing.
2413 === Safari-521.17 ===
2415 2006-07-14 Timothy Hatcher <timothy@apple.com>
2417 Rolling out this fix from r15358 since it isn't resolved.
2419 2006-07-11 Justin Garcia <justin.garcia@apple.com>
2421 Reviewed by levi & thatcher
2423 <http://bugzilla.opendarwin.org/show_bug.cgi?id=9642>
2424 GMail Editor: Operations that use drop down menus blow away the selection
2426 * WebView/WebHTMLView.m:
2427 (-[WebHTMLView maintainsInactiveSelection]): Maintain an inactive selection
2428 when resigning as first responder if the selection is editable
2429 or if the WebView tells us to.
2430 * WebView/WebView.m:
2431 (-[WebView maintainsInactiveSelection]): Just because a WebView is
2432 editable doesn't mean selections inside subframes will be. Return
2435 2006-07-14 Timothy Hatcher <timothy@apple.com>
2437 <rdar://problem/4623957> SWB: gcc-5412 (new?) objc warning causes WebCore project failure
2439 Build fix with the new GCC. Removes forward declarations of protocols.
2441 * Misc/WebSearchableTextView.h:
2442 * WebCoreSupport/WebSubresourceLoader.h:
2443 * WebKit.xcodeproj/project.pbxproj:
2444 * WebView/WebDocumentInternal.h:
2445 * WebView/WebDocumentPrivate.h:
2446 * WebView/WebHTMLView.h:
2447 * WebView/WebPDFView.h:
2448 * WebView/WebScriptDebugDelegatePrivate.h:
2450 2006-06-28 Darin Adler <darin@apple.com>
2454 - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9625
2455 <rdar://problem/4604703>
2456 REGRESSION: Focus not removed from password field after ctrl-click in text field
2458 * WebView/WebHTMLView.m: (-[WebHTMLView menuForEvent:]): Set handlingMouseDownEvent to
2459 YES while calling sendContextMenuEvent: on the bridge.
2461 2006-07-14 Timothy Hatcher <timothy@apple.com>
2465 Moved JavaScriptCore to be a public framework.
2467 * WebKit.xcodeproj/project.pbxproj:
2469 2006-07-13 Mitz Pettel <opendarwin.org@mitzpettel.com>
2473 - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9795
2474 REGRESSION: Crash in [WebHTMLView(WebPrivate)
2475 _updateMouseoverWithEvent:]
2476 and http://bugzilla.opendarwin.org/show_bug.cgi?id=9850
2477 REGRESSION: Assertion failure (SHOULD NEVER BE REACHED) in -
2478 [WebHTMLView(WebPrivate) removeTrackingRect:]
2480 * WebView/WebHTMLView.m:
2481 (-[WebHTMLView _updateMouseoverWithEvent:]): Return immediately if
2482 the view has already been closed.
2484 2006-07-13 David Harrison <harrison@apple.com>
2486 Reviewed by Justin and Levi.
2488 <rdar://problem/4620743> REGRESSION: Option-Delete doesn't delete words during typing
2491 editing/deleting/delete-by-word-001.html
2492 editing/deleting/delete-by-word-002.html
2494 * WebView/WebHTMLView.m:
2495 (-[WebHTMLView _deleteRange:killRing:prepend:smartDeleteOK:deletionAction:granularity:]):
2497 2006-07-13 Timothy Hatcher <timothy@apple.com>
2499 Rolling out this earlier change (r15378) now that it is fixed on AGL's end.
2500 Fixes <rdar://problem/4624865> Restore 64-bit OpenGL plug-in support once AGL is 64-bit
2502 <rdar://problem/4624858> AGL isn't 64-bit yet; temporarily remove it from WebKit 64-bit build
2504 * Plugins/WebBaseNetscapePluginView.h:
2505 * Plugins/WebBaseNetscapePluginView.m:
2507 2006-07-13 Timothy Hatcher <timothy@apple.com>
2511 <rdar://problem/4616920> REGRESSION: tabbing in mail moves focus
2512 to next control instead of inserting a tab space.
2514 Change editible WebView's tabKeyCyclesThroughElements to NO only
2515 if the setTabKeyCyclesThroughElements SPI wasn't called.
2517 * WebView/WebView.m:
2518 (-[WebView setEditable:]):
2520 2006-07-12 Anders Carlsson <acarlsson@apple.com>
2524 http://bugzilla.opendarwin.org/show_bug.cgi?id=9624
2525 REGRESSION: After ctrl-clicking in a EMPTY input or textarea field, the contextual menu shows "Search in Google" and "Search in Spotlight" as active menu items
2527 * DefaultDelegates/WebDefaultContextMenuDelegate.m:
2528 (-[WebDefaultUIDelegate editingContextMenuItemsForElement:defaultMenuItems:]):
2529 Don't create Dictionary, Spotlight or Google lookup items if there's no selection.
2531 2006-07-12 Mark Rowe <opendarwin.org@bdash.net.nz>
2533 Reviewed by Timothy.
2535 http://bugzilla.opendarwin.org/show_bug.cgi?id=9868
2536 Applications shown in Drosera's "Attach" window remain after exit
2538 * DefaultDelegates/WebScriptDebugServer.m:
2539 (-[WebScriptDebugServer init]): Register for NSApplicationWillTerminateNotification so we will
2540 know when the application is being exited.
2541 (-[WebScriptDebugServer dealloc]): Unregister notification before we are deallocated.
2542 (-[WebScriptDebugServer applicationTerminating:]): Inform anyone listening that we are going away.
2544 2006-07-12 Tim Omernick <timo@apple.com>
2546 Reviewed by Tim Hatcher.
2548 <rdar://problem/4624858> AGL isn't 64-bit yet; temporarily remove it from WebKit 64-bit build
2550 Also, fixed a LOG_ERROR() so that it uses the CGL error instead of the AGL error; Tim H missed this in his build fix
2553 * Plugins/WebBaseNetscapePluginView.h:
2554 * Plugins/WebBaseNetscapePluginView.m:
2556 2006-07-11 John Sullivan <sullivan@apple.com>
2558 Reviewed by Kevin and Tim O
2560 - added support for creating a selection image with white text
2562 * WebView/WebDocumentPrivate.h:
2563 added -selectionImageForcingWhiteText: and -selectionImageRect to the private
2564 <WebDocumentSelection> protocol
2566 * Misc/WebSearchableTextView.m:
2567 (-[NSString selectionImageForcingWhiteText:]):
2568 added stub for this new method to this obsolete class to satisfy the compiler
2569 (-[NSString selectionImageRect]):
2572 * WebView/WebHTMLView.m:
2573 (-[WebHTMLView _selectionDraggingImage]):
2574 now calls -selectionImageForcingWhiteText:NO instead of just -selectionImage
2575 (-[WebHTMLView _selectionDraggingRect]):
2576 now calls selectionImageRect, to which the implementation moved
2577 (-[WebHTMLView selectionImageForcingWhiteText:]):
2578 implemented this new method by calling through to new bridge method selectionImageForcingWhiteText:
2579 (-[WebHTMLView selectionImageRect]):
2580 implemented this new method by using existing _selectionDraggingRect implementation
2582 * WebView/WebPDFView.m:
2583 (-[WebPDFView selectionImageForcingWhiteText:]):
2584 implemented by using code that was formerly in Safari
2585 (-[WebPDFView selectionImageRect]):
2586 implemented by returning selectionRect
2588 2006-07-11 Tim Omernick <timo@apple.com>
2592 <http://bugzilla.opendarwin.org/show_bug.cgi?id=9843>:
2593 Give Netscape plug-ins access to their own DOM element
2595 * Plugins/WebBaseNetscapePluginView.h:
2596 * Plugins/WebBaseNetscapePluginView.m:
2597 (-[WebBaseNetscapePluginView dealloc]):
2598 Release DOM element.
2599 (-[WebBaseNetscapePluginView getVariable:value:]):
2600 Return NPObject for plugin DOM element.
2602 * Plugins/WebNetscapePluginEmbeddedView.h:
2603 * Plugins/WebNetscapePluginEmbeddedView.m:
2604 (-[WebNetscapePluginEmbeddedView initWithFrame:plugin:URL:baseURL:MIMEType:attributeKeys:attributeValues:loadManually:DOMElement:]):
2605 Now takes a DOMElement, in much the same way that WebKit plug-in views take a DOMElement.
2607 * WebCoreSupport/WebFrameBridge.m:
2608 (-[WebFrameBridge viewForPluginWithURL:attributeNames:attributeValues:MIMEType:DOMElement:loadManually:]):
2609 Pass DOMElement to Netscape plug-ins.
2610 (-[WebFrameBridge viewForJavaAppletWithFrame:attributeNames:attributeValues:baseURL:DOMElement:]):
2613 2006-07-11 Justin Garcia <justin.garcia@apple.com>
2615 Reviewed by levi & thatcher
2617 <http://bugzilla.opendarwin.org/show_bug.cgi?id=9642>
2618 GMail Editor: Operations that use drop down menus blow away the selection
2620 * WebView/WebHTMLView.m:
2621 (-[WebHTMLView maintainsInactiveSelection]): Maintain an inactive selection
2622 when resigning as first responder if the selection is editable
2623 or if the WebView tells us to.
2624 * WebView/WebView.m:
2625 (-[WebView maintainsInactiveSelection]): Just because a WebView is
2626 editable doesn't mean selections inside subframes will be. Return
2629 2006-07-11 Tim Omernick <timo@apple.com>
2631 Reviewed by Tim Hatcher.
2633 <rdar://problem/4622748> WebKit now uses deprecated AGL functions
2635 * Plugins/WebBaseNetscapePluginView.m:
2636 (-[WebBaseNetscapePluginView _createWindowedAGLContext]):
2637 aglSetDrawable() is deprecated in AGL 3.0. Use aglSetWindowRef() instead.
2638 (-[WebBaseNetscapePluginView _createWindowlessAGLContext]):
2639 aglSetOffScreen() is deprecated in AGL 3.0. Use CGLSetOffScreen(), which does the same thing.
2641 2006-07-11 Alexey Proskuryakov <ap@nypop.com>
2645 - http://bugzilla.opendarwin.org/show_bug.cgi?id=7808
2646 Assertion failure in -[WebBaseNetscapePluginStream dealloc] when requesting an invalid URL
2648 * Plugins/WebNetscapePluginStream.m:
2649 (-[WebNetscapePluginStream initWithRequest:pluginPointer:notifyData:sendNotification:]):
2650 Remove the early return when requesting an invalid (unsupported) URL.
2652 === Safari-521.16 ===
2654 2006-07-10 Mitz Pettel <opendarwin.org@mitzpettel.com>
2656 Reviewed by John Sullivan.
2658 - fix <rdar://problem/4621541>, aka <http://bugzilla.opendarwin.org/show_bug.cgi?id=9838>
2659 REGRESSION (r14968-r14977): View Source doesn't work for pages from the back/forward cache
2661 * WebView/WebDataSource.m:
2662 (-[WebDataSource _setPrimaryLoadComplete:]): Set our data only if the frame loader is
2663 has just loaded it (when coming from the back/forward cache, it hasn't).
2665 2006-07-10 Brady Eidson <beidson@apple.com>
2669 Resolved the console error messages people got from the new DB even if they didn't have it enabled
2671 * Misc/WebIconDatabase.m:
2672 (-[WebIconDatabase init]):
2673 Disabled initializing the IconDatabaseBridge if user is living on the old DB
2675 2006-07-10 Darin Adler <darin@apple.com>
2677 - try to fix Windows build
2679 * COM/WebFrame.h: Qualify DeprecatedString and KURL with WebCore:: prefixes.
2681 2006-07-09 Darin Adler <darin@apple.com>
2683 - try to fix Windows build
2685 * COM/WebFrame.cpp: Rename QChar to DeprecatedChar.
2687 2006-07-09 Darin Adler <darin@apple.com>
2689 - fix newlines to be consistent for all files in the COM directory
2690 (many had mixed style) and set the EOL style to "native" on them.
2692 * COM/*: Set properties and changed files.
2694 2006-07-09 Tim Omernick <timo@apple.com>
2698 <rdar://problem/4404652> Netscape plug-in mouse events broken in HiDPI
2700 Multiply global mouse coordinates by the window scale factor so that plug-ins can use GlobalToLocal() in HiDPI.
2701 This fixes many bugs involving plug-in mouse event handling in HiDPI. Most notably, the Flash player will now
2702 correctly respond to clicks.
2704 * Plugins/WebBaseNetscapePluginView.m:
2705 (+[WebBaseNetscapePluginView getCarbonEvent:]):
2706 (-[WebBaseNetscapePluginView getCarbonEvent:withEvent:]):
2708 2006-07-09 Darin Adler <darin@apple.com>
2710 Reviewed by Tim Hatcher.
2712 - fix assertion firing in plug-in layout tests
2714 * Plugins/WebBaseNetscapePluginView.m:
2715 (-[WebBaseNetscapePluginView restartNullEvents]):
2716 Don't start null events if the plug-in is not in the
2717 started state. This happens when the plug-in moves within
2718 its view hierarchy after it has been stopped.
2720 2006-07-09 Timothy Hatcher <timothy@apple.com>
2724 Bug 9820: Move new DOM API that has been through API review to public headers
2725 http://bugzilla.opendarwin.org/show_bug.cgi?id=9820
2727 * Misc/WebElementDictionary.m: include DOMExtensions.h
2728 * Misc/WebNSViewExtras.m: include DOMExtensions.h
2729 * WebKit.xcodeproj/project.pbxproj: make DOMXPath.h public
2731 2006-07-09 Timothy Hatcher <timothy@apple.com>
2735 Bug 9818: move new UIDelegate API that has been through API review to public headers
2736 http://bugzilla.opendarwin.org/show_bug.cgi?id=9818
2738 <rdar://problem/4387541> API: Remove webView:setContentRect: & webViewContentRect: delegate methods?
2739 The fix for 4310363 removed the only use of webViewContentRect: in our code. webView:setContentRect:
2740 was never used to begin with. There's no harm in leaving these around in the API, but they'll cruft it up.
2742 Also removes the never used webViewPrint: SPI that was replaced by webView:printFrameView:.
2744 * DefaultDelegates/WebDefaultUIDelegate.m:
2745 * WebCoreSupport/WebFrameBridge.m:
2746 (-[WebFrameBridge print]):
2747 * WebView/WebFrameView.h:
2748 * WebView/WebFrameView.m:
2749 * WebView/WebFrameViewPrivate.h:
2750 * WebView/WebUIDelegate.h:
2751 * WebView/WebUIDelegatePrivate.h:
2753 2006-07-09 Timothy Hatcher <timothy@apple.com>
2757 Bug 9814: Move new WebView API that has been through API review to public headers
2758 http://bugzilla.opendarwin.org/show_bug.cgi?id=9814
2760 * WebView/WebView.h:
2761 * WebView/WebView.m:
2763 (-[WebView setShouldCloseWithWindow:]):
2764 (-[WebView shouldCloseWithWindow]):
2765 (-[WebView selectedFrame]):
2766 (-[WebView setMainFrameURL:]):
2767 (-[WebView mainFrameURL]):
2768 (-[WebView isLoading]):
2769 (-[WebView mainFrameTitle]):
2770 (-[WebView mainFrameIcon]):
2771 (-[WebView mainFrameDocument]):
2772 (-[WebView setDrawsBackground:]):
2773 (-[WebView drawsBackground]):
2774 (-[WebView toggleSmartInsertDelete:]):
2775 (-[WebView toggleContinuousSpellChecking:]):
2776 (-[WebView canMakeTextStandardSize]):
2777 (-[WebView makeTextStandardSize:]):
2778 (-[WebView maintainsInactiveSelection]):
2779 * WebView/WebViewPrivate.h:
2781 2006-07-09 Timothy Hatcher <timothy@apple.com>
2785 Bug 9487: The XPath section should be removed and/or moved.
2786 http://bugzilla.opendarwin.org/show_bug.cgi?id=9487
2788 * WebInspector/webInspector/inspector.css:
2789 * WebInspector/webInspector/inspector.html:
2790 * WebInspector/webInspector/inspector.js:
2792 2006-07-09 Anders Carlsson <acarlsson@apple.com>
2796 * WebCoreSupport/WebSystemInterface.m:
2797 (InitWebCoreSystemInterface):
2798 Initialize wkPathFromFont.
2800 2006-07-09 Darin Adler <darin@apple.com>
2804 * Plugins/WebBaseNetscapePluginView.m:
2805 (-[WebBaseNetscapePluginView restorePortState:]): Cast inside the assertion so
2806 that we don't have an unused variable in versions with assertions disabled.
2807 The alternative would be to wrap the whole thing in an #if statement.
2809 2006-07-08 Tim Omernick <timo@apple.com>
2811 Reviewed by John Sullivan.
2813 * Plugins/WebBaseNetscapePluginView.h:
2814 - Added ivars for OpenGL support. Someday it would be nice to refactor this class so
2815 that each drawing model is encapsulated in a class; this would allow
2816 WebBaseNetscapePluginView to make more efficient use of space, for example by not
2817 keeping OpenGL-related ivars for Quickdraw plug-ins.
2819 * Plugins/WebBaseNetscapePluginView.m:
2820 - Declared a bunch of internal methods for OpenGL support (see below).
2821 - Removed "forUpdate" from CoreGraphics port state struct; it was always set to "YES",
2822 so I just cleaned up the silly code that used it.
2823 - Declared OpenGL port state struct.
2824 (-[WebBaseNetscapePluginView saveAndSetNewPortStateForUpdate:]):
2825 - Moved a CoreGraphics-related assertion down to the big "switch" statement.
2826 - Don't set window.type here -- according to the Netscape Plug-in API docs, the plug-in
2827 should default to "windowed" mode, and may call NPN_SetValue() during its NPN_New() to
2828 request that the browser use a "windowless" (offscreen) context instead.
2829 - Moved the assertion from the top of this method here; removed a less restrictive
2830 assertion that is now obsolete.
2831 - Removed "forUpdate" flag from CoreGraphics port state struct.
2832 - Fill in OpenGL port state struct. Set up the viewport appropriately for both windowed
2833 and windowless OpenGL plug-ins. Windowed plug-ins need to have their GL viewport
2834 transformed by the amount the plug-in is clipped; windowless plug-ins are drawn off-screen
2835 into a surface whose geometry is never changed or clipped, so they may always draw with
2836 a viewport origin of (0, 0).
2837 (-[WebBaseNetscapePluginView restorePortState:]):
2838 - Removed "forUpdate" flag from CoreGraphics port state struct.
2839 - Restore the old OpenGL context saved by -saveAndSetNewPortStateForUpdate:.
2840 (-[WebBaseNetscapePluginView sendEvent:]):
2841 - Updated an assertion to also include OpenGL. To ensure that attached plug-in window movements
2842 happen atomically with web page redisplays, we assert that the plug-in's window is set only while
2843 the plug-in view is redrawing.
2844 - Same deal as with the assertion; only save/set port state when redrawing the plug-in view. Plug-ins
2845 that use the new drawing models are only allowed to draw when the web page draws. I might consider
2846 changing this for windowed OpenGL plug-ins, since they always obscure the page content anyway.
2847 (-[WebBaseNetscapePluginView isNewWindowEqualToOldWindow]):
2848 - Compare new NP_GLContext structs.
2849 (-[WebBaseNetscapePluginView updateAndSetWindow]):
2850 - In OpenGL mode, can only set window when updating plug-in view.
2851 (-[WebBaseNetscapePluginView setWindowIfNecessary]):
2853 - Updated logging for OpenGL drawing mode.
2854 (-[WebBaseNetscapePluginView addWindowObservers]):
2855 - No need to observe frame/bounds change notifications for this and all parent views. See -renewGState
2857 (-[WebBaseNetscapePluginView removeWindowObservers]):
2858 - Don't need to remove frame/bounds observers anymore.
2859 (-[WebBaseNetscapePluginView start]):
2860 - Plug-ins are "windowed" by default. This is not a change from our previous behavior, but this is a
2861 better place to set the default value as it allows the plug-in to override it later.
2862 (-[WebBaseNetscapePluginView stop]):
2863 - Destroy AGL context when the plug-in stops.
2864 (-[WebBaseNetscapePluginView dealloc]):
2865 - Assert that the AGL stuff has been cleaned up.
2866 (-[WebBaseNetscapePluginView drawRect:]):
2867 - If this is a windowless OpenGL plugin, blit its contents back into this view.
2868 (-[WebBaseNetscapePluginView renewGState]):
2869 - This method is called when the view or one of its parents is moved or resized (see comments).
2870 (-[WebBaseNetscapePluginView viewWillMoveToWindow:]):
2871 - Hide the AGL window if the plug-in view is about to be removed from its window.
2872 (-[WebBaseNetscapePluginView viewHasMoved:]):
2873 - Renamed and moved to the "Internal" category.
2874 (-[WebBaseNetscapePluginView invalidateRegion:]):
2876 - Add support for OpenGL (uses the same region type as CoreGraphics).
2877 (-[WebBaseNetscapePluginView getVariable:value:]):
2879 - Implemented NPNVsupportsOpenGLBool; returns YES since we now support the OpenGL drawing model.
2880 (-[WebBaseNetscapePluginView setVariable:value:]):
2881 - Implemented NPPVpluginWindowBool, which allows plug-ins to specify whether they should be rendered in
2882 "windowed" or "windowless" mode. This is an older part of the Netscape Plug-in API that was never
2883 implemented in WebKit. "Windowed" Quickdraw plug-ins do not actually reside in a separate window, and
2884 can already do many of the same things (such as transparency) that only "windowless" plug-ins can do on
2885 other platforms. However, we need the "windowed" vs. "windowless" distinction for OpenGL plug-ins so
2886 that they have some way of specifying whether they should be rendered on an accelerated overlay surface,
2887 composited into the browser window.
2888 - Support for setting the drawing model to OpenGL.
2889 (-[WebBaseNetscapePluginView _viewHasMoved]):
2890 - Renamed from -viewHasMoved:, and moved down in the file.
2891 - None of this work is necessary when the plug-in is not in a window; the plug-in's state will be properly
2892 restored when it is moved back into a window.
2893 - Reshape OpenGL surface window here.
2894 (-[WebBaseNetscapePluginView _createAGLContextIfNeeded]):
2895 - Creates the AGL context of the appropriate type (windowed/windowless).
2896 (-[WebBaseNetscapePluginView _createWindowedAGLContext]):
2897 - Creates a windowed AGL context, which is an AGL context attached to a child window. This is the only way
2898 to get true hardware acceleration.
2899 (-[WebBaseNetscapePluginView _createWindowlessAGLContext]):
2900 - Creates a windowless AGL context, which is an AGL context attached to an offscreen buffer. This buffer can
2901 then be blitted back into the browser window with a different alpha, or scaled, or whatever.
2902 (-[WebBaseNetscapePluginView _cglContext]):
2903 - Returns the underlying CGL context from the AGL context. We give the plug-in access to the CGL context because
2904 CGL is the more primitive of the GL drawable APIs and allows for finer control over the context.
2905 (-[WebBaseNetscapePluginView _getAGLOffscreenBuffer:width:height:]):
2906 - Returns the buffer allocated for the offscreen AGL context, if there is one.
2907 (-[WebBaseNetscapePluginView _destroyAGLContext]):
2908 - Destroys the AGL context, as well as the associated offscreen buffer or child window.
2909 (-[WebBaseNetscapePluginView _reshapeAGLWindow]):
2910 - Positions the AGL window over the browser window.
2911 (-[WebBaseNetscapePluginView _hideAGLWindow]):
2912 - Hides the AGL window.
2913 (-[WebBaseNetscapePluginView _aglOffscreenImageForDrawingInRect:]):
2914 - Returns an NSImage representation of the offscreen AGL context's framebuffer. This is used to draw the offscreen
2915 bits back into the plug-in view. This is kind of tricky because it has to convert the offscreen buffer in-place
2916 from BGRA to RGBA so that it can be wrapped in an NSBitmapImageRep. See comments.
2918 * WebKit.xcodeproj/project.pbxproj:
2919 Link OpenGL and AGL.
2921 2006-07-09 Brady Eidson <beidson@apple.com>
2925 The ICONDEBUG flag now chooses either the new icon database or the old one
2926 No longer any need to live side by side to compare results
2928 * Misc/WebIconDatabase.m:
2929 (-[NSMutableDictionary iconURLForURL:]):
2930 (-[NSMutableDictionary retainIconForURL:]):
2931 (-[NSMutableDictionary releaseIconForURL:]):
2932 (-[WebIconDatabase _setHaveNoIconForIconURL:]):
2933 (-[WebIconDatabase _setIconURL:forURL:]):
2934 (-[WebIconDatabase _resetCachedWebPreferences:]):
2936 2006-07-08 Timothy Hatcher <timothy@apple.com>
2940 Bug 5312: comments aren't available via DOM
2941 http://bugzilla.opendarwin.org/show_bug.cgi?id=5312
2943 Makes the Web Inspector show comment node contents.
2945 * WebInspector/WebInspector.m:
2946 (-[DOMNode _displayName]): return the contents of the comment
2947 * WebInspector/webInspector/inspector.js: check for comment nodes
2949 2006-07-09 Alexey Proskuryakov <ap@nypop.com>
2953 - http://bugzilla.opendarwin.org/show_bug.cgi?id=9572
2954 Add application/xhtml+xml to the Accept header
2956 * WebView/WebFrame.m:
2957 (-[WebFrame _addExtraFieldsToRequest:mainResource:alwaysFromRequest:]): Add an Accept header
2958 to main resource requests.
2959 * English.lproj/StringsNotToBeLocalized.txt: Added new strings.
2961 2006-07-08 Darin Adler <darin@apple.com>
2963 * DefaultDelegates/WebDefaultContextMenuDelegate.m:
2964 (-[WebDefaultUIDelegate contextMenuItemsForElement:defaultMenuItems:]):
2965 Removed misleading old comment.
2967 === Safari-521.15 ===
2969 2006-07-07 Levi Weintraub <lweintraub@apple.com>
2973 Finished moving deletion selection expansion across the bridge... say that 3 times fast.
2975 * WebView/WebHTMLView.m: Pass granularity to WebCore to handle expansion
2976 (-[WebHTMLView _deleteRange:killRing:prepend:smartDeleteOK:deletionAction:granularity:]):
2977 (-[WebHTMLView _deleteSelection]):
2978 (-[WebHTMLView _deleteWithDirection:granularity:killRing:isTypingAction:]):
2979 (-[WebHTMLView deleteToMark:]):
2981 2006-07-07 Brady Eidson <beidson@apple.com>
2985 Changed an ASSERT to a LOG_ERROR for an error that could be handled gracefully, but
2986 whose assertion was reproducibly causing a build bot failure
2988 * Misc/WebIconDatabase.m:
2989 (-[WebIconDatabase _releaseIconForIconURLString:]):
2991 2006-07-06 Levi Weintraub <lweintraub@apple.com>
2995 Improved table editing
2997 * WebCoreSupport/WebFrameBridge.m: Added method to allow WebCore to trigger
2998 deletion editing delegate
2999 (-[WebFrameBridge shouldDeleteSelectedDOMRange:]):
3000 * WebView/WebHTMLView.m: Moved code that expanded a selection when the delete
3001 key is pressed over to WebCore so we can be more intelligent about how to handle it
3002 (-[WebHTMLView _deleteRange:killRing:prepend:smartDeleteOK:deletionAction:]):
3003 (-[WebHTMLView _deleteWithDirection:granularity:killRing:isTypingAction:]):
3005 2006-07-07 John Sullivan <sullivan@apple.com>
3007 Reviewed by Tim Hatcher
3009 - fixed <rdar://problem/4606857> WebKit: WebPreferencesChangedNotification not exported
3012 added surprisingly missing _WebPreferencesChangedNotification, defined in
3015 2006-07-06 Brady Eidson <beidson@apple.com>
3019 Small fix to my previous small fix that only lets the ASSERT off the hook if the DB
3022 * Misc/WebIconDatabase.m:
3023 (-[WebIconDatabase _releaseIconForIconURLString:]):
3025 2006-07-05 Brady Eidson <beidson@apple.com>
3029 Small fix that prevents an assertion from triggering if the DB is being cleaned up
3030 (ie, the app being shut down)
3032 * Misc/WebIconDatabase.h:
3033 * Misc/WebIconDatabase.m:
3034 (-[NSMutableDictionary init]):
3035 (-[WebIconDatabase _applicationWillTerminate:]):
3036 (-[WebIconDatabase _releaseIconForIconURLString:]):
3038 2006-07-05 Adele Peterson <adele@apple.com>
3040 Reviewed by Maciej and Hyatt.
3042 WebKit part of initial popup menu implementation.
3044 * WebCoreSupport/WebSystemInterface.m: (InitWebCoreSystemInterface):
3045 Initialize WKPopupMenu.
3047 2006-07-05 Anders Carlsson <acarlsson@apple.com>
3051 http://bugzilla.opendarwin.org/show_bug.cgi?id=3581
3052 iFrames set to display:none are Missing from frames array
3054 * WebCoreSupport/WebFrameBridge.m:
3055 (-[WebFrameBridge initSubframeWithOwnerElement:frameName:view:]):
3056 (-[WebFrameBridge createChildFrameNamed:withURL:referrer:ownerElement:allowsScrolling:marginWidth:marginHeight:]):
3057 Modify to pass the owner element instead of the owner renderer.
3059 * WebView/WebHTMLView.m:
3060 (-[WebHTMLView _topHTMLView]):
3061 Remove assertion, it's not valid anymore.
3063 2006-07-05 Timothy Hatcher <timothy@apple.com>
3065 Reviewed by Harrison.
3067 <rdar://problem/4608423> HIViewAdapter used but not defined
3068 Adds a new export file to fix the build.
3070 * WebKit.LP64.exp: Added.
3071 * WebKit.xcodeproj/project.pbxproj:
3073 2006-07-04 Timothy Hatcher <timothy@apple.com>
3077 Bug 9731: [Drosera] crash when trying to access the scope chain
3078 http://bugzilla.opendarwin.org/show_bug.cgi?id=9731
3080 Because of <rdar://problem/4608404> the WebScriptObject, _globalObj, that
3081 WebCoreScriptDebugger holds is unprotected each time the page changes.
3082 This causes Drosera to crash Safari when trying to access the scope chain.
3083 We simply need to detach and re-attach the debugger when the window script
3084 object is cleared until 4608404 is fixed. This change also attaches the
3085 debugger before we call the windowScriptObjectAvailable: delegate method,
3086 so the debugger is ready before anyone might use the window object.
3088 * WebCoreSupport/WebFrameBridge.m:
3089 (-[WebFrameBridge windowObjectCleared]):
3091 2006-07-04 Timothy Hatcher <timothy@apple.com>
3095 Bug 9732: [Drosera] calling removeListener to many times will cause
3096 WebKit's listener count to underflow/wraparound
3097 http://bugzilla.opendarwin.org/show_bug.cgi?id=9732
3099 Adds a check to make sure the listener was in our listeners set before
3100 decrementing the global listener count. Also checks for nil in addListner
3101 to prevent a possible exception when adding the object to the set.
3103 * DefaultDelegates/WebScriptDebugServer.m:
3104 (-[WebScriptDebugServer addListener:]):
3105 (-[WebScriptDebugServer removeListener:]):
3107 2006-07-04 Alexey Proskuryakov <ap@nypop.com>
3111 - http://bugzilla.opendarwin.org/show_bug.cgi?id=8210
3112 Conditional XMLHttpRequest gets should pass 304 responses unchanged
3114 Test: http/tests/xmlhttprequest/cache-override.html
3116 * Misc/WebNSURLRequestExtras.h: Added _web_isConditionalRequest
3117 * Misc/WebNSURLRequestExtras.m:
3118 (-[NSURLRequest _web_isConditionalRequest]):
3119 * WebCoreSupport/WebFrameBridge.m:
3120 (-[WebFrameBridge syncLoadResourceWithMethod:URL:customHeaders:postData:finalURL:responseHeaders:statusCode:]):
3121 Bypass the cache for conditional requests.
3122 * WebCoreSupport/WebSubresourceLoader.m:
3123 (+[WebSubresourceLoader startLoadingResource:withRequest:customHeaders:referrer:forDataSource:]): Ditto.
3125 2006-07-01 David Kilzer <ddkilzer@kilzer.net>
3127 Reviewed by NOBODY (fixed Tim's build fix).
3129 * WebView/WebView.m: Added back missing '/' at the beginning of the file.
3131 2006-07-01 Tim Omernick <timo@apple.com>
3133 Reviewed by NOBODY (build fix)
3135 * WebView/WebView.m:
3136 (-[WebView _isMIMETypeRegisteredAsPlugin:]):
3137 Changed nil to NO (typo).
3139 === Safari-521.14 ===
3141 2006-06-30 Timothy Hatcher <timothy@apple.com>
3145 Only enable shouldCloseWithWindow when ObjC GC is enabled.
3146 This maintains backwards compatibility with applications
3147 that expect a WebView to be usable after the window closes.
3149 * WebView/WebView.m:
3150 (-[WebViewPrivate init]):
3152 2006-06-30 Timothy Hatcher <timothy@apple.com>
3156 Call _close in dealloc to ensure we cleanup for backwards
3157 compatibility. This will safeguard and cleanup even if the
3158 application doesn't use the new close API yet, like Mail.
3160 * WebView/WebView.m:
3161 (-[WebView dealloc]):
3163 2006-06-29 Timothy Hatcher <timothy@apple.com>
3167 <rdar://problem/4484405> WebKit leaks, improper tear-down
3168 <rdar://problem/3694059> -[WebBackForwardList finalize] is incorrect; design change needed
3169 <rdar://problem/3694103> -[WebFrame finalize] is incorrect; design change needed
3170 <rdar://problem/3694104> -[WebHTMLView finalize] is incorrect; design change needed
3172 Adds a close method to WebView, this needs to be called when the
3173 WebView is no longer needed. To make this easier for the common cases
3174 there is now an "auto close" on WebView that listens to the view's
3175 parent window. If the parent window closes and the WebView has no
3176 hostWindow then the WebView is automatically closed if autoClose is YES.
3177 To manage WebView closing yourself call setAutoClose: and pass NO.
3179 When a WebView closes it will tear-down and not be usable anymore.
3180 Close will will called on various other internal objects as a part
3181 of this, to ensure proper tear-down in GC without relying on finalize.
3183 * History/WebBackForwardList.m:
3184 (-[WebBackForwardList dealloc]):
3185 (-[WebBackForwardList finalize]):
3186 (-[WebBackForwardList _close]):
3187 * History/WebHistoryItem.m:
3188 (+[WebHistoryItem _closeObjectsInPendingPageCaches]):
3189 (+[WebHistoryItem _releaseAllPendingPageCaches]):
3190 * History/WebHistoryItemPrivate.h:
3191 * WebCoreSupport/WebFrameBridge.m:
3192 (-[WebFrameBridge close]):
3193 (-[WebFrameBridge saveDocumentToPageCache:]):
3194 (-[WebFrameBridge canGoBackOrForward:]):
3195 * WebView/WebFrame.m:
3196 (-[WebFrame _detachFromParent]):
3197 (-[WebFrame dealloc]):
3198 (-[WebFrame finalize]):
3199 * WebView/WebFrameView.m:
3200 (-[WebFrameView _setWebFrame:]):
3201 (-[WebFrameView finalize]):
3202 * WebView/WebHTMLView.m:
3203 (-[WebHTMLView close]):
3204 (-[WebHTMLView dealloc]):
3205 (-[WebHTMLView finalize]):
3206 * WebView/WebHTMLViewInternal.h:
3207 * WebView/WebHTMLViewPrivate.h:
3208 * WebView/WebScriptDebugDelegate.m:
3209 (-[WebScriptCallFrame _initWithFrame:initWithWebFrame:]):
3210 (-[WebScriptCallFrame parsedSource:fromURL:sourceId:startLine:errorLine:errorMessage:]):
3211 (-[WebScriptCallFrame enteredFrame:sourceId:line:]):
3212 (-[WebScriptCallFrame hitStatement:sourceId:line:]):
3213 (-[WebScriptCallFrame leavingFrame:sourceId:line:]):
3214 * WebView/WebScriptDebugDelegatePrivate.h:
3215 * WebView/WebView.m:
3216 (-[WebViewPrivate init]):
3217 (-[WebView _close]):
3218 (-[WebView dealloc]):
3219 (-[WebView finalize]):
3220 (-[WebView viewWillMoveToWindow:]):
3221 (-[WebView _windowWillClose:]):
3222 (-[WebView setPreferencesIdentifier:]):
3223 (-[WebView mainFrame]):
3224 (-[WebView setHostWindow:]):
3225 (-[WebView searchFor:direction:caseSensitive:wrap:]):
3226 (-[WebView writeSelectionWithPasteboardTypes:toPasteboard:]):
3228 (-[WebView setAutoClose:]):
3229 (-[WebView autoClose]):
3230 (-[WebView _frameViewAtWindowPoint:]):
3231 * WebView/WebViewPrivate.h:
3233 2006-06-29 Kevin Decker <kdecker@apple.com>
3235 Reviewed by mjs and timo.
3237 Fixed: <rdar://problem/4609119> handleAuthenticationFromResource was removed; needed by the Dashboard
3239 * WebView/WebViewPrivate.h: Added handleAuthenticationFromResource back into the header. Needed by the
3240 Dashboard, but was removed in r.14028 on 2006-04-23.
3242 2006-06-29 Tim Omernick <timo@apple.com>
3244 Reviewed by Kevin Decker.
3246 <rdar://problem/4608487> REGRESSION: reproducible crash in +[WebCoreFrameBridge supportedImageMIMETypes]
3248 * Plugins/WebPluginDatabase.m:
3249 (+[WebPluginDatabase setAdditionalWebPlugInPaths:]):
3250 One might be tempted to add additionalWebPlugInPaths to the global WebPluginDatabase here.
3251 For backward compatibility with earlier versions of the +setAdditionalWebPlugInPaths: SPI,
3252 we need to save a copy of the additional paths and not cause a refresh of the plugin DB
3254 (-[WebPluginDatabase _plugInPaths]):
3255 Include additionalWebPlugInPaths if this is the global DB.
3256 (-[WebPluginDatabase refresh]):
3257 Call -_plugInPaths to get the modified array of paths. This is similar to what the old code
3258 (before we had per-WebView plugin search paths).
3260 2006-06-29 Tim Omernick <timo@apple.com>
3262 Reviewed by John Sullivan.
3264 WebHistoryItem now supports getting and setting arbitrary properties via _transientPropertyForKey: and
3265 -_setTransientProperty:forKey:.
3266 For now, these properties do not persist with the rest of the history data. They are intended to hold transient
3267 per-history-item state, which is something that was until now difficult for a WebKit client app to do.
3269 * History/WebHistoryItemPrivate.h:
3270 * History/WebHistoryItem.m:
3271 (-[WebHistoryItemPrivate dealloc]):
3272 (-[WebHistoryItem _transientPropertyForKey:]):
3273 (-[WebHistoryItem _setTransientProperty:forKey:]):
3275 2006-06-29 Timothy Hatcher <timothy@apple.com>
3277 Reviewed by Harrison.
3279 Smart insert and delete, continuous spell checking and autoscroll
3280 can now be used for any WebView, not just editable ones. All of
3281 these make sense for documents that might contain content editable
3282 areas or our new text fields. Autoscroll is usefull for dragging
3283 for file input controls also.
3285 Added a SPI to toggle WebViews tab key behavior, tabKeyCyclesThroughElements.
3286 WebHTMLView's _interceptEditingKeyEvent now uses WebView's
3287 tabKeyCyclesThroughElements state to determine whether or not
3288 to process tab key events. The idea here is that tabKeyCyclesThroughElements
3289 will be YES when this WebView is being used in a browser, and we
3290 desire the behavior where tab moves to the next element in tab order.
3291 If tabKeyCyclesThroughElements is NO, it is likely that the WebView
3292 is being embedded as the whole view, as in Mail, and tabs should input
3293 tabs as expected in a text editor. Using Option-Tab always cycles
3296 * WebView/WebHTMLRepresentation.m:
3297 (-[WebHTMLRepresentation finishedLoadingWithDataSource:]):
3298 * WebView/WebHTMLView.m:
3299 (-[WebHTMLView _interceptEditingKeyEvent:]):
3300 * WebView/WebView.m:
3301 (-[WebViewPrivate init]):
3302 (-[WebView _autoscrollForDraggingInfo:timeDelta:]):
3303 (-[WebView _shouldAutoscrollForDraggingInfo:]):
3304 (-[WebView validateUserInterfaceItem:]):
3305 (-[WebView toggleSmartInsertDelete:]):
3306 (-[WebView toggleContinuousSpellChecking:]):
3307 (-[WebView setTabKeyCyclesThroughElements:]):
3308 (-[WebView tabKeyCyclesThroughElements]):
3309 * WebView/WebViewPrivate.h:
3311 2006-06-29 Anders Carlsson <acarlsson@apple.com>
3315 * WebKit.xcodeproj/project.pbxproj:
3316 Add DOMXPath.h header.
3318 2006-06-28 David Hyatt <hyatt@apple.com>
3320 Fix custom highlighting so that you can paint the entire line (and go
3321 outside the bounds of the line).
3323 Reviewed by harrison
3325 * WebCoreSupport/WebFrameBridge.m:
3326 (-[WebFrameBridge customHighlightRect:forLine:]):
3327 (-[WebFrameBridge paintCustomHighlight:forBox:onLine:behindText:entireLine:]):
3328 * WebKit.xcodeproj/project.pbxproj:
3329 * WebView/WebHTMLViewPrivate.h:
3331 2006-06-28 Maciej Stachowiak <mjs@apple.com>
3335 - fix Frame leak on layout tests
3337 * WebCoreSupport/WebPageBridge.m:
3338 (-[WebPageBridge outerView]): Return WebFrameView for main frame instead
3339 of WebView to avoid reference cycle between WebView and Page.
3341 2006-06-28 Timothy Hatcher <timothy@apple.com>
3343 Prefer the Stabs debugging symbols format until DWARF bugs are fixed.
3345 * WebKit.xcodeproj/project.pbxproj:
3347 2006-06-28 Levi Weintraub <lweintraub@apple.com>
3351 http://bugzilla.opendarwin.org/show_bug.cgi?id=7568
3352 Bug 7568: Implement Indent/Outdent
3353 Added undo action strings and enum values
3355 * English.lproj/Localizable.strings:
3356 * WebCoreSupport/WebFrameBridge.m:
3357 (-[WebFrameBridge nameForUndoAction:]):
3359 2006-06-27 Brady Eidson <beidson@apple.com>
3363 Hookup the new semi-functional SQLite icon database.
3364 For now, it is living side-by-side with the old DB so one can compare the
3365 two for debugging purposes. Also, it is disabled (in WebKit) by default unless you
3366 compile with ICONDEBUG #defined.
3367 Note: To repeat that, if you want to try the new DB, #define ICONDEBUG (WebKitPrefix.h is a good place to do it)
3369 * Misc/WebIconDatabase.m:
3370 (-[NSMutableDictionary iconForURL:withSize:cache:]):
3371 (-[NSMutableDictionary iconURLForURL:]):
3372 (-[NSMutableDictionary retainIconForURL:]):
3373 (-[NSMutableDictionary releaseIconForURL:]):
3374 (-[WebIconDatabase _setHaveNoIconForIconURL:]):
3375 (-[WebIconDatabase _setIconURL:forURL:]):
3376 (-[WebIconDatabase _hasIconForIconURL:]):
3377 (-[WebIconDatabase _resetCachedWebPreferences:]):
3378 * Misc/WebIconLoader.m:
3379 (-[WebIconLoader didFinishLoading]):
3380 * WebKit.xcodeproj/project.pbxproj:
3382 2006-06-26 David Hyatt <hyatt@apple.com>
3384 Fix for 9538, support syntax highlighting for HTML source.
3388 * WebKit.xcodeproj/project.pbxproj:
3389 * WebView/WebView.m:
3390 (-[WebView _setInViewSourceMode:]):
3391 (-[WebView _inViewSourceMode]):
3392 * WebView/WebViewPrivate.h:
3394 2006-06-25 Timothy Hatcher <timothy@apple.com>
3398 Bug 9574: Drosera should show inline scripts within the original HTML
3399 http://bugzilla.opendarwin.org/show_bug.cgi?id=9574
3401 * Adds a new version of the didParseSource delegate callback with base line number.
3402 * Adds a new delegate callback for when a script fails to parse.
3403 * These new callbacks use NSURLs for the url parameter.
3404 * Adds a new script listener callback to notify when the main resource loads.
3405 * Adds a WebScriptErrorDomian and other keys for use with NSError.
3407 * DefaultDelegates/WebDefaultScriptDebugDelegate.m:
3408 (-[WebDefaultScriptDebugDelegate webView:didParseSource:baseLineNumber:fromURL:sourceId:forWebFrame:]):
3409 (-[WebDefaultScriptDebugDelegate webView:failedToParseSource:baseLineNumber:fromURL:withError:forWebFrame:]):
3410 * DefaultDelegates/WebScriptDebugServer.h:
3411 * DefaultDelegates/WebScriptDebugServer.m:
3412 (-[WebScriptDebugServer webView:didLoadMainResourceForDataSource:]):
3413 (-[WebScriptDebugServer webView:didParseSource:baseLineNumber:fromURL:sourceId:forWebFrame:]):
3414 (-[WebScriptDebugServer webView:failedToParseSource:baseLineNumber:fromURL:withError:forWebFrame:]):
3415 * DefaultDelegates/WebScriptDebugServerPrivate.h:
3417 * WebView/WebDataSource.m:
3418 (-[WebDataSource _setPrimaryLoadComplete:]):
3419 * WebView/WebScriptDebugDelegate.h:
3420 * WebView/WebScriptDebugDelegate.m:
3421 (-[WebScriptCallFrame parsedSource:fromURL:sourceId:startLine:errorLine:errorMessage:]):
3423 2006-06-24 David Kilzer <ddkilzer@kilzer.net>
3425 Reviewed by Timothy.
3427 * Info.plist: Fixed copyright to include 2003-2006.
3429 2006-06-24 Alexey Proskuryakov <ap@nypop.com>
3433 - http://bugzilla.opendarwin.org/show_bug.cgi?id=9418
3434 WebKit will not build when Space exists in path
3436 * WebKit.xcodeproj/project.pbxproj: Enclose search paths in quotes.
3438 2006-06-23 Tim Omernick <timo@apple.com>
3440 Reviewed by John Sullivan.
3442 * Plugins/WebBaseNetscapePluginView.m:
3443 (-[WebBaseNetscapePluginView sendEvent:]):
3444 Fixed a bug I found in the CoreGraphics drawing model that was preventing certain types of
3445 events from being dispatched to the plugin, unless the plugin was being updated. The check
3446 for portState was only required to call -setWindowIfNecessary, not required for the entire
3448 Also, don't paint the green debug rect unless this is a QuickDraw plugin. Otherwise the
3449 current QD port is not set, and the green rect fills the entire screen. Pretty awesome
3450 looking, but not intended behavior.
3451 (-[WebBaseNetscapePluginView setWindowIfNecessary]):
3452 Improved the logging here to include the NPWindow's width and height.
3454 2006-06-23 Timothy Hatcher <timothy@apple.com>
3458 Adds back SPI that Mail is still depending on.
3460 * WebView/WebDataSource.m:
3461 (-[WebDataSource _addSubframeArchives:]):
3462 * WebView/WebDataSourcePrivate.h:
3464 === WebKit-521.13 ===
3466 2006-06-23 Timothy Hatcher <timothy@apple.com>
3470 script debugger should only attach to JavaScriptCore when there are listeners
3471 http://bugzilla.opendarwin.org/show_bug.cgi?id=9552
3473 Attaches the debugger to all WebFrames when the first listener
3474 is added. Detaches when the last listener is removed.
3475 Also detach when the script debug delegate is set to nil.
3477 * DefaultDelegates/WebScriptDebugServer.m:
3478 (+[WebScriptDebugServer listenerCount]):
3479 (-[WebScriptDebugServer dealloc]):
3480 (-[WebScriptDebugServer attachScriptDebuggerToAllWebViews]):
3481 (-[WebScriptDebugServer detachScriptDebuggerFromAllWebViews]):
3482 (-[WebScriptDebugServer listenerConnectionDidDie:]):
3483 (-[WebScriptDebugServer addListener:]):
3484 (-[WebScriptDebugServer removeListener:]):
3485 * DefaultDelegates/WebScriptDebugServerPrivate.h:
3486 * WebCoreSupport/WebFrameBridge.m:
3487 (-[WebFrameBridge windowObjectCleared]):
3488 * WebView/WebFrame.m:
3489 (-[WebFrame _attachScriptDebugger]):
3490 (-[WebFrame _detachScriptDebugger]):
3491 * WebView/WebFramePrivate.h:
3492 * WebView/WebScriptDebugDelegate.m:
3493 (-[WebScriptCallFrame parsedSource:fromURL:sourceId:]):
3494 (-[WebScriptCallFrame enteredFrame:sourceId:line:]):
3495 (-[WebScriptCallFrame hitStatement:sourceId:line:]):
3496 (-[WebScriptCallFrame leavingFrame:sourceId:line:]):
3497 * WebView/WebView.m:
3498 (-[WebView _attachScriptDebuggerToAllFrames]):
3499 (-[WebView _detachScriptDebuggerFromAllFrames]):
3500 (-[WebView setScriptDebugDelegate:]):
3501 * WebView/WebViewPrivate.h:
3503 2006-06-22 John Sullivan <sullivan@apple.com>
3505 Reviewed by Tim Omernick
3507 - added support for UIDelegate to be notified of scrolling in any WebHTMLView
3508 - cleaned up recently-added UIDelegate code
3510 * WebView/WebUIDelegatePrivate.h:
3511 declared webView:didScrollDocumentInFrameView: method
3513 * DefaultDelegates/WebDefaultUIDelegate.m:
3514 (-[NSApplication webView:didDrawRect:]):
3515 provide default (empty) implementation of this recently-added method, so the
3516 DelegateForwarder mechanism will work for it
3517 (-[NSApplication webView:didScrollDocumentInFrameView:]):
3518 same thing for the new method
3520 * WebView/WebHTMLView.m:
3521 (-[WebHTMLView _frameOrBoundsChanged]):
3522 use _UIDelegateForwarder mechanism to notify delegate that scrolling occurred
3523 (-[WebHTMLView drawSingleRect:]):
3524 use _UIDelegateForwarder mechanism instead of checking respondsToSelector stuff
3525 here (that's packaged up nicely by the forwarder mechanism)
3527 2006-06-22 Tim Omernick <timo@apple.com>
3529 Reviewed by NOBODY (build fix)
3531 * WebView/WebFrameLoader.m:
3532 Import WebMainResourceLoader instead of using @class so that we can call WebMainResourceLoader
3535 2006-06-22 Tim Omernick <timo@apple.com>