ffadb7d04fa92d1b9b4f70e140b3b814f91a8b49
[WebKit.git] / WebKit / mac / ChangeLog
1 2010-01-07  Kevin Decker  <kdecker@apple.com>
2
3         Reviewed by Simon Fraser.
4
5         https://bugs.webkit.org/show_bug.cgi?id=33331   
6         (WebHostedNetscapePluginView should pass acceleratedCompositingEnabled bool to NetscapePluginHostManager when instantiating plug-ins)
7         
8         * Plugins/Hosted/NetscapePluginHostManager.h: Modify method signature for instantiatePlugin to include acceleratedCompositingEnabled bool.
9         * Plugins/Hosted/NetscapePluginHostManager.mm:
10         (WebKit::NetscapePluginHostManager::instantiatePlugin):
11         * Plugins/Hosted/WebHostedNetscapePluginView.mm:
12         (-[WebHostedNetscapePluginView createPlugin]): Pass accelerated compositing status to NetscapePluginHostManage
13
14 2010-01-06  Kevin Decker  <kdecker@apple.com>
15
16         Reviewed by Simon Fraser.
17
18         Third step of:
19         <rdar://problem/6398111> Integrate hardware layers with out-of-process plug-ins layer hosting mechanism
20
21         * Plugins/WebNetscapePluginView.mm:
22         (-[WebNetscapePluginView getVariable:value:]): Add case for WKNVSupportsCompositingCoreAnimationPluginsBool.
23
24 2010-01-06  Kevin Decker  <kdecker@apple.com>
25
26         Reviewed by Simon Fraser.
27
28         Second step of:
29         <rdar://problem/6398111> Integrate hardware layers with out-of-process plug-ins layer hosting mechanism
30
31         * Plugins/Hosted/WebHostedNetscapePluginView.h: Expose the CALayer of the plugin by adding -pluginLayer method.
32         * Plugins/Hosted/WebHostedNetscapePluginView.mm:
33         (-[WebHostedNetscapePluginView pluginLayer]): Added.
34         * Plugins/WebNetscapePluginView.h: Expose the CALayer of the plugin by adding -pluginLayer method.
35         * Plugins/WebNetscapePluginView.mm:
36         (-[WebNetscapePluginView pluginLayer]): Added.
37
38 2010-01-06  Kevin Decker  <kdecker@apple.com>
39
40         Reviewed by Eric Carlson.
41
42         First step toward:
43         <rdar://problem/6398111> Integrate hardware layers with out-of-process plug-ins layer hosting mechanism
44         
45         Small refactoring moving the PluginWidget class from WebKit to WebCore.
46
47         * WebCoreSupport/WebFrameLoaderClient.mm: Use the WebCore version of PluginWidget.
48
49 2010-01-05  Dan Bernstein  <mitz@apple.com>
50
51         Reviewed by Mark Rowe.
52
53         Re-enable plug-in halting on Mac after r51953
54
55         * WebCoreSupport/WebPluginHalterClient.mm:
56         (WebPluginHalterClient::enabled): Test for the correct selector.
57
58 2010-01-04  Dan Bernstein  <mitz@apple.com>
59
60         Reviewed by Ada Chan and Mark Rowe.
61
62         Updated copyright string
63
64         * Info.plist:
65
66 2009-12-27  Maciej Stachowiak  <mjs@apple.com>
67
68         Reviewed by Alexey Proskuryakov.
69
70         plugins/get-url-with-iframe-target.html fails on SnowLeopard (64-bit)
71         https://bugs.webkit.org/show_bug.cgi?id=32982
72         
73         This test has been failing on SnowLeopard since it was landed.
74         
75         The problem is that we never delivered the notification for
76         NPN_GetURLNotify, in the frame-targeting case, for out-of-process
77         plugins on Mac.
78         
79         I implemented support for this based on how in-process Mac plugins
80         do it.
81
82         * Plugins/Hosted/HostedNetscapePluginStream.h:
83         * Plugins/Hosted/HostedNetscapePluginStream.mm:
84         (WebKit::HostedNetscapePluginStream::reasonForError):
85         * Plugins/Hosted/NetscapePluginInstanceProxy.h:
86         * Plugins/Hosted/NetscapePluginInstanceProxy.mm:
87         (WebKit::NetscapePluginInstanceProxy::PluginRequest::create):
88         (WebKit::NetscapePluginInstanceProxy::PluginRequest::PluginRequest):
89         (WebKit::NetscapePluginInstanceProxy::destroy):
90         (WebKit::NetscapePluginInstanceProxy::performRequest):
91         (WebKit::NetscapePluginInstanceProxy::webFrameDidFinishLoadWithReason):
92         (WebKit::NetscapePluginInstanceProxy::requestTimerFired):
93         (WebKit::NetscapePluginInstanceProxy::loadRequest):
94         * Plugins/Hosted/WebHostedNetscapePluginView.h:
95         * Plugins/Hosted/WebHostedNetscapePluginView.mm:
96         (-[WebHostedNetscapePluginView webFrame:didFinishLoadWithReason:]):
97         (-[WebHostedNetscapePluginView webFrame:didFinishLoadWithError:]):
98
99 2009-12-22  Darin Adler  <darin@apple.com>
100
101         Reviewed by Mark Rowe.
102
103         Turn off datagrid by default, at least for all platforms Apple ships.
104         The datagrid implementation isn't ready for general web use yet.
105
106         * Configurations/FeatureDefines.xcconfig: Turn off datagrid by default.
107
108 2009-12-21  Mark Rowe  <mrowe@apple.com>
109
110         Reviewed by Sam Weinig.
111
112         Don't allocate a WebGeolocationControllerClient unless that compile-time setting is enabled.
113
114         * WebView/WebView.mm:
115         (-[WebView _commonInitializationWithFrameName:groupName:usesDocumentViews:]):
116
117 2009-12-18  Sam Weinig  <sam@webkit.org>
118
119         Reviewed by Dan Bernstein.
120
121         Add Mac WebKit side of the client based geolocation provider.
122
123         * Misc/WebKitErrors.m:
124         (registerErrors): Add Geolocation errors.
125         * Misc/WebKitErrorsPrivate.h:
126         * WebCoreSupport/WebGeolocationControllerClient.h: Added.
127         (WebGeolocationControllerClient::webView):
128         * WebCoreSupport/WebGeolocationControllerClient.mm: Added.
129         (WebGeolocationControllerClient::WebGeolocationControllerClient):
130         (WebGeolocationControllerClient::startUpdating):
131         (WebGeolocationControllerClient::stopUpdating):
132         (WebGeolocationControllerClient::lastPosition):
133         Add implementation of the WebGeolocationControllerClient.
134
135         * WebView/WebGeolocationPosition.h: Added.
136         * WebView/WebGeolocationPosition.mm: Added.
137         (-[WebGeolocationPositionInternal initWithCoreGeolocationPosition:]):
138         (core):
139         (-[WebGeolocationPosition initWithTimestamp:latitude:longitude:accuracy:]):
140         * WebView/WebGeolocationPositionInternal.h: Added.
141         Add an Objective-C wrapper for GeolocationPosition.
142  
143         * WebView/WebView.mm:
144         (-[WebView _commonInitializationWithFrameName:groupName:usesDocumentViews:]): Set the GeolocationControllerClient.
145         (-[WebView _setGeolocationProvider:]): Set the GeolocationProvider
146         (-[WebView _geolocationProvider]): Return the GeolocationProvider.
147         (-[WebView _geolocationDidChangePosition:]): Notify WebCore that the position changed.
148         (-[WebView _geolocationDidFailWithError:]): Notify WebCore that an error occured.
149         * WebView/WebViewData.h:
150         * WebView/WebViewPrivate.h:
151
152 2009-12-18  Eric Seidel  <eric@webkit.org>
153
154         Reviewed by Adam Barth.
155
156         REGRESSION(52325) Chromium build broken due to link failure
157         https://bugs.webkit.org/show_bug.cgi?id=32753
158
159         * WebCoreSupport/WebSystemInterface.m:
160          - Chromium Mac builds use this file, but do not
161            enable Pre-compiled Header (PCH) files so that
162            Chromium build bots can take advantage of the faster
163            distcc 3.  Eventually all mac builds will likely use
164            distcc, but for now we'll add Platform.h here and document
165            its usage so it's not removed by accident.
166
167 2009-12-18  Sam Weinig  <sam@webkit.org>
168
169         Reviewed by Anders Carlsson.
170
171         Fix preference key name.
172
173         * WebView/WebPreferenceKeysPrivate.h:
174
175 2009-12-18  Anders Carlsson  <andersca@apple.com>
176
177         Reviewed by Sam Weinig.
178
179         Pass preference to plug-in host.
180
181         * Plugins/Hosted/NetscapePluginHostManager.mm:
182         (WebKit::NetscapePluginHostManager::spawnPluginHost):
183
184 2009-12-18  Anders Carlsson  <andersca@apple.com>
185
186         Reviewed by Sam Weinig.
187
188         Add WKPCRunSyncOpenPanel implementation.
189
190         * Plugins/Hosted/NetscapePluginHostProxy.mm:
191         (WKPCRunSyncOpenPanel):
192         * Plugins/Hosted/WebKitPluginClient.defs:
193         * Plugins/Hosted/WebKitPluginHost.defs:
194
195 2009-12-18  Anders Carlsson  <andersca@apple.com>
196
197         Reviewed by Sam Weinig.
198
199         Add a useProxiedOpenPanel WebPreference and tunnel it through to the plug-in host.
200
201         * Plugins/Hosted/NetscapePluginHostManager.h:
202         * Plugins/Hosted/NetscapePluginHostManager.mm:
203         (WebKit::NetscapePluginHostManager::hostForPackage):
204         (WebKit::NetscapePluginHostManager::spawnPluginHost):
205         (WebKit::NetscapePluginHostManager::instantiatePlugin):
206         * WebView/WebPreferenceKeysPrivate.h:
207         * WebView/WebPreferences.mm:
208         (+[WebPreferences initialize]):
209         (-[WebPreferences usesProxiedOpenPanel]):
210         (-[WebPreferences setUsesProxiedOpenPanel:]):
211         * WebView/WebPreferencesPrivate.h:
212
213 2009-12-18  Sam Weinig  <sam@webkit.org>
214
215         Reviewed by Anders Carlsson.
216
217         Update WebKitSystemInterface for <rdar://problem/7237059>.        
218
219         * WebCoreSupport/WebSystemInterface.m:
220         (InitWebCoreSystemInterface):
221
222 2009-12-18  Adam Roben  <aroben@apple.com>
223
224         Add #includes needed after WebCore clean-up
225
226         Rubber-stamped by Anders Carlsson.
227
228         Fixes <http://webkit.org/b/32718>.
229
230         * WebView/WebFrame.mm:
231         * WebView/WebFrameView.mm:
232         * WebView/WebView.mm:
233
234 2009-12-17  Adam Roben  <aroben@apple.com>
235
236         Mac build fix
237
238         * WebView/WebVideoFullscreenController.mm: Added now-needed #import.
239
240 2009-12-13  Sam Weinig  <sam@webkit.org>
241
242         Reviewed by Dan Bernstein.
243
244         Fix for https://bugs.webkit.org/show_bug.cgi?id=32499
245         Add client based Geolocation provider
246
247         Add first cut of a client based Geolocation provider. This is guarded by
248         ENABLE(CLIENT_BASED_GEOLOCATION) and is off by default for now. This adds a
249         GeolocationControllerClient interface that no-one currently implements,
250         but will in a subsequent patch.
251
252         * WebView/WebView.mm:
253         (-[WebView _commonInitializationWithFrameName:groupName:usesDocumentViews:]):
254
255 2009-12-10  Jon Honeycutt  <jhoneycutt@apple.com>
256
257         Mac build fix. Unreviewed.
258
259         Re-adds code that was mistakenly removed from my last patch.
260
261         * WebCoreSupport/WebPluginHalterClient.mm:
262         Add necessary #import.
263
264         * WebView/WebDelegateImplementationCaching.h:
265         Declare a new overload of CallUIDelegateReturningBoolean.
266
267         * WebView/WebDelegateImplementationCaching.mm:
268         (CallDelegateReturningBoolean):
269         Add a new overload with different arguments.
270         (CallUIDelegateReturningBoolean):
271         Ditto.
272
273 2009-12-10  Jon Honeycutt  <jhoneycutt@apple.com>
274
275         Pass more information about a plug-in to the PluginHalterDelegate
276
277         Reviewed by Adam Roben.
278
279         * Plugins/WebBaseNetscapePluginView.mm:
280         (WebHaltablePlugin::isWindowed):
281         Return false - the Mac doesn't really have windowed plug-ins.
282         (WebHaltablePlugin::pluginName):
283         Return the name from the plug-in package.
284
285         * WebCoreSupport/WebPluginHalterClient.h:
286         Update for new parameters.
287
288         * WebCoreSupport/WebPluginHalterClient.mm:
289         (WebPluginHalterClient::shouldHaltPlugin):
290         Ditto; pass them when making the delegate call.
291
292         * WebView/WebUIDelegatePrivate.h:
293         Update for new parameters.
294
295 2009-12-08  Simon Fraser  <simon.fraser@apple.com>
296
297         Reviewed by Dan Bernstein.
298
299         <rdar://problem/7295070> WebKit video fullscreen keeps playing after closing the window
300         
301         Fix a leak of the QTMovieView when exiting fullscreen video, and remove the
302         old workaround.
303
304         * WebView/WebVideoFullscreenController.mm:
305         (-[WebVideoFullscreenController windowDidLoad]): Set the movie view as the contentView directly.
306         (-[WebVideoFullscreenController setMediaElement:WebCore::]): Cast the contentView to a movie view.
307         (-[WebVideoFullscreenController windowDidExitFullscreen]): Remove the old workaround.
308
309 2009-12-08  Dmitry Titov  <dimich@chromium.org>
310
311         Rubber-stamped by David Levin.
312
313         Revert and reopen "Add asserts to RefCounted to make sure ref/deref happens on the right thread."
314         It may have caused massive increase of reported leaks on the bots.
315         https://bugs.webkit.org/show_bug.cgi?id=31639
316
317         * ForwardingHeaders/wtf/ThreadVerifier.h: Removed.
318
319 2009-12-08  Dmitry Titov  <dimich@chromium.org>
320
321         Reviewed by Darin Adler.
322
323         Add asserts to RefCounted to make sure ref/deref happens on the right thread.
324         https://bugs.webkit.org/show_bug.cgi?id=31639
325
326         * ForwardingHeaders/wtf/ThreadVerifier.h: Added.
327
328 2009-12-07  Dmitry Titov  <dimich@chromium.org>
329
330         Rubber-stamped by Darin Adler.
331
332         Remove ENABLE_SHARED_SCRIPT flags
333         https://bugs.webkit.org/show_bug.cgi?id=32245
334         This patch was obtained by "git revert" command and then un-reverting of ChangeLog files.
335
336         * Configurations/FeatureDefines.xcconfig:
337
338 2009-12-07  Simon Fraser  <simon.fraser@apple.com>
339
340         Reviewed by Darin Adler.
341
342         <rdar://problem/7450481> One compositing test keeps DRT in "compositing mode", breaks repaint tests
343
344         The counter that WebView used to keep track of the number of enclosed WebHTMLViews using
345         accelerated compositing was hard to manage, and maintained incorrectly in a number of cases.
346         This caused one compositing test make DumpRenderTree think that all subsequent tests
347         were compositing too.
348         
349         Replace this counter with notifications, which are only fired if a client (DRT) requests them. The
350         notification informs the client that a WebHTMLView entered compositing mode (or an already-
351         compositing WebHTML was added); it does not say when a view becomes uncomposited, or all
352         compositing subviews were removed, since this is tricky to get right.
353         
354         Change -[WebView _isUsingAcceleratedCompositing] to manually walk the frames, and
355         return YES if any document view is composited.
356
357         * WebKit.exp:
358         * WebView/WebHTMLView.mm:
359         (-[WebHTMLView close]):
360         (-[WebHTMLView viewDidMoveToSuperview]):
361         (-[WebHTMLView attachRootLayer:]):
362         (-[WebHTMLView detachRootLayer]):
363         * WebView/WebView.mm:
364         (+[WebView automaticallyNotifiesObserversForKey:]):
365         (-[WebView _postsAcceleratedCompositingNotifications]):
366         (-[WebView _setPostsAcceleratedCompositingNotifications:]):
367         (-[WebView _isUsingAcceleratedCompositing]):
368         * WebView/WebViewData.h:
369         * WebView/WebViewInternal.h:
370         * WebView/WebViewPrivate.h:
371
372 2009-12-07  Gavin Barraclough  <barraclough@apple.com>
373
374         Reviewed by Oliver Hunt.
375
376         https://bugs.webkit.org/show_bug.cgi?id=32184
377         Handle out-of-memory conditions with JSC Ropes with a JS exception, rather than crashing.
378         Switch from using fastMalloc to tryFastMalloc, pass an ExecState to record the exception on.
379
380         * WebView/WebView.mm:
381         (aeDescFromJSValue):
382
383 2009-12-07  Nikolas Zimmermann  <nzimmermann@rim.com>
384
385         Reviewed by Holger Hans Peter Freyther.
386
387         Turn on (SVG) Filters support, by default.
388         https://bugs.webkit.org/show_bug.cgi?id=32224
389
390         * Configurations/FeatureDefines.xcconfig: Enable FILTERS build flag.
391
392 2009-12-03  Brady Eidson  <beidson@apple.com>
393
394         Reviewed by Sam Weinig.
395
396         <rdar://problem/7214236> and http://webkit.org/b/32052 - Implement HTML5 state object history API
397
398         * WebCoreSupport/WebFrameLoaderClient.h:
399         * WebCoreSupport/WebFrameLoaderClient.mm:
400         (WebFrameLoaderClient::dispatchDidPushStateWithinPage):
401         (WebFrameLoaderClient::dispatchDidReplaceStateWithinPage):
402         (WebFrameLoaderClient::dispatchDidPopStateWithinPage):
403         * WebView/WebDelegateImplementationCaching.h:
404         * WebView/WebFrameLoadDelegatePrivate.h:
405         * WebView/WebView.mm:
406         (-[WebView _cacheFrameLoadDelegateImplementations]):
407
408 2009-12-03  Pavel Feldman  <pfeldman@dhcp-172-28-174-220.spb.corp.google.com>
409
410         Reviewed by Timothy Hatcher.
411
412         Web Inspector: Simplify the settings support in inspector controller.
413
414         https://bugs.webkit.org/show_bug.cgi?id=32076
415
416         * WebCoreSupport/WebInspectorClient.h:
417         * WebCoreSupport/WebInspectorClient.mm:
418         (-[WebInspectorWindowController showWindow:]):
419         (-[WebInspectorWindowController attach]):
420         (-[WebInspectorWindowController detach]):
421
422 2009-12-03  Ben Murdoch  <benm@google.com>
423
424         Reviewed by Brady Eidson.
425
426         [Android] notifyHistoryItemChanged() should pass a pointer to the HistoryItem that changed.
427         https://bugs.webkit.org/show_bug.cgi?id=31915
428
429         * History/WebHistoryItem.mm:
430         (WKNotifyHistoryItemChanged): Update WKNotifyHistoryItemChanged() to add the new HistoryItem parameter added in the WebCore portion of this patch.
431         * History/WebHistoryItemInternal.h: ditto.
432
433 2009-12-03  Ben Murdoch  <benm@google.com>
434
435         Reviewed by Brady Eidson.
436
437         [Android] The FrameLoaderClient is unaware of BackForwardList changes.
438         https://bugs.webkit.org/show_bug.cgi?id=31914
439
440         * WebCoreSupport/WebFrameLoaderClient.h:
441         * WebCoreSupport/WebFrameLoaderClient.mm:
442         (WebFrameLoaderClient::dispatchDidAddBackForwardItem): Add an empty implementation. Method added to FrameLoaderClient by Android (see bug).
443         (WebFrameLoaderClient::dispatchDidRemoveBackForwardItem): ditto.
444         (WebFrameLoaderClient::dispatchDidChangeBackForwardIndex): ditto.
445
446 2009-12-02  Dan Bernstein  <mitz@apple.com>
447
448         Reviewed by Mark Rowe.
449
450         Fix a mistake in the previous change
451
452         * WebView/WebView.mm:
453         (+[WebView _viewClass:andRepresentationClass:forMIMEType:allowingPlugins:]):
454         Make sure to include the image types’ view and representation classes
455         even when plug-ins are not allowed.
456
457 2009-12-02  Dan Bernstein  <mitz@apple.com>
458
459         Reviewed by Anders Carlsson.
460
461         Fixed <rdar://problem/7254127> WebKit can load plug-ins even when
462         plug-ins are disabled
463
464         Ensure that the shared WebPluginDatabase is not instantiated if no
465         WebViews are used that have plug-ins enabled.
466
467         * DefaultDelegates/WebDefaultPolicyDelegate.m:
468         (-[WebDefaultPolicyDelegate webView:decidePolicyForMIMEType:request:frame:decisionListener:]):
469         Call -[WebView _canShowMIMEType:] on the WebView instead of calling the
470         class method.
471
472         * WebCoreSupport/WebFrameLoaderClient.mm:
473         (WebFrameLoaderClient::canShowMIMEType): Ditto.
474         (WebFrameLoaderClient::transitionToCommittedForNewPage): Call
475         -[WebFrameView _viewClassForMIMEType:] on the WebView instead of calling
476         the class method.
477         (WebFrameLoaderClient::objectContentType): Ditto.
478
479         * WebView/WebDataSource.mm:
480         (+[WebDataSource _representationClassForMIMEType:allowingPlugins:]):
481         Added the allowPlugins parameter, which is passed through to
482         +[WebView _viewClass:andRepresentationClass:forMIMEType:allowingPlugins:].
483         (-[WebDataSource _makeRepresentation]): Pass an allowPlugins value
484         based on the WebView’s preferences.
485
486         * WebView/WebFrameView.mm:
487         (-[WebFrameView _makeDocumentViewForDataSource:]): Call
488         -[WebFrameView _viewClassForMIMEType:] instead of calling the class
489         method.
490         (+[WebFrameView _viewClassForMIMEType:allowingPlugins:]): Added the
491         allowPlugins parameter, which is passed through to
492         +[WebView _viewClass:andRepresentationClass:forMIMEType:allowingPlugins:].
493         (-[WebFrameView _viewClassForMIMEType:]): Added. Passes an allowPlugins
494         value based on the WebView’s preferences.
495
496         * WebView/WebFrameViewInternal.h:
497         * WebView/WebView.mm:
498         (+[WebView _viewClass:andRepresentationClass:forMIMEType:allowingPlugins:]):
499         Added the allowPlugins parameter. If false, skip the instantiation of
500         the shared WebPluginDatabase.
501         (-[WebView _viewClass:andRepresentationClass:forMIMEType:]): Pass an
502         allowPlugins value based on the WebView’s preferences.
503         (+[WebView _canShowMIMEType:allowingPlugins:]): Passes allowPlugins to
504         +_viewClass:andRepresentationClass:forMIMEType:allowingPlugins:.
505         (+[WebView canShowMIMEType:]): Changed to pass YES to
506         +_canShowMIMEType:allowingPlugins:.
507         (-[WebView _canShowMIMEType:]): Added. Passes an allowPlugins value
508         based on the WebView’s preferences.
509         (-[WebView _pluginForMIMEType:]): Return nil if plug-ins are disabled.
510         (-[WebView _pluginForExtension:]): Ditto.
511         (-[WebView _isMIMETypeRegisteredAsPlugin:]): Return NO if plug-ins are
512         disabled.
513         * WebView/WebViewInternal.h:
514
515 2009-12-02  Timothy Hatcher  <timothy@apple.com>
516
517         Fixes a crash when scrolling a frame that goes away mid-scroll.
518
519         <rdar://problem/7400263>
520
521         Reviewed by John Sullivan.
522
523         * WebView/WebDynamicScrollBarsView.mm:
524         (-[WebDynamicScrollBarsView scrollWheel:]): Retain self incase the last
525         reference is released when calling super.
526
527 2009-11-13  Timothy Hatcher  <timothy@apple.com>
528
529         Migrate DOMHTMLInputElementPrivate.h as a private header.
530
531         Reviewed by Darin Adler.
532
533         * MigrateHeaders.make:
534
535 2009-12-01  Nikolas Zimmermann  <nzimmermann@rim.com>
536
537         Reviewed by Simon Fraser.
538
539         Add SVG animation test framework with 'snapshot' functionality
540         https://bugs.webkit.org/show_bug.cgi?id=31897
541
542         Add API used by the new 'sampleSVGAnimationForElementAtTime' DRT method,
543         forwarding the call to SVGDocumentExtensions, if SVG is enabled.
544
545         Implemented just like the existing pauseAnimation* methods for CSS animations.
546
547         * WebView/WebFrame.mm:
548         (-[WebFrame _pauseSVGAnimation:onSMILNode:atTime:]):
549         * WebView/WebFramePrivate.h:
550
551 2009-12-01  Sam Weinig  <sam@webkit.org>
552
553         Reviewed by Mark Rowe.
554
555         Simplify [WebView userAgentForURL:].  No need to call into helper function.
556
557         * WebCoreSupport/WebFrameLoaderClient.mm:
558         (WebFrameLoaderClient::userAgent):
559         * WebView/WebView.mm:
560         (-[WebView userAgentForURL:]):
561         * WebView/WebViewInternal.h:
562
563 2009-11-24  Gavin Barraclough  <barraclough@apple.com>
564
565         Reviewed by Geoff Garen.
566
567         Bug 31859 - Make world selection for JSC IsolatedWorlds automagical.
568
569         WebCore presently has to explicitly specify the world before entering into JSC,
570         which is a little fragile (particularly since property access via a
571         getter/setter might invoke execution). Instead derive the current world from
572         the lexical global object.
573
574         Since WebCore no longer needs to explicitly specify the world on entry to JSC DebuggerCallFrame::evaluate can be called directly.
575
576         * WebView/WebScriptDebugDelegate.mm:
577         (-[WebScriptCallFrame evaluateWebScript:]):
578
579 2009-11-24  Dmitry Titov  <dimich@chromium.org>
580
581         Reviewed by Eric Seidel.
582
583         Add ENABLE_SHARED_SCRIPT feature define and flag for build-webkit
584         https://bugs.webkit.org/show_bug.cgi?id=31444
585
586         * Configurations/FeatureDefines.xcconfig:
587
588 2009-11-24  Alexey Proskuryakov  <ap@apple.com>
589
590         Reviewed by Brady Eidson.
591
592         https://bugs.webkit.org/show_bug.cgi?id=31844
593         SocketStreamHandleCFNet should support CONNECT proxy credentials
594
595         * WebCoreSupport/WebSystemInterface.m: (InitWebCoreSystemInterface): Add WKSI methods.
596
597 2009-11-23  Simon Fraser  <simon.fraser@apple.com>
598
599         Reviewed by Dan Bernstein.
600
601         DocumentMarkers need to be educated about transforms
602         https://bugs.webkit.org/show_bug.cgi?id=31751
603         
604         Find highlight is incorrect with transforms
605         <rdar://problem/6358394>
606         
607         Allow callers to specify that Frame::selectionTextRects() takes transforms into account
608         when computing the set of rects that encompass a selection. For transformed elemenets, the
609         selection rect will be the bounding box of the selected content.
610         
611         Fix DocumentMarkers to cache rects in absolute coordinates, rather than painting coordinates.
612         
613         * WebView/WebHTMLView.mm:
614         (-[WebHTMLView selectionTextRects]):
615         Pass RespectTransforms to get a list of rects with transforms taken into account.
616
617 2009-11-23  Kevin Decker  <kdecker@apple.com>
618
619         Reviewed by Adam Roben.
620         
621         <rdar://problem/7401503>
622         
623         Added a workaround for plug-ins not drawing immediately.
624         
625         * Plugins/WebBaseNetscapePluginView.mm: Added new constant.
626         (-[WebBaseNetscapePluginView _clearSubstituteImage]): Added.
627         (-[WebBaseNetscapePluginView resumeFromHalt]): Call above new method.
628
629 2009-11-20  Dave Hyatt  <hyatt@apple.com>
630
631         Reviewed by Darin Adler.
632
633         Make sure to export WebSerializedJSValue.
634
635         * WebKit.exp:
636
637 2009-11-20  Dave Hyatt  <hyatt@apple.com>
638
639         Reviewed by Oliver Hunt and Jon Honeycutt.
640
641         Add support for WebSerializedJSValue to WebKit.  This object wraps the SerializedScriptValue functionality in WebCore
642         and exposes the ability to do JS value serialization/deserialization to WebKit clients.
643
644         * WebView/WebSerializedJSValue.h: Added.
645         * WebView/WebSerializedJSValue.mm: Added.
646         (-[WebSerializedJSValue initWithValue:context:]):
647         (-[WebSerializedJSValue deserialize:]):
648         (-[WebSerializedJSValue dealloc]):
649
650 2009-11-20  Chris Fleizach  <cfleizach@apple.com>
651
652         Reviewed by Beth Dakin.
653
654         WAI-ARIA: add support for 'math' role
655         https://bugs.webkit.org/show_bug.cgi?id=31706
656
657         * WebCoreSupport/WebViewFactory.mm:
658         (-[WebViewFactory AXARIAContentGroupText:]):
659
660 2009-11-19  Eric Carlson  <eric.carlson@apple.com>
661
662         Reviewed by Dan Bernstein.
663
664         <rdar://problem/7035231>
665         Support closed caption in <video> element
666
667         * WebCoreSupport/WebSystemInterface.m:
668         (InitWebCoreSystemInterface):
669             Add QTMovieHasClosedCaptions and QTMovieSetShowClosedCaptions.
670
671         * WebCoreSupport/WebViewFactory.mm:
672         (-[WebViewFactory localizedMediaControlElementString:]):
673         (-[WebViewFactory localizedMediaControlElementHelpText:]):
674             Add accessibility help strings for media controller closed caption button.
675
676 2009-11-18  Michelangelo De Simone  <micdesim@gmail.com>
677
678         Reviewed by Darin Adler.
679
680         Fix for <https://bugs.webkit.org/show_bug.cgi?id=27959>.
681         Support for validationMessage attribute, as per HTML5 specs.
682
683         * WebCoreSupport/WebViewFactory.mm:
684         (-[WebViewFactory validationMessageValueMissingText]):
685         (-[WebViewFactory validationMessageTypeMismatchText]):
686         (-[WebViewFactory validationMessagePatternMismatchText]):
687         (-[WebViewFactory validationMessageTooLongText]):
688         (-[WebViewFactory validationMessageRangeUnderflowText]):
689         (-[WebViewFactory validationMessageRangeOverflowText]):
690         (-[WebViewFactory validationMessageStepMismatchText]):
691
692 2009-11-18  Sam Weinig  <sam@webkit.org>
693
694         Reviewed by Anders Carlsson.
695
696         Make the Mac Geolocation API async.
697
698         * WebCoreSupport/WebChromeClient.mm:
699         (WebChromeClient::requestGeolocationPermissionForFrame):
700         (-[WebGeolocationPolicyListener initWithGeolocation:]):
701         (-[WebGeolocationPolicyListener allow]):
702         (-[WebGeolocationPolicyListener deny]):
703         Add WebGeolocationPolicyListener implementation of the new WebGeolocationPolicyListener
704         protocol and use if to implement requestGeolocationPermissionForFrame using the new async
705         API.
706         
707         * WebCoreSupport/WebGeolocation.mm: Removed.
708         * WebCoreSupport/WebGeolocationInternal.h: Removed.
709         * WebCoreSupport/WebGeolocationMock.mm: Remove bogus include.
710         * WebCoreSupport/WebGeolocationPrivate.h: Removed.
711         * WebView/WebUIDelegatePrivate.h: Remove requestGeolocationPermission and add
712         WebGeolocationPolicyListener protocol and decidePolicyForGeolocationRequestFromOrigin delegate
713         method.
714
715 2009-11-18  Chris Marrin  <cmarrin@apple.com>
716
717         Reviewed by Simon Fraser.
718
719         Add Preferences for WebKitShowDebugBorders and WebKitShowRepaintCounter
720         https://bugs.webkit.org/show_bug.cgi?id=31601
721
722         These are used to debug accelerated compositing layers
723
724         * WebView/WebPreferenceKeysPrivate.h:
725         * WebView/WebPreferences.mm:
726         (+[WebPreferences initialize]):
727         (-[WebPreferences showDebugBorders]):
728         (-[WebPreferences setShowDebugBorders:]):
729         (-[WebPreferences showRepaintCounter]):
730         (-[WebPreferences setShowRepaintCounter:]):
731         * WebView/WebPreferencesPrivate.h:
732         * WebView/WebView.mm:
733         (-[WebView _preferencesChangedNotification:]):
734
735 2009-11-17  Pavel Feldman  <pfeldman@chromium.org>
736
737         Reviewed by Timothy Hatcher.
738
739         Web Inspector: Make DRT show web inspector for tests in inspector/ folder.
740         - Updated DRT to show/close inspector for all tests under /inspector
741         - Introduced LayoutTestController::setTimelineProfilingEnabled and
742           WebInspector::setTimelineProfilingEnabled beside setJavaScriptProfilingEnabled
743         - Removed reload on each inspector test
744         - Renamed fast/inspector to fast/inspector-support in order not to trigger
745         inspector for those.
746         - Reimplemented timeline tests in order to get rid of reload there.
747         - Moved tests that don't require harness into the fast group.
748
749         https://bugs.webkit.org/show_bug.cgi?id=31472
750
751         * WebInspector/WebInspector.h:
752         * WebInspector/WebInspector.mm:
753         (-[WebInspector isTimelineProfilingEnabled]):
754         (-[WebInspector setTimelineProfilingEnabled:]):
755
756 2009-11-14  Chris Fleizach  <cfleizach@apple.com>
757
758         Reviewed by Darin Adler.
759
760         Need to implement ARIA role="directory"
761         https://bugs.webkit.org/show_bug.cgi?id=31516
762
763         Fix a spelling error in the comment of a localized (accessibility) string.
764
765         * WebCoreSupport/WebViewFactory.mm:
766         (-[WebViewFactory AXARIAContentGroupText:]):
767
768 2009-11-14  Eric Carlson  <eric.carlson@apple.com>
769
770         Reviewed by Oliver Hunt.
771
772         <rdar://problem/7287487> 
773         Do not use QuickTime version to detect media controller theme
774
775         * WebCoreSupport/WebSystemInterface.m:
776         (InitWebCoreSystemInterface): Initialize wkMediaControllerThemeAvailable.
777
778 2009-11-13  Adam Roben  <aroben@apple.com>
779
780         Tell the WebFrameLoadDelegate when window objects in isolated worlds
781         are cleared
782
783         Fixes <http://webkit.org/b/31124>.
784
785         Reviewed by Dave Hyatt.
786
787         * WebCoreSupport/WebFrameLoaderClient.h:
788         * WebCoreSupport/WebFrameLoaderClient.mm:
789         (WebFrameLoaderClient::dispatchDidClearWindowObjectInWorld):
790         Replaced windowObjectCleared with this function. If the delegate
791         implements it, call
792         -webView:didClearWindowObjectForFrame:inScriptWorld:. Otherwise, if
793         the passed-in world is the mainThreadNormalWorld(), call
794         -webView:didClearWindowObject:forFrame:.
795
796         * WebView/WebDelegateImplementationCaching.h: Added a new entry in the
797         frame load delegate implementation cache for the new delegate method.
798
799         * WebView/WebFrameLoadDelegatePrivate.h:
800         * WebView/WebScriptWorld.mm:
801         (allWorlds): Added. Returns a HashMap of all the WebScriptWorlds in
802         existence.
803         (-[WebScriptWorld initWithWorld:]): Add ourselves to allWorlds().
804         (-[WebScriptWorld dealloc]): Remove ourselves from allWorlds().
805         (+[WebScriptWorld findOrCreateWorld:]): Returns the existing
806         WebScriptWorld for this DOMWrapperWorld, or a new one if one doesn't
807         already exist.
808
809         * WebView/WebScriptWorldInternal.h: Declared +findOrCreateWorld:.
810
811         * WebView/WebView.mm:
812         (-[WebView _cacheFrameLoadDelegateImplementations]): Cache the
813         implementation of the new frame load delegate method.
814
815 2009-11-13  Adam Roben  <aroben@apple.com>
816
817         Finish replacing worldIDs with world objects
818
819         The only remaining use of worldIDs was in a method only used by DRT
820         for the isolated worlds tests.
821
822         Fixes <http://webkit.org/b/31414> Replace worldIDs with world objects
823
824         Reviewed by Mark Rowe.
825
826         * WebView/WebFrame.mm:
827         (-[WebFrame _stringByEvaluatingJavaScriptFromString:withGlobalObject:inScriptWorld:]):
828         * WebView/WebFramePrivate.h:
829         Renamed from
830         _stringByEvaluatingJavaScriptInIsolatedWorld:WithGobalObject:FromString:.
831         Now takes a WebScriptWorld instead of a worldID, so we don't need to
832         maintain a map of worldID -> world anymore.
833
834 2009-11-12  Dan Bernstein  <mitz@apple.com>
835
836         Reviewed by Adele Peterson.
837
838         When exiting full-screen video, rather than resetting the system UI
839         mode, restore it to what it was when full-screen mode was entered.
840
841         * WebView/WebVideoFullscreenController.h: Cleaned up style, removed
842         unnecessary imports, and added _savedUIMode and _savedUIOptions ivars.
843         * WebView/WebVideoFullscreenController.mm:
844         (-[WebVideoFullscreenController delegate]): Cleaned up style.
845         (-[WebVideoFullscreenController setDelegate:]): Ditto.
846         (-[WebVideoFullscreenController windowDidExitFullscreen]): Restore the
847         system UI mode.
848         (-[WebVideoFullscreenController windowDidEnterFullscreen]): Save the
849         system UI mode.
850         * WebView/WebView.mm: Added now-necessary import.
851
852 2009-11-12  Shinichiro Hamaji  <hamaji@chromium.org>
853
854         Reviewed by Darin Adler.
855
856         externalRepresentation should take Frame as the argument
857         https://bugs.webkit.org/show_bug.cgi?id=31393
858
859         No new tests as this is just a refactoring.
860
861         * Misc/WebCoreStatistics.mm:
862         (-[WebFrame renderTreeAsExternalRepresentation]):
863
864 2009-11-12  Adam Roben  <aroben@apple.com>
865
866         Replace worldIDs with world objects
867
868         WebScriptWorld is the new object that represents a world.  The only
869         place worldID is still used is in -[WebFrame
870         _stringByEvaluatingJavaScriptInIsolatedWorld:WithGlobalObject:FromString:],
871         but that will change soon.
872
873         Part of <http://webkit.org/b/31414> Implement new SPI for dealing with
874         user scripts/stylesheets and isolated worlds
875
876         Reviewed by Sam Weinig.
877
878         * WebKit.exp: Export WebScriptWorld.
879
880         * WebView/WebFrame.mm:
881         (-[WebFrame _stringByEvaluatingJavaScriptInIsolatedWorld:WithGlobalObject:FromString:]):
882         Moved the bizarre world caching/creation logic that DRT depends on
883         here from the findWorld function in ScriptController.cpp. Updated to
884         use ScriptController::executeScriptInWorld instead of
885         ScriptController::executeScriptInIsolatedWorld.
886         (-[WebFrame _contextForWorld:]): Renamed from contextForWorldID:. Now
887         takes a WebScriptWorld.
888
889         * WebView/WebFramePrivate.h: Replaced contextForWorldID: with
890         _contextForWorld:.
891
892         * WebView/WebScriptWorld.h: Added.
893         * WebView/WebScriptWorld.mm: Added.
894         (-[WebScriptWorld initWithWorld:]): Store the passed-in world in our
895         _private member.
896         (-[WebScriptWorld init]): Create a new DOMWrapperWorld and pass it to
897         -initWithWorld:.
898         (-[WebScriptWorld dealloc]): Release _private.
899         (+[WebScriptWorld standardWorld]): Returns a shared instance that
900         represents WebCore's mainThreadNormalWorld().
901         (+[WebScriptWorld world]): Returns a new instance.
902         (core): Returns the DOMWrapperWorld for this WebScriptWorld.
903
904         * WebView/WebScriptWorldInternal.h: Added.
905
906         * WebView/WebView.mm:
907         (+[WebView _addUserScriptToGroup:world:source:url:whitelist:blacklist:injectionTime:]):
908         (+[WebView _addUserStyleSheetToGroup:world:source:url:whitelist:blacklist:]):
909         (+[WebView _removeUserScriptFromGroup:world:url:]):
910         (+[WebView _removeUserStyleSheetFromGroup:world:url:]):
911         (+[WebView _removeUserScriptsFromGroup:world:]):
912         (+[WebView _removeUserStyleSheetsFromGroup:world:]):
913         * WebView/WebViewPrivate.h:
914         Changed these functions to take a WebScriptWorld instead of a worldID.
915
916 2009-11-12  Chris Fleizach  <cfleizach@apple.com>
917
918         Reviewed by Darin Adler.
919
920         ARIA: add alert type roles
921         https://bugs.webkit.org/show_bug.cgi?id=31392
922
923         * WebCoreSupport/WebViewFactory.mm:
924         (-[WebViewFactory AXARIAContentGroupText:]):
925
926 2009-11-10  Daniel Bates  <dbates@webkit.org>
927
928         Reviewed by Oliver Hunt.
929
930         https://bugs.webkit.org/show_bug.cgi?id=30754
931
932         Removed method draggedImage:movedTo:
933
934         * WebView/WebFrame.mm:
935         * WebView/WebFrameInternal.h:
936         * WebView/WebHTMLView.mm:
937
938 2009-11-10  Beth Dakin  <bdakin@apple.com>
939
940         Reviewed by Darin Adler.
941
942         Small WebKit part of:
943         Fix for <rdar://problem/7059710> 
944         -and corresponding-
945         https://bugs.webkit.org/show_bug.cgi?id=31196 Implement -webkit-
946         color-correction for CSS colors
947
948         * Misc/WebKitNSStringExtras.mm:
949         (-[NSString _web_drawAtPoint:font:textColor:]): setFillColor now 
950         requires callers to pass a ColorSpace.
951
952 2009-11-10  Dan Bernstein  <mitz@apple.com>
953
954         Reviewed by Eric Carlson and Darin Adler.
955
956         WebKit part of making full-screen video pause during scrubbing.
957
958         * WebView/WebVideoFullscreenHUDWindowController.h: Added _isScrubbing
959         ivar.
960         * WebView/WebVideoFullscreenHUDWindowController.mm:
961         (-[WebVideoFullscreenHUDWindowController dealloc]): Assert that
962         _isScrubbing is NO.
963         (-[WebVideoFullscreenHUDWindowController endScrubbing]): Call
964         HTMLMediaElement::endScrubbing().
965         (-[WebVideoFullscreenHUDWindowController timelinePositionChanged:]):
966         If scrubbing has just begun, call HTMLMediaElement::beginScrubbing()
967         and schedule -endScrubbing to be called when mouse tracking ends.
968
969 2009-11-09  Mark Mentovai  <mark@chromium.org>
970
971         Reviewed by Dan Bernstein.
972
973         Track "can have scrollbar" state within FrameView independently of the
974         individual scrollbar states in ScrollView.
975
976         rdar://problem/7215132, https://bugs.webkit.org/show_bug.cgi?id=29167
977         REGRESSION (r48064): mint.com loses scrollbars after coming out of
978         edit mode.
979
980         rdar://problem/7314421, https://bugs.webkit.org/show_bug.cgi?id=30517
981         REGRESSION (r48064): Extra scroll bars in GarageBand Lesson Store.
982
983         Test: fast/overflow/scrollbar-restored.html
984
985         * WebView/WebFrameView.mm:
986         (-[WebFrameView _install]):
987
988 2009-11-08  Dan Bernstein  <mitz@apple.com>
989
990         Reviewed by Eric Carlson.
991
992         Made the full-screen video HUD appear when playback stops, such as when
993         the end of the video is reached.
994
995         * WebView/WebVideoFullscreenHUDWindowController.h: Cleaned up.
996         * WebView/WebVideoFullscreenHUDWindowController.mm:
997         (-[WebVideoFullscreenHUDWindowController scheduleTimeUpdate]): Updated
998         for the renaming of -updateRate to -updatePlayButton.
999         (-[WebVideoFullscreenHUDWindowController updatePlayButton]): Renamed
1000         -updateRate to this.
1001         (-[WebVideoFullscreenHUDWindowController updateRate]): This method now
1002         responds to changes to the playback rate by updating the play button
1003         and showing or hiding the HUD as necessary.
1004         (-[WebVideoFullscreenHUDWindowController togglePlaying:]): Now only
1005         toggles playing. UI updates are driven by -updateRate being called.
1006         (-[WebVideoFullscreenHUDWindowController playing]): Cleaned up.
1007
1008 2009-11-02  Eric Carlson  <eric.carlson@apple.com>
1009
1010         Reviewed by John Sullivan and Mark Rowe.
1011
1012         <rdar://problem/7356733> Voiceover does not read correct media controller time values
1013
1014         * WebCoreSupport/WebViewFactory.mm:
1015         (-[WebViewFactory localizedMediaTimeDescription:]):
1016
1017 2009-11-02  Dan Bernstein  <mitz@apple.com>
1018
1019         Reviewed by Anders Carlsson.
1020
1021         Made the remaining time display show negative zero at the end of the
1022         video.
1023
1024         Made other cleanup.
1025
1026         * WebView/WebVideoFullscreenHUDWindowController.h: Reverted the types of
1027         _timeline and _volumeSlider to the more generic NSControl.
1028         * WebView/WebVideoFullscreenHUDWindowController.mm:
1029         (-[WebVideoFullscreenHUDWindowController scheduleTimeUpdate]): Cleaned
1030         up style.
1031         (-[WebVideoFullscreenHUDWindowController windowDidLoad]): Added an
1032         assertion that the cast to NSButton * is legal. Removed casts.
1033         (-[WebVideoFullscreenHUDWindowController updateTime]): Use
1034         -setValue:forKey: instead of an NSSlider method.
1035         (timeToString): Changed to support only non-negative values and
1036         simplified.
1037         (-[WebVideoFullscreenHUDWindowController remainingTimeText]): Always
1038         prepend a “-” to the time.
1039
1040 2009-11-02  Dan Bernstein  <mitz@apple.com>
1041
1042         Reviewed by John Sullivan.
1043
1044         WebKit part of making the appearance of the full-screen video HUD match
1045         QuickTime Player X’s HUD.
1046
1047         * WebView/WebVideoFullscreenHUDWindowController.h: Removed unnecessary
1048         #import statements, cleaned up style, and changed _timeline,
1049         _volumeSlider and _playButton to have more specific types.
1050         * WebView/WebVideoFullscreenHUDWindowController.mm: Updated #import
1051         statements.
1052         (webkit_CGFloor): Added this helper function.
1053         (-[WebVideoFullscreenHUDWindowController init]): Cleaned up style.
1054         (createTimeTextField): Changed to use the bold system font.
1055         (-[WebVideoFullscreenHUDWindowController windowDidLoad]): Changed the
1056         subviews’ metrics and the text fields’ text alignment.
1057         (-[WebVideoFullscreenHUDWindowController updateTime]): Avoid conversion
1058         from double to float.
1059         (stringToTimeTextAttributed): Removed this useless function that
1060         returned an NSAttributedString masquerading as an NSString.
1061         (-[WebVideoFullscreenHUDWindowController remainingTimeText]): Removed
1062         call to stringToTimeTextAttributed().
1063         (-[WebVideoFullscreenHUDWindowController elapsedTimeText]): Ditto.
1064
1065 2009-11-02  Chris Fleizach  <cfleizach@apple.com>
1066
1067         Reviewed by Beth Dakin.
1068
1069         Support ARIA "tab" roles
1070         https://bugs.webkit.org/show_bug.cgi?id=30842
1071
1072         * WebCoreSupport/WebViewFactory.mm:
1073         (-[WebViewFactory AXARIAContentGroupText:]):
1074
1075 2009-11-01  Dan Bernstein  <mitz@apple.com>
1076
1077         Reviewed by Mark Rowe.
1078
1079         Made the space bar toggle playing state in full-screen video when
1080         modifier keys are down. Made it do so without highlighting the
1081         Play/Pause button.
1082
1083         * WebView/WebVideoFullscreenHUDWindowController.mm:
1084         (-[WebVideoFullscreenHUDWindowController keyDown:]):
1085
1086 2009-11-01  Dan Bernstein  <mitz@apple.com>
1087
1088         Reviewed by Mark Rowe.
1089
1090         Made the full-screen video HUD respond to the up and down arrow keys by
1091         increasing and decreasing the volume by 1/10 of the range or, when
1092         combined with the Option key, all the way up or down.
1093
1094         Made the volume buttons in the full-screen video HUD match the behavior
1095         of their equivalents in the QuickTime Player HUD by turning the volume
1096         all the way up or down.
1097
1098         Made the volume slider update immediately when the keyboard or volume
1099         buttons are used to change the volume, rather than at the nearest 1/4
1100         second interval.
1101
1102         Made the elapsed and remaining time displays update immediately when the
1103         play head is dragged across the timeline, rather than at 1/4 second
1104         intervals.
1105
1106         * WebView/WebVideoFullscreenHUDWindowController.mm:
1107         (-[WebVideoFullscreenHUDWindowController keyDown:]): Handle the up and
1108         down arrow keys.
1109         (-[WebVideoFullscreenHUDWindowController windowDidLoad]): Changed the
1110         actions of the volume up and volume down buttons.
1111         (-[WebVideoFullscreenHUDWindowController setCurrentTime:]): Call
1112         -updateTime.
1113         (-[WebVideoFullscreenHUDWindowController setVolumeToZero:]): Added this
1114         action for the volume down button.
1115         (-[WebVideoFullscreenHUDWindowController setVolumeToMaximum:]): Added
1116         this action for the volume up button.
1117         (-[WebVideoFullscreenHUDWindowController decrementVolume]): No longer
1118         and action method.
1119         (-[WebVideoFullscreenHUDWindowController incrementVolume]): Ditto.
1120         (-[WebVideoFullscreenHUDWindowController setVolume:]): Call
1121         -updateVolume.
1122
1123 2009-10-30  Evan Stade  <estade@chromium.org>
1124
1125         Reviewed by David Levin.
1126
1127         Notify the chrome when the focused node has changed.
1128         https://bugs.webkit.org/show_bug.cgi?id=30832
1129
1130         Added stub implementation for new ChromeClient function.
1131
1132         * WebCoreSupport/WebChromeClient.h:
1133         * WebCoreSupport/WebChromeClient.mm:
1134         (WebChromeClient::focusedNodeChanged):
1135
1136 2009-10-30  Roland Steiner  <rolandsteiner@chromium.org>
1137
1138         Reviewed by Eric Seidel.
1139
1140         Remove ENABLE_RUBY guards as discussed with Dave Hyatt and Maciej Stachowiak.
1141
1142         Bug 28420 -  Implement HTML5 <ruby> rendering
1143         (https://bugs.webkit.org/show_bug.cgi?id=28420)
1144
1145         No new tests (no functional change).
1146
1147         * Configurations/FeatureDefines.xcconfig:
1148
1149 2009-10-29  Mark Rowe  <mrowe@apple.com>
1150
1151         Reviewed by Oliver Hunt.
1152
1153         Validate the stopSpeaking: selector so that is not always enabled when a WebView is first responder.
1154
1155         * WebView/WebHTMLView.mm:
1156         (-[WebHTMLView validateUserInterfaceItemWithoutDelegate:]):
1157
1158 2009-10-29  Anders Carlsson  <andersca@apple.com>
1159
1160         Reviewed by Sam Weinig.
1161
1162         https://bugs.webkit.org/show_bug.cgi?id=30932
1163         <rdar://problem/7350269>
1164         
1165         REGRESSION: Crash when turning on Private Browsing on site with flash.
1166         
1167         Null check setValue.
1168         
1169         * Plugins/WebNetscapePluginView.mm:
1170         (-[WebNetscapePluginView privateBrowsingModeDidChange]):
1171
1172 2009-10-29  Eric Carlson  <eric.carlson@apple.com>
1173
1174         Reviewed by Kevin Decker.
1175
1176         Refactor some duplicate plug-in clean up code into shared functions.
1177
1178         * Plugins/WebPluginController.mm:
1179         (-[WebPluginController stopOnePlugin:]): New, stop a plug-in.
1180         (-[WebPluginController destroyOnePlugin:]): New, destroy plug-in.
1181         (-[WebPluginController stopAllPlugins]): Call stopOnePlugin.
1182         (-[WebPluginController destroyPlugin:]): Call stopOnePlugin and destroyOnePlugin.
1183         (-[WebPluginController destroyAllPlugins]): Call destroyOnePlugin.
1184
1185 2009-10-28  Eric Carlson  <eric.carlson@apple.com>
1186
1187         Reviewed by Simon Fraser.
1188
1189         <rdar://problem/7303145> 
1190         Can't exit full screen mode or restart movie after pressing command -R.
1191
1192         * WebView/WebVideoFullscreenController.mm:
1193         (-[WebVideoFullscreenController _requestExit]): 
1194             New, call media element's exitFullscreen method.
1195         (-[WebVideoFullscreenController requestExitFullscreenWithAnimation:]): 
1196             Call mediaElement->exitFullscreen() after a delay as it turns around and calls
1197             WebVideoFullscreenController:exitFullscreen.
1198
1199         * WebView/WebVideoFullscreenHUDWindowController.h:
1200         * WebView/WebVideoFullscreenHUDWindowController.mm:
1201         (-[WebVideoFullscreenHUDWindow resignFirstResponder]):
1202             New, don't give up responder status.
1203         (-[WebVideoFullscreenHUDWindow performKeyEquivalent:]):
1204             New, block all command key events.
1205         (-[WebVideoFullscreenHUDWindowController exitFullscreen:]):
1206             Remember when we are in the process of exiting fullscreen, don't allow recursion.
1207
1208         * WebView/WebView.mm:
1209         (-[WebView _exitFullscreen]):
1210             Early return if fullscreen controller is nil.
1211
1212         * WebView/WebWindowAnimation.h: 
1213             Correct comment about _window retain status.
1214         * WebView/WebWindowAnimation.m:
1215         (-[WebWindowScaleAnimation dealloc]):
1216             Don't release _window, we never reatained it.
1217
1218 2009-10-27  Shinichiro Hamaji  <hamaji@chromium.org>
1219
1220         Reviewed by Darin Adler.
1221
1222         Provide a way to get counter values with layoutTestContoller
1223         https://bugs.webkit.org/show_bug.cgi?id=30555
1224
1225         Add counterValueForElement in WebFrame to call WebCore::counterValueForElement.
1226
1227         * Misc/WebCoreStatistics.h:
1228         * Misc/WebCoreStatistics.mm:
1229         (-[WebFrame counterValueForElement:]):
1230
1231 2009-10-27  Geoffrey Garen  <ggaren@apple.com>
1232
1233         Reviewed by Sam Weinig.
1234
1235         Updated for refactoring in the date code.
1236
1237         * WebView/WebView.mm:
1238         (aeDescFromJSValue): Since we just want a number of milliseconds, do that
1239         instead of something more complicated.
1240
1241 2009-10-26  Sam Weinig  <sam@webkit.org>
1242
1243         Reviewed by Anders Carlsson.
1244
1245         Move some WebView event handling code into its own file, WebViewEventHandling.mm
1246
1247         * WebView/WebView.mm:
1248         (-[WebView _close]):
1249         (-[WebView _selectedOrMainFrame]):
1250         * WebView/WebViewEventHandling.mm: Added.
1251         (-[WebView _closingEventHandling]):
1252         (-[WebView _setMouseDownEvent:]):
1253         (-[WebView mouseDown:]):
1254         (-[WebView mouseUp:]):
1255         (+[WebView _updateMouseoverWithEvent:]):
1256         (-[WebView _updateMouseoverWithFakeEvent]):
1257         (_updateMouseoverWithEvent:fakeEvent::if):
1258         (-[WebView _stopAutoscrollTimer]):
1259         (-[WebView _setToolTip:]):
1260         * WebView/WebViewInternal.h:
1261
1262 2009-10-26  Simon Fraser  <simon.fraser@apple.com>
1263
1264         Reviewed by Sam Weinig.
1265
1266         <rdar://problem/6988966> Hardware layers do not show up in page snapshots
1267
1268         * WebView/WebHTMLViewPrivate.h:
1269         * WebView/WebHTMLView.mm:
1270         (-[WebHTMLView _compositingLayersHostingView]):
1271         Add a private method that returns the NSView used to host compositing layers.
1272         
1273 2009-10-23  Mark Rowe  <mrowe@apple.com>
1274
1275         Fix engineering builds in the mysterious future.
1276
1277         * Configurations/DebugRelease.xcconfig:
1278
1279 2009-10-23  Gavin Barraclough  <barraclough@apple.com>
1280
1281         Reviewed by Geoff Garen.
1282
1283         https://bugs.webkit.org/show_bug.cgi?id=30729
1284         Provide private API to request the global context for a specific world.
1285         Used to initialize parameters on the global object.
1286
1287         * WebView/WebFramePrivate.h:
1288         * WebView/WebFrame.mm:
1289         (-[WebFrame contextForWorldID:]):
1290
1291 2009-10-22  Eric Carlson  <eric.carlson@apple.com>
1292
1293         Reviewed by John Sullivan.
1294
1295         <rdar://problem/7322847>
1296         Pressing space bar key in full screen mode should pause movie but doesn't
1297
1298         * WebView/WebVideoFullscreenHUDWindowController.mm:
1299         (-[WebVideoFullscreenHUDWindowController keyDown:]):  New, toggle playback on space key.
1300         (-[WebVideoFullscreenHUDWindowController windowDidLoad]): Play button action is now called togglePlaying.
1301         (-[WebVideoFullscreenHUDWindowController togglePlaying:]): Rename from playingChanged.
1302
1303 2009-10-22  Gavin Barraclough  <barraclough@apple.com>
1304
1305         Reviewed by NOBODY (build fix).
1306         Build fix following bug #30696.
1307
1308         * Plugins/Hosted/NetscapePluginInstanceProxy.mm:
1309         (WebKit::NetscapePluginInstanceProxy::getWindowNPObject):
1310         (WebKit::NetscapePluginInstanceProxy::evaluate):
1311         (WebKit::NetscapePluginInstanceProxy::invoke):
1312         (WebKit::NetscapePluginInstanceProxy::invokeDefault):
1313         (WebKit::NetscapePluginInstanceProxy::construct):
1314         (WebKit::NetscapePluginInstanceProxy::getProperty):
1315         (WebKit::NetscapePluginInstanceProxy::setProperty):
1316         (WebKit::NetscapePluginInstanceProxy::removeProperty):
1317         (WebKit::NetscapePluginInstanceProxy::hasProperty):
1318         (WebKit::NetscapePluginInstanceProxy::hasMethod):
1319         (WebKit::NetscapePluginInstanceProxy::enumerate):
1320
1321 2009-10-16  Gavin Barraclough  <barraclough@apple.com>
1322
1323         Reviewed by Sam Weinig & Geoff Garen.
1324
1325         https://bugs.webkit.org/show_bug.cgi?id=30696
1326         Update to incorporate support for IsolatedWorlds in JSC bindings.
1327
1328         * WebView/WebFrame.mm:
1329         (-[WebFrame _attachScriptDebugger]):
1330         (-[WebFrame _stringByEvaluatingJavaScriptFromString:forceUserGesture:]):
1331         (-[WebFrame globalContext]):
1332         * WebView/WebScriptDebugDelegate.mm:
1333         (-[WebScriptCallFrame evaluateWebScript:]):
1334         * WebView/WebView.mm:
1335         (-[WebView aeDescByEvaluatingJavaScriptFromString:]):
1336
1337 2009-10-22  Eric Carlson  <eric.carlson@apple.com>
1338
1339         Reviewed by Dan Bernstein & Simon Fraser.
1340
1341         <rdar://problem/7297717>
1342         https://bugs.webkit.org/show_bug.cgi?id=30323
1343         Play/pause button in full-screen video controller does not reflect current state
1344
1345         * WebView/WebVideoFullscreenController.mm:
1346         (-[WebVideoFullscreenController setMediaElement:WebCore::]): Register for QTMovieRateDidChangeNotification
1347         (-[WebVideoFullscreenController rateChanged:]): Call HUD controller when rate changes.
1348
1349         * WebView/WebVideoFullscreenHUDWindowController.h:
1350         * WebView/WebVideoFullscreenHUDWindowController.mm:
1351         (-[WebVideoFullscreenHUDWindowController scheduleTimeUpdate]): Call updateRate so play button
1352         reflects playback state.
1353         (-[WebVideoFullscreenHUDWindowController updateRate]): New, set play button state according to
1354         movie state.
1355         (-[WebVideoFullscreenHUDWindowController playingChanged:]): Only call [self playing] once.
1356
1357 2009-10-21  John Sullivan  <sullivan@apple.com>
1358
1359         Rubber-stamped by Dan Bernstein.
1360
1361         * WebView/WebDynamicScrollBarsView.h:
1362         Corrected a couple of long-obsolete comments regarding Safari's use of this class.
1363
1364 2009-10-20  Dan Bernstein  <mitz@apple.com>
1365
1366         Rubber-stamped by Mark Rowe.
1367
1368         <rdar://problem/7319749> REGRESSION(r49806): Contextual Menu items missing
1369         https://bugs.webkit.org/show_bug.cgi?id=30568
1370
1371         Revert accidental change from r49806.
1372
1373         * WebCoreSupport/WebContextMenuClient.mm:
1374         (WebContextMenuClient::getCustomMenuFromDefaultItems):
1375
1376 2009-10-20  Fumitoshi Ukai  <ukai@chromium.org>
1377
1378         Reviewed by David Levin.
1379
1380         Removed WebSocket runtime settings.
1381         https://bugs.webkit.org/show_bug.cgi?id=29896
1382
1383         WebSocket runtime configuration is supported by chromium/v8 only.
1384
1385         * WebView/WebPreferenceKeysPrivate.h:
1386         * WebView/WebPreferences.mm:
1387         (+[WebPreferences initialize]):
1388         * WebView/WebPreferencesPrivate.h:
1389         * WebView/WebView.mm:
1390         (-[WebView _preferencesChangedNotification:]):
1391
1392 2009-10-19  Nate Chapin  <japhet@chromium.org>
1393
1394         Reviewed by Alexey Proskuryakov.
1395
1396         Update call to loadFrameRequest to match new parameters.
1397
1398         * WebView/WebPDFView.mm:
1399         (-[WebPDFView PDFViewWillClickOnLink:withURL:]): Update call to loadFrameRequest.
1400
1401 2009-10-19  David Kilzer  <ddkilzer@apple.com>
1402
1403         Documentation fix for -[NSObject(WebResourceLoadDelegate) webView:resource:willSendRequest:redirectResponse:fromDataSource:]
1404
1405         Reviewed by Dan Bernstein.
1406
1407         * WebView/WebResourceLoadDelegate.h: Prepended "webView:" to the
1408         @method declaration of
1409         -webView:resource:willSendRequest:redirectResponse:fromDataSource:
1410         which was absent before r3953 and was missed during the great
1411         documentation clean up of r4269.
1412
1413 2009-10-19  Anders Carlsson  <andersca@apple.com>
1414
1415         Fix build.
1416
1417         * Plugins/WebNetscapePluginView.mm:
1418         (-[WebNetscapePluginView saveAndSetNewPortStateForUpdate:]):
1419
1420 2009-10-19  Dan Bernstein  <mitz@apple.com>
1421
1422         Reviewed by Anders Carlsson.
1423
1424         Split assertions of conjunctions into separate statements or remove
1425         redundant assertions.
1426
1427         * Plugins/Hosted/NetscapePluginHostProxy.mm:
1428         (WebKit::NetscapePluginHostProxy::deadNameNotificationCallback):
1429         * Plugins/Hosted/WebHostedNetscapePluginView.mm:
1430         (-[WebHostedNetscapePluginView setAttributeKeys:andValues:]):
1431         (-[WebHostedNetscapePluginView _webPluginContainerCancelCheckIfAllowedToLoadRequest:]):
1432         * Plugins/WebBaseNetscapePluginView.mm:
1433         (-[WebBaseNetscapePluginView halt]):
1434         (-[WebBaseNetscapePluginView resumeFromHalt]):
1435         * Plugins/WebNetscapePluginView.mm:
1436         (-[WebNetscapePluginView saveAndSetNewPortStateForUpdate:]):
1437         (-[WebNetscapePluginView _webPluginContainerCancelCheckIfAllowedToLoadRequest:]):
1438         * WebCoreSupport/WebContextMenuClient.mm:
1439         (WebContextMenuClient::getCustomMenuFromDefaultItems):
1440         * WebCoreSupport/WebEditorClient.mm:
1441         (WebEditorClient::checkGrammarOfString):
1442         (WebEditorClient::checkTextOfParagraph):
1443         * WebView/WebTextCompletionController.mm:
1444         (-[WebTextCompletionController _reflectSelection]):
1445
1446 2009-10-18  Mark Rowe  <mrowe@apple.com>
1447
1448         Reviewed by Dan Bernstein.
1449
1450         <rdar://problem/7309062> Crashes in WebCore::DocumentLoader::isStopping below WebKit::NetscapePluginInstanceProxy::loadRequest.
1451
1452         * Plugins/Hosted/NetscapePluginInstanceProxy.mm:
1453         (WebKit::NetscapePluginInstanceProxy::loadRequest): Null-check the DocumentLoader before deferencing it.
1454
1455 2009-10-16  Kevin Decker  <kdecker@apple.com>
1456
1457         Reviewed by Jon Honeycutt.
1458
1459         <rdar://problem/7304575>
1460         
1461         * Plugins/WebBaseNetscapePluginView.h: Added new boolean ivar and -hasBeenHalted instance method.
1462         * Plugins/WebBaseNetscapePluginView.mm:
1463         (-[WebBaseNetscapePluginView halt]):Update _hasBeenHalted.
1464         (-[WebBaseNetscapePluginView hasBeenHalted]): Added.
1465         * WebView/WebView.mm:
1466         (+[WebView _hasPluginForNodeBeenHalted:]): Checks to see if a plug-in node's been halted.
1467         * WebView/WebViewPrivate.h: Added -_hasPluginForNodeBeenHalted method.
1468
1469 2009-10-16  Kevin Decker  <kdecker@apple.com>
1470
1471         Reviewed by Anders Carlson.
1472
1473         Small code cleanup
1474         
1475         * Plugins/WebBaseNetscapePluginView.mm:
1476         (WebHaltablePlugin::halt): Just call -[WebBaseNetscapePluginView halt].
1477         (WebHaltablePlugin::restart): Just call -[WebBaseNetscapePluginView resumeFromHalt]
1478         (-[WebBaseNetscapePluginView halt]): 
1479         (-[WebBaseNetscapePluginView resumeFromHalt]):
1480         * WebView/WebView.mm:
1481         (_pluginViewForNode): Added a check if a render is a widget. This prevents a later assertion.
1482
1483 2009-10-16  Kevin Decker  <kdecker@apple.com>
1484
1485         Reviewed by Anders Carlson.
1486
1487         Last part of:
1488         <rdar://problem/7273354>
1489
1490         * WebView/WebView.mm: 
1491         (_pluginViewForNode): Added with code extracted from _isNodeHaltedPlugin
1492         (+[WebView _isNodeHaltedPlugin:]): Made this a class method.
1493         (+[WebView _restartHaltedPluginForNode:]): Added. Restarts a plug-in
1494         * WebView/WebViewPrivate.h: Added +_restartHaltedPluginForNode to header.
1495
1496 2009-10-16  Kevin Decker  <kdecker@apple.com>
1497
1498         Reviewed by Anders.
1499
1500         <rdar://problem/7273354> 
1501
1502         * Plugins/WebBaseNetscapePluginView.h: Added _isHalted ivar and three new methods: -halt, -resumeFromHalt, and -isHalted
1503         * Plugins/WebBaseNetscapePluginView.mm:
1504         (WebHaltablePlugin::halt): Call -halt instead of -stop.  
1505         (WebHaltablePlugin::restart):Call -resumeFromHalt instead of -start. 
1506         (-[WebBaseNetscapePluginView halt]): Added. Stop the plug-in, update _isHalted.
1507         (-[WebBaseNetscapePluginView resumeFromHalt]): Added. Start the plug-in, update _isHalted.
1508         (-[WebBaseNetscapePluginView isHalted]): Added.
1509         * WebView/WebView.mm:
1510         (-[WebView _isNodeHaltedPlugin:]): Added. Queries a DOMNode to determine if it's a halted plug-in.
1511         * WebView/WebViewPrivate.h: Added _isNodeHaltedPlugin.
1512
1513 2009-10-15  Eric Carlson  <eric.carlson@apple.com>
1514
1515         Reviewed by Adele Peterson.
1516
1517         <rdar://problem/7306052> Fullscreen max/min volume buttons non-functional
1518
1519         * WebView/WebVideoFullscreenHUDWindowController.mm:
1520         (-[WebVideoFullscreenHUDWindowController windowDidLoad]): Set volume buttons target and action.
1521         (-[WebVideoFullscreenHUDWindowController decrementVolume:]): New, decrement the volume by 10%.
1522         (-[WebVideoFullscreenHUDWindowController incrementVolume:]): New, increment the volume by 10%.
1523
1524 2009-10-15  Eric Carlson  <eric.carlson@apple.com>
1525
1526         Reviewed by Simon Fraser.
1527
1528         <rdar://problem/7295738> No way to mute/unmute a movie in full screen video mode
1529
1530         * WebView/WebVideoFullscreenHUDWindowController.mm:
1531         (-[WebVideoFullscreenHUDWindowController setVolume:]): Unmute movie before changing volume.
1532
1533 2009-10-14  Kevin Decker  <kdecker@apple.com>
1534
1535         Unbreak the world.
1536         
1537         * Plugins/WebBaseNetscapePluginView.mm:
1538         (WebHaltablePlugin::restart):
1539
1540 2009-10-14  Kevin Decker  <kdecker@apple.com>
1541
1542         Reviewed by Anders Carlsson and Jon Honeycutt
1543
1544         <rdar://problem/7304295> snapshots of halted plug-ins are missing
1545         
1546         * Plugins/WebBaseNetscapePluginView.mm: Move bodies of WebHaltablePlugin virtual functions from WebHaltablePlugin class definition.
1547         (WebHaltablePlugin::halt): Provide a substitute image to the RenderWidget for the plug-in view.
1548         (WebHaltablePlugin::restart): Clear the substitute image.
1549
1550 2009-10-13  Dave Hyatt  <hyatt@apple.com>
1551
1552         Reviewed by Adam Roben.
1553
1554         Change the order of arguments on some methods.  Split removal for user stylesheets and script into
1555         separate functions based off the type of object being removed.
1556
1557         * WebView/WebView.mm:
1558         (+[WebView _addUserScriptToGroup:worldID:source:url:whitelist:blacklist:injectionTime:]):
1559         (+[WebView _addUserStyleSheetToGroup:worldID:source:url:whitelist:blacklist:]):
1560         (+[WebView _removeUserScriptFromGroup:worldID:url:]):
1561         (+[WebView _removeUserStyleSheetFromGroup:worldID:url:]):
1562         (+[WebView _removeUserScriptsFromGroup:worldID:]):
1563         (+[WebView _removeUserStyleSheetsFromGroup:worldID:]):
1564         * WebView/WebViewPrivate.h:
1565
1566 2009-10-13  Anders Carlsson  <andersca@apple.com>
1567
1568         Reviewed by Sam Weinig.
1569
1570         <rdar://problem/6660507> Add "privacy mode" to Netscape Plug-in API
1571
1572         Listen for WebPreferences notifications and update the _isPrivateBrowsingEnabled ivar 
1573         when the value changes. Also call -[WebBaseNetscapePluginView privateBrowsingModeDidChange] when the
1574         value changes. In process this just calls NPP_SetValue, and OOP it sends a MIG message to the plug-in host.
1575         
1576         * Plugins/Hosted/NetscapePluginHostManager.h:
1577         * Plugins/Hosted/NetscapePluginHostManager.mm:
1578         (WebKit::NetscapePluginHostManager::instantiatePlugin):
1579         * Plugins/Hosted/NetscapePluginInstanceProxy.h:
1580         * Plugins/Hosted/NetscapePluginInstanceProxy.mm:
1581         (WebKit::NetscapePluginInstanceProxy::privateBrowsingModeDidChange):
1582         * Plugins/Hosted/WebHostedNetscapePluginView.mm:
1583         (-[WebHostedNetscapePluginView createPlugin]):
1584         (-[WebHostedNetscapePluginView privateBrowsingModeDidChange]):
1585         * Plugins/Hosted/WebKitPluginHost.defs:
1586         * Plugins/WebBaseNetscapePluginView.h:
1587         * Plugins/WebBaseNetscapePluginView.mm:
1588         (-[WebBaseNetscapePluginView privateBrowsingModeDidChange]):
1589         (-[WebBaseNetscapePluginView viewDidMoveToWindow]):
1590         (-[WebBaseNetscapePluginView preferencesHaveChanged:]):
1591         * Plugins/WebNetscapePluginView.mm:
1592         (-[WebNetscapePluginView privateBrowsingModeDidChange]):
1593         (-[WebNetscapePluginView getVariable:value:]):
1594
1595 2009-10-12  Simon Fraser  <simon.fraser@apple.com>
1596
1597         Reviewed by Darin Adler.
1598
1599         Video keeps playing after going fullscreen, then closing window
1600         https://bugs.webkit.org/show_bug.cgi?id=30164
1601         
1602         Clear the QTMovie on the QTMovieView when coming out of fullscreen,
1603         to fix issue where the underlying movie keeps playing.
1604
1605         * WebView/WebVideoFullscreenController.mm:
1606         (-[WebVideoFullscreenController windowDidExitFullscreen]):
1607
1608 2009-10-11  Dan Bernstein  <mitz@apple.com>
1609
1610         Reviewed by Darin Adler.
1611
1612         <rdar://problem/7294267> REGRESSION (r48492): Gmail voice and video chat
1613         doesn’t work
1614         https://bugs.webkit.org/show_bug.cgi?id=30295
1615
1616         Test: plugins/setProperty.html
1617
1618         * Plugins/Hosted/ProxyInstance.mm:
1619         (WebKit::ProxyInstance::setFieldValue): Fixed a typo. The function
1620         should return early if m_instanceProxy is null.
1621
1622 2009-10-09  Adam Barth  <abarth@webkit.org>
1623
1624         Reviewed by Darin Adler.
1625
1626         Factor HistoryController out of FrameLoader
1627         https://bugs.webkit.org/show_bug.cgi?id=30246
1628
1629         Update API call.
1630
1631         * WebCoreSupport/WebFrameLoaderClient.mm:
1632         (WebFrameLoaderClient::restoreViewState):
1633         * WebView/WebView.mm:
1634         (-[WebView _loadBackForwardListFromOtherView:]):
1635
1636 2009-10-09  Mark Rowe  <mrowe@apple.com>
1637
1638         Reviewed by Brady Eidson.
1639
1640         <rdar://problem/7290671> Crash after navigating away from a page with subframe containing plug-in
1641
1642         At the time that -stop is called on a WebBaseNetscapePluginView that is contained within a subframe
1643         the WebFrame's data source has been zeroed out.  This was causing -[WebBaseNetscapePluginView webFrame]
1644         to return nil during -stop, preventing the plug-in view from unregistering itself from the PluginHalter.
1645         We fix this by having -webFrame retrieve the frame directly rather than retrieving it from the data source.
1646
1647         * Plugins/WebBaseNetscapePluginView.mm:
1648         (-[WebBaseNetscapePluginView dataSource]): Get the data source from the WebFrame.
1649         (-[WebBaseNetscapePluginView webFrame]): Get the Frame directly from the element's document rather
1650         than taking a windy route through the WebDataSource.
1651
1652 2009-10-09  Brady Eidson  <beidson@apple.com>
1653
1654         Reviewed by Dan Bernstein.
1655
1656         Add SPI to specifically enable visited link tracking.
1657
1658         * History/WebHistory.mm:
1659         (+[WebHistory _setVisitedLinkTrackingEnabled:]):
1660         * History/WebHistoryPrivate.h:
1661
1662 2009-10-08  Jon Honeycutt  <jhoneycutt@apple.com>
1663
1664         Remove the WebKitPluginHalterEnabledPreferenceKey in favor of checking
1665         for the existence of a PluginHalterDelegate.
1666
1667         Reviewed by Dan Bernstein.
1668
1669         * WebCoreSupport/WebPluginHalterClient.h:
1670         Add declaration for new function.
1671
1672         * WebCoreSupport/WebPluginHalterClient.mm:
1673         (WebPluginHalterClient::enabled):
1674         Check whether the UIDelegate responds to shouldHaltPlugin.
1675
1676         * WebView/WebPreferenceKeysPrivate.h:
1677         Remove the "enabled" preference key.
1678
1679         * WebView/WebPreferences.mm:
1680         (+[WebPreferences initialize]):
1681         Remove the initialization of the pref.
1682
1683         * WebView/WebPreferencesPrivate.h:
1684         Remove the getter/setter for this pref.
1685
1686         * WebView/WebView.mm:
1687         (-[WebView _preferencesChangedNotification:]):
1688         Remove propagation of the pref. 
1689
1690 2009-10-08  Adam Barth  <abarth@webkit.org>
1691
1692         Reviewed by Eric Seidel.
1693
1694         Move executeScript from FrameLoader to ScriptController
1695         https://bugs.webkit.org/show_bug.cgi?id=30200
1696
1697         Update API call.
1698
1699         * WebView/WebFrame.mm:
1700         (-[WebFrame _stringByEvaluatingJavaScriptFromString:forceUserGesture:]):
1701         * WebView/WebView.mm:
1702         (-[WebView aeDescByEvaluatingJavaScriptFromString:]):
1703
1704 2009-10-08  Brady Eidson  <beidson@apple.com>
1705
1706         Reviewed by Dan Bernstein.
1707
1708         Ask the History Delegate to populate the visited links hash.
1709         <rdar://problem/7285293> and https://webkit.org/b/29904
1710
1711         * History/WebHistory.mm:
1712         (+[WebHistory _removeAllVisitedLinks]):
1713         * History/WebHistoryPrivate.h:
1714         * WebCoreSupport/WebChromeClient.mm:
1715         (WebChromeClient::populateVisitedLinks):
1716         * WebView/WebDelegateImplementationCaching.h:
1717         * WebView/WebDelegateImplementationCaching.mm:
1718         (CallHistoryDelegate):
1719         * WebView/WebHistoryDelegate.h:
1720         * WebView/WebView.mm:
1721         (-[WebView _cacheHistoryDelegateImplementations]):
1722         (-[WebView addVisitedLinks:]):
1723         * WebView/WebViewPrivate.h:
1724
1725 2009-10-08  Anders Carlsson  <andersca@apple.com>
1726
1727         Reviewed by Sam Weinig.
1728
1729         Remove the shouldLoadMediaElementURL implementation.
1730
1731         * WebCoreSupport/WebFrameLoaderClient.h:
1732         * WebCoreSupport/WebFrameLoaderClient.mm:
1733         * WebView/WebPolicyDelegatePrivate.h:
1734
1735 2009-10-07  Simon Fraser  <simon.fraser@apple.com>
1736
1737         Re-land 49269-49271 since reverting them did not fix the tests.
1738
1739         * WebView/WebHTMLView.mm:
1740         (-[WebHTMLView drawRect:]):
1741
1742 2009-10-07  Simon Fraser  <simon.fraser@apple.com>
1743
1744         Revert 49269-49271 to see if it fixes test failures on SnowLeopard that do not
1745         reproduce locally.
1746
1747         * WebView/WebHTMLView.mm:
1748         (-[WebHTMLView drawRect:]):
1749
1750 2009-10-07  Adam Barth  <abarth@webkit.org>
1751
1752         Reviewed by Darin Adler.
1753
1754         Factor PolicyChecker out of FrameLoader
1755         https://bugs.webkit.org/show_bug.cgi?id=30155
1756
1757         Move the policy callback to the policy object.
1758
1759         * WebCoreSupport/WebFrameLoaderClient.mm:
1760         (WebFrameLoaderClient::dispatchWillSubmitForm):
1761         (WebFrameLoaderClient::receivedPolicyDecison):
1762
1763 2009-10-07  Brady Eidson  <beidson@apple.com>
1764
1765         Reviewed by Darin Adler.
1766
1767         Send title changes to the global history delegate.
1768         <rdar://problem/7285293> and https://webkit.org/b/29904
1769
1770         * WebCoreSupport/WebFrameLoaderClient.mm:
1771         (WebFrameLoaderClient::setTitle):
1772         * WebView/WebDelegateImplementationCaching.h:
1773         * WebView/WebHistoryDelegate.h:
1774         * WebView/WebView.mm:
1775         (-[WebView _cacheHistoryDelegateImplementations]):
1776
1777 2009-10-07  Darin Adler  <darin@apple.com>
1778
1779         Reviewed by John Sullivan.
1780
1781         Make the setMetadataURL function foolproof by having it remove user info
1782         https://bugs.webkit.org/show_bug.cgi?id=30178
1783         rdar://problem/6544670
1784
1785         * Misc/WebNSFileManagerExtras.m:
1786         (-[NSFileManager _webkit_setMetadataURL:referrer:atPath:]):
1787         Call _web_URLByRemovingUserInfo on the passed in URL string after converting
1788         it to a URL, and then convert it back to a string.
1789
1790         * Misc/WebNSURLExtras.h: Added _web_URLByRemovingUserInfo.
1791         * Misc/WebNSURLExtras.mm: Removed unused WebKitURLComponents struct.
1792         (-[NSURL _web_URLByTruncatingOneCharacterBeforeComponent:]): Renamed to be
1793         clearer on what this does.
1794         (-[NSURL _webkit_URLByRemovingFragment]): Changed to call new name.
1795         (-[NSURL _webkit_URLByRemovingResourceSpecifier]): Ditto.
1796         (-[NSURL _web_URLByRemovingComponentAndSubsequentCharacter:]): Added.
1797         (-[NSURL _web_URLByRemovingUserInfo]): Added.
1798
1799 2009-10-07  Simon Fraser  <simon.fraser@apple.com>
1800
1801         Make Dan Bernstein happy.
1802
1803         * WebView/WebHTMLView.mm:
1804         (-[WebHTMLView drawRect:]):
1805
1806 2009-10-07  Simon Fraser  <simon.fraser@apple.com>
1807
1808         Reviewed by Dan Bernstein.
1809
1810         Avoid Obj-C message dispatch when possible by storing accessed objects
1811         in local variables.
1812
1813         * WebView/WebHTMLView.mm:
1814         (-[WebHTMLView drawRect:]):
1815
1816 2009-10-07  Simon Fraser  <simon.fraser@apple.com>
1817
1818         Reviewed by Dan Bernstein.
1819
1820         Animation stalls for a few seconds partway through
1821         https://bugs.webkit.org/show_bug.cgi?id=30182
1822         
1823         Make sure that we only call -disableScreenUpdatesUntilFlush when a window
1824         update is actually going to happen, otherwise screen updates are disabled
1825         for too long.
1826
1827         * WebView/WebHTMLView.mm:
1828         (-[WebHTMLView drawRect:]):
1829
1830 2009-10-06  Pavel Feldman  <pfeldman@chromium.org>
1831
1832         Reviewed by Timothy Hatcher.
1833
1834         Web Inspector: default to an attached inspector window on Windows (as on Mac).
1835
1836         https://bugs.webkit.org/show_bug.cgi?id=30134
1837
1838         * WebCoreSupport/WebInspectorClient.mm:
1839         (-[WebInspectorWindowController showWindow:]):
1840
1841 2009-10-06  Adam Barth  <abarth@webkit.org>
1842
1843         Reviewed by Eric Seidel.
1844
1845         Move FrameLoader::canLoad to SecurityOrigin
1846         https://bugs.webkit.org/show_bug.cgi?id=30111
1847
1848         * Plugins/Hosted/HostedNetscapePluginStream.mm:
1849         (WebKit::HostedNetscapePluginStream::HostedNetscapePluginStream):
1850         * Plugins/Hosted/NetscapePluginInstanceProxy.mm:
1851         (WebKit::NetscapePluginInstanceProxy::loadRequest):
1852         * Plugins/WebBaseNetscapePluginStream.mm:
1853         (WebNetscapePluginStream::WebNetscapePluginStream):
1854         * Plugins/WebNetscapePluginView.mm:
1855         (-[WebNetscapePluginView loadRequest:inTarget:withNotifyData:sendNotification:]):
1856         * Plugins/WebPluginContainerCheck.mm:
1857         (-[WebPluginContainerCheck _isForbiddenFileLoad]):
1858         * WebView/WebFrame.mm:
1859         (-[WebFrame _allowsFollowingLink:]):
1860
1861 2009-10-06  Adam Barth  <abarth@webkit.org>
1862
1863         Reviewed by Eric Seidel.
1864
1865         Move setLocalLoadPolicy and friends to SecurityOrigin
1866         https://bugs.webkit.org/show_bug.cgi?id=30110
1867
1868         Call the new API.
1869
1870         * WebView/WebView.mm:
1871         (-[WebView _commonInitializationWithFrameName:groupName:usesDocumentViews:]):
1872
1873 2009-10-06  Simon Fraser  <simon.fraser@apple.com>
1874
1875         Reviewed by Mark Rowe.
1876
1877         accessibility/media-element.html crashes (and has incorrect result)
1878         https://bugs.webkit.org/show_bug.cgi?id=30108
1879
1880         Fix up the accessibilty label for the newly added fullscreen button,
1881         and update the test result accordingly.
1882
1883         * WebCoreSupport/WebViewFactory.mm:
1884         (-[WebViewFactory localizedMediaControlElementString:]):
1885         Handle "ControlsPanel" which is just an empty container, to avoid
1886         asserting in debug builds.
1887
1888 2009-10-06  Daniel Bates  <dbates@webkit.org>
1889
1890         Reviewed by Eric Seidel.
1891
1892         https://bugs.webkit.org/show_bug.cgi?id=30107
1893         
1894         Fixes an issue where the Mac build does return the correct drop effect
1895         with respect to the HTML 5 specification when effectAllowed == "none".
1896         
1897         Currently, when effectAllowed == "none" and dropEffect == "copy" or 
1898         dropEffect == "move" the resulting drop effect is "copy" and "move",
1899         respectively. However, the HTML 5 specification states that regardless
1900         of the specified dropEffect, when effectAllowed == "none" the resulting
1901         drop effect should be "none".
1902
1903         * WebView/WebHTMLView.mm:
1904         (-[WebHTMLView draggingSourceOperationMaskForLocal:]):
1905
1906 2009-10-06  Pavel Feldman  <pfeldman@chromium.org>
1907
1908         Reviewed by Timothy Hatcher.
1909
1910         Web Inspector: close inspector client view on
1911         InspectorController::close API call.
1912
1913         In order to run batch web inspector layout tests (and not affect 
1914         subsequent tests) we should close inspector client's view upon
1915         InspectorController::close API call.
1916
1917         https://bugs.webkit.org/show_bug.cgi?id=30009
1918
1919         * WebCoreSupport/WebInspectorClient.mm:
1920         (WebInspectorClient::createPage):
1921
1922 2009-10-05  Dan Bernstein  <mitz@apple.com>
1923
1924         Rubber-stamped by Mark Rowe.
1925
1926         Moved a WebPluginHalterClient out of the WebCore namesapce.
1927
1928         * WebCoreSupport/WebPluginHalterClient.h:
1929
1930 2009-10-05  Kevin Decker  <kdecker@apple.com>
1931
1932         Reviewed by Dan Bernstein.
1933
1934         Added new PluginHalter client, delegate and few more WebPreferences keys.
1935
1936         * WebView/WebPreferenceKeysPrivate.h: Added two new keys.
1937         * WebView/WebPreferences.mm:
1938         (+[WebPreferences initialize]): Initialize newly added key.
1939         (-[WebPreferences pluginAllowedRunTime]): Added.
1940         (-[WebPreferences setPluginAllowedRunTime:]): Added.
1941         * WebView/WebPreferencesPrivate.h: Added above two methods.
1942         * WebView/WebUIDelegatePrivate.h: Added shouldHaltPlugin delegate.
1943         * WebView/WebView.mm:
1944         (-[WebView _commonInitializationWithFrameName:groupName:usesDocumentViews:]):
1945         Setup a new WebPluginHalterClient.
1946         (-[WebView _preferencesChangedNotification:]): Update WebCore settings accordingly.
1947         * WebCoreSupport/WebPluginHalterClient.h: Added.
1948         * WebCoreSupport/WebPluginHalterClient.mm: Added.
1949         (WebPluginHalterClient::WebPluginHalterClient):
1950         (WebPluginHalterClient::shouldHaltPlugin): Added, invoke the delegate.
1951
1952 2009-10-05  Simon Fraser  <simon.fraser@apple.com>
1953
1954         More build fixes for Tiger.
1955
1956         * WebView/WebVideoFullscreenController.mm:
1957
1958 2009-10-05  Simon Fraser  <simon.fraser@apple.com>
1959
1960         More build fixes for Tiger.
1961
1962         * WebView/WebVideoFullscreenController.mm:
1963         (-[WebVideoFullscreenWindow animationDidEnd:]):
1964         * WebView/WebWindowAnimation.m:
1965
1966 2009-10-05  Simon Fraser  <simon.fraser@apple.com>
1967
1968         More build fixes for Tiger.
1969
1970         * WebView/WebVideoFullscreenController.mm:
1971         * WebView/WebVideoFullscreenHUDWindowController.mm:
1972         (-[WebVideoFullscreenHUDWindow initWithContentRect:styleMask:backing:defer:]):
1973         (-[WebVideoFullscreenHUDWindowController scheduleTimeUpdate]):
1974         (-[WebVideoFullscreenHUDWindowController fadeWindowIn]):
1975         (-[WebVideoFullscreenHUDWindowController fadeWindowOut]):
1976         (-[WebVideoFullscreenHUDWindowController closeWindow]):
1977
1978 2009-10-05  Simon Fraser  <simon.fraser@apple.com>
1979
1980         Build fixes for Tiger.
1981
1982         * WebView/WebVideoFullscreenHUDWindowController.h:
1983         * WebView/WebVideoFullscreenHUDWindowController.mm:
1984         (-[WebVideoFullscreenHUDWindow initWithContentRect:styleMask:backing:defer:]):
1985         (-[WebVideoFullscreenHUDWindowController dealloc]):
1986         (-[WebVideoFullscreenHUDWindowController closeWindow]):
1987         (-[WebVideoFullscreenHUDWindowController windowDidLoad]):
1988
1989 2009-10-05  Simon Fraser  <simon.fraser@apple.com>
1990
1991         Build fix. If you call Node::hasTagName(), you also have to include Element.h.
1992
1993         * WebCoreSupport/WebChromeClient.mm:
1994
1995 2009-10-05  Pierre d'Herbemont  <pdherbemont@webkit.org>
1996
1997         Reviewed by Simon Fraser
1998         
1999         Support fullscreen in MediaPlayer (Mac)
2000         https://bugs.webkit.org/show_bug.cgi?id=26742
2001
2002         Add a fullscreen button to the <video> controller if the media engine,
2003         and the theme have support for fullscreen, and can show appropriate controls.
2004         Clicking the button calls through the ChromeClient to the WebVideoFullscreenController
2005         in WebKit to do a nice animation to fullscreen, with a custom controller.
2006
2007         * WebCoreSupport/WebChromeClient.h:
2008         * WebCoreSupport/WebChromeClient.mm:
2009         (WebChromeClient::supportsFullscreenForNode):
2010         (WebChromeClient::enterFullscreenForNode):
2011         (WebChromeClient::exitFullscreenForNode):
2012         New methods to ask whether fullscreen is possible for a given node, and
2013         notifications on enterying and exiting fullscreen.
2014         
2015         * WebView/WebVideoFullscreenController.h: Added.
2016         * WebView/WebVideoFullscreenController.mm: Added.
2017         WebVideoFullscreenController is responsible for creating the fullscreen window,
2018         and coordinating the various animations when going fullscreen.
2019
2020         * WebView/WebVideoFullscreenHUDWindowController.h: Added.
2021         * WebView/WebVideoFullscreenHUDWindowController.mm: Added.
2022         This class manages the heads-up display (HUD) control bar.
2023
2024         * WebView/WebView.mm:
2025         (-[WebView _close]):
2026         Make sure we come out of fullscreen if the WebView is torn down (e.g. if
2027         you close a background window).
2028
2029         (-[WebView _enterFullscreenForNode:WebCore::]):
2030         Make a WebVideoFullscreenController and tell is to start to go fullscreen.
2031         
2032         (-[WebView _exitFullscreen]):
2033         Tell the WebVideoFullscreenController to come out of fullscreen, and clean up.
2034         
2035         * WebView/WebViewData.h:
2036         * WebView/WebViewData.mm:
2037         (-[WebViewPrivate dealloc]):
2038         (-[WebViewPrivate finalize]):
2039         * WebView/WebViewInternal.h:
2040         Keep a pointer to the WebVideoFullscreenController.
2041         
2042         * WebView/WebWindowAnimation.h: Added.
2043         * WebView/WebWindowAnimation.m: Added.
2044         (WebWindowAnimationDurationFromDuration):
2045         (scaledRect):
2046         (squaredDistance):
2047         Handle the animations used during the transitition to fullscreen.
2048
2049 2009-10-05  Anders Carlsson  <andersca@apple.com>
2050
2051         Reviewed by Kevin Decker.
2052        
2053         WebKit side of <rdar://problem/7179166>
2054        
2055         * Plugins/Hosted/NetscapePluginInstanceProxy.h:
2056         Add an m_pluginIsWaitingForDraw member variable.
2057         
2058         * Plugins/Hosted/NetscapePluginInstanceProxy.mm:
2059         (WebKit::NetscapePluginInstanceProxy::NetscapePluginInstanceProxy):
2060         Initialize m_pluginIsWaitingForDraw.
2061         
2062         (WebKit::NetscapePluginInstanceProxy::invalidateRect):
2063         Set m_pluginIsWaitingForDraw to true.
2064         
2065         (WebKit::NetscapePluginInstanceProxy::didDraw):
2066         If m_pluginIsWaitingForDraw is true, call _WKPHPluginInstanceDidDraw.
2067         
2068         * Plugins/Hosted/WebHostedNetscapePluginView.mm:
2069         (-[WebHostedNetscapePluginView drawRect:]):
2070         Call didDraw.
2071         
2072         * Plugins/Hosted/WebKitPluginHost.defs:
2073         Add PHPluginInstanceDidDraw.
2074
2075 2009-10-02  Chris Marrin  <cmarrin@apple.com>
2076
2077         Reviewed by Adele Peterson.
2078
2079         Add functionality to pause/throttle CSS transitions/animations in a WebView
2080         https://bugs.webkit.org/show_bug.cgi?id=29942
2081
2082         Added both a setter and getter function
2083
2084         * WebView/WebView.mm:
2085         (-[WebView cssAnimationsSuspended]):
2086         (-[WebView setCSSAnimationsSuspended:]):
2087         * WebView/WebViewData.h:
2088         * WebView/WebViewData.mm:
2089         (-[WebViewPrivate init]):
2090         * WebView/WebViewPrivate.h:
2091
2092 2009-10-04  Kevin Decker  <kdecker@apple.com>
2093
2094         Reviewed by Sam Weinig.
2095
2096         <rdar://problem/7273363> Plug-ins should use PluginHalter
2097         
2098         * Plugins/WebBaseNetscapePluginView.h: Add WebHaltablePlugin forward declare and _haltable ivar.
2099         * Plugins/WebBaseNetscapePluginView.mm:
2100         (WebHaltablePlugin::WebHaltablePlugin): Added.
2101         (WebHaltablePlugin::halt): New method that stops a plug-in.
2102         (WebHaltablePlugin::restart): New method that starts a plug-in.
2103         (WebHaltablePlugin::node): Added. Provides the DOMNode corresponding to the plug-in in WebBaseNetscapePluginView.
2104         (-[WebBaseNetscapePluginView initWithFrame:pluginPackage:URL:baseURL:MIMEType:attributeKeys:attributeValues:loadManually:element:WebCore::]):
2105         Initialize new _haltable ivar.
2106         (-[WebBaseNetscapePluginView start]): Call the page's didStartPlugin() upon starting a plug-in.
2107         (-[WebBaseNetscapePluginView stop]): Call the page's didStopPlugin() upon stopping a plug-in.
2108
2109 2009-10-05  Pavel Feldman  <pfeldman@chromium.org>
2110
2111         Reviewed by Timothy Hatcher.
2112
2113         Web Inspector: add testing harness for Web Inspector.
2114
2115         https://bugs.webkit.org/show_bug.cgi?id=30010
2116
2117         * WebInspector/WebInspector.mm:
2118         (-[WebInspector evaluateInFrontend:callId:script:]):
2119         * WebInspector/WebInspectorPrivate.h: Added.
2120
2121 2009-10-04  Kevin Decker  <kdecker@apple.com>
2122
2123         Reviewed by Cameron Zwarich.
2124
2125         * WebView/WebPreferenceKeysPrivate.h: Added new key.
2126         * WebView/WebPreferences.mm:
2127         (+[WebPreferences initialize]): Leave plug-in halting disabled by default.
2128         (-[WebPreferences pluginHalterEnabled]): Added.
2129         (-[WebPreferences setPluginHalterEnabled:]): Ditto.
2130         * WebView/WebPreferencesPrivate.h: Added above new methods. 
2131
2132 2009-10-02  Dave Hyatt  <hyatt@apple.com>
2133
2134         Reviewed by Adam Roben.
2135
2136         Add support for blacklist patterns to user stylesheets and scripts in addition to whitelist patterns.
2137
2138         * WebView/WebView.mm:
2139         (toStringVector):
2140         (+[WebView _addUserScriptToGroup:source:url:worldID:whitelist:blacklist:injectionTime:]):
2141         (+[WebView _addUserStyleSheetToGroup:source:url:worldID:whitelist:blacklist:]):
2142         * WebView/WebViewPrivate.h:
2143
2144 2009-10-01  Mark Rowe  <mrowe@apple.com>
2145
2146         Fix the Tiger build.  Don't unconditionally enable 3D canvas as it is not supported on Tiger.
2147
2148         * Configurations/FeatureDefines.xcconfig:
2149
2150 2009-10-01  Chris Marrin  <cmarrin@apple.com>
2151
2152         Reviewed by Oliver Hunt.
2153
2154         Turn on ENABLE_3D_CANVAS in TOT
2155         https://bugs.webkit.org/show_bug.cgi?id=29906
2156
2157         * Configurations/FeatureDefines.xcconfig:
2158         * WebView/WebPreferenceKeysPrivate.h:
2159         * WebView/WebPreferences.mm:
2160         (+[WebPreferences initialize]):
2161         (-[WebPreferences webGLEnabled]):
2162         (-[WebPreferences setWebGLEnabled:]):
2163         * WebView/WebPreferencesPrivate.h:
2164         * WebView/WebView.mm:
2165         (-[WebView _preferencesChangedNotification:]):
2166
2167 2009-09-30  Sam Weinig  <sam@webkit.org>
2168
2169         Reviewed by Dan Bernstein.
2170
2171         Fix for <rdar://problem/7259706>
2172         Need WebKit API or SPI on Mac and Windows to test whether it's safe to load a page in a new tab/window
2173
2174         * WebView/WebFrame.mm:
2175         (-[WebFrame _allowsFollowingLink:]):
2176         * WebView/WebFramePrivate.h:
2177
2178 2009-09-30  Dave Hyatt  <hyatt@apple.com>
2179
2180         Reviewed by Adam Roben.
2181
2182         Add the ability to remove user stylesheets and scripts by URL.
2183
2184         * WebView/WebView.mm:
2185         (+[WebView _removeUserContentFromGroup:url:worldID:]):
2186         * WebView/WebViewPrivate.h:
2187
2188 2009-09-29  Brady Eidson  <beidson@apple.com>
2189
2190         Rubberstamped by Dan Bernstein.
2191
2192         Fix license and some sorting in new files.
2193
2194         * WebView/WebHistoryDelegate.h:
2195         * WebView/WebNavigationData.h:
2196         * WebView/WebNavigationData.mm:
2197
2198 2009-09-29  Brady Eidson  <beidson@apple.com>
2199
2200         Reviewed by John Sullivan.
2201
2202         WebKit Mac API should provide a delegate interface for global history.
2203         <rdar://problem/7042773> and https://webkit.org/b/29904
2204
2205         * WebView/WebHistoryDelegate.h: Added. New interface for WebKit clients to implement to manage 
2206           their own global history store.
2207
2208         Object to store all of the bits of data relevant to a page visit:
2209         * WebView/WebNavigationData.h: Added.
2210         * WebView/WebNavigationData.mm: Added.
2211         (-[WebNavigationDataPrivate dealloc]):
2212         (-[WebNavigationData initWithURLString:title:originalRequest:response:hasSubstituteData:clientRedirectSource:]):
2213         (-[WebNavigationData url]):
2214         (-[WebNavigationData title]):
2215         (-[WebNavigationData originalRequest]):
2216         (-[WebNavigationData response]):
2217         (-[WebNavigationData hasSubstituteData]):
2218         (-[WebNavigationData clientRedirectSource]):
2219         (-[WebNavigationData dealloc]):
2220
2221         * WebCoreSupport/WebFrameLoaderClient.mm:
2222         (WebFrameLoaderClient::updateGlobalHistory): If the delegate exists, don't use the built-in WebHistory.
2223           If the implementation for this method exists, call it.
2224         (WebFrameLoaderClient::updateGlobalHistoryRedirectLinks): Ditto
2225
2226         * WebView/WebDelegateImplementationCaching.h:
2227         * WebView/WebDelegateImplementationCaching.mm:
2228         (WebViewGetHistoryDelegateImplementations):
2229         (CallHistoryDelegate):
2230
2231         * WebView/WebView.mm:
2232         (-[WebView _cacheHistoryDelegateImplementations]):
2233         (-[WebView setHistoryDelegate:]):
2234         (-[WebView historyDelegate]):
2235         * WebView/WebViewData.h:
2236         * WebView/WebViewPrivate.h:
2237
2238 2009-09-29  Kenneth Russell  <kbr@google.com>
2239
2240         Reviewed by Dimitri Glazkov.
2241
2242         Add support for run-time flag for 3D canvas
2243         https://bugs.webkit.org/show_bug.cgi?id=29826
2244
2245         * WebView/WebView.mm:
2246         (-[WebView _preferencesChangedNotification:]): Enable experimental
2247         WebGL flag when 3D_CANVAS is enabled in the build.
2248
2249 2009-09-28  Fumitoshi Ukai  <ukai@chromium.org>
2250
2251         Reviewed by Eric Seidel.
2252
2253         Add experimentalWebSocketsEnabled in WebPreferences.
2254         https://bugs.webkit.org/show_bug.cgi?id=28941
2255
2256         * WebView/WebPreferenceKeysPrivate.h:
2257         * WebView/WebPreferences.mm:
2258         (+[WebPreferences initialize]):
2259         (-[WebPreferences experimentalWebSocketsEnabled]):
2260         (-[WebPreferences setExperimentalWebSocketsEnabled:]):
2261         * WebView/WebPreferencesPrivate.h:
2262         * WebView/WebView.mm:
2263         (-[WebView _preferencesChangedNotification:]):
2264
2265 2009-09-28  Dan Bernstein  <mitz@apple.com>
2266
2267         Reviewed by Anders Carlsson.
2268
2269         <rdar://problem/7240911> REGRESSION (r48586): Crash occurs when loading
2270         a PDF
2271
2272         CGPDFObjectRef is not a CFTypeRef, and cannot be retained or released.
2273         Its lifetime is managed by its container. Just use a Vector to store
2274         CGPDFObjectRefs, relying on the CGPDFDocument to keep them alive.
2275
2276         * WebView/WebPDFDocumentExtras.mm:
2277         (appendValuesInPDFNameSubtreeToVector):
2278         (getAllValuesInPDFNameTree):
2279         (web_PDFDocumentAllScripts):
2280
2281 2009-09-24  Jon Honeycutt  <jhoneycutt@apple.com>
2282
2283         Reviewed by Alice Liu.
2284
2285         * WebView/WebView.mm:
2286         (-[WebView _commonInitializationWithFrameName:groupName:usesDocumentViews:]):
2287         Pass 0 for new Page constructor argument.
2288
2289 2009-09-14  John Gregg  <johnnyg@google.com>
2290
2291         Reviewed by Eric Seidel.
2292
2293         isEnabled switch for notifications (experimental) in Page Settings
2294         https://bugs.webkit.org/show_bug.cgi?id=28930
2295
2296         Adds support for the experimentalNotificationsEnabled flag in Settings
2297         through WebPreferencesPrivate.
2298
2299         * WebView/WebPreferenceKeysPrivate.h:
2300         * WebView/WebPreferences.mm:
2301         (+[WebPreferences initialize]):
2302         (-[WebPreferences experimentalNotificationsEnabled]):
2303         (-[WebPreferences setExperimentalNotificationsEnabled:]):
2304         * WebView/WebPreferencesPrivate.h:
2305         * WebView/WebView.mm:
2306         (-[WebView _preferencesChangedNotification:]):
2307
2308 2009-09-23  Geoffrey Garen  <ggaren@apple.com>
2309
2310         Reviewed by Sam Weinig.
2311
2312         Updated for a WebCore rename.
2313
2314         * WebView/WebFrame.mm:
2315         (-[WebFrame _cacheabilityDictionary]):
2316
2317 2009-09-23  Darin Adler  <darin@apple.com>
2318
2319         Reviewed by Dan Bernstein.
2320
2321         Speed up access to history items by caching date computation.
2322
2323         * History/WebHistory.mm:
2324         (getDayBoundaries): Refactored from timeIntervalForBeginningOfDay.
2325         Returns the beginning of the day that the passed time is within and
2326         the beginning of the next day.
2327         (beginningOfDay): Added. Uses getDayBoundaries so it can be fast for
2328         multiple dates within the same day, which is the common case.
2329         (dateKey): Added. Calls beginningOfDay and converts to an integer.
2330         (-[WebHistoryPrivate findKey:forDay:]): Changed to call dateKey
2331         insetad of timeIntervalForBeginningOfDay.
2332
2333 2009-09-23  David Kilzer  <ddkilzer@apple.com>
2334
2335         Move definition of USE(PLUGIN_HOST_PROCESS) from WebKitPrefix.h to Platform.h
2336
2337         Reviewed by Mark Rowe.
2338
2339         * WebKitPrefix.h: Removed definition of
2340         WTF_USE_PLUGIN_HOST_PROCESS.
2341
2342 2009-09-22  Timothy Hatcher  <timothy@apple.com>
2343
2344         Prevent scrolling multiple frames during latched wheel events.
2345
2346         Reviewed by Anders Carlsson.
2347
2348         * WebView/WebDynamicScrollBarsView.h:
2349         * WebView/WebDynamicScrollBarsView.mm:
2350         (-[WebDynamicScrollBarsView scrollWheel:]):
2351
2352 2009-09-22  Dan Bernstein  <mitz@apple.com>
2353
2354         Reviewed by John Sullivan.
2355
2356         <rdar://problem/7240911> REGRESSION (r48586): Crash occurs when loading
2357         a PDF
2358
2359         * WebView/WebPDFDocumentExtras.mm:
2360         (addWebPDFDocumentExtras): Made methodList static, because
2361         class_addMethods() doesn't copy it.
2362
2363 2009-09-21  Dan Bernstein  <mitz@apple.com>
2364
2365         Attempt to fix the Tiger build
2366
2367         * WebView/WebPDFDocumentExtras.mm:
2368         (addWebPDFDocumentExtras):
2369
2370 2009-09-21  Dan Bernstein  <mitz@apple.com>
2371
2372         Attempt to fix the Tiger build
2373
2374         * WebView/WebPDFDocumentExtras.mm:
2375         (web_PDFDocumentAllScripts):
2376         (addWebPDFDocumentExtras):
2377
2378 2009-09-21  Dan Bernstein  <mitz@apple.com>
2379
2380         Attempt to fix the Tiger build
2381
2382         * WebView/WebPDFDocumentExtras.mm:
2383         * WebView/WebPDFRepresentation.mm:
2384
2385 2009-09-21  Dan Bernstein  <mitz@apple.com>
2386
2387         Attempt to fix the Leopard and Tiger builds
2388
2389         * WebView/WebPDFDocumentExtras.mm:
2390
2391 2009-09-21  Dan Bernstein  <mitz@apple.com>
2392
2393         Reviewed by Anders Carlsson.
2394
2395         <rdar://problem/4137135> iFrame with PDF not being handled correctly on
2396         usps.com
2397         https://bugs.webkit.org/show_bug.cgi?id=4151
2398
2399         * WebView/WebJSPDFDoc.h: Added.
2400         * WebView/WebJSPDFDoc.mm: Added.
2401         (jsPDFDocInitialize): Retains the WebDataSource.
2402         (jsPDFDocFinalize): Releases the WebDataSource.
2403         (jsPDFDocPrint): Call the WebUIDelegate method -webView:printFrameView:
2404         with the PDF document's view.
2405         (makeJSPDFDoc): Makes and returns a JavaScript Doc instance that wraps
2406         the WebDataSource.
2407         * WebView/WebPDFDocumentExtras.h: Added.
2408         * WebView/WebPDFDocumentExtras.mm: Added.
2409         (appendValuesInPDFNameSubtreeToArray): Traverses a subtree of a PDF name
2410         tree and adds all values in the subtree to an array.
2411         (allValuesInPDFNameTree): Returns an array with all of the values in a
2412         PDF name tree.
2413         (web_PDFDocumentAllScripts): This is the implementation of -[PDFDocument
2414         _web_allScripts]. It gets all values in the document-level "JavaScript"
2415         name tree, which are action dictionaries, and returns an array of the
2416         actions' scripts.
2417         (addWebPDFDocumentExtras): Adds the -_web_allScripts method to
2418         PDFDocument.
2419         * WebView/WebPDFRepresentation.h:
2420         * WebView/WebPDFRepresentation.m: Removed.
2421         * WebView/WebPDFRepresentation.mm: Copied from WebKit/mac/WebView/WebPDFRepresentation.m.
2422         (+[WebPDFRepresentation initialize]): Added. Calls
2423         addWebPDFDocumentExtras().
2424         (-[WebPDFRepresentation finishedLoadingWithDataSource:]): Get the
2425         scripts from the PDF document, create a JavaScript Doc object for the
2426         document, and a JavaScript execution context, then execute every script
2427         in the context, with the Doc object as "this".
2428
2429 2009-09-17  Simon Fraser  <simon.fraser@apple.com>
2430
2431         Reviewed by Dave Hyatt.
2432
2433         Compositing layers are incorrectly positioned after scrolling with position:fixed
2434         https://bugs.webkit.org/show_bug.cgi?id=29262
2435         
2436         When scrolling a page with compositing layers inside a position:fixed element,
2437         we need to update the compositing layer positions when the scroll position changes.
2438
2439         * WebView/WebHTMLView.mm:
2440         (-[WebHTMLView _frameOrBoundsChanged]):
2441         Call the new FrameView::scrollPositionChanged() method rather than sending the
2442         scroll event directly.
2443
2444 2009-09-17  Kenneth Rohde Christiansen  <kenneth@webkit.org>
2445
2446         Reviewed by Simon Hausmann.
2447
2448         Make PlatformWindow return something else than PlatformWidget
2449         https://bugs.webkit.org/show_bug.cgi?id=29085
2450
2451         Reflect the rename of platformWindow and it's return type.
2452
2453         * WebCoreSupport/WebChromeClient.h:
2454         * WebCoreSupport/WebChromeClient.mm:
2455         (WebChromeClient::platformPageClient):
2456
2457 2009-09-17  Anders Carlsson  <andersca@apple.com>
2458
2459         Reviewed by Oliver Hunt.
2460
2461         <rdar://problem/7007541> 
2462         CrashTracer: 4800+ crashes in Safari at com.apple.WebKit • WTF::HashTableIterator...
2463
2464         Add null checks for m_instanceProxy (It will be null when a plug-in has crashed).
2465         
2466         * Plugins/Hosted/ProxyInstance.mm:
2467         (WebKit::ProxyInstance::invoke):
2468         (WebKit::ProxyInstance::supportsInvokeDefaultMethod):
2469         (WebKit::ProxyInstance::supportsConstruct):
2470         (WebKit::ProxyInstance::getPropertyNames):
2471         (WebKit::ProxyInstance::methodsNamed):
2472         (WebKit::ProxyInstance::fieldNamed):
2473         (WebKit::ProxyInstance::fieldValue):
2474         (WebKit::ProxyInstance::setFieldValue):
2475         (WebKit::ProxyInstance::invalidate):
2476
2477 2009-09-16  Simon Fraser  <simon.fraser@apple.com>
2478
2479         Reviewed by Dan Bernstein.
2480
2481         Work around a bug in AppKit on Leopard which causes compositing layers to jitter, and
2482         become misplaced when the WebHTMLView is resized or scrolled sometimes.
2483         <rdar://problem/7071636>
2484         
2485         The previous fix didn't fix the case where the layers jiggle when resizing the docked
2486         inspector when the view size is over 2048px tall, on Leopard.
2487
2488         * WebView/WebHTMLView.mm:
2489         (-[WebHTMLView _updateLayerHostingViewPosition]):
2490
2491 2009-09-16  Simon Fraser  <simon.fraser@apple.com>
2492
2493         Reviewed by Oliver Hunt.
2494
2495         Work around a bug in AppKit on Leopard which causes compositing layers to jitter, and
2496         become misplaced when the WebHTMLView is resized or scrolled sometimes.
2497         <rdar://problem/7071636>
2498         
2499         We call an internal AppKit method to make sure the layer geometry is updated correctly.
2500
2501         * WebView/WebHTMLView.mm:
2502         (-[WebHTMLView _updateLayerHostingViewPosition]):
2503
2504 2009-09-15  Simon Fraser  <simon.fraser@apple.com>
2505
2506         Reviewed by Dan Bernstein.
2507
2508         Fixed position elements flash when CSS transforms are applied on page > 2048px tall
2509         https://bugs.webkit.org/show_bug.cgi?id=27272
2510         
2511         Update the previous workaround for misplaced compositing layers, which used a 4096px
2512         threshold, to 2048px since that's the GPU max texture size on some older hardware.
2513
2514         * WebView/WebHTMLView.mm:
2515         (-[WebHTMLView _updateLayerHostingViewPosition]):
2516
2517 2009-09-15  Alex Milowski  <alex@milowski.com>
2518
2519         Reviewed by Tor Arne Vestbø.
2520
2521         Added the ENABLE_MATHML to the feaure defines
2522
2523         * Configurations/FeatureDefines.xcconfig:
2524
2525 2009-09-15  Mark Rowe  <mrowe@apple.com>
2526
2527         Reviewed by Anders Carlsson.
2528
2529         <rdar://problem/7224378> REGRESSION(r48360): Dragging a tab with a plug-in out of a window, the plug-in gets slow and confused
2530
2531         In r48360, the fix for <rdar://problem/7090444>, I neglected to consider the case where the plug-in had already been started and
2532         -start would do an early-return rather than calling -restartTimers and -addWindowObservers itself.
2533
2534         * Plugins/WebBaseNetscapePluginView.mm:
2535         (-[WebBaseNetscapePluginView viewDidMoveToWindow]): Reinstate the call to -restartTimers and -addWindowObservers, but guard them
2536         with a check that the view is still in the window.
2537
2538 2009-09-14  Brady Eidson  <beidson@apple.com>
2539
2540         Reviewed by Alexey Proskuryakov.
2541
2542         Safari 4 cannot be used to update firmware on Linksys routers.
2543         <rdar://problem/7174050> and https://bugs.webkit.org/show_bug.cgi?id=29160
2544
2545         Adopt the new WebCore::CredentialStorage in WebKit/Mac.
2546
2547         * Misc/WebDownload.mm:
2548         (-[WebDownloadInternal download:didReceiveAuthenticationChallenge:]):
2549         * Plugins/WebBaseNetscapePluginView.mm:
2550         (WebKit::getAuthenticationInfo):
2551
2552 2009-09-12  Mark Rowe  <mrowe@apple.com>
2553
2554         Reviewed by Anders Carlsson.
2555
2556         Fix <rdar://problem/7090444> Crashes in-[WebBaseNetscapePluginView stop] handling NSWindowWillCloseNotification.
2557
2558         It's not valid to call -addWindowObservers when the view is not in a window, but this can happen when -start
2559         initializes a plug-in and the plug-in removes itself from the document during initialization.  -viewDidMoveToWindow
2560         calls -start and then calls -addWindowObservers without ensuring that the view is still in a window.
2561
2562         If -[WebBaseNetscapePluginView addWindowObservers] is incorrectly called when the view is not in a window, it will
2563         observe NSWindowWillCloseNotification on all windows.  This unexpected observer registration is not balanced by an
2564         unregistration so the notification can be delivered after the view is deallocated, causing the crash seen in
2565         <rdar://problem/7090444>.
2566
2567         * Plugins/WebBaseNetscapePluginView.mm:
2568         (-[WebBaseNetscapePluginView start]): Only call -updateAndSetWindow if we still have a current window.
2569         (-[WebBaseNetscapePluginView viewDidMoveToWindow]): Remove unnecessary calls to -restartTimers and -addWindowObservers
2570         from -[WebBaseNetscapePluginView viewDidMoveToWindow].  They are already called from within -start with the extra benefit
2571         of ensuring that the view is still in a window when they are called.
2572
2573 2009-09-11  Mark Rowe  <mrowe@apple.com>
2574
2575         Reviewed by Jon Honeycutt.
2576
2577         Fix <rdar://problem/7145242> Crashes inside WTF::HashTable below NetscapePluginInstanceProxy::disconnectStream
2578
2579         * Plugins/Hosted/HostedNetscapePluginStream.mm:
2580         (WebKit::HostedNetscapePluginStream::cancelLoad): Canceling the load can result in calling through to disconnectStream.
2581         If the plug-in instance holds the last reference to the plug-in stream this will result in the stream being deallocated.
2582         This leads to HostedNetscapePluginStream::cancelLoad's call to disconnectStream being passed a deallocated stream object.
2583         Since the stream was already disconnected by the call to cancel there's no need to call disconnectStream a second time.
2584
2585 2009-09-11  Eric Seidel  <eric@webkit.org>
2586
2587         No review, rolling out r48229.
2588         http://trac.webkit.org/changeset/48229
2589
2590         * WebView/WebFrame.mm:
2591         (-[WebFrame _dragSourceMovedTo:]):
2592
2593 2009-09-10  Mark Rowe  <mrowe@apple.com>
2594
2595         Rubber-stamped by Sam Weinig.
2596
2597         Update JavaScriptCore and WebKit's FeatureDefines.xcconfig so that they are in sync with WebCore as they need to be.
2598
2599         * Configurations/FeatureDefines.xcconfig:
2600
2601 2009-09-09  Jens Alfke  <snej@chromium.org>
2602
2603         Reviewed by Eric Seidel.
2604
2605         Initialize DataTransfer's effectAllowed and dropEffect properties correctly
2606         according to HTML5 spec (sec. 7.9.2-7.9.3).
2607         https://bugs.webkit.org/show_bug.cgi?id=26700
2608
2609         * WebView/WebFrame.mm:
2610         (-[WebFrame _dragSourceMovedTo:]):
2611             Pass current drag operation (if known) to EventHandler::dragSourceMovedTo().
2612
2613 2009-09-09  Dave Hyatt  <hyatt@apple.com>
2614
2615         Reviewed by Adam Roben.
2616
2617         https://bugs.webkit.org/show_bug.cgi?id=29102, add support for user stylesheet injection.  This is similar
2618         to user script injection but allows for user stylesheets to be added.  The stylesheets are applied immediately
2619         to all Frames in the PageGroup.
2620
2621         Added userscripts/simple-stylesheet.html test case.
2622
2623         * WebView/WebView.mm:
2624         (+[WebView _addUserStyleSheetToGroup:source:url:worldID:patterns:]):
2625         * WebView/WebViewPrivate.h:
2626
2627 2009-09-07  Steve Block  <steveblock@google.com>
2628
2629         Reviewed by Adam Barth.
2630
2631         Adds a mock Geolocation service. This will be used to provide predictable behavior of the
2632         Geolocation API for use in LayoutTests. Later changes will integrate the the mock
2633         Geolocation service with DumpRenderTree.
2634         https://bugs.webkit.org/show_bug.cgi?id=28264
2635
2636         * WebCoreSupport/WebGeolocationMockPrivate.h: Added.
2637         * WebCoreSupport/WebGeolocationMock.mm: Added.
2638         (+[WebGeolocationMock setError:code:]): Added. Used by DumpRender tree to configure the mock Geolocation service.
2639         (+[WebGeolocationMock setPosition:latitude:longitude:accuracy:]): Added. Used by DumpRender tree to configure the mock Geolocation service.
2640         * WebKit.exp: Modified. Exports WebGeolocationMock.
2641
2642 2009-09-07  Drew Wilson  <atwilson@google.com>
2643
2644         Reviewed by David Levin.
2645
2646         Enable SHARED_WORKERS by default.
2647         https://bugs.webkit.org/show_bug.cgi?id=28959
2648
2649         * Configurations/FeatureDefines.xcconfig:
2650
2651 2009-09-06  Cameron McCormack  <cam@mcc.id.au>
2652
2653         Reviewed by Eric Seidel.
2654
2655         Drop <definition-src> support
2656         https://bugs.webkit.org/show_bug.cgi?id=28991
2657
2658         * MigrateHeaders.make: Remove reference to ObjC definition-src
2659         binding class.
2660
2661 2009-09-04  Mark Mentovai  <mark@chromium.org>
2662
2663         Reviewed by Dave Hyatt.
2664
2665         https://bugs.webkit.org/show_bug.cgi?id=28614
2666
2667         Account for scrollbar state changes that occur during layout.
2668
2669         * WebView/WebDynamicScrollBarsView.mm:
2670         (-[WebDynamicScrollBarsView updateScrollers]):
2671
2672         Perform a layout prior to checking whether the scrollbar modes are
2673         off, on, or automatic.  The modes may change during layout.
2674
2675         * WebView/WebFrameView.mm:
2676         (-[WebFrameView _install]):
2677
2678         Eliminate duplicated (and incorrect) scrollbar mode tracking between
2679         FrameView and ScrollView.
2680
2681 2009-09-03  Dave Hyatt  <hyatt@apple.com>
2682
2683         Reviewed by Adam Roben.
2684
2685         https://bugs.webkit.org/show_bug.cgi?id=28890, make simple user script injection work.
2686         
2687         This patch adds new API for adding and removing user scripts from page groups.  User scripts
2688         are bundled together in isolated worlds (you can have multiple scripts together in the same
2689         world).
2690
2691         Added userscripts/ directory for holding new tests (along with a simple test of script injection).
2692
2693         * WebView/WebView.mm:
2694         (+[WebView _addUserScriptToGroup:source:url:worldID:patterns:injectionTime:]):
2695         (+[WebView _removeUserContentFromGroup:worldID:]):
2696         (+[WebView _removeAllUserContentFromGroup:]):
2697         * WebView/WebViewPrivate.h:
2698
2699 2009-09-04  Adam Barth  <abarth@webkit.org>
2700
2701         Reviewed by Eric Seidel.
2702
2703         https://bugs.webkit.org/show_bug.cgi?id=24696
2704
2705         Plumb mixed content notifications to WebFrameLoadDelegatePrivate.
2706
2707         * WebCoreSupport/WebFrameLoaderClient.mm:
2708         (WebFrameLoaderClient::didDisplayInsecureContent):
2709         (WebFrameLoaderClient::didRunInsecureContent):
2710         * WebView/WebDelegateImplementationCaching.h:
2711         * WebView/WebFrameLoadDelegatePrivate.h: Added.
2712
2713 2009-09-03  Adam Barth  <abarth@webkit.org>
2714
2715         Unreviewed build fix.
2716
2717         Change notImplemented() to a FIXME.
2718
2719         * WebCoreSupport/WebFrameLoaderClient.mm:
2720         (WebFrameLoaderClient::didDisplayInsecureContent):
2721         (WebFrameLoaderClient::didRunInsecureContent):
2722
2723 2009-09-03  Adam Barth  <abarth@webkit.org>
2724
2725         Reviewed by eric@webkit.org.
2726
2727         https://bugs.webkit.org/show_bug.cgi?id=24696
2728
2729         Plumb mixed content notifications to WebFrameLoadDelegatePrivate.
2730
2731         * WebCoreSupport/WebFrameLoaderClient.mm:
2732         (WebFrameLoaderClient::didDisplayInsecureContent):
2733         (WebFrameLoaderClient::didRunInsecureContent):
2734         * WebView/WebDelegateImplementationCaching.h:
2735         * WebView/WebFrameLoadDelegatePrivate.h: Added.
2736
2737 2009-09-03  Adam Barth  <abarth@webkit.org>
2738
2739         Reviewed by Eric Seidel.
2740
2741         https://bugs.webkit.org/show_bug.cgi?id=24696
2742
2743         Stub implementations of mixed content methods of FrameLoaderClient. 
2744
2745         * WebCoreSupport/WebFrameLoaderClient.h:
2746         * WebCoreSupport/WebFrameLoaderClient.mm:
2747         (WebFrameLoaderClient::didDisplayInsecureContent):
2748         (WebFrameLoaderClient::didRunInsecureContent):
2749
2750 2009-09-02  Brady Eidson  <beidson@apple.com>
2751
2752         Reviewed by Darin Adler.
2753
2754         More partial work towards "Page Cache should support pages with Frames"
2755         https://bugs.webkit.org/show_bug.cgi?id=13631
2756
2757         * WebView/WebHTMLView.mm:
2758         (-[WebHTMLView _topHTMLView]): Rework the ASSERT in this method to reflect the
2759           reality of calling this method for pages currently in the PageCache.
2760
2761 2009-08-31  Dimitri Glazkov  <dglazkov@chromium.org>
2762
2763     Reverting http://trac.webkit.org/changeset/47904, because it caused
2764     layout test failure.
2765
2766 2009-08-31  Alexey Proskuryakov  <ap@webkit.org>
2767
2768         Reviewed by Darin Adler.
2769
2770         https://bugs.webkit.org/show_bug.cgi?id=28852
2771         Rename KURL single argument constructor to avoid confusion
2772
2773         * WebView/WebScriptDebugger.mm: (toNSURL): Adapt to the change.
2774
2775 2009-08-31  Mark Mentovai  <mark@chromium.org>
2776
2777         Reviewed by Dave Hyatt.
2778
2779         https://bugs.webkit.org/show_bug.cgi?id=28614
2780
2781         Perform a layout prior to checking whether the scrollbar modes are
2782         off, on, or automatic.  The modes may change during layout.
2783
2784         * WebView/WebDynamicScrollBarsView.mm:
2785         (-[WebDynamicScrollBarsView updateScrollers]):
2786
2787 2009-08-28  Chris Fleizach  <cfleizach@apple.com>
2788
2789         Reviewed by John Sullivan.
2790
2791         update-webkit-localizable-strings script can no longer complete
2792         https://bugs.webkit.org/show_bug.cgi?id=28792
2793
2794         * WebCoreSupport/WebViewFactory.mm:
2795         (-[WebViewFactory AXARIAContentGroupText:]):
2796
2797 2009-08-28  Gustavo Noronha Silva  <gustavo.noronha@collabora.co.uk>
2798
2799         Reviewed by Holger Freyther.
2800
2801         https://bugs.webkit.org/show_bug.cgi?id=25889
2802         [GTK] scrollbar policy for main frame is not implementable
2803
2804         Add empty implementation for new ChromeClient method.
2805
2806         * WebCoreSupport/WebChromeClient.h:
2807         (WebChromeClient::scrollbarsModeDidChange):
2808
2809 2009-08-25  Eric Carlson  <eric.carlson@apple.com>
2810
2811         Reviewed by Oliver Hunt.
2812
2813         <video> and <audio> controller should be accessible
2814         https://bugs.webkit.org/show_bug.cgi?id=28081
2815
2816         * WebCoreSupport/WebViewFactory.mm:
2817         (-[WebViewFactory localizedMediaControlElementString:]):
2818         (-[WebViewFactory localizedMediaControlElementHelpText:]):
2819         (-[WebViewFactory localizedMediaTimeDescription:]):
2820             New.
2821
2822 2009-08-24  Simon Fraser  <simon.fraser@apple.com>
2823
2824         Reviewed by NOBODY (build fix)
2825
2826         Turn off ENABLE_3D_CANVAS in the xconfig files.
2827
2828         * Configurations/FeatureDefines.xcconfig:
2829
2830 2009-08-22  Adam Barth  <abarth@webkit.org>
2831
2832         Revert 47684.  We're going to do this later once clients have had a
2833         chance to opt into the setting they like.
2834
2835         * Misc/WebKitVersionChecks.h:
2836         * WebView/WebPreferences.mm:
2837         (+[WebPreferences initialize]):
2838
2839 2009-08-22  Adam Barth  <abarth@webkit.org>
2840
2841         Reviewed by Eric Seidel.
2842
2843         Don't let local files access web URLs
2844         https://bugs.webkit.org/show_bug.cgi?id=28480
2845
2846         * Misc/WebKitVersionChecks.m:
2847         * WebView/WebPreferences.mm:
2848         (+[WebPreferences initialize]):
2849
2850 2009-08-21  Anders Carlsson  <andersca@apple.com>
2851
2852         Reviewed by Darin Adler.
2853
2854         <rdar://problem/7162480>
2855         Sometimes WebKit does not layout correctly when a WebView is embedded in an HICocoaView
2856         
2857         Add a null check for the current context when reflectScrolledClipView: is called from outside a 
2858         draw operation.
2859         
2860         * WebView/WebDynamicScrollBarsView.mm:
2861         (-[WebDynamicScrollBarsView reflectScrolledClipView:]):
2862
2863 2009-08-20  Chris Fleizach  <cfleizach@apple.com>
2864
2865         Reviewed by Darin Adler.
2866
2867         Enable various "grouping" ARIA roles
2868         https://bugs.webkit.org/show_bug.cgi?id=28486
2869
2870         * WebCoreSupport/WebViewFactory.mm:
2871         (-[WebViewFactory AXARIAContentGroupText:]):
2872
2873 2009-08-19  Mark Rowe  <mrowe@apple.com>
2874
2875         Reviewed by Dan Bernstein.
2876
2877         Fix <http://webkit.org/b/28484> Plug-in-related leaks seen on the build bot
2878
2879         When the plug-in data is being loaded manually there is a reference cycle between the
2880         NetscapePluginInstanceProxy and the HostedNetscapePluginStream.  We need to explicitly
2881         break the reference cycle in NetscapePluginInstanceProxy::cleanup so that both objects
2882         will be destroyed.
2883
2884         Take the opportunity to add RefCountedLeakCounter support to HostedNetscapePluginStream
2885         and NetscapePluginInstanceProxy to simplify tracking down leaks of these objects in the future.
2886
2887         * Plugins/Hosted/HostedNetscapePluginStream.h:
2888         * Plugins/Hosted/HostedNetscapePluginStream.mm:
2889         (WebKit::HostedNetscapePluginStream::HostedNetscapePluginStream):
2890         (WebKit::HostedNetscapePluginStream::~HostedNetscapePluginStream):
2891         * Plugins/Hosted/NetscapePluginInstanceProxy.mm:
2892         (WebKit::NetscapePluginInstanceProxy::NetscapePluginInstanceProxy):
2893         (WebKit::NetscapePluginInstanceProxy::~NetscapePluginInstanceProxy):
2894         (WebKit::NetscapePluginInstanceProxy::cleanup): Clear m_manualStream to break the reference
2895         cycle.
2896
2897 2009-08-19  Aaron Boodman  <aa@chromium.org>
2898
2899         Reviewed by David Levin.
2900
2901         https://bugs.webkit.org/show_bug.cgi?id=24853: Provide a way for WebKit clients to
2902         specify a more granular policy for cross-origin XHR access.
2903
2904         * WebView/WebView.mm: Add SPI to manipulate origin access whitelists.
2905         (+[WebView _whiteListAccessFromOrigin:destinationProtocol:destinationHost:allowDestinationSubdomains:]): Ditto.
2906         (+[WebView _resetOriginAccessWhiteLists]): Ditto.
2907         * WebView/WebViewPrivate.h: Ditto.
2908
2909 2009-08-18  Anders Carlsson  <andersca@apple.com>
2910
2911         Reviewed by Adele Peterson.
2912
2913         Mac specific part of
2914         
2915         <rdar://problem/7135588> HTMLMediaElement should ask WebPolicyLoadDelegate before loading resource
2916
2917         * WebCoreSupport/WebFrameLoaderClient.h:
2918         * WebCoreSupport/WebFrameLoaderClient.mm:
2919         Implement shouldLoadMediaElementURL by asking the policy delegate.
2920         
2921         * WebView/WebPolicyDelegatePrivate.h:
2922         Add new delegate method, remove some unused cruft.
2923
2924 2009-08-18  Drew Wilson  <atwilson@google.com>
2925
2926         Reviewed by Eric Seidel.
2927
2928         Need to extend DumpRenderTree to expose number of worker threads.
2929         https://bugs.webkit.org/show_bug.cgi?id=28292
2930
2931         * WebKit.exp:
2932         Exported WebWorkersPrivate so DumpRenderTree can access it.
2933         * Workers/WebWorkersPrivate.h: Added.
2934         * Workers/WebWorkersPrivate.mm: Added.
2935         (+[WebWorkersPrivate workerThreadCount]):
2936         Added WebWorkersPrivate::workerThreadCount() API for DumpRenderTree.
2937
2938 2009-08-17  Darin Adler  <darin@apple.com>
2939
2940         Reviewed by Sam Weinig.
2941
2942         Use a HashMap instead of a list of if statements for the command
2943         name exception map.
2944
2945         * WebView/WebHTMLView.mm:
2946         (createSelectorExceptionMap): Added.
2947         (commandNameForSelector): Use createSelectorExceptionMap.
2948
2949 2009-08-16  David Kilzer  <ddkilzer@apple.com>
2950
2951         <http://webkit.org/b/28366> WebHTMLViewInternal.h: add @class CALayer declaration
2952
2953         Reviewed by Simon Fraser.
2954
2955         Without WebKitPrefix.h, the missing @class CALayer declaration
2956         causes a compile-time error.
2957
2958         * WebView/WebHTMLViewInternal.h: Added @class CALayer
2959         declaration with USE(ACCELERATED_COMPOSITING).
2960
2961 2009-08-16  David Kilzer  <ddkilzer@apple.com>
2962
2963         <http://webkit.org/b/28355> Replace MAX()/MIN() macros with type-safe std::max()/min() templates
2964
2965         Reviewed by Dan Bernstein.
2966
2967         * Plugins/WebBaseNetscapePluginStream.mm: Added using std::min
2968         statement.
2969         (WebNetscapePluginStream::deliverData): Changed MIN() to min().
2970         Changed C-style cast to a static_cast.
2971         * Plugins/WebNetscapePluginView.mm: Added using std::min
2972         statement.
2973         (-[WebNetscapePluginView _postURL:target:len:buf:file:notifyData:sendNotification:allowHeaders:]):
2974         Changed MIN() to min().  Changed C-style cast to a static_cast.
2975         * WebView/WebHTMLView.mm: Added using std::max statement.
2976         (-[WebHTMLView _dragImageForURL:withLabel:]): Changed MAX() to
2977         max().
2978         (-[WebHTMLView _scaleFactorForPrintOperation:]): Ditto.
2979         * WebView/WebTextCompletionController.mm: Added using std::max
2980         and using std::min statements.
2981         (-[WebTextCompletionController _placePopupWindow:]): Changed
2982         type of maxWidth variable from float to CGFloat to prevent a
2983         type mismatch on x86_64.  Changed MAX() to max() and MIN() to
2984         min().  Added static_cast for a constant value since CGFloat is
2985         defined as a float on i386 and as a double on x86_64.
2986
2987 2009-08-15  Adam Bergkvist  <adam.bergkvist@ericsson.com>
2988
2989         Reviewed by Sam Weinig.
2990
2991         Added ENABLE_EVENTSOURCE flag.
2992         https://bugs.webkit.org/show_bug.cgi?id=14997
2993
2994         * Configurations/FeatureDefines.xcconfig:
2995
2996 2009-08-14  Mark Rowe  <mrowe@apple.com>
2997
2998         Build fix.
2999
3000         * Plugins/Hosted/NetscapePluginInstanceProxy.mm:
3001         (WebKit::NetscapePluginInstanceProxy::enumerate):  Add the necessary .get() calls.
3002
3003 2009-08-14  Brady Eidson  <beidson@apple.com>
3004
3005         Reviewed by Anders Carlsson.
3006
3007         <rdar://problem/7091546> - Assertion failure in plugins/return-error-from-new-stream-doesnt-invoke-destroy-stream.html 
3008         on 64-bit SnowLeopard
3009
3010         * Plugins/Hosted/HostedNetscapePluginStream.mm:
3011         (WebKit::HostedNetscapePluginStream::cancelLoad): Since this might be called while the FrameLoader is switching DocumentLoaders
3012           during the brief moment where there is no activeDocumentLoader(), accept and handle a validly null DocumentLoader.
3013
3014 2009-08-14  Mark Rowe  <mrowe@apple.com>
3015
3016         Reviewed by Brady Eidson.
3017
3018         Fix leaks of NSNumber and NSMutableArray objects seen during layout tests.
3019
3020         * Plugins/Hosted/NetscapePluginInstanceProxy.mm:
3021         (WebKit::NetscapePluginInstanceProxy::enumerate): Don't leak an NSMutableArray that we allocate.
3022
3023 2009-08-14  Mark Rowe  <mrowe@apple.com>
3024
3025         Reviewed by Anders Carlsson.
3026
3027         Fix leaks of HostedNetscapePluginStream and NetscapePlugInStreamLoader objects seen during layout tests.
3028
3029         * Plugins/Hosted/HostedNetscapePluginStream.mm:
3030         (WebKit::HostedNetscapePluginStream::didFail): Disconnect the stream from the plug-in instance proxy
3031         when the load fails.
3032
3033 2009-08-13  Darin Adler  <darin@apple.com>
3034
3035         * Plugins/Hosted/NetscapePluginInstanceProxy.mm: Updated includes.
3036         * WebView/WebScriptDebugger.mm: Ditto.
3037
3038 2009-08-12  Mark Rowe  <mrowe@apple.com>
3039
3040         Reviewed by Kevin Decker.
3041
3042         <rdar://problem/6017913> Replace use of HISearchWindowShow in -[WebView _searchWithSpotlightFromMenu].
3043
3044         * WebView/WebView.mm:
3045         (-[WebView _searchWithSpotlightFromMenu:]): Use -[NSWorkspace showSearchResultsForQueryString:] post-Leopard.
3046
3047 2009-08-12  Greg Bolsinga  <bolsinga@apple.com>
3048
3049         Reviewed by Eric Seidel.
3050
3051         Add delegate methods about focus and blur and state change
3052         https://bugs.webkit.org/show_bug.cgi?id=27153
3053         
3054         Have ObjC delegate methods match C++ method names in the ChromeClient.
3055
3056         * WebCoreSupport/WebChromeClient.mm:
3057         (WebChromeClient::formDidFocus):
3058         (WebChromeClient::formDidBlur):
3059         * WebView/WebUIDelegatePrivate.h:
3060
3061 2009-08-11  John Gregg  <johnnyg@google.com>
3062
3063         Reviewed by Maciej Stachowiak.
3064
3065         Desktop Notifications API
3066         https://bugs.webkit.org/show_bug.cgi?id=25643
3067
3068         Adds ENABLE_NOTIFICATION flag.
3069
3070         * Configurations/FeatureDefines.xcconfig:
3071
3072 2009-08-11  Anders Carlsson  <andersca@apple.com>
3073
3074         Reviewed by Sam Weinig.
3075
3076         Remove dead declarations.
3077         
3078         * WebView/WebViewInternal.h:
3079
3080 2009-08-11  Dmitry Titov  <dimich@chromium.org>
3081
3082         Reviewed by Adam Roben.
3083
3084         Originally implemented by Glenn Wilson <gwilson@chromium.org>.
3085
3086         Added new methods for overriding default WebPreference values
3087         and for resetting preferences to their defaults.
3088         See https://bugs.webkit.org/show_bug.cgi?id=20534
3089
3090         * WebView/WebPreferences.mm:
3091         (-[WebPreferences _setPreferenceForTestWithValue:withKey:]): added.
3092         * WebView/WebPreferencesPrivate.h: same.
3093
3094 2009-08-09  Nikolas Zimmermann  <nikolas.zimmermann@torchmobile.com>
3095
3096         Reviewed by George Staikos.
3097
3098         [WML] Deck access control is completly broken
3099         https://bugs.webkit.org/show_bug.cgi?id=27721
3100
3101         Synchronize WebFrameLoadType with FrameLoadType enum. Append 'WebFrameLoadTypeBackWMLDeckNotAccessible'.
3102
3103         * WebView/WebFramePrivate.h:
3104
3105 2009-08-07  Simon Fraser  <simon.fraser@apple.com>
3106
3107         Fix the build on 10.6.
3108
3109         * WebView/WebHTMLView.mm:
3110         (-[WebHTMLView attachRootLayer:]):
3111
3112 2009-08-07  Simon Fraser  <simon.fraser@apple.com>
3113
3114         Fix a stylistic nit related to the location of the *, which, for some
3115         ridiculous reason, WebKit style dictates to be different between Objective-C and C++.
3116         
3117         * WebView/WebDynamicScrollBarsView.mm:
3118         (-[WebDynamicScrollBarsView reflectScrolledClipView:]):
3119
3120 2009-08-07  Simon Fraser  <simon.fraser@apple.com>
3121
3122         Reviewed by Dan Bernstein.
3123
3124         Work around an issue on Leopard where composited layers are misplaced and squished when the page
3125         gets over 4096px tall.
3126         https://bugs.webkit.org/show_bug.cgi?id=27272
3127         <rdar://problem/7067892> [Leopard] Composisted layers are misplaced and squished on on long pages
3128         <rdar://problem/7068252> [Leopard] When switching to a tab with HW layers, they fade in
3129
3130         * WebView/WebDynamicScrollBarsView.mm:
3131         (-[WebDynamicScrollBarsView reflectScrolledClipView:]):
3132         Call -_updateLayerHostingViewPosition after scrolling.
3133         
3134         * WebView/WebHTMLView.mm:
3135         (-[WebHTMLView _frameOrBoundsChanged]):
3136         Call -_updateLayerHostingViewPosition after the view changes size.
3137
3138         (-[WebHTMLView attachRootLayer:]):
3139         Turn off default animations, to avoid animations of sublayer transform, and fading-in
3140         when tab switching.
3141         
3142         * WebView/WebHTMLViewInternal.h:
3143         (-[WebHTMLView _updateLayerHostingViewPosition]):
3144         New method that constrains the height of the layer-hosting view to a max height
3145         of 4096px, and compensates for the height restriction by placing the layer-hosting
3146         view at the top of the visible part of the WebHTMLView, and adjusting the position
3147         of the hosted layers via sublayer transform.
3148
3149 2009-08-07  Anders Carlsson  <andersca@apple.com>
3150
3151         Fix Tiger build.
3152         
3153         * WebView/WebRenderNode.mm:
3154         (-[WebRenderNode _initWithCoreFrame:]):
3155
3156 2009-08-07  Anders Carlsson  <andersca@apple.com>
3157
3158         Reviewed by Timothy Hatcher and Sam Weinig.
3159
3160         Change WebRenderNode to take a WebFrame instead of a WebFrameView.
3161         
3162         * WebView/WebRenderNode.h:
3163         * WebView/WebRenderNode.mm:
3164         (-[WebRenderNode _initWithName:position:rect:coreFrame:children:]):
3165         (copyRenderNode):
3166         (-[WebRenderNode _initWithCoreFrame:]):
3167         (-[WebRenderNode initWithWebFrame:]):
3168
3169 2009-08-06  Anders Carlsson  <andersca@apple.com>
3170
3171         Reviewed by Darin Adler and Dan Bernstein.
3172
3173         * WebCoreSupport/WebFrameLoaderClient.mm:
3174         (WebFrameLoaderClient::hasHTMLView):
3175         Always return true when we're in viewless mode.
3176
3177 2009-08-06  Anders Carlsson  <andersca@apple.com>
3178
3179         Remove WebGraphicsExtras.h include.
3180         
3181         * Plugins/WebNetscapePluginView.mm:
3182
3183 2009-08-06  Anders Carlsson  <andersca@apple.com>
3184
3185         Reviewed by Sam Weinig.
3186
3187         Remove WebGraphicsExtras, it is no longer used.
3188
3189         * Misc/WebGraphicsExtras.c: Removed.
3190         * Misc/WebGraphicsExtras.h: Removed.
3191
3192 2009-08-06  Chris Marrin  <cmarrin@apple.com>
3193
3194         Reviewed by David Hyatt.
3195
3196         Added ENABLE_3D_CANVAS flag to build, default to off
3197
3198         * Configurations/FeatureDefines.xcconfig:
3199
3200 2009-08-04  Michael Nordman  <michaeln@google.com>
3201
3202         Reviewed by Alexey Proskuryakov.
3203
3204         https://bugs.webkit.org/show_bug.cgi?id=27821
3205
3206         Mods to keep up with ApplicationCacheHost refactoring.
3207
3208         * WebView/WebDataSource.mm:
3209         (-[WebDataSource _transferApplicationCache:]):
3210
3211 2009-07-30  Darin Adler  <darin@apple.com>
3212
3213         Reviewed by David Levin.
3214
3215         Use checked casts for render tree
3216         https://bugs.webkit.org/show_bug.cgi?id=23522
3217
3218         * Misc/WebNSAttributedStringExtras.mm:
3219         (fileWrapperForElement):
3220         * Misc/WebNSPasteboardExtras.mm:
3221         (imageFromElement):
3222         (-[NSPasteboard _web_declareAndWriteDragImageForElement:URL:title:archive:source:]):
3223         * WebView/WebFrame.mm:
3224         (-[WebFrame _computePageRectsWithPrintWidthScaleFactor:printHeight:]):
3225         (-[WebFrame _accessibilityTree]):
3226         * WebView/WebRenderNode.mm:
3227         (copyRenderNode):
3228         Use checked casts.
3229
3230 2009-07-31  Simon Fraser  <simon.fraser@apple.com>
3231
3232         Reviewed by Anders Carlsson.
3233         
3234         Accelerated animations stutter on pages with lots of animations and 3d transforms
3235         https://bugs.webkit.org/show_bug.cgi?id=27884
3236         
3237         This patch changes the strategy for synchronizing painting view the view,
3238         and compositing layer updates. Previously the strategy was to disable screen
3239         updates between the time we updated the layer tree, and painted the view. That
3240         left screen updates disabled for too long (hundreds of milliseconds) in some
3241         cases, causing animation stutter.
3242         
3243         The new strategy is to batch up changes to the CA layer tree, and commit them
3244         all at once just before painting happens (referred to as a "sync" in the code).
3245         GraphicsLayerCA now keeps a bitmask of changed properties, and then migrates
3246         the values stored in GraphicsLayer into the CA layer tree at commit time.
3247         
3248         Compositing layers are then synced in FrameView::paintContents(). However, not
3249         all style/layout changes will result in painting; to deal with style changes that
3250         touch only compositing properties, we set up a runloop observer that takes care
3251         of comitting layer changes when no painting happens.
3252
3253         * WebCoreSupport/WebChromeClient.h:
3254         * WebCoreSupport/WebChromeClient.mm:
3255         (WebChromeClient::scheduleCompositingLayerSync):
3256         scheduleViewUpdate() renamed to syncCompositingStateRecursive()
3257         
3258         * WebView/WebView.mm:
3259         (-[WebView _close]):
3260         (-[WebView _clearLayerSyncLoopObserver]):
3261         "viewUpdateRunLoopObserver" is now "layerSyncLoopObserver".
3262
3263         (-[WebView _syncCompositingChanges]):
3264         Helper method that calls syncCompositingStateRecursive() on the FrameView.
3265         
3266         (layerSyncRunLoopObserverCallBack):
3267         (-[WebView _scheduleCompositingLayerSync]):
3268         This is all about layer sycning now. Also, the run loop observer is repeating,
3269         because it has to keep firing until syncCompositingStateRecursive() says that it
3270         has completed.
3271         
3272         * WebView/WebViewData.h:
3273         "viewUpdateRunLoopObserver" is now "layerSyncLoopObserver".
3274
3275         * WebView/WebViewInternal.h:
3276         _scheduleViewUpdate is now _scheduleCompositingLayerSync
3277
3278 2009-07-30  Michael Nordman  <michaeln@google.com>
3279
3280         Reviewed by Darin Fisher.
3281
3282         https://bugs.webkit.org/show_bug.cgi?id=27821
3283
3284         Mods to keep up with ApplicationCacheHost refactoring.
3285
3286         * WebView/WebDataSource.mm:
3287         (-[WebDataSource _transferApplicationCache:]):
3288
3289 2009-07-29  David Kilzer  <ddkilzer@apple.com>
3290
3291         <http://webkit.org/b/27788> Don't export WebPluginController.h as a private header
3292
3293         Reviewed by Mark Rowe.
3294
3295         * Plugins/WebPluginController.h: Changed #import of
3296         WebPluginContainerCheck.h to use a framework-style include in
3297         case other platforms wish to export WebPluginController.h as a
3298         private header.
3299
3300 2009-07-29  Kevin McCullough  <kmccullough@apple.com>
3301
3302         Reviewed by Darin Adler.
3303
3304         Added foundation work to allow a testing infrastructure for the Web
3305         Inspector.
3306
3307         * WebCoreSupport/WebInspectorClient.h:
3308         * WebCoreSupport/WebInspectorClient.mm:
3309         (WebInspectorClient::inspectorWindowObjectCleared): Send the delegate
3310         callback.
3311         * WebView/WebDelegateImplementationCaching.h:
3312         * WebView/WebView.mm:
3313         (-[WebView _cacheFrameLoadDelegateImplementations]):
3314         * WebView/WebViewPrivate.h: The delegate SPI.
3315
3316 2009-07-27  Mark Rowe  <mrowe@apple.com>
3317
3318         Reviewed by Darin Adler.
3319
3320         <rdar://problem/7091036> REGRESSION: Microsoft Messenger crashes during file send/receive due to use of WebKit on non-main thread
3321
3322         In some situations Microsoft Messenger can attempt to manipulate the DOM from a secondary thread while
3323         updating its file transfer progress bar.  This results in corruption of WebCore data structures that is
3324         quickly followed by a crash.  We can work around this by having -[WebFrame DOMDocument] return nil when
3325         called from a secondary thread by Microsoft Messenger, which has the effect of turning its attempts at
3326         DOM manipulation in to no-ops.
3327
3328         * WebView/WebFrame.mm:
3329         (needsMicrosoftMessengerDOMDocumentWorkaround):
3330         (-[WebFrame DOMDocument]):
3331
3332 2009-07-27  Alexey Proskuryakov  <ap@webkit.org>
3333
3334         Reviewed by Darin Adler.
3335
3336         https://bugs.webkit.org/show_bug.cgi?id=27735
3337         Give a helpful name to JSLock constructor argument
3338
3339         * Misc/WebCoreStatistics.mm:
3340         (+[WebCoreStatistics javaScriptObjectsCount]):
3341         (+[WebCoreStatistics javaScriptGlobalObjectsCount]):
3342         (+[WebCoreStatistics javaScriptProtectedObjectsCount]):
3343         (+[WebCoreStatistics javaScriptProtectedGlobalObjectsCount]):
3344         (+[WebCoreStatistics javaScriptProtectedObjectTypeCounts]):
3345         (+[WebCoreStatistics shouldPrintExceptions]):
3346         (+[WebCoreStatistics setShouldPrintExceptions:]):
3347         (+[WebCoreStatistics memoryStatistics]):
3348         (+[WebCoreStatistics javaScriptReferencedObjectsCount]):
3349         * Plugins/Hosted/NetscapePluginInstanceProxy.mm:
3350         (WebKit::NetscapePluginInstanceProxy::evaluate):
3351         (WebKit::NetscapePluginInstanceProxy::invoke):
3352         (WebKit::NetscapePluginInstanceProxy::invokeDefault):
3353         (WebKit::NetscapePluginInstanceProxy::construct):
3354         (WebKit::NetscapePluginInstanceProxy::getProperty):
3355         (WebKit::NetscapePluginInstanceProxy::setProperty):
3356         (WebKit::NetscapePluginInstanceProxy::removeProperty):
3357         (WebKit::NetscapePluginInstanceProxy::hasMethod):
3358         (WebKit::NetscapePluginInstanceProxy::enumerate):
3359         (WebKit::NetscapePluginInstanceProxy::addValueToArray):
3360         * Plugins/WebBaseNetscapePluginStream.mm:
3361         (WebNetscapePluginStream::wantsAllStreams):
3362         * Plugins/WebNetscapePluginView.mm:
3363         (-[WebNetscapePluginView sendEvent:isDrawRect:]):
3364         (-[WebNetscapePluginView setWindowIfNecessary]):
3365         (-[WebNetscapePluginView createPluginScriptableObject]):
3366         (-[WebNetscapePluginView evaluateJavaScriptPluginRequest:]):
3367         (-[WebNetscapePluginView webFrame:didFinishLoadWithReason:]):
3368         (-[WebNetscapePluginView loadPluginRequest:]):
3369         (-[WebNetscapePluginView _printedPluginBitmap]):
3370         * Plugins/WebPluginController.mm:
3371         (+[WebPluginController plugInViewWithArguments:fromPluginPackage:]):
3372         (-[WebPluginController startAllPlugins]):
3373         (-[WebPluginController stopAllPlugins]):
3374         (-[WebPluginController addPlugin:]):
3375         (-[WebPluginController destroyPlugin:]):
3376         (-[WebPluginController destroyAllPlugins]):
3377         * WebView/WebFrame.mm:
3378         (-[WebFrame _stringByEvaluatingJavaScriptFromString:forceUserGesture:]):
3379         * WebView/WebScriptDebugDelegate.mm:
3380         (-[WebScriptCallFrame scopeChain]):
3381         (-[WebScriptCallFrame evaluateWebScript:]):
3382         * WebView/WebView.mm:
3383         (-[WebView aeDescByEvaluatingJavaScriptFromString:]):
3384
3385 2009-07-24  Darin Adler  <darin@apple.com>
3386
3387         Reviewed by Mark Rowe.
3388
3389         REGRESSION (r46298): Exception after clicking on Bookmarks button in the Bookmarks Bar
3390         https://bugs.webkit.org/show_bug.cgi?id=27667
3391
3392         * WebCoreSupport/WebFrameLoaderClient.mm:
3393         (WebFrameLoaderClient::transitionToCommittedForNewPage): Moved the code to set the
3394         title here. This is late enough that both the view and representation exist.
3395
3396         * WebView/WebDataSource.mm:
3397         (-[WebDataSource _makeRepresentation]): Removed the code to set the title from here.
3398         It's a bit too early.
3399
3400 2009-07-24  Andrei Popescu  <andreip@google.com>
3401
3402         Reviewed by Anders Carlsson.
3403
3404         ApplicationCache should have size limit
3405         https://bugs.webkit.org/show_bug.cgi?id=22700
3406
3407         Adds the WebApplicationCache class that is
3408         used by the DumpRenderTree test application to
3409         configure the Application Cache maximum size.
3410
3411         * WebCoreSupport/WebApplicationCache.h: Added.
3412         * WebCoreSupport/WebApplicationCache.mm: Added.
3413         * WebCoreSupport/WebChromeClient.h:
3414         * WebCoreSupport/WebChromeClient.mm:
3415         (WebChromeClient::reachedMaxAppCacheSize):
3416         Adds empty implementation of the reachedMaxAppCacheSize callback.
3417         * WebKit.exp:
3418
3419 2009-07-23  Darin Adler  <darin@apple.com>
3420
3421         * WebView/WebDataSource.mm:
3422         (-[WebDataSource _makeRepresentation]): Landed a comment I forgot last time.
3423
3424 2009-07-23  Darin Adler  <darin@apple.com>
3425
3426         Reviewed by Brady Eidson.
3427
3428         URL appears in back/forward button menu instead of title for items with custom representation
3429         https://bugs.webkit.org/show_bug.cgi?id=27586
3430         rdar://problem/5060337
3431
3432         The problem is that DocumentLoader expects to store a title, but for custom representations
3433         it is never passed to the document loader.
3434
3435         * WebView/WebDataSource.mm:
3436         (-[WebDataSource _makeRepresentation]): Added a call to DocumentLoader::setTitle.
3437         Works as long as the title does not change during the document's lifetime, which
3438         is good enough for the simple cases in Safari.
3439
3440 2009-07-20  Darin Adler  <darin@apple.com>
3441
3442         Reviewed by Dan Bernstein.
3443
3444         REGRESSION (r39185): Safari adds ".jpeg" extension to images that already have ".JPG" extension
3445         https://bugs.webkit.org/show_bug.cgi?id=27472
3446
3447         * WebView/WebHTMLView.mm:
3448         (matchesExtensionOrEquivalent): Changed category method into a C function.
3449         Made it require the leading dot when checking for the extension and do it
3450         in a non-case-sensitive way.
3451         (-[WebHTMLView namesOfPromisedFilesDroppedAtDestination:]): Changed to call
3452         the function.
3453
3454 2009-07-21  Roland Steiner  <rolandsteiner@google.com>
3455
3456         Reviewed by David Levin.
3457
3458         Add ENABLE_RUBY to list of build options
3459         https://bugs.webkit.org/show_bug.cgi?id=27324
3460
3461         * Configurations/FeatureDefines.xcconfig: Added flag ENABLE_RUBY.
3462
3463 2009-07-17  Brian Weinstein  <bweinstein@apple.com>
3464
3465         Reviewed by Adam Roben.
3466
3467         Fix of <rdar://problem/5712795> Win: Cannot change the height of the docked Web Inspector (14272)
3468         https://bugs.webkit.org/show_bug.cgi?id=14272
3469         
3470         Removed size calculation code from [WebInspectorWindowController setInitialAttachedHeight] into
3471         InspectorController.cpp to make it cross platform, and use InspectorController to store the 
3472         user's preferred size for an attached window, instead of NSUserDefaults.
3473
3474         * WebCoreSupport/WebInspectorClient.mm:
3475         (-[WebInspectorWindowController showWindow:]):
3476         (-[WebInspectorWindowController setAttachedWindowHeight:]):
3477
3478 2009-07-16  Fumitoshi Ukai  <ukai@chromium.org>
3479
3480         Reviewed by David Levin.
3481
3482         Add --web-sockets flag and ENABLE_WEB_SOCKETS define.
3483         https://bugs.webkit.org/show_bug.cgi?id=27206
3484         
3485         Add ENABLE_WEB_SOCKETS
3486
3487         * Configurations/FeatureDefines.xcconfig: add ENABLE_WEB_SOCKETS
3488
3489 2009-07-16  Xiaomei Ji  <xji@chromium.org>
3490
3491         Reviewed by Darin Adler.
3492
3493         Fix tooltip does not get its directionality from its element's directionality.
3494         https://bugs.webkit.org/show_bug.cgi?id=24187
3495
3496         Per mitz's suggestion in comment #6, while getting the plain-text 
3497         title, we also get the directionality of the title. How to handle 
3498         the directionality is up to clients. Clients could ignore it, 
3499         or use attribute or unicode control characters to display the title
3500         as what they want.
3501
3502         * Misc/WebElementDictionary.mm:
3503         (-[WebElementDictionary _spellingToolTip]): Change spellingToolTip caller due to signature change.
3504         (-[WebElementDictionary _title]): Change title caller due to signature change.
3505         * WebCoreSupport/WebChromeClient.h: Add directionality as 2nd parameter to setToolTip().
3506         * WebCoreSupport/WebChromeClient.mm:
3507         (WebChromeClient::setToolTip): Add directionality as 2nd parameter to setToopTip() (without handling it yet).
3508
3509 2009-07-15  Darin Adler  <darin@apple.com>
3510
3511         Reviewed by Sam Weinig.
3512
3513         Renamed parseURL to deprecatedParseURL.
3514
3515         * DOM/WebDOMOperations.mm:
3516         (-[DOMDocument URLWithAttributeString:]): Renamed.
3517         * WebCoreSupport/WebFrameLoaderClient.mm:
3518         (WebFrameLoaderClient::createPlugin): Renamed.
3519
3520 2009-07-15  Brady Eidson  <beidson@apple.com>
3521
3522         Reviewed by Dan Bernstein.
3523
3524         https://bugs.webkit.org/show_bug.cgi?id=27304
3525         WebKit should provide usage and eligibility information about the page cache.
3526
3527         * Misc/WebCoreStatistics.h:
3528         * Misc/WebCoreStatistics.mm:
3529         (+[WebCoreStatistics numberCachedPages]):
3530         (+[WebCoreStatistics numberCachedFrames]):
3531         (+[WebCoreStatistics numberAutoreleasedPages]):
3532         * WebKit.exp:
3533
3534         * WebView/WebFrame.mm:
3535         (-[WebFrame _cacheabilityDictionary]): Returns a dictionary with all the data about
3536           why the frame is not cacheable. If the frame *is* cacheable, the dictionary is
3537           empty.
3538         * WebView/WebFramePrivate.h:
3539
3540 2009-07-13  Simon Fraser  <simon.fraser@apple.com>
3541
3542         Reviewed by Dan Bernstein, Adam Roben.
3543
3544         "Unrecognized selector" console log when the Safari 4 Welcome page navigates to Top Sites.
3545         <rdar://problem/6994893
3546
3547         attachRootGraphicsLayer() should not assume that the frameView's documentView
3548         is a WebHTMLView.
3549         
3550         * WebCoreSupport/WebChromeClient.mm:
3551         (WebChromeClient::attachRootGraphicsLayer):
3552
3553 2009-07-13  Anders Carlsson  <andersca@apple.com>
3554
3555         Reviewed by Darin Adler and Kevin Decker.
3556
3557         <rdar://problem/7053687> Core Animation plug-ins continue to grow larger and larger when opening new tabs (32 bit-only)
3558
3559         * Plugins/Hosted/WebHostedNetscapePluginView.mm:
3560         (-[WebHostedNetscapePluginView setLayer:]):
3561         Add a FIXME.
3562         
3563         * Plugins/WebNetscapePluginView.mm:
3564         (-[WebNetscapePluginView setLayer:]):
3565         Make sure to set the size of the layer before changing the autoresizing mask so it won't grow everytime it's inserted
3566         into the layer tree.
3567
3568 2009-07-13  Greg Bolsinga  <bolsinga@apple.com>
3569
3570         Reviewed by Simon Fraser.
3571
3572         Correct these delegate methods' declarations by adding parameter names.
3573
3574         * WebView/WebUIDelegatePrivate.h:
3575
3576 2009-07-13  Drew Wilson  <atwilson@google.com>
3577
3578         Reviewed by David Levin.
3579
3580         Add ENABLE(SHARED_WORKERS) flag and define SharedWorker APIs
3581         https://bugs.webkit.org/show_bug.cgi?id=26932
3582
3583         Added ENABLE(SHARED_WORKERS) flag (disabled by default).
3584
3585         * Configurations/FeatureDefines.xcconfig:
3586
3587 2009-07-12  Keishi Hattori  <casey.hattori@gmail.com>
3588
3589         Reviewed by Timothy Hatcher.
3590
3591         Refactor ConsoleMessage to add MessageType attribute.
3592         https://bugs.webkit.org/show_bug.cgi?id=20625
3593
3594         * WebCoreSupport/WebChromeClient.h:
3595         * WebCoreSupport/WebChromeClient.mm:
3596         (WebChromeClient::addMessageToConsole):
3597
3598 2009-07-11  Simon Fraser  <simon.fraser@apple.com>
3599
3600         Enable support for accelerated compositing and 3d transforms on Leopard.
3601         <https://bugs.webkit.org/show_bug.cgi?id=20166>
3602         <rdar://problem/6120614>
3603
3604         Reviewed by Oliver Hunt.
3605
3606         * Configurations/FeatureDefines.xcconfig:
3607
3608 2009-07-10  David Kilzer  <ddkilzer@apple.com>
3609
3610         Bug 27007: Build fixes when ICONDATABASE is disabled
3611
3612         <https://bugs.webkit.org/show_bug.cgi?id=27007>
3613
3614         Reviewed by Sam Weinig.
3615
3616         * Misc/WebIconDatabase.mm:
3617         (defaultClient): Return 0 if ICONDATABASE is disabled.
3618         * WebCoreSupport/WebFrameLoaderClient.mm:
3619         (WebFrameLoaderClient::dispatchDidReceiveIcon): Commented out
3620         the body of the method if ICONDATABASE is disabled.
3621         (WebFrameLoaderClient::registerForIconNotification): Ditto.
3622         * WebCoreSupport/WebIconDatabaseClient.mm: Added #if
3623         ENABLE(ICONDATABASE)/#endif guard to source.
3624         * WebView/WebView.mm:
3625         (-[WebView setFrameLoadDelegate:]): Wrapped code that starts the
3626         icon database machinery in #if ENABLE(ICONDATABASE)/#endif.
3627         (-[WebView _registerForIconNotification:]): Wrapped method in
3628         #if ENABLE(ICONDATABASE)/#endif guard.
3629         (-[WebView _dispatchDidReceiveIconFromWebFrame:]): Ditto.
3630         * WebView/WebViewInternal.h: Wrapped methods in #if
3631         ENABLE(ICONDATABASE)/#endif guard.
3632         (-[WebView _registerForIconNotification:]):
3633         (-[WebView _dispatchDidReceiveIconFromWebFrame:]):
3634
3635 2009-07-10  Simon Fraser  <simon.fraser@apple.com>
3636
3637         Reviewed by John Sullivan.
3638
3639         Flashing as hardware layers are created and destroyed in some content
3640         <rdar://problem/7032246>
3641         
3642         There's a window of time between the end of one runloop cycle, after CA layers changes
3643         have been committed, and the window display at the start of the next cycle when 
3644         CA may push updates to the screen before AppKit has drawn the view contents. If
3645         we know that we need to do drawing synchronization (which we do when content moves
3646         between a layer and the view), then we need to call -disableScreenUpdatesUntilFlush
3647         from the existing runloop observer that is set up when layers need repainting to
3648         ensure that layer updates don't reach the screen before view-based painting does.
3649
3650         * WebView/WebHTMLView.mm:
3651         (-[WebHTMLView drawRect:]):
3652         Tweak the comments
3653         
3654         * WebView/WebView.mm:
3655         (viewUpdateRunLoopObserverCallBack):
3656         (-[WebView _scheduleViewUpdate]):
3657         Add a big comment to explain the timing of things.
3658         Call -disableScreenUpdatesUntilFlush when the view _needsOneShotDrawingSynchronization.
3659
3660  2009-07-09  Brian Weinstein  <bweinstein@apple.com>
3661  
3662          Reviewed by Tim Hatcher.
3663 2009-07-10  Adam Barth  <abarth@webkit.org>
3664
3665         Reviewed by Sam Weinig with the power of Grayskull.
3666
3667         Enable XSSAuditor by default.
3668
3669         * WebView/WebPreferences.mm:
3670         (+[WebPreferences initialize]):
3671
3672 2009-07-10  Greg Bolsinga  <bolsinga@apple.com>
3673
3674         Reviewed by Antti Koivisto.
3675
3676         Add delegate methods about focus and blur and state change
3677         https://bugs.webkit.org/show_bug.cgi?id=27153
3678
3679         Call the appropriate private delegate methods from the ChromeClient.
3680         
3681         * WebCoreSupport/WebChromeClient.h:
3682         * WebCoreSupport/WebChromeClient.mm:
3683         (WebChromeClient::formStateDidChange):
3684         (WebChromeClient::formDidFocus):
3685         (WebChromeClient::formDidBlur):
3686         * WebView/WebUIDelegatePrivate.h:
3687
3688 2009-07-09  Brian Weinstein  <bweinstein@apple.com>
3689
3690         Reviewed by Tim Hatcher.
3691
3692         https://bugs.webkit.org/show_bug.cgi?id=27141
3693         
3694         Updated WebInspectorClient to use Web Inspector Preferences to remember whether or not it should be 
3695         docked or a free window instead of NSUserDefaults it used to have.
3696
3697         * WebCoreSupport/WebInspectorClient.mm:
3698         (-[WebInspectorWindowController init]):
3699         (-[WebInspectorWindowController showWindow:]):
3700         (-[WebInspectorWindowController attach]):
3701         (-[WebInspectorWindowController detach]):
3702
3703 2009-07-09  Drew Wilson  <atwilson@google.com>
3704
3705         Reviewed by Alexey Proskuryakov.
3706
3707         https://bugs.webkit.org/show_bug.cgi?id=26903
3708
3709         Turned on CHANNEL_MESSAGING by default because the MessageChannel API
3710         can now be implemented for Web Workers and is reasonably stable.
3711
3712         * Configurations/FeatureDefines.xcconfig:
3713
3714 2009-07-09  Darin Adler  <darin@apple.com>
3715
3716         Reviewed by Adele Peterson and Dan Bernstein.
3717
3718         <rdar://problem/7024972> Cannot set font to Helvetica Neue Light in Mail compose window
3719
3720         No regression test because this only affects the font panel.
3721
3722         * WebView/WebHTMLView.mm:
3723         (-[WebHTMLView _addToStyle:fontA:fontB:]): Fix code that detects whether the font would
3724         survive a round trip by using the weight corresponding to "bold" or "normal" rather than
3725         the actual weight number.
3726
3727 2009-07-09  Beth Dakin and Jon Honeycutt <bdakin@apple.com>
3728
3729         Reviewed by Dave Hyatt.
3730
3731         Make Widget RefCounted to fix:
3732
3733         <rdar://problem/7038831> REGRESSION (TOT): In Mail, a crash occurs 
3734         at WebCore::Widget::afterMouseDown() after clicking To Do's close 
3735         box
3736         <rdar://problem/6978804> WER #16: Repro Access Violation in 
3737         WebCore::PluginView::bindingInstance (1310178023)
3738         -and-
3739         <rdar://problem/6991251> WER #13: Crash in WebKit!
3740         WebCore::PluginView::performRequest+203 (1311461169) 
3741
3742         * WebCoreSupport/WebFrameLoaderClient.h:
3743         * WebCoreSupport/WebFrameLoaderClient.mm:
3744         (WebFrameLoaderClient::createPlugin):
3745
3746 2009-07-09  Sam Weinig  <sam@webkit.org>
3747
3748         Reviewed by Steve Falkenburg.
3749
3750         Roll out r43848. The quirk is no longer necessary.
3751
3752         * WebView/WebView.mm:
3753         (-[WebView WebCore::_userAgentForURL:WebCore::]):
3754
3755 2009-07-09  Alexey Proskuryakov  <ap@webkit.org>
3756
3757         Reviewed by Geoff Garen.
3758
3759         <rdar://problem/6921671> Visit count shouldn't be incremented by redirects.
3760
3761         * WebCoreSupport/WebFrameLoaderClient.mm: (WebFrameLoaderClient::updateGlobalHistory):
3762         Do not increase visit count if there is a redirect source. As a result, only pages that were
3763         explicitly visited by the user (by typing a URL, choosing one from bookmarks, or clicking
3764         a link) will be counted.
3765
3766         * History/WebHistory.mm:
3767         (-[WebHistoryPrivate visitedURL:withTitle:increaseVisitCount:]):
3768         (-[WebHistory _visitedURL:withTitle:method:wasFailure:increaseVisitCount:]):
3769         * History/WebHistoryInternal.h:
3770         * History/WebHistoryItem.mm:
3771         (-[WebHistoryItem _visitedWithTitle:increaseVisitCount:]):
3772         * History/WebHistoryItemInternal.h:
3773         Marshal this new argument all the way down to WebCore.
3774
3775 2009-07-08  Greg Bolsinga  <bolsinga@apple.com>
3776
3777         Reviewed by Darin Adler.
3778
3779         Add -[WebView _isProcessingUserGesture]
3780         https://bugs.webkit.org/show_bug.cgi?id=27084
3781
3782         Add -_isProcessingUserGesture that calls into WebCore::FrameLoader::isProcessingUserGesture()
3783         so that WebView code can determine if a user gesture is in progress.
3784
3785         * WebView/WebView.mm:
3786         (-[WebView _isProcessingUserGesture]):
3787         * WebView/WebViewPrivate.h:
3788
3789 2009-07-07  Anders Carlsson  <andersca@apple.com>
3790
3791         Reviewed by Sam Weinig.
3792
3793         - Fix <rdar://problem/6544693>.
3794         
3795         For Flash, don't cache which methods or fields in an object are missing, since they can
3796         be added at any time.
3797         
3798         * Plugins/Hosted/NetscapePluginHostManager.mm:
3799         (WebKit::NetscapePluginHostManager::hostForPackage):
3800         * Plugins/Hosted/NetscapePluginHostProxy.h:
3801         (WebKit::NetscapePluginHostProxy::shouldCacheMissingPropertiesAndMethods):
3802         * Plugins/Hosted/NetscapePluginHostProxy.mm:
3803         (WebKit::NetscapePluginHostProxy::NetscapePluginHostProxy):
3804         * Plugins/Hosted/ProxyInstance.mm:
3805         (WebKit::ProxyInstance::methodsNamed):
3806         (WebKit::ProxyInstance::fieldNamed):
3807
3808 2009-07-06  David Kilzer  <ddkilzer@apple.com>
3809
3810         Bug 27006: Build fix when MAC_JAVA_BRIDGE is disabled
3811
3812         <https://bugs.webkit.org/show_bug.cgi?id=27006>
3813
3814         Reviewed by Darin Adler.
3815
3816         * WebCoreSupport/WebFrameLoaderClient.mm:
3817         (WebFrameLoaderClient::createJavaAppletWidget): Wrap contents of
3818         the method in #if ENABLE(MAC_JAVA_BRIDGE)/#endif and return 0
3819         when this feature is disabled.
3820
3821 2009-07-06  David Kilzer  <ddkilzer@apple.com>
3822
3823         Bug 27005: Build fixes when NETSCAPE_PLUGIN_API is disabled
3824
3825         <https://bugs.webkit.org/show_bug.cgi?id=27005>
3826
3827         Reviewed by Geoff Garen.
3828
3829         * Plugins/WebPluginController.mm:
3830         (-[WebPluginController destroyPlugin:]): Wrap call to
3831         ScriptController::cleanupScriptObjectsForPlugin() in
3832         #if ENABLE(NETSCAPE_PLUGIN_API)/#endif macro.
3833         (-[WebPluginController destroyAllPlugins]): Ditto.
3834         * Plugins/WebPluginDatabase.mm:
3835         (-[WebPluginDatabase removePluginInstanceViewsFor:]): Wrap
3836         WebBaseNetscapePluginView class checks in
3837         #if ENABLE(NETSCAPE_PLUGIN_API)/#endif macro.
3838         (-[WebPluginDatabase destroyAllPluginInstanceViews]): Ditto.
3839
3840 2009-07-06  David Kilzer  <ddkilzer@apple.com>
3841
3842         BUILD FIX: Use ENABLE(NETSCAPE_PLUGIN_API) instead of USE(PLUGIN_HOST_PROCESS)
3843
3844         In r45579, #if/#endif macros for USE(PLUGIN_HOST_PROCESS) were
3845         used, but ENABLE(NETSCAPE_PLUGIN_API) should have been used
3846         instead.
3847
3848         * Plugins/WebNetscapeContainerCheckContextInfo.h:
3849         * Plugins/WebNetscapeContainerCheckContextInfo.mm:
3850         * Plugins/WebNetscapeContainerCheckPrivate.mm:
3851
3852 2009-07-06  David Kilzer  <ddkilzer@apple.com>
3853
3854         Bug 27004: Build fix for ENABLE(PLUGIN_PROXY_FOR_VIDEO) after r42618
3855
3856         <https://bugs.webkit.org/show_bug.cgi?id=27004>
3857
3858         Reviewed by Geoff Garen.
3859
3860         * Plugins/WebPluginController.mm:
3861         (mediaProxyClient): Use core() method to convert from
3862         DOMElement to WebCore::Element.
3863
3864 2009-07-06  David Kilzer  <ddkilzer@apple.com>
3865
3866         Bug 27003: Build fix when USE(PLUGIN_HOST_PROCESS) is disabled
3867
3868         <https://bugs.webkit.org/show_bug.cgi?id=27003>
3869
3870         Reviewed by Geoff Garen.
3871
3872         * Plugins/WebNetscapeContainerCheckContextInfo.h: Added #if
3873         USE(PLUGIN_HOST_PROCESS)/#endif guards.
3874         * Plugins/WebNetscapeContainerCheckContextInfo.mm: Ditto.
3875         * Plugins/WebNetscapeContainerCheckPrivate.mm: Ditto.
3876
3877 2009-07-06  Anders Carlsson  <andersca@apple.com>
3878
3879         Reviewed by Adele Peterson.
3880
3881         Initialize wkIsLatchingWheelEvent.
3882         
3883         * WebCoreSupport/WebSystemInterface.m:
3884         (InitWebCoreSystemInterface):
3885
3886 2009-07-03  Dan Bernstein  <mitz@apple.com>
3887
3888         Reviewed by Simon Fraser.
3889
3890         - fix <rdar://problem/6964278> REGRESSION (r42118): Scrolling redraw
3891           problem in FileMaker Pro
3892
3893         * WebView/WebHTMLView.mm:
3894         (-[WebHTMLView _recursiveDisplayRectIfNeededIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:topView:]):
3895         Perform layout if needed, even on Mac OS X versions that have
3896         -viewWillDraw. This prevents attempts to draw without layout in case
3897         -viewWillDraw was not called due to NSView issues or the client
3898         did something during the display operation that re-invalidated the
3899         layout.
3900
3901 2009-07-02  Anders Carlsson  <andersca@apple.com>
3902
3903         Reviewed by Dan Bernstein.
3904
3905         <rdar://problem/6978783> 
3906         Software-rendered plug-in does not update correctly when inside a hardware layer
3907         
3908         Replace calls to setNeedsDisplay: and setNeedsDisplayInRect: with a call to the new method
3909         invalidatePluginContentRect:. This new method will ask WebCore to do the repainting, taking
3910         transforms into account.
3911         
3912         * Plugins/Hosted/NetscapePluginInstanceProxy.mm:
3913         (WebKit::NetscapePluginInstanceProxy::invalidateRect):
3914         * Plugins/Hosted/WebHostedNetscapePluginView.mm:
3915         (-[WebHostedNetscapePluginView pluginHostDied]):
3916         * Plugins/WebBaseNetscapePluginView.h:
3917         * Plugins/WebBaseNetscapePluginView.mm:
3918         (-[WebBaseNetscapePluginView windowBecameKey:]):
3919         (-[WebBaseNetscapePluginView windowResignedKey:]):
3920         (-[WebBaseNetscapePluginView preferencesHaveChanged:]):
3921         (-[WebBaseNetscapePluginView invalidatePluginContentRect:]):
3922         * Plugins/WebNetscapePluginView.mm:
3923         (-[WebNetscapePluginView invalidateRect:]):
3924         (-[WebNetscapePluginView invalidateRegion:]):
3925         (-[WebNetscapePluginView forceRedraw]):
3926
3927 2009-07-02  Adam Roben  <aroben@apple.com>
3928
3929         Fix warnings from update-webkit-localizable-strings
3930
3931         Rubber-stamped by Eric Carlson.
3932
3933         * WebCoreSupport/WebViewFactory.mm:
3934         (-[WebViewFactory mediaElementLoadingStateText]):
3935         (-[WebViewFactory mediaElementLiveBroadcastStateText]):
3936         Changed the localization comments to match the comments in the Windows
3937         version of this file, to avoid warnings about different comments for
3938         the same localized string.
3939
3940 2009-07-02  Simon Fraser  <simon.fraser@apple.com>
3941
3942         Reviewed by Dan Bernstein.
3943         
3944         Compositing-related preference methods are not public API; should move to WebPreferencesPrivate.h
3945         <rdar://problem/7027363>
3946
3947         Move accelerated-compositing pref to WebPreferencesPrivate.h
3948
3949         * WebView/WebPreferences.h:
3950         * WebView/WebPreferences.mm:
3951         (-[WebPreferences acceleratedCompositingEnabled]):
3952         (-[WebPreferences setAcceleratedCompositingEnabled:]):
3953         * WebView/WebPreferencesPrivate.h:
3954
3955 2009-07-02  Pierre d'Herbemont  <pdherbemont@apple.com>
3956
3957         Reviewed by Simon Fraser.
3958
3959         <rdar://problem/6518119>
3960
3961         Add localized strings for media controller status messages.
3962
3963         * WebCoreSupport/WebViewFactory.mm: Add new localized text.
3964         (-[WebViewFactory mediaElementLoadingStateText]):
3965         (-[WebViewFactory mediaElementLiveBroadcastStateText]):
3966
3967 2009-07-01  Brady Eidson  <beidson@apple.com>
3968
3969         Reviewed by Sam Weinig.
3970
3971         Add a preference/setting to toggle whether content sniffing is enabled for file URLs.
3972
3973         * WebView/WebPreferenceKeysPrivate.h:
3974
3975         * WebView/WebPreferences.mm:
3976         (+[WebPreferences initialize]):
3977         (-[WebPreferences localFileContentSniffingEnabled]):
3978         (-[WebPreferences setLocalFileContentSniffingEnabled:]):
3979         * WebView/WebPreferencesPrivate.h:
3980
3981         * WebView/WebView.mm:
3982         (-[WebView _preferencesChangedNotification:]):
3983
3984 2009-07-01  David Hyatt  <hyatt@apple.com>
3985
3986         Reviewed by Tim Hatcher.
3987
3988         <rdar://problem/6998524> REGRESSION (r44474): Form text field has focus ring, looks focused,
3989         even though the field is not actually focused for keyboard input
3990         
3991         Add the concept of whether or not the Page is focused by adding a boolean to the focusController.  This allows the
3992         focused frame and focused node to both be cached and changed programmatically without causing errors when the Page doesn't
3993         have focus.
3994
3995         * WebView/WebHTMLView.mm:
3996         (-[WebHTMLView becomeFirstResponder]):
3997         (-[WebHTMLView resignFirstResponder]):
3998
3999 2009-06-30  Adele Peterson  <adele@apple.com>
4000
4001         Reviewed by Dan Bernstein.
4002
4003         Fix for <rdar://problem/7014389> REGRESSION(4-TOT): Hyperlinks have no tooltips in Mail unless you first click in the message body
4004
4005         Updated these new methods (added as part of the viewless WebKit effort) that call through to WebHTMLView to use _selectedOrMainFrame, 
4006         instead of just selectedFrame.  When the selection changes, I don't think there is a situation where there's no selected frame, but
4007         it seems better to keep these two uses the same, since if there is a case, this will be more like the old behavior, before there was
4008         a version of _selectionChanged in WebView. 
4009
4010         * WebView/WebView.mm:
4011         (-[WebView _setToolTip:]):
4012         (-[WebView _selectionChanged]):
4013
4014 2009-06-30  Mark Rowe  <mrowe@apple.com>
4015
4016         Reviewed by Timothy Hatcher.
4017
4018         <rdar://problem/7006959> 'Save as…’ does not work in Mail
4019
4020         * WebView/WebFrameView.mm:
4021         (-[WebFrameView initWithFrame:]): Call _needMailThreadWorkaroundIfCalledOffMainThread rather than
4022         needMailThreadWorkaround, as the latter is intended to be used at the point which a workaround would
4023         be applied and thus contains a main thread check.  Since -initWithFrame: is called on the main thread,
4024         this was causing us to not switch from exception-throwing to logging for the thread violation behavior.
4025
4026 2009-06-30  Dan Bernstein  <mitz@apple.com>
4027
4028         Reviewed by Dave Hyatt.
4029
4030         - fix <rdar://problem/6946611> REGRESSION (r30673): Shade10:" D_Snap
4031           to Grid" window is clipping
4032
4033         * Misc/WebKitVersionChecks.h: Added
4034             WEBKIT_FIRST_VERSION_WITHOUT_SHADE10_QUIRK
4035         * WebView/WebView.mm:
4036         (-[WebView _needsLinkElementTextCSSQuirk]): Added. Returns YES if the
4037             client app is a version of Shade 10 earlier than 10.6 and it was
4038             linked against a version of WebKit earlier than 531.2.
4039         (-[WebView _preferencesChangedNotification:]): Added a call to
4040             Settings::setTreatsAnyTextCSSLinkAsStylesheet().
4041
4042 2009-06-29  Eric Carlson  <eric.carlson@apple.com>
4043
4044         Reviewed by Simon Fraser.
4045
4046         <rdar://problem/7014813> Ask media engine if a movie is streamed or downloaded.
4047
4048         * WebCoreSupport/WebSystemInterface.m:
4049         (InitWebCoreSystemInterface):
4050             Add QTMovieGetType.
4051
4052 2009-06-29  David Hyatt  <hyatt@apple.com>
4053
4054         Reviewed by Adam Roben.
4055
4056         Put datagrid behind an #ifdef.
4057
4058         * Configurations/FeatureDefines.xcconfig:
4059
4060 2009-06-26  John Sullivan  <sullivan@apple.com>
4061
4062         Added support for disabling Stop Speaking when there is no speaking to stop.
4063         Also fixed Stop Speaking so that it works (formerly it would throw an exception, and
4064         selecting it from the menu would perform a web search instead (!)).
4065
4066         Reviewed by Tim Hatcher.
4067
4068         * WebCoreSupport/WebContextMenuClient.h:
4069         declare isSpeaking()
4070         
4071         * WebCoreSupport/WebContextMenuClient.mm:
4072         (WebContextMenuClient::isSpeaking):
4073         implement by calling through to NSApplication
4074         (WebContextMenuClient::stopSpeaking):
4075         fixed implementation by correcting the signature of the NSApplication method
4076
4077 2009-06-26  Chris Marrin  <cmarrin@apple.com>
4078
4079         Reviewed by Simon Fraser  <simon.fraser@apple.com>.
4080
4081         Additional fix for https://bugs.webkit.org/show_bug.cgi?id=26651
4082
4083         The flag should always default to true to avoid it getting set
4084         to false in a build with accelerated compositing turned off
4085         and then disabling accelerated compositing when subsequently
4086         running a build with it turned on.
4087
4088         * WebView/WebPreferences.mm:
4089         (+[WebPreferences initialize]):
4090
4091 2009-06-26  Brady Eidson  <beidson@apple.com>
4092
4093         Fix SnowLeopard build.
4094
4095         * Plugins/Hosted/HostedNetscapePluginStream.mm:
4096         (WebKit::HostedNetscapePluginStream::didReceiveResponse):
4097
4098 2009-06-26  Brady Eidson  <beidson@apple.com>
4099
4100         Reviewed by Sam Weinig
4101
4102         <rdar://problem/6961578> REGRESSION (r43511): Opening .fdf files from Acrobat Professional fails
4103
4104         Replace all usage of the now obsolete [NSURLResponse _webcore_MIMEType].
4105
4106         * Plugins/WebBaseNetscapePluginStream.mm:
4107         (WebNetscapePluginStream::didReceiveResponse):
4108         * Plugins/WebNetscapePluginView.mm:
4109         (-[WebNetscapePluginView pluginView:receivedData:]):
4110         * Plugins/WebPluginController.mm:
4111         (-[WebPluginController pluginView:receivedResponse:]):
4112         * WebView/WebDataSource.mm:
4113         (-[WebDataSource _responseMIMEType]):
4114         * WebView/WebResource.mm:
4115         (-[WebResource _initWithData:URL:response:]):
4116
4117 2009-06-26  Alexey Proskuryakov  <ap@webkit.org>
4118
4119         Reviewed by Sam Weinig.
4120
4121         <rdar://problem/6651201> Update lookalike character list.
4122
4123         * Misc/WebNSURLExtras.mm: (isLookalikeCharacter): Added more characters to the list.
4124
4125 2009-06-25  Anders Carlsson  <andersca@apple.com>
4126
4127         Reviewed by Oliver Hunt.
4128
4129         <rdar://problem/6989017> 
4130         REGRESSION (SnowLeopard): RealPlayer content replays when opening a new tab or switching back to the RealPlayer tab
4131         
4132         If a plug-in fails in NPP_New, we would try to recreate it whenever the preferences for a web view would change. 
4133         
4134         Fix this by setting a flag when we fail to instantiate the plug-in, so we only try once.
4135         
4136         * Plugins/WebBaseNetscapePluginView.h:
4137         * Plugins/WebBaseNetscapePluginView.mm:
4138         (-[WebBaseNetscapePluginView start]):
4139
4140 2009-06-25  Chris Marrin  <cmarrin@apple.com>
4141
4142         Reviewed by Simon Fraser  <simon.fraser@apple.com>.
4143
4144         https://bugs.webkit.org/show_bug.cgi?id=26651
4145         
4146         Preference is named "WebKitAcceleratedCompositingEnabled"
4147         and is a boolean value. When false, prevents compositing layers from
4148         being created, which prevents hardware animation from running.
4149         Also forces video to do software rendering. Added a cache for
4150         the flag in RenderLayerCompositing and made it all work
4151         on-the-fly when the flag is changed while a page is loaded.
4152
4153         * WebView/WebPreferenceKeysPrivate.h:
4154         * WebView/WebPreferences.h:
4155         * WebView/WebPreferences.mm:
4156         (+[WebPreferences initialize]):
4157         (-[WebPreferences acceleratedCompositingEnabled]):
4158         (-[WebPreferences setAcceleratedCompositingEnabled:]):
4159         * WebView/WebView.mm:
4160         (-[WebView _preferencesChangedNotification:]):
4161
4162 2009-06-24  Dan Bernstein  <mitz@apple.com>
4163
4164         Reviewed by Anders Carlsson.
4165
4166         Fix the most recently seen kind of crash in <rdar://problem/5983224>
4167
4168         * WebView/WebHTMLView.mm:
4169         (-[WebHTMLView adjustPageHeightNew:top:bottom:limit:]): Null-check the
4170         Frame.
4171
4172 2009-06-24  Jeff Johnson  <opendarwin@lapcatsoftware.com>
4173
4174         Reviewed by Darin Adler.
4175
4176         https://bugs.webkit.org/show_bug.cgi?id=26638 WebKitErrors.m: _initWithPluginErrorCode: does not set localizedDescription
4177
4178         Add localized descriptions for plugin errors.
4179         The localized strings already existed but were unused; now NSLocalizedDescriptionKey is added to the NSError userInfo.
4180
4181         * Misc/WebKitErrors.m:
4182         (-[NSError _initWithPluginErrorCode:contentURL:pluginPageURL:pluginName:MIMEType:]):
4183
4184 2009-06-23  Brady Eidson  <beidson@apple.com>
4185
4186         Reviewed by Darin Adler.
4187
4188         <rdar://problem/6950660> REGRESSION: iSale 5.5.3 crashes after I click a template to load
4189
4190         Due to some subtle WebKit changes - presumably some delegate callback behavior - a latent bug in 
4191         iSale was uncovered where they aren't properly retaining their FrameLoadDelegate, and we ended up
4192         calling back to a dealloc'ed object.
4193
4194         * WebView/WebView.mm:
4195         (-[WebView _needsAdobeFrameReloadingQuirk]): Use more intelligent C++-style initialization.
4196         (-[WebView _needsKeyboardEventDisambiguationQuirks]): Ditto.
4197         (-[WebView _needsFrameLoadDelegateRetainQuirk]): YES for iSale versions under 5.6
4198         (-[WebView dealloc]): Release the delegate if the quirk is in effect.
4199         (-[WebView setFrameLoadDelegate:]): Retain the new delegate if the quirk is in effect.
4200
4201 2009-06-23  Anders Carlsson  <andersca@apple.com>
4202
4203         Reviewed by Darin Adler.
4204
4205         - Fix <rdar://problem/6965672>
4206         
4207         Defer calls to WKPCInvalidateRect, so we don't try to invalidate while waiting for a reply, since
4208         that is too early.
4209         
4210         * Plugins/Hosted/NetscapePluginHostProxy.h:
4211         (WebKit::NetscapePluginHostProxy::isProcessingRequests):
4212         * Plugins/Hosted/NetscapePluginHostProxy.mm:
4213         (WebKit::NetscapePluginHostProxy::NetscapePluginHostProxy):
4214         (WebKit::NetscapePluginHostProxy::processRequests):
4215         (WKPCInvalidateRect):
4216
4217 2009-06-22  Timothy Hatcher  <timothy@apple.com>
4218
4219         Add Mail on Tiger and Leopard to the list of applications that need the WebView init thread workaround.
4220
4221         <rdar://problem/6929524> Console shows WebKit Threading Violations from Mail
4222
4223         Reviewed by Anders Carlsson.
4224
4225         * WebView/WebView.mm:
4226         (clientNeedsWebViewInitThreadWorkaround): Return true for com.apple.Mail.
4227
4228 2009-06-22  Dan Bernstein  <mitz@apple.com>
4229
4230         Reviewed by Anders Carlsson.
4231
4232         - speculative fix for <rdar://problem/6889082>
4233           Crash at -[WebHTMLView(WebPrivate) _updateMouseoverWithEvent:]
4234
4235         The crash seems to happen because lastHitView points to a deleted
4236         object. Since -close calls -_clearLastHitViewIfSelf, I speculate that
4237         lastHitView has been set to an already-closed view.
4238
4239         * WebView/WebHTMLView.mm:
4240         (-[WebHTMLView hitTest:]): Return nil if the view is closed.
4241
4242 2009-06-22  Alexey Proskuryakov  <ap@webkit.org>
4243
4244         Reviewed by John Sullivan.
4245
4246         <rdar://problem/6956606> REGRESSION (S4Beta -> Final): After the password is input,
4247         Japanese can't be input.
4248
4249         * WebView/WebHTMLView.mm: (-[WebHTMLView _updateSelectionForInputManager]): Removed an
4250         unnecessary check - the function has an early return for null frame.
4251
4252 2009-06-22  Dan Bernstein  <mitz@apple.com>
4253
4254         Reviewed by Dave Hyatt.
4255
4256         - fix <rdar://problem/6990938> REGRESSION (r42787): After showing and
4257           hiding the Find banner, the WebHTMLView's height is not restored
4258
4259         * WebView/WebFrameView.mm:
4260         (-[WebFrameView setFrameSize:]): Mark the FrameView for layout when the
4261         WebFrameView's size changes.
4262         * WebView/WebView.mm:
4263         (-[WebView setFrameSize:]): Left the resize logic here, but only for
4264         the single view model.
4265
4266 2009-06-20  Darin Adler  <darin@apple.com>
4267
4268         Reviewed by Sam Weinig.
4269
4270         <rdar://problem/6964221> Need more processing of pluginspage.
4271
4272         * WebCoreSupport/WebFrameLoaderClient.mm:
4273         (WebFrameLoaderClient::createPlugin): Check protocolInHTTPFamily.
4274
4275 2009-06-18  Adam Barth  <abarth@webkit.org>
4276
4277         Reviewed by Sam Weinig.
4278
4279         https://bugs.webkit.org/show_bug.cgi?id=26199
4280
4281         Added preference to enable the XSSAuditor.
4282
4283         * WebView/WebPreferenceKeysPrivate.h:
4284         * WebView/WebPreferences.mm:
4285         (+[WebPreferences initialize]):
4286         (-[WebPreferences isXSSAuditorEnabled]):
4287         (-[WebPreferences setXSSAuditorEnabled:]):
4288         * WebView/WebPreferencesPrivate.h:
4289         * WebView/WebView.mm:
4290         (-[WebView _preferencesChangedNotification:]):
4291
4292 2009-06-18  Anders Carlsson  <andersca@apple.com>
4293
4294         Reviewed by Sam Weinig.
4295
4296         <rdar://problem/6926859>
4297         NPN_ConvertPoint doesn't give the right value when converting to/from NPCoordinateSpaceFlippedScreen
4298         
4299         When inverting Y, use the height of the first screen instead of the screen the window is on.
4300         
4301         * Plugins/Hosted/NetscapePluginInstanceProxy.mm:
4302         (WebKit::NetscapePluginInstanceProxy::windowFrameChanged):
4303         (WebKit::NetscapePluginInstanceProxy::mouseEvent):
4304         * Plugins/WebBaseNetscapePluginView.mm:
4305         (-[WebBaseNetscapePluginView convertFromX:andY:space:toX:andY:space:]):
4306
4307 2009-06-16  Simon Fraser  <simon.fraser@apple.com>
4308
4309         Reviewed by Dan Bernstein
4310
4311         <rdar://problem/6976766> Control-click on pages with accelerated compositing
4312         content does not work.
4313         
4314         Part deux. #ifdef the use of _private->layerHostingView with 
4315         USE(ACCELERATED_COMPOSITING)
4316
4317         * WebView/WebHTMLView.mm:
4318         (-[WebHTMLView hitTest:]):
4319
4320 2009-06-16  Simon Fraser  <simon.fraser@apple.com>
4321
4322         Reviewed by Dan Bernstein
4323
4324         <rdar://problem/6976766> Control-click on pages with accelerated compositing
4325         content does not work.
4326         
4327         Remove the WebLayerHostingView subclass of NSView, with its attempts to
4328         forward events to the WebHTMLView, and just fix -[WebHTMLView hitTest:]
4329         to ignore the layerHostingView.
4330         
4331         * WebView/WebHTMLView.mm:
4332         (-[WebHTMLView hitTest:]):
4333         (-[WebHTMLView attachRootLayer:]):
4334
4335 2009-06-15  Simon Fraser  <simon.fraser@apple.com>
4336
4337         Reviewed by Mark Rowe.
4338
4339         <rdar://problem/6974857>
4340         
4341         Define ENABLE_3D_RENDERING when building on 10.6, and move ENABLE_3D_RENDERING
4342         switch from config.h to wtf/Platform.h.
4343
4344         * Configurations/FeatureDefines.xcconfig:
4345         * WebKitPrefix.h:
4346
4347 2009-06-15  Anders Carlsson  <andersca@apple.com>
4348
4349         Reviewed by Dan Bernstein.
4350
4351         <rdar://problem/6967569>
4352         CrashTracer: 15 crashes in Safari at com.apple.WebKit • WebKit::NetscapePluginHostManager::didCreateWindow + 85
4353         
4354         Make sure to remove the entry from the plug-in host map so we won't end up with an entry that has a null value.
4355         
4356         * Plugins/Hosted/NetscapePluginHostManager.mm:
4357         (WebKit::NetscapePluginHostManager::hostForPackage):
4358
4359 2009-06-15  Dan Bernstein  <mitz@apple.com>
4360
4361         Reviewed by Tim Hatcher.
4362
4363         - make the source code font in the Web Inspector match Mac defaults