Add a mechanism to store and retrieve preferences for the Web Inspector.
[WebKit-https.git] / WebKit / mac / ChangeLog
1 2008-10-24  Timothy Hatcher  <timothy@apple.com>
2
3         Implement new InspectorClient methods to work with Settings.
4
5         https://bugs.webkit.org/show_bug.cgi?id=21856
6
7         Reviewed by Darin Adler.
8
9         * WebCoreSupport/WebInspectorClient.h: Add the new methods and
10         guard the ObjC parts of the header.
11
12 2008-10-24  Darin Adler  <darin@apple.com>
13
14         - finish rolling out https://bugs.webkit.org/show_bug.cgi?id=21732
15
16         * WebView/WebFrame.mm:
17         (-[WebFrame _stringByEvaluatingJavaScriptFromString:forceUserGesture:]):
18         * WebView/WebScriptDebugDelegate.mm:
19         (-[WebScriptCallFrame _convertValueToObjcValue:]):
20         (-[WebScriptCallFrame exception]):
21         (-[WebScriptCallFrame evaluateWebScript:]):
22         * WebView/WebView.mm:
23         (aeDescFromJSValue):
24         (-[WebView aeDescByEvaluatingJavaScriptFromString:]):
25         Use JSValue* instead of JSValuePtr.
26
27 2008-10-23  Mark Rowe  <mrowe@apple.com>
28
29         Build fix.
30
31         * Misc/WebKitErrors.m:
32         (-[NSError _initWithPluginErrorCode:contentURL:pluginPageURL:pluginName:MIMEType:]):
33
34 2008-10-20  Sam Weinig  <sam@webkit.org>
35
36         Reviewed by Anders Carlsson.
37
38         Remove FrameLoaderClient::detachedFromParent4.  It is no longer used by any port.
39
40         * WebCoreSupport/WebFrameLoaderClient.h:
41         * WebCoreSupport/WebFrameLoaderClient.mm:
42
43 2008-10-20  Alexey Proskuryakov  <ap@webkit.org>
44
45         Reviewed by Oliver Hunt.
46
47         <rdar://problem/6277777> REGRESSION (r36954): XMLHttpRequest not working when
48         certain WebView delegate actions are taken
49
50         * WebView/WebFrame.mm: (-[WebFrame _attachScriptDebugger]): Don't accidentally create
51         a window shell if there is none yet.
52
53 2008-10-19  Darin Adler  <darin@apple.com>
54
55         Reviewed by Oliver Hunt.
56
57         - next step of https://bugs.webkit.org/show_bug.cgi?id=21732
58           improve performance by eliminating JSValue as a base class for JSCell
59
60         Remove most uses of JSValue, which will be removed in a future patch.
61
62         * WebView/WebFrame.mm:
63         (-[WebFrame _stringByEvaluatingJavaScriptFromString:forceUserGesture:]):
64         Use JSValuePtr instead of JSValue.
65         * WebView/WebScriptDebugger.h: Removed declaration of JSValue.
66
67 2008-10-18  Darin Adler  <darin@apple.com>
68
69         Reviewed by Oliver Hunt.
70
71         - next step of https://bugs.webkit.org/show_bug.cgi?id=21732
72           improve performance by eliminating JSValue as a base class for JSCell
73
74         Tweak a little more to get closer to where we can make JSValuePtr a class.
75
76         * WebView/WebScriptDebugDelegate.mm:
77         (-[WebScriptCallFrame _convertValueToObjcValue:]): Use JSValuePtr.
78         (-[WebScriptCallFrame exception]): Ditto.
79         (-[WebScriptCallFrame evaluateWebScript:]): Ditto. And noValue.
80         * WebView/WebScriptDebugger.mm:
81         (WebScriptDebugger::WebScriptDebugger): Use new DebuggerCallFrame
82         constructor that doesn't require explicitly passing an exception.
83         * WebView/WebView.mm:
84         (aeDescFromJSValue): Use JSValuePtr.
85         (-[WebView aeDescByEvaluatingJavaScriptFromString:]): Ditto.
86
87 2008-10-18  Dan Bernstein  <mitz@apple.com>
88
89         Reviewed by Sam Weinig.
90
91         - WebKit/mac part of https://bugs.webkit.org/show_bug.cgi?id=21736
92           Long-dead decoded image data make up for most of the object cache's memory use over time
93
94         * WebView/WebView.mm:
95         (+[WebView _setCacheModel:]): In the primary web browser model, set the
96         cache's dead decoded data deletion interval to 60 seconds.
97
98 2008-10-15  Mark Rowe  <mrowe@apple.com>
99
100         Reviewed by Jon Honeycutt.
101
102         Fix a leak of a CFStringRef reported by the build bot.
103
104         * Plugins/WebBaseNetscapePluginView.mm:
105         (-[WebBaseNetscapePluginView loadRequest:inTarget:withNotifyData:sendNotification:]): Use a autoreleased
106         NSString rather than manually releasing a CFStringRef when we're done with it.
107
108 2008-10-15  Kenneth Russell  <kenneth.russell@sun.com>
109
110         Reviewed and landed by Anders Carlsson.
111
112         https://bugs.webkit.org/show_bug.cgi?id=21572
113         
114         Initialize pluginFunc.size to the correct size before calling NP_GetEntryPoints.
115         
116         * Plugins/WebNetscapePluginPackage.m:
117         (-[WebNetscapePluginPackage load]):
118
119 2008-10-15  Mark Rowe  <mrowe@apple.com>
120
121         Reviewed by Dan Bernstein.
122
123         <rdar://problem/6272508> Crash occurs after loading flash content at http://www.macrumors.com/
124
125         Restore some code related to the CoreGraphics drawing model that was misplaced in r37131.
126
127         * Plugins/WebBaseNetscapePluginView.mm:
128         (-[WebBaseNetscapePluginView invalidateRegion:]):
129         (-[WebBaseNetscapePluginView setVariable:value:]):
130
131 2008-10-15  Geoffrey Garen  <ggaren@apple.com>
132
133         Reviewed by Cameron Zwarich.
134
135         Fixed https://bugs.webkit.org/show_bug.cgi?id=21345
136         Start the debugger without reloading the inspected page
137
138         * WebInspector/WebInspector.mm:
139         (-[WebInspector startDebuggingJavaScript:]): Updated for rename.
140
141 2008-10-14  Maxime Britto  <britto@apple.com>
142
143         Reviewed by Darin Adler.
144
145         Added SPI to use WebCore's TextIterator with WebKit.
146
147         * WebView/WebTextIterator.h: Added.
148         * WebView/WebTextIterator.mm: Added.
149         (-[WebTextIteratorPrivate dealloc]):
150         (-[WebTextIterator dealloc]):
151         (-[WebTextIterator initWithRange:]): Creates a TextIterator 
152         instance
153         (-[WebTextIterator advance]): Asks the iterator to advance() .
154         (-[WebTextIterator currentNode]): Returns the current DOMNode from 
155         the iterator
156         (-[WebTextIterator currentText]): Returns the current text from the 
157         iterator
158         (-[WebTextIterator atEnd]): Indicated whether the iterator has 
159         reached the end of the range.
160         * WebView/WebView.h:
161         * WebView/WebView.mm:
162         (-[WebView textIteratorForRect:]): Returns a WebTextIterator with 
163         the DOMRange contained in the rectangle given as a parameter.
164
165 2008-10-15  Timothy Hatcher  <timothy@apple.com>
166
167         Clean up user agent generation to simplify the _standardUserAgentWithApplicationName:
168         class method to not require a WebKit version.
169
170         Reviewed by Darin Adler.
171
172         * WebView/WebView.mm:
173         (+[WebView _standardUserAgentWithApplicationName:]): Create the WebKit version.
174         (-[WebView WebCore::_userAgentForURL:]): Use the simplified _standardUserAgentWithApplicationName:.
175         Remove code that created the WebKit version.
176         * WebView/WebViewPrivate.h: Change the method name of _standardUserAgentWithApplicationName:.
177
178 2008-10-14  Timothy Hatcher  <timothy@apple.com>
179
180         Make the user agent generation method a class method and cache the WebKit
181         version in a static to prevent generating it every time. This is needed
182         clean up to fix <rdar://problem/6292331>. Moved all code to WebPrivate so
183         the class method can be in the WebViewPrivate.h header.
184
185         Reviewed by John Sullivan.
186
187         * WebView/WebView.mm:
188         (callGestalt): Moved. Same code.
189         (createMacOSXVersionString): Moved. Same code.
190         (createUserVisibleWebKitVersionString): Moved from _userVisibleBundleVersionFromFullVersion:
191         and returns a copied string.
192         (+[WebView _standardUserAgentWithApplicationName:andWebKitVersion:]): Made into a class method.
193         (-[WebView WebCore::_userAgentForURL:]): Changed to cache the WebKit version.
194         * WebView/WebViewPrivate.h: Added +_standardUserAgentWithApplicationName:andWebKitVersion:.
195
196 2008-10-13  Maciej Stachowiak  <mjs@apple.com>
197
198         Rubber stamped by Mark Rowe.
199         
200         - use gcc 4.2 when building with Xcode 3.1 or newer on Leopard, even though this is not the default
201
202         * Configurations/DebugRelease.xcconfig:
203
204 2008-10-11  Dan Bernstein  <mitz@apple.com>
205
206         Reviewed by Sam Weinig.
207
208         - rename _setAlwaysUseATSU to _setAlwaysUsesComplexTextCodePath and
209           update it for the renamed WebCoreTextRenderer method; keep the old
210           method around for clients that use it
211
212         * WebView/WebView.mm:
213         (+[WebView _setAlwaysUseATSU:]):
214         (+[WebView _setAlwaysUsesComplexTextCodePath:]):
215         * WebView/WebViewPrivate.h:
216
217 2008-10-09  Timothy Hatcher  <timothy@apple.com>
218
219         Don't convert JavaScriptCore header include paths to WebKit paths. This was needed
220         back when NPAPI and WebScriptObject migrated from JavaScriptCore. Also remove
221         JavaScriptCore from the VPATH.
222
223         Reviewed by Sam Weinig.
224
225         * MigrateHeaders.make:
226
227 2008-10-08  Darin Adler  <darin@apple.com>
228
229         Reviewed by Cameron Zwarich.
230
231         - https://bugs.webkit.org/show_bug.cgi?id=21403
232           Bug 21403: use new CallFrame class rather than Register* for call frame manipulation
233
234         * WebView/WebScriptDebugger.mm:
235         (WebScriptDebugger::WebScriptDebugger): Update since DebuggerCallFrame is simpler now.
236
237 2008-10-08  Timothy Hatcher  <timothy@apple.com>
238
239         Roll out r37427 because it causes an infinite recursion loading about:blank.
240
241         https://bugs.webkit.org/show_bug.cgi?id=21476
242
243 2008-10-08  Darin Adler  <darin@apple.com>
244
245         Reviewed by Cameron Zwarich.
246
247         - https://bugs.webkit.org/show_bug.cgi?id=21403
248           Bug 21403: use new CallFrame class rather than Register* for call frame manipulation
249
250         * WebView/WebScriptDebugger.mm:
251         (WebScriptDebugger::WebScriptDebugger): Update since DebuggerCallFrame is simpler now.
252
253 2008-10-07  David Hyatt  <hyatt@apple.com>
254
255         Move viewless WebKit methods that Safari needs from WebViewInternal to WebViewPrivate.
256
257         Reviewed by Tim Hatcher
258
259         * WebView/WebView.mm:
260         (WebKitInitializeApplicationCachePathIfNecessary):
261         (-[WebView _registerDraggedTypes]):
262         (-[WebView _usesDocumentViews]):
263         (-[WebView _commonInitializationWithFrameName:groupName:usesDocumentViews:]):
264         (-[WebView _initWithFrame:frameName:groupName:usesDocumentViews:]):
265         (-[WebView isFlipped]):
266         (-[WebView viewWillDraw]):
267         * WebView/WebViewInternal.h:
268         * WebView/WebViewPrivate.h:
269
270 2008-10-07  David Hyatt  <hyatt@apple.com>
271
272         Fix crash in isFlipped.  Null check _private since isFlipped can get called from within AppKit
273         machinery during teardown of the WebView.
274
275         Reviewed by Adam Roben
276
277         * WebView/WebView.mm:
278         (-[WebView isFlipped]):
279
280 2008-10-07  David Hyatt  <hyatt@apple.com>
281
282         Make viewless WebKit update focused and active state when the window becomes and loses key.
283         The focus controller has been patched to understand that in viewless mode it can recur down and
284         update all of the frames, which is why this code works now when placed just on the WebView.
285
286         Reviewed by Adam Roben
287
288         * WebView/WebView.mm:
289         (-[WebView addWindowObservers]):
290         (-[WebView removeWindowObservers]):
291         (-[WebView viewWillMoveToWindow:]):
292         (-[WebView viewDidMoveToWindow]):
293         (-[WebView _updateFocusedAndActiveState]):
294         (-[WebView _windowDidBecomeKey:]):
295         (-[WebView _windowDidResignKey:]):
296         (-[WebView _windowWillOrderOnScreen:]):
297
298 2008-10-07  David Hyatt  <hyatt@apple.com>
299
300         Make sure the parent visibility state is set up properly on the outermost ScrollView widget.
301         This fixes the repainting issues with viewless WebKit on Mac.
302
303         Reviewed by Sam Weinig
304
305         * WebCoreSupport/WebFrameLoaderClient.mm:
306         (WebFrameLoaderClient::transitionToCommittedForNewPage):
307
308 2008-10-07  David Hyatt  <hyatt@apple.com>
309
310         Make sure viewless Mac WebKit does a layout if needed before drawing.
311
312         Reviewed by Sam Weinig
313
314         * WebView/WebView.mm:
315         (-[WebView viewWillDraw]):
316
317 2008-10-07  David Hyatt  <hyatt@apple.com>
318
319         Make sure observers get hooked up to watch for size changes in viewless WebKit mode.
320
321         Reviewed by Sam Weinig
322
323         * ChangeLog:
324         * WebView/WebFrame.mm:
325         (-[WebFrame _drawRect:contentsOnly:]):
326         * WebView/WebView.mm:
327         (-[WebView viewWillDraw]):
328         (-[WebView _boundsChanged]):
329         (-[WebView addSizeObservers]):
330         (-[WebView viewDidMoveToWindow]):
331         (-[WebView viewDidMoveToSuperview]):
332
333 2008-10-07  David Hyatt  <hyatt@apple.com>
334
335         Make sure WebView listens for size changes and resizes the frame view in viewless mode.
336
337         Reviewed by Sam Weinig
338
339         * WebView/WebView.mm:
340         (-[WebView addSizeObservers]):
341         (-[WebView viewDidMoveToWindow]):
342         (-[WebView viewDidMoveToSuperview]):
343
344 2008-10-06  David Hyatt  <hyatt@apple.com>
345
346         Enable viewless Mac WebKit to paint some basic pages.
347         
348         Reviewed by Sam Weinig
349
350         * WebCoreSupport/WebChromeClient.mm:
351         (WebChromeClient::windowResizerRect):
352         (WebChromeClient::repaint):
353         (WebChromeClient::screenToWindow):
354         (WebChromeClient::windowToScreen):
355         (WebChromeClient::platformWindow):
356         * WebCoreSupport/WebFrameLoaderClient.h:
357         * WebCoreSupport/WebFrameLoaderClient.mm:
358         (WebFrameLoaderClient::forceLayoutForNonHTML):
359         (WebFrameLoaderClient::dispatchDidCommitLoad):
360         (WebFrameLoaderClient::transitionToCommittedForNewPage):
361         (WebFrameLoaderClient::createFrame):
362         * WebView/WebFrame.mm:
363         (-[WebFrame _drawRect:contentsOnly:]):
364         * WebView/WebFrameInternal.h:
365         * WebView/WebFrameView.mm:
366         * WebView/WebFrameViewInternal.h:
367         * WebView/WebHTMLView.mm:
368         (-[WebHTMLView drawSingleRect:]):
369         (-[WebHTMLView drawRect:]):
370         * WebView/WebView.mm:
371         (-[WebView isFlipped]):
372         (-[WebView _boundsChanged]):
373         (-[WebView _mustDrawUnionedRect:singleRects:count:]):
374         (-[WebView drawSingleRect:]):
375         (-[WebView drawRect:]):
376         (-[WebView _commonInitializationWithFrameName:groupName:usesDocumentViews:]):
377         (-[WebView initWithFrame:frameName:groupName:]):
378         (-[WebView _initWithFrame:frameName:groupName:usesDocumentViews:]):
379         (-[WebView initWithCoder:]):
380         (-[WebView removeSizeObservers]):
381         (-[WebView viewWillMoveToWindow:]):
382         (-[WebView viewWillMoveToSuperview:]):
383         (-[WebView _usesDocumentViews]):
384         * WebView/WebViewInternal.h:
385
386 2008-10-06  Kevin Decker  <kdecker@apple.com>
387
388         Rubber-stamped by Anders Carlsson.
389
390         Rename _webkit_applicationCacheDirectoryWithBundleIdentifier to _webkit_localCacheDirectoryWithBundleIdentifier.
391         
392         * Misc/WebKitNSStringExtras.h:
393         * Misc/WebKitNSStringExtras.m:
394         (+[NSString _webkit_localCacheDirectoryWithBundleIdentifier:]):
395         * WebView/WebDataSource.mm:
396         (-[WebDataSource _transferApplicationCache:]):
397         * WebView/WebView.mm:
398         (WebKitInitializeApplicationCachePathIfNecessary):
399
400 2008-10-06  Anders Carlsson  <andersca@apple.com>
401
402         Reviewed by Sam Weinig.
403
404         Make WebNetscapePluginStream a WebCore::NetscapePlugInStreamLoaderClient.
405         
406         * Plugins/WebBaseNetscapePluginStream.h:
407         (WebNetscapePluginStream::~WebNetscapePluginStream):
408         * Plugins/WebBaseNetscapePluginStream.mm:
409         (WebNetscapePluginStream::didReceiveResponse):
410         (-[WebBaseNetscapePluginStream startStreamWithResponse:]):
411         (WebNetscapePluginStream::wantsAllStreams):
412         (-[WebBaseNetscapePluginStream wantsAllStreams]):
413         (WebNetscapePluginStream::didFail):
414         (-[WebBaseNetscapePluginStream destroyStreamWithError:]):
415         (WebNetscapePluginStream::didFinishLoading):
416         (-[WebBaseNetscapePluginStream finishedLoading]):
417         (WebNetscapePluginStream::didReceiveData):
418         (-[WebBaseNetscapePluginStream receivedData:]):
419
420 2008-10-06  Anders Carlsson  <andersca@apple.com>
421
422         Bring back the stop method. It was called through performSelector, which
423         is why I couldn't find any references to it.
424
425         * Plugins/WebBaseNetscapePluginStream.h:
426         * Plugins/WebBaseNetscapePluginStream.mm:
427         (-[WebBaseNetscapePluginStream stop]):
428
429 2008-10-06  Anders Carlsson  <andersca@apple.com>
430
431         Reviewed by Sam Weinig.
432
433         More conversion and cleanup.
434         
435         * Plugins/WebBaseNetscapePluginStream.h:
436         * Plugins/WebBaseNetscapePluginStream.mm:
437         (WebNetscapePluginStream::startStream):
438         (-[WebBaseNetscapePluginStream startStreamWithResponse:]):
439         * Plugins/WebBaseNetscapePluginView.mm:
440         (-[WebBaseNetscapePluginView evaluateJavaScriptPluginRequest:]):
441
442 2008-10-06  Anders Carlsson  <andersca@apple.com>
443
444         Reviewed by Sam Weinig.
445
446         Fold initWithRequestURL into initWithRequest.
447         
448         * Plugins/WebBaseNetscapePluginStream.h:
449         * Plugins/WebBaseNetscapePluginStream.mm:
450         (-[WebBaseNetscapePluginStream initWithRequest:plugin:notifyData:sendNotification:]):
451
452 2008-10-06  Anders Carlsson  <andersca@apple.com>
453
454         Reviewed by Sam Weinig.
455
456         Change the init methods not to return nil on failures. (These failures never occur anyway)
457         
458         Use initWithRequest as the initializer, initWithRequestURL is going to be merged with it.
459         
460         * Plugins/WebBaseNetscapePluginStream.mm:
461         (-[WebBaseNetscapePluginStream initWithRequest:plugin:notifyData:sendNotification:]):
462         (-[WebBaseNetscapePluginStream initWithRequestURL:plugin:notifyData:sendNotification:]):
463         * Plugins/WebBaseNetscapePluginView.mm:
464         (-[WebBaseNetscapePluginView evaluateJavaScriptPluginRequest:]):
465
466 2008-10-06  Anders Carlsson  <andersca@apple.com>
467
468         Reviewed by David Hyatt.
469
470         Convert more methods over to C++.
471         
472         * Plugins/WebBaseNetscapePluginStream.h:
473         * Plugins/WebBaseNetscapePluginStream.mm:
474         (WebNetscapePluginStream::ownerForStream):
475         (WebNetscapePluginStream::pluginCancelledConnectionError):
476         (WebNetscapePluginStream::errorForReason):
477         (-[WebBaseNetscapePluginStream errorForReason:]):
478         (-[WebBaseNetscapePluginStream startStreamResponseURL:expectedContentLength:lastModifiedDate:MIMEType:headers:]):
479         (WebNetscapePluginStream::cancelLoadAndDestroyStreamWithError):
480         (-[WebBaseNetscapePluginStream cancelLoadAndDestroyStreamWithError:]):
481         (WebNetscapePluginStream::deliverData):
482         (WebNetscapePluginStream::deliverDataTimerFired):
483         (WebNetscapePluginStream::deliverDataToFile):
484         (-[WebBaseNetscapePluginStream finishedLoading]):
485         (-[WebBaseNetscapePluginStream receivedData:]):
486         * Plugins/WebBaseNetscapePluginView.mm:
487         (-[WebBaseNetscapePluginView destroyStream:reason:]):
488
489 2008-10-06  David Hyatt  <hyatt@apple.com>
490
491         Add SPI for a new viewless WebKit mode.  The idea is that when this flag is set there will be no
492         views created except for the outermost WebView.
493
494         Reviewed by Tim Hatcher
495
496         * WebView/WebView.mm:
497         * WebView/WebViewInternal.h:
498
499 2008-10-06  Anders Carlsson  <andersca@apple.com>
500
501         Reviewed by David Hyatt.
502
503         Convert more methods over to C++.
504         
505         * Plugins/WebBaseNetscapePluginStream.h:
506         * Plugins/WebBaseNetscapePluginStream.mm:
507         (WebNetscapePluginStream::reasonForError):
508         (WebNetscapePluginStream::destroyStreamWithReason):
509         (WebNetscapePluginStream::cancelLoadWithError):
510         (-[WebBaseNetscapePluginStream cancelLoadWithError:]):
511         (WebNetscapePluginStream::destroyStreamWithError):
512         (-[WebBaseNetscapePluginStream destroyStreamWithError:]):
513         (-[WebBaseNetscapePluginStream cancelLoadAndDestroyStreamWithError:]):
514         (-[WebBaseNetscapePluginStream _deliverDataToFile:]):
515         (-[WebBaseNetscapePluginStream finishedLoading]):
516         * Plugins/WebBaseNetscapePluginView.mm:
517         (-[WebBaseNetscapePluginView webFrame:didFinishLoadWithError:]):
518
519 2008-10-04  Darin Adler  <darin@apple.com>
520
521         Reviewed by Cameron Zwarich.
522
523         - https://bugs.webkit.org/show_bug.cgi?id=21295
524           Bug 21295: Replace ExecState with a call frame Register pointer
525
526         * WebView/WebScriptDebugger.mm:
527         (WebScriptDebugger::WebScriptDebugger): Remove 0 passed for ExecState.
528
529 2008-10-03  John Sullivan  <sullivan@apple.com>
530
531         Fixed Release build
532
533         * Plugins/WebBaseNetscapePluginStream.mm:
534         (WebNetscapePluginStream::destroyStream):
535         added !LOG_DISABLED guard around declaration of npErr used only in LOG
536
537 2008-10-03  Anders Carlsson  <andersca@apple.com>
538
539         Reviewed by David Hyatt.
540         
541         Convert destroyStream over to C++.
542         
543         * Plugins/WebBaseNetscapePluginStream.h:
544         * Plugins/WebBaseNetscapePluginStream.mm:
545         (WebNetscapePluginStream::destroyStream):
546         (-[WebBaseNetscapePluginStream _destroyStreamWithReason:]):
547         (-[WebBaseNetscapePluginStream _deliverData]):
548
549 2008-10-03  Anders Carlsson  <andersca@apple.com>
550
551         Reviewed by David Hyatt.
552
553         Use a Timer instead of -[NSObject performSelector:withObject:afterDelay];
554         
555         * Plugins/WebBaseNetscapePluginStream.h:
556         (WebNetscapePluginStream::WebNetscapePluginStream):
557         * Plugins/WebBaseNetscapePluginStream.mm:
558         (-[WebBaseNetscapePluginStream _destroyStream]):
559         (-[WebBaseNetscapePluginStream _deliverData]):
560         (WebNetscapePluginStream::deliverDataTimerFired):
561
562 2008-10-03  Anders Carlsson  <andersca@apple.com>
563
564         Reviewed by David Hyatt.
565
566         More plug-in stream cleanup.
567         
568         * Plugins/WebBaseNetscapePluginStream.h:
569         (WebNetscapePluginStream::create):
570         (WebNetscapePluginStream::WebNetscapePluginStream):
571         * Plugins/WebBaseNetscapePluginStream.mm:
572         (-[WebBaseNetscapePluginStream initWithFrameLoader:]):
573         (-[WebBaseNetscapePluginStream initWithRequestURL:plugin:notifyData:sendNotification:]):
574         (-[WebBaseNetscapePluginStream dealloc]):
575         (-[WebBaseNetscapePluginStream finalize]):
576         (-[WebBaseNetscapePluginStream setPlugin:]):
577         (WebNetscapePluginStream::setPlugin):
578         (-[WebBaseNetscapePluginStream startStreamResponseURL:expectedContentLength:lastModifiedDate:MIMEType:headers:]):
579         (-[WebBaseNetscapePluginStream _destroyStream]):
580
581 2008-10-03  David Hyatt  <hyatt@apple.com>
582
583         Remove addToDirtyRegion.
584         
585         Reviewed by Oliver Hunt
586         
587         * WebCoreSupport/WebChromeClient.h:
588         * WebCoreSupport/WebChromeClient.mm:
589
590 2008-10-02  David Hyatt  <hyatt@apple.com>
591
592         https://bugs.webkit.org/show_bug.cgi?id=21328
593         
594         Make widget invalidation more cross-platform.
595         
596         (1) Make invalidateRect a pure virtual function on Widget.  All leaf widgets must now implement this function.
597         
598         (2) Scrollbars now send invalidations through the ScrollbarClient.  windowClipRect on ScrollbarClient has been removed and replaced with this invalidation call.
599         This allows all scrollbar invalidations to go through the render tree so that transforms and reflections will be respected.
600         
601         (3) Plugins now have the native window invalidation code for windowed plugins.  Windowless plugins do a repaintRectangle on the plugin's renderer.
602         
603         (4) FrameViews now do a repaintRectangle on their owner element's renderer.
604
605         Reviewed by Sam Weinig
606
607         * WebCoreSupport/WebFrameLoaderClient.mm:
608         (PluginWidget::PluginWidget):
609         (PluginWidget::invalidateRect):
610         (NetscapePluginWidget::NetscapePluginWidget):
611         (WebFrameLoaderClient::createPlugin):
612
613 2008-10-02  Darin Adler  <darin@apple.com>
614
615         Reviewed by Geoff Garen.
616
617         - https://bugs.webkit.org/show_bug.cgi?id=21321
618           Bug 21321: speed up JavaScriptCore by inlining Heap in JSGlobalData
619
620         * Misc/WebCoreStatistics.mm:
621         (+[WebCoreStatistics javaScriptObjectsCount]): Use heap. instead of heap-> to
622         work with the heap.
623         (+[WebCoreStatistics javaScriptGlobalObjectsCount]): Ditto.
624         (+[WebCoreStatistics javaScriptProtectedObjectsCount]): Ditto.
625         (+[WebCoreStatistics javaScriptProtectedGlobalObjectsCount]): Ditto.
626         (+[WebCoreStatistics javaScriptProtectedObjectTypeCounts]): Ditto.
627         (+[WebCoreStatistics javaScriptReferencedObjectsCount]): Ditto.
628
629 2008-10-02  David Hyatt  <hyatt@apple.com>
630
631         https://bugs.webkit.org/show_bug.cgi?id=21314
632         
633         Make scrollBackingStore cross-platform.
634
635         Reviewed by Sam Weinig
636
637         * WebCoreSupport/WebChromeClient.h:
638         * WebCoreSupport/WebChromeClient.mm:
639         (WebChromeClient::repaint):
640         (WebChromeClient::scroll):
641
642 2008-10-01  Geoffrey Garen  <ggaren@apple.com>
643
644         Reviewed by Darin Adler and Cameron Zwarich.
645
646         Updated for JavaScriptCore API changes: use a SourceCode instead of
647         broken out parameters; treat sourceId as intptr_t.
648         
649         We still treat sourceId as int in some cases because of DashCode. See
650         <rdar://problem/6263293> WebScriptDebugDelegate should use intptr_t for
651         sourceId, not int.
652
653         * WebView/WebScriptDebugger.h:
654         * WebView/WebScriptDebugger.mm:
655         (toNSString):
656         (WebScriptDebugger::sourceParsed):
657         (WebScriptDebugger::callEvent):
658         (WebScriptDebugger::atStatement):
659         (WebScriptDebugger::returnEvent):
660         (WebScriptDebugger::exception):
661         (WebScriptDebugger::willExecuteProgram):
662         (WebScriptDebugger::didExecuteProgram):
663         (WebScriptDebugger::didReachBreakpoint):
664
665 2008-10-01  David Hyatt  <hyatt@apple.com>
666
667         Move prohibitsScrolling from the Frame to the ScrollView.
668
669         Reviewed by Sam Weinig
670
671         * WebView/WebView.mm:
672         (-[WebView setProhibitsMainFrameScrolling:]):
673
674 2008-10-01  David Hyatt  <hyatt@apple.com>
675
676         https://bugs.webkit.org/show_bug.cgi?id=21282
677         
678         Make contentsToScreen/screenToContents cross-platform.  Only implemented by Mac/Win right now.
679         
680         Reviewed by Adam Roben
681
682         * WebCoreSupport/WebChromeClient.h:
683         * WebCoreSupport/WebChromeClient.mm:
684         (WebChromeClient::repaint):
685         (WebChromeClient::screenToWindow):
686         (WebChromeClient::windowToScreen):
687
688 2008-09-30   Dave Hyatt  <hyatt@apple.com>
689
690         https://bugs.webkit.org/show_bug.cgi?id=21269
691   
692         This patch makes the ScrollView::paint method cross-platform.  The paint method calls the base class
693         Widget paint on platforms with native widgets (Mac and wx).  Otherwise it calls a virtual function,
694         paintContents, to paint the ScrollView's contents, and then it paints each of the two scrollbars and
695         the scrollbar corner.
696         
697         The scrollbar themes are now responsible for painting scrollbar corners.  At the moment ScrollbarThemeWin still
698         paints white (which is incorrect), so a future patch will actually implement proper native scroll corner painting
699         for Windows.
700         
701         paintContents is implemented by FrameView, and replaces Frame::paint.  All of the FramePrivate member
702         variables used by Frame::paint have moved to FrameViewPrivate instead.  All callers of Frame::paint have
703         been patched to use FrameView::paintContents instead.
704        
705         Reviewed by Darin Adler
706
707         * WebView/WebFrame.mm:
708         (-[WebFrame _drawRect:]):
709
710 2008-09-30  Kevin Decker  <kdecker@apple.com>
711
712         Reviewed by Anders Carlsson.
713
714         Remove the NPDrawingModelOpenGL entirely. To my knowledge no shipping plug-in ever used it, and no other browser engine
715         ever supported it.
716                               
717         * Plugins/WebBaseNetscapePluginView.h: Removed AGL.h import and OpenGL related ivars.
718         * Plugins/WebBaseNetscapePluginView.mm: Removed soft linking for OpenGL and AGL frameworks. 
719         Also removed many methods AGL/CGL support methods that are no longer necessary.
720         (-[WebBaseNetscapePluginView saveAndSetNewPortStateForUpdate:]): Removed NPDrawingModelOpenGL related code.
721         (-[WebBaseNetscapePluginView restorePortState:]): Ditto.
722         (-[WebBaseNetscapePluginView sendEvent:isDrawRect:]): Ditto.
723         (-[WebBaseNetscapePluginView isNewWindowEqualToOldWindow]): Ditto.
724         (-[WebBaseNetscapePluginView setWindowIfNecessary]): Ditto.
725         (-[WebBaseNetscapePluginView stop]): Ditto.
726         (-[WebBaseNetscapePluginView dealloc]): Ditto.
727         (-[WebBaseNetscapePluginView drawRect:]): 
728         (-[WebBaseNetscapePluginView viewWillMoveToWindow:]): Ditto.
729         (-[WebBaseNetscapePluginView invalidateRegion:]): Ditto.
730         (-[WebBaseNetscapePluginView getVariable:value:]): Tell plug-ins WebKit does not support NPDrawingModelOpenGL.
731         (-[WebBaseNetscapePluginView setVariable:value:]): Removed NPDrawingModelOpenGL related code. 
732         (-[WebBaseNetscapePluginView _viewHasMoved]): Ditto.
733
734 2008-09-30  Dave Hyatt  <hyatt@apple.com>
735
736         http://bugs.webkit.org/show_bug.cgi?id=21250
737         
738         Rename updateContents to repaintContentRectangle and make it cross-platform by always sending
739         repaints up through the ChromeClient.
740         
741         Reviewed by Darin Adler
742
743         * WebCoreSupport/WebChromeClient.h:
744         * WebCoreSupport/WebChromeClient.mm:
745         (WebChromeClient::repaint):
746
747 2008-09-30  Anders Carlsson  <andersca@apple.com>
748
749         Reviewed by Mark Rowe and Adam Roben.
750
751         No need to use pointers to store C++ objects as pointers in WebViewPrivate, we can just
752         store them directly.
753         
754         * Configurations/Base.xcconfig:
755         Set GCC_OBJC_CALL_CXX_CDTORS to YES.
756         
757         * WebView/WebView.mm:
758         (-[WebViewPrivate init]):
759         (-[WebViewPrivate dealloc]):
760         (-[WebViewPrivate finalize]):
761         (-[WebView _preferencesChangedNotification:]):
762         (-[WebView setApplicationNameForUserAgent:]):
763         (-[WebView setCustomUserAgent:]):
764         (-[WebView customUserAgent]):
765         (-[WebView WebCore::_userAgentForURL:WebCore::]):
766         (-[WebView _addObject:forIdentifier:]):
767         (-[WebView _objectForIdentifier:]):
768         (-[WebView _removeObjectForIdentifier:]):
769
770 2008-09-29  Thiago Macieira  <thiago.macieira@nokia.com>
771
772         Reviewed by Simon.
773
774         Changed copyright from Trolltech ASA to Nokia.
775         
776         Nokia acquired Trolltech ASA, assets were transferred on September 26th 2008.
777         
778
779         * WebCoreSupport/WebChromeClient.h:
780         * WebCoreSupport/WebChromeClient.mm:
781         * WebCoreSupport/WebEditorClient.h:
782         * WebCoreSupport/WebEditorClient.mm:
783
784 2008-09-28  Timothy Hatcher  <timothy@apple.com>
785
786         Improves the Web Inspector node highlight so it does not scroll
787         to reveal the node in the page. This makes the highlight less
788         invasive and causes less things to change on screen. Also makes
789         the highlight redraw when the WebView draws, so it stays current
790         if the node changes on the page for any reason.
791
792         <rdar://problem/6115804> Don't scroll when highlighting (21000)
793         https://bugs.webkit.org/show_bug.cgi?id=21000
794
795         Reviewed by Dan Bernstein.
796
797         * WebCoreSupport/WebInspectorClient.mm:
798         (-[WebInspectorWindowController highlightNode:]): Call setNeedsDisplay:YES
799         if there is an existing highlight.
800         (-[WebInspectorWindowController didAttachWebNodeHighlight:]): Set the current
801         highlight node on the inspected WebView.
802         (-[WebInspectorWindowController willDetachWebNodeHighlight:]): Set the current
803         highlight node on the inspected WebView to nil.
804         * WebInspector/WebNodeHighlight.m:
805         (-[WebNodeHighlight setNeedsUpdateInTargetViewRect:]): Disable screen updates
806         until flush for the inspected window. Invalidate the whole highlight view since
807         we don't know the rect that needs updated since the highlight can be larger than
808         the highlighted element due to the margins and other factors.
809         * WebInspector/WebNodeHighlightView.m:
810         * WebView/WebHTMLView.mm:
811         (-[WebHTMLView drawSingleRect:]): Call setNeedsUpdateInTargetViewRect: on the
812         current highlight node.
813         * WebView/WebView.mm:
814         (-[WebViewPrivate dealloc]): Release the current highlight node.
815         (-[WebView setCurrentNodeHighlight:]): Set the current highlight node.
816         (-[WebView currentNodeHighlight]): Return the current highlight node.
817         * WebView/WebViewInternal.h:
818
819 2008-09-28  David Kilzer  <ddkilzer@apple.com>
820
821         Fix build warning in WebDefaultUIDelegate.m
822
823         Reviewed by Dan Bernstein.
824
825         This fixes a warning noticed by the clang static analyzer:
826         .../WebDefaultUIDelegate.m: In function ‘-[WebDefaultUIDelegate webViewFirstResponder:]’:
827         .../WebDefaultUIDelegate.m:92: warning: initialization from distinct Objective-C type
828
829         Note that this doesn't actually cause any change in behavior since
830         the gcc compiler ignores the semi-colon anyway.
831
832         * DefaultDelegates/WebDefaultUIDelegate.m:
833         (-[WebDefaultUIDelegate webViewFirstResponder:]): Removed semi-colon
834         from method signature.
835
836 2008-09-27  David Hyatt  <hyatt@apple.com>
837
838         Fix for https://bugs.webkit.org/show_bug.cgi?id=21182
839
840         Make sure Mac null checks the view like the other platforms do now that Mac goes through WebCore
841         to call setAllowsScrolling.
842
843         Reviewed by Mark Rowe
844
845         * WebCoreSupport/WebFrameLoaderClient.mm:
846         (WebFrameLoaderClient::createFrame):
847
848 2008-09-27  Anders Carlsson  <andersca@apple.com>
849
850         Reviewed by Sam Weinig.
851
852         https://bugs.webkit.org/show_bug.cgi?id=21178
853         <rdar://problem/6248651>
854
855         Check if the plug-in is allowed to load the resource. This matches Firefox.
856         
857         * Plugins/WebBaseNetscapePluginView.mm:
858         (-[WebBaseNetscapePluginView loadRequest:inTarget:withNotifyData:sendNotification:]):
859
860 2008-09-26  Matt Lilek  <webkit@mattlilek.com>
861
862         Reviewed by Tim Hatcher.
863
864         Update FEATURE_DEFINES after ENABLE_CROSS_DOCUMENT_MESSAGING was removed.
865
866         * Configurations/WebKit.xcconfig:
867
868 2008-09-26  David Hyatt  <hyatt@apple.com>
869
870         https://bugs.webkit.org/show_bug.cgi?id=21164
871
872         Rework concept of allowsScrolling/setAllowsScrolling to be cross-platform.
873
874         Reviewed by Sam Weinig
875
876         * WebCoreSupport/WebFrameLoaderClient.mm:
877         (WebFrameLoaderClient::createFrame):
878         * WebView/WebDynamicScrollBarsView.h:
879         * WebView/WebDynamicScrollBarsView.m:
880         * WebView/WebDynamicScrollBarsViewInternal.h:
881         * WebView/WebFrameView.mm:
882         (-[WebFrameView setAllowsScrolling:]):
883         (-[WebFrameView allowsScrolling]):
884
885 2008-09-26  David Hyatt  <hyatt@apple.com>
886
887         https://bugs.webkit.org/show_bug.cgi?id=21149
888
889         More refactoring to make scrollbar modes cross-platform.  Reduce the protocol that
890         WebDynamicScrollBarsView has to implement for communicating with WebCore to just three methods.
891
892         Reviewed by Sam Weinig
893
894         * WebView/WebDynamicScrollBarsView.m:
895         (-[WebDynamicScrollBarsView scrollingModes:WebCore::vertical:WebCore::]):
896         (-[WebDynamicScrollBarsView setHorizontalScrollingMode:andLock:]):
897         (-[WebDynamicScrollBarsView setVerticalScrollingMode:andLock:]):
898         (-[WebDynamicScrollBarsView setScrollingModes:vertical:andLock:]):
899         * WebView/WebDynamicScrollBarsViewInternal.h:
900         * WebView/WebFrameView.mm:
901         (-[WebFrameView setAllowsScrolling:]):
902         * WebView/WebView.mm:
903         (-[WebView setAlwaysShowVerticalScroller:]):
904         (-[WebView setAlwaysShowHorizontalScroller:]):
905
906 2008-09-26  David Kilzer  <ddkilzer@apple.com>
907
908         Fix Mac build with XSLT disabled
909
910         Reviewed by Alexey.
911
912         * Misc/WebCache.mm:
913         (+[WebCache statistics]): Populate xslStyleSheet statistics with
914         zeros if XSLT is disabled.
915
916 2008-09-25  David Hyatt  <hyatt@apple.com>
917
918         https://bugs.webkit.org/show_bug.cgi?id=21101
919
920         Fix the updating of the active state to not be dumb, so that viewless scrollbars repaint properly.
921
922         Reviewed by Tim Hatcher
923
924         * WebView/WebHTMLView.mm:
925         (-[WebHTMLView _updateFocusedAndActiveState]):
926
927 2008-09-24  Darin Adler  <darin@apple.com>
928
929         Reviewed by Dan Bernstein.
930
931         - https://bugs.webkit.org/show_bug.cgi?id=21079
932           <rdar://problem/6203938> Disallow embedding Safari-generated pages
933           (e.g bookmarks collection) in subframes
934
935         * DefaultDelegates/WebDefaultPolicyDelegate.m:
936         (-[WebDefaultPolicyDelegate webView:decidePolicyForNavigationAction:request:frame:decisionListener:]):
937         Use the new +[WebView _canHandleRequest:forMainFrame:] so we can give
938         a different answer for the main frame and subframes.
939         * WebCoreSupport/WebFrameLoaderClient.mm:
940         (WebFrameLoaderClient::canHandleRequest): Ditto.
941
942         * WebView/WebView.mm:
943         (+[WebView _canHandleRequest:forMainFrame:]): Added forMainFrame. Only look
944         for scheme-specific representations for the main frame, not subframes. 
945         (+[WebView _canHandleRequest:]): Give answer for main frame -- calls the
946         method above with YES for main frame.
947
948         * WebView/WebViewInternal.h: Added _canHandleRequest:forMainFrame:.
949
950 2008-09-23  David Hyatt  <hyatt@apple.com>
951
952         https://bugs.webkit.org/show_bug.cgi?id=21039
953
954         Teach the viewless Mac scrollbar how to avoid the NSWindow resizer.
955
956         Reviewed by Sam Weinig
957
958         * WebCoreSupport/WebChromeClient.mm:
959         (WebChromeClient::windowResizerRect):
960
961 2008-09-23  Dan Bernstein  <mitz@apple.com>
962
963         Reviewed by Beth Dakin.
964
965         - fix <rdar://problem/6233388> Crash beneath -[WebFrameView keyDown:]
966
967         Test: fast/events/keydown-remove-frame.html
968
969         * WebView/WebFrameView.mm:
970         (-[WebFrameView keyDown:]): Added a null check.
971
972 2008-09-21  Dirk Schulze  <vbs85@gmx.de>
973
974         Reviewed and landed by Eric Seidel.
975
976         Moved CGFloat definition to WebKitPrefix so CGFloat can be used more
977         freely throughout WebCore without worrying about breaking Tiger.
978
979         * Misc/WebTypesInternal.h: Removed it from here.
980         * WebKitPrefix.h: Added it here.
981
982 2008-09-20  Matt Lilek  <webkit@mattlilek.com>
983
984         Reviewed by Tim Hatcher.
985
986         Revert r35688. We use a textured window on Leopard, which does not have the
987         square corners of the standard Aqua window on Tiger.
988
989         * WebCoreSupport/WebInspectorClient.mm:
990         (-[WebInspectorWindowController window]): Add back the call to WKNSWindowMakeBottomCornersSquare.
991
992 2008-09-19  Darin Adler  <darin@apple.com>
993
994         Reviewed by Dan Bernstein.
995
996         - speculative fix for https://bugs.webkit.org/show_bug.cgi?id=20943
997           Assertion failure in RefCountedLeakCounter::cancelMessageSuppression() when closing a window
998
999         * WebView/WebView.mm:
1000         (-[WebView _commonInitializationWithFrameName:groupName:]): Moved call to
1001         RefCountedLeakCounter::suppressMessages in here.
1002         (-[WebView initWithFrame:frameName:groupName:]): Moved it out of here.
1003
1004 2008-09-18  Mark Rowe  <mrowe@apple.com>
1005
1006         Reviewed by Dan Bernstein.
1007
1008         Add SPI to WebView to allow DRT to clear the main frame's name between tests.
1009
1010         * WebView/WebView.mm:
1011         (-[WebView _clearMainFrameName]):
1012         * WebView/WebViewPrivate.h:
1013
1014 2008-09-18  Darin Adler  <darin@apple.com>
1015
1016         Reviewed by Sam Weinig.
1017
1018         - fix https://bugs.webkit.org/show_bug.cgi?id=20925
1019           LEAK messages appear every time I quit
1020
1021         * WebView/WebPreferences.mm:
1022         (-[WebPreferences setFullDocumentTeardownEnabled:]): Removed unneeded call
1023         to setLogLeakMessages.
1024         * WebView/WebView.mm:
1025         (-[WebView _closeWithFastTeardown]): Call RefCountedLeakCounter::suppressMessages,
1026         telling it that we can't track leaks because at least one WebView was closed with
1027         fast teardown.
1028         (-[WebView _close]): Removed unneeded call to setLogLeakMessages. Added a call to
1029         cancelMessageSuppression since the WebView is no longer open.
1030         Added an explicit garbage collect to help with the case where we're closing during
1031         the quit process -- the garbageCollectSoon() calls done inside WebCore won't help
1032         us in that case.
1033         (-[WebView initWithFrame:frameName:groupName:]): Call
1034         RefCountedLeakCounter::suppressMessages telling it that we can't track leaks
1035         because at least one WebView is currently open.
1036
1037 2008-09-18  Anders Carlsson  <andersca@apple.com>
1038
1039         Reviewed by Adam Roben.
1040
1041         Move the remainder of the stream ivars to the C++ object.
1042         
1043         * Plugins/WebBaseNetscapePluginStream.h:
1044         (WebNetscapePluginStream::WebNetscapePluginStream):
1045         * Plugins/WebBaseNetscapePluginStream.mm:
1046         (-[WebBaseNetscapePluginStream _pluginCancelledConnectionError]):
1047         (-[WebBaseNetscapePluginStream initWithFrameLoader:]):
1048         (-[WebBaseNetscapePluginStream initWithRequest:plugin:notifyData:sendNotification:]):
1049         (-[WebBaseNetscapePluginStream initWithRequestURL:plugin:notifyData:sendNotification:]):
1050         (-[WebBaseNetscapePluginStream dealloc]):
1051         (-[WebBaseNetscapePluginStream finalize]):
1052         (-[WebBaseNetscapePluginStream setPlugin:]):
1053         (-[WebBaseNetscapePluginStream startStreamResponseURL:expectedContentLength:lastModifiedDate:MIMEType:headers:]):
1054         (-[WebBaseNetscapePluginStream start]):
1055         (-[WebBaseNetscapePluginStream stop]):
1056         (-[WebBaseNetscapePluginStream wantsAllStreams]):
1057         (-[WebBaseNetscapePluginStream _destroyStream]):
1058         (-[WebBaseNetscapePluginStream _destroyStreamWithReason:]):
1059         (-[WebBaseNetscapePluginStream cancelLoadWithError:]):
1060         (-[WebBaseNetscapePluginStream _deliverData]):
1061
1062 2008-09-17  David Hyatt  <hyatt@apple.com>
1063
1064         Make the notion of Widget having an underlying native widget cross-platform.
1065
1066         Reviewed by Sam Weinig
1067
1068         * WebCoreSupport/WebFrameLoaderClient.mm:
1069         (NetscapePluginWidget::handleEvent):
1070         * WebView/WebFrame.mm:
1071         (-[WebFrame _dragSourceMovedTo:]):
1072         (-[WebFrame _dragSourceEndedAt:operation:]):
1073         * WebView/WebFrameView.mm:
1074         (-[WebFrameView _install]):
1075         * WebView/WebRenderNode.mm:
1076         (copyRenderNode):
1077
1078 2008-09-16  Anders Carlsson  <andersca@apple.com>
1079
1080         Reviewed by Cameron Zwarich.
1081
1082         Move more instance variables down to the C++ class.
1083
1084         * Plugins/WebBaseNetscapePluginStream.h:
1085         (WebNetscapePluginStream::WebNetscapePluginStream):
1086         * Plugins/WebBaseNetscapePluginStream.mm:
1087         (-[WebBaseNetscapePluginStream initWithRequestURL:plugin:notifyData:sendNotification:]):
1088         (-[WebBaseNetscapePluginStream dealloc]):
1089         (-[WebBaseNetscapePluginStream finalize]):
1090         (-[WebBaseNetscapePluginStream transferMode]):
1091         (-[WebBaseNetscapePluginStream plugin]):
1092         (-[WebBaseNetscapePluginStream setPlugin:]):
1093         (-[WebBaseNetscapePluginStream startStreamResponseURL:expectedContentLength:lastModifiedDate:MIMEType:headers:]):
1094         (-[WebBaseNetscapePluginStream wantsAllStreams]):
1095         (-[WebBaseNetscapePluginStream _destroyStream]):
1096         (-[WebBaseNetscapePluginStream _destroyStreamWithReason:]):
1097         (-[WebBaseNetscapePluginStream _deliverData]):
1098         (-[WebBaseNetscapePluginStream _deliverDataToFile:]):
1099         (-[WebBaseNetscapePluginStream finishedLoading]):
1100         (-[WebBaseNetscapePluginStream receivedData:]):
1101
1102 2008-09-16  Anders Carlsson  <andersca@apple.com>
1103
1104         Reviewed by Dave Hyatt.
1105
1106         Move a bunch of instance variables into the C++ class.
1107         
1108         * Plugins/WebBaseNetscapePluginStream.h:
1109         * Plugins/WebBaseNetscapePluginStream.mm:
1110         (-[WebBaseNetscapePluginStream _pluginCancelledConnectionError]):
1111         (-[WebBaseNetscapePluginStream errorForReason:]):
1112         (-[WebBaseNetscapePluginStream initWithRequest:plugin:notifyData:sendNotification:]):
1113         (-[WebBaseNetscapePluginStream initWithRequestURL:plugin:notifyData:sendNotification:]):
1114         (-[WebBaseNetscapePluginStream dealloc]):
1115         (-[WebBaseNetscapePluginStream setRequestURL:]):
1116         (-[WebBaseNetscapePluginStream setResponseURL:]):
1117         (-[WebBaseNetscapePluginStream setMIMEType:]):
1118         (-[WebBaseNetscapePluginStream startStreamResponseURL:expectedContentLength:lastModifiedDate:MIMEType:headers:]):
1119         (-[WebBaseNetscapePluginStream _destroyStream]):
1120         (-[WebBaseNetscapePluginStream _destroyStreamWithReason:]):
1121         (-[WebBaseNetscapePluginStream _deliverData]):
1122         (-[WebBaseNetscapePluginStream receivedData:]):
1123
1124 2008-09-16  Anders Carlsson  <andersca@apple.com>
1125
1126         Reviewed by Dave Hyatt.
1127
1128         Add a new WebNetscapePluginStream C++ class. The idea is that it is supposed to replace the Obj-C 
1129         WebBaseNetscapePluginStream class. The plan is to gradually move/rewrite code from the Obj-C class to the C++ class
1130         until the C++ class can replace the Obj-C class.
1131         
1132         * Plugins/WebBaseNetscapePluginStream.h:
1133         (WebNetscapePluginStream::create):
1134         (WebNetscapePluginStream::WebNetscapePluginStream):
1135         * Plugins/WebBaseNetscapePluginStream.mm:
1136         (-[WebBaseNetscapePluginStream initWithFrameLoader:]):
1137         (-[WebBaseNetscapePluginStream initWithRequest:plugin:notifyData:sendNotification:]):
1138         (-[WebBaseNetscapePluginStream dealloc]):
1139         (-[WebBaseNetscapePluginStream finalize]):
1140
1141 2008-09-16  Anders Carlsson  <andersca@apple.com>
1142
1143         Reviewed by Dave Hyatt.
1144
1145         Instead of storing a pointer to NPP method individually, just store a pointer to the NPNetscapeFuncs vtable.
1146         
1147         * Plugins/WebBaseNetscapePluginStream.h:
1148         * Plugins/WebBaseNetscapePluginStream.mm:
1149         (-[WebBaseNetscapePluginStream setPlugin:]):
1150         (-[WebBaseNetscapePluginStream startStreamResponseURL:expectedContentLength:lastModifiedDate:MIMEType:headers:]):
1151         (-[WebBaseNetscapePluginStream wantsAllStreams]):
1152         (-[WebBaseNetscapePluginStream _destroyStream]):
1153         (-[WebBaseNetscapePluginStream _deliverData]):
1154         * Plugins/WebNetscapePluginPackage.h:
1155         * Plugins/WebNetscapePluginPackage.m:
1156         (-[WebNetscapePluginPackage pluginFuncs]):
1157
1158 2008-09-16  Anders Carlsson  <andersca@apple.com>
1159
1160         Reviewed by Dave Hyatt.
1161
1162         Remove references to WebNetscapePluginStream.
1163         
1164         * Plugins/WebBaseNetscapePluginView.h:
1165         * Plugins/WebNetscapePluginEmbeddedView.h:
1166
1167 2008-09-15  Dan Bernstein  <mitz@apple.com>
1168
1169         Reviewed by Dave Hyatt.
1170
1171         - fix https://bugs.webkit.org/show_bug.cgi?id=20860
1172           REGRESSION: Crash in RenderLayer::hasVisibleContent() loading wavy.com
1173
1174         * WebView/WebFrame.mm:
1175         (-[WebFrame _getVisibleRect:]): Changed to check if the RenderPart has
1176         layout before accessing it, instead of checking if the frame inside it
1177         has layout.
1178
1179 2008-09-15  Chris Fleizach  <cfleizach@apple.com>
1180
1181         Reviewed by Darin Adler, Beth Dakin
1182
1183         Support strings for AXLists
1184
1185         * WebCoreSupport/WebViewFactory.mm:
1186         (-[WebViewFactory AXDefinitionListTermText]):
1187         (-[WebViewFactory AXDefinitionListDefinitionText]):
1188
1189 2008-09-15  Anders Carlsson  <andersca@apple.com>
1190
1191         Reviewed by Mitz.
1192
1193         Merge WebNetscapePluginStream into WebBaseNetscapePluginStream.
1194
1195         * Plugins/WebBaseNetscapePluginStream.h:
1196         * Plugins/WebBaseNetscapePluginStream.mm:
1197         (-[WebBaseNetscapePluginStream initWithFrameLoader:]):
1198         (-[WebBaseNetscapePluginStream initWithRequest:plugin:notifyData:sendNotification:]):
1199         (-[WebBaseNetscapePluginStream dealloc]):
1200         (-[WebBaseNetscapePluginStream finalize]):
1201         (-[WebBaseNetscapePluginStream start]):
1202         (-[WebBaseNetscapePluginStream stop]):
1203         (-[WebBaseNetscapePluginStream cancelLoadWithError:]):
1204         * Plugins/WebBaseNetscapePluginView.mm:
1205         (-[WebBaseNetscapePluginView pluginView:receivedResponse:]):
1206         (-[WebBaseNetscapePluginView loadRequest:inTarget:withNotifyData:sendNotification:]):
1207         * Plugins/WebNetscapePluginEmbeddedView.mm:
1208         * Plugins/WebNetscapePluginStream.h: Removed.
1209         * Plugins/WebNetscapePluginStream.mm: Removed.
1210
1211 2008-09-12  John Sullivan  <sullivan@apple.com>
1212
1213         Fixed <rdar://problem/6110941> Clicking the print button in PDF content does nothing
1214
1215         Reviewed by Darin Adler
1216
1217         * WebView/WebPDFView.mm:
1218         (-[WebPDFView PDFViewPerformPrint:]):
1219         Implemented PDFKit delegate method that's called after a Print action in the PDF content
1220
1221 2008-09-12  Dan Bernstein  <mitz@apple.com>
1222
1223         Reviewed by John Sullivan.
1224
1225         - fix a crash in -visibleRect when it is called during WebFrameView deallocation
1226
1227         * WebView/WebFrameView.mm:
1228         (-[WebFrameView visibleRect]): Added an early return if _private is 0.
1229
1230 2008-09-11  Dan Bernstein  <mitz@apple.com>
1231
1232         Reviewed by John Sullivan.
1233
1234         - eliminate excessive repainting when a clipped iframe is moved (noticed in <rdar://problem/6204032>)
1235
1236         * WebView/WebFrame.mm:
1237         (-[WebFrame _getVisibleRect:]): Added. If the frame is in a RenderPart
1238         and has layout, gets the visible rect of the RenderPart and returns
1239         YES. Returns NO otherwise.
1240         * WebView/WebFrameInternal.h:
1241         * WebView/WebFrameView.mm:
1242         (-[WebFrameView visibleRect]): Added. Overrides this NSView method to
1243         take clipping in the render tree into account.
1244
1245 2008-09-09  Dan Bernstein  <mitz@apple.com>
1246
1247         - Tiger build fix
1248
1249         * WebCoreSupport/WebSystemInterface.m:
1250         (InitWebCoreSystemInterface):
1251
1252 2008-09-09  Dan Bernstein  <mitz@apple.com>
1253
1254         Reviewed by Darin Adler.
1255
1256         - WebKit part of <rdar://problem/6206244> Use alternate character-to-glyph interface on Leopard
1257
1258         * WebCoreSupport/WebSystemInterface.m:
1259         (InitWebCoreSystemInterface):
1260
1261 2008-09-07  Cameron Zwarich  <cwzwarich@uwaterloo.ca>
1262
1263         Reviewed by Maciej Stachowiak.
1264
1265         Bug 20704: Replace the KJS namespace
1266         <https://bugs.webkit.org/show_bug.cgi?id=20704>
1267
1268         Rename the KJS namespace to JSC.
1269
1270         * Misc/WebCoreStatistics.mm:
1271         * Plugins/WebBaseNetscapePluginStream.mm:
1272         (-[WebBaseNetscapePluginStream wantsAllStreams]):
1273         * Plugins/WebBaseNetscapePluginView.mm:
1274         (-[WebBaseNetscapePluginView sendEvent:isDrawRect:]):
1275         (-[WebBaseNetscapePluginView setWindowIfNecessary]):
1276         (-[WebBaseNetscapePluginView start]):
1277         (-[WebBaseNetscapePluginView createPluginScriptableObject]):
1278         (-[WebBaseNetscapePluginView evaluateJavaScriptPluginRequest:]):
1279         (-[WebBaseNetscapePluginView webFrame:didFinishLoadWithReason:]):
1280         (-[WebBaseNetscapePluginView loadPluginRequest:]):
1281         (-[WebBaseNetscapePluginView _printedPluginBitmap]):
1282         * Plugins/WebPluginController.mm:
1283         (+[WebPluginController plugInViewWithArguments:fromPluginPackage:]):
1284         (-[WebPluginController startAllPlugins]):
1285         (-[WebPluginController stopAllPlugins]):
1286         (-[WebPluginController addPlugin:]):
1287         (-[WebPluginController destroyPlugin:]):
1288         (-[WebPluginController destroyAllPlugins]):
1289         * WebView/WebFrame.mm:
1290         * WebView/WebScriptDebugDelegate.mm:
1291         * WebView/WebScriptDebugger.h:
1292         * WebView/WebScriptDebugger.mm:
1293         * WebView/WebView.mm:
1294         (-[WebViewPrivate init]):
1295
1296 2008-09-05  Timothy Hatcher  <timothy@apple.com>
1297
1298         Correct a typo in the setApplicationChromeModeEnabledEnabled:
1299         method name, remove the extra "Enabled".
1300
1301         * WebView/WebPreferences.mm:
1302         * WebView/WebPreferencesPrivate.h:
1303
1304 2008-09-04  Mark Rowe  <mrowe@apple.com>
1305
1306         Reviewed by Eric Seidel.
1307
1308         Fix https://bugs.webkit.org/show_bug.cgi?id=20639.
1309         Bug 20639: ENABLE_DASHBOARD_SUPPORT does not need to be a FEATURE_DEFINE
1310
1311         * Configurations/WebKit.xcconfig: Remove ENABLE_DASHBOARD_SUPPORT from FEATURE_DEFINES.
1312
1313 2008-09-03  Eric Seidel  <eric@webkit.org>
1314
1315         Reviewed by Sam.
1316
1317         Clean up Platform.h and add PLATFORM(CHROMIUM), PLATFORM(SKIA) and USE(V8_BINDINGS)
1318
1319         * Configurations/WebKit.xcconfig:
1320         * WebKitPrefix.h: add rules for V8_BINDINGS
1321
1322 2008-09-01  Adam Barth  <abarth@webkit.org>
1323
1324         Reviewed by Sam Weinig.
1325
1326         https://bugs.webkit.org/show_bug.cgi?id=19760
1327
1328         Add a linked-on-or-after check to prevent substitute data from loading
1329         local resources on newer users of WebKit.
1330
1331         * Misc/WebKitVersionChecks.h:
1332         * WebView/WebView.mm:
1333         (-[WebView _commonInitializationWithFrameName:groupName:]):
1334
1335 2008-08-29  Brady Eidson  <beidson@apple.com>
1336
1337         Reviewed by Anders
1338
1339         Fix regression I introducted in 35946
1340         Already covered by media/video-click-dlbclick-standalone.html
1341
1342         * WebView/WebHTMLRepresentation.mm:
1343         (-[WebHTMLRepresentation receivedData:withDataSource:]): Cancel the load here after
1344           calling [WebFrame _receivedData:] which more closely follows the path taken by PluginDocuments
1345
1346 2008-08-28  Kevin McCullough  <kmccullough@apple.com>
1347
1348         Reviewed by Geoff.
1349
1350         <rdar://problem/6095949> REGRESSION (5525.8-6527.1?): "this" is null
1351         when you first hit a breakpoint in Dashcode
1352         - We wanted to reset the callframe whenever eval() was called but
1353         dashcode uses eval() when broken to evaluate the state of the current
1354         call frame.
1355
1356         * WebView/WebScriptDebugger.mm:
1357         (WebScriptDebugger::willExecuteProgram):
1358         (WebScriptDebugger::didExecuteProgram):
1359
1360 2008-08-27  Robert Kroeger  <rjkroege@liqui.org>
1361
1362         Tweaked by Sam Weinig.
1363
1364         Reviewed by Eric Seidel.
1365
1366         Fix https://bugs.webkit.org/show_bug.cgi?id=6595
1367         <rdar://problem/4432150>
1368         Right-click does not fire mouseup event
1369
1370         Adds a rightMouseUp handler to the WebHTMLView.
1371
1372         The added method generates mouseup events for button 2.  The result
1373         is that webkit will deliver mousedown and mouseup events for button
1374         2 in a fashion identical to FireFox and will retain event ordering
1375         identical to Internet Explorer.
1376
1377         Test: fast/events/mouseup-from-button2.html
1378
1379         * WebView/WebHTMLView.mm:
1380         (-[WebHTMLView rightMouseUp:]):
1381
1382 2008-08-27  Timothy Hatcher  <timothy@apple.com>
1383
1384         Add support for support for -webkit-appearance: default-button on the Mac platform.
1385
1386         <rdar://problem/6173530>
1387
1388         Reviewed by Dave Hyatt.
1389
1390         * WebCoreSupport/WebSystemInterface.m:
1391         (InitWebCoreSystemInterface): Init AdvanceDefaultButtonPulseAnimation.
1392         * WebView/WebPreferenceKeysPrivate.h: Added WebKitApplicationChromeModeEnabledPreferenceKey.
1393         * WebView/WebPreferences.mm:
1394         (+[WebPreferences initialize]): Set WebKitApplicationChromeModeEnabledPreferenceKey to NO.
1395         (-[WebPreferences applicationChromeModeEnabled]): Added.
1396         (-[WebPreferences setApplicationChromeModeEnabledEnabled:]): Added.
1397         * WebView/WebPreferencesPrivate.h:
1398         * WebView/WebView.mm:
1399         (-[WebView _preferencesChangedNotification:]): Call Settings::setApplicationChromeMode
1400         with the value of -[WebPreferences applicationChromeModeEnabled].
1401
1402 2008-08-27  Brady Eidson  <beidson@apple.com>
1403
1404         Reviewed by Anders
1405
1406         <rdar://problem/6134133> - Crash when loading large movie as a standalone document
1407
1408         * WebCoreSupport/WebFrameLoaderClient.h:
1409         * WebCoreSupport/WebFrameLoaderClient.mm:
1410         (WebFrameLoaderClient::pluginWillHandleLoadError):
1411
1412 2008-08-20  Dan Bernstein  <mitz@apple.com>
1413
1414         Rubber-stamped by John Sullivan.
1415
1416         - rename shouldUpdateWhileHidden to shouldUpdateWhileOffscreen,
1417           rename related methods and variables accordingly, and make
1418           -setShouldUpdateWhileOffscreen: and -shouldUpdateWhileOffscreen
1419           WebView API.
1420
1421         * WebCoreSupport/WebFrameLoaderClient.mm:
1422         (WebFrameLoaderClient::transitionToCommittedForNewPage):
1423         * WebView/WebFrame.mm:
1424         (-[WebFrame _updateBackgroundAndUpdatesWhileOffscreen]):
1425         * WebView/WebFrameInternal.h:
1426         * WebView/WebHTMLView.mm:
1427         (-[WebHTMLView windowWillOrderOnScreen:]):
1428         * WebView/WebView.h:
1429         * WebView/WebView.mm:
1430         (-[WebViewPrivate init]):
1431         (-[WebView setBackgroundColor:]):
1432         (-[WebView setDrawsBackground:]):
1433         (-[WebView setShouldUpdateWhileOffscreen:]):
1434         (-[WebView shouldUpdateWhileOffscreen]):
1435         * WebView/WebViewPrivate.h:
1436
1437 2008-08-18  Mark Rowe  <mrowe@apple.com>
1438
1439         Reviewed by Darin Adler.
1440
1441         Switch to non-deprecated NSFileManager API.
1442
1443         In order to minimize #if's the new NSFileManager APIs have been implemented for
1444         Tiger and call sites updated to use the new methods.
1445
1446         * Misc/WebIconDatabase.mm:
1447         (importToWebCoreFormat):
1448         * Misc/WebKitNSStringExtras.m:
1449         (-[NSString _webkit_fixedCarbonPOSIXPath]):
1450         * Misc/WebKitSystemBits.m:
1451         * Misc/WebNSFileManagerExtras.h:
1452         * Misc/WebNSFileManagerExtras.m: Remove implementations of methods that are not used.
1453         (-[NSFileManager _webkit_backgroundRemoveFileAtPath:]):
1454         (-[NSFileManager attributesOfFileSystemForPath:error:]): Implement new API for Tiger in terms of Tiger API.
1455         (-[NSFileManager contentsOfDirectoryAtPath:error:]): Ditto.
1456         (-[NSFileManager moveItemAtPath:toPath:error:]): Ditto.
1457         (-[NSFileManager removeItemAtPath:error:]): Ditto.
1458         * Plugins/WebPluginDatabase.mm:
1459         (-[WebPluginDatabase _scanForNewPlugins]):
1460
1461 2008-08-20  Josh Aas  <joshmoz@gmail.com>
1462
1463         Reviewed and landed by Anders.
1464
1465         <rdar://problem/6163636> 
1466         rename NPCocoaEvent's "event" struct to "data" (20446)
1467
1468         * Plugins/WebNetscapePluginEventHandlerCocoa.mm:
1469         (WebNetscapePluginEventHandlerCocoa::drawRect):
1470         (WebNetscapePluginEventHandlerCocoa::sendMouseEvent):
1471         (WebNetscapePluginEventHandlerCocoa::flagsChanged):
1472         (WebNetscapePluginEventHandlerCocoa::sendKeyEvent):
1473         (WebNetscapePluginEventHandlerCocoa::windowFocusChanged):
1474         (WebNetscapePluginEventHandlerCocoa::focusChanged):
1475
1476 2008-08-20  Beth Dakin  <bdakin@apple.com>
1477
1478         Reviewed by Darin Adler.
1479
1480         Fix for <rdar://problem/6145626>
1481         Allows a WebKit client to mark a frame as not-text-searchable 
1482         through SPI.
1483
1484         * WebView/WebFrame.mm:
1485         (-[WebFrame _setExcludeFromTextSearch:]):
1486         * WebView/WebFramePrivate.h:
1487
1488 2008-08-19  Alexey Proskuryakov  <ap@webkit.org>
1489
1490         Reviewed by Geoff Garen.
1491
1492         Bring back shared JSGlobalData and implicit locking, because too many clients rely on it.
1493
1494         * ForwardingHeaders/kjs/JSLock.h: Added.
1495         * Misc/WebCoreStatistics.mm:
1496         (+[WebCoreStatistics javaScriptObjectsCount]):
1497         (+[WebCoreStatistics javaScriptGlobalObjectsCount]):
1498         (+[WebCoreStatistics javaScriptProtectedObjectsCount]):
1499         (+[WebCoreStatistics javaScriptProtectedGlobalObjectsCount]):
1500         (+[WebCoreStatistics javaScriptProtectedObjectTypeCounts]):
1501         (+[WebCoreStatistics shouldPrintExceptions]):
1502         (+[WebCoreStatistics setShouldPrintExceptions:]):
1503         (+[WebCoreStatistics javaScriptReferencedObjectsCount]):
1504         * Plugins/WebBaseNetscapePluginStream.mm:
1505         (-[WebBaseNetscapePluginStream wantsAllStreams]):
1506         * Plugins/WebBaseNetscapePluginView.mm:
1507         (-[WebBaseNetscapePluginView sendEvent:isDrawRect:]):
1508         (-[WebBaseNetscapePluginView setWindowIfNecessary]):
1509         (-[WebBaseNetscapePluginView start]):
1510         (-[WebBaseNetscapePluginView createPluginScriptableObject]):
1511         (-[WebBaseNetscapePluginView evaluateJavaScriptPluginRequest:]):
1512         (-[WebBaseNetscapePluginView webFrame:didFinishLoadWithReason:]):
1513         (-[WebBaseNetscapePluginView loadPluginRequest:]):
1514         (-[WebBaseNetscapePluginView _printedPluginBitmap]):
1515         * Plugins/WebPluginController.mm:
1516         (+[WebPluginController plugInViewWithArguments:fromPluginPackage:]):
1517         (-[WebPluginController startAllPlugins]):
1518         (-[WebPluginController stopAllPlugins]):
1519         (-[WebPluginController addPlugin:]):
1520         (-[WebPluginController destroyPlugin:]):
1521         (-[WebPluginController destroyAllPlugins]):
1522         * WebView/WebFrame.mm:
1523         (-[WebFrame _stringByEvaluatingJavaScriptFromString:forceUserGesture:]):
1524         * WebView/WebScriptDebugDelegate.mm:
1525         (-[WebScriptCallFrame evaluateWebScript:]):
1526         * WebView/WebView.mm:
1527         (-[WebView aeDescByEvaluatingJavaScriptFromString:]):
1528
1529 2008-08-19  Timothy Hatcher  <timothy@apple.com>
1530
1531         Fixes the Web Inspector flashing white while resizing after
1532         highlighting a page element. Calling disableScreenUpdatesUntilFlush
1533         when attaching and detaching the Inspector page highlight is bad,
1534         since the browser window might not flush again for a while. So screen
1535         updates could be disabled for long periods of time, causing backing store
1536         flashing while resizing. There is no need to call disableScreenUpdatesUntilFlush
1537         when attaching or detaching the child window.
1538
1539         Reviewed by John Sullivan and Kevin McCullough.
1540
1541         * WebInspector/WebNodeHighlight.m:
1542         (-[WebNodeHighlight attach]): Remove the call to disableScreenUpdatesUntilFlush.
1543         (-[WebNodeHighlight detach]): Ditto.
1544
1545 2008-08-19  Timothy Hatcher  <timothy@apple.com>
1546
1547         Correctly remembers the attached state of the Web Inspector so
1548         it opens in that state for the next window, or next launch.
1549
1550         Reviewed by Kevin McCullough.
1551
1552         * WebCoreSupport/WebInspectorClient.mm:
1553         (-[WebInspectorWindowController attach]): Set WebKitInspectorAttachedKey
1554         to YES in the user defaults.
1555         (-[WebInspectorWindowController detach]): Set WebKitInspectorAttachedKey
1556         to NO in the user defaults.
1557
1558 2008-08-18  Alexey Proskuryakov  <ap@webkit.org>
1559
1560         Reviewed by Dan Bernstein.
1561
1562         https://bugs.webkit.org/show_bug.cgi?id=19347
1563         <rdar://problem/5977562> Input methods do not work after switching to a password field
1564         and back.
1565
1566         Fix <rdar://problem/5522011> (The content of the password field of Safari is displayed by
1567         reconversion) in a different way which doesn't conflict with context caching performed
1568         by AppKit.
1569
1570         This original bug does not really occur in ToT or shipping Safari under Mac OS X 10.5.4,
1571         because input methods are disabled in password fields. Attempting to reconvert text typed
1572         with Romaji only yields a string of bullets. Still, it is probably better to match Cocoa
1573         password field behavior and disable reconversion completely.
1574
1575         * WebView/WebHTMLView.mm:
1576         (isInPasswordField): Factored out code to determine that the current selection is in
1577         a password field.
1578         (inputContext): Removed a hack that was breaking TSMGetActiveDocument().
1579         (-[WebHTMLView attributedSubstringFromRange:]): Check for password fields.
1580         (-[WebHTMLView textStorage]): Ditto.
1581
1582 2008-08-12  Darin Adler  <darin@apple.com>
1583
1584         Reviewed by Geoff.
1585
1586         - eliminate JSValue::type()
1587
1588         * WebView/WebView.mm:
1589         (aeDescFromJSValue): Rewrite to use the JSValue::is functions instead
1590         of a switch on JSValue::type().
1591
1592 2008-08-17  Geoffrey Garen  <ggaren@apple.com>
1593
1594         Reviewed by Cameron Zwarich.
1595
1596         Made room for a free word in JSCell.
1597         
1598         (Updated for JavaScriptCore changes.)
1599
1600 2008-08-15  Mark Rowe  <mrowe@apple.com>
1601
1602         Rubber-stamped by Geoff Garen.
1603
1604         <rdar://problem/6139914> Please include a _debug version of JavaScriptCore framework
1605
1606         * Configurations/Base.xcconfig: Factor out the debug-only settings so that they can shared
1607         between the Debug configuration and debug Production variant.
1608
1609 2008-08-14  Sam Weinig  <sam@webkit.org>
1610
1611         Reviewed by Geoffrey Garen and Timothy Hatcher.
1612
1613         Add WebView SPI to set HTMLTokenizer yielding parameters.
1614
1615         * WebView/WebView.mm:
1616         (-[WebView _setCustomHTMLTokenizerTimeDelay:]):
1617         (-[WebView _setCustomHTMLTokenizerChunkSize:]):
1618         * WebView/WebViewPrivate.h:
1619
1620 2008-08-13  Timothy Hatcher  <timothy@apple.com>
1621
1622         Fixes a bug where Safari's find banner would be permanently hidden
1623         when attaching or closing the Web Inspector while attached.
1624
1625         https://bugs.webkit.org/show_bug.cgi?id=20376
1626
1627         Reviewed by Kevin McCullough.
1628
1629         * WebCoreSupport/WebInspectorClient.mm:
1630         (-[WebInspectorWindowController close]):
1631         Carefully manipulate the WebFrameView's frame when closing to
1632         not assume the WebFrameView's frame fills the inspected WebView.
1633         (-[WebInspectorWindowController setAttachedWindowHeight:]):
1634         Carefully manipulate the WebFrameView's frame when docking to
1635         not assume the WebFrameView plus the Web Inspector WebViews fills
1636         the full inspected WebView.
1637
1638 2008-08-13  Stephanie Lewis  <slewis@apple.com>
1639
1640         fix 64bit build
1641
1642         * WebCoreSupport/WebInspectorClient.mm:
1643
1644 2008-08-13  Timothy Hatcher  <timothy@apple.com>
1645
1646         Remember the docked state of the Web Inspector, so it can be
1647         reopened docked if it was last docked.
1648
1649         https://bugs.webkit.org/show_bug.cgi?id=14271
1650
1651         Reviewed by Kevin McCullough.
1652
1653         * WebCoreSupport/WebInspectorClient.mm:
1654         (-[WebInspectorWindowController init]): Initialize _shouldAttach
1655         to the value stored in the user defaults. If there has never
1656         been a value stored, default to being attached.
1657         (-[WebInspectorWindowController showWindow:]): Pass the attached
1658         state to InspectorController::setWindowVisible.
1659
1660 2008-08-12  Timothy Hatcher  <timothy@apple.com>
1661
1662         Remove the Inspector's WebView for the view hierarchy when closed
1663         while attached. This prevents it from showing in the background
1664         while the page changes.
1665
1666         Reviewed by Kevin McCullough.
1667
1668         * WebCoreSupport/WebInspectorClient.mm:
1669         (-[WebInspectorWindowController close:]): Call removeFromSuperview
1670         on the Inspector's WebView if it isn't attached, so it will not
1671         be visible when navigating pages while closed.
1672
1673 2008-08-12  Timothy Hatcher  <timothy@apple.com>
1674
1675         Make the docked Web Inspector resizable.
1676
1677         https://bugs.webkit.org/show_bug.cgi?id=14282
1678
1679         Reviewed by Kevin McCullough.
1680
1681         * WebCoreSupport/WebInspectorClient.h:
1682         * WebCoreSupport/WebInspectorClient.mm:
1683         (WebInspectorClient::setAttachedWindowHeight): Call setAttachedWindowHeight:
1684         on the WebInspectorWindowController.
1685         (-[WebInspectorWindowController showWindow:]): Call setAttachedWindowHeight:.
1686         (-[WebInspectorWindowController setAttachedWindowHeight:]): Moved code
1687         from showWindow: and generalized to allow being called multiple times.
1688         Remembers the last height passed, which is used by showWindow: the next
1689         time the Inspector attaches.
1690
1691 2008-08-12  Timothy Hatcher  <timothy@apple.com>
1692
1693         Remove unneeded header imports from some Web Inspector files.
1694
1695         Reviewed by Adam Roben.
1696
1697         * WebCoreSupport/WebInspectorClient.mm:
1698         * WebInspector/WebInspector.mm:
1699         * WebInspector/WebNodeHighlightView.m:
1700
1701 2008-08-12  Timothy Hatcher  <timothy@apple.com>
1702
1703         Remove the call to WKNSWindowMakeBottomCornersSquare on the
1704         Web Inspector's window. This isn't needed anymore since the
1705         window style masks used always have square bottom corners.
1706
1707         Reviewed by Adam Roben.
1708
1709         * WebCoreSupport/WebInspectorClient.mm:
1710         (-[WebInspectorWindowController window]): Remove the call
1711         to WKNSWindowMakeBottomCornersSquare.
1712
1713 2008-08-12  Timothy Hatcher  <timothy@apple.com>
1714
1715         Make attaching and detaching the Web Inspector instantaneous.
1716         This also preserves the current view, other state, and keeps
1717         the script debugger attached.
1718
1719         https://bugs.webkit.org/show_bug.cgi?id=19301
1720
1721         Reviewed by Adam Roben.
1722
1723         * WebCoreSupport/WebInspectorClient.mm:
1724         (-[WebInspectorWindowController close]): Only call setWindowVisible(false)
1725         when not moving windows.
1726
1727 2008-08-12  Dan Bernstein  <mitz@apple.com>
1728
1729         Reviewed by John Sullivan.
1730
1731         - replace -[WebPreferences updatesWhenOffscreen] with -[WebView shouldUpdateWhileHidden]
1732
1733         * WebCoreSupport/WebFrameLoaderClient.mm:
1734         (WebFrameLoaderClient::transitionToCommittedForNewPage):
1735         * WebView/WebFrame.mm:
1736         (-[WebFrame _updateBackgroundAndUpdatesWhileHidden]):
1737         * WebView/WebFrameInternal.h:
1738         * WebView/WebHTMLView.mm:
1739         (-[WebHTMLView windowWillOrderOnScreen:]):
1740         * WebView/WebPreferenceKeysPrivate.h:
1741         * WebView/WebPreferences.mm:
1742         (+[WebPreferences initialize]):
1743         * WebView/WebPreferencesPrivate.h:
1744         * WebView/WebView.mm:
1745         (-[WebViewPrivate init]):
1746         (-[WebView _preferencesChangedNotification:]):
1747         (-[WebView setBackgroundColor:]):
1748         (-[WebView setDrawsBackground:]):
1749         (-[WebView shouldUpdateWhileHidden]):
1750         (-[WebView setShouldUpdateWhileHidden:]):
1751         * WebView/WebViewPrivate.h:
1752
1753 2008-08-08  Dan Bernstein  <mitz@apple.com>
1754
1755         Reviewed by John Sullivan.
1756
1757         - fix <rdar://problem/6130216> Exception "windowRegionBeingDrawn != nil" in NSView when caching image of a subframe
1758
1759         This change reintroduces <https://bugs.webkit.org/show_bug.cgi?id=5195> on Leopard.
1760
1761         * WebView/WebHTMLView.mm:
1762         (-[WebHTMLView _recursive:displayRectIgnoringOpacity:inContext:topView:]): Removed an
1763         unsuccessful workaround for <rdar://problem/5668489>, because invoking
1764         layout may change the view hierarchy during the drawing operation,
1765         which is not supported on Leopard.
1766
1767 2008-08-08  Maxime Britto  <britto@apple.com>
1768
1769         Reviewed by Adele.
1770
1771         * WebView/WebFrame.mm:
1772         (-[WebFrame _scrollDOMRangeToVisible:]):
1773
1774 2008-08-08  Brady Eidson  <beidson@apple.com>
1775
1776         Reviewed by Sam Weinig
1777
1778         Fix for <rdar://problem/5865504>
1779
1780         This bug was actually *largely* fixed by http://trac.webkit.org/changeset/35538.
1781         But with that same patch, it became possible for a WebResource to fail to initialize.  
1782         Therefore we were trying to add nil to an NSCFArray for certain situations, which is bad.
1783         Lets fix that, shall we?
1784
1785         * WebView/WebArchive.mm:
1786         (-[WebArchive subresources]): 
1787
1788 2008-08-06  Eric Seidel  <eric@webkit.org>
1789
1790         Reviewed by Cameron Zwarich.
1791
1792         Move more methods from Frame into ScriptController
1793         https://bugs.webkit.org/show_bug.cgi?id=20294
1794
1795         The WebKit side of this move.  Calls to frame() are now frame()->script()
1796
1797         * Plugins/WebBaseNetscapePluginView.mm:
1798         (-[WebBaseNetscapePluginView getVariable:value:]):
1799         (-[WebBaseNetscapePluginView _destroyPlugin]):
1800         * Plugins/WebPluginController.mm:
1801         (-[WebPluginController destroyPlugin:]):
1802         (-[WebPluginController destroyAllPlugins]):
1803         * WebCoreSupport/WebFrameLoaderClient.mm:
1804         * WebView/WebFrame.mm:
1805         (-[WebFrame windowObject]):
1806         * WebView/WebScriptDebugger.mm:
1807         (WebScriptDebugger::callEvent):
1808         * WebView/WebView.mm:
1809         (-[WebView windowScriptObject]):
1810
1811 2008-08-06  Dan Bernstein  <mitz@apple.com>
1812
1813         Reviewed by Mark Rowe.
1814
1815         - fix an assertion failure in Cache::setCapacities()
1816
1817         * Misc/WebKitSystemBits.h: Changed the return type of WebMemorySize()
1818         to uint64_t.
1819         * Misc/WebKitSystemBits.m:
1820         (WebMemorySize):
1821         * WebView/WebView.mm:
1822         (+[WebView _setCacheModel:]):
1823
1824 2008-08-05  Anders Carlsson  <andersca@apple.com>
1825
1826         Pass in the correct class here.
1827         
1828         * WebView/WebResource.mm:
1829         (-[WebResourcePrivate dealloc]):
1830
1831 2008-08-05  Anders Carlsson  <andersca@apple.com>
1832
1833         Reviewed by Darin Adler.
1834
1835         <rdar://problem/6037398>
1836         ER: Deallocate WebKit objects on the main thread, even if released on secondary thread
1837         
1838         Add calls to WebCoreObjCScheduleDeallocateOnMainThread in dealloc methods of objects we expose.
1839
1840         * Carbon/CarbonWindowAdapter.m:
1841         (-[CarbonWindowAdapter dealloc]):
1842         * History/WebBackForwardList.mm:
1843         (-[WebBackForwardList dealloc]):
1844         * History/WebHistoryItem.mm:
1845         (-[WebHistoryItem dealloc]):
1846         * Misc/WebElementDictionary.mm:
1847         (+[WebElementDictionary initialize]):
1848         (-[WebElementDictionary dealloc]):
1849         * WebCoreSupport/WebEditorClient.mm:
1850         (-[WebEditCommand dealloc]):
1851         * WebCoreSupport/WebFrameLoaderClient.mm:
1852         * WebView/WebArchive.mm:
1853         (-[WebArchivePrivate dealloc]):
1854         * WebView/WebDataSource.mm:
1855         (-[WebDataSourcePrivate dealloc]):
1856         * WebView/WebHTMLView.mm:
1857         (-[WebHTMLViewPrivate dealloc]):
1858         (-[WebHTMLView dealloc]):
1859         * WebView/WebResource.mm:
1860         (-[WebResourcePrivate dealloc]):
1861
1862 2008-08-05  Anders Carlsson  <andersca@apple.com>
1863
1864         Reviewed by Darin Adler.
1865
1866         Remove MainThreadObjectDeallocator.{h|mm}.
1867
1868         * WebView/MainThreadObjectDeallocator.h: Removed.
1869         * WebView/MainThreadObjectDeallocator.mm: Removed.
1870         
1871         * WebView/WebView.mm:
1872         (-[WebView dealloc]):
1873         Call WebCoreObjCScheduleDeallocateOnMainThread instead.
1874
1875 2008-08-05  Anders Carlsson  <andersca@apple.com>
1876
1877         Reviewed by Darin Adler.
1878
1879         Make the main thread object deallocator work with subclasses.
1880         
1881         * WebView/MainThreadObjectDeallocator.h:
1882         * WebView/MainThreadObjectDeallocator.mm:
1883         (deallocCallback):
1884         Call the correct dealloc method.
1885                 
1886         (scheduleDeallocateOnMainThread):
1887         Store both the class and the instance, so we know which dealloc method to call.
1888         
1889         * WebView/WebView.mm:
1890         (-[WebViewPrivate dealloc]):
1891         Schedule deallocation on the main thread.
1892
1893 2008-08-05  Dan Bernstein  <mitz@apple.com>
1894
1895         Reviewed by Mark Rowe and Anders Carlsson.
1896
1897         - fix WebMemorySize() reporting a value capped at 2GB
1898
1899         * misc/WebKitSystemBits.m:
1900         (WebMemorySize): Changed to return the max_mem field, which, unlike
1901         memory_size, is not capped at 2GB.
1902         * WebView/WebView.mm:
1903         (+[WebView _setCacheModel:]): Made the cache sizes for over 2GB RAM the
1904         same as for 2GB, so that behavior on machines that have more than 2GB
1905         RAM is not affected by the fix to WebMemorySize().
1906
1907 2008-08-04  Mark Rowe  <mrowe@apple.com>
1908
1909         Build fix.
1910
1911         * WebView/WebHTMLView.mm:
1912
1913 2008-08-04  Mark Rowe  <mrowe@apple.com>
1914
1915         Reviewed by Kevin Decker.
1916
1917         Adopt the formal protocols where necessary.
1918         Final part of fix for <rdar://problem/5853147>.
1919
1920         * WebCoreSupport/WebInspectorClient.mm:
1921         * WebView/WebHTMLView.mm:
1922         * WebView/WebView.mm:
1923         (-[WebView _openFrameInNewWindowFromMenu:]):
1924
1925 2008-08-04  Mark Rowe  <mrowe@apple.com>
1926
1927         Reviewed by Darin Adler.
1928
1929         Declare empty protocols when using versions of AppKit that do not use formal protocols for delegates and data sources.
1930         Part one of fix for <rdar://problem/5853147>.
1931
1932         * Misc/EmptyProtocolDefinitions.h:
1933         * WebKitPrefix.h:
1934
1935 2008-08-04  Brady Eidson  <beidson@apple.com>
1936
1937         Reviewed by Mitz Pettel
1938
1939         Fix <rdar://problem/5820157> - Saving WebArchives of Mail attachments broken.
1940
1941         This broke in r31355 when we stopped returning nil WebResources when there was nil
1942         resource data.
1943
1944         * WebView/WebResource.mm:
1945         (-[WebResource _initWithCoreResource:]): Restore previous behavior of returning nil
1946           when the resource data is null.
1947
1948 2008-08-02  Matt Lilek  <webkit@mattlilek.com>
1949
1950         Reviewed by Tim Hatcher.
1951
1952         Update the window gradient offset to match the inspector toolbar's new height.
1953
1954         * WebCoreSupport/WebInspectorClient.mm:
1955         (-[WebInspectorWindowController window]):
1956
1957 2008-08-01  Anders Carlsson  <andersca@apple.com>
1958
1959         Reviewed by Jon.
1960
1961         <rdar://problem/6120206>
1962         Crash when plug-in queries for NPPVpluginWantsAllNetworkStreams.
1963         
1964         Pass in a pointer to a void* to make sure that plug-ins don't overwrite the stack.
1965
1966         * Plugins/WebBaseNetscapePluginStream.mm:
1967         (-[WebBaseNetscapePluginStream wantsAllStreams]):
1968
1969 2008-07-31  Anders Carlsson  <andersca@apple.com>
1970
1971         Reviewed by Darin Adler.
1972
1973         <rdar://problem/5949410>
1974         Add the ability to transfer a given application cache to a new database.
1975
1976         * Misc/WebKitNSStringExtras.h:
1977         * Misc/WebKitNSStringExtras.m:
1978         (+[NSString _webkit_applicationCacheDirectoryWithBundleIdentifier:]):
1979         New method which returns the appopriate cache directory for a given bundle identifier.
1980         
1981         * WebView/WebDataSource.mm:
1982         (-[WebDataSource _transferApplicationCache:]):
1983         Transfer the application cache.
1984         
1985         * WebView/WebDataSourcePrivate.h:
1986         * WebView/WebView.mm:
1987         (WebKitInitializeApplicationCachePathIfNecessary):
1988         Change this to use _webkit_applicationCacheDirectoryWithBundleIdentifier.
1989
1990 2008-07-31  John Sullivan  <sullivan@apple.com>
1991
1992         WebKit part of <rdar://problem/6116650> Text-only zoom setting should be stored in WebKit prefs
1993
1994         Reviewed by Hyatt
1995
1996         * WebView/WebPreferenceKeysPrivate.h:
1997         added WebKitZoomsTextOnlyPreferenceKey
1998         
1999         * WebView/WebPreferences.mm:
2000         (+[WebPreferences initialize]):
2001         default value of YES for WebKitZoomsTextOnlyPreferenceKey
2002         (-[WebPreferences zoomsTextOnly]):
2003         getter for WebKitZoomsTextOnlyPreferenceKey
2004         (-[WebPreferences setZoomsTextOnly:]):
2005         setter for WebKitZoomsTextOnlyPreferenceKey
2006         
2007         * WebView/WebPreferencesPrivate.h:
2008         declare zoomsTextOnly/setZoomsTextOnly:
2009         
2010         * WebView/WebView.mm:
2011         (-[WebView _preferencesChangedNotification:]):
2012         update WebCore::Settings value for zoomsTextOnly
2013
2014 2008-07-31  David D. Kilzer  <ddkilzer@webkit.org>
2015
2016         Fix layout test results for webarchive/test-xml-stylesheet.xml
2017
2018         Reviewed by Darin Adler.
2019
2020         Needed to expose -[WebHTMLRepresentation supportedNonImageMIMETypes]
2021         for DumpRenderTree.
2022
2023         * WebView/WebHTMLRepresentationInternal.h: Added.
2024
2025 2008-07-31  Alexey Proskuryakov  <ap@webkit.org>
2026
2027         Release build fix.
2028
2029         * Plugins/WebBaseNetscapePluginView.mm: (-[WebBaseNetscapePluginView setWindowIfNecessary]):
2030         Don't define to npErr in release builds, as it is only used for logging.
2031
2032 2008-07-31  John Sullivan  <sullivan@apple.com>
2033
2034         Fixed <https://bugs.webkit.org/show_bug.cgi?id=5195>
2035         drawing with cacheDisplayInRect:toBitmapImageRep: doesn't trigger layout on Leopard
2036
2037         Reviewed by Dan
2038
2039         * WebView/WebHTMLView.mm:
2040         (-[WebHTMLView _recursive:displayRectIgnoringOpacity:inContext:topView:]):
2041         include Leopard in the #ifdef that forces a layout if needed
2042
2043 2008-07-30  Brady Eidson  <beidson@apple.com>
2044
2045         Reviewed by Adam and Hyatt
2046
2047         Fix for <rdar://problem/6099748>
2048
2049         * WebView/WebView.mm:
2050         (-[WebView _preferencesChangedNotification:]): Set the "don't enforce CSS mime type in strict mode" 
2051           quirk when running under iWeb 2
2052
2053 2008-07-31  Alexey Proskuryakov  <ap@webkit.org>
2054
2055         Rubber-stamped by Maciej.
2056
2057         Eliminate JSLock (it was already disabled, removing the stub implementaion and all
2058         call sites now).
2059
2060         * ForwardingHeaders/kjs/JSLock.h: Removed.
2061         * Misc/WebCoreStatistics.mm:
2062         (+[WebCoreStatistics javaScriptObjectsCount]):
2063         (+[WebCoreStatistics javaScriptGlobalObjectsCount]):
2064         (+[WebCoreStatistics javaScriptProtectedObjectsCount]):
2065         (+[WebCoreStatistics javaScriptProtectedGlobalObjectsCount]):
2066         (+[WebCoreStatistics javaScriptProtectedObjectTypeCounts]):
2067         (+[WebCoreStatistics shouldPrintExceptions]):
2068         (+[WebCoreStatistics setShouldPrintExceptions:]):
2069         (+[WebCoreStatistics javaScriptReferencedObjectsCount]):
2070         * Plugins/WebBaseNetscapePluginStream.mm:
2071         (-[WebBaseNetscapePluginStream wantsAllStreams]):
2072         * Plugins/WebBaseNetscapePluginView.mm:
2073         (-[WebBaseNetscapePluginView sendEvent:isDrawRect:]):
2074         (-[WebBaseNetscapePluginView setWindowIfNecessary]):
2075         (-[WebBaseNetscapePluginView start]):
2076         (-[WebBaseNetscapePluginView createPluginScriptableObject]):
2077         (-[WebBaseNetscapePluginView evaluateJavaScriptPluginRequest:]):
2078         (-[WebBaseNetscapePluginView webFrame:didFinishLoadWithReason:]):
2079         (-[WebBaseNetscapePluginView loadPluginRequest:]):
2080         (-[WebBaseNetscapePluginView _printedPluginBitmap]):
2081         * Plugins/WebPluginController.mm:
2082         (+[WebPluginController plugInViewWithArguments:fromPluginPackage:]):
2083         (-[WebPluginController startAllPlugins]):
2084         (-[WebPluginController stopAllPlugins]):
2085         (-[WebPluginController addPlugin:]):
2086         (-[WebPluginController destroyPlugin:]):
2087         (-[WebPluginController destroyAllPlugins]):
2088         * WebView/WebFrame.mm:
2089         (-[WebFrame _stringByEvaluatingJavaScriptFromString:forceUserGesture:]):
2090         * WebView/WebScriptDebugDelegate.mm:
2091         (-[WebScriptCallFrame evaluateWebScript:]):
2092         * WebView/WebView.mm:
2093         (-[WebView aeDescByEvaluatingJavaScriptFromString:]):
2094
2095 2008-07-30  Beth Dakin  <bdakin@apple.com>
2096
2097         Reviewed by Anders Carlsson.
2098
2099         Fixes <rdar://problem/6041390>
2100
2101         Adds the ability to have a frame that is "disconnected" from the 
2102         main frame from the perspective of top and parent in 
2103         Javascript.
2104
2105         * WebView/WebFrame.mm:
2106         (-[WebFrame _setIsDisconnectedFrame]):
2107         * WebView/WebFramePrivate.h:
2108
2109 2008-07-29  Mark Rowe  <mrowe@apple.com>
2110
2111         Tweak to the build fix to keep Dan happy.
2112
2113         * Plugins/WebBaseNetscapePluginView.mm:
2114         * WebView/WebHTMLView.mm:
2115
2116 2008-07-29  Mark Rowe  <mrowe@apple.com>
2117
2118         Build fix.
2119
2120         * Plugins/WebBaseNetscapePluginView.mm:
2121         (-[WebBaseNetscapePluginView inputContext]):
2122         * WebView/WebHTMLView.mm:
2123
2124 2008-07-28  Anders Carlsson  <andersca@apple.com>
2125
2126         Reviewed by Kevin Decker.
2127
2128         Based on a patch by Dimcho Balev.
2129         
2130         https://bugs.webkit.org/show_bug.cgi?id=18676
2131         <rdar://problem/6106578>
2132         Plug-In API Proposal: Enable plugins to receive response body when an HTTP error occurs
2133
2134         * Plugins/WebBaseNetscapePluginStream.h:
2135         Add NPP_GetValue pointer.
2136         
2137         * Plugins/WebBaseNetscapePluginStream.mm:
2138         (-[WebBaseNetscapePluginStream setPlugin:]):
2139         Initialize NPP_GetValue.
2140         
2141         (-[WebBaseNetscapePluginStream wantsAllStreams]):
2142         Call NPP_GetValue.
2143         
2144         * Plugins/WebPlugInStreamLoaderDelegate.h:
2145         * WebCoreSupport/WebNetscapePlugInStreamLoaderClient.h:
2146         * WebCoreSupport/WebNetscapePlugInStreamLoaderClient.mm:
2147         (WebNetscapePlugInStreamLoaderClient::wantsAllStreams):
2148         Implement this and call down to the stream.
2149
2150 2008-07-28  Anders Carlsson  <andersca@apple.com>
2151
2152         Reviewed by Adam.
2153
2154         <rdar://problem/6105529> 
2155         https://bugs.webkit.org/show_bug.cgi?id=19659
2156         Turning off plugins causes crash
2157         
2158         When an active page has plug-ins, and plug-ins are disabled, they will be stopped and will
2159         end up in a state where they don't have an event handler. Because of this, we need to 
2160         check that the plug-in has been started before calling the event handler.
2161         
2162         * Plugins/WebBaseNetscapePluginView.mm:
2163         (-[WebBaseNetscapePluginView sendActivateEvent:]):
2164         (-[WebBaseNetscapePluginView sendDrawRectEvent:]):
2165         (-[WebBaseNetscapePluginView setHasFocus:]):
2166         (-[WebBaseNetscapePluginView mouseDown:]):
2167         (-[WebBaseNetscapePluginView mouseUp:]):
2168         (-[WebBaseNetscapePluginView mouseEntered:]):
2169         (-[WebBaseNetscapePluginView mouseExited:]):
2170         (-[WebBaseNetscapePluginView handleMouseMoved:]):
2171         (-[WebBaseNetscapePluginView mouseDragged:]):
2172         (-[WebBaseNetscapePluginView scrollWheel:]):
2173         (-[WebBaseNetscapePluginView keyUp:]):
2174         (-[WebBaseNetscapePluginView keyDown:]):
2175         (-[WebBaseNetscapePluginView flagsChanged:]):
2176         (-[WebBaseNetscapePluginView cut:]):
2177         (-[WebBaseNetscapePluginView copy:]):
2178         (-[WebBaseNetscapePluginView paste:]):
2179         (-[WebBaseNetscapePluginView selectAll:]):
2180         (-[WebBaseNetscapePluginView drawRect:]):
2181         (-[WebBaseNetscapePluginView inputContext]):
2182
2183 2008-07-26  Daniel Jalkut  <jalkut@red-sweater.com>
2184
2185         Reviewed by Geoff Garen.
2186
2187         Changes to accommodate newly named/signatured loading methods in WebCore.
2188
2189         * Plugins/WebNetscapePluginStream.mm:
2190         (-[WebNetscapePluginStream initWithRequest:plugin:notifyData:sendNotification:]):
2191         * Plugins/WebPluginContainerCheck.mm:
2192         (-[WebPluginContainerCheck _isForbiddenFileLoad]):
2193         * WebView/WebPDFView.mm:
2194         (-[WebPDFView PDFViewWillClickOnLink:withURL:]):
2195
2196 2008-07-21  Mark Rowe  <mrowe@apple.com>
2197
2198         Reviewed by Sam Weinig.
2199
2200         <rdar://problem/6091287> Revamp the handling of CFBundleShortVersionString to be fixed at the major component of the version number.
2201
2202         * Configurations/Version.xcconfig:
2203         * Info.plist:
2204
2205 2008-07-21  Anders Carlsson  <andersca@apple.com>
2206
2207         Reviewed by Geoff.
2208
2209         <rdar://problem/5820667> 
2210         CrashTracer: [USER] 3759 crashes in Safari at FrameLoader::activeDocumentLoader const + 6 while canceling plug-in load
2211         
2212         Don't allow URLs to be loaded in response to an NPP_DestroyStream that happens when tearing down the plug-in.
2213         
2214         * Plugins/WebBaseNetscapePluginView.mm:
2215         (-[WebBaseNetscapePluginView loadRequest:inTarget:withNotifyData:sendNotification:]):
2216
2217 2008-07-21  Mark Rowe  <mrowe@apple.com>
2218
2219         Reviewed by Adam Roben.
2220
2221         <rdar://problem/5624143> WebView printing doesn't work correctly in x86_64
2222
2223         Fix the return type of an NSView method that we override so that the correct data type is used in 64-bit.
2224         This prevents a garbage value being used for the scale factor that the NSView print machinery applies.
2225
2226         * WebView/WebHTMLView.mm:
2227
2228 2008-07-21  Mark Rowe  <mrowe@apple.com>
2229
2230         Reviewed by Adam Roben.
2231
2232         Fix CallDelegateReturningFloat for x86_64.  The x86_64 Objective-C runtime
2233         only uses objc_msgSend_fpret for long double return values.  For float return
2234         values the standard objc_msgSend is used, as on ppc and ppc64.
2235
2236         * WebView/WebView.mm: Use objc_msgSend_float_return as the name of our version of
2237         objc_msgSend with the correct return type.  We can no longer call it objc_msgSend_fpret
2238         as that method is defined by the Objective-C runtime for x86_64.
2239         (CallDelegateReturningFloat):
2240
2241 2008-07-14  Dan Bernstein  <mitz@apple.com>
2242
2243         Reviewed by John Sullivan.
2244
2245         - WebKit part of fixing <rdar://problem/6071850> Subviews not drawn correctly when using -cacheDisplayInRect:toBitmapImageRep:
2246
2247         * Plugins/WebBaseNetscapePluginView.mm:
2248         (-[WebBaseNetscapePluginView saveAndSetNewPortStateForUpdate:]): Changed
2249         to account for the case of being drawn into a bitmap context that is not
2250         a window's backing store. In that case, there are no valid "rects being
2251         drawn" to clip to.
2252         * WebView/WebHTMLView.mm:
2253         (-[WebHTMLView _recursive:displayRectIgnoringOpacity:inContext:topView:]):
2254         Added an override of this NSView method which is used in for
2255         -cacheDisplayInRect:toBitmapImageRep:. Like two existing NSView drawing
2256         machinery overrides, it sets subviews aside before invoking the
2257         superclass implementation. On Tiger, it also updates the layout.
2258
2259 2008-07-14  Alexey Proskuryakov  <ap@webkit.org>
2260
2261         Reviewed by Geoff Garen.
2262
2263         Eliminate per-thread JavaScript global data instance support and make arbitrary
2264         global data/global object combinations possible.
2265
2266         * Misc/WebCoreStatistics.mm:
2267         (+[WebCoreStatistics javaScriptObjectsCount]):
2268         (+[WebCoreStatistics javaScriptGlobalObjectsCount]):
2269         (+[WebCoreStatistics javaScriptProtectedObjectsCount]):
2270         (+[WebCoreStatistics javaScriptProtectedGlobalObjectsCount]):
2271         (+[WebCoreStatistics javaScriptProtectedObjectTypeCounts]):
2272         (+[WebCoreStatistics javaScriptReferencedObjectsCount]):
2273         Ask WebCore for its instance of JSGlobalData, now that it is not in per-thread storage.
2274
2275 2008-07-11  Stephanie Lewis  <slewis@apple.com>
2276
2277         Reviewed by Darin Adler.
2278
2279         Disable WTF leak messages when using fast teardown.  Use full document teardown while running in debug.
2280
2281         * WebView/WebPreferences.m: Removed.
2282         * WebView/WebPreferences.mm: Copied from http:/svn.webkit.org/repository/webkit/trunk/WebKit/mac/WebView/WebPreferences.m.
2283         (+[WebPreferences initialize]): if running in Default enable full  document teardown
2284         (-[WebPreferences editableLinkBehavior]):
2285         (-[WebPreferences setFullDocumentTeardownEnabled:]):
2286         * WebView/WebView.mm:
2287         (-[WebView _close]): disable leak messages if using fast teardown
2288
2289 2008-07-10  Mark Rowe  <mrowe@apple.com>
2290
2291         Reviewed by Sam Weinig.
2292
2293         Define WEBKIT_VERSION_MIN_REQUIRED=WEBKIT_VERSION_LATEST when building WebKit to ensure that no symbols end up with the weak_import attribute.
2294
2295         * Configurations/WebKit.xcconfig:
2296
2297 2008-07-10  Mark Rowe  <mrowe@apple.com>
2298
2299         Reviewed by Sam Weinig.
2300
2301         Fix the Tiger build by omitting annotations from methods declared in categories when using old versions of GCC.
2302
2303         * Plugins/WebPlugin.h: Wrap annotations on methods declared in categories in the WEBKIT_CATEGORY_METHOD_ANNOTATION macro.
2304         * WebView/WebFrameLoadDelegate.h: Ditto.
2305         * WebView/WebUIDelegate.h: Ditto.
2306
2307 2008-07-10  Anders Carlsson  <andersca@apple.com>
2308
2309         Reviewed by Mark.
2310         
2311         Add availability macros for the new WebPlugin methods.
2312
2313         * Plugins/WebPlugin.h:
2314         * Plugins/WebPluginViewFactory.h:
2315
2316 2008-07-09  Mark Rowe  <mrowe@apple.com>
2317
2318         Reviewed by Geoff Garen.
2319
2320         Don't warn about deprecated functions in production builds.
2321
2322         * Configurations/Base.xcconfig:
2323         * Configurations/DebugRelease.xcconfig:
2324
2325 2008-07-09  Brady Eidson  <beidson@apple.com>
2326
2327         Reviewed by Darin
2328
2329         <rdar://problem/5823684> - Crash manipulating frame tree of a new frame before the new frame
2330         has been installed in a frame tree.
2331
2332         The root of this problem was that calling init() on a new frame could end up calling arbitrary
2333         javascript that might end up removing the frame from the tree.  This opened up a small can of worms
2334         such as the frame not having yet been installed in its frame tree, and other assumed behavior while
2335         destroying the frame.
2336
2337         Note that each platforms WebKit API layer needs to make this new guarantee:
2338         "The new Frame must be installed in its FrameTree before newCoreFrame->init() is called"
2339         I am fixing Mac, and Windows and GTK already have this property.  Wx currently has subframes disabled
2340         but will need to add this guarantee when re-enabling, and Qt is currently vulnerable to this same bug.
2341
2342         Alternately, the way frames are created right now is roundabout and asinine, and this is a key
2343         architectural improvement we can make in the future so the individual platform clients are no longer
2344         vulnerable to this problem, which should really have been a WebCore issue.
2345
2346         * WebCoreSupport/WebFrameLoaderClient.mm:
2347         (WebFrameLoaderClient::createFrame):  Don't bother null checking the newCoreFrame - can't be NULL.
2348           Don't appendChild() the new frame here.
2349           Null-check the new frame's page before loading the URL into it, as it might already have been
2350           removed from the page.
2351
2352         * WebView/WebFrame.mm:
2353         (+[WebFrame _createFrameWithPage:frameName:frameView:ownerElement:]):  If there is an ownerElement,
2354           go ahead and install the new frame in the frame tree *before* calling init() on it.
2355
2356 2008-07-09  Anders Carlsson  <andersca@apple.com>
2357
2358         Reviewed by Darin Adler.
2359
2360         Make some WebPlugin and WebPluginFactory SPI public.
2361         
2362         * Plugins/WebPlugin.h:
2363         * Plugins/WebPluginPrivate.h:
2364         * Plugins/WebPluginViewFactory.h:
2365         * Plugins/WebPluginViewFactoryPrivate.h:
2366
2367 2008-07-08  Jon Honeycutt  <jhoneycutt@apple.com>
2368
2369         Reviewed by Anders.
2370
2371         Port r34988 to Mac: don't call NPP_DestroyStream if NPP_NewStream was
2372         unsuccessful.
2373
2374         * Plugins/WebBaseNetscapePluginStream.h: Added new member,
2375         newStreamSuccessful.
2376         * Plugins/WebBaseNetscapePluginStream.mm:
2377         (-[WebBaseNetscapePluginStream initWithRequestURL:plugin:notifyData:sendNotification:]): Initialize new member.
2378         (-[WebBaseNetscapePluginStream startStreamResponseURL:expectedContentLength:lastModifiedDate:MIMEType:headers:]): If NPP_NewStream is successful, set
2379         newStreamSuccessful to YES.
2380         (-[WebBaseNetscapePluginStream _destroyStream]): Only call
2381         NPP_DestroyStream if newStreamSuccessful is true.
2382
2383 2008-07-08  Dan Bernstein  <mitz@apple.com>
2384
2385         Reviewed by John Sullivan.
2386
2387         - WebKit part of <rdar://problem/6008409> Need a way to disable updates in offscreen views
2388
2389         * WebView/WebHTMLView.mm:
2390         (-[WebHTMLView addWindowObservers]): Added code to observe when the
2391         window goes onscreen.
2392         (-[WebHTMLView removeWindowObservers]): Added.
2393         (-[WebHTMLView windowWillOrderOnScreen:]): Added. If the view is set to
2394         not update when offscreen, calls -setNeedsDisplay: just before it comes
2395         onscreen.
2396         * WebView/WebPreferenceKeysPrivate.h: Added preference key.
2397         * WebView/WebPreferences.m:
2398         (+[WebPreferences initialize]): Made updates when offscreen on by
2399         default.
2400         (-[WebPreferences updatesWhenOffscreen]): Added.
2401         (-[WebPreferences setUpdatesWhenOffscreen:]): Added.
2402         * WebView/WebPreferencesPrivate.h:
2403         * WebView/WebView.mm:
2404         (-[WebView _preferencesChangedNotification:]): Added code to update the
2405         updatesWhenOffscreen setting in WebCore.
2406
2407 2008-07-07  Anders Carlsson  <andersca@apple.com>
2408
2409         Reviewed by Darin Adler.
2410
2411         Speculative fix for     
2412         <rdar://problem/5839800>
2413         CrashTracer: [USER] 5802 crashes in Safari at com.apple.WebKit: -[WebHTMLView(WebPrivate) _updateMouseoverWithFakeEvent] + 389
2414         
2415         Set _private->closed to YES before calling -[WebPluginController destroyAllPlugins].
2416         
2417         My theory is that the plug-in destruction callbacks could end up rescheduling timers or re-adding notifications.
2418         This is usually protected by _private->closed, but in this case it might still be false.
2419
2420         * WebView/WebHTMLView.mm:
2421         (-[WebHTMLView close]):
2422
2423 2008-07-05  Mark Rowe  <mrowe@apple.com>
2424
2425         Reviewed by John Sullivan.
2426
2427         Remove WebSearchableTextView as it has been unused for some time now.
2428
2429         * Misc/WebSearchableTextView.h: Removed.
2430         * Misc/WebSearchableTextView.m: Removed.
2431
2432 2008-07-05  Mark Rowe  <mrowe@apple.com>
2433
2434         Reviewed by John Sullivan.
2435
2436         Don't leak the result of WKCopyCFLocalizationPreferredName when running under GC.
2437
2438         * Misc/WebNSUserDefaultsExtras.m:
2439         (-[NSString _webkit_HTTPStyleLanguageCode]):
2440
2441 2008-07-02  Alexey Proskuryakov  <ap@webkit.org>
2442
2443         Inspired and reviewed by Mark Rowe.
2444
2445         Change non-API includes from JavaScriptCore/ to kjs/ and wtf/ to match prevalent style.
2446
2447         * Carbon/HIViewAdapter.m:
2448         * DOM/WebDOMOperations.mm:
2449         * DefaultDelegates/WebDefaultContextMenuDelegate.mm:
2450         * DefaultDelegates/WebDefaultPolicyDelegate.m:
2451         * History/WebBackForwardList.mm:
2452         * History/WebHistory.mm:
2453         * History/WebHistoryItem.mm:
2454         * History/WebHistoryItemInternal.h:
2455         * Misc/WebCoreStatistics.mm:
2456         * Misc/WebDownload.m:
2457         * Misc/WebGraphicsExtras.c:
2458         * Misc/WebKitLogging.h:
2459         * Misc/WebKitSystemBits.m:
2460         * Misc/WebLocalizableStrings.m:
2461         * Misc/WebNSArrayExtras.m:
2462         * Misc/WebNSDataExtras.m:
2463         * Misc/WebNSDictionaryExtras.m:
2464         * Misc/WebNSFileManagerExtras.m:
2465         * Misc/WebNSPasteboardExtras.mm:
2466         * Misc/WebNSURLExtras.mm:
2467         * Misc/WebNSUserDefaultsExtras.m:
2468         * Panels/WebAuthenticationPanel.m:
2469         * Panels/WebPanelAuthenticationHandler.m:
2470         * Plugins/WebBaseNetscapePluginView.mm:
2471         * Plugins/WebBasePluginPackage.m:
2472         * Plugins/WebNetscapePluginEmbeddedView.mm:
2473         * Plugins/WebPluginContainerCheck.mm:
2474         * Plugins/WebPluginController.mm:
2475         * Plugins/WebPluginDatabase.mm:
2476         * WebCoreSupport/WebJavaScriptTextInputPanel.m:
2477         * WebCoreSupport/WebKeyGenerator.m:
2478         * WebCoreSupport/WebViewFactory.mm:
2479         * WebKitPrefix.h:
2480         * WebView/WebHTMLRepresentation.mm:
2481         * WebView/WebPDFRepresentation.m:
2482         * WebView/WebPDFView.mm:
2483         * WebView/WebScriptDebugger.mm:
2484
2485 2008-07-01  Alexey Proskuryakov  <ap@webkit.org>
2486
2487         Reviewed by Darin Adler.
2488
2489         Disable JSLock for per-thread contexts.
2490
2491         * Misc/WebCoreStatistics.mm:
2492         (+[WebCoreStatistics javaScriptObjectsCount]):
2493         (+[WebCoreStatistics javaScriptGlobalObjectsCount]):
2494         (+[WebCoreStatistics javaScriptProtectedObjectsCount]):
2495         (+[WebCoreStatistics javaScriptProtectedGlobalObjectsCount]):
2496         (+[WebCoreStatistics javaScriptProtectedObjectTypeCounts]):
2497         (+[WebCoreStatistics shouldPrintExceptions]):
2498         (+[WebCoreStatistics setShouldPrintExceptions:]):
2499         (+[WebCoreStatistics javaScriptReferencedObjectsCount]):
2500         * Plugins/WebBaseNetscapePluginView.mm:
2501         (-[WebBaseNetscapePluginView sendEvent:isDrawRect:]):
2502         (-[WebBaseNetscapePluginView setWindowIfNecessary]):
2503         (-[WebBaseNetscapePluginView start]):
2504         (-[WebBaseNetscapePluginView createPluginScriptableObject]):
2505         (-[WebBaseNetscapePluginView evaluateJavaScriptPluginRequest:]):
2506         (-[WebBaseNetscapePluginView webFrame:didFinishLoadWithReason:]):
2507         (-[WebBaseNetscapePluginView loadPluginRequest:]):
2508         (-[WebBaseNetscapePluginView _printedPluginBitmap]):
2509         * Plugins/WebPluginController.mm:
2510         (+[WebPluginController plugInViewWithArguments:fromPluginPackage:]):
2511         (-[WebPluginController startAllPlugins]):
2512         (-[WebPluginController stopAllPlugins]):
2513         (-[WebPluginController addPlugin:]):
2514         (-[WebPluginController destroyPlugin:]):
2515         (-[WebPluginController destroyAllPlugins]):
2516         * WebView/WebFrame.mm:
2517         (-[WebFrame _stringByEvaluatingJavaScriptFromString:forceUserGesture:]):
2518         * WebView/WebScriptDebugDelegate.mm:
2519         (-[WebScriptCallFrame evaluateWebScript:]):
2520         * WebView/WebView.mm:
2521         (-[WebView aeDescByEvaluatingJavaScriptFromString:]):
2522         Pass a parameter (always false) to JSLock and JSLock::DropAllLocks to indicate that WebKit
2523         doesn't need locking. In the future, it may be possible to remove some of these if we
2524         establish that this won't make JSC assertions fail (and that we don't want to add such
2525         assertions either).
2526         Added includes that are now needed.
2527
2528 2008-07-01  Kevin McCullough  <kmccullough@apple.com>
2529
2530         Build fix.
2531
2532         * WebView/WebView.mm:
2533
2534 2008-07-01  Anders Carlsson  <andersca@apple.com>
2535
2536         Reviewed by Darin Adler.
2537
2538         Use the PluginMainThreadScheduler, and implement NPN_PluginThreadAsyncCall.
2539         
2540         * Plugins/WebBaseNetscapePluginView.mm:
2541         (-[WebBaseNetscapePluginView _createPlugin]):
2542         Register the plug-in instance.
2543         
2544         (-[WebBaseNetscapePluginView _destroyPlugin]):
2545         Unegister the plug-in instance.
2546         
2547         * Plugins/WebNetscapePluginPackage.m:
2548         (-[WebNetscapePluginPackage load]):
2549         Set NPN_PluginThreadAsyncCall.
2550         
2551         * Plugins/npapi.mm:
2552         (NPN_PluginThreadAsyncCall):
2553         Implement this.
2554
2555 2008-07-01  Dan Bernstein  <mitz@apple.com>
2556
2557         Reviewed by Darin Adler.
2558
2559         - WebKit part of moving the method to set the base writing direction from Frame to Editor
2560
2561         * WebView/WebHTMLView.mm:
2562         (-[WebHTMLView toggleBaseWritingDirection:]): Changed back to call the
2563         Editor method.
2564         (-[WebHTMLView changeBaseWritingDirection:]): Ditto.
2565         (-[WebHTMLView _changeBaseWritingDirectionTo:]): Ditto.
2566
2567 2008-07-01  Geoffrey Garen  <ggaren@apple.com>
2568
2569         Build fix: forgot to check in this file.
2570
2571         * WebView/WebScriptDebugger.mm:
2572         (WebScriptDebugger::WebScriptDebugger):
2573
2574 2008-06-30  Dan Bernstein  <mitz@apple.com>
2575
2576         Reviewed by Adele Peterson.
2577
2578         - WebKit/mac part of <rdar://problem/3881497> Writing direction context menu item has no effect on text typed in Safari
2579
2580         * WebView/WebHTMLView.mm:
2581         (-[WebHTMLView toggleBaseWritingDirection:]): Changed to call
2582         WebCore::Frame::setSelectionBaseWritingDirection() instead of
2583         WebCore::Editor::setBaseWritingDirection().
2584         (-[WebHTMLView changeBaseWritingDirection:]): Ditto.
2585         (-[WebHTMLView _changeBaseWritingDirectionTo:]): Ditto.
2586
2587 2008-06-28  Darin Adler  <darin@apple.com>
2588
2589         - fix build
2590
2591         * WebView/WebView.mm:
2592         (aeDescFromJSValue): Use get instead of getItem, which no longer exists.
2593
2594 2008-06-26  Anders Carlsson  <andersca@apple.com>
2595
2596         Reviewed by Darin Adler.
2597
2598         Add a new MainThreadObjectDeallocator which can schedule dealloc calls on the main thread
2599         if necessary. Use this for the WebView class. 
2600                 
2601         * WebView/MainThreadObjectDeallocator.h: Added.
2602         * WebView/MainThreadObjectDeallocator.mm: Added.
2603         (deallocCallback):
2604         (scheduleDeallocateOnMainThread):
2605         * WebView/WebView.mm:
2606         (-[WebViewPrivate dealloc]):
2607         (+[WebView initialize]):
2608
2609 2008-06-25  Anders Carlsson  <andersca@apple.com>
2610
2611         Reviewed by Mark.
2612
2613         <rdar://problem/5984270> 
2614         REGRESSION (Tiger only) : Mail crashes because message load is being processed on a secondary thread
2615         
2616         * WebView/WebView.mm:
2617         (tigerMailReleaseIMP):
2618         New method that makes sure that the final release happens on the main thread.
2619         
2620         (-[WebView release]):
2621         New method that just calls [super release];
2622         
2623         (+[WebView initialize]):
2624         When running under Tiger mail, replace the release method with tigerMailReleaseIMP.
2625
2626 2008-06-19  Alexey Proskuryakov  <ap@webkit.org>
2627
2628         Reviewed by Geoff.
2629
2630         Make Machine per-JSGlobalData.
2631
2632         * WebView/WebScriptDebugger.mm:
2633         (WebScriptDebugger::WebScriptDebugger):
2634
2635 2008-06-17  Alexey Proskuryakov  <ap@webkit.org>
2636
2637         Reviewed by Darin Adler.
2638
2639         Prepare JavaScript heap for being per-thread.
2640
2641         * Misc/WebCoreStatistics.mm:
2642         (+[WebCoreStatistics javaScriptObjectsCount]):
2643         (+[WebCoreStatistics javaScriptGlobalObjectsCount]):
2644         (+[WebCoreStatistics javaScriptProtectedObjectsCount]):
2645         (+[WebCoreStatistics javaScriptProtectedGlobalObjectsCount]):
2646         (+[WebCoreStatistics javaScriptProtectedObjectTypeCounts]):
2647         (+[WebCoreStatistics javaScriptReferencedObjectsCount]):
2648         Use JSGlobalData::threadInstance()->heap instead of static Collector calls.
2649
2650 2008-06-17  Darin Adler  <darin@apple.com>
2651
2652         Reviewed by Sam.
2653
2654         * WebView/WebHTMLView.mm:
2655         (-[WebHTMLView validateUserInterfaceItemWithoutDelegate:]): Use create instead of new
2656         to create a CSSMutableStyleDeclaration.
2657
2658 2008-06-16  Mark Rowe  <mrowe@apple.com>
2659
2660         Reviewed by Darin Adler.
2661
2662         <rdar://problem/5951874> WebHTMLHighlighter mistakenly gained two new methods, causing compile warnings
2663
2664         _pauseNullEventsForAllNetscapePlugins and _resumeNullEventsForAllNetscapePlugins ended up being declared both in
2665         WebHTMLViewInternal.h and as members of the WebHTMLHighlighter protocol in WebHTMLViewPrivate.h.  They don't belong
2666         in the protocol, but they do need to be available outside of WebKit so they're being moved to the correct location
2667         in WebHTMLViewPrivate.h and removed from WebHTMLViewInternal.h.
2668
2669         * WebView/WebHTMLView.mm:
2670         (-[WebHTMLView _pauseNullEventsForAllNetscapePlugins]):
2671         (-[WebHTMLView _resumeNullEventsForAllNetscapePlugins]):
2672         * WebView/WebHTMLViewInternal.h:
2673         * WebView/WebHTMLViewPrivate.h:
2674
2675 2008-06-15  Darin Adler  <darin@apple.com>
2676
2677         - give Frame object functions shorter names: scriptProxy() -> script(),
2678           selectionController() -> selection(), animationController() -> animation()
2679
2680         * Plugins/WebPluginController.mm:
2681         (-[WebPluginController webPlugInContainerSelectionColor]):
2682         * WebView/WebFrame.mm:
2683         (-[WebFrame _attachScriptDebugger]):
2684         (-[WebFrame _hasSelection]):
2685         (-[WebFrame _stringByEvaluatingJavaScriptFromString:forceUserGesture:]):
2686         (-[WebFrame _rangeByAlteringCurrentSelection:SelectionController::direction:SelectionController::granularity:]):
2687         (-[WebFrame _convertToNSRange:]):
2688         (-[WebFrame _convertToDOMRange:]):
2689         (-[WebFrame _replaceSelectionWithFragment:selectReplacement:smartReplace:matchStyle:]):
2690         (-[WebFrame _replaceSelectionWithText:selectReplacement:smartReplace:]):
2691         (-[WebFrame _insertParagraphSeparatorInQuotedContent]):
2692         (-[WebFrame _selectedNSRange]):
2693         (-[WebFrame _selectNSRange:]):
2694         (-[WebFrame globalContext]):
2695         * WebView/WebHTMLView.mm:
2696         (-[WebHTMLView _selectedRange]):
2697         (-[WebHTMLView _hasSelection]):
2698         (-[WebHTMLView _hasSelectionOrInsertionPoint]):
2699         (-[WebHTMLView _hasInsertionPoint]):
2700         (-[WebHTMLView _isEditable]):
2701         (-[WebHTMLView _updateFocusedAndActiveState]):
2702         (-[WebHTMLView readSelectionFromPasteboard:]):
2703         (-[WebHTMLView validateUserInterfaceItemWithoutDelegate:]):
2704         (-[WebHTMLView maintainsInactiveSelection]):
2705         (-[WebHTMLView paste:]):
2706         (isTextInput):
2707         (-[WebHTMLView inputContext]):
2708         (-[WebTextCompleteController doCompletion]):
2709         (-[WebHTMLView selectAll]):
2710         (-[WebHTMLView deselectAll]):
2711         (-[WebHTMLView selectedAttributedString]):
2712         * WebView/WebView.mm:
2713         (-[WebView aeDescByEvaluatingJavaScriptFromString:]):
2714         (-[WebView setSelectedDOMRange:affinity:]):
2715         (-[WebView selectedDOMRange]):
2716         (-[WebView selectionAffinity]):
2717
2718 2008-06-15  Darin Adler  <darin@apple.com>
2719
2720         - rename KJS::List to KJS::ArgList
2721
2722         * WebView/WebScriptDebugger.h:
2723
2724 2008-06-15  Darin Adler  <darin@apple.com>
2725
2726         - new names for more JavaScriptCore files
2727
2728         * WebView/WebView.mm:
2729
2730 2008-06-15  Darin Adler  <darin@apple.com>
2731
2732         - new names for a few key JavaScriptCore files
2733
2734         * ForwardingHeaders/kjs/JSFunction.h: Copied from WebKit/mac/ForwardingHeaders/kjs/function.h.
2735         * ForwardingHeaders/kjs/JSObject.h: Copied from WebKit/mac/ForwardingHeaders/kjs/object.h.
2736         * ForwardingHeaders/kjs/JSString.h: Copied from WebKit/mac/ForwardingHeaders/kjs/internal.h.
2737         * ForwardingHeaders/kjs/JSValue.h: Copied from WebKit/mac/ForwardingHeaders/kjs/value.h.
2738         * ForwardingHeaders/kjs/function.h: Removed.
2739         * ForwardingHeaders/kjs/internal.h: Removed.
2740         * ForwardingHeaders/kjs/object.h: Removed.
2741         * ForwardingHeaders/kjs/value.h: Removed.
2742         * WebView/WebScriptDebugDelegate.mm:
2743
2744 2008-06-15  Darin Adler  <darin@apple.com>
2745
2746         Rubber stamped by Sam.
2747
2748         - use JS prefix and simpler names for basic JavaScriptCore types,
2749           to complement JSValue and JSObject
2750
2751         * WebView/WebView.mm:
2752         (aeDescFromJSValue):
2753
2754 2008-06-14  Darin Adler  <darin@apple.com>
2755
2756         Rubber stamped by Sam.
2757
2758         - new names for kjs_binding.h and kjs_proxy.h
2759
2760         * WebView/WebFrame.mm:
2761         * WebView/WebScriptDebugDelegate.mm:
2762         * WebView/WebView.mm:
2763
2764 2008-06-14  Darin Adler  <darin@apple.com>
2765
2766         Rubber stamped by Sam.
2767
2768         - renamed HTMLGenericFormElement to HTMLFormControlElement
2769
2770         * WebView/WebHTMLRepresentation.mm:
2771         (-[WebHTMLRepresentation elementWithName:inForm:]):
2772         (-[WebHTMLRepresentation controlsInForm:]):
2773
2774 2008-06-14  Darin Adler  <darin@apple.com>
2775
2776         Reviewed by Sam.
2777
2778         - more of https://bugs.webkit.org/show_bug.cgi?id=17257
2779           start ref counts at 1 instead of 0 for speed
2780
2781         * WebCoreSupport/WebFrameLoaderClient.mm:
2782         (WebFrameLoaderClient::createDocumentLoader): Use create instead of new.
2783         (WebFrameLoaderClient::createFrame): Remove now-obsolete adoptRef that was balanced by
2784         a ref call inside the Frame constructor. The lifetime rules for Frame are now the
2785         conventional ones without a special case.
2786
2787         * WebView/WebDataSource.mm:
2788         (-[WebDataSource _initWithDocumentLoader:]): Changed argument to be a PassRefPtr, since
2789         this function takes ownership of the DocumentLoader.
2790         (-[WebDataSource initWithRequest:]): Use create instead of new.
2791         * WebView/WebDataSourceInternal.h: Changed _initWithDocumentLoader argument to be a
2792         PassRefPtr and also cleaned up the header a bit.
2793
2794         * WebView/WebDocumentLoaderMac.h:
2795         (WebDocumentLoaderMac::create): Added. Also made the constructor and a couple of virtual
2796         functions private.
2797
2798         * WebView/WebFrame.mm:
2799         (+[WebFrame _createFrameWithPage:frameName:frameView:ownerElement:]): Use create instead
2800         of new.
2801
2802 2008-06-14  Darin Adler  <darin@apple.com>
2803
2804         Reviewed by Sam.
2805
2806         - more work on https://bugs.webkit.org/show_bug.cgi?id=17257
2807           start ref counts at 1 instead of 0 for speed
2808
2809         * WebView/WebFrame.mm:
2810         (-[WebFrame _replaceSelectionWithFragment:selectReplacement:smartReplace:matchStyle:]):
2811         * WebView/WebPDFView.mm:
2812         (-[WebPDFView PDFViewWillClickOnLink:withURL:]):
2813
2814 2008-06-13  Darin Adler  <darin@apple.com>
2815
2816         Reviewed by John Sullivan.
2817
2818         - updated for addition of FormState argument to action policy functions
2819         - added WebActionFormKey
2820
2821         * WebCoreSupport/WebFrameLoaderClient.h:
2822         * WebCoreSupport/WebFrameLoaderClient.mm:
2823         (WebFrameLoaderClient::dispatchDecidePolicyForNewWindowAction):
2824         (WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction):
2825         (WebFrameLoaderClient::actionDictionary):
2826         * WebKit.exp:
2827         * WebView/WebPolicyDelegate.mm:
2828         * WebView/WebPolicyDelegatePrivate.h:
2829
2830 2008-06-12  John Sullivan  <sullivan@apple.com>
2831
2832         Reviewed by Dan and Darin
2833
2834         Clear up the confusion about _close (older private method) vs -close (newer public method).
2835
2836         * WebView/WebView.mm:
2837         (-[WebView _isClosed]):
2838         simplified style
2839         (-[WebView _close]):
2840         added a comment about how clients and subclasses should use -close instead
2841         (-[WebView dealloc]):
2842         call -close instead of _close, so subclasses that override the public method will have the intended behavior
2843         (-[WebView close]):
2844         added a comment
2845         (-[WebView _windowWillClose:]):
2846         call -close instead of _close, so subclasses that override the public method will have the intended behavior
2847
2848         * WebView/WebViewPrivate.h:
2849         added a comment about how clients and subclasses should use -close instead
2850
2851 2008-06-07  Darin Adler  <darin@apple.com>
2852
2853         Reviewed by Mitz.
2854
2855         - work on https://bugs.webkit.org/show_bug.cgi?id=17257
2856           start ref counts at 1 instead of 0 for speed
2857
2858         * History/WebHistoryItem.mm:
2859         (-[WebHistoryItem init]):
2860         (-[WebHistoryItem initWithURLString:title:lastVisitedTimeInterval:]):
2861         (-[WebHistoryItem initWithURL:target:parent:title:]):
2862         (-[WebHistoryItem initWithURLString:title:displayTitle:lastVisitedTimeInterval:]):
2863         * WebView/WebView.mm:
2864         (+[WebView _decodeData:]):
2865
2866 2008-06-03  Oliver Hunt  <oliver@apple.com>
2867
2868         Reviewed by Tim.
2869
2870         Bug 12983: Web Inspector break on the debugger keyword
2871         <https://bugs.webkit.org/show_bug.cgi?id=12983>
2872
2873         Add stubs to allow old webkit debugger interface to build.
2874
2875         * WebView/WebScriptDebugger.h:
2876         * WebView/WebScriptDebugger.mm:
2877
2878 2008-06-03  Anders Carlsson  <andersca@apple.com>
2879
2880         Reviewed by Darin Adler.
2881
2882         <rdar://problem/5980961>
2883         
2884         In 64-bit Web Kit, converting between float and double, can cause rounding errors which in turn causes
2885         newBottom to be larger than oldBottom which is illegal.
2886         
2887         * WebView/WebHTMLView.mm:
2888         (-[WebHTMLView adjustPageHeightNew:top:bottom:limit:]):
2889
2890 2008-06-02  Anders Carlsson  <andersca@apple.com>
2891
2892         Reviewed by Mitz.
2893
2894         Speculative fix for <rdar://problem/5661112> 
2895         CrashTracer: [USER] 49 crashes in DashboardClient at com.apple.WebCore: WebCore::RenderPart::setWidget + 62
2896         
2897         Defer loads while calling NPP_New. Some plug-ins start a run-loop inside NPP_New and finished loads could cause
2898         layouts to be triggered.
2899         
2900         * Plugins/WebBaseNetscapePluginView.mm:
2901         (-[WebBaseNetscapePluginView _createPlugin]):
2902
2903 2008-05-29  Justin Garcia  <justin.garcia@apple.com>
2904
2905         Reviewed by Darin Adler.
2906         
2907         <rdar://problem/5949462> REGRESSION: Can't paste screen captures into Mail
2908         
2909         AppKit started putting PNG instead of PICT onto the pasteboard for screen 
2910         captures.  Added support for PNG with kUTTypePNG.  Tiger doesn't support
2911         setting and retrieving pasteboard types with UTIs, but we don't know of any
2912         applications on Tiger that put only PNG on the pasteboard.
2913
2914         * WebView/WebHTMLView.mm:
2915         (-[WebHTMLView _documentFragmentFromPasteboard:inContext:allowPlainText:]):
2916         (-[WebHTMLView _documentFragmentFromPasteboard:forType:inContext:subresources:]):
2917
2918 2008-05-29  Anders Carlsson  <andersca@apple.com>
2919
2920         Reviewed by Brady.
2921
2922         <rdar://problem/5970312> 
2923         icon file specified for stand alone web app causes crash if the icon can't be found
2924         
2925         Handle the case where iconData is null.
2926         
2927         * Misc/WebIconFetcher.mm:
2928         (WebIconFetcherClient::finishedFetchingIcon):
2929
2930 2008-05-29  Anders Carlsson  <andersca@apple.com>
2931
2932         Reviewed by Mitz.
2933
2934         <rdar://problem/5971845>
2935         https://bugs.webkit.org/show_bug.cgi?id=19313
2936         Add version member to NPCocoaEvent
2937
2938         Initialize the version member to 0 for all events.
2939         
2940         * Plugins/WebNetscapePluginEventHandlerCocoa.mm:
2941         (initializeEvent):
2942         (WebNetscapePluginEventHandlerCocoa::drawRect):
2943         (WebNetscapePluginEventHandlerCocoa::sendMouseEvent):
2944         (WebNetscapePluginEventHandlerCocoa::flagsChanged):
2945         (WebNetscapePluginEventHandlerCocoa::sendKeyEvent):
2946         (WebNetscapePluginEventHandlerCocoa::windowFocusChanged):
2947         (WebNetscapePluginEventHandlerCocoa::focusChanged):
2948
2949 2008-05-29  Dan Bernstein  <mitz@apple.com>
2950
2951         Reviewed by Jessica Kahn.
2952
2953         - fix <rdar://problem/5965013> Page 2 does not print correctly
2954
2955         When printing, _recursiveDisplayRectIfNeededIgnoringOpacity:... and
2956         _recursiveDisplayAllDirtyWithLockFocus:... can be invoked without
2957         -viewWillDraw being sent first, which could lead to painting without
2958         valid layout. The fix is to ensure up-to-date layout in those methods
2959         when printing.
2960
2961         * WebView/WebHTMLView.mm:
2962         (-[WebHTMLView _recursiveDisplayRectIfNeededIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:topView:]):
2963         (-[WebHTMLView _recursiveDisplayAllDirtyWithLockFocus:visRect:]):
2964
2965 2008-05-28  Anders Carlsson  <andersca@apple.com>
2966
2967         Reviewed by Jon.
2968
2969         Remove workaround, this is no longer a problem.
2970         
2971         * WebView/WebView.mm:
2972         (-[WebView _removeObjectForIdentifier:]):
2973
2974 2008-05-27  Geoffrey Garen  <ggaren@apple.com>
2975
2976         Reviewed by Tim Hatcher.
2977         
2978         Fixed https://bugs.webkit.org/show_bug.cgi?id=19183
2979         REGRESSION (r33979): Crash in DebuggerCallFrame::functionName when
2980         clicking button in returnEvent-crash.html
2981         
2982         Added implementations for willExecuteProgram and didExecuteProgram, which
2983         take care of making sure we're not hanging on to stale data.
2984
2985 2008-05-27  Timothy Hatcher  <timothy@apple.com>
2986
2987         Fixes a bug where unplugging the monitor from a video card and
2988         moving it to another video card would no longer show OpenGL plugins
2989         until you relaunched Safari.
2990
2991         <rdar://problem/5790983> Add AllowOfflineDisplays pixel format
2992         attribute to OpenGL contexts
2993
2994         Reviewed by Kevin Decker.
2995
2996         * Plugins/WebBaseNetscapePluginView.mm:
2997         (-[WebBaseNetscapePluginView _createWindowedAGLContext]): Added
2998         AGL_ALLOW_OFFLINE_RENDERERS for non-Tiger builds.
2999         (-[WebBaseNetscapePluginView _createWindowlessAGLContext]): Ditto.
3000
3001 2008-05-25  Mark Rowe  <mrowe@apple.com>
3002
3003         Reviewed by Darin Adler.
3004
3005         <rdar://problem/5840884> _recursive_resumeNullEventsForAllNetscapePlugins and _pauseNullEvents not defined
3006
3007         Follow-up for r33052.  _recursive_resumeNullEventsForAllNetscapePlugins and _recursive_pauseNullEventsForAllNetscapePlugins
3008         need to be declared in WebFramePrivate.h rather than WebFrameInternal.h so they can be used from outside of WebKit.
3009
3010         * WebView/WebFrame.mm:
3011         (-[WebFrame _recursive_resumeNullEventsForAllNetscapePlugins]):
3012         (-[WebFrame _recursive_pauseNullEventsForAllNetscapePlugins]):
3013         * WebView/WebFrameInternal.h:
3014         * WebView/WebFramePrivate.h:
3015
3016 2008-05-23  Timothy Hatcher  <timothy@apple.com>
3017
3018         Fix attaching and detaching the Web Inspector. This change removes
3019         the clunky animation that never looked right and was causing issues
3020         where the inspected WebView would get into a no useable state.
3021
3022         <rdar://problem/5958812> Attaching and Detaching the Web Inspector
3023         can cause the inspected WebVIew to be unusable
3024
3025         Reviewed by Adam Roben.
3026
3027         * WebCoreSupport/WebInspectorClient.mm:
3028         (-[WebInspectorWindowController close]): Removes animation code.
3029         Sets the frame directly and does a displayIfNeeded to prevent
3030         showing the Inspector in the page and in the Inspector window.
3031         (-[WebInspectorWindowController showWindow:]): Removes animation code.
3032         Sets the frame directly.
3033         (-[WebInspectorWindowController attach]): Simplified.
3034         (-[WebInspectorWindowController detach]): Ditto.
3035
3036 2008-05-22  Dan Bernstein  <mitz@apple.com>
3037
3038         Reviewed by Darin Adler.
3039
3040         - fix broken documentation of
3041           webView:runBeforeUnloadConfirmPanelWithMessage:initiatedByFrame:
3042
3043         * WebView/WebUIDelegate.h: Fixed method name in HeaderDoc for
3044         -webView:runBeforeUnloadConfirmPanelWithMessage:initiatedByFrame:
3045
3046 2008-05-22  Timothy Hatcher  <timothy@apple.com>
3047
3048         <rdar://problem/5956403> Update the Develop menu to match the new Inspector items
3049
3050         Reviewed by Adam Roben.
3051
3052         * WebCoreSupport/WebInspectorClient.mm:
3053         (-[WebInspectorWindowController showWebInspector:]):
3054         (-[WebInspectorWindowController showErrorConsole:]):
3055         (-[WebInspectorWindowController toggleDebuggingJavaScript:]):
3056         (-[WebInspectorWindowController toggleProfilingJavaScript:]):
3057         (-[WebInspectorWindowController validateUserInterfaceItem:]):
3058         * WebInspector/WebInspector.h:
3059         * WebInspector/WebInspector.mm:
3060         (-[WebInspector showConsole:]):
3061         (-[WebInspector showTimeline:]):
3062         (-[WebInspector isDebuggingJavaScript]):
3063         (-[WebInspector toggleDebuggingJavaScript:]):
3064         (-[WebInspector startDebuggingJavaScript:]):
3065         (-[WebInspector stopDebuggingJavaScript:]):
3066         (-[WebInspector isProfilingJavaScript]):
3067         (-[WebInspector toggleProfilingJavaScript:]):
3068         (-[WebInspector startProfilingJavaScript:]):
3069         (-[WebInspector stopProfilingJavaScript:]):
3070
3071 2008-05-22  Josh Aas  <joshmoz@gmail.com>
3072
3073         Reviewed by Anders.
3074
3075         <rdar://problem/5956429> 
3076         https://bugs.webkit.org/show_bug.cgi?id=19192
3077         remove NPNVpluginEventModel, fix example plugin
3078         
3079         * Plugins/WebBaseNetscapePluginView.mm:
3080         (-[WebBaseNetscapePluginView getVariable:value:]):
3081
3082 2008-05-21  Anders Carlsson  <andersca@apple.com>
3083
3084         Reviewed by Maciej.
3085
3086         Add WebIconFetcher.
3087         
3088         * Misc/WebIconFetcher.h: Added.
3089         * Misc/WebIconFetcher.mm: Added.
3090         (WebIconFetcherClient::WebIconFetcherClient):
3091         (WebIconFetcherClient::finishedFetchingIcon):
3092         (WebIconFetcherClient::setFetcher):
3093         (-[WebIconFetcher init]):
3094         (-[WebIconFetcher dealloc]):
3095         (-[WebIconFetcher finalize]):
3096         (-[WebIconFetcher cancel]):
3097         (-[WebIconFetcher _initWithIconFetcher:client:]):
3098         (+[WebIconFetcher _fetchApplicationIconForFrame:target:selector:]):
3099         * Misc/WebIconFetcherInternal.h: Added.
3100         * WebView/WebFrame.mm:
3101         (-[WebFrame fetchApplicationIcon:selector:]):
3102         * WebView/WebFramePrivate.h:
3103
3104 === End merge of squirrelfish ===
3105
3106 2008-05-21  Geoffrey Garen  <ggaren@apple.com>
3107
3108         Reviewed by Tim Hatcher.
3109         
3110         Updated for API changes from merging with trunk WebCore's new debugger.
3111
3112         * WebView/WebScriptDebugDelegate.mm:
3113         (-[WebScriptCallFrame evaluateWebScript:]): Explicitly check for an
3114         exception return, since the DebuggerCallFrame no longer automatically
3115         substitutes the exception for the return value.
3116
3117         * WebView/WebScriptDebugger.mm: Use the dynamic global object, not the
3118         lexical global object, since the debugger attaches based on dynamic
3119         global object.
3120
3121 2008-05-17  Geoffrey Garen  <ggaren@apple.com>
3122
3123         Reviewed by Oliver Hunt.
3124         
3125         Re-enabled previously disabled debugging functionality.
3126         
3127         There are two major changes from how the WebKit debugger used to work:
3128         
3129         (1) All the interesting bits are implemented down in JavaScriptCore. The
3130         debugger just calls through to KJS::DebuggerCallFrame for everything.
3131         
3132         (2) Instead of copyihng a pointer to an ExecState once, the debugger
3133         copies the DebuggerCallFrame passed to it in each callback. This is
3134         because the VM no longer maintains a fully transparent execution state
3135         to which you can hold a pointer, and the DebuggerCallFrames it vends
3136         are temporaries.
3137         
3138         Also, we NULL out a WebScriptCallFrame's DebuggerCallFrame upon return
3139         from its function. This is safer than the old method, which was to
3140         hold a stale ExecState* and hope for the best.
3141
3142 2008-05-13  Geoffrey Garen  <ggaren@apple.com>
3143
3144         Reviewed by Oliver Hunt.
3145
3146         Updated for API changes in KJS::Debugger.
3147
3148         * WebView/WebFrame.mm:
3149         (-[WebFrame _attachScriptDebugger]): Changed the order of operations to
3150         fix an ASSERT that can happen when re-entering _attachScriptDebugger.
3151
3152 2008-05-13  Geoffrey Garen  <ggaren@apple.com>
3153
3154         Reviewed by Oliver Hunt.
3155         
3156         Updated WebScriptDebugger API to accept a SourceProvider instead
3157         of a WebCore::String, to avoid copying.
3158
3159         (WebScriptDebugger::sourceParsed): Updated this function not to return
3160         a value.
3161
3162 2008-04-30  Geoffrey Garen  <ggaren@apple.com>
3163
3164         Build fix: #ifdef'd out some code that doesn't work anymore.
3165
3166 2008-04-30  Geoffrey Garen  <ggaren@apple.com>
3167
3168         Reviewed by Oliver Hunt.
3169         
3170         #ifdef'd out some debugger code that doesn't work anymore.
3171
3172         * WebView/WebScriptDebugDelegate.mm:
3173         (-[WebScriptCallFrame scopeChain]):
3174
3175 2008-04-21  Geoffrey Garen  <ggaren@apple.com>
3176
3177         Build fix.
3178
3179         * ChangeLog:
3180         * WebView/WebScriptDebugDelegate.mm:
3181         (-[WebScriptCallFrame scopeChain]):
3182
3183 2008-03-30  Geoffrey Garen  <ggaren@apple.com>
3184
3185         Reviewed by Oliver Hunt.
3186         
3187         Build fix.
3188
3189 === Start merge of squirrelfish ===
3190
3191 2008-05-21  Darin Adler  <darin@apple.com>
3192
3193         - fix build
3194
3195         * WebView/WebViewPrivate.h: Remove declaration of closeWithFastTeardown. We can add it back later
3196         if we want, but if we do, we should probably make some refinements like checking _private->closed
3197         and applicationIsTerminating.
3198
3199 2008-05-21  Darin Adler  <darin@apple.com>
3200
3201         Reviewed by Anders and Kevin Decker.
3202
3203         - fix <rdar://problem/5951130> REGRESSION: crash on quit after reopening windows from previous session
3204
3205         * WebView/WebView.mm:
3206         (-[WebViewPrivate dealloc]): Fix assertions to not complain when fast teardown is used.
3207         (-[WebView _closePluginDatabases]): Factored out some common code from both versions of close.
3208         (-[WebView _closeWithFastTeardown]): Added an underscore to this method's name, since it's internal.
3209         Streamlined the code a bit. Added a line of code to set _private->closed (this is the bug fix).
3210         (-[WebView _close]): Changed for new method name and to use _closePluginDatabases.
3211
3212 2008-05-19  Stephanie Lewis  <slewis@apple.com>
3213
3214         Reviewed by Darin Adler.
3215     
3216         more fast teardown performance work
3217
3218         * Misc/WebDownload.m:
3219         (-[WebDownloadInternal downloadDidBegin:]):
3220         (-[WebDownloadInternal downloadDidFinish:]):
3221         (-[WebDownloadInternal download:didFailWithError:]):
3222         * WebCoreSupport/WebChromeClient.h:
3223         * WebCoreSupport/WebChromeClient.mm:
3224         (WebChromeClient::disableSuddenTermination):
3225         (WebChromeClient::enableSuddenTermination):
3226
3227 2008-05-18  Dan Bernstein  <mitz@apple.com>
3228
3229         Reviewed by Sam Weinig.
3230
3231         - fix <rdar://problem/5944596> IDNs are displayed as punycode in the authentication panel
3232
3233         * Panels/WebAuthenticationPanel.m:
3234         (-[WebAuthenticationPanel setUpForChallenge:]):
3235
3236 2008-05-16  Timothy Hatcher  <timothy@apple.com>
3237
3238         Removes WebScriptDebugServer files and related calls. This removes
3239         the hooks that Drosera uses for debugging. Now that the Web Inspector
3240         has a better debugger, we don't need these anymore.
3241
3242         Reviewed by Sam Weinig.
3243
3244         * DefaultDelegates/WebScriptDebugServer.h: Removed.
3245         * DefaultDelegates/WebScriptDebugServer.m: Removed.
3246         * DefaultDelegates/WebScriptDebugServerPrivate.h: Removed.
3247         * WebCoreSupport/WebFrameLoaderClient.mm:
3248         * WebKit.exp:
3249         * WebView/WebScriptDebugDelegate.mm:
3250         * WebView/WebScriptDebugger.mm:
3251         (WebScriptDebugger::sourceParsed):
3252         (WebScriptDebugger::callEvent):
3253         (WebScriptDebugger::atStatement):
3254         (WebScriptDebugger::returnEvent):
3255         (WebScriptDebugger::exception):
3256         * WebView/WebView.mm:
3257         (-[WebView _commonInitializationWithFrameName:groupName:]):
3258         * WebView/WebViewPrivate.h:
3259
3260 2008-05-16  Brady Eidson  <beidson@apple.com>
3261
3262         Reviewed by Anders
3263
3264         <rdar://problem/5942616> - Need to standardize LocalStorage persistence path
3265
3266         Took the opportunity to touch up another pref that needs the same standardization.
3267         That pref is currently not in use on Mac.
3268
3269         * WebView/WebPreferences.m:
3270         (-[WebPreferences _setFTPDirectoryTemplatePath:]):
3271         (-[WebPreferences _localStorageDatabasePath]):
3272         (-[WebPreferences _setLocalStorageDatabasePath:]):
3273         (-[WebPreferences _ftpDirectoryTemplatePath]):
3274
3275 2008-05-16  Chris Fleizach  <cfleizach@apple.com>
3276
3277         Reviewed by Alice Liu
3278
3279         <rdar://problem/5710317> REGRESSION:Selecting ranges of text should be possible using the keyboard (15310)
3280
3281         * WebView/WebFrame.mm:
3282         (-[WebFrame _accessibilityTree]):
3283
3284 2008-05-15  Stephanie Lewis  <slewis@apple.com>
3285         
3286         fix mac build
3287
3288         * WebView/WebView.mm:
3289         (-[WebView closeWithFastTeardown]):
3290
3291 2008-05-15  Stephanie Lewis  <slewis@apple.com>
3292
3293         Reviewed by Anders.
3294
3295         Turn on fast teardown.  I added a preference for using full teardown because 
3296         the LEAKS output will be useless without a full teardown.  
3297
3298         preference for fullteardown
3299         * WebView/WebPreferenceKeysPrivate.h:
3300         * WebView/WebPreferences.m:
3301         (-[WebPreferences setFullDocumentTeardownEnabled:]):
3302         (-[WebPreferences fullDocumentTeardownEnabled]):
3303         * WebView/WebPreferencesPrivate.h:
3304         
3305         on application quit dispatch unload events and destroy plugins then exit
3306         * WebView/WebView.mm:
3307         (-[WebView closeWithFastTeardown]):
3308         (-[WebView _close]):
3309         * WebView/WebViewPrivate.h:
3310
3311 2008-05-15  Stephanie Lewis  <slewis@apple.com>
3312
3313         Reviewed by Anders.
3314
3315         get the pending frame unload count from WebCore
3316
3317         * WebView/WebFrame.mm:
3318         (-[WebFrame _pendingFrameUnloadEventCount]):
3319         * WebView/WebFramePrivate.h:
3320
3321 2008-05-15  John Sullivan  <sullivan@apple.com>
3322
3323         Reviewed by Kevin Decker
3324         
3325         - fixed <rdar://problem/5940275> Inspector highlighting moves to bottom-left corner of 
3326           screen when new tab appears
3327           
3328         The highlight should go away entirely, but this simple patch just makes it not jump away.
3329         The issue with it not going away entirely is harder to fix and covered by <rdar://problem/5322306>
3330
3331         * WebInspector/WebNodeHighlight.m:
3332         (-[WebNodeHighlight _repositionHighlightWindow]):
3333         Bail out if target view isn't in a window
3334
3335 2008-05-15  Stephanie Lewis  <slewis@apple.com>
3336
3337         Reviewed by Anders.
3338
3339         Track views that contain plugin instances so that they can be destroyed at application
3340         quit without walking the entire document tree.
3341
3342         Add/Remove Netscape plugin views from instance list.  Start/stop are when netscape
3343         plugins are created and destroyed
3344         * Plugins/WebBaseNetscapePluginView.mm:
3345         (-[WebBaseNetscapePluginView start]):
3346         (-[WebBaseNetscapePluginView stop]):
3347  
3348         Add/remove WebKit plugin views from instance list
3349         * Plugins/WebPluginController.mm:
3350         (-[WebPluginController addPlugin:]):
3351         (-[WebPluginController destroyPlugin:]):
3352         (-[WebPluginController destroyAllPlugins]):
3353
3354         Add a set of views with plugin instances to the WebPluginDatabase
3355         * Plugins/WebPluginDatabase.h:
3356         * Plugins/WebPluginDatabase.mm:
3357         (-[WebPluginDatabase init]):
3358         (-[WebPluginDatabase dealloc]):
3359         (-[WebPluginDatabase addPluginInstanceView:]):
3360         (-[WebPluginDatabase removePluginInstanceView:]):
3361         (-[WebPluginDatabase removePluginInstanceViewsFor:]):
3362         (-[WebPluginDatabase destroyAllPluginInstanceViews]):
3363         
3364         Handle cases where plugin views are detached before the plugin is destroyed.
3365         * WebCoreSupport/WebFrameLoaderClient.mm:
3366         (WebFrameLoaderClient::detachedFromParent2):
3367         (WebFrameLoaderClient::transitionToCommittedFromCachedPage):
3368         (WebFrameLoaderClient::transitionToCommittedForNewPage):
3369
3370         Add plugin instances to the set in the WebPluginDatabase by way of the WebView
3371         * WebView/WebHTMLView.mm:
3372         (-[WebHTMLView _destroyAllWebPlugins]):
3373         * WebView/WebHTMLViewInternal.h:
3374         * WebView/WebView.mm:
3375         (-[WebView addPluginInstanceView:]):
3376         (-[WebView removePluginInstanceView:]):
3377         (-[WebView removePluginInstanceViewsFor:]):
3378         * WebView/WebViewInternal.h:
3379
3380 2008-05-15  Brady Eidson  <beidson@apple.com>
3381
3382         Reviewed by Tim Hatcher
3383
3384         Until the settings/preferences equation can be reworked, we'll need to manually set the local storage path
3385         before setting the page group of the new page.
3386         
3387         * WebView/WebView.mm:
3388         (-[WebView _commonInitializationWithFrameName:groupName:]): Set the LocalStorage path 
3389           immediately after creating the page so it is in place for initializing the LocalStorageThread
3390
3391 2008-05-15  Timothy Hatcher  <timothy@apple.com>
3392
3393         Fixes the bug where the Web Inspector would flash white while resizing.
3394         This was cause by deferring the window creation.
3395
3396         <rdar://problem/5873549> REGRESSION: Inspector flickers horribly while resizing (17979)
3397
3398         Reviewed by Darin Adler.
3399
3400         * WebCoreSupport/WebInspectorClient.mm:
3401         (-[WebInspectorWindowController window]): Don't defer the window creation.
3402
3403 2008-05-15  Alexey Proskuryakov  <ap@webkit.org>
3404
3405         Tiger build fix.
3406
3407         * Misc/WebNSAttributedStringExtras.mm: Import WebTypesInternal.h for NSUInteger.
3408
3409 2008-05-15  Adele Peterson  <adele@apple.com>
3410
3411         Reviewed and landed by Alexey.
3412
3413         Use TextIterator in +[NSAttributedString _web_attributedStringFromRange:].
3414
3415         * Misc/WebNSAttributedStringExtras.mm:
3416         (+[NSAttributedString _web_attributedStringFromRange:]):
3417
3418 2008-05-14  Eric Seidel  <eric@webkit.org>
3419
3420         Reviewed by Oliver.
3421
3422         Add missing NULL check to match rest of file, this was found by the editing fuzzer.
3423
3424         * WebView/WebResource.mm:
3425         (-[WebResource data]):
3426
3427 2008-05-14  Alexey Proskuryakov  <ap@webkit.org>
3428
3429         Reviewed by Dan Bernstein.
3430
3431         NPP_ValidAttributesForMarkedText should return NSArray*, not NSArray.
3432
3433         * Plugins/nptextinput.h:
3434
3435 2008-05-13  Anders Carlsson  <andersca@apple.com>
3436
3437         Reviewed by Sam.
3438
3439         Don't empty the application cache in _setCacheModel, since it will be called during initialization.
3440         Instead, do it in [WebCache empty].
3441         
3442         * Misc/WebCache.mm:
3443         (+[WebCache empty]):
3444         * WebView/WebView.mm:
3445         (+[WebView _setCacheModel:]):
3446
3447 2008-05-13  chris fleizach  <cfleizach@apple.com>
3448
3449         Reviewed by Beth Dakin
3450
3451         <rdar://problem/4780592> WebKit application has its window announced as HTML content
3452
3453         * WebCoreSupport/WebViewFactory.mm:
3454         (-[WebViewFactory AXWebAreaText]):
3455
3456 2008-05-13  Timothy Hatcher  <timothy@apple.com>
3457
3458         Fixes a crash seen in Xcode where CallUIDelegateReturningBoolean
3459         was referencing a nil WebView under validateUserInterfaceItem.
3460         The validateUserInterfaceItem methods was being called at a time
3461         when the WebHTMLView is being torndown.
3462
3463         <rdar://problem/5806229> A crash occurs at CallUIDelegateReturningBoolean()
3464         while mousing down on menu bar after Xcode News window is opened
3465
3466         Reviewed by Ada Chan.
3467
3468         * WebView/WebHTMLView.mm:
3469         (-[WebHTMLView validateUserInterfaceItem:]): NULL check the WebView and
3470         return NO when it is nil. Adds a comment.
3471         * WebView/WebPDFView.mm:
3472         (-[WebPDFView validateUserInterfaceItem:]): Ditto.
3473
3474 2008-05-13  Mark Rowe  <mrowe@apple.com>
3475
3476         Reviewed by John Sullivan.
3477
3478         <rdar://problem/5926425> HIWebViewCreateWithClass declared as API in HIWebView.h but never exported from WebKit.framework
3479
3480         * Carbon/HIWebView.h: Remove HIWebViewCreateWithClass.
3481         * Carbon/HIWebView.m: Ditto.
3482         (HIWebViewCreate):
3483         (HIWebViewConstructor):
3484
3485 2008-05-12  Dan Bernstein  <mitz@apple.com>
3486
3487         Reviewed by Ada Chan.
3488
3489         - WebKit/mac changes for https://bugs.webkit.org/show_bug.cgi?id=17097
3490           <rdar://problem/5715471> CGFontRefs (and HFONTs on Windows) leak because FontCache grows without bound
3491
3492         Added font cache statistics and a function to purge inactive font data.
3493
3494         * Misc/WebCoreStatistics.h:
3495         * Misc/WebCoreStatistics.mm:
3496         (+[WebCoreStatistics cachedFontDataCount]):
3497         (+[WebCoreStatistics cachedFontDataInactiveCount]):
3498         (+[WebCoreStatistics purgeInactiveFontData]):
3499         (+[WebCoreStatistics glyphPageCount]):
3500
3501 2008-05-12  Mark Rowe  <mrowe@apple.com>
3502
3503         Reviewed by Tim Hatcher.
3504
3505         Decorate some deprecated delegate methods with the availability macros.
3506
3507         The compiler doesn't appear to warn if a delegate implements these methods, but using the availability
3508         macros is good for consistency and documentation.
3509
3510         * WebView/WebFrameLoadDelegate.h:
3511         * WebView/WebUIDelegate.h:
3512
3513 2008-05-12  Mark Rowe  <mrowe@apple.com>
3514
3515         Reviewed by Tim Hatcher.
3516
3517         <rdar://problem/5835604> Deprecate HIWebView
3518
3519         Use of HIWebView is deprecated in favor of embedding a WebView in a HICocoaView.
3520
3521         * Carbon/CarbonUtils.h: Include the availability macro header and decorate the functions appropriately.
3522         * Carbon/HIWebView.h: Ditto.
3523
3524 2008-05-12  Kevin Decker  <kdecker@apple.com>
3525
3526         Reviewed by Anders.
3527
3528         Fixed: <rdar://problem/5840884>_recursive_resumeNullEventsForAllNetscapePlugins and _pauseNullEvents not defined
3529         
3530         Re-added these SPI methods because they are needed by some clients. They were accidentally removed
3531         in changeset <http://trac.webkit.org/changeset/31028>
3532         
3533         * Plugins/WebBaseNetscapePluginView.h: Added stopTimers, restartTimers to the header.
3534         * WebView/WebFrame.mm:
3535         (-[WebFrame _recursive_resumeNullEventsForAllNetscapePlugins]): Re-addd.
3536         (-[WebFrame _recursive_pauseNullEventsForAllNetscapePlugins]): Ditto.
3537         * WebView/WebFrameInternal.h: Ditto.
3538         * WebView/WebHTMLView.mm: Ditto.
3539         (-[WebHTMLView _pauseNullEventsForAllNetscapePlugins]): Ditto.
3540         (-[WebHTMLView _resumeNullEventsForAllNetscapePlugins]): Ditto.
3541         * WebView/WebHTMLViewInternal.h: Ditto.
3542         * WebView/WebHTMLViewPrivate.h: Ditto.
3543
3544 2008-05-12  Anders Carlsson  <andersca@apple.com>
3545
3546         Reviewed by Alexey.
3547
3548         Empty the application cache when changing the cache model.
3549         
3550         * WebView/WebView.mm:
3551         (+[WebView _setCacheModel:]):
3552
3553 2008-05-12  Anders Carlsson  <andersca@apple.com>
3554
3555         Reviewed by Oliver.
3556
3557         <rdar://problem/5774495> Make Unicode text input possible in Netscape-style plug-ins
3558         
3559         * Plugins/WebBaseNetscapePluginView.h:
3560         * Plugins/WebBaseNetscapePluginView.mm:
3561         (-[WebBaseNetscapePluginView start]):
3562         Get the plug-in text input vtable pointer.
3563         
3564         (-[WebBaseNetscapePluginView stop]):
3565         Set the plug-in text input vtable pointer to 0.
3566         
3567         (-[WebBaseNetscapePluginView inputContext]):
3568         Return 0 for Carbon plug-ins since we don't want Cocoa to handle text input for them.
3569         
3570         (-[WebBaseNetscapePluginView hasMarkedText]):        
3571         (-[WebBaseNetscapePluginView insertText:]):
3572         (-[WebBaseNetscapePluginView markedRange]):
3573         (-[WebBaseNetscapePluginView selectedRange]):
3574         (-[WebBaseNetscapePluginView setMarkedText:selectedRange:]):
3575         (-[WebBaseNetscapePluginView unmarkText]):
3576         (-[WebBaseNetscapePluginView validAttributesForMarkedText]):
3577         (-[WebBaseNetscapePluginView attributedSubstringFromRange:]):
3578         (-[WebBaseNetscapePluginView characterIndexForPoint:]):
3579         (-[WebBaseNetscapePluginView doCommandBySelector:]):
3580         (-[WebBaseNetscapePluginView firstRectForCharacterRange:]):
3581         (-[WebBaseNetscapePluginView conversationIdentifier]):
3582         Implement NSTextInput and call into the plug-in text input vtable.
3583         
3584         (browserTextInputFuncs):
3585         New method which returns the browser input vtable.
3586         
3587         (-[WebBaseNetscapePluginView getVariable:value:]):
3588         Support getting the browser input vtable pointer.
3589         
3590         * Plugins/WebNetscapePluginEventHandlerCocoa.h:
3591         * Plugins/WebNetscapePluginEventHandlerCocoa.mm:
3592         (WebNetscapePluginEventHandlerCocoa::keyDown):