1 2006-08-13 Maciej Stachowiak <mjs@apple.com>
5 - removed non-Loader WebKit dependencies from WebDataProtocol for
6 real (whoops) and fix some typos.
8 * Loader/WebDataProtocol.m:
9 (isCaseInsensitiveEqual): Added.
10 (+[WebDataProtocol _webIsDataProtocolURL:]): Avoid WebKit calls.
11 (-[WebDataProtocol startLoading]): ditto
12 * Loader/WebFrameLoader.m:
13 (isCaseInsensitiveEqual): Fixed spelling from isCaseSensitiveEqual.
14 (-[WebFrameLoader _canUseResourceForRequest:]): Use proper call.
16 2006-08-13 Brady Eidson <beidson@apple.com>
20 The way of detecting a failed icon load before was to try and construct
21 an image from the icon and if that image construction failed, mark the icon
23 A much more efficient way is to check for an error response. We'll still
24 check for invalid image data, but most servers will correctly return an HTTP
25 error on a missing icon.
27 * Misc/WebIconLoader.m:
28 (-[WebIconLoader didFinishLoading]): Added check for http error response
30 2006-08-13 Maciej Stachowiak <mjs@apple.com>
34 - remove all non-Loader dependencies from WebLoader
36 As part of this I moved WebDataProtocol to the loader directory
37 and removed dependencies on the rest of WebKit from that too.
39 * Loader/WebFrameLoader.h:
40 * Loader/WebFrameLoader.m:
41 (-[WebFrameLoader setDefersCallbacks:]):
42 (-[WebFrameLoader stopLoading]):
43 (-[WebFrameLoader cancelledErrorWithRequest:]):
44 (-[WebFrameLoader clearArchivedResources]):
45 (-[WebFrameLoader deliverArchivedResources]):
46 (-[WebFrameLoader deliverArchivedResourcesAfterDelay]):
47 (isCaseSensitiveEqual):
48 (-[WebFrameLoader _canUseResourceForRequest:]):
49 (-[WebFrameLoader _canUseResourceWithResponse:]):
50 (-[WebFrameLoader pendingArchivedResources]):
51 (-[WebFrameLoader willUseArchiveForRequest:originalURL:loader:]):
52 (-[WebFrameLoader archiveLoadPendingForLoader:]):
53 (-[WebFrameLoader cancelPendingArchiveLoadForLoader:]):
56 (-[NSURLProtocol releaseResources]):
57 (-[NSURLProtocol loadWithRequest:]):
58 (-[NSURLProtocol setDefersCallbacks:]):
59 (-[NSURLProtocol addData:allAtOnce:]):
60 (-[NSURLProtocol resourceData]):
61 (-[NSURLProtocol didReceiveData:lengthReceived:allAtOnce:]):
62 (-[NSURLProtocol connection:didReceiveData:lengthReceived:]):
63 (-[NSURLProtocol cancelWithError:]):
64 (-[NSURLProtocol cancelledError]):
65 * Loader/WebMainResourceLoader.m:
66 (-[WebMainResourceLoader addData:allAtOnce:]):
67 (-[WebMainResourceLoader didReceiveData:lengthReceived:allAtOnce:]):
68 * Loader/WebNetscapePlugInStreamLoader.m:
69 (-[WebNetscapePlugInStreamLoader didReceiveData:lengthReceived:allAtOnce:]):
70 * Loader/WebSubresourceLoader.m:
71 (-[WebSubresourceLoader didReceiveData:lengthReceived:allAtOnce:]):
72 * WebKit.xcodeproj/project.pbxproj:
73 * WebView/WebDataProtocol.h: Removed.
74 * WebView/WebDataProtocol.m: Removed.
76 2006-08-11 Tim Omernick <timo@apple.com>
80 <http://bugzilla.opendarwin.org/show_bug.cgi?id=10111> - Menu flickers over Flash content
81 <rdar://problem/3052546> Plugins don't work with z-index (overlapping elements, etc.)
83 * Plugins/WebBaseNetscapePluginView.m:
84 (-[WebBaseNetscapePluginView saveAndSetNewPortStateForUpdate:]):
85 Don't just clip to the dirty region for "transparent" plug-ins -- do it for all plug-ins. This is a
86 generally useful thing to do, as it prevents the plug-in from drawing over parts of the window that
87 have already been drawn and are not expected to be redrawn in the same update.
89 2006-08-11 Brady Eidson <beidson@apple.com>
91 Reviewed by John, Timo, Adele, and Darin
93 In addition to a few style/good-practice cleanups, this patch will convert the old icon database
94 format to the WebCore format if the WebCore db is empty (implying this conversion has yet to take
95 place). After the conversion, it will delete all traces of the old format to free the unneeded space
97 * Misc/WebIconDatabase.m:
98 (-[WebIconDatabase init]):
99 (-[WebIconDatabase _setIconURL:forURL:]): Changed the bridge's name for this method to be more clear
100 (-[WebIconDatabase _createFileDatabase]):
101 (-[WebIconDatabase _iconDataForIconURL:]): This grabs the raw data for use in the conversion function
102 (-[WebIconDatabase _convertToWebCoreFormat]): This does the actual conversion
104 2006-08-11 Tim Omernick <timo@apple.com>
106 Reviewed by John Sullivan.
108 Needed for <rdar://problem/4678070>.
110 * Plugins/WebBaseNetscapePluginView.m:
111 (-[WebBaseNetscapePluginView sendEvent:]):
112 Changed an assertion to an early return. It should be possible to send events, especially updateEvt (for image capturing
113 purposes), to off-screen plug-ins. It just doesn't work right now. See <rdar://problem/4318269>.
115 2006-08-11 John Sullivan <sullivan@apple.com>
119 - fixed <rdar://problem/4522894> Would be nice if Safari shrank pages a little if necessary
120 to avoid printing an almost-empty page
122 * WebView/WebHTMLView.m:
123 (-[NSArray knowsPageRange:]):
124 If the last page has a short-enough orphan (< 1/10 of the page height is the number I pulled
125 out of ... the air), then we adjust the scale factor slightly and check whether this reduces
126 the page count and thus eliminates the orphan.
128 2006-08-07 Brady Eidson <beidson@apple.com>
130 Reviewed by Anders and John
132 * Misc/WebIconDatabase.m:
133 (-[WebIconDatabase init]):
134 (-[WebIconDatabase isIconExpiredForIconURL:]): Get if an icon expired
135 (-[WebIconDatabase isIconExpiredForPageURL:]): Ditto
136 (-[WebIconDatabase _setIconURL:forURL:]):
137 (-[WebIconDatabase _sendNotificationForURL:]): Moved to WebKitPendingPublic for use outside of WebIconDatabase
138 (-[WebIconDatabase loadIconFromURL:]): Allow a load outside the context of a page load
139 * Misc/WebIconDatabasePrivate.h:
141 * Misc/WebIconLoader.m:
142 (-[WebIconLoader didFinishLoading]): fixed up the "flipping the switch" #defs a bit
143 (-[WebIconLoader willSendRequest:redirectResponse:]): override to allow a load
144 outside of the context of a page load
146 * WebCoreSupport/WebIconDatabaseBridge.h: Added.
147 * WebCoreSupport/WebIconDatabaseBridge.m: Added.
148 (-[WebIconDatabaseBridge init]):
149 (-[WebIconDatabaseBridge dealloc]):
150 (-[WebIconDatabaseBridge loadIconFromURL:]): Kick off a load on an icon outside
151 of the context of any page load
152 (-[WebIconDatabaseBridge _setIconData:forIconURL:]): WebKit side of bridge method
153 (-[WebIconDatabaseBridge _setHaveNoIconForIconURL:]): WebKit side of bridge method
154 (-[WebIconDatabaseBridge releaseCachedLoaderForIconURL:]):
155 (+[WebIconDatabaseBridge sharedBridgeInstance]): Moved this from WebCore to WebKit
156 so both sides of the bridge get the WebKit version
157 * WebKit.xcodeproj/project.pbxproj: Added some files
158 * WebView/WebDataSource.m:
159 (-[WebDataSource _loadIcon]): Added check for reload/expired icon to force
160 a load even if we already have it
162 2006-08-04 Sam Weinig <sam.weinig@gmail.com>
166 - patch for http://bugzilla.opendarwin.org/show_bug.cgi?id=10192
167 Make WebCore (and friends) compile with -Wshorten-64-to-32
169 * Adds 'f' to float literals where expecting a float.
170 * Use ceilf() instead of ceil() when assigning to a float.
171 * Adds explicit casts where OK.
173 NOTE: The -Wshorten-64-to-32 flag was not added for WebKit
174 because there are still a few places where no error handling
175 is in place. The flag can be added as soon as those are worked
178 * Misc/WebNSControlExtras.m:
179 (-[NSControl sizeToFitAndAdjustWindowHeight]):
180 * Misc/WebNSImageExtras.m:
181 (-[NSImage _web_scaleToMaxSize:]):
182 * Misc/WebNSViewExtras.h:
183 * Misc/WebNSViewExtras.m:
184 * Plugins/WebBaseNetscapePluginView.m:
185 (-[WebBaseNetscapePluginView saveAndSetNewPortStateForUpdate:]):
186 (-[WebBaseNetscapePluginView drawRect:]):
187 * WebCoreSupport/WebFrameBridge.m:
188 (-[WebFrameBridge expiresTimeForResponse:]):
189 * WebInspector/WebInspector.m:
190 (-[NSWindow window]):
191 (-[WebInspector treeViewScrollTo:]):
192 (-[WebInspector _updateSystemColors]):
193 (-[WebInspector webView:plugInViewWithArguments:]):
194 (-[WebInspector outlineView:objectValueForTableColumn:byItem:]):
195 * WebInspector/WebInspectorOutlineView.m:
196 (-[WebInspectorOutlineView _highlightRow:clipRect:]):
197 * WebInspector/WebNodeHighlight.m:
198 (-[WebNodeHighlight initWithBounds:andRects:forView:]):
199 * WebInspector/WebNodeHighlightView.m:
200 (-[WebNodeHighlightView roundedRect:withRadius:]):
201 (-[WebNodeHighlightView initWithHighlight:andRects:forView:]):
202 (-[WebNodeHighlightView drawRect:]):
203 * WebView/WebFrame.m:
204 (-[WebFrame _opened]):
205 * WebView/WebFrameView.m:
206 (-[WebFrameView initWithFrame:]):
207 * WebView/WebHTMLView.m:
208 (-[WebHTMLView _dragImageForLinkElement:]):
209 (-[WebHTMLView _web_setPrintingModeRecursive]):
210 (-[WebHTMLView _web_clearPrintingModeRecursive]):
212 (-[NSArray _setPrinting:minimumPageWidth:maximumPageWidth:adjustViewSize:]):
213 (-[NSArray adjustPageHeightNew:top:bottom:limit:]):
214 (-[NSArray _scaleFactorForPrintOperation:]):
215 (-[NSArray setPageWidthForPrinting:]):
216 (-[NSArray _endPrintMode]):
217 (-[NSArray knowsPageRange:]):
218 (-[NSArray _originalFontA]):
219 (-[NSArray _originalFontB]):
220 (-[WebTextCompleteController _buildUI]):
221 (-[WebTextCompleteController _placePopupWindow:]):
222 * WebView/WebPDFView.m:
223 (-[WebPDFView _makeTextStandardSize:]):
224 (-[WebPDFView selectionImageForcingWhiteText:]):
225 (-[PDFPrefUpdatingProxy forwardInvocation:]):
226 * WebView/WebPreferences.m:
227 (-[WebPreferences _floatValueForKey:]):
229 (-[WebView makeTextSmaller:]):
230 (-[WebView canMakeTextStandardSize]):
231 (-[WebView makeTextStandardSize:]):
233 2006-08-04 David Kilzer <ddkilzer@kilzer.net>
235 Reviewed by NOBODY (build fix).
237 * WebCoreSupport/WebSubresourceLoader.m: REALLY moved to Loader/
238 * WebView/WebFrameLoader.h: REALLY moved to Loader/
239 * WebView/WebFrameLoader.m: REALLY moved to Loader/
240 * WebView/WebLoader.h: REALLY moved to Loader/
241 * WebView/WebLoader.m: REALLY moved to Loader/
242 * WebView/WebMainResourceLoader.m: REALLY moved to Loader/
244 2006-08-03 Maciej Stachowiak <mjs@apple.com>
248 - moved all loader code that is slated to be moved down to WebCore to a new Loader directory
250 (next step is to remove dependencies on the rest of WebKit from this directory)
252 * Loader/WebNetscapePlugInStreamLoader.h: Added.
253 * Loader/WebNetscapePlugInStreamLoader.m: Added. Cut out of WebNetscapePluginStream.m
254 (-[WebNetscapePlugInStreamLoader initWithStream:view:]):
255 (-[WebNetscapePlugInStreamLoader isDone]):
256 (-[WebNetscapePlugInStreamLoader releaseResources]):
257 (-[WebNetscapePlugInStreamLoader didReceiveResponse:]):
258 (-[WebNetscapePlugInStreamLoader didReceiveData:lengthReceived:]):
259 (-[WebNetscapePlugInStreamLoader didFinishLoading]):
260 (-[WebNetscapePlugInStreamLoader didFailWithError:]):
261 (-[WebNetscapePlugInStreamLoader cancelWithError:]):
262 * Plugins/WebNetscapePluginStream.m:
263 * WebKit.xcodeproj/project.pbxproj:
264 * WebCoreSupport/WebSubresourceLoader.h: Moved to Loader/
265 * WebCoreSupport/WebSubresourceLoader.m: Moved to Loader/
266 * WebView/WebFrameLoader.h: Moved to Loader/
267 * WebView/WebFrameLoader.m: Moved to Loader/
268 * WebView/WebLoader.h: Moved to Loader/
269 * WebView/WebLoader.m: Moved to Loader/
270 * WebView/WebMainResourceLoader.h: Moved to Loader/
271 * WebView/WebMainResourceLoader.m: Moved to Loader/
273 2006-08-03 Tim Omernick <timo@apple.com>
275 Reviewed by Kevin Decker.
277 <rdar://problem/4667460> Windowless OpenGL plug-ins render incorrectly on PowerPC
279 * Plugins/WebBaseNetscapePluginView.m:
280 (-[WebBaseNetscapePluginView _aglOffscreenImageForDrawingInRect:]):
281 Fixed color component swapping so that it works on both x86 and PPC. See comments.
283 2006-08-03 Brady Eidson <beidson@apple.com>
285 Reviewed by Tim Hatcher's rubber stamp
286 Fixed Intel build break caused by weinig's -W change in r15781
288 * WebView/WebView.m: wrapped cpu-dependent defs with defined() macro
290 2006-08-03 Maciej Stachowiak <mjs@apple.com>
294 - fixed problem that could cause assertion failures in Safari
296 * Plugins/WebBaseNetscapePluginView.m:
297 (-[WebBaseNetscapePluginView loadRequest:inTarget:withNotifyData:sendNotification:]): Don't
298 allow a plugin to start new loads once its document is no longer the one actively loading.
300 2006-08-03 Maciej Stachowiak <mjs@apple.com>
304 - remove use of WebDataSource from WebLoader and subclasses, just have them talk to the
305 WebFrameLoader instead.
307 For now this is done by forarding all the calls.
309 * Misc/WebIconLoader.m:
310 (-[WebIconLoader didFinishLoading]):
311 * Plugins/WebNetscapePluginStream.m:
312 (-[WebNetscapePluginStream initWithRequest:pluginPointer:notifyData:sendNotification:]):
313 (-[WebNetscapePluginStream start]):
314 (-[WebNetscapePlugInStreamLoader didFinishLoading]):
315 (-[WebNetscapePlugInStreamLoader didFailWithError:]):
316 (-[WebNetscapePlugInStreamLoader cancelWithError:]):
317 * WebCoreSupport/WebFrameBridge.m:
318 (-[WebFrameBridge startLoadingResource:withMethod:URL:customHeaders:]):
319 (-[WebFrameBridge startLoadingResource:withMethod:URL:customHeaders:postData:]):
320 * WebCoreSupport/WebSubresourceLoader.h:
321 * WebCoreSupport/WebSubresourceLoader.m:
322 (-[WebSubresourceLoader initWithLoader:frameLoader:]):
323 (+[WebSubresourceLoader startLoadingResource:withRequest:customHeaders:referrer:forFrameLoader:]):
324 (+[WebSubresourceLoader startLoadingResource:withMethod:URL:customHeaders:referrer:forFrameLoader:]):
325 (+[WebSubresourceLoader startLoadingResource:withMethod:URL:customHeaders:postData:referrer:forFrameLoader:]):
326 (-[WebSubresourceLoader receivedError:]):
327 (-[WebSubresourceLoader signalFinish]):
328 (-[WebSubresourceLoader didFailWithError:]):
329 (-[WebSubresourceLoader cancel]):
330 * WebKit.xcodeproj/project.pbxproj:
331 * WebView/WebDataSource.m:
332 (-[WebDataSource _updateLoading]):
333 (-[WebDataSource textEncodingName]):
334 (-[WebDataSource _mainReceivedBytesSoFar:complete:]):
335 * WebView/WebFrameLoader.h:
336 * WebView/WebFrameLoader.m:
337 (-[WebFrameLoader loadIconWithRequest:]):
338 (-[WebFrameLoader startLoadingMainResourceWithRequest:identifier:]):
339 (-[WebFrameLoader clearIconLoader]):
340 (-[WebFrameLoader commitProvisionalLoad]):
341 (-[WebFrameLoader activeDataSource]):
342 (-[WebFrameLoader _archivedSubresourceForURL:]):
343 (-[WebFrameLoader _defersCallbacks]):
344 (-[WebFrameLoader _identifierForInitialRequest:]):
345 (-[WebFrameLoader _willSendRequest:forResource:redirectResponse:]):
346 (-[WebFrameLoader _didReceiveAuthenticationChallenge:forResource:]):
347 (-[WebFrameLoader _didCancelAuthenticationChallenge:forResource:]):
348 (-[WebFrameLoader _didReceiveResponse:forResource:]):
349 (-[WebFrameLoader _didReceiveData:contentLength:forResource:]):
350 (-[WebFrameLoader _didFinishLoadingForResource:]):
351 (-[WebFrameLoader _didFailLoadingWithError:forResource:]):
352 (-[WebFrameLoader _privateBrowsingEnabled]):
353 (-[WebFrameLoader _addPlugInStreamLoader:]):
354 (-[WebFrameLoader _removePlugInStreamLoader:]):
355 (-[WebFrameLoader _finishedLoadingResource]):
356 (-[WebFrameLoader _receivedError:]):
357 (-[WebFrameLoader _addSubresourceLoader:]):
358 (-[WebFrameLoader _removeSubresourceLoader:]):
359 (-[WebFrameLoader _originalRequest]):
360 (-[WebFrameLoader webFrame]):
361 (-[WebFrameLoader _receivedMainResourceError:complete:]):
362 (-[WebFrameLoader initialRequest]):
363 (-[WebFrameLoader _receivedData:]):
364 (-[WebFrameLoader _setRequest:]):
365 (-[WebFrameLoader _downloadWithLoadingConnection:request:response:proxy:]):
366 (-[WebFrameLoader _handleFallbackContent]):
367 (-[WebFrameLoader _isStopping]):
368 (-[WebFrameLoader _decidePolicyForMIMEType:decisionListener:]):
369 (-[WebFrameLoader _setupForReplaceByMIMEType:]):
370 (-[WebFrameLoader _setResponse:]):
371 (-[WebFrameLoader _mainReceivedError:complete:]):
372 (-[WebFrameLoader _finishedLoading]):
373 (-[WebFrameLoader _mainReceivedBytesSoFar:complete:]):
374 (-[WebFrameLoader _iconLoaderReceivedPageIcon:]):
375 (-[WebFrameLoader _URL]):
376 * WebView/WebLoader.h:
377 * WebView/WebLoader.m:
378 (-[NSURLProtocol releaseResources]):
379 (-[NSURLProtocol loadWithRequest:]):
380 (-[NSURLProtocol setFrameLoader:]):
381 (-[NSURLProtocol frameLoader]):
382 (-[NSURLProtocol willSendRequest:redirectResponse:]):
383 (-[NSURLProtocol didReceiveAuthenticationChallenge:]):
384 (-[NSURLProtocol didCancelAuthenticationChallenge:]):
385 (-[NSURLProtocol didReceiveResponse:]):
386 (-[NSURLProtocol didReceiveData:lengthReceived:]):
387 (-[NSURLProtocol signalFinish]):
388 (-[NSURLProtocol didFailWithError:]):
389 (-[NSURLProtocol willCacheResponse:]):
390 (-[NSURLProtocol cancelWithError:]):
391 * WebView/WebMainResourceLoader.h:
392 * WebView/WebMainResourceLoader.m:
393 (-[WebMainResourceLoader initWithFrameLoader:]):
394 (-[WebMainResourceLoader receivedError:]):
395 (-[WebMainResourceLoader cancelWithError:]):
396 (-[WebMainResourceLoader _isPostOrRedirectAfterPost:redirectResponse:]):
397 (-[WebMainResourceLoader addData:]):
398 (-[WebMainResourceLoader willSendRequest:redirectResponse:]):
399 (-[WebMainResourceLoader continueAfterContentPolicy:response:]):
400 (-[WebMainResourceLoader continueAfterContentPolicy:]):
401 (-[WebMainResourceLoader checkContentPolicyForResponse:]):
402 (-[WebMainResourceLoader didReceiveResponse:]):
403 (-[WebMainResourceLoader didReceiveData:lengthReceived:]):
404 (-[WebMainResourceLoader didFinishLoading]):
405 (-[WebMainResourceLoader didFailWithError:]):
406 (-[WebMainResourceLoader loadWithRequestNow:]):
408 2006-08-03 Sam Weinig <sam.weinig@gmail.com>
412 - patch for http://bugzilla.opendarwin.org/show_bug.cgi?id=10176
413 Make WebCore compile with -Wundef
415 * Adds -Wundef flag to Xcode project
416 * Converts #ifs to #ifdef and #ifndefs where needed.
418 * Carbon/CarbonUtils.m:
419 * Carbon/CarbonWindowAdapter.m:
420 * Carbon/HIViewAdapter.m:
421 (+[NSView bindHIViewToNSView:nsView:]):
422 * Carbon/HIWebView.m:
423 (HIWebViewEventHandler):
424 * Misc/WebFileDatabase.m:
425 (UniqueFilePathForKey):
426 * Misc/WebNSWindowExtras.m:
427 (swizzleInstanceMethod):
428 * Misc/WebTypesInternal.h:
429 * Plugins/WebNetscapeDeprecatedFunctions.c:
430 * Plugins/WebNetscapeDeprecatedFunctions.h:
431 * Plugins/WebNetscapePluginPackage.h:
432 * Plugins/WebNetscapePluginPackage.m:
433 (-[WebNetscapePluginPackage unloadWithoutShutdown]):
434 (-[WebNetscapePluginPackage load]):
435 * WebKit.xcodeproj/project.pbxproj:
437 2006-08-03 Darin Adler <darin@apple.com>
439 Reviewed by Eric Seidel.
443 * WebView/WebFrame.m: (-[WebFramePrivate dealloc]): Release the frame loader.
445 2006-08-02 Timothy Hatcher <timothy@apple.com>
447 Rubber stamped by Maciej.
449 Adding back resultsWithXpathQuery, removed by Darin's earlier change.
450 This function is called from ObjC, but not used from JavaScript.
452 * WebInspector/webInspector/inspector.js:
454 2006-08-02 Timothy Hatcher <timothy@apple.com>
458 Bug 10200: [Drosera] Deadlock between Drosera and Safari while loading page
459 http://bugzilla.opendarwin.org/show_bug.cgi?id=10200
461 Prevent reentrancy in our debugger callbacks. This was causing a deadlock in Drosera because
462 suspendProcessIfPaused was being called during a DO call into Safari.
464 Preventing reentrancy also prevents scripts that Drosera injects and evaluates from showing
465 up in rare cases (such as a iframe loading about:blank). I thought this would prevent cases
466 where you call a function from the console and expect it to break on a breakpoint in them, but
467 this appears to never have worked even without this change. When that is figured out we can
468 reconsider a better solution to reentrancy. I have filed that as bug 10214.
470 I also removed the NSRunLoop runMode:beforeDate: calls since DO handles this for us since
471 we don't use "onway void" as the return type for the callbacks. Note: using onway void for
472 the listener callbacks causes bad synchronization issues and obscure crashes.
474 * DefaultDelegates/WebScriptDebugServer.m:
475 (-[WebScriptDebugServer webView:didLoadMainResourceForDataSource:]):
476 (-[WebScriptDebugServer webView:didParseSource:baseLineNumber:fromURL:sourceId:forWebFrame:]):
477 (-[WebScriptDebugServer webView:failedToParseSource:baseLineNumber:fromURL:withError:forWebFrame:]):
478 (-[WebScriptDebugServer webView:didEnterCallFrame:sourceId:line:forWebFrame:]):
479 (-[WebScriptDebugServer webView:willExecuteStatement:sourceId:line:forWebFrame:]):
480 (-[WebScriptDebugServer webView:willLeaveCallFrame:sourceId:line:forWebFrame:]):
481 (-[WebScriptDebugServer webView:exceptionWasRaised:sourceId:line:forWebFrame:]):
482 * DefaultDelegates/WebScriptDebugServerPrivate.h:
484 2006-08-02 Maciej Stachowiak <mjs@apple.com>
488 - fix assertion failure on layout tests by stopping plugins from loading at a clearly defined time
489 - add more assertions for safety
491 * WebView/WebDataSource.m:
492 (-[WebDataSourcePrivate dealloc]): Removed obsolete comment.
493 (-[WebDataSource _updateLoading]): Add assertion ensuring this method is only called
494 at a time when this data source is the one that might be loading for a frame.
495 (-[WebDataSource _stopLoading]): Stop loading plugins as a FIXME suggests we should.
496 * WebView/WebFrameLoader.m:
497 (-[WebFrameLoader isLoadingPlugIns]): New helper method.
498 (-[WebFrameLoader isLoading]): Consider plugin loads too - otherwise we won't stop them
501 2006-08-02 Adam Roben <aroben@apple.com>
505 - Rename TransferJob to ResourceLoader (this file was forgotten in an
506 earlier change by Maciej)
510 2006-08-01 Maciej Stachowiak <mjs@apple.com>
514 - Change things around so WebFrameLoader tracks the main and provisional data source,
515 as well as the frame load state, pulling much code out of WebFrame along the way.
517 The most significant aspects of this change are:
519 - management of WebDataSources and WebFrameState was moved into WebFrameLoader
520 - there is now just one WebFrameLoader shared between the primary and provisional data source
522 * WebKit.xcodeproj/project.pbxproj:
523 * WebView/WebDataSource.m:
524 (-[WebDataSourcePrivate dealloc]):
525 (-[WebDataSource _updateLoading]):
526 (-[WebDataSource _loadIcon]):
527 (-[WebDataSource _setPrimaryLoadComplete:]):
528 (-[WebDataSource _stopLoading]):
529 (-[WebDataSource _startLoading]):
530 (-[WebDataSource _addSubresourceLoader:]):
531 (-[WebDataSource _removeSubresourceLoader:]):
532 (-[WebDataSource _addPlugInStreamLoader:]):
533 (-[WebDataSource _removePlugInStreamLoader:]):
534 (-[WebDataSource _defersCallbacksChanged]):
535 (-[WebDataSource _stopLoadingWithError:]):
536 (-[WebDataSource _revertToProvisionalState]):
537 (-[WebDataSource _setupForReplaceByMIMEType:]):
538 (-[WebDataSource initWithRequest:]):
539 (-[WebDataSource data]):
540 (-[WebDataSource isLoading]):
541 * WebView/WebFrame.m:
542 (-[WebFramePrivate init]):
543 (-[WebFramePrivate dealloc]):
544 (-[WebFrame _closeOldDataSources]):
545 (-[WebFrame _detachFromParent]):
546 (-[WebFrame _makeDocumentView]):
547 (-[WebFrame _receivedMainResourceError:]):
548 (-[WebFrame _transitionToCommitted:]):
549 (+[WebFrame _timeOfLastCompletedLoad]):
550 (-[WebFrame _checkLoadCompleteForThisFrame]):
551 (-[WebFrame _loadItem:withLoadType:]):
552 (-[WebFrame _continueAfterWillSubmitForm:]):
553 (-[WebFrame _continueLoadRequestAfterNavigationPolicy:formState:]):
554 (-[WebFrame _initWithWebFrameView:webView:bridge:]):
555 (-[WebFrame _frameLoader]):
556 (-[WebFrame _provisionalLoadStarted]):
557 (-[WebFrame _prepareForDataSourceReplacement]):
558 (-[WebFrame _frameLoadCompleted]):
559 (-[WebFrame provisionalDataSource]):
560 (-[WebFrame dataSource]):
561 (-[WebFrame stopLoading]):
562 * WebView/WebFrameInternal.h:
563 * WebView/WebFrameLoader.h:
564 * WebView/WebFrameLoader.m:
565 (-[WebFrameLoader initWithWebFrame:]):
566 (-[WebFrameLoader dealloc]):
567 (-[WebFrameLoader dataSource]):
568 (-[WebFrameLoader _setDataSource:]):
569 (-[WebFrameLoader clearDataSource]):
570 (-[WebFrameLoader provisionalDataSource]):
571 (-[WebFrameLoader _setProvisionalDataSource:]):
572 (-[WebFrameLoader _clearProvisionalDataSource]):
573 (-[WebFrameLoader state]):
574 (+[WebFrameLoader timeOfLastCompletedLoad]):
575 (-[WebFrameLoader _setState:]):
576 (-[WebFrameLoader clearProvisionalLoad]):
577 (-[WebFrameLoader markLoadComplete]):
578 (-[WebFrameLoader commitProvisionalLoad]):
579 (-[WebFrameLoader stopLoading]):
580 (-[WebFrameLoader startLoading]):
581 (-[WebFrameLoader startProvisionalLoad:]):
582 (-[WebFrameLoader setupForReplace]):
583 * WebView/WebFramePrivate.h:
585 2006-08-01 Tim Omernick <timo@apple.com>
587 Reviewed by John Sullivan.
589 <rdar://problem/4480737> Flash crashes after it replaces itself via a document.write()
591 I kind of hate to do this, but this is the best way to work around buggy plug-ins like Flash that assume that
592 NPP_Destroy() cannot be called while the browser is calling one of its other plug-in functions. The classic
593 situation is a plug-in that replaces itself via an NPN_Invoke() that executes a document.write().
595 * Plugins/WebBaseNetscapePluginView.h:
596 * Plugins/WebBaseNetscapePluginView.m:
597 (-[WebBaseNetscapePluginView sendEvent:]):
598 Call -willCallPlugInFunction and -didCallPlugInFunction around calls to the NPP_* functions.
599 (-[WebBaseNetscapePluginView setWindowIfNecessary]):
601 (-[WebBaseNetscapePluginView start]):
602 It should not be possible to start a plug-in instance while we are calling into it (one of those chicken/egg
603 problems). Added a sanity-checking assertion.
604 (-[WebBaseNetscapePluginView stop]):
605 If we're already calling a plug-in function, do not call NPP_Destroy(). The plug-in function we are calling
606 may assume that its instance->pdata, or other memory freed by NPP_Destroy(), is valid and unchanged until said
607 plugin-function returns.
608 (-[WebBaseNetscapePluginView pluginScriptableObject]):
609 Call -willCallPlugInFunction and -didCallPlugInFunction around calls to the NPP_* functions.
610 (-[WebBaseNetscapePluginView willCallPlugInFunction]):
611 Increment plug-in function call depth.
612 (-[WebBaseNetscapePluginView didCallPlugInFunction]):
613 Decrement plug-in function call depth. Stop if we're supposed to stop.
614 (-[WebBaseNetscapePluginView evaluateJavaScriptPluginRequest:]):
615 Call -willCallPlugInFunction and -didCallPlugInFunction around calls to the NPP_* functions.
616 (-[WebBaseNetscapePluginView webFrame:didFinishLoadWithReason:]):
618 (-[WebBaseNetscapePluginView _printedPluginBitmap]):
621 * Plugins/WebBaseNetscapePluginStream.m:
622 (-[WebBaseNetscapePluginStream startStreamResponseURL:expectedContentLength:lastModifiedDate:MIMEType:]):
623 Call -willCallPlugInFunction and -didCallPlugInFunction around calls to the NPP_* functions.
624 (-[WebBaseNetscapePluginStream _destroyStream]):
626 (-[WebBaseNetscapePluginStream _deliverData]):
629 2006-08-01 Maciej Stachowiak <mjs@apple.com>
631 - fix build after last change
633 * WebView/WebFrame.m:
634 (-[WebFrame _checkLoadCompleteForThisFrame]):
636 2006-08-01 Maciej Stachowiak <mjs@apple.com>
640 - revert part of my last fix that broke the Safari bookmarks view
642 * WebView/WebFrame.m:
643 (-[WebFrame _checkLoadCompleteForThisFrame]): still send layout message for non-HTML views
645 2006-08-01 Tim Omernick <timo@apple.com>
649 Fixed an assertion failure I ran into while debugging <rdar://problem/4652683>.
651 * Plugins/WebNetscapePluginEmbeddedView.m:
652 (-[WebNetscapePluginEmbeddedView redeliverStream]):
653 Don't clear the "instance" ivar here. This code was refactored here from the old WebNetscapePluginRepresentation,
654 which also had an "instance" ivar. It is never appropriate to clear a plug-in view's instance. That is done when
655 the plug-in is destroyed.
657 2006-08-01 Maciej Stachowiak <mjs@apple.com>
661 - some refactoring in preparation for moving more stuff to WebFrameLoader.
663 * WebView/WebFrame.m:
664 (-[WebFrame _clearDataSource]):
665 (-[WebFrame _detachFromParent]):
666 (-[WebFrame _commitProvisionalLoad]):
667 (-[WebFrame _transitionToCommitted:]):
668 (-[WebFrame _clearProvisionalLoad]):
669 (-[WebFrame _markLoadComplete]):
670 (-[WebFrame _checkLoadCompleteForThisFrame]):
671 (-[WebFrame _startProvisionalLoad:]):
672 (-[WebFrame _continueLoadRequestAfterNavigationPolicy:formState:]):
673 (-[WebFrame stopLoading]):
675 2006-07-31 Maciej Stachowiak <mjs@apple.com>
677 Reviewed by Tim Hatcher.
679 - renamed TransferJob to ResourceLoader in WebCore
682 (WebFrame::loadDataSource):
683 (WebFrame::receivedRedirect):
684 (WebFrame::receivedResponse):
685 (WebFrame::receivedData):
686 (WebFrame::receivedAllData):
687 (WebFrame::setStatusText):
690 2006-07-31 Darin Adler <darin@apple.com>
694 - omit the margin and padding boxes for display types where they are ignored
695 - use CSS instead of properties for table spacing and padding as suggested by Tim H.
697 * WebInspector/webInspector/inspector.css: Added rules for spacing and padding.
698 Added rules that hide the margin and padding boxes (borders and all but the center cell)
699 when the hide attribute is present.
700 * WebInspector/webInspector/inspector.html: Added classes for the rules above.
701 Removed cellpadding and cellspacing attributes.
702 * WebInspector/webInspector/inspector.js: Added code to hide/show the margin and
703 padding boxes based on the display type.
705 2006-07-31 Duncan Wilcox <duncan@mclink.it>
709 Fixes <http://bugzilla.opendarwin.org/show_bug.cgi?id=10159>
710 "REGRESSION: delegate returning no menu elements crashes webkit"
712 No automated test, because there's no way to programmatically open a context menu,
713 no manual test because there's no way to customize the context menu delegate.
716 (-[WebView _menuForElement:defaultItems:]): Make sure the context menu returned
717 some menu items before accessing the first one.
719 2006-07-31 Timothy Hatcher <timothy@apple.com>
723 <rdar://problem/4658194> REGRESSION: "Search in Google"
724 and "Search in Spotlight" fail to work on text selected in a frame
726 Use selectedFrame to get the frame with the text selection.
729 (-[WebView _searchWithGoogleFromMenu:]):
730 (-[WebView _searchWithSpotlightFromMenu:]):
732 2006-07-31 Darin Adler <darin@apple.com>
734 Reviewed by Tim Hatcher.
736 - http://bugzilla.opendarwin.org/show_bug.cgi?id=10168
737 add a first cut at a Metrics pane to the inspector
739 * WebInspector/webInspector/inspector.css: Add styles for the new metrics pane.
740 * WebInspector/webInspector/inspector.html: Add the new metrics pane, starting with
741 the table to show the box model.
742 * WebInspector/webInspector/inspector.js: Add the new metrics pane. Add back some
743 "title" attributes so we have more tooltips. Removed the optional parameter to
746 2006-07-31 Anders Carlsson <acarlsson@apple.com>
750 * Plugins/WebPluginDatabase.m:
751 (-[WebPluginDatabase refresh]):
752 Create a mutable set instead of a mutable array.
754 2006-07-30 Darin Adler <darin@apple.com>
756 Reviewed by Tim Hatcher.
758 * WebInspector/webInspector/inspector.js: Fix bug where a null property value
759 leads to an empty style pane.
761 2006-07-30 Darin Adler <darin@apple.com>
763 Reviewed by Tim Hatcher.
765 - http://bugzilla.opendarwin.org/show_bug.cgi?id=10163
766 some improvements for the inspector
768 * WebInspector/WebInspector.m:
769 (+[WebInspector sharedWebInspector:]): Fixed bug that could cause the inspector
770 to be garbage collected if used in an application with GC enabled.
771 (-[WebInspector dealloc]): Removed a call to a non-existent close method.
772 (-[WebInspector window]): Added a custom WebPreferences object and called
773 setPrivateBrowsingEnabled:YES so the inspector won't appear in the history menu.
774 Also call setProhibitsMainFrameScrolling:YES to try to get rid of trouble where
775 the inspector scrolls when dragging.
777 * WebInspector/webInspector/inspector.css: Added style for the new color swatch,
778 and JavaScript properties. More of the style should be shared between the panes,
779 but this should be OK for now.
781 * WebInspector/webInspector/inspector.html: Added a first cut at a JavaScript
782 properties pane. Needs work, but better than nothing.
784 * WebInspector/webInspector/inspector.js: Lots of improvements:
785 - Omit "typical" property values from computed style display, making it much shorter.
786 - Use the words "black", "white", and "transparent" when appropriate for color values.
787 - Refactored the loaded() function to get rid of repetitive scrollbar setup.
788 - Added a new scrollarea for the JavaScript properties pane.
789 - Simplified refreshScrollbars() -- we now refresh all scrollbars every time, which does no harm.
790 - Removed unused resultsWithXpathQuery().
791 - Use [] instead of "new Array()" and {} instead of "new Object()".
792 - Removed unused xpathForNode().
793 - Changed style pane to display the style for a text node's parent instead of saying
794 it can't display the style for text.
795 - Fixed regression I caused a while back by checking the length of a computed style
796 and not trying to display anything if its length is 0. Before this change and the
797 corresponding change in WebCore, we'd see a complete list of all styles with the
798 empty string as the value for each one.
799 - Changed the name of the computedStyle flag on the style rules array to isComputedStyle
800 to make it easier to understand it's a boolean.
801 - Fixed an error in the code that does !important scanning where it was trying to
802 do a special case for computed style, but was checking the computed style flag on
804 - Added populateStyleListItem() function to factor out things in common between the
805 items in the top level list and the expanded tree for shorthand properties.
806 - Added code to make a color swatch next to the textual representation for any
807 property that contains a color.
808 - Implemented a first cut at a simple JavaScript properties pane.
810 2006-07-29 Darin Adler <darin@apple.com>
812 - Removed tabs from these source files that still had them.
813 We don't use them; that way source files look fine in editors
814 that have tabs set to 8 spaces or to 4 spaces.
815 - Removed allow-tabs Subversion property from the files too.
817 * DefaultDelegates/WebDefaultPolicyDelegate.m:
818 * History/WebHistory.m:
819 * Misc/WebDownload.m:
820 * Misc/WebIconDatabase.m:
821 * Misc/WebKitErrors.m:
822 * Misc/WebKitLogging.m:
823 * Misc/WebNSDataExtras.m:
824 * Misc/WebNSFileManagerExtras.m:
825 * Panels/WebPanelAuthenticationHandler.m:
826 * Plugins/WebBaseNetscapePluginView.m:
827 * Plugins/npfunctions.h:
828 * WebCoreSupport/WebSubresourceLoader.m:
829 * WebView/WebMainResourceLoader.m:
833 2006-07-29 Sam Weinig <sam.weinig@gmail.com>
837 - patch for http://bugzilla.opendarwin.org/show_bug.cgi?id=10080
838 Adopt pedantic changes from the Unity project to improve
839 cross-compiler compatibility
842 * Adding missing newline to the end of the file.
843 * Turning on gcc warning for missing newline at the end of a source file
844 (GCC_WARN_ABOUT_MISSING_NEWLINE in Xcode, -Wnewline in gcc).
846 * WebKit.xcodeproj/project.pbxproj:
847 * WebView/WebResourcePrivate.h:
849 2006-07-29 Mitz Pettel <opendarwin.org@mitzpettel.com>
851 Reviewed by John Sullivan.
853 - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9984
854 ASSERTION FAILURE: _private->mouseDownEvent != nil
855 (WebKit/WebView/WebHTMLView.m:4863 -[WebHTMLView(WebInternal) _delegateDragSourceActionMask])
857 * WebView/WebHTMLView.m:
858 (-[WebHTMLView _setMouseDownEvent:]): Moved into the WebHTMLViewFileInternal category and changed
860 (-[WebHTMLView _startDraggingImage:at:operation:event:sourceIsDHTML:DHTMLWroteData:]):
861 Copy the hit HTMLView's mouse down event to the top HTMLView.
862 (-[WebHTMLView acceptsFirstMouse:]): Added a call to _setMouseDownEvent:nil before returning.
863 (-[WebHTMLView shouldDelayWindowOrderingForEvent:]): Added a call to _setMouseDownEvent:nil
865 (-[WebHTMLView mouseUp:]): Added a call to _setMouseDownEvent:nil to clear the event set in
866 mouseDown: (and used during dragging).
867 (-[WebHTMLView _delegateDragSourceActionMask]): Copy the hit HTMLView's mouse down event to
870 2006-07-28 Timothy Hatcher <timothy@apple.com>
874 <rdar://problem/4657473> REGRESSION: Spell check not available from contextual menu in Mail
876 The context menu code should be checking isContentEditable
877 on DOMNode not just DOMElement. This is needed because DOMText
878 will be the node class of any text that is clicked.
880 * DefaultDelegates/WebDefaultContextMenuDelegate.m:
881 (-[WebDefaultUIDelegate webView:contextMenuItemsForElement:defaultMenuItems:]):
883 2006-07-25 Geoffrey Garen <ggaren@apple.com>
885 Reviewed by Maciej, inspired by John.
887 - Fixed <rdar://problem/4651931> 1% REGRESSION on iBench HTML due to
888 repeated requests for non-existent favicon
890 An optimization to avoid serializing favicon data for missing icons had stomped an
891 optimization to avoid GETing a missing favicon more than once. The solution
892 is a happy marriage of optimizations, ensuring that we *retain* the missing
893 favicon's "i am missing" data without posting a notification or saving it to disk.
895 * Misc/WebIconDatabase.m:
896 (-[WebIconDatabase _setIconURL:forURL:]):
898 2006-07-25 David Harrison <harrison@apple.com>
900 Reviewed by timo and Darin.
902 <rdar://problem/4618584> "Paste and Match Style" is not working in Mail (add SPI)
904 * WebKit.xcodeproj/project.pbxproj:
906 (-[WebView replaceSelectionWithNode:]):
907 (-[WebView _replaceSelectionWithNode:matchStyle:]):
908 * WebView/WebViewPrivate.h:
909 (-[WebView _replaceSelectionWithNode:matchStyle::]):
910 New SPI that is same as replaceSelectionWithNode: with added parameter whether to match existing style.
912 2006-07-24 Darin Adler <darin@apple.com>
914 Reviewed by Adele and Justin.
916 - update for change to require context when creating fragments from text
917 (needed to handle whitespace properly)
919 * WebView/WebHTMLView.m:
920 (-[WebHTMLView _documentFragmentFromPasteboard:inContext:allowPlainText:chosePlainText:]):
921 Added context parameter, pass through to bridge.
922 (-[WebHTMLView _pasteWithPasteboard:allowPlainText:]): Pass selection range as context
923 when calling above method.
924 (-[WebHTMLView concludeDragForDraggingInfo:actionMask:]): Pass drag caret as context when
925 calling above method.
927 2006-07-24 Maciej Stachowiak <mjs@apple.com>
931 - fix <rdar://problem/4609195> Help Viewer loads empty window (not getting didFailLoadingWithError: callback)
932 (without re-introducing http://bugzilla.opendarwin.org/show_bug.cgi?id=10062 )
934 * WebView/WebLoader.h:
935 * WebView/WebMainResourceLoader.m:
936 (-[WebMainResourceLoader receivedError:]): Copy in some code from the base class to do it in the proper
937 order, surrounding the call to [ds _receivedMainResourceError:error complete:YES].
939 2006-07-24 Anders Carlsson <acarlsson@apple.com>
943 * Misc/WebIconDatabase.m:
944 (-[WebIconDatabase removeAllIcons]):
945 Make an array of the keys and iterate through it to avoid modifying the
946 dictionary while enumerating it.
948 2006-07-24 Timothy Hatcher <timothy@apple.com>
950 Reviewed by John and Darin.
952 <rdar://problem/4634290> Cannot selectively install a custom
953 scroller that differs from the default Aqua frame size.
955 Adds two new private methods to WebFrameView that allows
956 an application to set a custom scroll view class. This is needed
957 if the application wants to install a custom scroller that is wider
958 than the typical scroller, because NSScrollView does the content
959 rect calculations in a class method (ignoring custom scrollers.)
960 The _setScrollViewClass method requires the class to be a subclass
961 of WebDynamicScrollBarView, or nil can be passed to reset to the default class.
962 A new scroll view of the specified class will then replace the previous
963 one without the need to reload content of the frame.
965 * WebView/WebFrameView.m:
966 (-[WebFrameView _customScrollViewClass]):
967 (-[WebFrameView _setCustomScrollViewClass:]):
968 * WebView/WebFrameViewPrivate.h:
970 2006-07-24 Alexey Proskuryakov <ap@nypop.com>
974 Fix http://bugzilla.opendarwin.org/show_bug.cgi?id=10009
975 REGRESSION: Schubert-IT PDF Plug-in not working for full page (works in frames)
978 (+[WebView _viewClass:andRepresentationClass:forMIMEType:]): If we've got a type supported by WebPDFView,
979 make sure to initialize the plugin database, in case a plugin wants to handle it.
981 2006-07-23 Mark Rowe <opendarwin.org@bdash.net.nz>
985 Bug 9686: [Drosera] Need the ability to break into Drosera on Javascript exceptions
986 http://bugzilla.opendarwin.org/show_bug.cgi?id=9686
988 WebKit portion of the fix.
990 * DefaultDelegates/WebDefaultScriptDebugDelegate.m:
991 (-[WebDefaultScriptDebugDelegate webView:exceptionWasRaised:sourceId:line:forWebFrame:]):
992 * DefaultDelegates/WebScriptDebugServer.h:
993 * DefaultDelegates/WebScriptDebugServer.m:
994 (-[WebScriptDebugServer webView:exceptionWasRaised:sourceId:line:forWebFrame:]): Notify
995 listeners that an exception has been raised.
996 * WebView/WebScriptDebugDelegate.h:
997 * WebView/WebScriptDebugDelegate.m:
998 (-[WebScriptCallFrame exceptionRaised:sourceId:line:]): Dispatch through to delegate and
999 WebScriptDebugServer.
1001 2006-07-23 Adele Peterson <adele@apple.com>
1005 - Fix for <rdar://problem/4646276> CrashTracer: 7 crashes in Safari at com.apple.WebCore: WebCore::RenderTableSection::paint + 155
1007 * WebView/WebHTMLView.m: (-[WebHTMLView _web_layoutIfNeededRecursive:testDirtyRect:]):
1008 needsDisplay was returning NO even though the view has a dirty rect (see <rdar://problem/4647062>). Since we know about
1009 the dirty rect, we don't actually need to check needsDisplay.
1011 2006-07-22 Timothy Hatcher <timothy@apple.com>
1015 Bug 10062: REGRESSION: dom/xhtml/level2/html/HTMLIFrameElement11.xhtml asserts/crashes
1016 http://bugzilla.opendarwin.org/show_bug.cgi?id=10062
1018 2006-07-21 Timothy Hatcher <timothy@apple.com>
1022 <rdar://problem/4609195> Help Viewer loads empty window
1023 (not getting didFailLoadingWithError: callback)
1025 Call super's didFailWithError before _receivedMainResourceError
1026 because _receivedMainResourceError will cause the datasource's
1027 frame to be set to nil before the didFailLoadingWithError delegate
1028 callback is sent. (This order is needed now that WebDataSource does
1029 not hold on to the WebView; it uses the WebFrame to get to the WebView.
1030 If the WebFrame is nil we can't get to the WebView's resource load delegate.)
1032 * WebView/WebMainResourceLoader.m:
1033 (-[WebMainResourceLoader receivedError:]):
1036 2006-07-22 Timothy Hatcher <timothy@apple.com>
1040 <rdar://problem/4646318> REGRESSION: Ctrl-clicking on a selection containing a word doesn't display a complete contextual menu
1042 Show the editing context menu if the WebView is editible.
1043 The original change only checked if the DOM element was editable,
1044 and isContentEditable returns NO if entire WebView is editable.
1046 * DefaultDelegates/WebDefaultContextMenuDelegate.m:
1047 (-[WebDefaultUIDelegate webView:contextMenuItemsForElement:defaultMenuItems:]):
1049 2006-07-21 Timothy Hatcher <timothy@apple.com>
1053 <rdar://problem/4609195> Help Viewer loads empty window
1054 (not getting didFailLoadingWithError: callback)
1056 Call super's didFailWithError before _receivedMainResourceError
1057 because _receivedMainResourceError will cause the datasource's
1058 frame to be set to nil before the didFailLoadingWithError delegate
1059 callback is sent. (This order is needed now that WebDataSource does
1060 not hold on to the WebView; it uses the WebFrame to get to the WebView.
1061 If the WebFrame is nil we can't get to the WebView's resource load delegate.)
1063 * WebView/WebMainResourceLoader.m:
1064 (-[WebMainResourceLoader receivedError:]):
1066 === Safari-521.20 ===
1068 2006-07-21 Timothy Hatcher <timothy@apple.com>
1072 <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)
1074 Do not use _isEditable call since that only checks if the current
1075 selection or frame is editible. We now check if the currently clicked element
1076 is a content editible area, a textarea, an isindex or an input element that
1077 return YES to _isTextField.
1079 * DefaultDelegates/WebDefaultContextMenuDelegate.m:
1080 (-[WebDefaultUIDelegate webView:contextMenuItemsForElement:defaultMenuItems:]):
1082 2006-07-20 John Sullivan <sullivan@apple.com>
1086 - WebKit part of fix for:
1087 <rdar://problem/4557386> REGRESSION (419.3-521.19): repro Safari world leak involving
1088 closing tabs after clicking in a web page
1090 * WebCoreSupport/WebFrameBridge.m:
1091 (-[WebFrameBridge textViewWasFirstResponderAtMouseDownTime:]):
1092 renamed to be more specific (formerly wasFirstResponderAtMouseDownTime:)
1094 * WebView/WebHTMLViewInternal.h:
1095 * WebView/WebHTMLView.m:
1096 (-[WebTextCompleteController dealloc]):
1097 updated for name change
1098 (-[NSArray _setMouseDownEvent:]):
1099 Now only retains the first responder if it's a textView, since that's the only case that the only client
1100 actually cares about. This avoids a reference cycle caused by retaining self. This is the only substantive
1101 part of the patch; all the rest is just renaming for clarity, and comments.
1102 (-[NSArray mouseDown:]):
1103 updated for name change
1104 (-[WebHTMLView _textViewWasFirstResponderAtMouseDownTime:]):
1105 renamed to be more specific (formerly _wasFirstResponderAtMouseDownTime:)
1107 2006-07-19 Tim Omernick <timo@apple.com>
1111 <rdar://problem/4523432> safari crashed right after disabling "block pop up windows" (or other WebPreferences changes)
1113 * Plugins/WebBaseNetscapePluginView.m:
1114 (-[WebBaseNetscapePluginView viewWillMoveToSuperview:]):
1115 Stop the plug-in when it is removed from its superview. It is not sufficient to do this in -viewWillMoveToWindow:nil, because
1116 the WebView might still has a hostWindow at that point, which prevents the plug-in from being destroyed.
1117 There is no need to start the plug-in when moving into a superview. -viewDidMoveToWindow takes care of that.
1119 === Safari-521.19 ===
1121 2006-07-17 Tim Omernick <timo@apple.com>
1125 <rdar://problem/4612079> need a way to prevent pages from scrolling to reveal elements that are focused
1128 * WebView/WebViewPrivate.h:
1129 * WebView/WebView.m:
1130 (-[WebView setProhibitsMainFrameScrolling:]):
1131 New method. Prohibits scrolling in the WebView's main frame. Used to "lock" a WebView to a specific
1134 2006-07-17 Timothy Hatcher <timothy@apple.com>
1138 <rdar://problem/4635311> REGRESSION: WebKit should call windowScriptObjectAvailable before attaching the script debugger
1140 * WebCoreSupport/WebFrameBridge.m:
1141 (-[WebFrameBridge windowObjectCleared]):
1143 2006-07-17 Timothy Hatcher <timothy@apple.com>
1147 <rdar://problem/4634874> WebScriptObject and WebUndefined are no longer defined by WebKit
1149 Copy WebScriptObject.h from WebCore's private headers, not JavaScriptCore.
1151 * WebKit.xcodeproj/project.pbxproj:
1153 2006-07-17 John Sullivan <sullivan@apple.com>
1155 Reviewed by Tim Omernick.
1157 - fixed <rdar://problem/4604366> Orange Find highlight displays text in wrong size on PDF pages
1158 if they're not at "actual size"
1160 To match WebHTMLView, I made the methods that return attributed strings take the view's scale
1161 factor into account.
1163 * WebView/WebPDFView.m:
1164 (-[WebPDFView _scaledAttributedString:]):
1165 new helper method, takes an attributed string and returns one that's scaled by the view's
1166 current scale factor
1167 (-[WebPDFView attributedString]):
1168 pass result through _scaledAttributedString:
1169 (-[WebPDFView selectedAttributedString]):
1172 2006-07-17 Justin Garcia <justin.garcia@apple.com>
1176 Rolled the first fix for:
1177 <http://bugzilla.opendarwin.org/show_bug.cgi?id=9642>
1178 GMail Editor: Operations that use drop down menus blow away the selection
1179 back in and removed the call to _clearSelectionInOtherFrames from
1180 -[WebHTMLView becomeFirstResponder] to fix the bug.
1182 * WebView/WebHTMLView.m:
1183 (-[NSArray maintainsInactiveSelection]):
1184 (-[NSArray becomeFirstResponder]):
1185 * WebView/WebView.m:
1186 (-[WebView maintainsInactiveSelection]):
1188 2006-07-15 Darin Adler <darin@apple.com>
1190 Reviewed by John Sullivan.
1192 - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9928
1193 REGRESSION: Text Encoding menu inoperative (after gcc protocol build fix)
1195 * WebView/WebHTMLView.m:
1196 (-[WebHTMLView _documentRange]): Moved into WebHTMLViewFileInternal category.
1197 (-[WebHTMLView selectionRect]): Moved into WebDocumentPrivateProtocols category.
1198 (-[WebHTMLView selectionView]): Ditto.
1199 (-[WebHTMLView selectionImageForcingWhiteText:]): Ditto.
1200 (-[WebHTMLView selectionImageRect]): Ditto.
1201 (-[WebHTMLView pasteboardTypesForSelection]): Ditto.
1202 (-[WebHTMLView selectAll]): Ditto.
1203 (-[WebHTMLView deselectAll]): Ditto.
1204 (-[WebHTMLView string]): Ditto.
1205 (-[WebHTMLView _attributeStringFromDOMRange:]): Ditto.
1206 (-[WebHTMLView attributedString]): Ditto.
1207 (-[WebHTMLView selectedString]): Ditto.
1208 (-[WebHTMLView selectedAttributedString]): Ditto.
1209 (-[WebHTMLView supportsTextEncoding]): Ditto.
1210 (-[WebHTMLView _canProcessDragWithDraggingInfo:]): Moved into WebDocumentInternalProtocols.
1211 (-[WebHTMLView _isMoveDrag]): Ditto.
1212 (-[WebHTMLView _isNSColorDrag:]): Ditto.
1213 (-[WebHTMLView draggingUpdatedWithDraggingInfo:actionMask:]): Ditto.
1214 (-[WebHTMLView draggingCancelledWithDraggingInfo:]): Ditto.
1215 (-[WebHTMLView concludeDragForDraggingInfo:actionMask:]): Ditto.
1216 (-[WebHTMLView elementAtPoint:]): Ditto.
1217 (-[WebHTMLView elementAtPoint:allowShadowContent:]): Ditto.
1219 * WebKit.xcodeproj/project.pbxproj: Let Xcode 2.3 do its thing.
1221 === Safari-521.17 ===
1223 2006-07-14 Timothy Hatcher <timothy@apple.com>
1225 Rolling out this fix from r15358 since it isn't resolved.
1227 2006-07-11 Justin Garcia <justin.garcia@apple.com>
1229 Reviewed by levi & thatcher
1231 <http://bugzilla.opendarwin.org/show_bug.cgi?id=9642>
1232 GMail Editor: Operations that use drop down menus blow away the selection
1234 * WebView/WebHTMLView.m:
1235 (-[WebHTMLView maintainsInactiveSelection]): Maintain an inactive selection
1236 when resigning as first responder if the selection is editable
1237 or if the WebView tells us to.
1238 * WebView/WebView.m:
1239 (-[WebView maintainsInactiveSelection]): Just because a WebView is
1240 editable doesn't mean selections inside subframes will be. Return
1243 2006-07-14 Timothy Hatcher <timothy@apple.com>
1245 <rdar://problem/4623957> SWB: gcc-5412 (new?) objc warning causes WebCore project failure
1247 Build fix with the new GCC. Removes forward declarations of protocols.
1249 * Misc/WebSearchableTextView.h:
1250 * WebCoreSupport/WebSubresourceLoader.h:
1251 * WebKit.xcodeproj/project.pbxproj:
1252 * WebView/WebDocumentInternal.h:
1253 * WebView/WebDocumentPrivate.h:
1254 * WebView/WebHTMLView.h:
1255 * WebView/WebPDFView.h:
1256 * WebView/WebScriptDebugDelegatePrivate.h:
1258 2006-06-28 Darin Adler <darin@apple.com>
1262 - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9625
1263 <rdar://problem/4604703>
1264 REGRESSION: Focus not removed from password field after ctrl-click in text field
1266 * WebView/WebHTMLView.m: (-[WebHTMLView menuForEvent:]): Set handlingMouseDownEvent to
1267 YES while calling sendContextMenuEvent: on the bridge.
1269 2006-07-14 Timothy Hatcher <timothy@apple.com>
1273 Moved JavaScriptCore to be a public framework.
1275 * WebKit.xcodeproj/project.pbxproj:
1277 2006-07-13 Mitz Pettel <opendarwin.org@mitzpettel.com>
1281 - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9795
1282 REGRESSION: Crash in [WebHTMLView(WebPrivate)
1283 _updateMouseoverWithEvent:]
1284 and http://bugzilla.opendarwin.org/show_bug.cgi?id=9850
1285 REGRESSION: Assertion failure (SHOULD NEVER BE REACHED) in -
1286 [WebHTMLView(WebPrivate) removeTrackingRect:]
1288 * WebView/WebHTMLView.m:
1289 (-[WebHTMLView _updateMouseoverWithEvent:]): Return immediately if
1290 the view has already been closed.
1292 2006-07-13 David Harrison <harrison@apple.com>
1294 Reviewed by Justin and Levi.
1296 <rdar://problem/4620743> REGRESSION: Option-Delete doesn't delete words during typing
1299 editing/deleting/delete-by-word-001.html
1300 editing/deleting/delete-by-word-002.html
1302 * WebView/WebHTMLView.m:
1303 (-[WebHTMLView _deleteRange:killRing:prepend:smartDeleteOK:deletionAction:granularity:]):
1305 2006-07-13 Timothy Hatcher <timothy@apple.com>
1307 Rolling out this earlier change (r15378) now that it is fixed on AGL's end.
1308 Fixes <rdar://problem/4624865> Restore 64-bit OpenGL plug-in support once AGL is 64-bit
1310 <rdar://problem/4624858> AGL isn't 64-bit yet; temporarily remove it from WebKit 64-bit build
1312 * Plugins/WebBaseNetscapePluginView.h:
1313 * Plugins/WebBaseNetscapePluginView.m:
1315 2006-07-13 Timothy Hatcher <timothy@apple.com>
1319 <rdar://problem/4616920> REGRESSION: tabbing in mail moves focus
1320 to next control instead of inserting a tab space.
1322 Change editible WebView's tabKeyCyclesThroughElements to NO only
1323 if the setTabKeyCyclesThroughElements SPI wasn't called.
1325 * WebView/WebView.m:
1326 (-[WebView setEditable:]):
1328 2006-07-12 Anders Carlsson <acarlsson@apple.com>
1332 http://bugzilla.opendarwin.org/show_bug.cgi?id=9624
1333 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
1335 * DefaultDelegates/WebDefaultContextMenuDelegate.m:
1336 (-[WebDefaultUIDelegate editingContextMenuItemsForElement:defaultMenuItems:]):
1337 Don't create Dictionary, Spotlight or Google lookup items if there's no selection.
1339 2006-07-12 Mark Rowe <opendarwin.org@bdash.net.nz>
1341 Reviewed by Timothy.
1343 http://bugzilla.opendarwin.org/show_bug.cgi?id=9868
1344 Applications shown in Drosera's "Attach" window remain after exit
1346 * DefaultDelegates/WebScriptDebugServer.m:
1347 (-[WebScriptDebugServer init]): Register for NSApplicationWillTerminateNotification so we will
1348 know when the application is being exited.
1349 (-[WebScriptDebugServer dealloc]): Unregister notification before we are deallocated.
1350 (-[WebScriptDebugServer applicationTerminating:]): Inform anyone listening that we are going away.
1352 2006-07-12 Tim Omernick <timo@apple.com>
1354 Reviewed by Tim Hatcher.
1356 <rdar://problem/4624858> AGL isn't 64-bit yet; temporarily remove it from WebKit 64-bit build
1358 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
1361 * Plugins/WebBaseNetscapePluginView.h:
1362 * Plugins/WebBaseNetscapePluginView.m:
1364 2006-07-11 John Sullivan <sullivan@apple.com>
1366 Reviewed by Kevin and Tim O
1368 - added support for creating a selection image with white text
1370 * WebView/WebDocumentPrivate.h:
1371 added -selectionImageForcingWhiteText: and -selectionImageRect to the private
1372 <WebDocumentSelection> protocol
1374 * Misc/WebSearchableTextView.m:
1375 (-[NSString selectionImageForcingWhiteText:]):
1376 added stub for this new method to this obsolete class to satisfy the compiler
1377 (-[NSString selectionImageRect]):
1380 * WebView/WebHTMLView.m:
1381 (-[WebHTMLView _selectionDraggingImage]):
1382 now calls -selectionImageForcingWhiteText:NO instead of just -selectionImage
1383 (-[WebHTMLView _selectionDraggingRect]):
1384 now calls selectionImageRect, to which the implementation moved
1385 (-[WebHTMLView selectionImageForcingWhiteText:]):
1386 implemented this new method by calling through to new bridge method selectionImageForcingWhiteText:
1387 (-[WebHTMLView selectionImageRect]):
1388 implemented this new method by using existing _selectionDraggingRect implementation
1390 * WebView/WebPDFView.m:
1391 (-[WebPDFView selectionImageForcingWhiteText:]):
1392 implemented by using code that was formerly in Safari
1393 (-[WebPDFView selectionImageRect]):
1394 implemented by returning selectionRect
1396 2006-07-11 Tim Omernick <timo@apple.com>
1400 <http://bugzilla.opendarwin.org/show_bug.cgi?id=9843>:
1401 Give Netscape plug-ins access to their own DOM element
1403 * Plugins/WebBaseNetscapePluginView.h:
1404 * Plugins/WebBaseNetscapePluginView.m:
1405 (-[WebBaseNetscapePluginView dealloc]):
1406 Release DOM element.
1407 (-[WebBaseNetscapePluginView getVariable:value:]):
1408 Return NPObject for plugin DOM element.
1410 * Plugins/WebNetscapePluginEmbeddedView.h:
1411 * Plugins/WebNetscapePluginEmbeddedView.m:
1412 (-[WebNetscapePluginEmbeddedView initWithFrame:plugin:URL:baseURL:MIMEType:attributeKeys:attributeValues:loadManually:DOMElement:]):
1413 Now takes a DOMElement, in much the same way that WebKit plug-in views take a DOMElement.
1415 * WebCoreSupport/WebFrameBridge.m:
1416 (-[WebFrameBridge viewForPluginWithURL:attributeNames:attributeValues:MIMEType:DOMElement:loadManually:]):
1417 Pass DOMElement to Netscape plug-ins.
1418 (-[WebFrameBridge viewForJavaAppletWithFrame:attributeNames:attributeValues:baseURL:DOMElement:]):
1421 2006-07-11 Justin Garcia <justin.garcia@apple.com>
1423 Reviewed by levi & thatcher
1425 <http://bugzilla.opendarwin.org/show_bug.cgi?id=9642>
1426 GMail Editor: Operations that use drop down menus blow away the selection
1428 * WebView/WebHTMLView.m:
1429 (-[WebHTMLView maintainsInactiveSelection]): Maintain an inactive selection
1430 when resigning as first responder if the selection is editable
1431 or if the WebView tells us to.
1432 * WebView/WebView.m:
1433 (-[WebView maintainsInactiveSelection]): Just because a WebView is
1434 editable doesn't mean selections inside subframes will be. Return
1437 2006-07-11 Tim Omernick <timo@apple.com>
1439 Reviewed by Tim Hatcher.
1441 <rdar://problem/4622748> WebKit now uses deprecated AGL functions
1443 * Plugins/WebBaseNetscapePluginView.m:
1444 (-[WebBaseNetscapePluginView _createWindowedAGLContext]):
1445 aglSetDrawable() is deprecated in AGL 3.0. Use aglSetWindowRef() instead.
1446 (-[WebBaseNetscapePluginView _createWindowlessAGLContext]):
1447 aglSetOffScreen() is deprecated in AGL 3.0. Use CGLSetOffScreen(), which does the same thing.
1449 2006-07-11 Alexey Proskuryakov <ap@nypop.com>
1453 - http://bugzilla.opendarwin.org/show_bug.cgi?id=7808
1454 Assertion failure in -[WebBaseNetscapePluginStream dealloc] when requesting an invalid URL
1456 * Plugins/WebNetscapePluginStream.m:
1457 (-[WebNetscapePluginStream initWithRequest:pluginPointer:notifyData:sendNotification:]):
1458 Remove the early return when requesting an invalid (unsupported) URL.
1460 === Safari-521.16 ===
1462 2006-07-10 Mitz Pettel <opendarwin.org@mitzpettel.com>
1464 Reviewed by John Sullivan.
1466 - fix <rdar://problem/4621541>, aka <http://bugzilla.opendarwin.org/show_bug.cgi?id=9838>
1467 REGRESSION (r14968-r14977): View Source doesn't work for pages from the back/forward cache
1469 * WebView/WebDataSource.m:
1470 (-[WebDataSource _setPrimaryLoadComplete:]): Set our data only if the frame loader is
1471 has just loaded it (when coming from the back/forward cache, it hasn't).
1473 2006-07-10 Brady Eidson <beidson@apple.com>
1477 Resolved the console error messages people got from the new DB even if they didn't have it enabled
1479 * Misc/WebIconDatabase.m:
1480 (-[WebIconDatabase init]):
1481 Disabled initializing the IconDatabaseBridge if user is living on the old DB
1483 2006-07-10 Darin Adler <darin@apple.com>
1485 - try to fix Windows build
1487 * COM/WebFrame.h: Qualify DeprecatedString and KURL with WebCore:: prefixes.
1489 2006-07-09 Darin Adler <darin@apple.com>
1491 - try to fix Windows build
1493 * COM/WebFrame.cpp: Rename QChar to DeprecatedChar.
1495 2006-07-09 Darin Adler <darin@apple.com>
1497 - fix newlines to be consistent for all files in the COM directory
1498 (many had mixed style) and set the EOL style to "native" on them.
1500 * COM/*: Set properties and changed files.
1502 2006-07-09 Tim Omernick <timo@apple.com>
1506 <rdar://problem/4404652> Netscape plug-in mouse events broken in HiDPI
1508 Multiply global mouse coordinates by the window scale factor so that plug-ins can use GlobalToLocal() in HiDPI.
1509 This fixes many bugs involving plug-in mouse event handling in HiDPI. Most notably, the Flash player will now
1510 correctly respond to clicks.
1512 * Plugins/WebBaseNetscapePluginView.m:
1513 (+[WebBaseNetscapePluginView getCarbonEvent:]):
1514 (-[WebBaseNetscapePluginView getCarbonEvent:withEvent:]):
1516 2006-07-09 Darin Adler <darin@apple.com>
1518 Reviewed by Tim Hatcher.
1520 - fix assertion firing in plug-in layout tests
1522 * Plugins/WebBaseNetscapePluginView.m:
1523 (-[WebBaseNetscapePluginView restartNullEvents]):
1524 Don't start null events if the plug-in is not in the
1525 started state. This happens when the plug-in moves within
1526 its view hierarchy after it has been stopped.
1528 2006-07-09 Timothy Hatcher <timothy@apple.com>
1532 Bug 9820: Move new DOM API that has been through API review to public headers
1533 http://bugzilla.opendarwin.org/show_bug.cgi?id=9820
1535 * Misc/WebElementDictionary.m: include DOMExtensions.h
1536 * Misc/WebNSViewExtras.m: include DOMExtensions.h
1537 * WebKit.xcodeproj/project.pbxproj: make DOMXPath.h public
1539 2006-07-09 Timothy Hatcher <timothy@apple.com>
1543 Bug 9818: move new UIDelegate API that has been through API review to public headers
1544 http://bugzilla.opendarwin.org/show_bug.cgi?id=9818
1546 <rdar://problem/4387541> API: Remove webView:setContentRect: & webViewContentRect: delegate methods?
1547 The fix for 4310363 removed the only use of webViewContentRect: in our code. webView:setContentRect:
1548 was never used to begin with. There's no harm in leaving these around in the API, but they'll cruft it up.
1550 Also removes the never used webViewPrint: SPI that was replaced by webView:printFrameView:.
1552 * DefaultDelegates/WebDefaultUIDelegate.m:
1553 * WebCoreSupport/WebFrameBridge.m:
1554 (-[WebFrameBridge print]):
1555 * WebView/WebFrameView.h:
1556 * WebView/WebFrameView.m:
1557 * WebView/WebFrameViewPrivate.h:
1558 * WebView/WebUIDelegate.h:
1559 * WebView/WebUIDelegatePrivate.h:
1561 2006-07-09 Timothy Hatcher <timothy@apple.com>
1565 Bug 9814: Move new WebView API that has been through API review to public headers
1566 http://bugzilla.opendarwin.org/show_bug.cgi?id=9814
1568 * WebView/WebView.h:
1569 * WebView/WebView.m:
1571 (-[WebView setShouldCloseWithWindow:]):
1572 (-[WebView shouldCloseWithWindow]):
1573 (-[WebView selectedFrame]):
1574 (-[WebView setMainFrameURL:]):
1575 (-[WebView mainFrameURL]):
1576 (-[WebView isLoading]):
1577 (-[WebView mainFrameTitle]):
1578 (-[WebView mainFrameIcon]):
1579 (-[WebView mainFrameDocument]):
1580 (-[WebView setDrawsBackground:]):
1581 (-[WebView drawsBackground]):
1582 (-[WebView toggleSmartInsertDelete:]):
1583 (-[WebView toggleContinuousSpellChecking:]):
1584 (-[WebView canMakeTextStandardSize]):
1585 (-[WebView makeTextStandardSize:]):
1586 (-[WebView maintainsInactiveSelection]):
1587 * WebView/WebViewPrivate.h:
1589 2006-07-09 Timothy Hatcher <timothy@apple.com>
1593 Bug 9487: The XPath section should be removed and/or moved.
1594 http://bugzilla.opendarwin.org/show_bug.cgi?id=9487
1596 * WebInspector/webInspector/inspector.css:
1597 * WebInspector/webInspector/inspector.html:
1598 * WebInspector/webInspector/inspector.js:
1600 2006-07-09 Anders Carlsson <acarlsson@apple.com>
1604 * WebCoreSupport/WebSystemInterface.m:
1605 (InitWebCoreSystemInterface):
1606 Initialize wkPathFromFont.
1608 2006-07-09 Darin Adler <darin@apple.com>
1612 * Plugins/WebBaseNetscapePluginView.m:
1613 (-[WebBaseNetscapePluginView restorePortState:]): Cast inside the assertion so
1614 that we don't have an unused variable in versions with assertions disabled.
1615 The alternative would be to wrap the whole thing in an #if statement.
1617 2006-07-08 Tim Omernick <timo@apple.com>
1619 Reviewed by John Sullivan.
1621 * Plugins/WebBaseNetscapePluginView.h:
1622 - Added ivars for OpenGL support. Someday it would be nice to refactor this class so
1623 that each drawing model is encapsulated in a class; this would allow
1624 WebBaseNetscapePluginView to make more efficient use of space, for example by not
1625 keeping OpenGL-related ivars for Quickdraw plug-ins.
1627 * Plugins/WebBaseNetscapePluginView.m:
1628 - Declared a bunch of internal methods for OpenGL support (see below).
1629 - Removed "forUpdate" from CoreGraphics port state struct; it was always set to "YES",
1630 so I just cleaned up the silly code that used it.
1631 - Declared OpenGL port state struct.
1632 (-[WebBaseNetscapePluginView saveAndSetNewPortStateForUpdate:]):
1633 - Moved a CoreGraphics-related assertion down to the big "switch" statement.
1634 - Don't set window.type here -- according to the Netscape Plug-in API docs, the plug-in
1635 should default to "windowed" mode, and may call NPN_SetValue() during its NPN_New() to
1636 request that the browser use a "windowless" (offscreen) context instead.
1637 - Moved the assertion from the top of this method here; removed a less restrictive
1638 assertion that is now obsolete.
1639 - Removed "forUpdate" flag from CoreGraphics port state struct.
1640 - Fill in OpenGL port state struct. Set up the viewport appropriately for both windowed
1641 and windowless OpenGL plug-ins. Windowed plug-ins need to have their GL viewport
1642 transformed by the amount the plug-in is clipped; windowless plug-ins are drawn off-screen
1643 into a surface whose geometry is never changed or clipped, so they may always draw with
1644 a viewport origin of (0, 0).
1645 (-[WebBaseNetscapePluginView restorePortState:]):
1646 - Removed "forUpdate" flag from CoreGraphics port state struct.
1647 - Restore the old OpenGL context saved by -saveAndSetNewPortStateForUpdate:.
1648 (-[WebBaseNetscapePluginView sendEvent:]):
1649 - Updated an assertion to also include OpenGL. To ensure that attached plug-in window movements
1650 happen atomically with web page redisplays, we assert that the plug-in's window is set only while
1651 the plug-in view is redrawing.
1652 - Same deal as with the assertion; only save/set port state when redrawing the plug-in view. Plug-ins
1653 that use the new drawing models are only allowed to draw when the web page draws. I might consider
1654 changing this for windowed OpenGL plug-ins, since they always obscure the page content anyway.
1655 (-[WebBaseNetscapePluginView isNewWindowEqualToOldWindow]):
1656 - Compare new NP_GLContext structs.
1657 (-[WebBaseNetscapePluginView updateAndSetWindow]):
1658 - In OpenGL mode, can only set window when updating plug-in view.
1659 (-[WebBaseNetscapePluginView setWindowIfNecessary]):
1661 - Updated logging for OpenGL drawing mode.
1662 (-[WebBaseNetscapePluginView addWindowObservers]):
1663 - No need to observe frame/bounds change notifications for this and all parent views. See -renewGState
1665 (-[WebBaseNetscapePluginView removeWindowObservers]):
1666 - Don't need to remove frame/bounds observers anymore.
1667 (-[WebBaseNetscapePluginView start]):
1668 - Plug-ins are "windowed" by default. This is not a change from our previous behavior, but this is a
1669 better place to set the default value as it allows the plug-in to override it later.
1670 (-[WebBaseNetscapePluginView stop]):
1671 - Destroy AGL context when the plug-in stops.
1672 (-[WebBaseNetscapePluginView dealloc]):
1673 - Assert that the AGL stuff has been cleaned up.
1674 (-[WebBaseNetscapePluginView drawRect:]):
1675 - If this is a windowless OpenGL plugin, blit its contents back into this view.
1676 (-[WebBaseNetscapePluginView renewGState]):
1677 - This method is called when the view or one of its parents is moved or resized (see comments).
1678 (-[WebBaseNetscapePluginView viewWillMoveToWindow:]):
1679 - Hide the AGL window if the plug-in view is about to be removed from its window.
1680 (-[WebBaseNetscapePluginView viewHasMoved:]):
1681 - Renamed and moved to the "Internal" category.
1682 (-[WebBaseNetscapePluginView invalidateRegion:]):
1684 - Add support for OpenGL (uses the same region type as CoreGraphics).
1685 (-[WebBaseNetscapePluginView getVariable:value:]):
1687 - Implemented NPNVsupportsOpenGLBool; returns YES since we now support the OpenGL drawing model.
1688 (-[WebBaseNetscapePluginView setVariable:value:]):
1689 - Implemented NPPVpluginWindowBool, which allows plug-ins to specify whether they should be rendered in
1690 "windowed" or "windowless" mode. This is an older part of the Netscape Plug-in API that was never
1691 implemented in WebKit. "Windowed" Quickdraw plug-ins do not actually reside in a separate window, and
1692 can already do many of the same things (such as transparency) that only "windowless" plug-ins can do on
1693 other platforms. However, we need the "windowed" vs. "windowless" distinction for OpenGL plug-ins so
1694 that they have some way of specifying whether they should be rendered on an accelerated overlay surface,
1695 composited into the browser window.
1696 - Support for setting the drawing model to OpenGL.
1697 (-[WebBaseNetscapePluginView _viewHasMoved]):
1698 - Renamed from -viewHasMoved:, and moved down in the file.
1699 - None of this work is necessary when the plug-in is not in a window; the plug-in's state will be properly
1700 restored when it is moved back into a window.
1701 - Reshape OpenGL surface window here.
1702 (-[WebBaseNetscapePluginView _createAGLContextIfNeeded]):
1703 - Creates the AGL context of the appropriate type (windowed/windowless).
1704 (-[WebBaseNetscapePluginView _createWindowedAGLContext]):
1705 - Creates a windowed AGL context, which is an AGL context attached to a child window. This is the only way
1706 to get true hardware acceleration.
1707 (-[WebBaseNetscapePluginView _createWindowlessAGLContext]):
1708 - Creates a windowless AGL context, which is an AGL context attached to an offscreen buffer. This buffer can
1709 then be blitted back into the browser window with a different alpha, or scaled, or whatever.
1710 (-[WebBaseNetscapePluginView _cglContext]):
1711 - Returns the underlying CGL context from the AGL context. We give the plug-in access to the CGL context because
1712 CGL is the more primitive of the GL drawable APIs and allows for finer control over the context.
1713 (-[WebBaseNetscapePluginView _getAGLOffscreenBuffer:width:height:]):
1714 - Returns the buffer allocated for the offscreen AGL context, if there is one.
1715 (-[WebBaseNetscapePluginView _destroyAGLContext]):
1716 - Destroys the AGL context, as well as the associated offscreen buffer or child window.
1717 (-[WebBaseNetscapePluginView _reshapeAGLWindow]):
1718 - Positions the AGL window over the browser window.
1719 (-[WebBaseNetscapePluginView _hideAGLWindow]):
1720 - Hides the AGL window.
1721 (-[WebBaseNetscapePluginView _aglOffscreenImageForDrawingInRect:]):
1722 - Returns an NSImage representation of the offscreen AGL context's framebuffer. This is used to draw the offscreen
1723 bits back into the plug-in view. This is kind of tricky because it has to convert the offscreen buffer in-place
1724 from BGRA to RGBA so that it can be wrapped in an NSBitmapImageRep. See comments.
1726 * WebKit.xcodeproj/project.pbxproj:
1727 Link OpenGL and AGL.
1729 2006-07-09 Brady Eidson <beidson@apple.com>
1733 The ICONDEBUG flag now chooses either the new icon database or the old one
1734 No longer any need to live side by side to compare results
1736 * Misc/WebIconDatabase.m:
1737 (-[NSMutableDictionary iconURLForURL:]):
1738 (-[NSMutableDictionary retainIconForURL:]):
1739 (-[NSMutableDictionary releaseIconForURL:]):
1740 (-[WebIconDatabase _setHaveNoIconForIconURL:]):
1741 (-[WebIconDatabase _setIconURL:forURL:]):
1742 (-[WebIconDatabase _resetCachedWebPreferences:]):
1744 2006-07-08 Timothy Hatcher <timothy@apple.com>
1748 Bug 5312: comments aren't available via DOM
1749 http://bugzilla.opendarwin.org/show_bug.cgi?id=5312
1751 Makes the Web Inspector show comment node contents.
1753 * WebInspector/WebInspector.m:
1754 (-[DOMNode _displayName]): return the contents of the comment
1755 * WebInspector/webInspector/inspector.js: check for comment nodes
1757 2006-07-09 Alexey Proskuryakov <ap@nypop.com>
1761 - http://bugzilla.opendarwin.org/show_bug.cgi?id=9572
1762 Add application/xhtml+xml to the Accept header
1764 * WebView/WebFrame.m:
1765 (-[WebFrame _addExtraFieldsToRequest:mainResource:alwaysFromRequest:]): Add an Accept header
1766 to main resource requests.
1767 * English.lproj/StringsNotToBeLocalized.txt: Added new strings.
1769 2006-07-08 Darin Adler <darin@apple.com>
1771 * DefaultDelegates/WebDefaultContextMenuDelegate.m:
1772 (-[WebDefaultUIDelegate contextMenuItemsForElement:defaultMenuItems:]):
1773 Removed misleading old comment.
1775 === Safari-521.15 ===
1777 2006-07-07 Levi Weintraub <lweintraub@apple.com>
1781 Finished moving deletion selection expansion across the bridge... say that 3 times fast.
1783 * WebView/WebHTMLView.m: Pass granularity to WebCore to handle expansion
1784 (-[WebHTMLView _deleteRange:killRing:prepend:smartDeleteOK:deletionAction:granularity:]):
1785 (-[WebHTMLView _deleteSelection]):
1786 (-[WebHTMLView _deleteWithDirection:granularity:killRing:isTypingAction:]):
1787 (-[WebHTMLView deleteToMark:]):
1789 2006-07-07 Brady Eidson <beidson@apple.com>
1793 Changed an ASSERT to a LOG_ERROR for an error that could be handled gracefully, but
1794 whose assertion was reproducibly causing a build bot failure
1796 * Misc/WebIconDatabase.m:
1797 (-[WebIconDatabase _releaseIconForIconURLString:]):
1799 2006-07-06 Levi Weintraub <lweintraub@apple.com>
1803 Improved table editing
1805 * WebCoreSupport/WebFrameBridge.m: Added method to allow WebCore to trigger
1806 deletion editing delegate
1807 (-[WebFrameBridge shouldDeleteSelectedDOMRange:]):
1808 * WebView/WebHTMLView.m: Moved code that expanded a selection when the delete
1809 key is pressed over to WebCore so we can be more intelligent about how to handle it
1810 (-[WebHTMLView _deleteRange:killRing:prepend:smartDeleteOK:deletionAction:]):
1811 (-[WebHTMLView _deleteWithDirection:granularity:killRing:isTypingAction:]):
1813 2006-07-07 John Sullivan <sullivan@apple.com>
1815 Reviewed by Tim Hatcher
1817 - fixed <rdar://problem/4606857> WebKit: WebPreferencesChangedNotification not exported
1820 added surprisingly missing _WebPreferencesChangedNotification, defined in
1823 2006-07-06 Brady Eidson <beidson@apple.com>
1827 Small fix to my previous small fix that only lets the ASSERT off the hook if the DB
1830 * Misc/WebIconDatabase.m:
1831 (-[WebIconDatabase _releaseIconForIconURLString:]):
1833 2006-07-05 Brady Eidson <beidson@apple.com>
1837 Small fix that prevents an assertion from triggering if the DB is being cleaned up
1838 (ie, the app being shut down)
1840 * Misc/WebIconDatabase.h:
1841 * Misc/WebIconDatabase.m:
1842 (-[NSMutableDictionary init]):
1843 (-[WebIconDatabase _applicationWillTerminate:]):
1844 (-[WebIconDatabase _releaseIconForIconURLString:]):
1846 2006-07-05 Adele Peterson <adele@apple.com>
1848 Reviewed by Maciej and Hyatt.
1850 WebKit part of initial popup menu implementation.
1852 * WebCoreSupport/WebSystemInterface.m: (InitWebCoreSystemInterface):
1853 Initialize WKPopupMenu.
1855 2006-07-05 Anders Carlsson <acarlsson@apple.com>
1859 http://bugzilla.opendarwin.org/show_bug.cgi?id=3581
1860 iFrames set to display:none are Missing from frames array
1862 * WebCoreSupport/WebFrameBridge.m:
1863 (-[WebFrameBridge initSubframeWithOwnerElement:frameName:view:]):
1864 (-[WebFrameBridge createChildFrameNamed:withURL:referrer:ownerElement:allowsScrolling:marginWidth:marginHeight:]):
1865 Modify to pass the owner element instead of the owner renderer.
1867 * WebView/WebHTMLView.m:
1868 (-[WebHTMLView _topHTMLView]):
1869 Remove assertion, it's not valid anymore.
1871 2006-07-05 Timothy Hatcher <timothy@apple.com>
1873 Reviewed by Harrison.
1875 <rdar://problem/4608423> HIViewAdapter used but not defined
1876 Adds a new export file to fix the build.
1878 * WebKit.LP64.exp: Added.
1879 * WebKit.xcodeproj/project.pbxproj:
1881 2006-07-04 Timothy Hatcher <timothy@apple.com>
1885 Bug 9731: [Drosera] crash when trying to access the scope chain
1886 http://bugzilla.opendarwin.org/show_bug.cgi?id=9731
1888 Because of <rdar://problem/4608404> the WebScriptObject, _globalObj, that
1889 WebCoreScriptDebugger holds is unprotected each time the page changes.
1890 This causes Drosera to crash Safari when trying to access the scope chain.
1891 We simply need to detach and re-attach the debugger when the window script
1892 object is cleared until 4608404 is fixed. This change also attaches the
1893 debugger before we call the windowScriptObjectAvailable: delegate method,
1894 so the debugger is ready before anyone might use the window object.
1896 * WebCoreSupport/WebFrameBridge.m:
1897 (-[WebFrameBridge windowObjectCleared]):
1899 2006-07-04 Timothy Hatcher <timothy@apple.com>
1903 Bug 9732: [Drosera] calling removeListener to many times will cause
1904 WebKit's listener count to underflow/wraparound
1905 http://bugzilla.opendarwin.org/show_bug.cgi?id=9732
1907 Adds a check to make sure the listener was in our listeners set before
1908 decrementing the global listener count. Also checks for nil in addListner
1909 to prevent a possible exception when adding the object to the set.
1911 * DefaultDelegates/WebScriptDebugServer.m:
1912 (-[WebScriptDebugServer addListener:]):
1913 (-[WebScriptDebugServer removeListener:]):
1915 2006-07-04 Alexey Proskuryakov <ap@nypop.com>
1919 - http://bugzilla.opendarwin.org/show_bug.cgi?id=8210
1920 Conditional XMLHttpRequest gets should pass 304 responses unchanged
1922 Test: http/tests/xmlhttprequest/cache-override.html
1924 * Misc/WebNSURLRequestExtras.h: Added _web_isConditionalRequest
1925 * Misc/WebNSURLRequestExtras.m:
1926 (-[NSURLRequest _web_isConditionalRequest]):
1927 * WebCoreSupport/WebFrameBridge.m:
1928 (-[WebFrameBridge syncLoadResourceWithMethod:URL:customHeaders:postData:finalURL:responseHeaders:statusCode:]):
1929 Bypass the cache for conditional requests.
1930 * WebCoreSupport/WebSubresourceLoader.m:
1931 (+[WebSubresourceLoader startLoadingResource:withRequest:customHeaders:referrer:forDataSource:]): Ditto.
1933 2006-07-01 David Kilzer <ddkilzer@kilzer.net>
1935 Reviewed by NOBODY (fixed Tim's build fix).
1937 * WebView/WebView.m: Added back missing '/' at the beginning of the file.
1939 2006-07-01 Tim Omernick <timo@apple.com>
1941 Reviewed by NOBODY (build fix)
1943 * WebView/WebView.m:
1944 (-[WebView _isMIMETypeRegisteredAsPlugin:]):
1945 Changed nil to NO (typo).
1947 === Safari-521.14 ===
1949 2006-06-30 Timothy Hatcher <timothy@apple.com>
1953 Only enable shouldCloseWithWindow when ObjC GC is enabled.
1954 This maintains backwards compatibility with applications
1955 that expect a WebView to be usable after the window closes.
1957 * WebView/WebView.m:
1958 (-[WebViewPrivate init]):
1960 2006-06-30 Timothy Hatcher <timothy@apple.com>
1964 Call _close in dealloc to ensure we cleanup for backwards
1965 compatibility. This will safeguard and cleanup even if the
1966 application doesn't use the new close API yet, like Mail.
1968 * WebView/WebView.m:
1969 (-[WebView dealloc]):
1971 2006-06-29 Timothy Hatcher <timothy@apple.com>
1975 <rdar://problem/4484405> WebKit leaks, improper tear-down
1976 <rdar://problem/3694059> -[WebBackForwardList finalize] is incorrect; design change needed
1977 <rdar://problem/3694103> -[WebFrame finalize] is incorrect; design change needed
1978 <rdar://problem/3694104> -[WebHTMLView finalize] is incorrect; design change needed
1980 Adds a close method to WebView, this needs to be called when the
1981 WebView is no longer needed. To make this easier for the common cases
1982 there is now an "auto close" on WebView that listens to the view's
1983 parent window. If the parent window closes and the WebView has no
1984 hostWindow then the WebView is automatically closed if autoClose is YES.
1985 To manage WebView closing yourself call setAutoClose: and pass NO.
1987 When a WebView closes it will tear-down and not be usable anymore.
1988 Close will will called on various other internal objects as a part
1989 of this, to ensure proper tear-down in GC without relying on finalize.
1991 * History/WebBackForwardList.m:
1992 (-[WebBackForwardList dealloc]):
1993 (-[WebBackForwardList finalize]):
1994 (-[WebBackForwardList _close]):
1995 * History/WebHistoryItem.m:
1996 (+[WebHistoryItem _closeObjectsInPendingPageCaches]):
1997 (+[WebHistoryItem _releaseAllPendingPageCaches]):
1998 * History/WebHistoryItemPrivate.h:
1999 * WebCoreSupport/WebFrameBridge.m:
2000 (-[WebFrameBridge close]):
2001 (-[WebFrameBridge saveDocumentToPageCache:]):
2002 (-[WebFrameBridge canGoBackOrForward:]):
2003 * WebView/WebFrame.m:
2004 (-[WebFrame _detachFromParent]):
2005 (-[WebFrame dealloc]):
2006 (-[WebFrame finalize]):
2007 * WebView/WebFrameView.m:
2008 (-[WebFrameView _setWebFrame:]):
2009 (-[WebFrameView finalize]):
2010 * WebView/WebHTMLView.m:
2011 (-[WebHTMLView close]):
2012 (-[WebHTMLView dealloc]):
2013 (-[WebHTMLView finalize]):
2014 * WebView/WebHTMLViewInternal.h:
2015 * WebView/WebHTMLViewPrivate.h:
2016 * WebView/WebScriptDebugDelegate.m:
2017 (-[WebScriptCallFrame _initWithFrame:initWithWebFrame:]):
2018 (-[WebScriptCallFrame parsedSource:fromURL:sourceId:startLine:errorLine:errorMessage:]):
2019 (-[WebScriptCallFrame enteredFrame:sourceId:line:]):
2020 (-[WebScriptCallFrame hitStatement:sourceId:line:]):
2021 (-[WebScriptCallFrame leavingFrame:sourceId:line:]):
2022 * WebView/WebScriptDebugDelegatePrivate.h:
2023 * WebView/WebView.m:
2024 (-[WebViewPrivate init]):
2025 (-[WebView _close]):
2026 (-[WebView dealloc]):
2027 (-[WebView finalize]):
2028 (-[WebView viewWillMoveToWindow:]):
2029 (-[WebView _windowWillClose:]):
2030 (-[WebView setPreferencesIdentifier:]):
2031 (-[WebView mainFrame]):
2032 (-[WebView setHostWindow:]):
2033 (-[WebView searchFor:direction:caseSensitive:wrap:]):
2034 (-[WebView writeSelectionWithPasteboardTypes:toPasteboard:]):
2036 (-[WebView setAutoClose:]):
2037 (-[WebView autoClose]):
2038 (-[WebView _frameViewAtWindowPoint:]):
2039 * WebView/WebViewPrivate.h:
2041 2006-06-29 Kevin Decker <kdecker@apple.com>
2043 Reviewed by mjs and timo.
2045 Fixed: <rdar://problem/4609119> handleAuthenticationFromResource was removed; needed by the Dashboard
2047 * WebView/WebViewPrivate.h: Added handleAuthenticationFromResource back into the header. Needed by the
2048 Dashboard, but was removed in r.14028 on 2006-04-23.
2050 2006-06-29 Tim Omernick <timo@apple.com>
2052 Reviewed by Kevin Decker.
2054 <rdar://problem/4608487> REGRESSION: reproducible crash in +[WebCoreFrameBridge supportedImageMIMETypes]
2056 * Plugins/WebPluginDatabase.m:
2057 (+[WebPluginDatabase setAdditionalWebPlugInPaths:]):
2058 One might be tempted to add additionalWebPlugInPaths to the global WebPluginDatabase here.
2059 For backward compatibility with earlier versions of the +setAdditionalWebPlugInPaths: SPI,
2060 we need to save a copy of the additional paths and not cause a refresh of the plugin DB
2062 (-[WebPluginDatabase _plugInPaths]):
2063 Include additionalWebPlugInPaths if this is the global DB.
2064 (-[WebPluginDatabase refresh]):
2065 Call -_plugInPaths to get the modified array of paths. This is similar to what the old code
2066 (before we had per-WebView plugin search paths).
2068 2006-06-29 Tim Omernick <timo@apple.com>
2070 Reviewed by John Sullivan.
2072 WebHistoryItem now supports getting and setting arbitrary properties via _transientPropertyForKey: and
2073 -_setTransientProperty:forKey:.
2074 For now, these properties do not persist with the rest of the history data. They are intended to hold transient
2075 per-history-item state, which is something that was until now difficult for a WebKit client app to do.
2077 * History/WebHistoryItemPrivate.h:
2078 * History/WebHistoryItem.m:
2079 (-[WebHistoryItemPrivate dealloc]):
2080 (-[WebHistoryItem _transientPropertyForKey:]):
2081 (-[WebHistoryItem _setTransientProperty:forKey:]):
2083 2006-06-29 Timothy Hatcher <timothy@apple.com>
2085 Reviewed by Harrison.
2087 Smart insert and delete, continuous spell checking and autoscroll
2088 can now be used for any WebView, not just editable ones. All of
2089 these make sense for documents that might contain content editable
2090 areas or our new text fields. Autoscroll is usefull for dragging
2091 for file input controls also.
2093 Added a SPI to toggle WebViews tab key behavior, tabKeyCyclesThroughElements.
2094 WebHTMLView's _interceptEditingKeyEvent now uses WebView's
2095 tabKeyCyclesThroughElements state to determine whether or not
2096 to process tab key events. The idea here is that tabKeyCyclesThroughElements
2097 will be YES when this WebView is being used in a browser, and we
2098 desire the behavior where tab moves to the next element in tab order.
2099 If tabKeyCyclesThroughElements is NO, it is likely that the WebView
2100 is being embedded as the whole view, as in Mail, and tabs should input
2101 tabs as expected in a text editor. Using Option-Tab always cycles
2104 * WebView/WebHTMLRepresentation.m:
2105 (-[WebHTMLRepresentation finishedLoadingWithDataSource:]):
2106 * WebView/WebHTMLView.m:
2107 (-[WebHTMLView _interceptEditingKeyEvent:]):
2108 * WebView/WebView.m:
2109 (-[WebViewPrivate init]):
2110 (-[WebView _autoscrollForDraggingInfo:timeDelta:]):
2111 (-[WebView _shouldAutoscrollForDraggingInfo:]):
2112 (-[WebView validateUserInterfaceItem:]):
2113 (-[WebView toggleSmartInsertDelete:]):
2114 (-[WebView toggleContinuousSpellChecking:]):
2115 (-[WebView setTabKeyCyclesThroughElements:]):
2116 (-[WebView tabKeyCyclesThroughElements]):
2117 * WebView/WebViewPrivate.h:
2119 2006-06-29 Anders Carlsson <acarlsson@apple.com>
2123 * WebKit.xcodeproj/project.pbxproj:
2124 Add DOMXPath.h header.
2126 2006-06-28 David Hyatt <hyatt@apple.com>
2128 Fix custom highlighting so that you can paint the entire line (and go
2129 outside the bounds of the line).
2131 Reviewed by harrison
2133 * WebCoreSupport/WebFrameBridge.m:
2134 (-[WebFrameBridge customHighlightRect:forLine:]):
2135 (-[WebFrameBridge paintCustomHighlight:forBox:onLine:behindText:entireLine:]):
2136 * WebKit.xcodeproj/project.pbxproj:
2137 * WebView/WebHTMLViewPrivate.h:
2139 2006-06-28 Maciej Stachowiak <mjs@apple.com>
2143 - fix Frame leak on layout tests
2145 * WebCoreSupport/WebPageBridge.m:
2146 (-[WebPageBridge outerView]): Return WebFrameView for main frame instead
2147 of WebView to avoid reference cycle between WebView and Page.
2149 2006-06-28 Timothy Hatcher <timothy@apple.com>
2151 Prefer the Stabs debugging symbols format until DWARF bugs are fixed.
2153 * WebKit.xcodeproj/project.pbxproj:
2155 2006-06-28 Levi Weintraub <lweintraub@apple.com>
2159 http://bugzilla.opendarwin.org/show_bug.cgi?id=7568
2160 Bug 7568: Implement Indent/Outdent
2161 Added undo action strings and enum values
2163 * English.lproj/Localizable.strings:
2164 * WebCoreSupport/WebFrameBridge.m:
2165 (-[WebFrameBridge nameForUndoAction:]):
2167 2006-06-27 Brady Eidson <beidson@apple.com>
2171 Hookup the new semi-functional SQLite icon database.
2172 For now, it is living side-by-side with the old DB so one can compare the
2173 two for debugging purposes. Also, it is disabled (in WebKit) by default unless you
2174 compile with ICONDEBUG #defined.
2175 Note: To repeat that, if you want to try the new DB, #define ICONDEBUG (WebKitPrefix.h is a good place to do it)
2177 * Misc/WebIconDatabase.m:
2178 (-[NSMutableDictionary iconForURL:withSize:cache:]):
2179 (-[NSMutableDictionary iconURLForURL:]):
2180 (-[NSMutableDictionary retainIconForURL:]):
2181 (-[NSMutableDictionary releaseIconForURL:]):
2182 (-[WebIconDatabase _setHaveNoIconForIconURL:]):
2183 (-[WebIconDatabase _setIconURL:forURL:]):
2184 (-[WebIconDatabase _hasIconForIconURL:]):
2185 (-[WebIconDatabase _resetCachedWebPreferences:]):
2186 * Misc/WebIconLoader.m:
2187 (-[WebIconLoader didFinishLoading]):
2188 * WebKit.xcodeproj/project.pbxproj:
2190 2006-06-26 David Hyatt <hyatt@apple.com>
2192 Fix for 9538, support syntax highlighting for HTML source.
2196 * WebKit.xcodeproj/project.pbxproj:
2197 * WebView/WebView.m:
2198 (-[WebView _setInViewSourceMode:]):
2199 (-[WebView _inViewSourceMode]):
2200 * WebView/WebViewPrivate.h:
2202 2006-06-25 Timothy Hatcher <timothy@apple.com>
2206 Bug 9574: Drosera should show inline scripts within the original HTML
2207 http://bugzilla.opendarwin.org/show_bug.cgi?id=9574
2209 * Adds a new version of the didParseSource delegate callback with base line number.
2210 * Adds a new delegate callback for when a script fails to parse.
2211 * These new callbacks use NSURLs for the url parameter.
2212 * Adds a new script listener callback to notify when the main resource loads.
2213 * Adds a WebScriptErrorDomian and other keys for use with NSError.
2215 * DefaultDelegates/WebDefaultScriptDebugDelegate.m:
2216 (-[WebDefaultScriptDebugDelegate webView:didParseSource:baseLineNumber:fromURL:sourceId:forWebFrame:]):
2217 (-[WebDefaultScriptDebugDelegate webView:failedToParseSource:baseLineNumber:fromURL:withError:forWebFrame:]):
2218 * DefaultDelegates/WebScriptDebugServer.h:
2219 * DefaultDelegates/WebScriptDebugServer.m:
2220 (-[WebScriptDebugServer webView:didLoadMainResourceForDataSource:]):
2221 (-[WebScriptDebugServer webView:didParseSource:baseLineNumber:fromURL:sourceId:forWebFrame:]):
2222 (-[WebScriptDebugServer webView:failedToParseSource:baseLineNumber:fromURL:withError:forWebFrame:]):
2223 * DefaultDelegates/WebScriptDebugServerPrivate.h:
2225 * WebView/WebDataSource.m:
2226 (-[WebDataSource _setPrimaryLoadComplete:]):
2227 * WebView/WebScriptDebugDelegate.h:
2228 * WebView/WebScriptDebugDelegate.m:
2229 (-[WebScriptCallFrame parsedSource:fromURL:sourceId:startLine:errorLine:errorMessage:]):
2231 2006-06-24 David Kilzer <ddkilzer@kilzer.net>
2233 Reviewed by Timothy.
2235 * Info.plist: Fixed copyright to include 2003-2006.
2237 2006-06-24 Alexey Proskuryakov <ap@nypop.com>
2241 - http://bugzilla.opendarwin.org/show_bug.cgi?id=9418
2242 WebKit will not build when Space exists in path
2244 * WebKit.xcodeproj/project.pbxproj: Enclose search paths in quotes.
2246 2006-06-23 Tim Omernick <timo@apple.com>
2248 Reviewed by John Sullivan.
2250 * Plugins/WebBaseNetscapePluginView.m:
2251 (-[WebBaseNetscapePluginView sendEvent:]):
2252 Fixed a bug I found in the CoreGraphics drawing model that was preventing certain types of
2253 events from being dispatched to the plugin, unless the plugin was being updated. The check
2254 for portState was only required to call -setWindowIfNecessary, not required for the entire
2256 Also, don't paint the green debug rect unless this is a QuickDraw plugin. Otherwise the
2257 current QD port is not set, and the green rect fills the entire screen. Pretty awesome
2258 looking, but not intended behavior.
2259 (-[WebBaseNetscapePluginView setWindowIfNecessary]):
2260 Improved the logging here to include the NPWindow's width and height.
2262 2006-06-23 Timothy Hatcher <timothy@apple.com>
2266 Adds back SPI that Mail is still depending on.
2268 * WebView/WebDataSource.m:
2269 (-[WebDataSource _addSubframeArchives:]):
2270 * WebView/WebDataSourcePrivate.h:
2272 === WebKit-521.13 ===
2274 2006-06-23 Timothy Hatcher <timothy@apple.com>
2278 script debugger should only attach to JavaScriptCore when there are listeners
2279 http://bugzilla.opendarwin.org/show_bug.cgi?id=9552
2281 Attaches the debugger to all WebFrames when the first listener
2282 is added. Detaches when the last listener is removed.
2283 Also detach when the script debug delegate is set to nil.
2285 * DefaultDelegates/WebScriptDebugServer.m:
2286 (+[WebScriptDebugServer listenerCount]):
2287 (-[WebScriptDebugServer dealloc]):
2288 (-[WebScriptDebugServer attachScriptDebuggerToAllWebViews]):
2289 (-[WebScriptDebugServer detachScriptDebuggerFromAllWebViews]):
2290 (-[WebScriptDebugServer listenerConnectionDidDie:]):
2291 (-[WebScriptDebugServer addListener:]):
2292 (-[WebScriptDebugServer removeListener:]):
2293 * DefaultDelegates/WebScriptDebugServerPrivate.h:
2294 * WebCoreSupport/WebFrameBridge.m:
2295 (-[WebFrameBridge windowObjectCleared]):
2296 * WebView/WebFrame.m:
2297 (-[WebFrame _attachScriptDebugger]):
2298 (-[WebFrame _detachScriptDebugger]):
2299 * WebView/WebFramePrivate.h:
2300 * WebView/WebScriptDebugDelegate.m:
2301 (-[WebScriptCallFrame parsedSource:fromURL:sourceId:]):
2302 (-[WebScriptCallFrame enteredFrame:sourceId:line:]):
2303 (-[WebScriptCallFrame hitStatement:sourceId:line:]):
2304 (-[WebScriptCallFrame leavingFrame:sourceId:line:]):
2305 * WebView/WebView.m:
2306 (-[WebView _attachScriptDebuggerToAllFrames]):
2307 (-[WebView _detachScriptDebuggerFromAllFrames]):
2308 (-[WebView setScriptDebugDelegate:]):
2309 * WebView/WebViewPrivate.h:
2311 2006-06-22 John Sullivan <sullivan@apple.com>
2313 Reviewed by Tim Omernick
2315 - added support for UIDelegate to be notified of scrolling in any WebHTMLView
2316 - cleaned up recently-added UIDelegate code
2318 * WebView/WebUIDelegatePrivate.h:
2319 declared webView:didScrollDocumentInFrameView: method
2321 * DefaultDelegates/WebDefaultUIDelegate.m:
2322 (-[NSApplication webView:didDrawRect:]):
2323 provide default (empty) implementation of this recently-added method, so the
2324 DelegateForwarder mechanism will work for it
2325 (-[NSApplication webView:didScrollDocumentInFrameView:]):
2326 same thing for the new method
2328 * WebView/WebHTMLView.m:
2329 (-[WebHTMLView _frameOrBoundsChanged]):
2330 use _UIDelegateForwarder mechanism to notify delegate that scrolling occurred
2331 (-[WebHTMLView drawSingleRect:]):
2332 use _UIDelegateForwarder mechanism instead of checking respondsToSelector stuff
2333 here (that's packaged up nicely by the forwarder mechanism)
2335 2006-06-22 Tim Omernick <timo@apple.com>
2337 Reviewed by NOBODY (build fix)
2339 * WebView/WebFrameLoader.m:
2340 Import WebMainResourceLoader instead of using @class so that we can call WebMainResourceLoader
2343 2006-06-22 Tim Omernick <timo@apple.com>
2345 Reviewed by NOBODY (build fix)
2347 * WebView/WebFrameLoader.m:
2348 Import JavaScriptCore/Assertions.h instead of WebKit/WebAssertions.h (which no longer exists)
2350 2006-06-22 Maciej Stachowiak <mjs@apple.com>
2354 - start moving loading logic to new WebFrameLoader class; move management of WebLoaders there
2356 * Misc/WebIconLoader.h:
2357 * Misc/WebIconLoader.m:
2358 (-[WebIconLoader didFinishLoading]):
2359 * WebKit.xcodeproj/project.pbxproj:
2360 * WebView/WebDataSource.m:
2361 (-[WebDataSourcePrivate dealloc]):
2362 (-[WebDataSource _updateLoading]):
2363 (-[WebDataSource _loadIcon]):
2364 (-[WebDataSource _setPrimaryLoadComplete:]):
2365 (-[WebDataSource _stopLoading]):
2366 (-[WebDataSource _startLoading]):
2367 (-[WebDataSource _addSubresourceLoader:]):
2368 (-[WebDataSource _removeSubresourceLoader:]):
2369 (-[WebDataSource _addPlugInStreamLoader:]):
2370 (-[WebDataSource _removePlugInStreamLoader:]):
2371 (-[WebDataSource _iconLoaderReceivedPageIcon:]):
2372 (-[WebDataSource _defersCallbacksChanged]):
2373 (-[WebDataSource _stopLoadingWithError:]):
2374 (-[WebDataSource _setupForReplaceByMIMEType:]):
2375 (-[WebDataSource initWithRequest:]):
2376 (-[WebDataSource dealloc]):
2377 (-[WebDataSource finalize]):
2378 (-[WebDataSource data]):
2379 (-[WebDataSource isLoading]):
2380 * WebView/WebFrameLoader.h: Added.
2381 * WebView/WebFrameLoader.m: Added.
2382 (-[WebFrameLoader initWithDataSource:]):
2383 (-[WebFrameLoader dealloc]):
2384 (-[WebFrameLoader hasIconLoader]):
2385 (-[WebFrameLoader loadIconWithRequest:]):
2386 (-[WebFrameLoader stopLoadingIcon]):
2387 (-[WebFrameLoader addPlugInStreamLoader:]):
2388 (-[WebFrameLoader removePlugInStreamLoader:]):
2389 (-[WebFrameLoader setDefersCallbacks:]):
2390 (-[WebFrameLoader stopLoadingPlugIns]):
2391 (-[WebFrameLoader isLoadingMainResource]):
2392 (-[WebFrameLoader isLoadingSubresources]):
2393 (-[WebFrameLoader isLoading]):
2394 (-[WebFrameLoader stopLoadingSubresources]):
2395 (-[WebFrameLoader addSubresourceLoader:]):
2396 (-[WebFrameLoader removeSubresourceLoader:]):
2397 (-[WebFrameLoader mainResourceData]):
2398 (-[WebFrameLoader releaseMainResourceLoader]):
2399 (-[WebFrameLoader cancelMainResourceLoad]):
2400 (-[WebFrameLoader startLoadingMainResourceWithRequest:identifier:]):
2401 (-[WebFrameLoader stopLoadingWithError:]):
2403 2006-06-21 Brady Eidson <beidson@apple.com>
2407 The WebCoreIconDatabaseBridge was getting messages sent to it after it had been closed, resulting in a crash
2408 on an ASSERT(). After closing the databaseBridge, we simply set it to nil so this can't happen.
2411 * Misc/WebIconDatabase.m:
2412 (-[WebIconDatabase _applicationWillTerminate:]):
2414 2006-06-21 Tim Omernick <timo@apple.com>
2416 Reviewed by Geoff Garen.
2418 <rdar://problem/4564131> WebPluginDatabase setAdditionalWebPlugInPaths needs to be per WebView
2420 Added some WebView SPI so that individual WebViews may have different plugin search paths. There are some
2421 limitations with the approach taken here:
2423 - JavaScript may only access the global plugin DB.
2424 - When this SPI is in use, certain WebView methods may not give accurate results, such as +canShowMIMEType:.
2425 - This only works for plugins referenced using the <object> or <embed> tags; plugins that reside in non-standard
2426 file system locations may not be loaded directly into frames.
2428 None of these issues are important to the client that needs this SPI. Rather than re-architect our entire
2429 plugin database, I think it is better to simply accept these limitations for now.
2431 * Plugins/WebPluginDatabase.h:
2432 Added "plugInPaths" ivar, so different plugin databases can have different search paths.
2433 * Plugins/WebPluginDatabase.m:
2434 (+[WebPluginDatabase installedPlugins]):
2435 Give the global plugin database the default plugin search paths.
2436 (+[WebPluginDatabase setAdditionalWebPlugInPaths:]):
2437 Removed static global; this method now sets the plugin paths on the global plugin database.
2438 (-[WebPluginDatabase setPlugInPaths:]):
2439 Setter method for plugin paths.
2440 (-[WebPluginDatabase close]):
2441 New method; called when the plugin database is no longer needed (when its WebView is being destroyed).
2442 (-[WebPluginDatabase init]):
2443 Don't refresh in -init, so that callers can set the DB's plugin path array before it refreshes.
2444 (-[WebPluginDatabase dealloc]):
2445 Moved here from near the bottom of the file. Release new ivar.
2446 (-[WebPluginDatabase refresh]):
2447 Use the plugInPaths ivar instead of calling pluginLocations().
2448 Notify plugin packages when they are added to and removed from a plugin database. A plugin package will
2449 unload itself when it is removed from all of its plugin databases.
2450 The only really tricky thing here is that the global MIME <-> view class registrations are only modified
2451 by the shared plugin DB.
2452 (+[WebPluginDatabase _defaultPlugInPaths]):
2453 Refactored from the old pluginLocations() function; returns the default set of plugin search paths.
2455 * Plugins/WebBasePluginPackage.h:
2456 * Plugins/WebBasePluginPackage.m:
2457 (-[WebBasePluginPackage dealloc]):
2458 Assert that this package has been removed from all of its containing plugin databases.
2459 (-[WebBasePluginPackage finalize]):
2461 (-[WebBasePluginPackage wasAddedToPluginDatabase:]):
2462 Add plugin database to set.
2463 (-[WebBasePluginPackage wasRemovedFromPluginDatabase:]):
2464 Remove plugin database from set. If it was the last DB, then unload the plugin package.
2466 * WebView/WebViewInternal.h:
2467 Added instance methods to find the view class or plugin package, given a MIME type or file extension.
2468 * WebView/WebViewPrivate.h:
2469 Added SPI to set plugin search paths per WebView.
2470 * WebView/WebView.m:
2471 (-[WebView _viewClass:andRepresentationClass:forMIMEType:]):
2472 New method; tries the global MIME <-> view map first; failing that, it checks the WebView's plugin DB.
2473 (-[WebView _close]):
2474 Close the plugin DB.
2475 (-[WebView _setAdditionalWebPlugInPaths:]):
2476 Create the plugin DB if necessary, and set its plugin paths.
2477 (-[WebView _pluginForMIMEType:]):
2478 Checks global plugin DB, falls back on WebView DB.
2479 (-[WebView _pluginForExtension:]):
2481 (-[WebView _isMIMETypeRegisteredAsPlugin:]):
2484 * WebCoreSupport/WebFrameBridge.m:
2485 (-[WebFrameBridge viewForPluginWithURL:attributeNames:attributeValues:MIMEType:DOMElement:loadManually:]):
2486 Use new WebView instance methods to look for plugins.
2487 (-[WebFrameBridge viewForJavaAppletWithFrame:attributeNames:attributeValues:baseURL:DOMElement:]):
2489 (-[WebFrameBridge determineObjectFromMIMEType:URL:]):
2492 2006-06-20 Brady Eidson <beidson@apple.com>
2496 Added calls through to the WebCoreIconDatabaseBridge for all the major WebIconDatabase API. For now these calls
2497 are wrapped with #ifdef's and are for debugging only.
2499 * Misc/WebIconDatabase.h:
2500 * Misc/WebIconDatabase.m:
2501 (-[NSMutableDictionary _scaleIcon:toSize:]):
2502 (-[NSMutableDictionary init]):
2503 (-[NSMutableDictionary iconForURL:withSize:cache:]):
2504 (-[NSMutableDictionary iconURLForURL:]):
2505 (-[NSMutableDictionary retainIconForURL:]):
2506 (-[NSMutableDictionary releaseIconForURL:]):
2507 (-[WebIconDatabase _setHaveNoIconForIconURL:]):
2508 (-[WebIconDatabase _setIconURL:forURL:]):
2509 (-[WebIconDatabase _hasIconForIconURL:]):
2510 * Misc/WebIconLoader.m:
2511 (-[WebIconLoader didFinishLoading]):
2513 * Misc/WebKitLogging.h: Added a logging channel for WebIconDatabase debugging
2514 * Misc/WebKitLogging.m:
2515 (WebKitInitializeLoggingChannelsIfNecessary):
2517 2006-06-20 Adele Peterson <adele@apple.com>
2519 Reviewed by Tim Hatcher.
2521 * WebView/WebMainResourceLoader.m: Added missing header to fix build on Leopard.
2523 2006-06-20 Timothy Hatcher <timothy@apple.com>
2527 Removes the @try/@catch from the callbacks to improve performance,
2528 simply check if the proxy object's connection is still valid first.
2529 Listener objects are now required to be NSDistantObjects.
2531 Adds pause, resume and step support. The debugger process use to handle this,
2532 but it caused problems when there were multiple listeners.
2534 Sends the bundle identifier in the notification userInfo dictionary along with
2535 process name and process ID.
2537 * DefaultDelegates/WebScriptDebugServer.h:
2538 * DefaultDelegates/WebScriptDebugServer.m:
2539 (-[WebScriptDebugServer serverQuery:]):
2540 (-[WebScriptDebugServer addListener:]):
2541 (-[WebScriptDebugServer removeListener:]):
2542 (-[WebScriptDebugServer step]):
2543 (-[WebScriptDebugServer pause]):
2544 (-[WebScriptDebugServer resume]):
2545 (-[WebScriptDebugServer isPaused]):
2546 (-[WebScriptDebugServer suspendProcessIfPaused]):
2547 (-[WebScriptDebugServer webView:didParseSource:fromURL:sourceId:forWebFrame:]):
2548 (-[WebScriptDebugServer webView:didEnterCallFrame:sourceId:line:forWebFrame:]):
2549 (-[WebScriptDebugServer webView:willExecuteStatement:sourceId:line:forWebFrame:]):
2550 (-[WebScriptDebugServer webView:willLeaveCallFrame:sourceId:line:forWebFrame:]):
2551 * DefaultDelegates/WebScriptDebugServerPrivate.h:
2554 2006-06-19 Alexey Proskuryakov <ap@nypop.com>
2558 - http://bugzilla.opendarwin.org/show_bug.cgi?id=5499
2559 Page reload does not send any cache control headers
2561 * WebView/WebFrame.m:
2562 (-[WebFrame _addExtraFieldsToRequest:mainResource:alwaysFromRequest:]): Set a proper Cache-Control header for
2564 (-[WebFrame loadRequest:]): Reset loadType to WebFrameLoadTypeStandard (after a reload, it stayed at
2565 WebFrameLoadTypeReload, so _addExtraFieldsToRequest erroneously added a Cache-Control header to them).
2567 2006-06-19 John Sullivan <sullivan@apple.com>
2571 - added mechanism to notify UIDelegate when part of the webview is redrawn. For now, it only
2572 works for HTML views.
2574 * WebView/WebUIDelegatePrivate.h:
2575 Define a new UIDelegate method -webView:didDrawRect:
2576 * WebView/WebHTMLView.m:
2577 (-[WebView drawSingleRect:]):
2578 Call through to UIDelegate if it implements that method. I tested that this does not impact PLT numbers
2579 in the case where the delegate implements the method but does nothing in it.
2581 2006-06-19 Mitz Pettel <opendarwin.org@mitzpettel.com>
2585 - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9452
2586 Assertion failure in -[WebFramePrivate setProvisionalDataSource:]
2588 * WebView/WebFrame.m:
2589 (-[WebFrame _checkLoadCompleteForThisFrame]): Avoid re-entering the delegate's
2590 -[webView:didFailProvisionalLoadWithError:forFrame].
2592 2006-06-18 Mitz Pettel <opendarwin.org@mitzpettel.com>
2596 - http://bugzilla.opendarwin.org/show_bug.cgi?id=9479
2597 Disassociate the inspector from the frame when it detaches from its parent
2599 * WebInspector/WebInspector.m:
2600 (-[NSWindow setWebFrame:]): Added code to (de)register with the WebFrame
2601 the inspector is (no longer) targeting.
2602 (-[WebInspector _webFrameDetached:]): Added. Moved the code that was previously
2603 in -[inspectedWindowWillClose:] here. This is called by the WebFrame when it
2604 is detached from its parent.
2605 * WebInspector/WebInspectorInternal.h:
2606 * WebView/WebFrame.m:
2607 (-[WebFramePrivate dealloc]):
2608 (-[WebFrame _detachFromParent]): Added code to notify all registered inspectors
2609 that the WebFrame is detaching.
2610 (-[WebFrame _addInspector:]): Added.
2611 (-[WebFrame _removeInspector:]): Added.
2612 * WebView/WebFrameInternal.h:
2614 2006-06-18 Anders Carlsson <acarlsson@apple.com>
2618 * WebCoreSupport/WebFrameBridge.m:
2619 (-[WebFrameBridge shouldInterruptJavaScript]):
2620 Ask the UI delegate if the script should be interrupted.
2622 * WebView/WebUIDelegatePrivate.h:
2623 Declare webViewShouldInterruptJavaScript: delegate method
2625 2006-06-17 Mitz Pettel <opendarwin.org@mitzpettel.com>
2629 - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9466
2630 Assertion failure when dragging an image from the document into Safari's address bar
2632 * WebView/WebFrameView.m:
2633 (-[WebFrameView _setDocumentView:]): Reset the WebView's initiatedDrag flag
2634 when the document view is changed.
2635 * WebView/WebHTMLView.m:
2636 (-[WebHTMLView draggedImage:endedAt:operation:]): Changed the ASSERT to allow
2637 for drags that end after the view has been removed from the WebView.
2639 2006-06-16 Timothy Hatcher <timothy@apple.com>
2643 Exposes a distributed objects server for clients to register for script debugger calls.
2644 For preformance concerns this is disabled by default, you will need to enable this per application.
2645 To enable for Safari do this: defaults write com.apple.Safari WebKitScriptDebuggerEnabled -bool true
2647 Clients will need to listen to the following distributed notification to discover servers:
2648 WebScriptDebugServerDidLoadNotification
2650 To discover servers that previously loaded before the client, the client needs to send the following notification:
2651 WebScriptDebugServerQueryNotification
2653 All servers will reply with the WebScriptDebugServerQueryReplyNotification notification that contains the
2654 registered server connection name to use with distributed objects.
2656 * DefaultDelegates/WebScriptDebugServer.h: Added.
2657 * DefaultDelegates/WebScriptDebugServer.m: Added.
2658 (+[WebScriptDebugServer sharedScriptDebugServer]):
2659 (-[WebScriptDebugServer init]):
2660 (-[WebScriptDebugServer dealloc]):
2661 (-[WebScriptDebugServer serverQuery:]):
2662 (-[WebScriptDebugServer listenerConnectionDidDie:]):
2663 (-[WebScriptDebugServer addListener:]):
2664 (-[WebScriptDebugServer removeListener:]):
2665 (-[WebScriptDebugServer webView:didParseSource:fromURL:sourceId:forWebFrame:]):
2666 (-[WebScriptDebugServer webView:didEnterCallFrame:sourceId:line:forWebFrame:]):
2667 (-[WebScriptDebugServer webView:willExecuteStatement:sourceId:line:forWebFrame:]):
2668 (-[WebScriptDebugServer webView:willLeaveCallFrame:sourceId:line:forWebFrame:]):
2669 * DefaultDelegates/WebScriptDebugServerPrivate.h: Added.
2670 * WebCoreSupport/WebFrameBridge.m:
2671 (-[WebFrameBridge windowObjectCleared]):
2673 * WebKit.xcodeproj/project.pbxproj:
2674 * WebView/WebScriptDebugDelegate.m:
2675 (-[WebScriptCallFrame parsedSource:fromURL:sourceId:]):
2676 (-[WebScriptCallFrame enteredFrame:sourceId:line:]):
2677 (-[WebScriptCallFrame hitStatement:sourceId:line:]):
2678 (-[WebScriptCallFrame leavingFrame:sourceId:line:]):
2679 * WebView/WebView.m:
2680 (+[WebView _developerExtrasEnabled]):
2681 (+[WebView _scriptDebuggerEnabled]):
2682 (-[WebView _menuForElement:defaultItems:]):
2683 (-[WebView _commonInitializationWithFrameName:groupName:]):
2684 * WebView/WebViewPrivate.h:
2686 2006-06-16 Adele Peterson <adele@apple.com>
2690 Added initialization for WKDrawBezeledTextArea.
2692 * WebCoreSupport/WebSystemInterface.m:
2693 (InitWebCoreSystemInterface):
2695 2006-06-15 Timothy Hatcher <timothy@apple.com>
2697 Reviewed by Geoff and Darin.
2699 Prefer the DWARF debugging symbols format for use in Xcode 2.3.
2701 * WebKit.xcodeproj/project.pbxproj:
2703 2006-06-15 John Sullivan <sullivan@apple.com>
2707 Fixed bug in WebKit support for computing but not highlighting rects for text matches.
2709 * WebView/WebView.m:
2710 (-[WebView rectsForTextMatches]):
2711 leave out empty rects, and convert rects to WebView coordinates. Since this makes a batch
2712 of autoreleased NSValue objects, use a local autorelease pool
2714 2006-02-11 David Kilzer <ddkilzer@kilzer.net>
2716 Reviewed by John Sullivan.
2718 * Plugins/WebPluginController.m:
2719 (-[WebPluginController _cancelOutstandingChecks]):
2720 add nil check before calling CFSetApplyFunction
2722 2006-06-14 Levi Weintraub <lweintraub@apple.com>
2726 <http://bugzilla.opendarwin.org/show_bug.cgi?id=7580>
2727 TinyMCE: Implement execCommand(formatBlock, ...)
2729 * English.lproj/Localizable.strings:
2730 * WebCoreSupport/WebFrameBridge.m:
2731 (-[WebFrameBridge nameForUndoAction:]):
2733 2006-06-14 Tim Omernick <timo@apple.com>
2735 Reviewed by John Sullivan.
2737 <rdar://problem/4577988> GC: WebPluginController uses inefficient resurrecting enumeration
2739 * Plugins/WebPluginController.m:
2740 (cancelOutstandingCheck):
2741 (-[WebPluginController _cancelOutstandingChecks]):
2742 Use CFSetApplyFunction() instead of an enumerator to guard against modifications to the set while enumerating.
2744 2006-06-13 John Sullivan <sullivan@apple.com>
2748 - fixed <rdar://problem/4498606> REGRESSION (417.8-420+): 3 missing items (but extra separators) in context
2749 menu in Mail message body
2751 * WebView/WebView.m:
2752 (-[WebView _menuForElement:defaultItems:]):
2753 Add special-case hackery to recover from this SPI -> API mismatch.
2755 2006-06-13 Tim Omernick <timo@apple.com>
2759 Fixed a recently-introduced assertion failure when handling 404 errors.
2761 * WebView/WebDataSource.m:
2762 (-[WebDataSource _handleFallbackContent]):
2763 Use the -[WebFrame _bridge] instead of -[WebDataSource _bridge]. The former is not valid until the data
2764 source has been committed, which is not the case when the resource fails to load. The latter is safe to call
2765 at any time. This broke last night with Maciej's change to WebFrameResourceLoader. The old code used to
2766 call -[WebFrame _bridge].
2768 2006-06-13 Anders Carlsson <acarlsson@apple.com>
2772 http://bugzilla.opendarwin.org/show_bug.cgi?id=9406
2773 REGRESSION: fix for bug 9390 broke two layout tests
2775 * Plugins/WebPluginDatabase.h:
2776 (-[WebPluginDatabase isMIMETypeRegistered:]):
2777 Add new function isMIMETypeRegistered which returns whether a given MIME type has a
2780 * Plugins/WebPluginDatabase.m:
2781 (-[WebPluginDatabase init]):
2782 Init set of registered MIME types.
2784 (-[WebPluginDatabase refresh]):
2785 Add and remove MIME types from the set of registered MIME types when registering and unregistering
2788 (-[WebPluginDatabase dealloc]):
2789 Release set of registered MIME types.
2791 * WebCoreSupport/WebFrameBridge.m:
2792 (-[WebFrameBridge determineObjectFromMIMEType:URL:]):
2793 Use isMIMETypeRegistered here.
2795 2006-06-12 Maciej Stachowiak <mjs@apple.com>
2797 - fix for cocoa exception (whoops)
2799 * WebView/WebView.m:
2800 (+[WebView _generatedMIMETypeForURLScheme:]): put this back
2801 * WebView/WebDataSource.m:
2802 (+[WebDataSource _generatedMIMETypeForURLScheme:]): call WebView
2804 2006-06-12 Maciej Stachowiak <mjs@apple.com>
2808 - remove use of WebView and related from WebMainResourceLoader
2810 * WebKit.xcodeproj/project.pbxproj:
2811 * WebView/WebDataSource.m:
2812 (+[WebDataSource _generatedMIMETypeForURLScheme:]):
2813 (+[WebDataSource _representationExistsForURLScheme:]):
2814 (+[WebDataSource _canShowMIMEType:]):
2815 (-[WebDataSource _handleFallbackContent]):
2816 (-[WebDataSource _decidePolicyForMIMEType:decisionListener:]):
2817 * WebView/WebDataSourceInternal.h:
2818 * WebView/WebFrame.m:
2819 (-[WebFrame _isMainFrame]):
2820 * WebView/WebFrameInternal.h:
2821 * WebView/WebMainResourceLoader.m:
2822 (-[WebMainResourceLoader willSendRequest:redirectResponse:]):
2823 (-[WebMainResourceLoader continueAfterContentPolicy:response:]):
2824 (-[WebMainResourceLoader checkContentPolicyForResponse:]):
2825 (-[WebMainResourceLoader loadWithRequestNow:]):
2826 * WebView/WebView.m:
2828 2006-06-12 Tim Omernick <timo@apple.com>
2832 <rdar://problem/4526052> intermittent assertion failure in -[WebBasePluginPackage dealloc] running layout tests
2834 * Plugins/WebNetscapePluginPackage.m:
2835 (-[WebNetscapePluginPackage _initWithPath:]):
2836 Renamed from -initWithPath:. Instead of releasing/deallocating self on error, return NO.
2837 (-[WebNetscapePluginPackage initWithPath:]):
2838 Call the new -_initWithPath:. If it returns NO, unload the plugin package before deallocating it.
2840 2006-06-11 Darin Adler <darin@apple.com>
2842 - try to fix Windows build
2844 * COM/WebKitDLL.cpp: (loadResourceIntoArray): Use Vector<char> instead of
2845 DeprecatedByteArray.
2847 2006-06-11 Mitz Pettel <opendarwin.org@mitzpettel.com>
2851 - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=8672
2852 Red outline from web inspector reappears after inspector is closed
2854 * WebInspector/WebInspector.m:
2855 (-[NSWindow windowWillClose:]): Added a call to setWebFrame to avoid further
2856 load progress notifications.
2857 (-[NSWindow setWebFrame:]): Changed to resign the WebView's hostWindow rather
2858 than its window for close notifications, to avoid resigning from all windows' close
2859 notifications (including the inspector window's) when the WebView is in a hidden tab.
2860 Also changed to prevent highlighting the initial focused node.
2862 2006-06-11 Anders Carlsson <acarlsson@apple.com>
2866 http://bugzilla.opendarwin.org/show_bug.cgi?id=9390
2867 Move full-frame plugins to WebCore
2869 * Plugins/WebBaseNetscapePluginStream.h:
2870 * Plugins/WebBaseNetscapePluginStream.m:
2871 (-[WebBaseNetscapePluginStream instance]):
2872 Add instance method which returns the plugin instance.
2874 * Plugins/WebBasePluginPackage.h:
2875 Add WebPluginManualLoader protocol
2877 * Plugins/WebNetscapePluginDocumentView.h: Removed.
2878 * Plugins/WebNetscapePluginDocumentView.m: Removed.
2880 * Plugins/WebNetscapePluginEmbeddedView.h:
2881 * Plugins/WebNetscapePluginEmbeddedView.m:
2882 (-[WebNetscapePluginEmbeddedView initWithFrame:plugin:URL:baseURL:MIMEType:attributeKeys:attributeValues:loadManually:]):
2883 (-[WebNetscapePluginEmbeddedView dealloc]):
2884 (-[WebNetscapePluginEmbeddedView didStart]):
2885 (-[WebNetscapePluginEmbeddedView pluginView:receivedResponse:]):
2886 (-[WebNetscapePluginEmbeddedView pluginView:receivedData:]):
2887 (-[WebNetscapePluginEmbeddedView pluginView:receivedError:]):
2888 (-[WebNetscapePluginEmbeddedView pluginViewFinishedLoading:]):
2889 (-[WebNetscapePluginEmbeddedView redeliverStream]):
2890 Make WebNetscapePluginEmbeddedView support the WebPluginManualLoader protocol. It creates a plugin stream and feeds the
2891 data manually. Much of this code has been copied from WebNetscapePluginRepresentation.
2893 * Plugins/WebNetscapePluginRepresentation.h: Removed.
2894 * Plugins/WebNetscapePluginRepresentation.m: Removed.
2896 * Plugins/WebPluginController.h:
2897 * Plugins/WebPluginController.m:
2898 (-[WebPluginController pluginView:receivedResponse:]):
2899 (-[WebPluginController pluginView:receivedData:]):
2900 (-[WebPluginController pluginView:receivedError:]):
2901 (-[WebPluginController pluginViewFinishedLoading:]):
2902 Make WebPluginController support the WebPluginManualLoader protocol so it can feed data manually to WebKit plugins.
2904 * Plugins/WebPluginDatabase.m:
2905 (-[WebPluginDatabase refresh]):
2906 Use WebHTMLView and WebHTMLRepresentation when registering/unregistering plug-in MIME types.
2908 * Plugins/WebPluginDocumentView.h: Removed.
2909 * Plugins/WebPluginDocumentView.m: Removed.
2911 * WebCoreSupport/WebFrameBridge.m:
2912 (-[WebFrameBridge pluginViewWithPackage:attributeNames:attributeValues:baseURL:DOMElement:loadManually:]):
2913 (-[WebFrameBridge viewForPluginWithURL:attributeNames:attributeValues:MIMEType:DOMElement:loadManually:]):
2914 Add loadManually argument.
2916 (-[WebFrameBridge redirectDataToPlugin:]):
2917 Call down to the HTML representation.
2919 (-[WebFrameBridge viewForJavaAppletWithFrame:attributeNames:attributeValues:baseURL:DOMElement:]):
2920 Pass NO to loadManually.
2922 (-[WebFrameBridge determineObjectFromMIMEType:URL:]):
2923 Explicitly check if the MIME type is supported by a plug-in instead of checking the view class.
2925 * WebCoreSupport/WebViewFactory.m:
2926 (-[WebViewFactory pluginSupportsMIMEType:]):
2927 New function which returns whether any plugins support a given MIME type.
2929 * WebKit.xcodeproj/project.pbxproj:
2930 Update for removed files.
2932 * WebView/WebFrame.m:
2933 (-[WebFrame _reloadForPluginChanges]):
2934 Remove view type checks.
2936 (-[WebFrame _recursive_pauseNullEventsForAllNetscapePlugins]):
2937 (-[WebFrame _recursive_resumeNullEventsForAllNetscapePlugins]):
2938 Remove FIXME comments.
2940 * WebView/WebHTMLRepresentation.m:
2941 (-[WebHTMLRepresentation _redirectDataToManualLoader:forPluginView:]):
2942 New function which redirects incoming data to a manual loader.
2944 (-[WebHTMLRepresentation receivedData:withDataSource:]):
2945 (-[WebHTMLRepresentation receivedError:withDataSource:]):
2946 (-[WebHTMLRepresentation finishedLoadingWithDataSource:]):
2947 Optionally redirect incoming data.
2949 * WebView/WebHTMLRepresentationPrivate.h:
2951 2006-06-09 John Sullivan <sullivan@apple.com>
2953 Reviewed by Tim Omernick and Dave Hyatt.
2955 WebKit support for computing but not highlighting rects for text matches.
2957 * WebView/WebHTMLViewPrivate.h:
2958 added markedTextMatchesAreHighlighted/setMarkedTextMatchesAreHighlighted and
2959 rectsForTextMatches, and renamed related methods for clarity/consistency
2960 * WebView/WebHTMLView.m:
2961 (-[WebHTMLView markAllMatchesForText:caseSensitive:]):
2962 renamed, calls similarly-renamed method
2963 (-[WebHTMLView setMarkedTextMatchesAreHighlighted:]):
2964 new method, calls through to bridge
2965 (-[WebHTMLView markedTextMatchesAreHighlighted]):
2967 (-[WebHTMLView unmarkAllTextMatches]):
2969 (-[WebHTMLView rectsForTextMatches]):
2970 new method, calls through to bridge
2972 * WebView/WebViewPrivate.h:
2973 added rectsForTextMatches, renamed other methods (and added highlight: parameter)
2974 * WebView/WebView.m:
2975 (-[WebView markAllMatchesForText:caseSensitive:highlight:]):
2976 renamed for clarity/consistency, and now has highlight: parameter, which is passed down
2977 (-[WebView unmarkAllTextMatches]):
2978 renamed for clarity/consistency, and calls similarly-renamed method lower down. diff got
2979 confused with the end of this and the end of the next method.
2980 (-[WebView rectsForTextMatches]):
2981 new method, calls through to WebHTMLView as related methods currently do
2983 2006-06-10 Graham Dennis <Graham.Dennis@gmail.com>
2985 <http://bugzilla.opendarwin.org/show_bug.cgi?id=9384>
2986 WebView's initWithCoder: method does not set useBackForwardList
2989 Reviewed by John Sullivan.
2991 * WebView/WebView.m:
2992 (-[WebView initWithCoder:]):
2993 Make sure that the function variable useBackForwardList is correctly
2994 set, so that the copy in the _private ivar is set.
2996 2006-06-09 David Hyatt <hyatt@apple.com>
2998 Rename updateFocusState to updateActiveState.
3000 * WebView/WebHTMLView.m:
3001 (-[WebHTMLView _updateActiveState]):
3002 (-[WebHTMLView viewDidMoveToWindow]):
3003 (-[WebHTMLView windowDidBecomeKey:]):
3004 (-[WebHTMLView windowDidResignKey:]):
3005 (-[WebHTMLView becomeFirstResponder]):
3006 (-[WebHTMLView resignFirstResponder]):
3007 (-[WebHTMLView _formControlIsBecomingFirstResponder:]):
3008 (-[WebHTMLView _formControlIsResigningFirstResponder:]):
3009 * WebView/WebHTMLViewPrivate.h:
3011 2006-06-09 David Hyatt <hyatt@apple.com>
3013 Rename displaysWithFocusAttributes to isActive.
3017 * WebKit.xcodeproj/project.pbxproj:
3018 * WebView/WebHTMLView.m:
3019 (-[WebHTMLView _updateFocusState]):
3021 2006-06-08 Justin Garcia <justin.garcia@apple.com>
3025 <http://bugzilla.opendarwin.org/show_bug.cgi?id=4468>
3026 Implement execCommand(Insert{Un}OrderedList)
3028 * WebView/WebFrame.m:
3029 (-[WebFrame _findFrameWithSelection]): Removed an assertion
3030 that we only have one frame with a selection.
3031 * WebView/WebView.m:
3032 (-[WebView selectedFrame]): Ditto.
3034 2006-06-08 Timothy Hatcher <timothy@apple.com>
3036 Reviewed by Darin and John.
3038 <rdar://problem/3600734> API: please add a way to turn vertical scrollbar
3039 always on (for Mail, to avoid reflow when typing)
3041 Adds new methods to lock the scrolling mode on WebDynamicScrollBarsView.
3042 Locking the scroll mode prevents WebCore from changing it as needed.
3043 Also adds an SPI on WebView that will lock the "always on" mode
3046 * WebKit.xcodeproj/project.pbxproj:
3047 * WebView/WebDynamicScrollBarsView.h:
3048 * WebView/WebDynamicScrollBarsView.m:
3049 (-[WebDynamicScrollBarsView setAllowsScrolling:]):
3050 (-[WebDynamicScrollBarsView allowsScrolling]):
3051 (-[WebDynamicScrollBarsView setAllowsHorizontalScrolling:]):
3052 (-[WebDynamicScrollBarsView setAllowsVerticalScrolling:]):
3053 (-[WebDynamicScrollBarsView setHorizontalScrollingMode:]):
3054 (-[WebDynamicScrollBarsView setVerticalScrollingMode:]):
3055 (-[WebDynamicScrollBarsView setScrollingMode:]):
3056 (-[WebDynamicScrollBarsView setHorizontalScrollingModeLocked:]):
3057 (-[WebDynamicScrollBarsView setVerticalScrollingModeLocked:]):
3058 (-[WebDynamicScrollBarsView setScrollingModesLocked:]):
3059 (-[WebDynamicScrollBarsView horizontalScrollingModeLocked]):
3060 (-[WebDynamicScrollBarsView verticalScrollingModeLocked]):
3061 * WebView/WebView.m:
3062 (-[WebView setAlwaysShowVerticalScroller:]):
3063 (-[WebView alwaysShowVerticalScroller]):
3064 (-[WebView setAlwaysShowHorizontalScroller:]):
3065 (-[WebView alwaysShowHorizontalScroller]):
3066 * WebView/WebViewPrivate.h:
3068 2006-06-08 Darin Adler <darin@apple.com>
3072 - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=8616
3073 REGRESSION: TinyMCE: Crash on Undo
3075 * WebView/WebHTMLView.m:
3076 (-[WebHTMLView _topHTMLView]): Added.
3077 (-[WebHTMLView _isTopHTMLView]): Added.
3078 (-[WebHTMLView _insideAnotherHTMLView]): Changed to use _topHTMLView.
3079 (-[WebHTMLView _startDraggingImage:at:operation:event:sourceIsDHTML:DHTMLWroteData:]):
3080 Forward to the top HTML view, so that only the top view ever starts a dragging operation.
3081 Change dragging code to not assume that the dragged node is in the current view's document.
3082 Added checks that the node is an element in a couple places and coordinate conversions.
3083 (-[WebHTMLView _mayStartDragAtEventLocation:]): Forward to the top HTML view.
3084 (-[WebHTMLView addMouseMovedObserver]): Change to do nothing when the dataSource field is 0,
3085 since we now use the dataSource field to get to the WebView.
3086 (-[WebHTMLView removeMouseMovedObserver]): Added a comment.
3087 (-[WebHTMLView dragImage:at:offset:event:pasteboard:source:slideBack:]):
3088 Forward to the top HTML view.
3089 (-[WebHTMLView draggingSourceOperationMaskForLocal:]): Assert that it's the top HTML view.
3090 (-[WebHTMLView draggedImage:movedTo:]): Ditto.
3091 (-[WebHTMLView draggedImage:endedAt:operation:]): Ditto.
3092 (-[WebHTMLView namesOfPromisedFilesDroppedAtDestination:]): Ditto.
3093 (-[WebHTMLView _canProcessDragWithDraggingInfo:]): Ditto.
3094 (-[WebHTMLView _isMoveDrag]): Ditto.
3095 (-[WebHTMLView draggingUpdatedWithDraggingInfo:actionMask:]): Ditto.
3096 (-[WebHTMLView draggingCancelledWithDraggingInfo:]): Ditto.
3097 (-[WebHTMLView concludeDragForDraggingInfo:actionMask:]): Ditto. Also added code to work
3098 with the appropriate bridge when receiving a drag. This fixes the problem where the
3099 top level frame got a selection intended for the inner frame; the source of the bug.
3100 (-[WebHTMLView elementAtPoint:allowShadowContent:]): Added code to convert the coordinates
3101 so this works properly when returning an element from an inner frame.
3102 (-[WebHTMLView setDataSource:]): Added a call to addMouseMovedObserver, needed now that
3103 addMouseMovedObserver won't do anything if called when dataSource is nil.
3104 (-[WebHTMLView _delegateDragSourceActionMask]): Forward to the top HTML view.
3106 * WebView/WebView.m:
3107 (-[WebViewPrivate dealloc]): Removed code to release dragCaretBridge since that field
3109 (-[WebView moveDragCaretToPoint:]): Always call the main frame's bridge, since the
3110 drag caret is now a page-level item. Later we'll move it to the page bridge.
3111 (-[WebView removeDragCaret]): Ditto.
3113 2006-06-07 David Hyatt <hyatt@apple.com>
3115 Add support for custom highlighting to WebKit.
3119 * WebCoreSupport/WebFrameBridge.m:
3120 (-[WebFrameBridge paintCustomHighlight:forBox:onLine:behindText:]):
3121 * WebView/WebHTMLView.m:
3122 (-[WebHTMLView _highlighterForType:]):
3123 * WebView/WebHTMLViewInternal.h:
3124 * WebView/WebHTMLViewPrivate.h:
3126 2006-06-07 Adele Peterson <adele@apple.com>
3130 Added resources for missingImage and textAreaResizeCorner.
3132 * COM/WebKitDLL.cpp:
3133 (loadResourceIntoArray): Added. Returns a DeprecatedByteArray with the resource's data.
3134 * WebKit.vcproj/WebKit.rc: Added missing image and resize pngs as resources.
3135 * WebKit.vcproj/WebKit.vcproj: Added pngs.
3136 * WebKit.vcproj/missingImage.png: Added.
3137 * WebKit.vcproj/resource.h: Added entries for pngs.
3138 * WebKit.vcproj/textAreaResizeCorner.png: Added.
3140 2006-06-07 David Hyatt <hyatt@apple.com>
3142 Add SPI for setting and removing custom highlighters.
3146 * WebView/WebHTMLView.m:
3147 (-[WebTextCompleteController dealloc]):
3148 (-[WebHTMLView _setHighlighter:ofType:]):
3149 (-[WebHTMLView _removeHighlighterOfType:]):
3150 * WebView/WebHTMLViewInternal.h:
3151 * WebView/WebHTMLViewPrivate.h:
3153 2006-06-06 Adele Peterson <adele@apple.com>
3158 (WebView::keyPress): Added case for VK_RETURN.
3160 2006-06-06 Anders Carlsson <acarlsson@apple.com>
3164 * WebView/WebFrame.m:
3165 (-[WebFrame _reloadForPluginChanges]):
3166 Don't traverse the view hierarchy looking for plugin views. Instead, just
3167 ask the frame whether it contains any plugins.
3169 2006-06-03 Steve Falkenburg <sfalken@apple.com>
3173 Add implementation of loadHTMLString for Spinneret
3176 (WebFrame::loadHTMLString):
3178 2006-06-02 Steve Falkenburg <sfalken@apple.com>
3182 New hosting for Spinneret to avoid static linking
3185 * COM/Interfaces: Added.
3186 * COM/Interfaces/DOMCSS.idl: Added.
3187 * COM/Interfaces/DOMCore.idl: Added.
3188 * COM/Interfaces/DOMHTML.idl: Added.
3189 * COM/Interfaces/DOMRange.idl: Added.
3190 * COM/Interfaces/IWebArchive.idl: Added.
3191 * COM/Interfaces/IWebAttributedString.idl: Added.
3192 * COM/Interfaces/IWebBackForwardList.idl: Added.
3193 * COM/Interfaces/IWebDataSource.idl: Added.
3194 * COM/Interfaces/IWebDocument.idl: Added.
3195 * COM/Interfaces/IWebDownload.idl: Added.
3196 * COM/Interfaces/IWebEditingDelegate.idl: Added.
3197 * COM/Interfaces/IWebError.idl: Added.
3198 * COM/Interfaces/IWebFrame.idl: Added.
3199 * COM/Interfaces/IWebFrameLoadDelegate.idl: Added.
3200 * COM/Interfaces/IWebFrameView.idl: Added.
3201 * COM/Interfaces/IWebHistoryItem.idl: Added.
3202 * COM/Interfaces/IWebIconDatabase.idl: Added.
3203 * COM/Interfaces/IWebImage.idl: Added.
3204 * COM/Interfaces/IWebMutableURLRequest.idl: Added.
3205 * COM/Interfaces/IWebNotification.idl: Added.
3206 * COM/Interfaces/IWebPolicyDelegate.idl: Added.
3207 * COM/Interfaces/IWebPreferences.idl: Added.
3208 * COM/Interfaces/IWebResource.idl: Added.
3209 * COM/Interfaces/IWebResourceLoadDelegate.idl: Added.
3210 * COM/Interfaces/IWebScriptObject.idl: Added.
3211 * COM/Interfaces/IWebUIDelegate.idl: Added.
3212 * COM/Interfaces/IWebURLAuthenticationChallenge.idl: Added.
3213 * COM/Interfaces/IWebURLRequest.idl: Added.
3214 * COM/Interfaces/IWebURLResponse.idl: Added.
3215 * COM/Interfaces/IWebUndoManager.idl: Added.
3216 * COM/Interfaces/IWebView.idl: Added.
3217 * COM/Interfaces/WebKit.idl: Added.
3218 * COM/WebBackForwardList.cpp: Added.
3219 (WebBackForwardList::WebBackForwardList):
3220 (WebBackForwardList::~WebBackForwardList):
3221 (WebBackForwardList::createInstance):
3222 (WebBackForwardList::QueryInterface):
3223 (WebBackForwardList::AddRef):
3224 (WebBackForwardList::Release):
3225 (WebBackForwardList::addItem):
3226 (WebBackForwardList::goBack):
3227 (WebBackForwardList::goForward):
3228 (WebBackForwardList::goToItem):
3229 (WebBackForwardList::backItem):
3230 (WebBackForwardList::currentItem):
3231 (WebBackForwardList::forwardItem):
3232 (WebBackForwardList::backListWithLimit):
3233 (WebBackForwardList::forwardListWithLimit):
3234 (WebBackForwardList::capacity):
3235 (WebBackForwardList::setCapacity):
3236 (WebBackForwardList::backListCount):
3237 (WebBackForwardList::forwardListCount):
3238 (WebBackForwardList::containsItem):
3239 (WebBackForwardList::itemAtIndex):
3240 (WebBackForwardList::setPageCacheSize):
3241 (WebBackForwardList::pageCacheSize):
3242 * COM/WebBackForwardList.h: Added.
3243 * COM/WebDataSource.cpp: Added.
3244 (WebDataSource::WebDataSource):
3245 (WebDataSource::~WebDataSource):
3246 (WebDataSource::createInstance):
3247 (WebDataSource::QueryInterface):
3248 (WebDataSource::AddRef):
3249 (WebDataSource::Release):
3250 (WebDataSource::initWithRequest):
3251 (WebDataSource::data):
3252 (WebDataSource::representation):
3253 (WebDataSource::webFrame):
3254 (WebDataSource::initialRequest):
3255 (WebDataSource::request):
3256 (WebDataSource::response):
3257 (WebDataSource::textEncodingName):
3258 (WebDataSource::isLoading):
3259 (WebDataSource::pageTitle):
3260 (WebDataSource::unreachableURL):
3261 (WebDataSource::webArchive):
3262 (WebDataSource::mainResource):
3263 (WebDataSource::subresources):
3264 (WebDataSource::subresourceForURL):
3265 (WebDataSource::addSubresource):
3266 * COM/WebDataSource.h: Added.
3267 * COM/WebFrame.cpp: Added.
3268 (WebFrame::WebFramePrivate::WebFramePrivate):
3269 (WebFrame::WebFramePrivate::~WebFramePrivate):
3270 (WebFrame::WebFrame):
3271 (WebFrame::~WebFrame):
3272 (WebFrame::createInstance):
3273 (WebFrame::QueryInterface):
3275 (WebFrame::Release):
3276 (WebFrame::initWithName):
3278 (WebFrame::webView):
3279 (WebFrame::frameView):
3280 (WebFrame::DOMDocument):
3281 (WebFrame::frameElement):
3282 (WebFrame::loadRequest):
3283 (WebFrame::loadData):
3284 (WebFrame::loadHTMLString):
3285 (WebFrame::loadAlternateHTMLString):
3286 (WebFrame::loadArchive):
3287 (WebFrame::dataSource):
3288 (WebFrame::provisionalDataSource):
3289 (WebFrame::stopLoading):
3291 (WebFrame::findFrameNamed):
3292 (WebFrame::parentFrame):
3293 (WebFrame::childFrames):
3296 (WebFrame::loadDataSource):
3297 (WebFrame::loading):
3298 (WebFrame::goToItem):
3299 (WebFrame::loadItem):
3300 (WebSystemMainMemory):
3301 (WebFrame::getObjectCacheSize):
3302 (WebFrame::receivedRedirect):
3303 (WebFrame::receivedResponse):
3304 (WebFrame::receivedData):
3305 (WebFrame::receivedAllData):
3306 (WebFrame::openURL):
3307 (WebFrame::submitForm):
3308 (WebFrame::setTitle):
3309 (WebFrame::setStatusText):
3310 * COM/WebFrame.h: Added.
3311 * COM/WebHistoryItem.cpp: Added.
3312 (WebHistoryItem::WebHistoryItem):
3313 (WebHistoryItem::~WebHistoryItem):
3314 (WebHistoryItem::createInstance):
3315 (WebHistoryItem::QueryInterface):
3316 (WebHistoryItem::AddRef):
3317 (WebHistoryItem::Release):
3318 (WebHistoryItem::initWithURLString):
3319 (WebHistoryItem::originalURLString):
3320 (WebHistoryItem::URLString):
3321 (WebHistoryItem::title):
3322 (WebHistoryItem::lastVisitedTimeInterval):
3323 (WebHistoryItem::setAlternateTitle):
3324 (WebHistoryItem::alternateTitle):
3325 (WebHistoryItem::icon):
3326 * COM/WebHistoryItem.h: Added.
3327 * COM/WebIconDatabase.cpp: Added.
3328 (WebIconDatabase::WebIconDatabase):
3329 (WebIconDatabase::~WebIconDatabase):
3330 (WebIconDatabase::createInstance):
3331 (WebIconDatabase::QueryInterface):
3332 (WebIconDatabase::AddRef):
3333 (WebIconDatabase::Release):
3334 (WebIconDatabase::sharedIconDatabase):
3335 (WebIconDatabase::iconForURL):
3336 (WebIconDatabase::defaultIconWithSize):
3337 (WebIconDatabase::retainIconForURL):
3338 (WebIconDatabase::releaseIconForURL):
3339 (WebIconDatabase::delayDatabaseCleanup):
3340 (WebIconDatabase::allowDatabaseCleanup):
3341 * COM/WebIconDatabase.h: Added.
3342 * COM/WebKitClassFactory.cpp: Added.
3343 (WebKitClassFactory::WebKitClassFactory):
3344 (WebKitClassFactory::~WebKitClassFactory):
3345 (WebKitClassFactory::QueryInterface):
3346 (WebKitClassFactory::AddRef):
3347 (WebKitClassFactory::Release):
3348 (WebKitClassFactory::CreateInstance):
3349 (WebKitClassFactory::LockServer):
3350 * COM/WebKitClassFactory.h: Added.
3351 * COM/WebKitDLL.cpp: Added.
3353 (DllGetClassObject):
3355 (DllUnregisterServer):
3356 (DllRegisterServer):
3357 * COM/WebKitDLL.h: Added.
3358 * COM/WebMutableURLRequest.cpp: Added.
3359 (WebMutableURLRequest::WebMutableURLRequest):
3360 (WebMutableURLRequest::~WebMutableURLRequest):
3361 (WebMutableURLRequest::createInstance):
3362 (WebMutableURLRequest::QueryInterface):
3363 (WebMutableURLRequest::AddRef):
3364 (WebMutableURLRequest::Release):
3365 (WebMutableURLRequest::requestWithURL):
3366 (WebMutableURLRequest::allHTTPHeaderFields):
3367 (WebMutableURLRequest::cachePolicy):
3368 (WebMutableURLRequest::HTTPBody):
3369 (WebMutableURLRequest::HTTPBodyStream):
3370 (WebMutableURLRequest::HTTPMethod):
3371 (WebMutableURLRequest::HTTPShouldHandleCookies):
3372 (WebMutableURLRequest::initWithURL):
3373 (WebMutableURLRequest::mainDocumentURL):
3374 (WebMutableURLRequest::timeoutInterval):
3375 (WebMutableURLRequest::URL):
3376 (WebMutableURLRequest::valueForHTTPHeaderField):
3377 (WebMutableURLRequest::addValue):
3378 (WebMutableURLRequest::setAllHTTPHeaderFields):
3379 (WebMutableURLRequest::setCachePolicy):
3380 (WebMutableURLRequest::setHTTPBody):
3381 (WebMutableURLRequest::setHTTPBodyStream):
3382 (WebMutableURLRequest::setHTTPMethod):
3383 (WebMutableURLRequest::setHTTPShouldHandleCookies):
3384 (WebMutableURLRequest::setMainDocumentURL):
3385 (WebMutableURLRequest::setTimeoutInterval):
3386 (WebMutableURLRequest::setURL):
3387 (WebMutableURLRequest::setValue):
3388 (WebMutableURLRequest::setFormData):
3389 (WebMutableURLRequest::formData):
3390 * COM/WebMutableURLRequest.h: Added.
3391 * COM/WebView.cpp: Added.
3393 (WebView::~WebView):
3394 (WebView::createInstance):
3395 (WebView::mouseMoved):
3396 (WebView::mouseDown):
3398 (WebView::mouseDoubleClick):
3399 (WebView::keyPress):
3402 (calculateScrollDelta):
3403 (scrollMessageForKey):
3404 (WebView::goToItem):
3405 (WebView::QueryInterface):
3408 (WebView::canShowMIMEType):
3409 (WebView::canShowMIMETypeAsHTML):
3410 (WebView::MIMETypesShownAsHTML):
3411 (WebView::setMIMETypesShownAsHTML):
3412 (WebView::URLFromPasteboard):
3413 (WebView::URLTitleFromPasteboard):
3414 (WebView::initWithFrame):
3415 (WebView::setUIDelegate):
3416 (WebView::uiDelegate):
3417 (WebView::setResourceLoadDelegate):
3418 (WebView::resourceLoadDelegate):
3419 (WebView::setDownloadDelegate):
3420 (WebView::downloadDelegate):
3421 (WebView::setFrameLoadDelegate):
3422 (WebView::frameLoadDelegate):
3423 (WebView::setPolicyDelegate):
3424 (WebView::policyDelegate):
3425 (WebView::mainFrame):
3426 (WebView::backForwardList):
3427 (WebView::setMaintainsBackForwardList):
3429 (WebView::goForward):
3430 (WebView::goToBackForwardItem):
3431 (WebView::setTextSizeMultiplier):
3432 (WebView::textSizeMultiplier):
3433 (WebView::setApplicationNameForUserAgent):
3434 (WebView::applicationNameForUserAgent):
3435 (WebView::setCustomUserAgent):
3436 (WebView::customUserAgent):
3437 (WebView::userAgentForURL):
3438 (WebView::supportsTextEncoding):
3439 (WebView::setCustomTextEncodingName):
3440 (WebView::customTextEncodingName):
3441 (WebView::setMediaStyle):
3442 (WebView::mediaStyle):
3443 (WebView::stringByEvaluatingJavaScriptFromString):
3444 (WebView::windowScriptObject):
3445 (WebView::setPreferences):
3446 (WebView::preferences):
3447 (WebView::setPreferencesIdentifier):
3448 (WebView::preferencesIdentifier):
3449 (WebView::setHostWindow):
3450 (WebView::hostWindow):
3451 (WebView::searchFor):
3452 (WebView::registerViewClass):
3453 (WebView::takeStringURLFrom):
3454 (WebView::stopLoading):
3456 (WebView::canGoBack):
3457 (WebView::canGoForward):
3458 (WebView::canMakeTextLarger):
3459 (WebView::makeTextLarger):
3460 (WebView::canMakeTextSmaller):
3461 (WebView::makeTextSmaller):
3462 (WebView::computedStyleForElement):
3463 (WebView::editableDOMRangeForPoint):
3464 (WebView::setSelectedDOMRange):
3465 (WebView::selectedDOMRange):
3466 (WebView::selectionAffinity):
3467 (WebView::setEditable):
3468 (WebView::isEditable):
3469 (WebView::setTypingStyle):
3470 (WebView::typingStyle):
3471 (WebView::setSmartInsertDeleteEnabled):
3472 (WebView::smartInsertDeleteEnabled):
3473 (WebView::setContinuousSpellCheckingEnabled):
3474 (WebView::isContinuousSpellCheckingEnabled):
3475 (WebView::spellCheckerDocumentTag):
3476 (WebView::undoManager):
3477 (WebView::setEditingDelegate):
3478 (WebView::editingDelegate):
3479 (WebView::styleDeclarationWithText):
3480 (WebView::replaceSelectionWithNode):
3481 (WebView::replaceSelectionWithText):
3482 (WebView::replaceSelectionWithMarkupString):
3483 (WebView::replaceSelectionWithArchive):
3484 (WebView::deleteSelection):
3485 (WebView::applyStyle):
3489 (WebView::copyFont):
3490 (WebView::pasteFont):
3492 (WebView::pasteAsPlainText):
3493 (WebView::pasteAsRichText):
3494 (WebView::changeFont):
3495 (WebView::changeAttributes):
3496 (WebView::changeDocumentBackgroundColor):
3497 (WebView::changeColor):
3498 (WebView::alignCenter):
3499 (WebView::alignJustified):
3500 (WebView::alignLeft):
3501 (WebView::alignRight):
3502 (WebView::checkSpelling):
3503 (WebView::showGuessPanel):
3504 (WebView::performFindPanelAction):
3505 (WebView::startSpeaking):
3506 (WebView::stopSpeaking):
3507 (WebView::viewWindow):
3508 * COM/WebView.h: Added.
3509 * WebKit.vcproj: Added.
3510 * WebKit.vcproj/Interfaces.vcproj: Added.
3511 * WebKit.vcproj/WebKit.def: Added.
3512 * WebKit.vcproj/WebKit.rc: Added.
3513 * WebKit.vcproj/WebKit.sln: Added.
3514 * WebKit.vcproj/WebKit.vcproj: Added.
3515 * WebKit.vcproj/WebKitGUID.vcproj: Added.
3516 * WebKit.vcproj/autoversion.h: Added.
3517 * WebKit.vcproj/resource.h: Added.