2010-06-25 Yuzo Fujishima <yuzo@google.com>
[WebKit-https.git] / WebKit / mac / ChangeLog
1 2010-06-25  Yuzo Fujishima  <yuzo@google.com>
2
3         Reviewed by Shinichiro Hamaji.
4
5         Improve default value handling for page format properties.
6         https://bugs.webkit.org/show_bug.cgi?id=41150
7
8         * Misc/WebCoreStatistics.h:
9         * Misc/WebCoreStatistics.mm:
10         (-[WebFrame pageSizeAndMarginsInPixels:pageNumber:width:height:marginTop:marginRight:marginBottom:]):
11
12 2010-06-26  Tony Gentilcore  <tonyg@chromium.org>
13
14         Reviewed by Dimitri Glazkov.
15
16         Add an ENABLE_WEB_TIMING option for enabling Web Timing support.
17         https://bugs.webkit.org/show_bug.cgi?id=38924
18
19         * Configurations/FeatureDefines.xcconfig:
20
21 2010-06-24  Jer Noble  <jer.noble@apple.com>
22
23         Reviewed by Eric Carlson.
24
25         Full-screened content doesn't keep the display on: Safari not grabbing a power assertion?
26         https://bugs.webkit.org/show_bug.cgi?id=40939
27         rdar://problem/7996172
28         
29         Take a IOKit power assertion when playing video in fullscreen mode.  Release the
30         assertion when paused in fullscreen mode, and when exiting fullscreen mode.
31
32         * WebView/WebVideoFullscreenController.h:
33         * WebView/WebVideoFullscreenController.mm:
34         (-[WebVideoFullscreenController windowDidExitFullscreen]): Call updatePowerAssertions.
35         (-[WebVideoFullscreenController windowDidEnterFullscreen]): Call updatePowerAssertions.
36         (-[WebVideoFullscreenController _disableIdleDisplaySleep]):
37         (-[WebVideoFullscreenController _enableIdleDisplaySleep]):
38         (-[WebVideoFullscreenController _disableIdleSystemSleep]):
39         (-[WebVideoFullscreenController _enableIdleSystemSleep]):
40         (-[WebVideoFullscreenController updatePowerAssertions]): Call _(enable|disable)Idle(System|Display)sleep depending on current playback rate and fullscreen status.
41         (-[WebVideoFullscreenController rateChanged:]): Call updatePowerAssertions.
42
43 2010-06-24  Jer Noble  <jer.noble@apple.com>
44
45         Reviewed by Darin Adler.
46
47         Playing movie full screen on second monitor hides menu bar and title bar on main monitor
48         https://bugs.webkit.org/show_bug.cgi?id=40933
49         rdar://problem/7858452
50         
51         Remove all references to GetSystemUIMode and SetSystemUIMode.  Replace these calls with 
52         [NSApplication setPresentationOptions:].  Do not auto-hide the menu bar if the fullscreen
53         screen is does not contain the menu-bar.  Do not auto-hide the dock if the fullscreen screen
54         is both not the menu-bar screen and not the dock screen.
55
56         * WebView/WebVideoFullscreenController.mm:
57         (-[WebVideoFullscreenController windowDidLoad]): Register the applicationDidChangeScreenParameters: listener.
58         (-[WebVideoFullscreenController windowDidExitFullscreen]): Calls updateMenuAndDockForFullscreen.
59         (-[WebVideoFullscreenController windowDidEnterFullscreen]): Calls updateMenuAndDockForFullscreen.
60         (-[WebVideoFullscreenController applicationDidChangeScreenParameters:]):  New notification handler; catches NSApplicationDidChangeScreenParameters.
61         (-[WebVideoFullscreenController updateMenuAndDockForFullscreen]): Hide/show the menu-bar and dock according to the fullscreen window's screen.
62
63 2010-06-24  Jer Noble  <jer.noble@apple.com>
64
65         Reviewed by Eric Carlson.
66
67         Full screen video in Safari exits full-screen if you switch to another app
68         https://bugs.webkit.org/show_bug.cgi?id=40635
69         rdar://problem/7885101
70
71         Implement the following rules for exiting full screen when switching apps:
72         1. If the system has a single screen, switching apps will cause Safari to exit full-screen.
73         2. Otherwise, if the full-screen screen is the "main screen" (the one with the title bar), 
74            switching apps will cause Safari to exit full-screen.
75         3. Overriding rules 1 & 2, if the full-screen screen is not on the "current space", 
76            switching apps will NOT cause Safari to exit full-screen.
77
78         * WebView/WebVideoFullscreenController.mm:
79         (-[WebVideoFullscreenController windowDidLoad]):
80         (-[WebVideoFullscreenController applicationDidResignActive:]):
81
82 2010-06-24  Adele Peterson  <adele@apple.com>
83
84         Reviewed by Sam Weinig.
85
86         Updated fix for <rdar://problem/8093680> "Paste and Match Style" should fire paste events
87         https://bugs.webkit.org/show_bug.cgi?id=41085
88
89         * WebView/WebHTMLView.mm: Use the WebCore command system for the pasteAsPlainText selector.
90         Also remove internal methods that no one is using.
91
92 2010-06-24  Damian Kaleta  <dkaleta@apple.com>
93
94         Reviewed by Sam Weinig.
95
96         Added an ObjC wrapper to Node::renderRect(bool&).
97
98         * DOM/WebDOMOperations.mm:
99         (-[DOMNode _renderRect:]):
100         * DOM/WebDOMOperationsPrivate.h:
101
102 2010-06-24  Adele Peterson  <adele@apple.com>
103
104         Reviewed by Eric Carlson.
105
106         Fix for <rdar://problem/8093680> "Paste and Match Style" should fire paste events
107         https://bugs.webkit.org/show_bug.cgi?id=41085
108
109         * WebView/WebHTMLView.mm: (-[WebHTMLView pasteAsPlainText:]): Reuse code in WebCore
110         which does everything done here and also fires paste events.
111
112 2010-06-23  Yuzo Fujishima  <yuzo@google.com>
113
114         Reviewed by Shinichiro Hamaji.
115
116         Implement page format data programming interface.
117         Add methods for testing.
118         https://bugs.webkit.org/show_bug.cgi?id=37538
119
120         * Misc/WebCoreStatistics.h:
121         * Misc/WebCoreStatistics.mm:
122         (-[WebFrame isPageBoxVisible:]):
123         (-[WebFrame pageAreaRectInPixels:]):
124         (-[WebFrame preferredPageSizeInPixels:]):
125
126 2010-06-22  Anders Carlsson  <andersca@apple.com>
127
128         Reviewed by Sam Weinig.
129
130         Get rid of more USE_LIBDISPATCH code.
131
132         * Plugins/Hosted/NetscapePluginHostProxy.h:
133
134 2010-06-22  Anders Carlsson  <andersca@apple.com>
135
136         Reviewed by Sam Weinig.
137
138         Get rid of the USE_LIBDISPATCH code.
139
140         * Plugins/Hosted/NetscapePluginHostProxy.mm:
141         (WebKit::NetscapePluginHostProxy::NetscapePluginHostProxy):
142         (WebKit::NetscapePluginHostProxy::~NetscapePluginHostProxy):
143
144 2010-06-22  Anders Carlsson  <andersca@apple.com>
145
146         Reviewed by Sam Weinig.
147
148         Wean NetscapePluginHostManager of any knowledge about WebNetscapePluginPackage
149         https://bugs.webkit.org/show_bug.cgi?id=41006
150
151         * Plugins/Hosted/NetscapePluginHostManager.h:
152         * Plugins/Hosted/NetscapePluginHostManager.mm:
153         (WebKit::NetscapePluginHostManager::hostForPlugin):
154         (WebKit::NetscapePluginHostManager::spawnPluginHost):
155         (WebKit::NetscapePluginHostManager::instantiatePlugin):
156         (WebKit::NetscapePluginHostManager::createPropertyListFile):
157         * Plugins/Hosted/WebHostedNetscapePluginView.mm:
158         (-[WebHostedNetscapePluginView createPlugin]):
159         * Plugins/WebNetscapePluginPackage.mm:
160         (-[WebNetscapePluginPackage createPropertyListFile]):
161
162 2010-06-21  Anders Carlsson  <andersca@apple.com>
163
164         Reviewed by Sam Weinig.
165
166         Fix an off-by-one bug I introduced.
167
168         * Plugins/WebNetscapePluginPackage.mm:
169         (-[WebNetscapePluginPackage getPluginInfoFromResources]):
170
171 2010-06-21  Nate Chapin  <japhet@chromium.org>
172
173         Reviewed by Adam Barth.
174
175         FrameLoader cleanup: Split high level subframe and plugin
176         loading functions into a separate class.
177         https://bugs.webkit.org/show_bug.cgi?id=40453
178
179         * WebView/WebFrame.mm:
180         (-[WebFrame _cacheabilityDictionary]):
181
182 2010-06-21  Anders Carlsson  <andersca@apple.com>
183
184         Another Tiger build fix.
185
186         * Plugins/WebNetscapePluginPackage.mm:
187         (-[WebNetscapePluginPackage _tryLoad]):
188
189 2010-06-21  Anders Carlsson  <andersca@apple.com>
190
191         Reviewed by Sam Weinig.
192
193         More WebBasePluginPackage cleanup
194         https://bugs.webkit.org/show_bug.cgi?id=40944
195
196         * Plugins/Hosted/HostedNetscapePluginStream.mm:
197         (WebKit::HostedNetscapePluginStream::pluginCancelledConnectionError):
198         * Plugins/Hosted/NetscapePluginHostManager.mm:
199         (WebKit::NetscapePluginHostManager::spawnPluginHost):
200         * Plugins/WebBaseNetscapePluginStream.mm:
201         (WebNetscapePluginStream::pluginCancelledConnectionError):
202         * Plugins/WebBaseNetscapePluginView.mm:
203         (WebHaltablePlugin::pluginName):
204         * Plugins/WebBasePluginPackage.h:
205         * Plugins/WebBasePluginPackage.mm:
206         (-[WebBasePluginPackage initWithPath:]):
207         (-[WebBasePluginPackage _objectForInfoDictionaryKey:]):
208         (-[WebBasePluginPackage getPluginInfoFromPLists]):
209         (-[WebBasePluginPackage load]):
210         (-[WebBasePluginPackage dealloc]):
211         (-[WebBasePluginPackage finalize]):
212         (-[WebBasePluginPackage pluginInfo]):
213         (-[WebBasePluginPackage supportsExtension:]):
214         (-[WebBasePluginPackage supportsMIMEType:WebCore::]):
215         (-[WebBasePluginPackage MIMETypeForExtension:]):
216         (-[WebBasePluginPackage isJavaPlugIn]):
217         (-[WebBasePluginPackage versionNumber]):
218         (-[WebBasePluginPackage WebCore::]):
219         * Plugins/WebNetscapePluginPackage.mm:
220         (-[WebNetscapePluginPackage openResourceFile]):
221         (-[WebNetscapePluginPackage closeResourceFile:]):
222         (-[WebNetscapePluginPackage getPluginInfoFromResources]):
223         (-[WebNetscapePluginPackage _initWithPath:]):
224         (-[WebNetscapePluginPackage _applyDjVuWorkaround]):
225         (-[WebNetscapePluginPackage _tryLoad]):
226         (-[WebNetscapePluginPackage supportsSnapshotting]):
227         (-[WebNetscapePluginPackage _unloadWithShutdown:]):
228         * Plugins/WebPluginDatabase.mm:
229         (-[WebPluginDatabase refresh]):
230         (-[WebPluginDatabase _removePlugin:]):
231         * Plugins/WebPluginPackage.mm:
232         (-[WebPluginPackage initWithPath:]):
233         (-[WebPluginPackage load]):
234         * WebCoreSupport/WebFrameLoaderClient.mm:
235         (WebFrameLoaderClient::createPlugin):
236         * WebCoreSupport/WebPlatformStrategies.mm:
237         (WebPlatformStrategies::getPluginInfo):
238
239 2010-06-21  Anders Carlsson  <andersca@apple.com>
240
241         Another PowerPC build fix.
242
243         * Plugins/WebNetscapePluginPackage.mm:
244         (-[WebNetscapePluginPackage openResourceFile]):
245         (-[WebNetscapePluginPackage _tryLoad]):
246
247 2010-06-21  Anders Carlsson  <andersca@apple.com>
248
249         Try to fix the PowerPC build.
250
251         * Plugins/WebNetscapePluginPackage.mm:
252         (-[WebNetscapePluginPackage _tryLoad]):
253
254 2010-06-21  Nate Chapin  <japhet@chromium.org>
255
256         Reviewed by Adam Barth.
257
258         Update relevant calls into FrameLoader to make use of 
259         FrameLoaderStateMachine.
260         https://bugs.webkit.org/show_bug.cgi?id=39695
261
262         * WebCoreSupport/WebFrameLoaderClient.mm:
263         (WebFrameLoaderClient::transitionToCommittedForNewPage):
264         * WebView/WebFrame.mm:
265         (-[WebFrame _firstLayoutDone]):
266
267 2010-06-21  Dimitri Glazkov  <dglazkov@chromium.org>
268
269         Reviewed by Dan Bernstein.
270
271         Chromium/Mac build fix.
272
273         * WebCoreSupport/WebSystemInterface.mm: Change the order of wtf/Platform.h include to let other 
274             headers smell it.
275
276 2010-06-21  Anders Carlsson  <andersca@apple.com>
277
278         Reviewed by Dan Bernstein.
279
280         Make all of WebKit build with clang++
281
282         * DefaultDelegates/WebDefaultPolicyDelegate.m:
283         (-[WebDefaultPolicyDelegate webView:decidePolicyForMIMEType:request:frame:decisionListener:]):
284         * Plugins/Hosted/NetscapePluginHostManager.mm:
285         * Plugins/WebBaseNetscapePluginView.mm:
286         (-[WebBaseNetscapePluginView resolvedURLStringForURL:target:]):
287         * WebView/WebDynamicScrollBarsView.mm:
288         (-[WebDynamicScrollBarsView setSuppressLayout:]):
289         * WebView/WebHTMLRepresentation.mm:
290         * WebView/WebNavigationData.mm:
291         (-[WebNavigationData initWithURLString:title:originalRequest:response:hasSubstituteData:clientRedirectSource:]):
292         * WebView/WebPDFRepresentation.mm:
293         (-[WebPDFRepresentation setDataSource:]):
294         (-[WebPDFRepresentation receivedData:withDataSource:]):
295         (-[WebPDFRepresentation receivedError:withDataSource:]):
296         * WebView/WebResource.mm:
297         (-[WebResource description]):
298         * WebView/WebSerializedJSValue.mm:
299         (-[WebSerializedJSValue initWithValue:context:exception:]):
300         * WebView/WebVideoFullscreenController.mm:
301         (-[WebVideoFullscreenController WebCore::]):
302         (-[WebVideoFullscreenController setMediaElement:WebCore::]):
303         (-[WebVideoFullscreenController setDelegate:]):
304         (-[WebVideoFullscreenController enterFullscreen:]):
305         * WebView/WebView.mm:
306         (-[WebView _openFrameInNewWindowFromMenu:]):
307         (-[WebView _geolocationDidChangePosition:]):
308
309 2010-06-21  Anders Carlsson  <andersca@apple.com>
310
311         Reviewed by Sam Weinig.
312
313         Remove unused dictionary ivars from WebBasePluginPackage
314         https://bugs.webkit.org/show_bug.cgi?id=40928
315
316         * Plugins/WebBasePluginPackage.h:
317         * Plugins/WebBasePluginPackage.mm:
318         (-[WebBasePluginPackage getPluginInfoFromPLists]):
319         (-[WebBasePluginPackage dealloc]):
320         * Plugins/WebNetscapePluginPackage.mm:
321         (-[WebNetscapePluginPackage getPluginInfoFromResources]):
322
323 2010-06-21  Dan Bernstein  <mitz@apple.com>
324
325         Build fix
326
327         * WebCoreSupport/WebSystemInterface.mm:
328         (InitWebCoreSystemInterface):
329
330 2010-06-21  Dan Bernstein  <mitz@apple.com>
331
332         Reviewed by Darin Adler.
333
334         WebKit part of implementing the 'hyphens' and 'hyphenate-character' properties
335         https://bugs.webkit.org/show_bug.cgi?id=10228
336
337         * WebCoreSupport/WebSystemInterface.mm:
338         (InitWebCoreSystemInterface): Initialize wkGetHyphenationLocationBeforeIndex.
339
340 2010-06-21  Satish Sampath  <satish@chromium.org>
341
342         Reviewed by Steve Block.
343
344         Speech Input Patch 0: Added compilation argument to conditionally compile pending patches.
345         https://bugs.webkit.org/show_bug.cgi?id=40878
346
347         * Configurations/FeatureDefines.xcconfig:
348
349 2010-06-20  Anders Carlsson  <andersca@apple.com>
350
351         Fix Tiger build.
352
353         * Plugins/WebNetscapePluginPackage.mm:
354
355 2010-06-20  Anders Carlsson  <andersca@apple.com>
356
357         Reviewed by Dan Bernstein.
358
359         Get rid of the old MIMETypes getter method
360         https://bugs.webkit.org/show_bug.cgi?id=40898
361
362         * Plugins/WebBasePluginPackage.h:
363         * Plugins/WebBasePluginPackage.mm:
364         (-[WebBasePluginPackage supportsExtension:]):
365         (-[WebBasePluginPackage supportsMIMEType:WebCore::]):
366         (-[WebBasePluginPackage MIMETypeForExtension:]):
367         * Plugins/WebPluginDatabase.mm:
368         (-[WebPluginDatabase refresh]):
369         (-[WebPluginDatabase _removePlugin:]):
370
371 2010-06-20  Anders Carlsson  <andersca@apple.com>
372
373         Reviewed by Dan Bernstein.
374
375         Remove bogus const qualifiers.
376
377         * WebCoreSupport/WebPasteboardHelper.h:
378         * WebCoreSupport/WebPasteboardHelper.mm:
379         (WebPasteboardHelper::urlFromPasteboard):
380         (WebPasteboardHelper::plainTextFromPasteboard):
381         (WebPasteboardHelper::fragmentFromPasteboard):
382
383 2010-06-20  Anders Carlsson  <andersca@apple.com>
384
385         Reviewed by Dan Bernstein.
386
387         Get rid of the extensionToMIME mapping in WebBasePluginPackage
388         https://bugs.webkit.org/show_bug.cgi?id=40897
389
390         Instead of using the extensionToMIME mutable dictionary, use the MIME types vector.
391         While this makes lookup of MIME types based on extensions linear instead of constant,
392         the number of extensions per plug-in is too small for it to matter.
393
394         * Plugins/WebBasePluginPackage.h:
395         * Plugins/WebBasePluginPackage.mm:
396         (-[WebBasePluginPackage initWithPath:]):
397         (-[WebBasePluginPackage dealloc]):
398         (-[WebBasePluginPackage supportsExtension:]):
399         (-[WebBasePluginPackage MIMETypeForExtension:]):
400         (-[WebBasePluginPackage setMIMEToExtensionsDictionary:]):
401
402 2010-06-20  Anders Carlsson  <andersca@apple.com>
403
404         Reviewed by Dan Bernstein.
405
406         Add a MimeClassInfo Vector to WebBasePluginPackage
407         https://bugs.webkit.org/show_bug.cgi?id=40896
408
409         * Plugins/WebBasePluginPackage.h:
410         * Plugins/WebBasePluginPackage.mm:
411         (-[WebBasePluginPackage getPluginInfoFromPLists]):
412         (-[WebBasePluginPackage WebCore::]):
413         * Plugins/WebNetscapePluginPackage.mm:
414         (-[WebNetscapePluginPackage getPluginInfoFromResources]):
415         * WebCoreSupport/WebPlatformStrategies.mm:
416         (WebPlatformStrategies::getPluginInfo):
417
418 2010-06-20  Anders Carlsson  <andersca@apple.com>
419
420         Reviewed by Dan Bernstein.
421
422         Move the NSBundle ivar to WebPluginPackage
423         https://bugs.webkit.org/show_bug.cgi?id=40894
424
425         * Plugins/WebBasePluginPackage.h:
426         * Plugins/WebBasePluginPackage.mm:
427         (-[WebBasePluginPackage initWithPath:]):
428         (-[WebBasePluginPackage _objectForInfoDictionaryKey:]):
429         (-[WebBasePluginPackage getPluginInfoFromPLists]):
430         (-[WebBasePluginPackage load]):
431         (-[WebBasePluginPackage dealloc]):
432         * Plugins/WebNetscapePluginPackage.mm:
433         (-[WebNetscapePluginPackage _initWithPath:]):
434         * Plugins/WebPluginPackage.h:
435         * Plugins/WebPluginPackage.mm:
436         (-[WebPluginPackage initWithPath:]):
437         (-[WebPluginPackage dealloc]):
438         (-[WebPluginPackage viewFactory]):
439         (-[WebPluginPackage load]):
440
441 2010-06-20  Anders Carlsson  <andersca@apple.com>
442
443         Reviewed by Sam Weinig.
444
445         Remove -[WebBasePluginPackage bundle]
446         https://bugs.webkit.org/show_bug.cgi?id=40892
447
448         Add -[WebBasePluginPackage bundleIdentifier] and switch clients over to it.
449         
450         Move the supportsSnapshotting method over to the plug-in package.
451         
452         * Plugins/Hosted/NetscapePluginHostManager.mm:
453         (WebKit::NetscapePluginHostManager::hostForPackage):
454         * Plugins/WebBaseNetscapePluginView.mm:
455         (-[WebBaseNetscapePluginView initWithFrame:pluginPackage:URL:baseURL:MIMEType:attributeKeys:attributeValues:loadManually:element:WebCore::]):
456         (-[WebBaseNetscapePluginView supportsSnapshotting]):
457         * Plugins/WebBasePluginPackage.h:
458         * Plugins/WebBasePluginPackage.mm:
459         (-[WebBasePluginPackage isQuickTimePlugIn]):
460         (-[WebBasePluginPackage isJavaPlugIn]):
461         (-[WebBasePluginPackage WebCore::]):
462         Call bundleIdentifier directly instead of asking the bundle 
463         * Plugins/WebNetscapePluginPackage.h:
464         * Plugins/WebNetscapePluginPackage.mm:
465         (-[WebNetscapePluginPackage supportsSnapshotting]):
466         * Plugins/WebNetscapePluginView.mm:
467         (-[WebNetscapePluginView setAttributeKeys:andValues:]):
468         (-[WebNetscapePluginView _createPlugin]):
469         * Plugins/WebPluginDatabase.mm:
470         (checkCandidate):
471
472 2010-06-20  Anders Carlsson  <andersca@apple.com>
473
474         Reviewed by Dan Bernstein.
475
476         Change some WebPluginDabase ivars to use WebCore::String instead of NSString.
477         https://bugs.webkit.org/show_bug.cgi?id=40869
478         
479         Re-land r61459, with extra null-checks in WebFrameLoaderClient.
480
481         * Plugins/Hosted/NetscapePluginHostManager.mm:
482         (WebKit::NetscapePluginHostManager::spawnPluginHost):
483         * Plugins/WebBasePluginPackage.h:
484         * Plugins/WebBasePluginPackage.mm:
485         (-[WebBasePluginPackage initWithPath:]):
486         (-[WebBasePluginPackage getPluginInfoFromPLists]):
487         (-[WebBasePluginPackage dealloc]):
488         (-[WebBasePluginPackage name]):
489         (-[WebBasePluginPackage path]):
490         (-[WebBasePluginPackage filename]):
491         (-[WebBasePluginPackage pluginDescription]):
492         (-[WebBasePluginPackage description]):
493         (-[WebBasePluginPackage isJavaPlugIn]):
494         * Plugins/WebNetscapePluginPackage.mm:
495         (-[WebNetscapePluginPackage getPluginInfoFromResources]):
496         (-[WebNetscapePluginPackage _tryLoad]):
497         (-[WebNetscapePluginPackage _unloadWithShutdown:]):
498         * Plugins/WebPluginPackage.mm:
499         (-[WebPluginPackage load]):
500         * WebCoreSupport/WebFrameLoaderClient.mm:
501         (WebFrameLoaderClient::createPlugin):
502
503 2010-06-18  Adam Barth  <abarth@webkit.org>
504
505         Unreviewed, rolling out r61459.
506         http://trac.webkit.org/changeset/61459
507         https://bugs.webkit.org/show_bug.cgi?id=40869
508
509         Seems to have broken two tests on the Tiger buildbot:
510
511         dom/html/level2/html/AppletsCollection.html
512         plugins/qt-qwidget-plugin.html
513
514         Anders wasn't on #webkit...
515
516         * Plugins/Hosted/NetscapePluginHostManager.mm:
517         (WebKit::NetscapePluginHostManager::spawnPluginHost):
518         * Plugins/WebBasePluginPackage.h:
519         * Plugins/WebBasePluginPackage.mm:
520         (-[WebBasePluginPackage initWithPath:]):
521         (-[WebBasePluginPackage getPluginInfoFromPLists]):
522         (-[WebBasePluginPackage dealloc]):
523         (-[WebBasePluginPackage name]):
524         (-[WebBasePluginPackage path]):
525         (-[WebBasePluginPackage filename]):
526         (-[WebBasePluginPackage pluginDescription]):
527         (-[WebBasePluginPackage setName:]):
528         (-[WebBasePluginPackage setPath:]):
529         (-[WebBasePluginPackage setPluginDescription:]):
530         (-[WebBasePluginPackage description]):
531         (-[WebBasePluginPackage isJavaPlugIn]):
532         * Plugins/WebNetscapePluginPackage.mm:
533         (-[WebNetscapePluginPackage getPluginInfoFromResources]):
534         (-[WebNetscapePluginPackage _tryLoad]):
535         (-[WebNetscapePluginPackage _unloadWithShutdown:]):
536         * Plugins/WebPluginPackage.mm:
537         (-[WebPluginPackage load]):
538
539 2010-06-18  Anders Carlsson  <andersca@apple.com>
540
541         Fix Tiger build.
542
543         * Plugins/WebBasePluginPackage.mm:
544         (-[WebBasePluginPackage isJavaPlugIn]):
545
546 2010-06-18  Anders Carlsson  <andersca@apple.com>
547
548         Reviewed by Sam Weinig.
549
550         Change some WebPluginDabase ivars to use WebCore::String instead of NSString.
551         https://bugs.webkit.org/show_bug.cgi?id=40869
552
553         * Plugins/Hosted/NetscapePluginHostManager.mm:
554         (WebKit::NetscapePluginHostManager::spawnPluginHost):
555         * Plugins/WebBasePluginPackage.h:
556         * Plugins/WebBasePluginPackage.mm:
557         (-[WebBasePluginPackage initWithPath:]):
558         (-[WebBasePluginPackage getPluginInfoFromPLists]):
559         (-[WebBasePluginPackage dealloc]):
560         (-[WebBasePluginPackage name]):
561         (-[WebBasePluginPackage path]):
562         (-[WebBasePluginPackage filename]):
563         (-[WebBasePluginPackage pluginDescription]):
564         (-[WebBasePluginPackage description]):
565         (-[WebBasePluginPackage isJavaPlugIn]):
566         * Plugins/WebNetscapePluginPackage.mm:
567         (-[WebNetscapePluginPackage getPluginInfoFromResources]):
568         (-[WebNetscapePluginPackage _tryLoad]):
569         (-[WebNetscapePluginPackage _unloadWithShutdown:]):
570         * Plugins/WebPluginPackage.mm:
571         (-[WebPluginPackage load]):
572
573 2010-06-18  Anders Carlsson  <andersca@apple.com>
574
575         Reviewed by Sam Weinig.
576
577         Rename WebPluginPackage.m to make it an Objective-C++ file.
578         
579         * Plugins/WebPluginPackage.m: Removed.
580         * Plugins/WebPluginPackage.mm: Copied from Plugins/WebPluginPackage.m.
581
582 2010-06-18  Anders Carlsson  <andersca@apple.com>
583
584         Reviewed by Sam Weinig.
585
586         Get rid of the NSEnumerators from WebBasePluginPackage
587         https://bugs.webkit.org/show_bug.cgi?id=40868
588
589         * Plugins/WebBasePluginPackage.h:
590         * Plugins/WebBasePluginPackage.mm:
591         (-[WebBasePluginPackage MIMETypes]):
592         (-[WebBasePluginPackage supportsExtension:]):
593         (-[WebBasePluginPackage supportsMIMEType:]):
594         * Plugins/WebPluginDatabase.mm:
595         (-[WebPluginDatabase pluginForMIMEType:]):
596         (-[WebPluginDatabase pluginForExtension:]):
597         (-[WebPluginDatabase refresh]):
598         (-[WebPluginDatabase _removePlugin:]):
599         * WebCoreSupport/WebPlatformStrategies.mm:
600         (WebPlatformStrategies::getPluginInfo):
601
602 2010-06-18  Anders Carlsson  <andersca@apple.com>
603
604         Reviewed by Sam Weinig.
605
606         Make WebCoreSystemInterface.h a C++ only header
607         https://bugs.webkit.org/show_bug.cgi?id=40867
608
609         * WebCoreSupport/WebSystemInterface.h:
610         * WebCoreSupport/WebSystemInterface.m: Removed.
611         * WebCoreSupport/WebSystemInterface.mm: Copied from WebKit/mac/WebCoreSupport/WebSystemInterface.m.
612
613 2010-06-18  Anders Carlsson  <andersca@apple.com>
614
615         Reviewed by Sam Weinig.
616
617         Clean up WebPluginDatabase.mm
618         https://bugs.webkit.org/show_bug.cgi?id=40866
619
620         * Plugins/WebBasePluginPackage.h:
621         * Plugins/WebBasePluginPackage.mm:
622         (pathByResolvingSymlinksAndAliases):
623         (-[WebBasePluginPackage initWithPath:]):
624         Change an instance method into a static function.
625         
626         * Plugins/WebPluginDatabase.mm:
627         (PluginPackageCandidates::PluginPackageCandidates):
628         (PluginPackageCandidates::update):
629         (PluginPackageCandidates::bestCandidate):
630         Add a new PluginPackageCandidates class.
631         
632         (-[WebPluginDatabase pluginForKey:withEnumeratorSelector:]):
633         Use PluginPackageCandidates here.
634
635 2010-06-18  Anders Carlsson  <andersca@apple.com>
636
637         Fix Tiger build.
638         
639         * WebCoreSupport/WebPlatformStrategies.mm:
640
641 2010-06-18  Anders Carlsson  <andersca@apple.com>
642
643         Reviewed by Darin Adler.
644
645         Get rid of PluginDataMac.mm and use the plug-in strategy instead
646         https://bugs.webkit.org/show_bug.cgi?id=40860
647
648         * Plugins/WebBasePluginPackage.h:
649         * WebCoreSupport/WebPlatformStrategies.h:
650         * WebCoreSupport/WebPlatformStrategies.mm:
651         (WebPlatformStrategies::createPluginStrategy):
652         (WebPlatformStrategies::refreshPlugins):
653         (WebPlatformStrategies::getPluginInfo):
654         * WebCoreSupport/WebViewFactory.mm:
655
656 2010-06-18  Anders Carlsson  <andersca@apple.com>
657
658         Reviewed by Dan Bernstein.
659
660         Add stubbed out WebPlatformStrategies class to WebKit.
661         https://bugs.webkit.org/show_bug.cgi?id=40851
662
663         * WebCoreSupport/WebPlatformStrategies.h: Added.
664         * WebCoreSupport/WebPlatformStrategies.mm: Added.
665         (WebPlatformStrategies::initialize):
666         (WebPlatformStrategies::WebPlatformStrategies):
667         (WebPlatformStrategies::createPluginStrategy):
668         * WebView/WebView.mm:
669         (-[WebView _commonInitializationWithFrameName:groupName:usesDocumentViews:]):
670
671 2010-06-15  Dumitru Daniliuc  <dumi@chromium.org>
672
673         Reviewed by Adam Barth.
674
675         Move isAvailable()/setIsAvailable() from Database/DatabaseSync to AbstractDatabase.
676         https://bugs.webkit.org/show_bug.cgi?id=39041
677
678         * WebView/WebView.mm:
679         (-[WebView _preferencesChangedNotification:]):
680
681 2010-06-17  Darin Adler  <darin@apple.com>
682
683         Reviewed by Sam Weinig.
684
685         Use adoptRef and create functions in more code paths
686         https://bugs.webkit.org/show_bug.cgi?id=40760
687
688         * Plugins/Hosted/NetscapePluginInstanceProxy.h: Made create no longer
689         be an inline function.
690
691         * Plugins/Hosted/NetscapePluginInstanceProxy.mm:
692         (WebKit::NetscapePluginInstanceProxy::NetscapePluginInstanceProxy):
693         Moved the call to addPluginInstance out of here.
694         (WebKit::NetscapePluginInstanceProxy::create): Move it in here.
695         This makes sure we call adoptRef on the new proxy before any caller
696         calls ref on it.
697
698 2010-06-16  Eric Seidel  <eric@webkit.org>
699
700         Reviewed by Adam Barth.
701
702         Enable HTML5 Parser in Safari on Mac
703         https://bugs.webkit.org/show_bug.cgi?id=40739
704
705         The HTML5 parser is probably off on all webkit ports.
706         We should either flip the meaning of the default so that
707         "false" means HTML5 on all ports, or we'll have to write
708         more code like this for all the other ports.
709
710         * WebView/WebPreferences.mm:
711         (+[WebPreferences initialize]):
712
713 2010-06-15  Mark Rowe  <mrowe@apple.com>
714
715         Reviewed by Sam Weinig.
716
717         Don't leak WebGeolocationPositionInternal and GeolocationPosition instances for every WebGeolocationPosition created.
718
719         * WebView/WebGeolocationPosition.mm:
720         (-[WebGeolocationPosition dealloc]): Implement -dealloc and release our WebGeolocationPositionInternal instance.
721
722 2010-06-10  Yuzo Fujishima  <yuzo@google.com>
723
724         Reviewed by Shinichiro Hamaji.
725
726         Implement render style selection for pages to support CSS3 Paged Media.
727         https://bugs.webkit.org/show_bug.cgi?id=35961
728
729         * Misc/WebCoreStatistics.h:
730         * Misc/WebCoreStatistics.mm:
731         (-[WebFrame pageProperty:propertyName:]):
732
733 2010-06-15  Darin Adler  <darin@apple.com>
734
735         Reviewed by Adam Barth.
736
737         Move functions out of Frame class that were marked "move to Chrome"
738         https://bugs.webkit.org/show_bug.cgi?id=39636
739
740         * WebView/WebView.mm:
741         (-[WebView shouldClose]): Call shouldClose on FrameLoader instead of
742         going through Frame.
743
744 2010-06-15  Anders Carlsson  <andersca@apple.com>
745
746         Reviewed by Dan Bernstein.
747
748         Remove getPluginInfoFromBundleAndMIMEDictionary:
749
750         * Plugins/WebBasePluginPackage.mm:
751
752 2010-06-15  Anders Carlsson  <andersca@apple.com>
753
754         Reviewed by Dan Bernstein.
755
756         Fold getPluginInfoFromBundleAndMIMEDictionary: into its sole caller.
757
758         * Plugins/WebBasePluginPackage.mm:
759         (-[WebBasePluginPackage getPluginInfoFromPLists]):
760
761 2010-06-11  Simon Fraser  <simon.fraser@apple.com>
762
763         Reviewed by Darin Adler.
764
765         <rdar://problem/8084721> Pages using accelerated compositing fail to update correctly in Carbon apps
766         
767         The run loop observer used to commit compositing layer changes does not do
768         updates if [window viewsNeedDisplay] is true, because this indicates that a delayed window
769         update is pending (added in r58623).
770         
771         However, Carbon apps don't use the NSWindow updating mechanism, so [window viewsNeedDisplay] always returns YES.
772         This caused us to never sync compositing layers.
773         
774         So detect if the current window is wrapping a carbon window, and in that case consult the root
775         HIView to detect if display is pending.
776
777         * WebView/WebView.mm:
778         (layerSyncRunLoopObserverCallBack):
779
780 2010-06-15  Dan Bernstein  <mitz@apple.com>
781
782         Reviewed by John Sullivan.
783
784         <rdar://problem/8077032> REGRESSION (r50796): Black background on AppleScript generated email
785
786         Test: platform/mac/editing/input/NSBackgroundColor-transparent.html
787
788         r50796 changed the initial background color from invalid to transparent. As a result,
789         NSAttributedStrings returned from +_web_attributedStringFromRange started including the
790         NSBackgroundColor attribute, with a transparent color as the value. This caused problems for
791         components in the system that ignore the alpha component, turning the color into opaque black.
792
793         * Misc/WebNSAttributedStringExtras.mm:
794         (+[NSAttributedString _web_attributedStringFromRange:]): Change to not include the background
795         and foreground color attributes if the color are transparent.
796
797 2010-06-14  Ilya Tikhonovsky  <loislo@chromium.org>
798
799         Reviewed by Pavel Feldman.
800
801         WebInspector: On the way to Remote Debugging we want to transfer dom/timeline/etc
802         data from inspected page to WebInspector as JSON string via http. The native
803         serialization to JSON string is supported by InspectorValue's classes. This patch
804         has the implementation of sendMessageToFrontend function. WebKit version of it still
805         uses ScriptFunctionCall and will be switched to another transport a little bit later.
806         https://bugs.webkit.org/show_bug.cgi?id=40134
807
808         * WebCoreSupport/WebInspectorClient.h:
809         * WebCoreSupport/WebInspectorClient.mm:
810         (WebInspectorClient::WebInspectorClient):
811         (WebInspectorClient::openInspectorFrontend):
812
813 2010-06-10  David Hyatt  <hyatt@apple.com>
814
815         Reviewed by John Sullivan.
816
817         https://bugs.webkit.org/show_bug.cgi?id=40441, back out the original fix for 29601, since it has broken continuous
818         wheel delta values.
819
820         * WebView/WebDynamicScrollBarsView.mm:
821         (-[WebDynamicScrollBarsView scrollWheel:]):
822
823 2010-06-09  Sheriff Bot  <webkit.review.bot@gmail.com>
824
825         Unreviewed, rolling out r60889.
826         http://trac.webkit.org/changeset/60889
827         https://bugs.webkit.org/show_bug.cgi?id=40365
828
829         gtk bot has some kind of memory corruption (Requested by
830         loislo on #webkit).
831
832         * WebCoreSupport/WebInspectorClient.h:
833         * WebCoreSupport/WebInspectorClient.mm:
834         (WebInspectorClient::WebInspectorClient):
835         (WebInspectorClient::openInspectorFrontend):
836         (-[WebInspectorWindowController destroyInspectorView]):
837
838 2010-06-07  Ilya Tikhonovsky  <loislo@chromium.org>
839
840         Reviewed by Pavel Feldman.
841
842         WebInspector: On the way to Remote Debugging we want to transfer dom/timeline/etc
843         data from inspected page to WebInspector as JSON string via http. The native
844         serialization to JSON string is supported by InspectorValue's classes. This patch
845         has the implementation of sendMessageToFrontend function. WebKit version of it still
846         uses ScriptFunctionCall and will be switched to another transport a little bit later.
847         https://bugs.webkit.org/show_bug.cgi?id=40134
848
849         * WebCoreSupport/WebInspectorClient.h:
850         * WebCoreSupport/WebInspectorClient.mm:
851         (WebInspectorClient::WebInspectorClient):
852         (WebInspectorClient::openInspectorFrontend):
853
854 2010-06-08  Mark Rowe  <mrowe@apple.com>
855
856         Reviewed by Adele Peterson.
857
858         <rdar://problem/8072136> REGRESSION (r56051): Inspect Element context menu does nothing in applications linked against 10.4 SDK
859
860         * WebCoreSupport/WebContextMenuClient.mm:
861         (fixMenusReceivedFromOldClients): Fix up the tag on the Inspect Element menu item. This ensures that even if the
862         context menu layout doesn't match our expectations that the menu item will continue to trigger the web inspector.
863
864 2010-06-08  Antonio Gomes  <tonikitoo@webkit.org>
865
866         Reviewed by Ojan Vafai and Darin Adler.
867
868         Refactor platform dependent editing behavior code out of Settings
869         https://bugs.webkit.org/show_bug.cgi?id=39854
870
871         EditingBehavior enum was renamed to EditingBehaviorTypes and moved out from Settings.h to
872         EditingBehaviorTypes.h . Call sites in WebKit/ adjusted accordingly.
873
874         * WebView/WebFrame.mm:
875         (core):
876         * WebView/WebFrameInternal.h:
877         * WebView/WebView.mm:
878         (-[WebView _preferencesChangedNotification:]):
879
880 2010-06-06  MORITA Hajime  <morrita@google.com>
881
882         Unreviewd, follow up to r60820
883
884         https://bugs.webkit.org/show_bug.cgi?id=40219
885         [Mac] ENABLE_METER_TAG should be enabled
886         
887         Added ENABLE_METER_TAG.
888
889         * Configurations/FeatureDefines.xcconfig:
890
891 2010-06-06  Gavin Barraclough  <barraclough@apple.com>
892
893         Reviewed by Sam Weinig.
894
895         Bug 40214 - Clean up error construction / throwing in JSC.
896         
897         The one egregious insanity here is that creating an error requires
898         a VM-entry-esqe-host call (the string argument is wrapped as a JS
899         object & pushed on the RegisterFile, then unwrapped back to a
900         UString).  Changing this also means you only require a global
901         object, not an ExecState, to create an error.
902
903         The methods to create error objects are also parameterized
904         requiring a switch on the type, which can be made cleaner and
905         faster by moving to a separate method per error type.  Code to add
906         divot information to error had been duplicated, and is coalesced
907         back into a single function.
908
909         Convenience methods added to create & throw type & syntax error
910         with a default error message, since this is a common case.
911
912         Also, errors are currently thrown either using
913         "throwError(exec, error)" or "exec->setException(error)" - unify
914         on the former, since this is more commonly used.  Add
915         "throwVMError(exec, error)" equivalents, as a convenience for
916         cases where the result was being wrapped in "JSValue::encode(...)".
917
918         * Plugins/Hosted/NetscapePluginInstanceProxy.mm:
919         (WebKit::NetscapePluginInstanceProxy::moveGlobalExceptionToExecState):
920         * Plugins/Hosted/ProxyInstance.mm:
921         (WebKit::ProxyInstance::invokeMethod):
922
923 2010-06-02  Gavin Barraclough  <barraclough@apple.com>
924
925         Reviewed by Oliver Hunt.
926
927         Bug 40094 - The return type of NativeFunction should be EncodedJSValue
928         On Windows & Linux, using JSVALUE32_64, EncodedJSValue is returned in registers, but JSValue is not.
929
930         * Plugins/Hosted/NetscapePluginInstanceProxy.h:
931         * Plugins/Hosted/NetscapePluginInstanceProxy.mm:
932         (WebKit::NetscapePluginInstanceProxy::invoke):
933
934 2010-06-02  Sterling Swigart  <sswigart@google.com>
935
936         Reviewed by David Levin.
937
938         Image Resizer Patch 0: Added compilation argument to conditionally compile pending patches.
939         https://bugs.webkit.org/show_bug.cgi?id=39906
940
941         * Configurations/FeatureDefines.xcconfig:
942
943 2010-06-01  David Hyatt  <hyatt@apple.com>
944
945         Reviewed by Anders Carlsson.
946
947         Add a preference for paginating during layout (the new model for computing page breaks).
948
949         * WebView/WebPreferenceKeysPrivate.h:
950         * WebView/WebPreferences.mm:
951         (-[WebPreferences paginateDuringLayoutEnabled]):
952         (-[WebPreferences setPaginateDuringLayoutEnabled:]):
953         * WebView/WebPreferencesPrivate.h:
954         * WebView/WebView.mm:
955         (-[WebView _preferencesChangedNotification:]):
956
957 2010-06-01  Kevin Decker  <kdecker@apple.com>
958
959         Reviewed by Simon Fraser.
960
961         https://bugs.webkit.org/show_bug.cgi?id=40025
962         <rdar://problem/8046273> All Flash content crashes after installing CS5 Design Premium.
963         
964         * Plugins/WebBaseNetscapePluginView.mm:
965         (-[WebBaseNetscapePluginView supportsSnapshotting]): Do not support snapshotting Flash 10.1 if
966         the version is less than 10.1.53.60.
967
968 2010-06-01  Alexey Proskuryakov  <ap@apple.com>
969
970         Reviewed by Sam Weinig.
971
972         https://bugs.webkit.org/show_bug.cgi?id=39434
973         REGRESSION (r59811): Geolocation callbacks cannot be created
974
975         Removing unused WebGeolocationMock.
976
977         * WebCoreSupport/WebGeolocationMock.mm: Removed.
978         * WebCoreSupport/WebGeolocationMockPrivate.h: Removed.
979         * WebKit.exp:
980
981 2010-05-30  Darin Adler  <darin@apple.com>
982
983         Reviewed by Sam Weinig.
984
985         Make more HTML DOM members private, especially constructors, third and final batch
986         https://bugs.webkit.org/show_bug.cgi?id=39916
987
988         * WebView/WebHTMLRepresentation.mm:
989         (-[WebHTMLRepresentation elementWithName:inForm:]): Use the new HTMLFormElement
990         function, associatedElements, rather than getting directly at a data member
991         named formElements.
992         (-[WebHTMLRepresentation controlsInForm:]): Ditto.
993
994 2010-05-28  Geoffrey Garen  <ggaren@apple.com>
995
996         Reviewed by Sam Weinig, Gavin Barraclough, Oliver Hunt.
997
998         Simplified the host calling convention.
999
1000         PART ONE: Functional code changes.
1001         
1002         [ None in WebKit ]
1003         
1004         PART TWO: Global search and replace.
1005         
1006         In the areas below, I used global search-and-replace to change
1007             (ExecState*, JSObject*, JSValue, const ArgList&) => (ExecState*)
1008             args.size() => exec->argumentCount()
1009             args.at(i) => exec->argument(i)
1010
1011         * Plugins/Hosted/ProxyInstance.h:
1012         * Plugins/Hosted/ProxyInstance.mm:
1013         (WebKit::ProxyInstance::invoke):
1014         (WebKit::ProxyInstance::invokeMethod):
1015         (WebKit::ProxyInstance::invokeDefaultMethod):
1016
1017 2010-05-27  Beth Dakin  <bdakin@apple.com>
1018
1019         Reviewed by Simon Fraser.
1020
1021         Change z-component to 1.
1022
1023         * WebView/WebHTMLView.mm:
1024         (-[WebHTMLView viewDidMoveToWindow]):
1025         (-[WebHTMLView attachRootLayer:]):
1026
1027 2010-05-26  Simon Fraser  <simon.fraser@apple.com>
1028
1029         Reviewed by Beth Dakin and Darin Adler.
1030
1031         Fix for <rdar://problem/7464703> HiDPI: [Layers] Compositing layers 
1032         do not scale properly when running with a resolution independent 
1033         scale
1034
1035         Apply the userSpaceScaleFactor as a scale on the layerHostingView.
1036
1037         * WebView/WebHTMLView.mm:
1038         (-[WebHTMLView viewDidMoveToWindow]):
1039         (-[WebHTMLView attachRootLayer:]):
1040
1041 2010-05-25  Alexey Proskuryakov  <ap@apple.com>
1042
1043         Reviewed by Darin Adler.
1044
1045         https://bugs.webkit.org/show_bug.cgi?id=39621
1046         <rdar://problem/8009738> Extreme memory growth on DOM Hanoi test
1047
1048         Removed formStateDidChange support, which is not needed by any client.
1049
1050         * WebCoreSupport/WebChromeClient.h:
1051         (WebChromeClient::formStateDidChange):
1052         * WebCoreSupport/WebChromeClient.mm:
1053         * WebView/WebUIDelegatePrivate.h:
1054
1055 2010-05-25  Brady Eidson  <beidson@apple.com>
1056
1057         Reviewed by Darin Adler.
1058
1059         Database origins aren't populated at launch (missing db in prefs sheet, possible other symptoms)
1060         <rdar://problem/8013233> and https://bugs.webkit.org/show_bug.cgi?id=39486
1061
1062         * Storage/WebDatabaseManager.mm:
1063         (WebKitInitializeDatabasesIfNecessary): Call initializeTracker() instead of trying to set the path on
1064           an already created tracker that already has its origins populated.
1065
1066 2010-05-24  Darin Adler  <darin@apple.com>
1067
1068         Reviewed by Eric Seidel.
1069
1070         Move view-related functions from Frame to FrameView
1071         https://bugs.webkit.org/show_bug.cgi?id=39366
1072
1073         * WebView/WebView.mm:
1074         (-[WebView _setZoomMultiplier:isTextOnly:]): Call function on FrameView.
1075         (-[WebView setEditable:]): Get rid of call to empty function,
1076         removeEditingStyleFromBodyElement.
1077
1078 2010-05-21  David Hyatt  <hyatt@apple.com>
1079
1080         Reviewed by Dan Bernstein.
1081
1082         https://bugs.webkit.org/show_bug.cgi?id=39420
1083
1084         Make sure everyone who needs to is using visitedDependentColor rather than accessing styles
1085         directly.
1086
1087         * Misc/WebNSAttributedStringExtras.mm:
1088         (+[NSAttributedString _web_attributedStringFromRange:]):
1089         * WebView/WebFrame.mm:
1090         (-[WebFrame _bodyBackgroundColor]):
1091
1092 2010-05-21  Oliver Hunt  <oliver@apple.com>
1093
1094         Reviewed by Geoffrey Garen.
1095
1096         All callable objects should have a global object reference
1097         https://bugs.webkit.org/show_bug.cgi?id=39495
1098
1099         Update the plugin proxy to handle the need for global object.
1100
1101         * Plugins/Hosted/ProxyInstance.mm:
1102         (WebKit::ProxyInstance::newRuntimeObject):
1103         (WebKit::ProxyRuntimeMethod::ProxyRuntimeMethod):
1104         (WebKit::ProxyInstance::getMethod):
1105         * Plugins/Hosted/ProxyRuntimeObject.h:
1106         * Plugins/Hosted/ProxyRuntimeObject.mm:
1107         (WebKit::ProxyRuntimeObject::ProxyRuntimeObject):
1108
1109 2010-05-21  Steve Block  <steveblock@google.com>
1110
1111         Reviewed by Jeremy Orlow.
1112
1113         Add DeviceOrientation and DeviceOrientationClient
1114         https://bugs.webkit.org/show_bug.cgi?id=39479
1115
1116         * WebView/WebView.mm:
1117         (-[WebView _commonInitializationWithFrameName:groupName:usesDocumentViews:]):
1118
1119 2010-05-20  Mike Thole  <mthole@apple.com>
1120
1121         Reviewed by Dave Hyatt.
1122
1123         When using a scale factor > 1, scrollbars sometimes appear when not necessary
1124         https://bugs.webkit.org/show_bug.cgi?id=39458
1125
1126         * WebView/WebDynamicScrollBarsView.mm:
1127         (-[WebDynamicScrollBarsView updateScrollers]): Round up non-integral sizes from AppKit
1128         so that they can be compared against the integral document size.
1129
1130 2010-05-20  Kevin Decker  <kdecker@apple.com>
1131
1132         Reviewed by Anders Carlsson.
1133
1134         https://bugs.webkit.org/show_bug.cgi?id=39441
1135         <rdar://problem/7985715> Flash context menu is both horizontally and vertically offset from point of click
1136         <rdar://problem/7986109> Youtube video controller UI entirely missing
1137         <rdar://problem/7986154> Flash content paints at horizontally and vertically shifted locations (within the plug-in region)
1138
1139         * Plugins/Hosted/WebHostedNetscapePluginView.mm:
1140         (-[WebHostedNetscapePluginView updateAndSetWindow]): The base coordinates of a window and
1141          it's contentView happen to be the equal at a userSpaceScaleFactor of 1. For non-1.0 scale
1142          factors this assumption is false. Accordingly we now convert to the window contentView
1143         coordinate system when computing bounds in "window" and the visible rect.
1144         * Plugins/WebNetscapePluginView.mm:
1145         (-[WebNetscapePluginView saveAndSetNewPortStateForUpdate:]): Ditto.
1146
1147 2010-05-20  Steve Block  <steveblock@google.com>
1148
1149         Reviewed by Jeremy Orlow.
1150
1151         Provide bindings for DeviceOrientation
1152         https://bugs.webkit.org/show_bug.cgi?id=39210
1153
1154         Adds ENABLE_DEVICE_ORIENTATION to XCode project file, always disabled.
1155
1156         * Configurations/FeatureDefines.xcconfig:
1157
1158 2010-05-20  Martin Robinson  <mrobinson@webkit.org>
1159
1160         Reviewed by Ojan Vafai.
1161
1162         Expose the editing behavior setting in DRT to test all editing code paths
1163         https://bugs.webkit.org/show_bug.cgi?id=38603
1164
1165         * WebView/WebFrame.mm:
1166         (core):
1167         * WebView/WebFrameInternal.h: Added a conversion method from the API enum to the WebCore enum.
1168         * WebView/WebPreferenceKeysPrivate.h: Added a preference key for the new setting.
1169         * WebView/WebPreferences.mm:
1170         (+[WebPreferences initialize]): Initialize the EditingBehavior to Mac style.
1171         (-[WebPreferences editingBehavior]): Added.
1172         (-[WebPreferences setEditingBehavior:]): Added.
1173         * WebView/WebPreferencesPrivate.h: Added the new API points to the private API.
1174         * WebView/WebView.mm:
1175         (-[WebView _preferencesChangedNotification:]): Set the editing behavior via the WebPreferences setting.
1176
1177 2010-05-19  Anders Carlsson  <andersca@apple.com>
1178
1179         Reviewed by Kevin Decker and Simon Fraser.
1180
1181         <rdar://problem/8004528> 
1182         REGRESSION: Coordinate system for Core Animation NPAPI plug-ins is flipped with accelerated compositing turned on
1183         
1184         When needed, create a new CALayer and set it's geometry to be flipped. Add the plug-in layer as a sublayer and then return
1185         the newly created layer.
1186
1187         * Plugins/Hosted/WebHostedNetscapePluginView.mm:
1188         (-[WebHostedNetscapePluginView createPlugin]):
1189         * Plugins/WebNetscapePluginView.mm:
1190         (-[WebNetscapePluginView createPlugin]):
1191
1192 2010-05-18  Tony Chang  <tony@chromium.org>
1193
1194         Reviewed by Darin Adler.
1195
1196         https://bugs.webkit.org/show_bug.cgi?id=24943
1197         Command-B and Command-I do not generate keydown events in contentEditable regions.
1198
1199         Manual test because performKeyEquivalent is not called by DRT.
1200
1201         Test: manual-tests/style-keypress-events.html
1202
1203         * WebView/WebHTMLView.mm:
1204         (-[WebHTMLView performKeyEquivalent:]): Move style key handling until after webcore gets a chance to handle the event
1205
1206 2010-05-18  Daniel Cheng  <dcheng@chromium.org>
1207
1208         Reviewed by Darin Adler, Jian Li.
1209
1210         DragData::asURL() shouldn't do file validity checks
1211         https://bugs.webkit.org/show_bug.cgi?id=38711
1212
1213         Change [NSPasteboard _web_bestURL] to still return a file URL for paths
1214         that don't exist. Callers who care about the existence of the file or
1215         whether or not it is a directory should check themselves when they
1216         want to use the file. The directory check has been left in for now,
1217         since the Mac implementation of ResourceHandle, which uses this function
1218         indirectly via DragController::performDrag) handles directories somewhat
1219         non-intuitively: it opens the parent directory in the Finder, rather
1220         than opening the directory itself.
1221
1222         * Misc/WebNSPasteboardExtras.mm:
1223         (-[NSPasteboard _web_bestURL]):
1224
1225 2010-05-18  Eric Seidel  <eric@webkit.org>
1226
1227         Reviewed by Adam Barth (and Maciej Stachowiak).
1228
1229         Make it possible to enable the new HTML5Tokenizer for testing
1230         https://bugs.webkit.org/show_bug.cgi?id=39275
1231
1232         Expose the WebCore::Settings::html5ParserEnabled as a private WebKit setting.
1233
1234         * WebView/WebPreferenceKeysPrivate.h:
1235         * WebView/WebPreferences.mm:
1236         (-[WebPreferences html5ParserEnabled]):
1237         (-[WebPreferences setHTML5ParserEnabled:]):
1238         * WebView/WebPreferencesPrivate.h:
1239         * WebView/WebView.mm:
1240         (-[WebView _preferencesChangedNotification:]):
1241
1242 2010-05-17  Sheriff Bot  <webkit.review.bot@gmail.com>
1243
1244         Unreviewed, rolling out r59652.
1245         http://trac.webkit.org/changeset/59652
1246         https://bugs.webkit.org/show_bug.cgi?id=39268
1247
1248         file-input-files-access test is broken on Mac (Requested by
1249         dcheng on #webkit).
1250
1251         * Misc/WebNSPasteboardExtras.mm:
1252         (-[NSPasteboard _web_bestURL]):
1253
1254 2010-05-17  Daniel Cheng  <dcheng@chromium.org>
1255
1256         Reviewed by Darin Adler.
1257
1258         DragData::asURL() shouldn't do file validity checks
1259         https://bugs.webkit.org/show_bug.cgi?id=38711
1260
1261         Change [NSPasteboard _web_bestURL] to still return a file URL for paths
1262         that don't exist. Callers who care about the existence of the file or
1263         whether or not it is a directory should check themselves when they
1264         want to use the file. The directory check has been left in for now,
1265         since the Mac implementation of ResourceHandle, which uses this function
1266         indirectly via DragController::performDrag) handles directories somewhat
1267         non-intuitively: it opens the parent directory in the Finder, rather
1268         than opening the directory itself.
1269
1270         * Misc/WebNSPasteboardExtras.mm:
1271         (-[NSPasteboard _web_bestURL]):
1272
1273 2010-05-14  Stephanie Lewis  <slewis@apple.com>
1274
1275         Rubber-stamped by Mark Rowe.
1276
1277         Update order files.
1278
1279         * WebKit.order:
1280
1281 2010-05-13  Timothy Hatcher  <timothy@apple.com>
1282
1283         Allow reporting exceptions that occur when using JavaScriptCore APIs
1284         to the Web Inspector.
1285
1286         <rdar://problem/7975410>
1287
1288         Reviewed by Sam Weinig.
1289
1290         * WebView/WebView.mm:
1291         (+[WebView _reportException:inContext:]): Call WebCore::reportException after checking
1292         that the global object is a DOMWindow.
1293         * WebView/WebViewPrivate.h: Added _reportException:inContext:.
1294
1295 2010-05-13  Alexey Proskuryakov  <ap@apple.com>
1296
1297         Reviewed by Darin Adler.
1298
1299         https://bugs.webkit.org/show_bug.cgi?id=39089
1300         <rdar://problem/7974044> Domain names in Russian '.рф' domain are displayed as punycode
1301
1302         Add a custom check for this domain. Currently, this is the only non-ASCII TLD, we'll
1303         investigate a more extensible solution when there are more, and we know what the
1304         typical restictions are.
1305
1306         * Misc/WebNSURLExtras.mm:
1307         (allCharactersAllowedByTLDRules):
1308         (-[NSString _web_mapHostNameWithRange:encode:makeString:]):
1309
1310 2010-05-12  Simon Fraser  <simon.fraser@apple.com>
1311
1312         Reviewed by David Hyatt.
1313
1314         Composited plug-ins can cause missed painting
1315         https://bugs.webkit.org/show_bug.cgi?id=39033
1316         <rdar://problem/7972478>
1317         
1318         Eagerly enable compositing mode via the enclosing FrameView when the plug-in tells us it wants
1319         to do compositing.
1320
1321         * Plugins/Hosted/WebHostedNetscapePluginView.mm:
1322         (-[WebHostedNetscapePluginView createPlugin]):
1323         * Plugins/WebNetscapePluginView.mm:
1324         (-[WebNetscapePluginView createPlugin]):
1325
1326 2010-05-12  Jer Noble  <jer.noble@apple.com>
1327
1328         Reviewed by Darin Adler.
1329
1330         Bug 38689: #34005 will break fullscreen video playback
1331         https://bugs.webkit.org/show_bug.cgi?id=38689
1332
1333         Use the new definition of PlatformMedia to check the actual type 
1334         returned by MediaPlayer.
1335         
1336         * WebView/WebVideoFullscreenController.mm:
1337         (-[WebVideoFullscreenController windowDidLoad]):
1338
1339 2010-05-11  Mark Rowe  <mrowe@apple.com>
1340
1341         Fix the world.
1342
1343         In r59162 a change was made to WebCore's FeatureDefines.xcconfig that enabled FILE_READER and FILE_WRITER.
1344         The author and reviewer of that patch ignored the carefully-worded warning at the top of that file asking
1345         that changes to the file be kept in sync across JavaScriptCore, WebCore and WebKit, as well as being kept
1346         in sync with build-webkit.  This led to WebCore and WebKit having different views of Document's vtable
1347         and results in crashes in Safari shortly after launch when virtual function calls resulted in the wrong
1348         function in WebCore being called.
1349
1350         We fix this by bringing the FeatureDefines.xcconfig files in to sync.  Based on the ChangeLog message and
1351         other changes in r59162 it appears that enabling FILE_WRITER was unintentional so that particular change
1352         has been reverted.
1353
1354         * Configurations/FeatureDefines.xcconfig:
1355
1356 2010-05-10  Simon Fraser  <simon.fraser@apple.com>
1357
1358         Reviewed by Anders Carlsson.
1359
1360         Allow compositing layers to be connected across iframe boundaries on Mac
1361         https://bugs.webkit.org/show_bug.cgi?id=38856
1362         
1363         When painting an iframe into a compositing layer, the "PaintBehaviorFlattenCompositingLayers"
1364         flag was mistakenly set, because we'd detect that we were drawing into a bitmap. This caused
1365         content to show up in both compositing layers, and the painted background inside the iframe.
1366         
1367         Fix by taking the flattening state from the parent frame, if there is one. For the root
1368         frame, we continue to look to see if we're painting into a bitmap.
1369
1370         * WebView/WebFrame.mm:
1371         (-[WebFrame _drawRect:contentsOnly:]):
1372
1373 2010-05-10  Timothy Hatcher  <timothy@apple.com>
1374
1375         Fix a crash when closing a WebView while the Web Inspector is open.
1376
1377         <rdar://problem/7966830>
1378
1379         Reviewed by Mark Rowe.
1380
1381         * WebCoreSupport/WebInspectorClient.mm:
1382         (-[WebInspectorWindowController destroyInspectorView]): Null check Page since it can be null.
1383         * WebView/WebView.mm:
1384         (-[WebView _close]): Null out _private->page before deleting the page, so code called
1385         during destruction don't access a half deleted Page object.
1386
1387 2010-05-10  Anders Carlsson  <andersca@apple.com>
1388
1389         Unbreak the world. (Fix Mac builds).
1390
1391         * Plugins/Hosted/WebKitPluginHostTypes.h:
1392
1393 2010-05-10  Anders Carlsson  <andersca@apple.com>
1394
1395         Reviewed by Simon Fraser.
1396
1397         Change the order of the RendererType enum values, so that old versions of WebKitPluginHost will
1398         use accelerated compositing and not layer backed views.
1399
1400         * Plugins/Hosted/WebKitPluginHostTypes.h:
1401
1402 2010-05-07  Anders Carlsson  <andersca@apple.com>
1403
1404         Reviewed by Sam Weinig and Simon Fraser.
1405
1406         <rdar://problem/7947356>
1407         QT Plug-in in hardware-accelerated WebKit is missing the controller
1408
1409         Replace the useSoftwareRenderer boolean with an enum that lets the plug-in host opt into using a layer
1410         backed NSView instead of inserting the layer into the WebCore layer hierarchy.
1411
1412         * Plugins/Hosted/NetscapePluginHostManager.mm:
1413         (WebKit::NetscapePluginHostManager::instantiatePlugin):
1414         * Plugins/Hosted/NetscapePluginHostProxy.mm:
1415         (WKPCInstantiatePluginReply):
1416         * Plugins/Hosted/NetscapePluginInstanceProxy.h:
1417         (WebKit::NetscapePluginInstanceProxy::rendererType):
1418         (WebKit::NetscapePluginInstanceProxy::setRendererType):
1419         (WebKit::NetscapePluginInstanceProxy::InstantiatePluginReply::InstantiatePluginReply):
1420         * Plugins/Hosted/NetscapePluginInstanceProxy.mm:
1421         (WebKit::NetscapePluginInstanceProxy::NetscapePluginInstanceProxy):
1422         Replace the useSoftwareRenderer boolean everywhere with the RendererType enum.
1423         
1424         * Plugins/Hosted/WebHostedNetscapePluginView.mm:
1425         (-[WebHostedNetscapePluginView createPlugin]):
1426         Only go into full compositing mode when the renderer type returned is UseAcceleratedCompositing.
1427         Otherwise, use a layer backed NSView.
1428
1429         * Plugins/Hosted/WebKitPluginHostTypes.h:
1430         Add a RendererType enum.
1431
1432 2010-05-06  Anders Carlsson  <andersca@apple.com>
1433
1434         Reviewed by Darin Adler and Dan Bernstein..
1435
1436         REGRESSION (r51617): when plugins are disabled, plugins show up as garbage characters
1437         https://bugs.webkit.org/show_bug.cgi?id=38698
1438         <rdar://problem/7942075>
1439
1440         When the plug-in database is initialized, we will register all the MIME types it supports with the global
1441         WebView dictionary. When plug-ins are disabled for a single web view, the MIME types still need to be 
1442         in the global mapping (because other web views might still have plug-ins enabled).
1443         
1444         Prior to r51617 we would always look at the plug-in database to determine that the MIME type belongs to a 
1445         plug-in, but now we won't even touch the plug-in database when plug-ins are disabled.
1446         
1447         In order to fix this, a new set of registered MIME types that are known to be plug-ins is added. When
1448         +[WebView _viewClass:andRepresentationClass:forMIMEType:allowingPlugins:] is called and allowingPlugins is FALSE
1449         we check if the MIME type is a known plug-in MIME type and return false in that case.
1450         
1451         * Plugins/WebPluginDatabase.mm:
1452         (-[WebPluginDatabase refresh]):
1453         (-[WebPluginDatabase _removePlugin:]):
1454         * WebView/WebView.mm:
1455         (knownPluginMIMETypes):
1456         (+[WebView _registerPluginMIMEType:]):
1457         (+[WebView _unregisterPluginMIMEType:]):
1458         (+[WebView _viewClass:andRepresentationClass:forMIMEType:allowingPlugins:]):
1459         * WebView/WebViewInternal.h:
1460
1461 2010-05-06  Dan Bernstein  <mitz@apple.com>
1462
1463         Reviewed by Simon Fraser.
1464
1465         <rdar://problem/7951285> REGRESSION (r58847): Composited iframe content obscures Safari's application chrome
1466
1467         Fixed this other regression from r58847. The regression was caused by overriding -visibleRect to
1468         return the WebClipView’s full bounds. AppKit uses -visibleRect to determine the geometry
1469         of the surface for the child WebFrameView. The fix is to restrict the special behavior of
1470         -[WebClipView visibleRect] to when AppKit is consulting it for the purpose of invalidating
1471         areas while scrolling.
1472
1473         * WebView/WebClipView.h:
1474         * WebView/WebClipView.mm:
1475         (-[WebClipView visibleRect]): If the WebClipView is not scrolling, always return
1476         [super visibleRect]. 
1477         (-[WebClipView _immediateScrollToPoint:]): Override this internal NSClipView method
1478         to set a flag telling -visibleRect that the view is scrolling.
1479         * WebView/WebView.mm:
1480         (layerSyncRunLoopObserverCallBack): Ensure that screen updates, disabled by AppKit
1481         when it thinks an upcoming window flush will re-enable them, are enabled here in
1482         case the -setNeedsDisplayInRect: override has prevented the window from needing to be
1483         flushed.
1484
1485 2010-05-06  Steve Block  <steveblock@google.com>
1486
1487         Reviewed by Eric Seidel.
1488
1489         MAC_JAVA_BRIDGE should be renamed JAVA_BRIDGE
1490         https://bugs.webkit.org/show_bug.cgi?id=38544
1491
1492         * WebCoreSupport/WebFrameLoaderClient.h:
1493         * WebCoreSupport/WebFrameLoaderClient.mm:
1494
1495 2010-05-05  Dan Bernstein  <mitz@apple.com>
1496
1497         Reviewed by Mark Rowe.
1498
1499         Fixed a crash when closing Top Sites after r58847.
1500
1501         * WebView/WebFrameView.mm:
1502         (-[WebFrameView webFrame]): Null-check _private.
1503
1504 2010-05-05  Dan Bernstein  <mitz@apple.com>
1505
1506         Rubber-stamped by Mark Rowe.
1507
1508         Fixed test crashes after r58847.
1509
1510         * WebView/WebHTMLView.mm:
1511         (setNeedsDisplayInRect): Null-check the frame.
1512
1513 2010-05-05  Dan Bernstein  <mitz@apple.com>
1514
1515         Reviewed by Simon Fraser.
1516
1517         <rdar://problem/7932072> Iframes in composited layers don’t repaint correctly (affects Yahoo! Mail with Flash Player 10.1)
1518         https://bugs.webkit.org/show_bug.cgi?id=38427
1519
1520         * WebView/WebClipView.m: Renamed to WebClipView.mm.
1521         * WebView/WebClipView.mm:
1522         (-[WebClipView visibleRect]): Added this override, which for instances used for WebFrameViews in
1523         composited layers, returns the clip view’s entire bounds. This prevents drawing from being clipped to
1524         AppKit’s idea of what part of the view would be visible if it was drawn as part of the view hierarchy.
1525         Since it is drawn into a compositing layer, that’s irrelevant, and we should not be clipping.
1526         * WebView/WebHTMLView.mm:
1527         (setCursor): Style tweak.
1528         (setNeedsDisplayInRect): Added. Replaces the default implementation of -[NSView setNeedsDisplayInRect:],
1529         so that if the receiver is a descendant of a WebFrameView that draws into a composited layer, the invalidation
1530         is routed back through the WebCore FrameView, which propagates it to the layer.
1531         (+[WebHTMLViewPrivate initialize]): Swizzle the setNeedsDisplayInRect: override in.
1532         (-[WebHTMLView visibleRect]): Removed whitespace.
1533         * WebView/WebView.mm:
1534         (layerSyncRunLoopObserverCallBack): If we bailed out on syncing, due to pending layout, do an eager layout
1535         in preparation for the displaying of compositing layers.
1536
1537 2010-05-05  John Sullivan  <sullivan@apple.com>
1538
1539         <rdar://problem/7942606> Output appears in Console when exiting Safari with multiple windows opened
1540
1541         Reviewed by Mark Rowe.
1542
1543         * WebView/WebView.mm:
1544         (+[WebView closeAllWebViews]):
1545         Make copy of allWebViewsSet to avoid mutating it while iterating through it.
1546
1547 2010-05-04  Simon Fraser  <simon.fraser@apple.com>
1548
1549         Reviewed by Dan Bernstein.
1550
1551         Improve check for drawing into the window that was added in r58623
1552         https://bugs.webkit.org/show_bug.cgi?id=38562
1553         
1554         Rather than assuming that any non-bitmap context is the window's context,
1555         compare the current graphics context with -[NSWindow graphicsContext] to
1556         determine that we're drawing into the window.
1557
1558         * WebView/WebHTMLView.mm:
1559         (-[WebHTMLView drawRect:]):
1560
1561 2010-05-04  Ada Chan  <adachan@apple.com>
1562
1563         Reviewed by David Kilzer.
1564
1565         https://bugs.webkit.org/show_bug.cgi?id=38555
1566         
1567         Small code refactoring: move the logic to figure out the path to the 
1568         databases directory to another method.
1569
1570         * Storage/WebDatabaseManager.mm:
1571         (databasesDirectoryPath):
1572         (WebKitInitializeDatabasesIfNecessary):
1573
1574 2010-05-04  Beth Dakin  <bdakin@apple.com>
1575
1576         Reviewed by Mike Thole.
1577
1578         Fix for <rdar://problem/7818509> Crash occurs when exiting Safari
1579
1580         We can avoid this crash if we call [self _removeFromAllWebViewsSet] 
1581         even in the case when we are doing a fastDocumentTeardown. This is 
1582         a much safer approach.
1583         * WebView/WebView.mm:
1584         (-[WebView _close]):
1585
1586 2010-05-03  Abhishek Arya  <inferno@chromium.org>
1587
1588         Reviewed by Adam Barth.
1589
1590         Add support for controlling clipboard access from javascript.
1591         Clipboard access from javascript is disabled by default.
1592         https://bugs.webkit.org/show_bug.cgi?id=27751
1593
1594         * WebView/WebPreferenceKeysPrivate.h:
1595         * WebView/WebPreferences.mm:
1596         (+[WebPreferences initialize]):
1597         (-[WebPreferences javaScriptCanAccessClipboard]):
1598         (-[WebPreferences setJavaScriptCanAccessClipboard:]):
1599         * WebView/WebPreferencesPrivate.h:
1600         * WebView/WebView.mm:
1601         (-[WebView _preferencesChangedNotification:]):
1602
1603 2010-05-03  Jens Alfke  <snej@chromium.org>
1604
1605         Reviewed by Darin Fisher.
1606
1607         [chromium] Add "willSendSubmitEvent" hook to WebFrameClient and FrameLoaderClient
1608         https://bugs.webkit.org/show_bug.cgi?id=38397
1609
1610         No tests (functionality is exposed only through native WebKit API.)
1611
1612         * WebCoreSupport/WebFrameLoaderClient.h:
1613         (WebFrameLoaderClient::dispatchWillSendSubmitEvent):
1614
1615 2010-04-30  Simon Fraser  <simon.fraser@apple.com>
1616
1617         Reviewed by Dan Bernstein.
1618
1619         <rdar://problem/7477071> REGRESSION: Bad flicker when wheel-scrolling Google Maps, iPad gallery and other sites
1620
1621         Sites that frequently toggle content in and out of compositing layers (like http://www.tumblr.com/boothed)
1622         can cause flickering because of unsychronized compositing layer and view-based updates. There were two
1623         underlying issues:
1624         
1625         1. On SnowLeopard, AppKit can throttle window updates, thus breaking an assumption that
1626            NSView drawing will happen on the runloop cycle after a repaint. This provided a window
1627            for the layerSyncRunLoopObserver to fire and commit layer changes too early.
1628            
1629            Fix this by having the layerSyncRunLoopObserver in WebView check to see if a display is pending,
1630            and not commit layer changes in that case. We'll commit layer changes later when we
1631            finally draw.
1632            
1633         2. The change in r49269 was wrong; it was attempting to fix an issue that was actually caused
1634            by -drawRects: coming in for page snapshots. The correct approach is to avoid hitting the
1635            synchronization and update disabling code in WebHTMLView for draws that are not to the screen.
1636         
1637         * WebView/WebHTMLView.mm:
1638         (-[WebHTMLView drawRect:]):
1639         * WebView/WebView.mm:
1640         (layerSyncRunLoopObserverCallBack):
1641         (-[WebView _scheduleCompositingLayerSync]):
1642
1643 2010-04-30  Anders Carlsson  <andersca@apple.com>
1644
1645         Part of the previous part (forgot to save).
1646
1647         * Plugins/WebNetscapePluginView.mm:
1648         (-[WebNetscapePluginView stopTimers]):
1649         (-[WebNetscapePluginView startTimers]):
1650         (-[WebNetscapePluginView checkIfAllowedToLoadURL:frame:callbackFunc:context:]):
1651         (-[WebNetscapePluginView _containerCheckResult:contextInfo:]):
1652         (-[WebNetscapePluginView cancelCheckIfAllowedToLoadURL:]):
1653         (-[WebNetscapePluginView scheduleTimerWithInterval:repeat:timerFunc:]):
1654         (-[WebNetscapePluginView unscheduleTimer:]):
1655         (-[WebNetscapePluginView getVariable:forURL:value:length:]):
1656         (-[WebNetscapePluginView setVariable:forURL:value:length:]):
1657
1658 2010-04-30  Anders Carlsson  <andersca@apple.com>
1659
1660         Reviewed by Darin Adler.
1661
1662         Use C99 integer types in more places.
1663
1664         * Plugins/WebNetscapePluginView.mm:
1665         (getNPRect):
1666
1667 2010-04-30  Anders Carlsson  <andersca@apple.com>
1668
1669         Fix Tiger build.
1670
1671         * Plugins/WebBaseNetscapePluginStream.h:
1672         * Plugins/WebBaseNetscapePluginStream.mm:
1673         (WebNetscapePluginStream::startStream):
1674
1675 2010-04-30  Anders Carlsson  <andersca@apple.com>
1676
1677         Another 32-bit build fix.
1678
1679         * Plugins/WebNetscapePluginView.mm:
1680         (-[WebNetscapePluginView saveAndSetNewPortStateForUpdate:]):
1681
1682 2010-04-30  Anders Carlsson  <andersca@apple.com>
1683
1684         Fix 32-bit build (again).
1685
1686         * Plugins/WebNetscapeContainerCheckContextInfo.h:
1687         * Plugins/WebNetscapeContainerCheckContextInfo.mm:
1688         (-[WebNetscapeContainerCheckContextInfo initWithCheckRequestID:callbackFunc:context:]):
1689         (-[WebNetscapeContainerCheckContextInfo checkRequestID]):
1690         (-[WebNetscapeContainerCheckContextInfo callback]):
1691         * Plugins/WebNetscapePluginPackage.h:
1692
1693 2010-04-30  Anders Carlsson  <andersca@apple.com>
1694
1695         Fix 32-bit build.
1696
1697         * Plugins/WebNetscapeContainerCheckContextInfo.h:
1698         * Plugins/WebNetscapeContainerCheckContextInfo.mm:
1699         (-[WebNetscapeContainerCheckContextInfo initWithCheckRequestID:callbackFunc:context:]):
1700         * Plugins/WebNetscapeContainerCheckPrivate.h:
1701         * Plugins/WebNetscapePluginPackage.mm:
1702         (functionPointerForTVector):
1703         * Plugins/WebNetscapePluginView.mm:
1704         (PluginTimer::PluginTimer):
1705         (-[WebNetscapePluginView checkIfAllowedToLoadURL:frame:callbackFunc:context:]):
1706         (-[WebNetscapePluginView scheduleTimerWithInterval:repeat:timerFunc:]):
1707
1708 2010-04-30  Anders Carlsson  <andersca@apple.com>
1709
1710         Reviewed by Timothy Hatcher.
1711
1712         Next step towards fixing
1713         
1714         https://bugs.webkit.org/show_bug.cgi?id=20784
1715         move npapi.h to C99 integer types
1716
1717         Use the C99 types everywhere. The "old" types are still around but will be removed
1718         in a subsequent commit.
1719
1720         * Plugins/WebBaseNetscapePluginStream.h:
1721         * Plugins/WebBaseNetscapePluginStream.mm:
1722         (WebNetscapePluginStream::deliverData):
1723         * Plugins/WebNetscapePluginView.h:
1724         * Plugins/WebNetscapePluginView.mm:
1725         (-[WebNetscapePluginView saveAndSetNewPortStateForUpdate:]):
1726         (-[WebNetscapePluginView getAuthenticationInfoWithProtocol:host:port:scheme:realm:username:usernameLength:password:passwordLength:]):
1727         * Plugins/npapi.mm:
1728         (NPN_MemAlloc):
1729         (NPN_MemFlush):
1730         (NPN_PostURLNotify):
1731         (NPN_PostURL):
1732         (NPN_Write):
1733         (NPN_ScheduleTimer):
1734         (NPN_UnscheduleTimer):
1735         (NPN_GetValueForURL):
1736         (NPN_SetValueForURL):
1737         (NPN_GetAuthenticationInfo):
1738         (WKN_CheckIfAllowedToLoadURL):
1739         (WKN_CancelCheckIfAllowedToLoadURL):
1740
1741 2010-04-29  Anders Carlsson  <andersca@apple.com>
1742
1743         Reviewed by Dan Bernstein.
1744
1745         First part of
1746         https://bugs.webkit.org/show_bug.cgi?id=20784
1747         move npapi.h to C99 integer types.
1748
1749         * MigrateHeaders.make:
1750
1751 2010-04-28  Mike Thole  <mthole@apple.com>
1752
1753         Reviewed by David Kilzer.
1754
1755         Add canAuthenticateAgainstProtectionSpace() to frame loader so that a protection space 
1756         can be inspected before attempting to authenticate against it
1757         https://bugs.webkit.org/show_bug.cgi?id=38271
1758
1759         * WebCoreSupport/WebFrameLoaderClient.h:
1760         * WebCoreSupport/WebFrameLoaderClient.mm:
1761         (WebFrameLoaderClient::canAuthenticateAgainstProtectionSpace):
1762         Added.  If the resource load delegate implements the callback, use its answer.  If it does
1763         not, then only send authentication challenges for pre-10.6 protection spaces, which matches
1764         CFNetwork's default behavior.
1765         * WebView/WebDelegateImplementationCaching.h:
1766         * WebView/WebDelegateImplementationCaching.mm:
1767         (CallResourceLoadDelegateReturningBoolean): Added case for passing three objects.
1768         * WebView/WebResourceLoadDelegatePrivate.h:
1769         Added private SPI definition: webView:resource:canAuthenticateAgainstProtectionSpace:forDataSource:
1770         * WebView/WebView.mm:
1771         (-[WebView _cacheResourceLoadDelegateImplementations]):
1772
1773 2010-04-28  Simon Fraser  <simon.fraser@apple.com>
1774
1775         Reviewed by Sam Weinig.
1776
1777         <rdar://problem/7918719> ASSERT(isMainThread()) from Font::setShouldUseSmoothing()
1778         
1779         Ensure that the WebView +initialize method initializes threading, so that things are correctly
1780         initialized when the first call into the WebKit framework is via a WebView class method.
1781
1782         * WebView/WebView.mm:
1783         (+[WebView initialize]):
1784
1785 2010-04-28  Darin Adler  <darin@apple.com>
1786
1787         Reviewed by Adele Peterson.
1788
1789         REGRESSION: Autoscroll does not work in Mail messages
1790         https://bugs.webkit.org/show_bug.cgi?id=38267
1791         rdar://problem/7559799
1792
1793         The machinery to make autoscrolling work on Mac OS X when a WebView is embedded in another
1794         view had gotten broken in multiple ways. For some reason, a combination of bugs made it
1795         partly work until around r48064. This brings it back.
1796
1797         * WebCoreSupport/WebChromeClient.mm:
1798         (WebChromeClient::scrollRectIntoView): When converting coordinates, use the document view
1799         rather than the WebView itself. This logic may not be correct for the case where
1800         usesDocumentViews is NO, but that is currently an experimental mode and can be fixed later.
1801
1802 2010-04-27  Shinichiro Hamaji  <hamaji@chromium.org>
1803
1804         Reviewed by Darin Adler and Eric Seidel.
1805
1806         Add layoutTestController.setPrinting()
1807         https://bugs.webkit.org/show_bug.cgi?id=37203
1808
1809         * Misc/WebCoreStatistics.h:
1810         * Misc/WebCoreStatistics.mm:
1811         (-[WebFrame renderTreeAsExternalRepresentationForPrinting:]):
1812
1813 2010-04-25  Sam Weinig  <sam@webkit.org>
1814
1815         Reviewed by Maciej Stachowiak.
1816
1817         Fix for https://bugs.webkit.org/show_bug.cgi?id=38097
1818         Disentangle initializing the main thread from initializing threading
1819
1820         Calls initializeMainThreadToProcessMainThread since there is no way to ensure
1821         that the initialize method will be called on the main thread.
1822
1823         * Carbon/CarbonWindowAdapter.mm:
1824         (+[CarbonWindowAdapter initialize]): Add call to initializeMainThreadToProcessMainThread.
1825         * History/WebBackForwardList.mm:
1826         (+[WebBackForwardList initialize]): Ditto.
1827         * History/WebHistoryItem.mm:
1828         (+[WebHistoryItem initialize]): Ditto.
1829         * Misc/WebElementDictionary.mm:
1830         (+[WebElementDictionary initialize]): Ditto.
1831         * Misc/WebIconDatabase.mm:
1832         (+[WebIconDatabase initialize]): Ditto.
1833         * Plugins/Hosted/WebHostedNetscapePluginView.mm:
1834         (+[WebHostedNetscapePluginView initialize]): Ditto.
1835         * Plugins/WebBaseNetscapePluginView.mm:
1836         (+[WebBaseNetscapePluginView initialize]): Ditto.
1837         * Plugins/WebBasePluginPackage.mm:
1838         (+[WebBasePluginPackage initialize]): Ditto.
1839         * Plugins/WebNetscapePluginView.mm:
1840         (+[WebNetscapePluginView initialize]): Ditto.
1841         * WebCoreSupport/WebEditorClient.mm:
1842         (+[WebEditCommand initialize]): Ditto.
1843         * WebCoreSupport/WebFrameLoaderClient.mm: 
1844         (+[WebFramePolicyListener initialize]): Ditto.
1845         * WebView/WebArchive.mm:
1846         (+[WebArchivePrivate initialize]): Ditto.
1847         * WebView/WebDataSource.mm:
1848         (+[WebDataSourcePrivate initialize]): Ditto.
1849         * WebView/WebHTMLView.mm:
1850         (+[WebHTMLViewPrivate initialize]): Ditto.
1851         (+[WebHTMLView initialize]): Ditto.
1852         * WebView/WebResource.mm:
1853         (+[WebResourcePrivate initialize]): Ditto.
1854         * WebView/WebTextIterator.mm:
1855         (+[WebTextIteratorPrivate initialize]): Ditto.
1856         * WebView/WebView.mm:
1857         * WebView/WebViewData.mm: Ditto.
1858         (+[WebViewPrivate initialize]): Ditto.
1859
1860 2010-04-24  Dan Bernstein  <mitz@apple.com>
1861
1862         Reviewed by Darin Adler.
1863
1864         <rdar://problem/7903728> REGRESSION (r51617): WebView fails to load plug-in MIME types
1865         https://bugs.webkit.org/show_bug.cgi?id=38085
1866
1867         WebView was calling -_webView in a few places where it should have just used itself. It never
1868         makes sense for WebView to call -_webView on itself, and these calls look like they were copied
1869         from similar code in WebHTMLView, WebFrameView and WebDataSource, where -_webView has a different,
1870         useful meaning.
1871
1872         * WebView/WebView.mm:
1873         (-[WebView drawSingleRect:]): Replaced [self _webView] with self.
1874         (-[WebView _viewClass:andRepresentationClass:forMIMEType:]): Replaced [[self _webView] preferences]
1875         with _private->preferences.
1876         (-[WebView _canShowMIMEType:]): Ditto.
1877
1878 2010-04-23  Simon Fraser  <simon.fraser@apple.com>
1879
1880         Reviewed by Anders Carlsson.
1881
1882         <rdar://problem/7894489> When printing Flash, send a drawRect event, rather than NPPrint
1883         
1884         When printing Flash plug-ins in 32-bit, send a drawRect event with a CGContextRef, rather than calling
1885         NPPrint with a GWorldPtr, since Flash prefers the CGContext path.
1886
1887         * Plugins/WebNetscapePluginView.mm:
1888         (-[WebNetscapePluginView drawRect:]):
1889
1890 2010-04-22  David Kilzer  <ddkilzer@apple.com>
1891
1892         <http://webkit.org/b/38029> +[WebTextIteratorPrivate initialize] is missing call to JSC::initializeThreading()
1893
1894         Reviewed by Timothy Hatcher.
1895
1896         Every other Objective-C class that calls
1897         WebCoreObjCFinalizeOnMainThread(self) in +initialize also calls
1898         JSC::initializeThreading().  The WebTextIteratorPrivate class
1899         was the only one missing this call.
1900
1901         * WebView/WebTextIterator.mm:
1902         (+[WebTextIteratorPrivate initialize]): Added call to
1903         JSC::initializeThreading().
1904
1905 2010-04-22  Alexey Proskuryakov  <ap@apple.com>
1906
1907         Rubber-stamped by Mark Rowe.
1908
1909         <rdar://problem/7805969> REGRESSION: iTunes unable to play trailers
1910
1911         Undo the changes made for https://bugs.webkit.org/show_bug.cgi?id=35215 (<rdar://problem/7673157>)
1912         for now. Clients rely on the old behavior, so a fix that changes it will need to account for
1913         those.
1914
1915         * WebCoreSupport/WebFrameLoaderClient.mm: (WebFrameLoaderClient::createPlugin): Pass pluginURL
1916         instead of baseURL again.
1917
1918 2010-04-22  Dave Moore  <davemoore@chromium.org>
1919
1920         Reviewed by Dimitri Glazkov.
1921
1922         Added notification when the favicons for a page are changed
1923         from a script.
1924         The Document object will notify the frame loader, which will
1925         notify the client. Implementations of FrameLoaderClient will
1926         have to add one method; dispatchDidChangeIcons().
1927
1928         https://bugs.webkit.org/show_bug.cgi?id=33812
1929
1930         * WebCoreSupport/WebFrameLoaderClient.h:
1931         * WebCoreSupport/WebFrameLoaderClient.mm:
1932         (WebFrameLoaderClient::dispatchDidChangeIcons):
1933
1934 2010-04-22  Adam Barth  <abarth@webkit.org>
1935
1936         Unreviewed, rolling out r58069.
1937         http://trac.webkit.org/changeset/58069
1938         https://bugs.webkit.org/show_bug.cgi?id=27751
1939
1940         Broke compile on Windows.
1941
1942         * WebView/WebPreferenceKeysPrivate.h:
1943         * WebView/WebPreferences.mm:
1944         (+[WebPreferences initialize]):
1945         * WebView/WebPreferencesPrivate.h:
1946         * WebView/WebView.mm:
1947         (-[WebView _preferencesChangedNotification:]):
1948
1949 2010-04-22  Abhishek Arya  <inferno@chromium.org>
1950
1951         Reviewed by Adam Barth.
1952
1953         Add support for controlling clipboard access from javascript.
1954         Clipboard access from javascript is disabled by default.
1955         https://bugs.webkit.org/show_bug.cgi?id=27751
1956
1957         * WebView/WebPreferenceKeysPrivate.h:
1958         * WebView/WebPreferences.mm:
1959         (+[WebPreferences initialize]):
1960         (-[WebPreferences javaScriptCanAccessClipboard]):
1961         (-[WebPreferences setJavaScriptCanAccessClipboard:]):
1962         * WebView/WebPreferencesPrivate.h:
1963         * WebView/WebView.mm:
1964         (-[WebView _preferencesChangedNotification:]):
1965
1966 2010-04-21  Alexey Proskuryakov  <ap@apple.com>
1967
1968         Reviewed by Shinichiro Hamaji.
1969
1970         https://bugs.webkit.org/show_bug.cgi?id=37964
1971         Fix a typo in comments - Korean encoding name is windows-949, not windows-939
1972
1973         * WebView/WebPreferences.mm: (+[WebPreferences _setInitialDefaultTextEncodingToSystemEncoding]):
1974
1975 2010-04-21  Mark Rowe  <mrowe@apple.com>
1976
1977         Tiger build fix.
1978
1979         * Plugins/WebPluginController.mm: Add an #import that is necessary on Tiger.
1980
1981 2010-04-21  Mark Rowe  <mrowe@apple.com>
1982
1983         Reviewed by Eric Carlson.
1984
1985         <rdar://problem/7313430> Many crashes in Safari inside Flip4Mac below -[NSAlert didEndAlert:returnCode:contextInfo:]
1986
1987         Existing versions of the Flip4Mac WebKit plug-in have an object lifetime bug related to an NSAlert that is
1988         used to notify the user about updates to the plug-in. This bug can result in Safari crashing if the page
1989         containing the plug-in navigates while the alert is displayed (<rdar://problem/7313430>).
1990
1991         The gist of the bug is thus: Flip4Mac sets an instance of the TSUpdateCheck class as the modal delegate of the
1992         NSAlert instance. This TSUpdateCheck instance itself has a delegate. The delegate is set to the WmvPlugin
1993         instance which is the NSView subclass that is exposed to WebKit as the plug-in view. Since this relationship
1994         is that of delegates the TSUpdateCheck does not retain the WmvPlugin. This leads to a bug if the WmvPlugin
1995         instance is destroyed before the TSUpdateCheck instance as the TSUpdateCheck instance will be left with a
1996         pointer to a stale object. This will happen if a page containing the Flip4Mac plug-in triggers a navigation
1997         while the update sheet is visible as the WmvPlugin instance is removed from the view hierarchy and there are
1998         no other references to keep the object alive.
1999
2000         We work around this bug by patching the following two messages:
2001
2002         1) -[NSAlert beginSheetModalForWindow:modalDelegate:didEndSelector:contextInfo:]
2003         2) -[TSUpdateCheck alertDidEnd:returnCode:contextInfo:]
2004
2005         Our override of 1) detects whether it is Flip4Mac's update sheet triggering the alert by checking whether the
2006         modal delegate is an instance of TSUpdateCheck. If it is, it retains the modal delegate's delegate.
2007
2008         Our override of 2) then autoreleases the delegate, balancing the retain we added in 1).
2009
2010         These two overrides have the effect of ensuring that the WmvPlugin instance will always outlive the TSUpdateCheck
2011         instance, preventing the TSUpdateCheck instance from accessing a stale delegate pointer and crashing the application.
2012
2013         * Plugins/WebPluginController.mm:
2014         (-[WebPluginController addPlugin:]): Check whether the plug-in being instantiated is the Flip4Mac plug-in and
2015         install our workaround if it is.
2016         (isKindOfClass): Helper function that checks whether the given object is an instance of the named class.
2017         (WebKit_TSUpdateCheck_alertDidEnd_returnCode_contextInfo_): Autorelease the delegate.
2018         (WebKit_NSAlert_beginSheetModalForWindow_modalDelegate_didEndSelector_contextInfo_): Retain the modal delegate's
2019         delegate if this NSAlert belongs to the Flip4Mac plug-in.
2020         (installFlip4MacPlugInWorkaroundIfNecessary): Swizzle the necessary methods.  We swizzle the TSUpdateCheck methods
2021         first since it is possible that in some versions of Flip4Mac the TSUpdateCheck class may not exist or may not have
2022         the method we're interested in.  In that case we want to bail out before patching any methods.
2023
2024 2010-04-20  Mark Rowe  <mrowe@apple.com>
2025
2026         Reviewed by Maciej Stachowiak.
2027
2028         <rdar://problem/7856151> REGRESSION: NPP_Destroy is not called when page navigates when plug-in is displaying modal dialog
2029
2030         An interaction between the plug-in host and WebKit was resulting in WKPCSetModal being called while
2031         NetscapePluginInstanceProxy was waiting on a reply to the GetScriptableNPObject message. This resulted
2032         in calls to stop the plug-in being deferred due to the presence of plug-in code up the stack.  This
2033         could lead to crashes as it was possible for the plug-in view to be deallocated during the modal runloop.
2034
2035         * Plugins/Hosted/NetscapePluginHostProxy.mm:
2036         (WKPCInvalidateRect):
2037         (WKPCSetModal): Defer the handling of setModal until the next runloop iteration if the host proxy
2038         is already processing requests.  This ensures that there will be no plug-in code on the stack when
2039         the modal runloop is entered, which allows the plug-in to be stopped when the page is navigated while
2040         a modal dialog is displayed.
2041
2042 2010-04-20  Adam Barth  <abarth@webkit.org>
2043
2044         Reviewed by Eric Seidel.
2045
2046         Factor DocumentWriter out of FrameLoader
2047         https://bugs.webkit.org/show_bug.cgi?id=37175
2048
2049         Update these callsites because the method moved to DocumentWriter.
2050
2051         * WebView/WebFrame.mm:
2052         (-[WebFrame _canProvideDocumentSource]):
2053         (-[WebFrame _receivedData:textEncodingName:]):
2054
2055 2010-04-20  Kent Tamura  <tkent@chromium.org>
2056
2057         Reviewed by Darin Adler.
2058
2059         Change a parameter type of chooseIconForFiles()
2060         https://bugs.webkit.org/show_bug.cgi?id=37504
2061
2062         * WebCoreSupport/WebChromeClient.h:
2063         * WebCoreSupport/WebChromeClient.mm:
2064         (WebChromeClient::chooseIconForFiles):
2065
2066 2010-04-20  Sheriff Bot  <webkit.review.bot@gmail.com>
2067
2068         Unreviewed, rolling out r57892.
2069         http://trac.webkit.org/changeset/57892
2070         https://bugs.webkit.org/show_bug.cgi?id=37864
2071
2072         Caused an assertion in Mac builds (Requested by smfr on
2073         #webkit).
2074
2075         * WebView/WebFrame.mm:
2076         (-[WebFrame _getVisibleRect:]):
2077         * WebView/WebFrameView.mm:
2078         (-[WebFrameView _install]):
2079
2080 2010-04-20  Simon Fraser  <simon.fraser@apple.com>
2081
2082         Reviewed by Dan Bernstein.
2083
2084         Clean up RenderPart/RenderPartObject/RenderFrame/RenderEmbeddedObject
2085         https://bugs.webkit.org/show_bug.cgi?id=37741
2086         
2087         Make Frame::ownerRenderer() return a RenderFrameBase* rather than a
2088         RenderPart*, and add the necessary toRenderFrameBase() and isRenderFrameBase().
2089
2090         * WebView/WebFrame.mm:
2091         (-[WebFrame _getVisibleRect:]):
2092         * WebView/WebFrameView.mm:
2093         (-[WebFrameView _install]):
2094
2095 2010-04-19  Dan Bernstein  <mitz@apple.com>
2096
2097         Reviewed by Sam Weinig.
2098
2099         Finish exposing extremal shrink factors WebHTMLView uses when shrinking pages to fit in the
2100         printing width as SPI.
2101
2102         * WebKit.exp: Export _WebHTMLViewPrintingMinimumShrinkFactor and _WebHTMLViewPrintingMaximumShrinkFactor.
2103
2104 2010-04-15  Gavin Barraclough  <barraclough@apple.com>
2105
2106         Reviewed by Sam Weinig & Oliver Hunt.
2107
2108         https://bugs.webkit.org/show_bug.cgi?id=37675
2109         Remove casts/constructors to/from JSC::UString type from WebCore::String
2110         
2111         WebCore's strings should not know about JSC::UString, this should be abstracted
2112         away in the bindings.  Add explicit conversion methods rather than relying on
2113         overloaded cast operators / constructors being implicitly called.
2114
2115         This patch only changes the class String, once this has landed StringImpl, and
2116         hopefully AtomicString too, should follow suit.
2117
2118         * Plugins/Hosted/NetscapePluginHostProxy.mm:
2119         (identifierFromIdentifierRep):
2120         * Plugins/Hosted/NetscapePluginInstanceProxy.mm:
2121         (WebKit::NetscapePluginInstanceProxy::addValueToArray):
2122         (WebKit::NetscapePluginInstanceProxy::moveGlobalExceptionToExecState):
2123         * Plugins/Hosted/ProxyInstance.mm:
2124         (WebKit::ProxyInstance::getPropertyNames):
2125         * WebView/WebFrame.mm:
2126         (-[WebFrame _stringByEvaluatingJavaScriptFromString:forceUserGesture:]):
2127         (-[WebFrame _stringByEvaluatingJavaScriptFromString:withGlobalObject:inScriptWorld:]):
2128         * WebView/WebScriptDebugDelegate.mm:
2129         (-[WebScriptCallFrame evaluateWebScript:]):
2130         * WebView/WebScriptDebugger.mm:
2131         (toNSURL):
2132         * WebView/WebView.mm:
2133         (aeDescFromJSValue):
2134
2135 2010-04-16  Dan Bernstein  <mitz@apple.com>
2136
2137         Reviewed by John Sullivan.
2138
2139         Expose the extremal shrink factors WebHTMLView uses when shrinking pages to fit in the
2140         printing width as SPI.
2141
2142         * WebView/WebHTMLView.mm:
2143         Replaced two macros with constants.
2144         (-[WebHTMLView _beginPrintModeWithPageWidth:shrinkToFit:]): Changed to use the constants.
2145         (-[WebHTMLView _scaleFactorForPrintOperation:]): Ditto.
2146         * WebView/WebHTMLViewPrivate.h: Declared _WebHTMLViewPrintingMinimumShrinkFactor and
2147         _WebHTMLViewPrintingMaximumShrinkFactor.
2148
2149 2010-04-15  Mark Rowe  <mrowe@apple.com>
2150
2151         Reviewed by Sam Weinig.
2152
2153         <rdar://problem/7870651> WebDynamicScrollBarsView.h generates compile errors when included in plain Objective-C files.
2154
2155         * WebView/WebDynamicScrollBarsView.h:
2156
2157 2010-04-15  Adam Roben  <aroben@apple.com>
2158
2159         Export WebUserContentURLPattern from WebKit
2160
2161         Rubber-stamped by Mark Rowe.
2162
2163         * WebKit.exp:
2164
2165 2010-04-15  Dan Bernstein  <mitz@apple.com>
2166
2167         Reviewed by Simon Fraser.
2168
2169         Made consecutive calls to -[WebHTMLView _beginPrintModeWithPageWidth:shrinkToFit:] work
2170         without intermediate calls -[WebHTMLView _endPrintMode].
2171
2172         * WebView/WebHTMLView.mm:
2173         (-[WebHTMLView _setPrinting:minimumPageWidth:maximumPageWidth:adjustViewSize:]):
2174
2175 2010-04-15  Adam Roben  <aroben@apple.com>
2176
2177         Expose UserContentURLPattern as WebKit SPI
2178
2179         Fixes <http://webkit.org/b/37354>.
2180
2181         Reviewed by Tim Hatcher.
2182
2183         * Misc/WebUserContentURLPattern.h: Added.
2184
2185         * Misc/WebUserContentURLPattern.mm: Added.
2186         (-[WebUserContentURLPattern initWithPatternString:]): Initialize
2187         _private and then parse the passed-in string into a
2188         UserContentURLPattern.
2189         (-[WebUserContentURLPattern dealloc]): Release _private.
2190
2191         (-[WebUserContentURLPattern isValid]):
2192         (-[WebUserContentURLPattern scheme]):
2193         (-[WebUserContentURLPattern host]):
2194         (-[WebUserContentURLPattern matchesSubdomains]):
2195         Call through to UserContentURLPattern.
2196
2197 2010-04-13  Geoffrey Garen  <ggaren@apple.com>
2198
2199         Reviewed by Oliver Hunt.
2200
2201         Separated a DOMWrapperWorld's behavior of keeping wrappers alive from
2202         its own lifetime, so a DOMWrapperWorld's controller can throw away
2203         its wrappers even before its refcount reaches 0.
2204
2205         * WebView/WebScriptWorld.h:
2206         * WebView/WebScriptWorld.mm:
2207         (-[WebScriptWorld unregisterWorld]): Exported this function through WebKit.
2208
2209 2010-04-12  Timothy Hatcher  <timothy@apple.com>
2210
2211         SecurityOrigin needs a way to remove individual OriginAccessEntries
2212         https://bugs.webkit.org/show_bug.cgi?id=37449
2213
2214         Reviewed by Dave Hyatt.
2215
2216         * WebView/WebView.mm:
2217         (+[WebView _removeOriginAccessWhitelistEntryWithSourceOrigin:destinationProtocol:destinationHost:allowDestinationSubdomains:]):
2218         Call SecurityOrigin::removeOriginAccessWhitelistEntry.
2219         * WebView/WebViewPrivate.h: Added _removeOriginAccessWhitelistEntryWithSourceOrigin.
2220
2221 2010-04-13  Timothy Hatcher  <timothy@apple.com>
2222
2223         Rename SecurityOrigin::whiteListAccessFromOrigin to addOriginAccessWhitelistEntry.
2224         And SecurityOrigin::resetOriginAccessWhiteLists to resetOriginAccessWhitelists.
2225
2226         SecurityOrigin needs a way to remove individual OriginAccessEntries
2227         https://bugs.webkit.org/show_bug.cgi?id=37449
2228
2229         Reviewed by Dave Hyatt.
2230
2231         * WebView/WebView.mm:
2232         (+[WebView _addOriginAccessWhitelistEntryWithSourceOrigin:destinationProtocol:destinationHost:allowDestinationSubdomains:]):
2233         (+[WebView _resetOriginAccessWhitelists]):
2234         * WebView/WebViewPrivate.h:
2235
2236 2010-04-11  Sheriff Bot  <webkit.review.bot@gmail.com>
2237
2238         Unreviewed, rolling out r57468.
2239         http://trac.webkit.org/changeset/57468
2240         https://bugs.webkit.org/show_bug.cgi?id=37433
2241
2242         Broke the world...  Must have applied the patch wrong
2243         (Requested by abarth on #webkit).
2244
2245         * WebView/WebFrame.mm:
2246         (-[WebFrame _canProvideDocumentSource]):
2247         (-[WebFrame _receivedData:textEncodingName:]):
2248
2249 2010-04-11  Adam Barth  <abarth@webkit.org>
2250
2251         Reviewed by Eric Seidel.
2252
2253         Factor DocumentWriter out of FrameLoader
2254         https://bugs.webkit.org/show_bug.cgi?id=37175
2255
2256         Update these callsites because the method moved to DocumentWriter.
2257
2258         * WebView/WebFrame.mm:
2259         (-[WebFrame _canProvideDocumentSource]):
2260         (-[WebFrame _receivedData:textEncodingName:]):
2261
2262 2010-04-10  Mark Rowe  <mrowe@apple.com>
2263
2264         Reviewed by Dan Bernstein.
2265
2266         <rdar://problem/7845305> Further adoption of formal protocols for delegates.
2267
2268         Move EmptyProtocolDefinitions.h down in to WebCore, and add the new protocols. Adopt the protocols in the appropriate places.
2269
2270         * Misc/EmptyProtocolDefinitions.h: Removed.
2271         * Misc/WebDownload.mm:
2272         * WebKitPrefix.h:
2273
2274 2010-04-09  Jer Noble  <jer.noble@apple.com>
2275
2276         Reviewed by Darin Adler.
2277
2278         Work around QTMovieView bug (<rdar://problem/7712713>) by using a QTMovieLayer instead.
2279         https://bugs.webkit.org/show_bug.cgi?id=37311 / <rdar://problem/7749993>
2280
2281         * WebView/WebVideoFullscreenController.mm:
2282         (-[WebVideoFullscreenController windowDidLoad]):
2283         (-[WebVideoFullscreenController setMediaElement:WebCore::]):
2284
2285 2010-04-09  Alexey Proskuryakov  <ap@apple.com>
2286
2287         Reviewed by Maciej Stachowiak.
2288
2289         https://bugs.webkit.org/show_bug.cgi?id=24572
2290         XMLHttpRequest.statusText returns always "OK" on Mac
2291
2292         * WebCoreSupport/WebSystemInterface.m: (InitWebCoreSystemInterface):
2293
2294 2010-04-09  Eric Seidel  <eric@webkit.org>
2295
2296         Unreviewed, rolling out r57343.
2297         http://trac.webkit.org/changeset/57343
2298         https://bugs.webkit.org/show_bug.cgi?id=37311
2299
2300         Broke Tiger compile.
2301
2302         * WebView/WebVideoFullscreenController.mm:
2303         (-[WebVideoFullscreenController windowDidLoad]):
2304         (-[WebVideoFullscreenController setMediaElement:WebCore::]):
2305
2306 2010-04-09  Dan Bernstein  <mitz@apple.com>
2307
2308         Reviewed by Darin Adler.
2309
2310         <rdar://problem/7846015> REGRESSION (r57332) - Crash in [WebDynamicScrollBarsView(WebInternal) reflectScrolledClipView:] when opening the Downloads window
2311
2312         * WebView/WebDynamicScrollBarsView.mm:
2313         (-[WebDynamicScrollBarsView initWithCoder:]): Added. Calls super and then initializes _private.
2314
2315 2010-04-09  Jer Noble  <jer.noble@apple.com>
2316
2317         Reviewed by Darin Adler.
2318
2319         Work around QTMovieView bug (<rdar://problem/7712713>) by using a QTMovieLayer instead.
2320         https://bugs.webkit.org/show_bug.cgi?id=37311 / <rdar://problem/7749993>
2321
2322         * WebView/WebVideoFullscreenController.mm:
2323         (-[WebVideoFullscreenController windowDidLoad]):
2324         (-[WebVideoFullscreenController setMediaElement:WebCore::]):
2325
2326 2010-04-08  Mark Rowe  <mrowe@apple.com>
2327
2328         Reviewed by John Sullivan.
2329
2330         <rdar://problem/7814899> REGRESSION(r56008): iTunes crashes on quit inside -[NSScrollView dealloc]
2331
2332         In r56008 new instance variables were added to WebDynamicScrollBarsView, increasing its size.
2333         This causes problems for 32-bit applications that derive from WebDynamicScrollBarsView, as the
2334         size and layout of their subclasses is baked in at compile time.  This results in instances
2335         being allocated that are smaller than the new code expects, and may result in the new instance
2336         variables sharing the same memory space as any instance variables that the subclass defines.
2337
2338         We can avoid this problem by having the class contain only a single member that acts as a pointer
2339         to a heap-allocated structure that acts as storage for the real instance variables.  This makes
2340         us free to add instance variables in the future without risk of changing the size of the class.
2341         To ensure that 32-bit applications that are built against this new WebDynamicScrollBarsView header
2342         are able to run against older versions of WebKit we pad the class out to its previous size.  This
2343         results in any subclasses of WebDynamicScrollBarsView being created with a layout that is compatible
2344         with both versions of the code.
2345
2346         This change could potentially break a subclass of WebDynamicScrollBarsView that directly accesses
2347         instance variables of its superclass.  However, this is a private header and no known subclasses
2348         of WebDynamicScrollBarsView access superclass instance variables in this fashion.
2349
2350         * WebView/WebDynamicScrollBarsView.h:
2351         * WebView/WebDynamicScrollBarsView.mm:
2352         (-[WebDynamicScrollBarsView initWithFrame:]):
2353         (-[WebDynamicScrollBarsView dealloc]):
2354         (-[WebDynamicScrollBarsView finalize]):
2355         (-[WebDynamicScrollBarsView setAllowsHorizontalScrolling:]):
2356         (-[WebDynamicScrollBarsView setAllowsScrollersToOverlapContent:]):
2357         (-[WebDynamicScrollBarsView setAlwaysHideHorizontalScroller:]):
2358         (-[WebDynamicScrollBarsView setAlwaysHideVerticalScroller:]):
2359         (-[WebDynamicScrollBarsView horizontalScrollingAllowed]):
2360         (-[WebDynamicScrollBarsView verticalScrollingAllowed]):
2361         (-[WebDynamicScrollBarsView contentViewFrame]):
2362         (-[WebDynamicScrollBarsView tile]):
2363         (-[WebDynamicScrollBarsView setSuppressLayout:]):
2364         (-[WebDynamicScrollBarsView setScrollBarsSuppressed:repaintOnUnsuppress:]):
2365         (-[WebDynamicScrollBarsView updateScrollers]):
2366         (-[WebDynamicScrollBarsView reflectScrolledClipView:]):
2367         (-[WebDynamicScrollBarsView allowsHorizontalScrolling]):
2368         (-[WebDynamicScrollBarsView allowsVerticalScrolling]):
2369         (-[WebDynamicScrollBarsView scrollingModes:WebCore::vertical:WebCore::]):
2370         (-[WebDynamicScrollBarsView horizontalScrollingMode]):
2371         (-[WebDynamicScrollBarsView verticalScrollingMode]):
2372         (-[WebDynamicScrollBarsView setScrollingModes:vertical:andLock:]):
2373         (-[WebDynamicScrollBarsView setHorizontalScrollingModeLocked:]):
2374         (-[WebDynamicScrollBarsView setVerticalScrollingModeLocked:]):
2375         (-[WebDynamicScrollBarsView setScrollingModesLocked:]):
2376         (-[WebDynamicScrollBarsView horizontalScrollingModeLocked]):
2377         (-[WebDynamicScrollBarsView verticalScrollingModeLocked]):
2378         (-[WebDynamicScrollBarsView scrollWheel:]):
2379
2380 2010-04-07  David Hyatt  <hyatt@apple.com>
2381
2382         Reviewed by Oliver Hunt.
2383
2384         https://bugs.webkit.org/show_bug.cgi?id=24300, don't expose history info via CSS
2385
2386         Add SPI so that layout tests can access computed style including :visited information.
2387
2388         * WebView/WebRenderNode.mm:
2389         (copyRenderNode):
2390         * WebView/WebView.mm:
2391         (-[WebView _computedStyleIncludingVisitedInfo:forElement:]):
2392         * WebView/WebViewInternal.h:
2393         * WebView/WebViewPrivate.h:
2394
2395 2010-04-07  Dan Bernstein  <mitz@apple.com>
2396
2397         Reviewed by Adele Peterson.
2398
2399         Refactor WebHTMLView printing code and add private methods to enter and exit printing mode.
2400         https://bugs.webkit.org/show_bug.cgi?id=37246
2401
2402         * Misc/WebNSPrintOperationExtras.h: Declared -_web_availablePaperWidth and -_web_availablePaperHeight.
2403         * Misc/WebNSPrintOperationExtras.m:
2404         (-[NSPrintOperation _web_availablePaperWidth]): Turned -[WebHTMLView _availablePaperWidthForPrintOperation:]
2405         into this method.
2406         (-[NSPrintOperation _web_availablePaperHeight]): Turned -[WebHTMLView _calculatePrintHeight] into this
2407         method.
2408         * WebView/WebHTMLView.mm:
2409         (-[WebHTMLView _isInPrintMode]): Added this accessor.
2410         (-[WebHTMLView _beginPrintModeWithPageWidth:shrinkToFit:]): Added. Moved the code from -knowsPageRange: that
2411         computes the layout widths and enters printing mode into this private method.
2412         (-[WebHTMLView _endPrintMode]): New private method (the old -_endPrintMode has been renamed).
2413         (-[WebHTMLView _scaleFactorForPrintOperation:]): Use -[NSPrintOperation _web_availablePaperWidth].
2414         (-[WebHTMLView _endPrintModeAndRestoreWindowAutodisplay]): Renamed -_endPrintMode to this, changed it to call
2415         _endPrintMode.
2416         (-[WebHTMLView _delayedEndPrintMode:]): Updated for rename.
2417         (-[WebHTMLView knowsPageRange:]): Use -_beginPrintModeWithPageWidth:shrintToFit:,
2418         -[NSPrintOperation _web_availablePaperWidth], and -[NSPrintOperation _web_availablePaperHeight]. Updated for
2419         rename.
2420         (-[WebHTMLView beginDocument]): Updated for rename.
2421         (-[WebHTMLView endDocument]): Ditto.
2422         * WebView/WebHTMLViewPrivate.h: Declared new private methods -_isInPrintMode,
2423         -_beginPrintModeWithPageWidth:shrinkToFit: and -_endPrintMode.
2424
2425 2010-04-07  Andrey Kosyakov  <caseq@chromium.org>
2426
2427         Reviewed by Yury Semikhatsky.
2428
2429         Removed redundant FrameLoaderClient::dispatchDidLoadResourceByXMLHttpRequest()
2430         https://bugs.webkit.org/show_bug.cgi?id=36949
2431
2432         * WebCoreSupport/WebFrameLoaderClient.h:
2433         * WebCoreSupport/WebFrameLoaderClient.mm:
2434
2435 2010-04-06  Dan Bernstein  <mitz@apple.com>
2436
2437         Tiger build fix after r57184.
2438
2439         * WebView/WebHTMLViewPrivate.h:
2440
2441 2010-04-06  Dan Bernstein  <mitz@apple.com>
2442
2443         Tiger build fix after r57184.
2444
2445         * WebView/WebHTMLViewPrivate.h:
2446
2447 2010-04-06  Adam Barth  <abarth@webkit.org>
2448
2449         Unreviewed.
2450
2451         Speculative build fix for Tiger.
2452
2453         * WebView/WebHTMLViewPrivate.h:
2454
2455 2010-04-06  Dan Bernstein  <mitz@apple.com>
2456
2457         Reviewed by Sam Weinig and Anders Carlsson.
2458
2459         Expose WebHTMLView’s page breaking logic as SPI.
2460
2461         * WebView/WebHTMLView.mm:
2462         (-[WebHTMLView _adjustedBottomOfPageWithTop:bottom:limit:]): Factored out of -adjustPageHeightNew:top:bottom:limit:
2463         (-[WebHTMLView adjustPageHeightNew:top:bottom:limit:]): Call -_adjustedBottomOfPageWithTop:bottom:limit:
2464         * WebView/WebHTMLViewPrivate.h: Declared -_adjustedBottomOfPageWithTop:bottom:limit:
2465
2466 2010-04-06  Mark Rowe  <mrowe@apple.com>
2467
2468         Add an #if in order to make Tiger happy.
2469
2470         * WebView/WebViewData.mm:
2471         (-[WebViewPrivate init]):
2472
2473 2010-04-06  Mark Rowe  <mrowe@apple.com>
2474
2475         Build fix.
2476
2477         * WebView/WebViewData.mm:
2478         (-[WebViewPrivate init]): Use objc_collectingEnabled like we do elsewhere in WebKit.
2479
2480 2010-04-05  Mark Rowe  <mrowe@apple.com>
2481
2482         Reviewed by Adele Peterson.
2483
2484         Test case for <http://webkit.org/b/37115> / <rdar://problem/7829331>.
2485         REGRESSION(r56989): Crash in Mail in WebCore::Position::isCandidate when deleting block using block deletion UI
2486
2487         * WebView/WebHTMLView.mm:
2488         (-[WebHTMLView _updateFontPanel]): Ask the window whether it is the key window rather than doing the comparison
2489         manually.  This allows DumpRenderTree's override of isKeyWindow to force this code path to be taken during tests.
2490
2491 2010-04-05  Alexey Proskuryakov  <ap@apple.com>
2492
2493         Reviewed by Darin Adler.
2494
2495         https://bugs.webkit.org/show_bug.cgi?id=37111
2496         <rdar://problem/7790327> Draw replacement text when plug-in host crashes
2497
2498         * Plugins/Hosted/WebHostedNetscapePluginView.h: Removed _pluginDied - it was only used
2499         for drawing replacement icon, and this information is now in WebCore.
2500         * Plugins/Hosted/WebHostedNetscapePluginView.mm:
2501         (-[WebHostedNetscapePluginView pluginHostDied]): Tell RenderEmbeddedObject that the plug-in
2502         has crashed.
2503         (-[WebHostedNetscapePluginView drawRect:]): Removed the case for crashed plug-in host. It is
2504         handled by WebCore now.
2505
2506         * WebCoreSupport/WebViewFactory.mm: (-[WebViewFactory crashedPluginText]): Added a string
2507         for plug-in failure.        
2508
2509 2010-04-03  yael aharon  <yael.aharon@nokia.com>
2510
2511         Reviewed by Darin Adler.
2512
2513         Enable HTMLProgressElement for Safari on OSX
2514         https://bugs.webkit.org/show_bug.cgi?id=36961
2515
2516         * Configurations/FeatureDefines.xcconfig:
2517
2518 2010-04-02  Jer Noble  <jer.noble@apple.com>
2519
2520         Reviewed by Eric Carlson.
2521
2522         https://bugs.webkit.org/show_bug.cgi?id=36624
2523         Add an INIT macro for the WebKitSystemInterface function wkQTMovieSelectPreferredAlternates.
2524
2525         * WebCoreSupport/WebSystemInterface.m:
2526         (InitWebCoreSystemInterface):
2527
2528 2010-04-02  Alexey Proskuryakov  <ap@apple.com>
2529
2530         Reviewed by Darin Adler.
2531
2532         https://bugs.webkit.org/show_bug.cgi?id=37043
2533         Java regression tests spam stderr about being unable to set status message
2534
2535         With this change, there is still spam about "Attempt to access JavaScript from destroyed
2536         applet, type 9." I haven't investigated if that indicates a problem or not.
2537
2538         * Plugins/WebPluginController.mm: (-[WebPluginController webPlugInContainerShowStatus:]):
2539         Removed check for _documentView. We don't seem to care.
2540
2541 2010-04-01  Kinuko Yasuda  <kinuko@chromium.org>
2542
2543         Reviewed by Dmitry Titov.
2544
2545         Add FileThread for async file operation support in FileReader and FileWriter
2546         https://bugs.webkit.org/show_bug.cgi?id=36896
2547
2548         Add FILE_READER or FILE_WRITER feature defines.
2549
2550         * Configurations/FeatureDefines.xcconfig:
2551
2552 2010-04-01  Ada Chan  <adachan@apple.com>
2553
2554         Reviewed by Darin Adler.
2555
2556         Change WebDatabaseManager::deleteOrigin() to return true if there are no errors in deleting the origin.
2557         Ditto for WebDatabaseManager::deleteDatabase().
2558         
2559         https://bugs.webkit.org/show_bug.cgi?id=36988
2560
2561         * Storage/WebDatabaseManager.mm:
2562         (-[WebDatabaseManager deleteOrigin:]):
2563         (-[WebDatabaseManager deleteDatabase:withOrigin:]):
2564         * Storage/WebDatabaseManagerPrivate.h:
2565
2566 2010-04-01  Alexey Proskuryakov  <ap@apple.com>
2567
2568         Reviewed by Darin Adler.
2569
2570         https://bugs.webkit.org/show_bug.cgi?id=36976
2571         <rdar://problem/7817498>
2572         REGRESSION(r54783): Silverlight plug-in causes Safari to crash if JavaScript is disabled
2573
2574         * Plugins/Hosted/NetscapePluginInstanceProxy.mm:
2575         (WebKit::NetscapePluginInstanceProxy::LocalObjectMap::get): The HashTable assertions aren't
2576         there to catch potential future attempts to store empty/deleted values before these happen -
2577         it's actually wrong to try to look up these values. Added an early return.
2578         (WebKit::NetscapePluginInstanceProxy::LocalObjectMap::forget): Ditto.
2579
2580 2010-04-01  Chris Marrin  <cmarrin@apple.com>
2581
2582         Reviewed by Simon Fraser.
2583
2584         Added layerTreeAsText function to DRT (for Mac)
2585         https://bugs.webkit.org/show_bug.cgi?id=36782
2586
2587         This is the WebKit side for Mac. It plumbs the
2588         call from WebCore to DRT.
2589
2590         * WebView/WebFrame.mm:WebKit (Mac) side of plumbing
2591         (-[WebFrame _layerTreeAsText]):
2592         * WebView/WebFramePrivate.h:
2593
2594 2010-04-01  Alexey Proskuryakov  <ap@apple.com>
2595
2596         Reviewed by Oliver Hunt.
2597
2598         https://bugs.webkit.org/show_bug.cgi?id=36976
2599         <rdar://problem/7817498>
2600         REGRESSION(r54783): Silverlight plug-in causes Safari to crash if JavaScript is disabled
2601
2602         * Plugins/Hosted/NetscapePluginInstanceProxy.mm:
2603         (WebKit::NetscapePluginInstanceProxy::LocalObjectMap::get): Use find() instead of get(),
2604         because the latter fails with an assertion when looking up 0 or -1.
2605         (WebKit::NetscapePluginInstanceProxy::LocalObjectMap::forget): Be prepared for unexpected
2606         object IDs coming from plug-in host.
2607
2608 2010-03-31  Chris Fleizach  <cfleizach@apple.com>
2609
2610         Reviewed by Darin Adler.
2611
2612         Bug 36845 - AX: need a way to set the label of a AXWebArea through WebKit
2613         https://bugs.webkit.org/show_bug.cgi?id=36845
2614
2615         Provide a way through WebKit to set an accessible label that describes the web area.    
2616
2617         * WebView/WebFrame.mm:
2618         (-[WebFrame setAccessibleName:]):
2619         * WebView/WebFramePrivate.h:
2620
2621 2010-03-31  Marcus Bulach  <bulach@chromium.org>
2622
2623         Reviewed by Jeremy Orlow.
2624
2625         Adds Geolocation param for cancelGeolocationPermissionRequestForFrame.
2626         https://bugs.webkit.org/show_bug.cgi?id=35031
2627
2628         * WebCoreSupport/WebChromeClient.h:
2629         (WebChromeClient::cancelGeolocationPermissionRequestForFrame):
2630
2631 2010-03-30  Gavin Barraclough  <barraclough@apple.com>
2632
2633         Rubber stamped by Sam Weinig.
2634
2635         https://bugs.webkit.org/show_bug.cgi?id=36866
2636         Move CString to WTF
2637
2638         * Plugins/Hosted/NetscapePluginInstanceProxy.mm:
2639         (WebKit::NetscapePluginInstanceProxy::getCookies):
2640         (WebKit::NetscapePluginInstanceProxy::getProxy):
2641         (WebKit::NetscapePluginInstanceProxy::getAuthenticationInfo):
2642         (WebKit::NetscapePluginInstanceProxy::resolveURL):
2643         * Plugins/WebBaseNetscapePluginView.h:
2644         * Plugins/WebBaseNetscapePluginView.mm:
2645         * Plugins/WebNetscapePluginView.mm:
2646         (-[WebNetscapePluginView resolveURL:forTarget:]):
2647
2648 2010-03-30  John Sullivan  <sullivan@apple.com>
2649
2650         Reviewed by Dan Bernstein.
2651
2652         https://bugs.webkit.org/show_bug.cgi?id=36848
2653         <rdar://problem/7362913>
2654         Menu items appropriate only for rich-content editing can appear in plain-text contexts
2655
2656         * WebView/WebHTMLView.mm:
2657         (-[WebHTMLView validRequestorForSendType:returnType:]):
2658         Don't return self for non-string content if _canEditRichly is false.
2659
2660 2010-03-29  Alexey Proskuryakov  <ap@apple.com>
2661
2662         Reviewed by Darin Adler.
2663
2664         https://bugs.webkit.org/show_bug.cgi?id=36791
2665         Add assertions for instance proxy validity
2666
2667         Add some assertions that the instance proxy hasn't been deleted. We sometimes keep a raw
2668         pointer to one across complicated function calls, relying on the caller to protect the
2669         reference.
2670
2671         * Plugins/Hosted/NetscapePluginInstanceProxy.h:
2672         (WebKit::NetscapePluginInstanceProxy::renderContextID):
2673         (WebKit::NetscapePluginInstanceProxy::pluginView):
2674         (WebKit::NetscapePluginInstanceProxy::hostProxy):
2675
2676 2010-03-30  Laszlo Gombos  <laszlo.1.gombos@nokia.com>
2677
2678         Reviewed by David Kilzer.
2679
2680         Explicit guards for ENABLE_GEOLOCATION
2681         https://bugs.webkit.org/show_bug.cgi?id=25756
2682
2683         * WebCoreSupport/WebGeolocationMock.mm:
2684         (-[WebGeolocationMock setError:code:]): Make the body conditional on 
2685         ENABLE(GEOLOCATION)
2686         (-[WebGeolocationMock setPosition:]): Ditto.
2687
2688 2010-03-26  Kenneth Rohde Christiansen  <kenneth@webkit.org>
2689
2690         Reviewed by Antti Koivisto.
2691
2692         Change method name due to it dealing with both flattening
2693         of frame sets and inner frames.
2694
2695         * WebView/WebPreferenceKeysPrivate.h:
2696         * WebView/WebPreferences.mm:
2697         (+[WebPreferences initialize]):
2698         (-[WebPreferences isFrameFlatteningEnabled]):
2699         (-[WebPreferences setFrameFlatteningEnabled:]):
2700         * WebView/WebPreferencesPrivate.h:
2701         * WebView/WebView.mm:
2702         (-[WebView _preferencesChangedNotification:]):
2703
2704 2010-03-27  Darin Adler  <darin@apple.com>
2705
2706         * Misc/WebNSFileManagerExtras.m:
2707         (-[NSFileManager _webkit_pathWithUniqueFilenameForPath:]):
2708         Removed stray "!". How did that get in there?
2709
2710 2010-03-27  Darin Adler  <darin@apple.com>
2711
2712         Reviewed by Mark Rowe.
2713
2714         WebKit NSFileManager methods don't handle broken symlinks correctly.
2715         Part of <rdar://problem/7574046>.
2716
2717         * Misc/WebNSFileManagerExtras.h: Removed unused defines and methods.
2718         * Misc/WebNSFileManagerExtras.m: Removed unused methods.
2719         (fileExists): Added. For use instead of fileExistsAtPath: for cases where we'd like
2720         to treat a broken symlink as a file that does indeed exist.
2721         (-[NSFileManager _webkit_pathWithUniqueFilenameForPath:]): Use fileExists.
2722
2723 2010-03-25  Alexey Proskuryakov  <ap@apple.com>
2724
2725         Reviewed by Mark Rowe.
2726
2727         * Plugins/Hosted/NetscapePluginHostProxy.mm: (WKPCRunSyncOpenPanel): Re-fetch host proxy in
2728         a way that works in a function that doesn't have a pluginID argument for some reason.
2729
2730 2010-03-25  Simon Fraser  <simon.fraser@apple.com>
2731
2732         Build fix: no review.
2733         
2734         Another c_str() -> data().
2735         
2736         * Plugins/Hosted/NetscapePluginInstanceProxy.mm:
2737         (WebKit::NetscapePluginInstanceProxy::enumerate):
2738
2739 2010-03-25  Alexey Proskuryakov  <ap@apple.com>
2740
2741         Reviewed by Mark Rowe.
2742
2743         Correctness fix after r56493.
2744
2745         * Plugins/Hosted/NetscapePluginHostProxy.mm: (WKPCRunSyncOpenPanel): We still need to update
2746         our hostProxy reference, even though we didn't use to have instanceProxy. Nothing guarantees
2747         that the host proxy won't go away while the open panel is up.
2748
2749 2010-03-24  Mark Rowe  <mrowe@apple.com>
2750
2751         Build fix after r56474.
2752
2753         * Plugins/Hosted/NetscapePluginHostProxy.mm:
2754         (WKPCRunSyncOpenPanel):
2755
2756 2010-03-24  Alexey Proskuryakov  <ap@apple.com>
2757
2758         Reviewed by Anders Carlsson.
2759
2760         https://bugs.webkit.org/show_bug.cgi?id=36563
2761         A plug-in makes Safari crash on http://www.itscodingtime.com/
2762
2763         * Plugins/Hosted/NetscapePluginHostProxy.h:
2764         (WebKit::NetscapePluginHostProxy::port): Assert that the object is still alive. This isn't
2765         beautifully systemic, but helped catch a bug, and may help catch more.
2766         (WebKit::NetscapePluginHostProxy::clientPort): Ditto.
2767         (WebKit::NetscapePluginHostProxy::isProcessingRequests): Changed m_processingRequests to a
2768         static. This doesn't change behavior much, but helps avoid writing into deallocated memory.
2769
2770         * Plugins/Hosted/NetscapePluginHostProxy.mm:
2771         (WebKit::NetscapePluginHostProxy::NetscapePluginHostProxy): Changed m_processingRequests
2772         to a static.
2773         (WebKit::NetscapePluginHostProxy::processRequests): Ditto. Changing m_processingRequests
2774         after destroying the object in pluginHostDied() was wrong, but reasonably harmless, as there
2775         wasn't much time for some other object to be allocated at this address.
2776         (WKPCEvaluate): Refetch host proxy, as it may have been destroyed.
2777         (WKPCInvoke): Ditto.
2778         (WKPCInvokeDefault): Ditto.
2779         (WKPCGetProperty): Ditto.
2780         (WKPCSetProperty): Ditto.
2781         (WKPCRemoveProperty): Ditto.
2782         (WKPCHasProperty): Ditto.
2783         (WKPCHasMethod): Ditto.
2784         (WKPCEnumerate): Ditto.
2785         (WKPCRunSyncOpenPanel): Ditto.
2786
2787         * Plugins/Hosted/NetscapePluginInstanceProxy.mm:
2788         (WebKit::NetscapePluginInstanceProxy::processRequestsAndWaitForReply): Bail out of the 
2789         "event loop" if host proxy went away while processing a request.
2790
2791 2010-03-24  Hayato Ito  <hayato@chromium.org>
2792
2793         Reviewed by Shinichiro Hamaji.
2794
2795         Refactor computePageRects so that Mac can make use of it.
2796         https://bugs.webkit.org/show_bug.cgi?id=36159
2797
2798         Refactoring only, so no new tests.
2799
2800         * WebView/WebFrame.mm:
2801         (-[WebFrame _computePageRectsWithPrintWidthScaleFactor:printHeight:]):
2802
2803 2010-03-24  Kent Tamura  <tkent@chromium.org>
2804
2805         Reviewed by Darin Adler.
2806
2807         Make Icon::createIconForFiles() optional.
2808         https://bugs.webkit.org/show_bug.cgi?id=35072
2809
2810         - Rename iconForFiles() to chooseIconForFiles().
2811         - Call Icon::createIconForFiles() from chooseIconForFiles().
2812
2813         * WebCoreSupport/WebChromeClient.h:
2814         * WebCoreSupport/WebChromeClient.mm:
2815         (WebChromeClient::chooseIconForFiles):
2816
2817 2010-03-23  Dan Bernstein  <mitz@apple.com>
2818
2819         Reverted accidental change from r56429.
2820
2821         * WebCoreSupport/WebContextMenuClient.mm:
2822         (WebContextMenuClient::getCustomMenuFromDefaultItems):
2823
2824 2010-03-23  Dan Bernstein  <mitz@apple.com>
2825
2826         Reviewed by John Sullivan.
2827
2828         WebKit part of
2829         <rdar://problem/7197736> Plug-in clip rect does not update when overflow
2830         clip changes
2831         https://bugs.webkit.org/show_bug.cgi?id=36479.
2832
2833         * Plugins/Hosted/WebHostedNetscapePluginView.mm:
2834         (-[WebHostedNetscapePluginView visibleRectDidChange]): Added. Calls
2835         WKSyncSurfaceToView().
2836         * Plugins/WebBaseNetscapePluginView.h:
2837         * Plugins/WebBaseNetscapePluginView.mm:
2838         (-[WebBaseNetscapePluginView _windowClipRect]): Changed to use Widget::windowClipRect().
2839         (-[WebBaseNetscapePluginView visibleRectDidChange]): Added. Invokes -renewGState.
2840
2841 2010-03-22  Kevin Decker  <kdecker@apple.com>
2842
2843         Reviewed by Simon Fraser.
2844
2845         https://bugs.webkit.org/show_bug.cgi?id=36328
2846
2847         This patch entirely WebNullPluginView.
2848         
2849         * Plugins/WebNetscapePluginView.mm:
2850         * Plugins/WebNullPluginView.h: Removed.
2851         * Plugins/WebNullPluginView.mm: Removed.
2852         * Resources/nullplugin.tiff: Removed.
2853         * WebCoreSupport/WebFrameLoaderClient.mm:
2854         (WebFrameLoaderClient::createPlugin): Invoke the resource load delegate if the plug-in failed to load.
2855
2856 2010-03-22  Alexey Proskuryakov  <ap@apple.com>
2857
2858         Reviewed by John Sullivan.
2859
2860         https://bugs.webkit.org/show_bug.cgi?id=36455
2861         Make WebKit more resistant against plug-in crashes
2862
2863         No tests, because crashing on build bots isn't good, even if it's only helper processes
2864         that crash.
2865
2866         * Plugins/Hosted/NetscapePluginInstanceProxy.h:
2867         (WebKit::NetscapePluginInstanceProxy::waitForReply): Protect "this", because this function
2868         needs it after waiting for reply. Some callers used to do this, but not all, and we really
2869         shouldn't depend on callers here.
2870
2871         * Plugins/Hosted/NetscapePluginInstanceProxy.mm:
2872         (WebKit::NetscapePluginInstanceProxy::wheelEvent): Don't protect the plug-in instance proxy,
2873         because this function doesn't use it after waiting for reply.
2874         (WebKit::NetscapePluginInstanceProxy::createBindingsInstance): Ditto.
2875
2876         * Plugins/Hosted/ProxyInstance.mm: (WebKit::ProxyInstance::invoke): Added an m_instanceProxy
2877         null check for another code path.
2878
2879 2010-03-22  Kevin Decker  <kdecker@apple.com>
2880
2881         Reviewed by John Sullivan.
2882
2883         https://bugs.webkit.org/show_bug.cgi?id=36328
2884
2885         * WebCoreSupport/WebViewFactory.mm:
2886         (-[WebViewFactory missingPluginText]): Added.
2887
2888 2010-03-18  Alexey Proskuryakov  <ap@apple.com>
2889
2890         Reviewed by Darin Adler.
2891
2892         https://bugs.webkit.org/show_bug.cgi?id=36337
2893         Log an error when an OOP plug-in sends an unknown object id
2894
2895         Making these LOG_ERROR and not ASSERTs, because I don't want early returns to look
2896         temporary or redundant.
2897
2898         * Plugins/Hosted/NetscapePluginInstanceProxy.mm:
2899         (WebKit::NetscapePluginInstanceProxy::evaluate):
2900         (WebKit::NetscapePluginInstanceProxy::invoke):
2901         (WebKit::NetscapePluginInstanceProxy::invokeDefault):
2902         (WebKit::NetscapePluginInstanceProxy::construct):
2903         (WebKit::NetscapePluginInstanceProxy::getProperty):
2904         (WebKit::NetscapePluginInstanceProxy::setProperty):
2905         (WebKit::NetscapePluginInstanceProxy::removeProperty):
2906         (WebKit::NetscapePluginInstanceProxy::hasProperty):
2907         (WebKit::NetscapePluginInstanceProxy::hasMethod):
2908         (WebKit::NetscapePluginInstanceProxy::enumerate):
2909
2910 2010-03-16  Alexey Proskuryakov  <ap@apple.com>
2911
2912         Reviewed by Darin Adler.
2913
2914         https://bugs.webkit.org/show_bug.cgi?id=36184
2915         YouTube video resizing doesn't work with OOP plug-ins
2916
2917         Test: plugins/resize-from-plugin.html
2918
2919         We were calling _WKPHResizePluginInstance synchronously or asynchronously, depending on
2920         whether the size has changed. But sync and async messages are not necessarily delivered in
2921         order - plug-in host listens only to the former while waiting for a response to a message it
2922         sent (a call to invoke() in this case).
2923
2924         * Plugins/Hosted/NetscapePluginInstanceProxy.h:
2925         * Plugins/Hosted/NetscapePluginInstanceProxy.mm:
2926         (WebKit::NetscapePluginInstanceProxy::resize):
2927         * Plugins/Hosted/WebHostedNetscapePluginView.mm:
2928         (-[WebHostedNetscapePluginView updateAndSetWindow]):
2929
2930 2010-03-16  Yury Semikhatsky <yurys@chromium.org>
2931
2932         Reviewed by Pavel Feldman.
2933
2934         Introduce InspectorFrontendClient that provides InspectorFrontend with an interface to the embedder. InspectorClient now serves as a delegate for InspectorController and does not contain methods for managing inspector frontend window. That allows to create remote InspectorFrontendHost.
2935
2936         Introduce InspectorFrontendClient that would provide InspectorFrontend with an interface to the embedder
2937         https://bugs.webkit.org/show_bug.cgi?id=35036
2938
2939         * WebCoreSupport/WebInspectorClient.h:
2940         * WebCoreSupport/WebInspectorClient.mm:
2941         (WebInspectorClient::WebInspectorClient):
2942         (WebInspectorClient::inspectorDestroyed):
2943         (WebInspectorClient::openInspectorFrontend):
2944         (WebInspectorClient::highlight):
2945         (WebInspectorClient::hideHighlight):
2946         (WebInspectorFrontendClient::WebInspectorFrontendClient):
2947         (WebInspectorFrontendClient::frontendLoaded):
2948         (WebInspectorFrontendClient::localizedStringsURL):
2949         (WebInspectorFrontendClient::hiddenPanels):
2950         (WebInspectorFrontendClient::bringToFront):
2951         (WebInspectorFrontendClient::closeWindow):
2952         (WebInspectorFrontendClient::attachWindow):
2953         (WebInspectorFrontendClient::detachWindow):
2954         (WebInspectorFrontendClient::setAttachedWindowHeight):
2955         (WebInspectorFrontendClient::inspectedURLChanged):
2956         (WebInspectorFrontendClient::updateWindowTitle):
2957         (-[WebInspectorWindowController dealloc]):
2958         (-[WebInspectorWindowController windowShouldClose:]):
2959         (-[WebInspectorWindowController close]):
2960         (-[WebInspectorWindowController showWindow:]):
2961         (-[WebInspectorWindowController attach]):
2962         (-[WebInspectorWindowController detach]):
2963         (-[WebInspectorWindowController attached]):
2964         (-[WebInspectorWindowController setFrontendClient:]):
2965         (-[WebInspectorWindowController destroyInspectorView]):
2966         (-[WebNodeHighlighter initWithInspectedWebView:]):
2967         (-[WebNodeHighlighter dealloc]):
2968         (-[WebNodeHighlighter highlightNode:]):
2969         (-[WebNodeHighlighter hideHighlight]):
2970         (-[WebNodeHighlighter didAttachWebNodeHighlight:]):
2971         (-[WebNodeHighlighter willDetachWebNodeHighlight:]):
2972         * WebInspector/WebInspector.mm:
2973         (-[WebInspector attach:]):
2974         (-[WebInspector detach:]):
2975
2976 2010-03-15  Andy Estes  <aestes@apple.com>
2977
2978         Reviewed by John Sullivan.
2979
2980         Updated call to WKGetWheelEventDeltas() to match new method signature.
2981
2982         https://bugs.webkit.org/show_bug.cgi?id=29601
2983         <rdar://problem/7453254>
2984
2985         * WebView/WebDynamicScrollBarsView.mm:
2986         (-[WebDynamicScrollBarsView scrollWheel:]):
2987
2988 2010-03-15  John Sullivan  <sullivan@apple.com>
2989
2990         Reviewed by Adam Roben.
2991         
2992         -[WebFrame setAlwaysHideHorizontal/VerticalScroller:] prevents keyboard scrolling
2993         <https://bugs.webkit.org/show_bug.cgi?id=36125>
2994
2995         * WebView/WebDynamicScrollBarsView.h:
2996         Added instance variables horizontalScrollingAllowedButScrollerHidden and
2997         verticalScrollingAllowedButScrollerHidden. Renamed instance variables 
2998         hideHorizontal/VerticalScroller to alwaysHideHorizontal/VerticalScroller for clarity.
2999         Declared methods -horizontalScrollingAllowed and -verticalScrollingAllowed.
3000         Added comments.
3001         
3002         * WebView/WebDynamicScrollBarsView.mm:
3003         (-[WebDynamicScrollBarsView setAlwaysHideHorizontalScroller:]):
3004         Updated for instance variable renaming.
3005         (-[WebDynamicScrollBarsView setAlwaysHideVerticalScroller:]):
3006         Ditto.
3007         (-[WebDynamicScrollBarsView horizontalScrollingAllowed]):
3008         New method, returns YES if the scroller is showing or the only reason that the scroller
3009         is not showing is that setAlwaysHideHorizontalScrolling has been called.
3010         (-[WebDynamicScrollBarsView verticalScrollingAllowed]):
3011         New method, returns YES if the scroller is showing or the only reason that the scroller
3012         is not showing is that setAlwaysHideVerticalScrolling has been called.
3013         (-[WebDynamicScrollBarsView updateScrollers]):
3014         Updated for instance variable renamings. Now updates horizontalScrollingAllowedButScrollerHidden
3015         and verticalScrollingAllowedButScrollerHidden. Now takes the always-hidden state into account
3016         in the early-return code path, to avoid taking it into account twice in the regular code path.
3017         
3018         * WebView/WebFrameView.mm:
3019         (-[WebFrameView _scrollToBeginningOfDocument]):
3020         Use _isScrollable instead of _hasScrollBars.
3021         (-[WebFrameView _scrollToEndOfDocument]):
3022         Ditto.
3023         (-[WebFrameView scrollToBeginningOfDocument:]):
3024         Use _largestScrollableChild instead of _largestChildWithScrollBars.
3025         (-[WebFrameView scrollToEndOfDocument:]):
3026         Ditto.
3027         (-[WebFrameView _pageVertically:]):
3028         Use _isScrollable and _largestScrollableChild instead of _hasScrollBars
3029         and _largestChildWithScrollBars.
3030         (-[WebFrameView _pageHorizontally:]):
3031         Ditto.
3032         (-[WebFrameView _scrollLineVertically:]):
3033         Ditto.
3034         (-[WebFrameView _scrollLineHorizontally:]):
3035         Ditto.
3036         (-[WebFrameView keyDown:]):
3037         Use _largestScrollableChild instead of _largestChildWithScrollBars.
3038         (-[WebFrameView _isScrollable]):
3039         New method, calls -[WebDynamicScrollBarsView horizontalScrollingAllowed] and
3040         -[WebDynamicScrollBarsView verticalScrollingAllowed]
3041         (-[WebFrameView _largestScrollableChild]):
3042         New method, like _largestChildWithScrollBars but uses _isScrollable.
3043         (-[WebFrameView _hasScrollBars]):
3044         Added a comment that this is no longer used by Safari, and can thus probably be
3045         deleted once we no longer want to support it for nightly build compatibility with
3046         old versions of Safari.
3047         (-[WebFrameView _largestChildWithScrollBars]):
3048         Ditto.
3049         
3050         * WebView/WebFrameViewPrivate.h:
3051         Declared -_isScrollable and -_largestScrollableChild. Added comments to
3052         _hasScrollBars and _largestChildWithScrollBars saying that they are no longer
3053         used by Safari, and can thus probably be deleted once we no longer want to 
3054         support them for nightly build compatibility with old versions of Safari.
3055
3056 2010-03-15  John Sullivan  <sullivan@apple.com>
3057
3058         Method name and parameter name mistakes from recent SPI addition
3059         <https://bugs.webkit.org/show_bug.cgi?id=36119>
3060
3061         Reviewed by Dan Bernstein.
3062
3063         * WebView/WebDynamicScrollBarsView.h:
3064         Renamed instance variable and method name from "setAllowXXX" to "setAllowsXXX".
3065         
3066         * WebView/WebDynamicScrollBarsView.mm:
3067         (-[WebDynamicScrollBarsView setAllowsScrollersToOverlapContent:]):
3068         Updated for renamed instance variable and method.
3069         (-[WebDynamicScrollBarsView setAlwaysHideHorizontalScroller:]):
3070         Changed parameter name from shouldBeVisible to shouldBeHidden.
3071         (-[WebDynamicScrollBarsView setAlwaysHideVerticalScroller:]):
3072         Ditto.
3073         (-[WebDynamicScrollBarsView contentViewFrame]):
3074         Updated for renamed instance variable.
3075         (-[WebDynamicScrollBarsView tile]):
3076         Ditto.
3077         (-[WebDynamicScrollBarsView reflectScrolledClipView:]):
3078         Ditto.
3079
3080         * WebView/WebFrame.mm:
3081         (-[WebFrame setAllowsScrollersToOverlapContent:]):
3082         Renamed method from setAllowXXX, and updated for same change in WebDynamicScrollBarsView.
3083
3084         * WebView/WebFramePrivate.h:
3085         Renamed method name from "setAllowXXX" to "setAllowsXXX".
3086
3087 2010-03-14  Darin Adler  <darin@apple.com>
3088
3089         Reviewed by Mark Rowe.
3090
3091         Remove unneeded dependency on non-string identifier for an NSTableColumn
3092         https://bugs.webkit.org/show_bug.cgi?id=36106
3093
3094         * WebView/WebTextCompletionController.mm:
3095         (-[WebTextCompletionController _buildUI]): Use init instead of initWithIdentifier:
3096         because the table has only one column and that column does not need an identifier.
3097
3098 2010-03-12  Beth Dakin  <bdakin@apple.com>
3099
3100         Reviewed by Simon Fraser.
3101
3102         Fix for https://bugs.webkit.org/show_bug.cgi?id=34942 Fullscreen 
3103         API naming is inconsistent
3104         -and corresponding-
3105         <rdar://problem/7729165>
3106
3107         This patch changes all occurrences of "fullScreen" to the more 
3108         popular "fullscreen."
3109
3110         * Plugins/Hosted/NetscapePluginHostProxy.h:
3111         (WebKit::NetscapePluginHostProxy::isFullscreenWindowShowing):
3112         * Plugins/Hosted/NetscapePluginHostProxy.mm:
3113         (WebKit::NetscapePluginHostProxy::NetscapePluginHostProxy):
3114         (WebKit::NetscapePluginHostProxy::didEnterFullscreen):
3115         (WebKit::NetscapePluginHostProxy::didExitFullscreen):
3116         (WebKit::NetscapePluginHostProxy::setFullscreenWindowIsShowing):
3117         (WKPCSetFullscreenWindowIsShowing):
3118         * Plugins/Hosted/WebKitPluginClient.defs:
3119         * Plugins/WebNetscapePluginView.mm:
3120         (-[WebNetscapePluginView _workaroundSilverlightFullscreenBug:]):
3121         (-[WebNetscapePluginView _createPlugin]):
3122         (-[WebNetscapePluginView _destroyPlugin]):
3123         * WebView/WebVideoFullscreenHUDWindowController.mm:
3124         (-[WebVideoFullscreenHUDWindowController windowDidLoad]):
3125
3126 2010-03-12  Andy Estes  <aestes@apple.com>
3127
3128         Reviewed by Brady Eidson.
3129
3130         Expose WebPDFView's underlying PDFDocument.
3131
3132         https://bugs.webkit.org/show_bug.cgi?id=36045
3133
3134         * WebView/WebDocumentPrivate.h: Create a new protocol called
3135         WebDocumentPDF.
3136         * WebView/WebPDFView.h: Have WebPDFView implement said protocol.
3137         * WebView/WebPDFView.mm:
3138         (-[WebPDFView PDFDocument]): Expose WebPDFView's underlying
3139         PDFDocument by implementing -(PDFDocument*)PDFDocument from
3140         WebDocumentPDF.
3141
3142 2010-03-12  Andy Estes  <aestes@apple.com>
3143
3144         Reviewed by Brady Eidson.
3145
3146         Remove an unused method.
3147
3148         https://bugs.webkit.org/show_bug.cgi?id=35940
3149
3150         * Plugins/WebPluginController.mm:
3151         removed - (void)showURL:(NSURL *) inFrame:(NSString *)
3152
3153 2010-03-11  Mark Rowe  <mrowe@apple.com>
3154
3155         Reviewed by David Kilzer.
3156
3157         <rdar://problem/7745082> Make it possible to build WebKit for older Mac OS X versions from the current Mac OS X version
3158
3159         Default to using the appropriate SDK if the target Mac OS X version is not the current Mac OS X version.
3160
3161         * Configurations/Base.xcconfig:
3162
3163 2010-03-11  Mark Rowe  <mrowe@apple.com>
3164
3165         Reviewed by Tim Hatcher.
3166
3167         <rdar://problem/7745082> Make it possible to build WebKit for older Mac OS X versions from the current Mac OS X version
3168
3169         Introduce TARGET_MAC_OS_X_VERSION_MAJOR to represent the Mac OS X version that is being targeted.  It defaults to the
3170         current Mac OS X version unless otherwise specified.
3171
3172         Key off TARGET_MAC_OS_X_VERSION_MAJOR where we'd previously been keying off MAC_OS_X_VERSION_MAJOR.
3173
3174         Explicitly map from the target Mac OS X version to the preferred compiler since Xcode's default compiler choice
3175         may not be usable when targetting a different Mac OS X version.
3176
3177         Key off TARGET_GCC_VERSION rather than MAC_OS_X_VERSION_MAJOR in locations where we'd previously been keying off
3178         MAC_OS_X_VERSION_MAJOR but the decision is really related to the compiler version being used.
3179
3180         * Configurations/Base.xcconfig:
3181         * Configurations/DebugRelease.xcconfig:
3182         * Configurations/FeatureDefines.xcconfig:
3183         * Configurations/Version.xcconfig:
3184
3185 2010-03-11  Anders Carlsson  <andersca@apple.com>
3186
3187         Reviewed by David Hyatt.
3188
3189         Remove invalidateContents, it isn't used and it never makes sense to only invalidate the contents.
3190
3191         * WebCoreSupport/WebChromeClient.h:
3192         * WebCoreSupport/WebChromeClient.mm:
3193
3194 2010-03-11  Alexey Proskuryakov  <ap@apple.com>
3195
3196         Reviewed by Geoff Garen.
3197
3198         https://bugs.webkit.org/show_bug.cgi?id=35965
3199         <rdar://problem/7742771> Crash when passing an object returned from plug-in back to the plug-in
3200
3201         Test: plugins/round-trip-npobject.html
3202
3203         * Plugins/Hosted/NetscapePluginInstanceProxy.mm:
3204         (WebKit::NetscapePluginInstanceProxy::retainLocalObject): Corrected the check - there is
3205         now a separate ProxyRuntimeObject class for proxy pbjects.
3206         (WebKit::NetscapePluginInstanceProxy::releaseLocalObject): Ditto.
3207
3208         * Plugins/Hosted/ProxyInstance.mm:
3209         (WebKit::ProxyInstance::invoke): Check if m_instanceProxy is still non-zero. The plug-in
3210         could have crashed while we were waiting for response.
3211         (WebKit::ProxyInstance::setFieldValue): Ditto.
3212
3213 2010-03-10  Simon Fraser  <simon.fraser@apple.com>
3214
3215         Reviewed by Darin Adler.
3216
3217         https://bugs.webkit.org/show_bug.cgi?id=35975
3218         <rdar://problem/7739922> Flash 10.1b crashes when generating snapshots
3219
3220         Do a version check before sending a drawRect event to a Flash plugin,
3221         since 10.1.d51 has a bug that crashes when called this way.
3222         
3223         * Plugins/Hosted/WebHostedNetscapePluginView.mm:
3224         (-[WebHostedNetscapePluginView drawRect:]):
3225         * Plugins/WebBaseNetscapePluginView.h:
3226         * Plugins/WebBaseNetscapePluginView.mm:
3227         (-[WebBaseNetscapePluginView supportsSnapshotting]):
3228         * Plugins/WebNetscapePluginView.mm:
3229         (-[WebNetscapePluginView drawRect:]):
3230
3231 2010-03-10  John Sullivan  <sullivan@apple.com>
3232
3233         Reviewed by Tim Hatcher.
3234
3235         <rdar://problem/7735387> input type other than text won't work with autofill
3236         <https://bugs.webkit.org/show_bug.cgi?id=35963>
3237
3238         * WebView/WebHTMLRepresentation.mm:
3239         (-[WebHTMLRepresentation elementDoesAutoComplete:]):
3240         Return true for any text field that's not a password, rather than only
3241         for TEXT type.
3242
3243 2010-03-09  Brady Eidson  <beidson@apple.com>
3244
3245         Reviewed by Tim Hatcher.
3246
3247         REGRESSION: WebInspector docking busted on Windows
3248         <rdar://problem/7728433> and https://bugs.webkit.org/show_bug.cgi?id=35953
3249
3250         * WebCoreSupport/WebInspectorClient.mm:
3251         (-[WebInspectorWindowController showWindow:]): Use the InspectorController:: copy of the should attach settings key.
3252         (-[WebInspectorWindowController attach]): Ditto.
3253         (-[WebInspectorWindowController detach]): Ditto.
3254
3255 2010-03-09  Geoffrey Garen  <ggaren@apple.com>
3256
3257         Reviewed by Darin Adler.
3258
3259         Updated for FastMalloc reporting changes.
3260         
3261         * Misc/WebCoreStatistics.mm:
3262         (+[WebCoreStatistics memoryStatistics]):
3263
3264 2010-03-08  Simon Fraser  <simon.fraser@apple.com>
3265
3266         Reviewed by Mark Rowe.
3267
3268         Move the new method to the end of the MIG definitions file, to avoid breaking
3269         compatibility between WebKit and older versions of WebKitPluginHost.
3270
3271         * Plugins/Hosted/WebKitPluginHost.defs:
3272
3273 2010-03-08  Simon Fraser  <simon.fraser@apple.com>
3274
3275         Reviewed by Kevin Decker.
3276
3277         <rdar://problem/7714340> Need to grab image snapshot of Core Animation plugins
3278         
3279         Allow plug-ins using the Core Animation drawing model to be captured when doing a flattening paint,
3280         by sending them a drawRect event as if they were software-painting.
3281
3282         * Plugins/Hosted/NetscapePluginInstanceProxy.h:
3283         * Plugins/Hosted/NetscapePluginInstanceProxy.mm:
3284         (WebKit::NetscapePluginInstanceProxy::snapshot):
3285         New snapshot() method that calls over to the plugin host, and then draws the image that comes back.
3286         
3287         * Plugins/Hosted/WebHostedNetscapePluginView.mm:
3288         (-[WebHostedNetscapePluginView drawRect:]): If we don't have a software renderer, but we're doing
3289         a flattening paint, then call the snapshot method.
3290         
3291         * Plugins/Hosted/WebKitPluginHost.defs: Added snapshot method.
3292         
3293         * Plugins/WebBaseNetscapePluginView.h:
3294         * Plugins/WebBaseNetscapePluginView.mm:
3295         (-[WebBaseNetscapePluginView inFlatteningPaint]):
3296         New utility method that asks the FrameView whether the current paint behavior is
3297         flattening.
3298         
3299         * Plugins/WebNetscapePluginView.mm:
3300         (-[WebNetscapePluginView drawRect:]): If the plug-in is using CA but this is a flattening
3301         paint, go ahead and send a drawRect event to the plug-in.
3302
3303 2010-03-08  Darin Adler  <darin@apple.com>
3304
3305         Reviewed by Dan Bernstein.
3306
3307         Fix crash when you quit inside an unload handler.
3308         rdar://problem/6958347
3309
3310         Test: manual-tests/quit-inside-unload.html
3311
3312         * WebView/WebView.mm:
3313         (-[WebView _closeWithFastTeardown]): Removed code to set
3314         _private->closed since _close now does this earlier, before
3315         calling this method.
3316         (-[WebView _close]): Moved code to set _private->closed to the
3317         top of this method.
3318         (-[WebView setHostWindow:]): Rewrote the code that forbade
3319         setting the host window after closing so that it only forbids
3320         non-nil host windows. That way, the code to clear away the host
3321         window can run safely after setting _private->closed, yet client
3322         code cannot set a new host window after closing.
3323
3324 2010-03-08  Darin Adler  <darin@apple.com>
3325
3326         Roll out a file I checked in by accident.
3327
3328         * WebView/WebView.mm: Back to previous version.
3329
3330 2010-03-08  Chris Marrin  <cmarrin@apple.com>
3331
3332         Reviewed by Darin Adler.
3333
3334         Turn on HW accel on Leopard even if coreVideoHas7228836Fix() is false, when WebGL is enabled
3335         https://bugs.webkit.org/show_bug.cgi?id=35759
3336
3337         This allows WebGL to work on Leopard without the fix. It exposes these users to the crash
3338         that happens because of the CoreVideo bug, but it limits the exposure to those who have 
3339         chosen to enable WebGL.
3340
3341         * WebView/WebView.mm:
3342         (-[WebView _preferencesChangedNotification:]):
3343
3344 2010-03-02  Adam Treat  <atreat@rim.com>
3345
3346         Reviewed by Dave Hyatt.
3347
3348         Adapt the mac port to the refactoring of repaint methods.
3349
3350         https://bugs.webkit.org/show_bug.cgi?id=34214
3351
3352         * WebCoreSupport/WebChromeClient.h:
3353         * WebCoreSupport/WebChromeClient.mm:
3354         (WebChromeClient::invalidateContents):
3355         (WebChromeClient::invalidateWindow):
3356         (WebChromeClient::invalidateContentsAndWindow):
3357         (WebChromeClient::invalidateContentsForSlowScroll):
3358
3359 2010-03-08  Jian Li  <jianli@chromium.org>
3360
3361         Reviewed by Dmitry Titov.
3362
3363         Blob.slice support.
3364         https://bugs.webkit.org/show_bug.cgi?id=32993
3365
3366         Add ENABLE_BLOB_SLICE feature define.
3367
3368         * Configurations/FeatureDefines.xcconfig:
3369
3370 2010-03-08  Eric Uhrhane  <ericu@chromium.org>
3371
3372         Reviewed by David Levin.
3373
3374         Remove the now-redundant Settings fields for the Database
3375         https://bugs.webkit.org/show_bug.cgi?id=35763
3376
3377         No new tests; this code isn't called.
3378
3379         * WebView/WebView.mm: Remove the call into Settings.
3380         (-[WebView _preferencesChangedNotification:]):
3381
3382 2010-03-07  Mark Rowe  <mrowe@apple.com>
3383
3384         Rubber-stamped by Cameron Zwarich.
3385
3386         Remove unnecessary includes from header files, adding them to the handful of implementation files that need them.
3387
3388         * Misc/WebIconDatabase.mm:
3389
3390 2010-03-07  Mark Rowe  <mrowe@apple.com>
3391
3392         Rubber-stamped by Cameron Zwarich.
3393
3394         Remove unnecessary includes from header files, adding them to the handful of implementation files that need them.
3395
3396         * Misc/WebNSPasteboardExtras.mm:
3397
3398 2010-03-04  Mark Rowe  <mrowe@apple.com>
3399
3400         Reviewed by Sam Weinig.
3401
3402         <rdar://problem/7717249> DOMSVG.h includes a non-existent DOMSVGFEMorphologyElement.h
3403
3404         * MigrateHeaders.make: Migrate DOMSVGFEMorphologyElement.h and DOMSVGFEMorphologyElementInternal.h.
3405
3406 2010-03-04  Mark Rowe  <mrowe@apple.com>
3407
3408         Reviewed by Sam Weinig.
3409
3410         Use a framework-style include to pull in WebInspector.h for consistency
3411         with other parts of WebKit.
3412
3413         * WebInspector/WebInspectorPrivate.h:
3414
3415 2010-03-04  Brady Eidson  <beidson@apple.com>
3416
3417         Reviewed by Geoff Garen.
3418
3419         REGRESSION (31281): -[WebArchive initWithCoder:] leaks
3420         <rdar://problem/7702420> and https://bugs.webkit.org/show_bug.cgi?id=35534
3421
3422         * WebView/WebArchive.mm:
3423         (-[WebArchive initWithCoder:]): Don't retain objects we don't own.
3424
3425 2010-03-03  Alexey Proskuryakov  <ap@apple.com>
3426
3427         Reviewed by Timothy Hatcher.
3428
3429         https://bugs.webkit.org/show_bug.cgi?id=35692
3430         <rdar://problem/7703622> Crash when calling abort() on an XHR while in a windowless WebView
3431
3432         * Panels/WebAuthenticationPanel.m: (-[WebAuthenticationPanel runAsModalDialogWithChallenge:]):
3433         Retain the challenge, just like it's done for sheet.
3434
3435 2010-03-02  Eric Uhrhane  <ericu@chromium.org>
3436
3437         Reviewed by David Levin.
3438
3439         Move database enable bit fully out of settings
3440         This is stage one of a three-stage commit [webkit, then chromium, then
3441         webkit again].  In this change I'm adding calls to
3442         Database::setIsAvailable inside Settings::setDatabaseEnabled and
3443         anywhere else that called it, and switching webkit fully over to using
3444         that flag [added in a previous checkin].  Phase two will remove
3445         Chromium's use of Settings for the Database, and phase three will remove
3446         the Setting for the Database enable entirely, leaving only
3447         Database::isAvailable/setIsAvailable.
3448
3449         No new tests; tested by existing storage tests.
3450
3451         https://bugs.webkit.org/show_bug.cgi?id=35310
3452
3453         * WebView/WebView.mm:  Added a call to Database::setIsAvailable.
3454         (-[WebView _preferencesChangedNotification:]):
3455
3456 2010-03-02  Adam Roben  <aroben@apple.com>
3457
3458         Add -[WebView _registerURLSchemeAsSecure:]
3459
3460         Fixes <http://webkit.org/b/35580> <rdar://problem/7706407> Expose
3461         SecurityOrigin::registerURLSchemeAsSecure as WebKit SPI
3462
3463         Reviewed by Tim Hatcher.
3464
3465         * WebView/WebView.mm:
3466         (+[WebView _registerURLSchemeAsSecure:]):
3467         * WebView/WebViewPrivate.h:
3468         Added. Calls through to SecurityOrigin::registerURLSchemeAsSecure.
3469
3470 2010-03-01  Jakob Petsovits  <jpetsovits@rim.com>
3471
3472         Reviewed by Adam Barth.
3473
3474         Adapt to the new ZoomMode enum.
3475         https://bugs.webkit.org/show_bug.cgi?id=35347
3476
3477         * WebView/WebView.mm:
3478         (-[WebView _preferencesChangedNotification:]):
3479         (-[WebView _setZoomMultiplier:isTextOnly:]):
3480         (-[WebView _realZoomMultiplierIsTextOnly]):
3481
3482 2010-02-27  Jing Jin  <jjin@apple.com>
3483
3484         Reviewed by Timothy Hatcher.
3485
3486         Move implementation of Bug 35449 into WebFramePrivate.
3487
3488         * WebView/WebFrame.h:
3489         * WebView/WebFrame.mm:
3490         (-[WebFrame setAllowScrollersToOverlapContent:]):
3491         (-[WebFrame setAlwaysHideHorizontalScroller:]):
3492         (-[WebFrame setAlwaysHideVerticalScroller:]):
3493         * WebView/WebFramePrivate.h:
3494
3495 2010-02-26  Jing Jin  <jjin@apple.com>
3496
3497         Reviewed by Timothy Hatcher.
3498
3499         https://bugs.webkit.org/show_bug.cgi?id=35449
3500         Add ability to hide WebFrame scrollbars and to allow scrollbars to overlap with content.
3501
3502         * WebView/WebDynamicScrollBarsView.h:
3503         * WebView/WebDynamicScrollBarsView.mm:
3504         (-[WebDynamicScrollBarsView setAllowScrollersToOverlapContent:]): Allows scrollbars to 
3505         overlap with the document and re-layouts the document.
3506         (-[WebDynamicScrollBarsView setAlwaysHideHorizontalScroller:]): Hides the horizontal scrollbar.
3507         (-[WebDynamicScrollBarsView setAlwaysHideVerticalScroller:]): Hides the vertical scrollbar.
3508         (-[WebDynamicScrollBarsView contentViewFrame]): Calculates the appropriate frame based
3509         on allowScrollersToOverlapContent.
3510         (-[WebDynamicScrollBarsView tile]): If allowScrollersToOverlapContent is YES, set the
3511         contentView's frame so it overlaps with the scrollbar.
3512         (-[WebDynamicScrollBarsView updateScrollers]): Take into account hideHorizontalScroller
3513         and hideVerticalScroller.
3514         (-[WebDynamicScrollBarsView reflectScrolledClipView:]): set drawsBackground to NO when
3515         scrollbars are overlapping with content, so we don't get trails during scrollbar draw updates.
3516         * WebView/WebDynamicScrollBarsViewInternal.h:
3517         * WebView/WebFrame.h:
3518         * WebView/WebFrame.mm:
3519         (-[WebFrame setAllowScrollersToOverlapContent:]): Hook for [WebDynamicScrollBarsView setAllowScrollersToOverlapContent:]
3520         (-[WebFrame setAlwaysHideHorizontalScroller:]): Hook for [WebDynamicScrollBarsView setAlwaysHideHorizontalScroller:]
3521         (-[WebFrame setAlwaysHideVerticalScroller:]): Hook for [WebDynamicScrollBarsView setAlwaysHideVerticalScroller:]
3522
3523 2010-02-26  Gavin Barraclough  <barraclough@apple.com>
3524
3525         Reviewed by Alexey Proskuryakov.
3526
3527         Bug 35401 - Fix handling of errors in handling calls over bridge,
3528         where base object bridge-type does not match method bridge-type.
3529
3530         The code assumes users will only attempt to invoke a Java method
3531         on a Java base object, etc.
3532         Add language specific subclasses of RuntimeMethod, and pass the
3533         RuntimeMethod into invokeMethod, so we can typecheck before
3534         casting.  Throw an exception on type mismatch.
3535
3536         * Plugins/Hosted/ProxyInstance.h:
3537         * Plugins/Hosted/ProxyInstance.mm:
3538         (WebKit::PluginRuntimeMethod::PluginRuntimeMethod): new class to distinguish this type of RuntimeMethod.
3539         (WebKit::ProxyInstance::getMethod): create an appropriate sublclass of RuntimeMethod.
3540         (WebKit::ProxyInstance::invokeMethod): dynamically check the type of the RuntimeMethod.
3541
3542 2010-02-25  Alexey Proskuryakov  <ap@apple.com>
3543
3544         Reviewed by Geoffrey Garen.
3545
3546         https://bugs.webkit.org/show_bug.cgi?id=35394
3547         <rdar://problem/7685262> Make passing objects between Java and plug-ins work
3548
3549         Added a ProxyInstance implementation of RuntimeObject.
3550
3551         * Plugins/Hosted/NetscapePluginInstanceProxy.mm:
3552         (WebKit::NetscapePluginInstanceProxy::addValueToArray):
3553         * Plugins/Hosted/ProxyInstance.h:
3554         * Plugins/Hosted/ProxyInstance.mm:
3555         (WebKit::ProxyInstance::newRuntimeObject):
3556         (WebKit::ProxyInstance::getClass):
3557         * Plugins/Hosted/ProxyRuntimeObject.h: Added.
3558         (WebKit::ProxyRuntimeObject::classInfo):
3559         * Plugins/Hosted/ProxyRuntimeObject.mm: Added.
3560         (WebKit::ProxyRuntimeObject::ProxyRuntimeObject):
3561         (WebKit::ProxyRuntimeObject::~ProxyRuntimeObject):
3562         (WebKit::ProxyRuntimeObject::getInternalProxyInstance):
3563
3564 2010-02-24  Adam Barth  <abarth@webkit.org>
3565
3566         Reviewed by Darin Fisher.
3567
3568         [Chromium API] Disambiguate allowJavaScript from didNotAllowScript