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