eb0edac7305a6ac67b418b94cea9d0dfd1aecdaa
[WebKit-https.git] / WebKit / win / ChangeLog
1 2007-12-05  Adam Roben  <aroben@apple.com>
2
3         Expose WebView::setProhibitsMainFrameScrolling through IWebViewPrivate
4
5         Reviewed by Steve.
6
7         * Interfaces/IWebViewPrivate.idl: Added declaration.
8         * WebInspectorClient.cpp:
9         (WebInspectorClient::createPage): Updated for change to
10         setProhibitsMainFrameScrolling signature.
11         * WebView.cpp:
12         (WebView::setProhibitsMainFrameScrolling): Updated and robustified.
13         * WebView.h:
14
15 2007-12-05  Dan Bernstein  <mitz@apple.com>
16
17         Reviewed by Darin Adler.
18
19         - WebKit/win part of fixing <rdar://problem/5111082> Flash popup video ad doesn't close when clicked at http://www.firestonecompleteautocare.com/
20
21         * WebView.cpp:
22         (WebView::initWithFrame): Attach the main frame's view.
23
24 2007-12-04  Ada Chan  <adachan@apple.com>
25
26         Provide API for setting the default storage quota per database origin
27
28         Reviewed by Jon.
29
30         * Interfaces/IWebPreferencesPrivate.idl: added SPI to get/set default database quota
31         * WebPreferenceKeysPrivate.h:
32         * WebPreferences.cpp:
33         (WebPreferences::initializeDefaultSettings): default database quota is 5MB
34         (WebPreferences::longlongValueForKey):
35         (WebPreferences::setLongLongValue):
36         (WebPreferences::defaultDatabaseQuota):
37         (WebPreferences::setDefaultDatabaseQuota):
38         * WebPreferences.h:
39         * WebView.cpp:
40         (WebView::notifyPreferencesChanged): propagate default database quota change to WebCore settings.
41
42 2007-12-04  Kevin McCullough  <kmccullough@apple.com>
43
44         Reviewed by Adam and Darin.
45
46         - Fixed a crasher where the top of the stack was not updated correctly.
47         And set the eol style on IWebScriptCallFrame.idl file.
48
49         * Interfaces/IWebScriptCallFrame.idl:
50         * WebScriptDebugger.cpp:
51         (WebScriptDebugger::atStatement):
52         (WebScriptDebugger::leaveFrame):
53
54 2007-11-27  Adam Roben  <aroben@apple.com>
55
56         Hook up the authorAndUserStylesEnabled preference
57
58         This is the Windows counterpart of r28071.
59
60         Reviewed by Maciej.
61
62         * Interfaces/IWebPreferencesPrivate.idl: Added new method
63         declarations.
64         * WebPreferenceKeysPrivate.h: Added a new preference key.
65         * WebPreferences.cpp:
66         (WebPreferences::initializeDefaultSettings): Set the default for the
67         new preference.
68         (WebPreferences::setAuthorAndUserStylesEnabled): Added.
69         (WebPreferences::authorAndUserStylesEnabled): Added.
70         * WebPreferences.h:
71         * WebView.cpp:
72         (WebView::notifyPreferencesChanged): Communicate the new preference
73         down to WebCore::Settings.
74
75 2007-12-04  Jon Honeycutt  <jhoneycutt@apple.com>
76
77         Reviewed by Ollie.
78
79         Don't crash if our JavaPlugin DLL can't be found 
80
81         * WebFrame.cpp:
82         (WebFrame::createJavaAppletWidget): Added null check
83
84 2007-12-04  Darin Adler  <darin@apple.com>
85
86         Reviewed by Kevin Decker.
87
88         * WebFrame.cpp: Removed obsolete privateBrowsingEnabled.
89         * WebFrame.h: Ditto.
90
91 2007-12-04  Adam Roben  <aroben@apple.com>
92
93         Windows build fix
94
95         * WebScriptCallFrame.cpp:
96
97 2007-12-03  Dan Bernstein  <mitz@apple.com>
98
99         Reviewed by Dave Hyatt.
100
101         - fix <rdar://problem/5346452> Resize event doesn't fire on body element inside a frame
102
103         * WebView.cpp:
104         (WebViewWndProc): Removed call to sendResizeEvent() since FrameView
105         sends them now.
106
107 2007-12-03  Kevin McCullough  <kmccullough@apple.com>
108
109         Reviewed by Adam.
110
111         - <rdar://5618942> Drosera: Console window does not process everything
112         correctly.
113         - <rdar://5619005> Drosera: could be sped up by moving the
114         WebScriptScope stuff into the WebScriptCallFrame.
115         - Now the console can correctly process objects and does not receive
116         notifications from JavaScriptCore about the JavaScript in Drosera's
117         own process.
118
119         * Interfaces/IWebScriptCallFrame.idl: Moved the variable lookup
120         functions from WebScriptScope to here.
121         * Interfaces/WebKit.idl: Removed WebScriptScope.
122         * WebKit.vcproj/Interfaces.vcproj: Ditto.
123         * WebKit.vcproj/WebKit.vcproj: Ditto.
124         * WebKit.vcproj/WebKitGUID.vcproj: Ditto.
125         * WebScriptCallFrame.cpp: Moved WebScriptScope functionality into here.
126         (WebScriptCallFrame::stringByEvaluatingJavaScriptFromString): Now
127         returns a string value for things that are not strings.
128         (WebScriptCallFrame::variableNames): Moved from WebScriptScope.
129         (WebScriptCallFrame::valueForVariable): Moved from WebScriptScope.
130         (WebScriptCallFrame::jsValueToString): Helper functions that converts
131         any JSValue to a String.
132         * WebScriptCallFrame.h: Moved WebScriptScope functionality into here.
133         * WebScriptDebugger.cpp: Added nested guards so that Drosera does not
134         receive notifications about JavaScript that Drosera is running just the
135         JavaScript WebKit is running.
136         (WebScriptDebugger::WebScriptDebugger):
137         (WebScriptDebugger::sourceParsed):
138         (WebScriptDebugger::callEvent):
139         (WebScriptDebugger::atStatement):
140         (WebScriptDebugger::returnEvent):
141         (WebScriptDebugger::exception):
142         * WebScriptDebugger.h: Ditto.
143         * WebScriptScope.cpp: Removed.
144         * WebScriptScope.h: Removed.
145
146 2007-12-03  Mark Rowe  <mrowe@apple.com>
147
148         Speculative Windows build fix.
149
150         * WebScriptCallFrame.cpp:
151         (WebScriptCallFrame::valueByEvaluatingJavaScriptFromString):
152
153 2007-12-03  Adam Roben  <aroben@apple.com>
154
155         Another speculative Windows build fix
156
157         * WebScriptCallFrame.cpp:
158         (WebScriptCallFrame::valueByEvaluatingJavaScriptFromString):
159
160 2007-12-03  Adam Roben  <aroben@apple.com>
161
162         Speculative Windows build fix
163
164         * WebFrame.cpp:
165         (WebFrame::globalContext):
166         (WebFrame::windowObjectCleared):
167         * WebScriptDebugger.cpp:
168         (WebScriptDebugger::WebScriptDebugger):
169
170 2007-12-01  Sam Weinig  <sam@webkit.org>
171
172         Rename IWebViewPrivate::selectionImageRect to IWebViewPrivate::selectionRect.
173
174         Rubber stamped by Adam Roben.
175
176         * Interfaces/IWebViewPrivate.idl:
177         * WebView.cpp:
178         (WebView::selectionRect):
179         * WebView.h:
180
181 2007-11-30  Ada Chan  <adachan@apple.com>
182
183         <rdar://problem/5621373> Added a way for the client to clear undo/redo
184         operations from a WebView.
185
186         Reviewed by Steve.
187
188         * Interfaces/IWebViewPrivate.idl:
189         * WebView.cpp:
190         (WebView::clearUndoRedoOperations):
191         * WebView.h:
192
193 2007-11-29  Anders Carlsson  <andersca@apple.com>
194
195         Reviewed by Sam.
196
197         Add an IWebFrameLoadDelegate2 interface with a didClearWindowObject method 
198         that passes in the frame whose window has been cleared. This matches a newly
199         added delegate method on the Mac.
200         
201         * Interfaces/IWebFrameLoadDelegate.idl:
202         * WebFrame.cpp:
203         (WebFrame::windowObjectCleared):
204
205 2007-11-29  Kevin McCullough  <kmccullough@apple.com>
206
207         Reviewed by Sam.
208
209         - <rdar://5618976> Drosera: should listen for the WebScriptDebugServer
210         dying and vice versa.
211
212         * Interfaces/IWebScriptDebugListener.idl: Added the new function to the
213         interface.
214         * WebKit.vcproj/WebKit.def: Added the new function to the def file so
215         Safari can tell WebKit when the server is dying.
216         * WebKit.vcproj/WebKit_debug.def: Ditto.
217         * WebKitDLL.cpp: Added the new function for Safari to call.
218         (RunAsLocalServer):
219         (LocalServerDidDie):
220         * WebScriptDebugServer.cpp: 
221         (WebScriptDebugServer::WebScriptDebugServer): Removed unused member.
222         (WebScriptDebugServer::sharedWebScriptDebugServer): Ditto, and added new
223         member to prevent adding or removing listeners when the server is dying.
224         (WebScriptDebugServer::addListener): Don't let new listeners be added
225         when the server is dying.
226         (WebScriptDebugServer::removeListener): Don't let listeners remove
227         themselves when the server is dying.  The server will remove them all
228         anyways.
229         (WebScriptDebugServer::serverDidDie): Notify all listeners that the
230         server is dying and remove all listeners.
231         * WebScriptDebugServer.h: Added the new method and removed an unused
232         member.
233
234 2007-11-29  Brady Eidson  <beidson@apple.com>
235
236         Build fix that works...?
237
238         * WebChromeClient.h:
239
240 2007-11-29  Brady Eidson  <beidson@apple.com>
241
242         Build fix
243
244         * WebChromeClient.cpp:
245         (WebChromeClient::requestQuotaIncreaseForNewDatabase):
246         (WebChromeClient::requestQuotaIncreaseForDatabaseOperation):
247
248 2007-11-29  Brady Eidson  <beidson@apple.com>
249
250         Keep it building with new client method
251
252         * WebChromeClient.cpp:
253         (ChromeClient::requestQuotaIncreaseForNewDatabase):
254         (ChromeClient::requestQuotaIncreaseForDatabaseOperation):
255         * WebChromeClient.h:
256
257 2007-11-29  Dan Bernstein  <mitz@apple.com>
258
259         Reviewed by Beth Dakin and Darin Adler.
260
261         - fix <rdar://problem/5346394> Contextmenu event doesn't fire on body element inside frame
262
263         * WebView.cpp:
264         (WebView::handleContextMenuEvent): Send the context menu event to the
265         frame containing the node that was hit.
266
267 2007-11-28  Kevin McCullough  <kmccullough@apple.com>
268
269         Reviewed by Tim.
270
271         - Added guards to the wait loop so execution would not hang and now the
272         console window can process JavaScript.
273
274         * WebScriptDebugServer.cpp:
275         (WebScriptDebugServer::suspendProcessIfPaused):
276
277 2007-11-28  Anders Carlsson  <andersca@apple.com>
278
279         Reviewed by Adam.
280
281         Implement the last bits of the WebDatabaseManager API.
282         
283         * Interfaces/IWebDatabaseManager.idl:
284         * WebDatabaseManager.cpp:
285         (isEqual):
286         (WebDatabaseManager::sharedWebDatabaseManager):
287         (WebDatabaseManager::dispatchDidModifyOrigin):
288         (WebDatabaseManager::dispatchDidModifyDatabase):
289         * WebDatabaseManager.h:
290
291 2007-11-28  Anders Carlsson  <andersca@apple.com>
292
293         Get Drosera working again for real.
294         
295         * COMEnumVariant.h:
296         (::Next):
297
298 2007-11-27  Kevin McCullough  <kmccullough@apple.com>
299
300         Reviewed by Maciej and Adam.
301
302         - Added Drosera to the WebKit project.
303
304         * WebKit.vcproj/WebKit.sln:
305
306 2007-11-27  Jon Honeycutt  <jhoneycutt@apple.com>
307
308         Reviewed by Adam.
309
310         Return bool from registerWebViewWindowClass, as nothing uses the ATOM.
311         Set haveRegisteredWindowClass to true
312
313         * WebView.cpp:
314         (registerWebViewWindowClass):
315
316 2007-11-27  Anders Carlsson  <andersca@apple.com>
317
318         Speculative fix to get Drosera working.
319         
320         * COMEnumVariant.h:
321         (::Next):
322         Update the number of elements fetched correctly.
323         
324 2007-11-27  Anders Carlsson <andersca@apple.com>
325
326         Reviewed by Adam.
327
328         Some COM cleanup.
329         
330         * CFDictionaryPropertyBag.cpp:
331         (CFDictionaryPropertyBag::QueryInterface):
332         * CFDictionaryPropertyBag.h:
333         * WebBackForwardList.cpp:
334         (WebBackForwardList::addItem):
335         (WebBackForwardList::removeItem):
336         * WebDownload.cpp:
337         (WebDownload::initWithRequest):
338         * WebFrame.cpp:
339         (WebFrame::loadRequest):
340         (WebFrame::initWithWebFrameView):
341         (WebFrame::webHistory):
342         (WebFrame::dispatchWillSendRequest):
343         * WebURLAuthenticationChallenge.cpp:
344         (WebURLAuthenticationChallenge::QueryInterface):
345         (WebURLAuthenticationChallenge::initWithProtectionSpace):
346         * WebURLAuthenticationChallenge.h:
347         * WebURLAuthenticationChallengeSender.cpp:
348         (WebURLAuthenticationChallengeSender::QueryInterface):
349         * WebURLAuthenticationChallengeSender.h:
350         * WebURLResponse.cpp:
351         (WebURLResponse::QueryInterface):
352         * WebURLResponse.h:
353         * WebView.cpp:
354         (WebView::notifyDidAddIcon):
355         (WebView::goToBackForwardItem):
356         (WebView::canHandleRequest):
357         (WebView::loadBackForwardListFromOtherView):
358         (core):
359
360 2007-11-27  Anders Carlsson  <andersca@apple.com>
361
362         Add COMEnumVariant.h to the project.
363         
364         * WebKit.vcproj/WebKit.vcproj:
365
366 2007-11-27  Anders Carlsson  <andersca@apple.com>
367
368         Reviewed by Adam.
369
370         Return E_INVALIDARG if the databaseName BSTR is null.
371         
372         * WebDatabaseManager.cpp:
373         (WebDatabaseManager::detailsForDatabaseWithOrigin):
374         (WebDatabaseManager::deleteDatabaseWithOrigin):
375
376 2007-11-27  Anders Carlsson  <andersca@apple.com>
377
378         Reviewed by Adam.
379
380         Implement the rest of the WebDatabaseManager API.
381
382         * COMEnumVariant.h:
383         * Interfaces/IWebDatabaseManager.idl:
384         * WebDatabaseManager.cpp:
385         (isEqual):
386         (DatabaseDetailsPropertyBag::DatabaseDetailsPropertyBag):
387         (DatabaseDetailsPropertyBag::~DatabaseDetailsPropertyBag):
388         (DatabaseDetailsPropertyBag::createInstance):
389         (DatabaseDetailsPropertyBag::AddRef):
390         (DatabaseDetailsPropertyBag::Release):
391         (DatabaseDetailsPropertyBag::QueryInterface):
392         (DatabaseDetailsPropertyBag::Read):
393         (DatabaseDetailsPropertyBag::Write):
394         (WebDatabaseManager::detailsForDatabaseWithOrigin):
395         (WebDatabaseManager::deleteAllDatabases):
396         (WebDatabaseManager::deleteDatabasesWithOrigin):
397         (WebDatabaseManager::deleteDatabaseWithOrigin):
398         * WebDatabaseManager.h:
399
400 2007-11-27  Ada Chan  <adachan@apple.com>
401
402         <rdar://problem/5616098> The BSTR returned by WebHistoryItem::alternateTitle
403         was not allocated correctly.
404
405         Reviewed by Anders.
406
407         * WebHistoryItem.cpp:
408         (WebHistoryItem::setAlternateTitle):
409         (WebHistoryItem::alternateTitle):
410         * WebHistoryItem.h:
411
412 2007-11-27  Anders Carlsson  <andersca@apple.com>
413
414         Reviewed by Adam.
415
416         Use COMEnumVariant in WebScriptCallFrame and WebScriptScope.
417         
418         * WebScriptCallFrame.cpp:
419         (WebScriptCallFrame::scopeChain):
420         * WebScriptScope.cpp:
421         (WebScriptScope::variableNames):
422
423 2007-11-27  Anders Carlsson  <andersca@apple.com>
424
425         Reviewed by Adam.
426
427         Use the correct include paths.
428         
429         * COMEnumVariant.h:
430
431 2007-11-27  Anders Carlsson  <andersca@apple.com>
432
433         Reviewed by Darin.
434    
435         Add COMEnumVariant, a templatized class with implements IEnumVARIANT and lets
436         you enumerate over a C++ container, be it WTF or STL.
437         
438         * COMEnumVariant.h: Added.
439         
440         * WebDatabaseManager.cpp:
441         (WebDatabaseManager::origins):
442         (WebDatabaseManager::databasesWithOrigin):
443         Implement these using COMEnumVariant.
444         
445         * WebSecurityOrigin.cpp:
446         (WebSecurityOrigin::QueryInterface):
447         * WebSecurityOrigin.h:
448         Add a UUID for the implementation so that other parts of WebKit can access
449         the WebCore::SecurityOriginData object.
450         
451 2007-11-26  Adam Roben  <aroben@apple.com>
452
453         Take advantage of the new Color constructor that takes a CGColorRef
454
455         This lets us handle grayscale colors (which only have 2 components).
456
457         Reviewed by Darin.
458
459         * WebKitGraphics.cpp:
460         (DrawTextAtPoint):
461
462 2007-11-26  Steve Falkenburg  <sfalken@apple.com>
463
464         Build fix.
465
466         * WebKit.vcproj/WebKit.make:
467
468 2007-11-26  Steve Falkenburg  <sfalken@apple.com>
469
470         Build fix.
471
472         * WebKit.vcproj/build-generated-files.sh:
473
474 2007-11-26  Steve Falkenburg  <sfalken@apple.com>
475
476         Build fix.
477
478         * WebKit.vcproj/build-generated-files.sh:
479
480 2007-11-26  Anders Carlsson  <andersca@apple.com>
481
482         Reviewed by Adam.
483
484         Add an implementation of IWebSecurityOrigin and a partially stubbed out
485         implementation of IWebDatabaseManager.
486         
487         * ForEachCoClass.h:
488         * Interfaces/IWebDatabaseManager.idl:
489         * Interfaces/WebKit.idl:
490         * WebDatabaseManager.cpp:
491         (WebDatabaseManager::createInstance):
492         (WebDatabaseManager::WebDatabaseManager):
493         (WebDatabaseManager::~WebDatabaseManager):
494         (WebDatabaseManager::QueryInterface):
495         (WebDatabaseManager::AddRef):
496         (WebDatabaseManager::Release):
497         (WebDatabaseManager::sharedWebDatabaseManager):
498         (WebDatabaseManager::origins):
499         (WebDatabaseManager::databasesWithOrigin):
500         (WebDatabaseManager::detailsForDatabaseWithOrigin):
501         (WebDatabaseManager::deleteAllDatabases):
502         (WebDatabaseManager::deleteDatabasesWithOrigin):
503         (WebDatabaseManager::deleteDatabaseWithOrigin):
504         * WebDatabaseManager.h:
505         * WebKit.vcproj/WebKit.vcproj:
506         * WebKitClassFactory.cpp:
507         * WebSecurityOrigin.cpp: Added.
508         (WebSecurityOrigin::createInstance):
509         (WebSecurityOrigin::WebSecurityOrigin):
510         (WebSecurityOrigin::~WebSecurityOrigin):
511         (WebSecurityOrigin::QueryInterface):
512         (WebSecurityOrigin::AddRef):
513         (WebSecurityOrigin::Release):
514         (WebSecurityOrigin::protocol):
515         (WebSecurityOrigin::domain):
516         (WebSecurityOrigin::port):
517         (WebSecurityOrigin::usage):
518         (WebSecurityOrigin::quota):
519         (WebSecurityOrigin::setQuota):
520         * WebSecurityOrigin.h: Added.
521
522 2007-11-26  Kevin McCullough  <kmccullough@apple.com>
523
524         Reviewed by Maciej.
525
526         - Implemented displaying variables for Drosera on Win.
527
528         * Interfaces/IWebScriptCallFrame.idl: Added a local function to be
529         able to access the WebScriptCallFrame.
530         * Interfaces/IWebScriptScope.idl: Implemented.
531         * Interfaces/WebKit.idl: Added WebScriptScope to the tlb.
532         * WebKit.vcproj/Interfaces.vcproj: 
533         * WebScriptCallFrame.cpp: Implemented the helper and accessor methods.
534         (EnumScopes::Next): Fixed a bug where we did not release correctly and
535         would accidentally destroy scopes.
536         (WebScriptCallFrame::stringByEvaluatingJavaScriptFromString):
537         Implemented.
538         (WebScriptCallFrame::valueByEvaluatingJavaScriptFromString): Implemented
539         * WebScriptCallFrame.h: Implemented the helper and accessor methods.
540         (WebScriptCallFrame::impl):
541         (WebScriptCallFrame::state):
542         * WebScriptScope.cpp: Implmented.
543         (EnumVariables::EnumVariables): Created an IEnumVariant over the
544         variables to be able to pass a DCOM acceptable structure back to
545         Drosera.
546         (EnumVariables::createInstance):
547         (EnumVariables::QueryInterface):
548         (EnumVariables::AddRef):
549         (EnumVariables::Release):
550         (EnumVariables::Next):
551         (EnumVariables::Skip):
552         (EnumVariables::Reset):
553         (EnumVariables::Clone):
554         (WebScriptScope::WebScriptScope):
555         (WebScriptScope::createInstance): Implemented.
556         (WebScriptScope::variableNames): Implemented.
557         (WebScriptScope::valueForVariable):
558         * WebScriptScope.h: Implmeneted.
559
560 2007-11-26  Anders Carlsson  <andersca@apple.com>
561
562         Reviewed by Brady.
563
564         Add IWebDatabaseManager and IWebSecurityOrigin interfaces.
565         
566         * Interfaces/IWebDatabaseManager.idl: Added.
567         * Interfaces/IWebSecurityOrigin.idl: Added.
568         * WebKit.vcproj/Interfaces.vcproj:
569         * WebKit.vcproj/WebKitGUID.vcproj:
570
571 2007-11-26  Alice Liu  <alice.liu@apple.com>
572
573         Reviewed by Jon Honeycutt.
574
575         Fall back to the default Policy Delegate in these functions, 
576         as is already done in dispatchDecidePolicyForNavigationAction
577
578         * WebFrame.cpp:
579         (WebFrame::dispatchDecidePolicyForMIMEType):
580         (WebFrame::dispatchDecidePolicyForNewWindowAction):
581         (WebFrame::dispatchUnableToImplementPolicy):
582
583 2007-11-25  Adam Roben  <aroben@apple.com>
584
585         Fix a leak pointed out by Alexey
586
587         * WebView.cpp:
588         (getUpdateRects): Use a Vector<unsigned char>, since OwnPtr doesn't
589         know to call delete[].
590
591 2007-11-25  Adam Roben  <aroben@apple.com>
592
593         Fix Bug 16138: Reduce code duplication in WebView.cpp
594
595         http://bugs.webkit.org/show_bug.cgi?id=16138
596
597         Reviewed by Sam.
598
599         * WebView.cpp:
600         (getUpdateRects): Factored code out of updateBackingStore and paint
601         into this new helper function.
602         (WebView::updateBackingStore): Use getUpdateRects.
603         (WebView::paint): Ditto.
604         (WebView::paintIntoBackingStore): Changed to take a const IntRect&.
605         (WebView::paintIntoWindow): Ditto.
606         * WebView.h:
607
608 2007-11-25  Adam Roben  <aroben@apple.com>
609
610         Add ImageDiff.vcproj to WebKit.sln
611
612         Reviewed by Sam.
613
614         * WebKit.vcproj/WebKit.sln:
615
616 2007-11-17  Timothy Hatcher  <timothy@apple.com>
617
618         Reviewed by Mark Rowe.
619
620         Bug 13470: i18n: The Web Inspector is not localizable
621         http://bugs.webkit.org/show_bug.cgi?id=13470
622
623         * English.lproj/Localizable.strings: Updated.
624         * WebInspectorClient.cpp:
625         (WebInspectorClient::localizedStringsURL): Empty stub.
626         * WebInspectorClient.h: Added localizedStringsURL.
627
628 2007-11-17  Alexey Proskuryakov  <ap@webkit.org>
629
630         Windows build fix.
631
632         * WebView.cpp:
633         (WebView::deleteSelection): Use canSmartCopyOrDelete() directly.
634
635 2007-11-14  Adam Roben  <aroben@apple.com>
636
637         Change Interfaces to be a "Static Library" project
638
639         Being a Utility project meant that Interfaces was rebuilding every
640         time (Utility projects are supposed to handle their own dependencies).
641         Interfaces isn't really a static library, but it means that VS will
642         handle dependencies for us (and not complain about missing manifests
643         like it did when the project was an Application).
644
645         * WebKit.vcproj/Interfaces.vcproj:
646
647 2007-11-14  Adam Roben  <aroben@apple.com>
648
649         Shut up FixMIDLHeaders.pl
650
651         * WebKit.vcproj/FixMIDLHeaders.pl:
652
653 2007-11-14  Adam Roben  <aroben@apple.com>
654
655         Change Interfaces to use a Utility configuration
656
657         It had previously been marked as an "Application (.exe)", which is
658         wrong but worked with most versions of Visual Studio.
659
660         Rubberstamped by Steve.
661
662         * WebKit.vcproj/Interfaces.vcproj:
663
664 2007-11-14  Anders Carlsson  <andersca@apple.com>
665
666         Reviewed by Adam.
667
668         Get the new focus window from the wParam instead of calling GetFocus().
669         Also, send blur even if there is no focused frame.
670                
671         * WebView.cpp:
672         (WebViewWndProc):
673
674 2007-11-14  Adam Roben  <aroben@apple.com>
675
676         Another build fix for systems without Cygwin in their PATH
677
678         * WebKit.vcproj/Interfaces.vcproj: Add Cygwin to the PATH in the
679         Post-Build Event.
680
681 2007-11-13  Kevin McCullough  <kmccullough@apple.com>
682
683         Reviewed by Adam.
684
685         - Make Drosera show source, source URLs, and function stack on Windows
686         and some minor fixes.
687
688         * WebScriptCallFrame.cpp: Fixed a bug where the callFrame was not reffed
689         properly before being returned, and changed functionName() to check for
690         Null or if the name is empty.
691         (EnumScopes::Clone):
692         (WebScriptCallFrame::WebScriptCallFrame):
693         (WebScriptCallFrame::createInstance):
694         (WebScriptCallFrame::caller):
695         (WebScriptCallFrame::functionName):
696         * WebScriptCallFrame.h: Ditto
697         * WebScriptDebugServer.cpp: Made the listenerSet static since we were
698         already treating it as if it were. Removed the EnumViews stuff.  This
699         was added by Steve to demonstrate DCOM and he thought it would be needed
700         by Drosera, but I don't believe it will be.
701         Implemented suspendProcessIfPaused() also added calls to it at the end
702         of several functions to ensure we pause if Drosera has told WebKit to.
703         (WebScriptDebugServer::WebScriptDebugServer):
704         (WebScriptDebugServer::sharedWebScriptDebugServer):
705         (WebScriptDebugServer::addListener):
706         (WebScriptDebugServer::removeListener):
707         (WebScriptDebugServer::suspendProcessIfPaused):
708         (WebScriptDebugServer::didLoadMainResourceForDataSource):
709         (WebScriptDebugServer::didParseSource):
710         (WebScriptDebugServer::failedToParseSource):
711         (WebScriptDebugServer::didEnterCallFrame):
712         (WebScriptDebugServer::willExecuteStatement):
713         (WebScriptDebugServer::willLeaveCallFrame):
714         (WebScriptDebugServer::exceptionWasRaised):
715         * WebScriptDebugServer.h: Ditto.
716         * WebScriptDebugger.cpp: The important change here is that leaveFrame()
717         is called before willLeaveCallFrame().  I think there is some EOL stuff
718         going on too.
719         - It was the implementing of these functions that allows source, the
720         source URLs and function stack to be displayed.
721         (WebScriptDebugger::callEvent):
722         (WebScriptDebugger::atStatement):
723         (WebScriptDebugger::returnEvent):
724         (WebScriptDebugger::exception):
725         (WebScriptDebugger::enterFrame):
726         (WebScriptDebugger::leaveFrame):
727         * WebView.cpp: Removed the EnumView functions.
728         (WebView::WebView):
729         (WebView::~WebView):
730
731 2007-11-13  Adam Roben  <aroben@apple.com>
732
733         Fix <rdar://5346832> Infinite recursion when opening Web Inspector on more than one tab
734
735         The bug was that multiple WebNodeHighlights would subclass the same
736         browser window, leading to infinite recursion within
737         SubclassedWndProc.
738
739         WebNodeHighlight is now a WindowMessageListener, and lets
740         WindowMessageBroadcaster handle subclassing the window.
741
742         Reviewed by Ada.
743
744         * WebNodeHighlight.cpp:
745         (WebNodeHighlight::WebNodeHighlight): Initialize m_observedWindow
746         member.
747         (WebNodeHighlight::~WebNodeHighlight): Unregister as a listener for
748         m_observedWindow.
749         (WebNodeHighlight::highlight): Register as a listener.
750         (WebNodeHighlight::windowReceivedMessage): Do the work that used to be
751         done in SubclassedWndProc.
752         * WebNodeHighlight.h: Made WebNodeHighlight a WindowMessageListener,
753         and renamed m_subclassedWindow to m_observedWindow.
754
755 2007-11-13  Adam Roben  <aroben@apple.com>
756
757         Build fix for systems that don't have Cygwin in their PATH
758
759         * WebKit.vcproj/Interfaces.vcproj: Put Cygwin in the PATH before
760         trying to run bash.
761
762 2007-11-13  Steve Falkenburg  <sfalken@apple.com>
763
764         Add IDOMElementPrivate::font() to get an element's font
765         as a WebFontDescription.
766         
767         Reviewed by Darin.
768
769         * DOMCoreClasses.cpp:
770         (DOMElement::font):
771         * DOMCoreClasses.h:
772         * Interfaces/DOMPrivate.idl:
773
774 2007-11-12  Adam Roben  <aroben@apple.com>
775
776         Windows build fix
777
778         * WebKit.vcproj/WebKit.def: Export fastZeroedMalloc.
779         * WebKit.vcproj/WebKit_debug.def: Ditto.
780
781 2007-11-09  Jon Honeycutt  <jhoneycutt@apple.com>
782
783         Reviewed by Sam.
784
785         <rdar://5585900>: Safari crashes when selected in context menu to open
786         audio format files (au, aif) with QT 7.3
787
788         The crash occurred on a machine where QT 7.3 was failing to initialize.
789         The fix is to avoid sending streams to full-page plugins that've failed 
790         to load
791
792         * WebFrame.cpp:
793         (WebFrame::finishedLoading): Check plugin status before calling manual
794         stream methods
795         (WebFrame::setMainDocumentError): Same
796         (WebFrame::committedLoad): Same
797
798 2007-11-09  Sam Weinig  <sam@webkit.org>
799
800         Rubber stamped by Oliver.
801
802         Make WebCore a dependency of Interfaces.
803
804         * WebKit.vcproj/WebKit.sln:
805
806 2007-11-04  Sam Weinig  <sam@webkit.org>
807
808         Reviewed by Adam Roben.
809
810         <rdar://problem/5435940>
811         The COM bindings for the DOM should be autogenerated like the other DOM bindings
812
813         Initial commit of the autogeneration of the COM DOM Bindings.  No behavior change
814         is being introduced in this patch and to insure that no conflicts arise, a temporary
815         prefix of "GEN_" has been used for all the new classes.
816
817         The build architecture for these bindings differs slightly from the other autogenerated
818         bindings.  Instead of building in WebCore and migrating the resuting code to WebKit (as
819         is done for the Objective-C bindigs currently), the IDLs and generation scripts are
820         migrated to WebKit and built there.  This is done with a series of scripts and Makefiles.
821
822         This commit includes:
823             - Hand rolled root class/Interface GEN_DOMObject used to facilated object creation
824               and ref-counting.
825             - Generating all of the Core DOM and most of HTML and CSS
826             - Generating Event, EventTarget, and EventListener
827
828         * DOMCreateInstance.cpp: Added.
829         (domWrapperCache):
830         (getDOMWrapper):
831         (setDOMWrapper):
832         (removeDOMWrapper):
833         (GEN_DOMNode::createInstance):
834         (GEN_DOMImplementation::createInstance):
835         (GEN_DOMCSSRule::createInstance):
836         (GEN_DOMStyleSheet::createInstance):
837         (GEN_DOMCSSValue::createInstance):
838         * DOMCreateInstance.h: Added.
839         Temporary location for createInstance/object caching methods.  This will be broken up
840         into seperate files in the near future.
841
842         * GEN_DOMObject.cpp: Added.
843         (GEN_DOMObject::GEN_DOMObject):
844         (GEN_DOMObject::~GEN_DOMObject):
845         (GEN_DOMObject::QueryInterface):
846         (GEN_DOMObject::AddRef):
847         (GEN_DOMObject::Release):
848         * GEN_DOMObject.h: Added.
849         Hand rolled base class.
850
851         * Interfaces/IGEN_DOMObject.idl: Added. 
852         Hand rolled base interface.
853
854         * WebKit.vcproj/DerivedSources.make: Added.
855         * WebKit.vcproj/FixMIDLHeaders.pl: Added.
856         This script is required because MIDL is producing un-buildable code due to
857         circular dependencies.
858
859         * WebKit.vcproj/Interfaces.vcproj:
860         * WebKit.vcproj/WebKit.vcproj:
861         * WebKit.vcproj/WebKitGUID.vcproj:
862         * WebKit.vcproj/build-generated-files.sh: Added.
863
864 2007-11-08  Kevin McCullough  <kmccullough@apple.com>
865
866         Reviewed by Adam.
867
868         - This patch does two main things.
869         1) It adds pragma warning guards around WebCore includes in WebKit files
870         that were previously overlooked.
871         2) It implements almost the entireity of WebScriptDebugger.  Only one
872         function remains and that implementation is dependent on finishing the
873         implementation of WebScriptScope.
874
875         * WebScriptCallFrame.h:
876         * WebScriptDebugServer.h:
877         * WebScriptDebugger.cpp:
878         (WebScriptDebugger::WebScriptDebugger):
879         (WebScriptDebugger::sourceParsed):
880         (WebScriptDebugger::callEvent):
881         (WebScriptDebugger::atStatement):
882         (WebScriptDebugger::returnEvent):
883         (WebScriptDebugger::exception):
884         (WebScriptDebugger::enterFrame):
885         (WebScriptDebugger::leaveFrame):
886         * WebScriptDebugger.h:
887
888 2007-11-08  Steve Falkenburg  <sfalken@apple.com>
889
890         <rdar://problem/5491463> Wrong dates shown in History menu.
891         
892         Fix off-by-one error in Windows epoch.
893         
894         For the Windows DATE type, 1/1/1900 should be 2.0, not 1.0.
895         DATE is the number of days since 12/30/1899.
896         
897         Reviewed by Ada.
898
899         * MarshallingHelpers.cpp:
900         (MarshallingHelpers::windowsEpochAbsoluteTime):
901
902 2007-11-08  Kevin McCullough  <kmccullough@apple.com>
903
904         Reviewed by Sam.
905
906         - With this change Drosera can now get the source of a website and the
907         listings of the sources it gets.  This also lays the foundation for
908         letting Drosera show the scope chain of the JavaScript stack.
909
910         * Interfaces/IWebFrame.idl: Changed the signature of the local function,
911         globalContext(), because COM was unable to marshal this object with the
912         other signature.
913         * Interfaces/IWebScriptDebugServer.idl: Of course adding and removing
914         a listener cannot be done in a const function.
915         * WebChromeClient.h: Added accessor to the WebView for the new added
916         kit() function in WebFrame.
917         (WebChromeClient::webView):
918         * WebFrame.cpp: Added a script debugger object and the necessary
919         functions to attach and communicate with it. Also needed to change the
920         local function, globalContext(), because of a COM issue.
921         (kit):
922         (WebFrame::WebFrame):
923         (WebFrame::globalContext):
924         (WebFrame::loadData):
925         (WebFrame::attachScriptDebugger):
926         (WebFrame::detachScriptDebugger):
927         (WebFrame::dispatchDidLoadMainResource):
928         (WebFrame::windowObjectCleared):
929         * WebFrame.h: Ditto.
930         * WebHTMLRepresentation.cpp: Implemented documentSource so Drosera has
931         some source code to display.
932         (WebHTMLRepresentation::WebHTMLRepresentation):
933         (WebHTMLRepresentation::documentSource):
934         * WebKit.vcproj/WebKit.vcproj: Added the new WebScriptDebugger class.
935         * WebScriptCallFrame.cpp: Implemented much of this class' functionality.
936         (EnumScopes::EnumScopes): Made an EnumScopes class to create an
937         IEnumVARIANT to wrap a ScopeChain for Drosera.
938         (EnumScopes::QueryInterface):
939         (EnumScopes::AddRef):
940         (EnumScopes::Release):
941         (EnumScopes::Next):
942         (EnumScopes::Skip):
943         (EnumScopes::Reset):
944         (EnumScopes::Clone):
945         (WebScriptCallFrame::caller):
946         (WebScriptCallFrame::scopeChain):
947         (WebScriptCallFrame::functionName):
948         (WebScriptCallFrame::stringByEvaluatingJavaScriptFromString):
949         * WebScriptCallFrame.h: Added member data needed for the above functions
950         * WebScriptDebugServer.cpp: Began implementing. 
951         (WebScriptDebugServer::listenerCount):
952         (EnumViews::QueryInterface):
953         (EnumViews::AddRef):
954         (EnumViews::Release):
955         (EnumViews::Next):
956         (EnumViews::Skip):
957         (EnumViews::Reset):
958         (EnumViews::Clone):
959         (WebScriptDebugServer::WebScriptDebugServer):
960         (WebScriptDebugServer::createInstance):
961         (WebScriptDebugServer::sharedWebScriptDebugServer):
962         (WebScriptDebugServer::AddRef):
963         (WebScriptDebugServer::Release):
964         (WebScriptDebugServer::addListener):
965         (WebScriptDebugServer::removeListener):
966         (WebScriptDebugServer::step):
967         (WebScriptDebugServer::pause):
968         (WebScriptDebugServer::resume):
969         (WebScriptDebugServer::isPaused):
970         (WebScriptDebugServer::suspendProcessIfPaused):
971         (WebScriptDebugServer::didLoadMainResourceForDataSource):
972         (WebScriptDebugServer::didParseSource):
973         (WebScriptDebugServer::failedToParseSource):
974         (WebScriptDebugServer::didEnterCallFrame):
975         (WebScriptDebugServer::willExecuteStatement):
976         (WebScriptDebugServer::willLeaveCallFrame):
977         (WebScriptDebugServer::exceptionWasRaised):
978         * WebScriptDebugServer.h: Began implementing.
979         * WebScriptDebugger.cpp: Added.
980         (WebScriptDebugger::WebScriptDebugger):
981         (WebScriptDebugger::sourceParsed):
982         * WebScriptDebugger.h: Added.
983         * WebScriptScope.cpp: Make this class use createInstance which is more
984         in line with our guidelines.
985         (WebScriptScope::WebScriptScope):
986         (WebScriptScope::createInstance):
987         * WebScriptScope.h:
988
989
990 2007-11-07  Darin Adler  <darin@apple.com>
991
992         Reviewed by Steve.
993
994         * Interfaces/IWebUIDelegate.idl: Added the functions needed below.
995         * WebChromeClient.cpp:
996         (WebChromeClient::setMenubarVisible): Eliminated the notImplemented()
997         here by calling through the UI delegate.
998         (WebChromeClient::menubarVisible): Ditto.
999         (WebChromeClient::runDatabaseSizeLimitPrompt): Ditto.
1000
1001 2007-11-07  Steve Falkenburg  <sfalken@apple.com>
1002
1003         Added IWebDocumentText available via QI from WebFrame.
1004         
1005         Reviewed by Sam.
1006
1007         * WebFrame.cpp:
1008         (WebFrame::QueryInterface): Added IID_IWebDocumentText.
1009         (WebFrame::supportsTextEncoding): Stubbed out.
1010         (WebFrame::selectedString): Implemented.
1011         (WebFrame::selectAll): Stubbed out.
1012         (WebFrame::deselectAll): Stubbed out.
1013         * WebFrame.h:
1014
1015 2007-11-07  Adam Roben  <aroben@apple.com>
1016
1017         Fix <rdar://5569268> Crash when opening any FTP site in second tab/window
1018
1019         Reviewed by Sam.
1020
1021         * WebView.cpp:
1022         (WebView::initWithFrame): Set the ftpDirectoryTemplatePath for every
1023         Page, not just the first one.
1024
1025 2007-11-06  Adam Roben  <aroben@apple.com>
1026
1027         Change WebLocalizableStrings to take UTF-8 C strings
1028
1029         This matches the way things work on the Mac, and will allow source
1030         files containing localizable strings to be shared between Mac and
1031         Windows. The old functions have not been removed for compatibility
1032         reasons, but are now just wrappers around the new UTF-8 functions.
1033
1034         Reviewed by Ada.
1035
1036         * WebKit.vcproj/WebKit.def: Added new functions.
1037         * WebKit.vcproj/WebKit_debug.def: Ditto.
1038         * WebLocalizableStrings.cpp:
1039         (copyLocalizedStringFromBundle): Changed to take a WebCore::String
1040         representing the key.
1041         (localizedString): Refactored from WebLocalizedString. Takes a
1042         WebCore::String representing the key.
1043         (localizedLPCTSTR): Ditto for WebLocalizedLPCTSTR.
1044         (WebLocalizedStringUTF8): Added. Takes a UTF-8 C string as the key.
1045         (WebLocalizedLPCTSTRUTF8): Ditto.
1046         (WebLocalizedString): Changed to call localizedString.
1047         (WebLocalizedLPCTSTR): Changed to call localizedLPCTSTR.
1048         * WebLocalizableStrings.h: Changed macros to use the new UTF-8
1049         functions.
1050
1051 2007-11-06  Darin Adler  <darin@apple.com>
1052
1053         Reviewed by Adam and Steve.
1054
1055         - added hooks needed to implement showModalDialog on Windows
1056
1057         * Interfaces/IWebUIDelegate.idl: Added canRunModal, createModalDialog,
1058         and runModal functions to the end of IWebUIDelegate3.
1059
1060         * WebChromeClient.h: Added uiDelegate and uiDelegate2 helper functions,
1061         so it's easier to write client functions.
1062         * WebChromeClient.cpp:
1063         (WebChromeClient::createWindow): Implemented dialog case. Calls IWebUIDelegate3.
1064         (WebChromeClient::canRunModal): Implemented. Calls IWebUIDelegate3.
1065         (WebChromeClient::runModal): Ditto.
1066         (WebChromeClient::uiDelegate): Added.
1067         (WebChromeClient::uiDelegate2): Added.
1068         (WebChromeClient::uiDelegate3): Added.
1069
1070 2007-11-06  Alexey Proskuryakov  <ap@webkit.org>
1071
1072         Rubber-stamped by Adam Roben.
1073
1074         Windows build fix.
1075
1076         * WebFrame.cpp:
1077         (WebFrame::string): plainText() returns a String now.
1078
1079 2007-11-05  Ada Chan  <adachan@apple.com>
1080
1081         <rdar://problem/5579772> Regression: AltGr does not work
1082         Testing whether alt-key is down is not the right test for system key event.
1083         Added a m_isSystemKey flag in PlatformKeyboardEvent to keep track of whether
1084         this is a system key event, check that flag instead in handleEditingKeyboardEvent().
1085
1086         Reviewed by Oliver.
1087
1088         * WebView.cpp:
1089         (WebView::keyUp):
1090         (WebView::handleEditingKeyboardEvent):
1091         (WebView::keyDown):
1092         (WebViewWndProc):
1093         * WebView.h:
1094
1095 2007-11-05  Ada Chan  <adachan@apple.com>
1096
1097         Build fix.
1098
1099         Reviewed by Tristan.
1100
1101         * WebChromeClient.h:
1102
1103 2007-11-05  Tristan O'Tierney  <tristan@apple.com>
1104
1105         Reviewed by Darin Adler.
1106         
1107         Part of the WebKit/WebCore API changes for
1108         <rdar://problem/5368188>
1109
1110         * WebChromeClient.cpp:
1111         (WebChromeClient::createWindow):
1112         Removed usage of createModalDialog and revised to use new createWindow
1113         ChromeClient API.
1114
1115 2007-11-04  Adam Roben  <aroben@apple.com>
1116
1117         Add IWebCache::disabled
1118
1119         This matches the Mac WebCache class.
1120
1121         Reviewed by Sam.
1122
1123         * Interfaces/IWebCache.idl:
1124         * WebCache.cpp:
1125         (WebCache::disabled):
1126         * WebCache.h:
1127
1128 2007-11-04  Adam Roben  <aroben@apple.com>
1129
1130         Add IWebInspector and a way to get one from a WebView
1131
1132         This API matches the Mac one added in r27266.
1133
1134         Reviewed by Sam.
1135
1136         * Interfaces/IWebInspector.idl: Added.
1137         * Interfaces/IWebViewPrivate.idl: Added a new inspector method to
1138         match Mac.
1139         * WebInspector.cpp: Added.
1140         (WebInspector::createInstance):
1141         (WebInspector::WebInspector):
1142         (WebInspector::~WebInspector):
1143         (WebInspector::webViewClosed):
1144         (WebInspector::QueryInterface):
1145         (WebInspector::AddRef):
1146         (WebInspector::Release):
1147         (WebInspector::show):
1148         (WebInspector::showConsole):
1149         (WebInspector::showTimeline):
1150         (WebInspector::close):
1151         (WebInspector::attach):
1152         (WebInspector::detach):
1153         * WebInspector.h: Added.
1154         * WebKit.vcproj/Interfaces.vcproj: Added IWebInspector.idl.
1155         * WebKit.vcproj/WebKit.vcproj: Added WebInspector.{cpp,h}.
1156         * WebKit.vcproj/WebKitGUID.vcproj: Added IWebInspector_i.c.
1157         * WebView.cpp:
1158         (WebView::close): Notify the WebInspector that we're closing.
1159         (WebView::inspector): Added.
1160         * WebView.h:
1161
1162 2007-11-04  Adam Roben  <aroben@apple.com>
1163
1164         Cache strings that come directly from WebLocalizedString
1165
1166         Reviewed by Steve.
1167
1168         * WebLocalizableStrings.cpp:
1169         (copyLocalizedStringFromBundle): This used to be WebLocalizedString,
1170         but is now just a static helper function.
1171         (findCachedStringInMap): Added static helper.
1172         (findCachedString): Refactored and cleaned up code from
1173         WebLocalizedLPCTSTR.
1174         (cacheString): Ditto.
1175         (WebLocalizedString): Rewrote to use the new helper functions.
1176         (WebLocalizedLPCTSTR): Changed to use the new helper functions.
1177
1178 2007-11-03  Adam Roben  <aroben@apple.com>
1179
1180         Only override the default user agent string if we're actually given a custom one
1181
1182         Reviewed by Sam.
1183
1184         * WebView.cpp:
1185         (WebView::setCustomUserAgent):
1186
1187 2007-11-01  Oliver Hunt  <oliver@apple.com>
1188
1189         Reviewed by Alexey.
1190
1191         Allow Shift, Ctrl, Alt, Meta and Capslock keys to be sent into WebCore.
1192
1193         * WebView.cpp:
1194         (WebView::keyDown):
1195         (WebView::keyUp):
1196
1197 2007-11-01  Kevin McCullough  <kmccullough@apple.com>
1198
1199         - Fixed a build failure
1200
1201         * WebEditorClient.cpp:
1202         (WebEditorClient::textWillBeDeletedInTextField):
1203
1204 2007-11-01  Adam Roben  <aroben@apple.com>
1205
1206         Fix the parameter type of WebLocalizedString to match the UI_STRING macro
1207
1208         Reviewed by Sam.
1209
1210         * WebLocalizableStrings.cpp:
1211         (WebLocalizedString):
1212         (WebLocalizedLPCTSTR):
1213         * WebLocalizableStrings.h:
1214
1215 2007-11-01  Alexey Proskuryakov  <ap@webkit.org>
1216
1217         Rubber-stamped by Adam Roben.
1218
1219         Rolled out r27326 - debug CRT seems to cause no problems after all.
1220
1221         * WebKit.vcproj/WebKit.vcproj:
1222
1223 2007-10-31  Adam Roben  <aroben@apple.com>
1224
1225         Switch the Debug configuration to using the non-debug CRT
1226
1227         The debug CRT conflicts with what Safari uses, which causes loading
1228         problems.
1229
1230         Reviewed by Steve.
1231
1232         * WebKit.vcproj/WebKit.vcproj:
1233
1234 2007-10-30  Kevin McCullough  <kmccullough@apple.com>
1235
1236         Reviewed by Adam and Geoff.
1237
1238         - Added the globalContext method so Drosera can ask a WebFrame for its
1239         context.
1240
1241         * Interfaces/IWebFrame.idl:
1242         * WebFrame.cpp:
1243         * WebFrame.h:
1244
1245 2007-10-30  Adele Peterson  <adele@apple.com>
1246
1247         Reviewed by Darin.
1248
1249         WebKitWin part of fix for http://bugs.webkit.org/show_bug.cgi?id=10577
1250         <rdar://problem/5110427> REGRESSION: Caps lock icon should show in password fields
1251
1252         * WebView.cpp: (WebView::keyDown): Call capsLockStateMayHaveChanged so WebCore knows it may have to update a password field.
1253
1254 2007-10-29  Kevin McCullough  <kmccullough@apple.com>
1255
1256         Reviewed by Adam and Maciej.
1257
1258         - Added the IWebScriptScope interface which is used by Drosera to get
1259         information and run contextually significant code with respect to the
1260         current JS stack frame.
1261
1262         * Interfaces/IWebScriptCallFrame.idl: Line endings changed, not sure why
1263         but the real changes were to change the return type of scopeChain() and
1264         the return type and name of evaluateWebScript() to
1265         stringByEvaluatingJavaScriptFromString().
1266         * Interfaces/IWebScriptScope.idl: Added.
1267         * WebKit.vcproj/Interfaces.vcproj: Added the new interface.
1268         * WebKit.vcproj/WebKit.vcproj: Added the files for the new class.
1269         * WebKit.vcproj/WebKitGUID.vcproj: Added the new interfaces.
1270         * WebScriptCallFrame.cpp: Changed the return type to E_NOTIMPL and
1271         asserted so it would be obvious if I accidentally try to use one of
1272         these functions before it's implemented.
1273         (WebScriptCallFrame::caller):
1274         (WebScriptCallFrame::scopeChain):
1275         (WebScriptCallFrame::functionName):
1276         (WebScriptCallFrame::stringByEvaluatingJavaScriptFromString):
1277         * WebScriptCallFrame.h: Changed the return types mentioned above.
1278         * WebScriptDebugServer.cpp: Also changed the return type to E_NOTIMPL.
1279         (WebScriptDebugServer::addListener):
1280         (WebScriptDebugServer::removeListener):
1281         (WebScriptDebugServer::step):
1282         (WebScriptDebugServer::pause):
1283         (WebScriptDebugServer::resume):
1284         (WebScriptDebugServer::isPaused):
1285         * WebScriptScope.cpp: Added.
1286         (WebScriptScope::WebScriptScope):
1287         (WebScriptScope::~WebScriptScope):
1288         (WebScriptScope::QueryInterface):
1289         (WebScriptScope::AddRef):
1290         (WebScriptScope::Release):
1291         (WebScriptScope::getVariableNames):
1292         (WebScriptScope::getValueForVariable):
1293         * WebScriptScope.h: Added.
1294
1295 2007-10-28  Darin Adler  <darin@apple.com>
1296
1297         - try to fix Windows build
1298
1299         * WebKit.vcproj/WebKit.vcproj: Suppress warning 4800 (conversion to bool),
1300         since we don't want to add !! everywhere, and because HashTable.h has a
1301         conversion to bool of this type now.
1302
1303 2007-10-27  Kevin McCullough  <kmccullough@apple.com>
1304
1305         Reviewed by Adam.
1306
1307         - Stubbed out IWebScriptCallFrame for Drosera.
1308
1309         * Interfaces/IWebScriptCallFrame.idl: Added function declarations.
1310         * WebKit.vcproj/WebKit.vcproj: Added .h/.cpp files to the project.
1311         * WebScriptCallFrame.cpp: Added.
1312         (WebScriptCallFrame::WebScriptCallFrame):
1313         (WebScriptCallFrame::~WebScriptCallFrame):
1314         (WebScriptCallFrame::createInstance):
1315         (WebScriptCallFrame::QueryInterface):
1316         (WebScriptCallFrame::AddRef):
1317         (WebScriptCallFrame::Release):
1318         (WebScriptCallFrame::caller):
1319         (WebScriptCallFrame::scopeChain):
1320         (WebScriptCallFrame::functionName):
1321         (WebScriptCallFrame::evaluateWebScript):
1322         * WebScriptCallFrame.h: Added.
1323
1324 2007-10-26  Kevin McCullough  <kmccullough@apple.com>
1325
1326         Reviewed by Sam and Steve.
1327
1328         - Added convenience methods for converting between BSTR and JSSTringRefs
1329         - Added WebKit_debug.def to the project.
1330
1331         * WebKit.vcproj/WebKit.def:
1332         * WebKit.vcproj/WebKit.vcproj:
1333         * WebKit.vcproj/WebKit_debug.def:
1334
1335 2007-10-25  Sam Weinig  <sam@webkit.org>
1336
1337         Reviewed by Adam Roben.
1338
1339         Make debug builds run again.
1340
1341         * WebView.cpp:
1342         (WebView::notifyPreferencesChanged):
1343
1344 2007-10-25  Sam Weinig  <sam@webkit.org>
1345
1346         Reviewed by Adam Roben.
1347
1348         Remove JSStringRefCFHack.
1349
1350         * WebKit.vcproj/WebKit.vcproj:
1351
1352 2007-10-25  Sam Weinig  <sam@webkit.org>
1353
1354         Reviewed by Steve Falkenburg.
1355
1356         Fix for <rdar://problem/5463608>
1357         Port WebKit cache model code (Windows needs a big disk cache, smarter memory cache) 
1358
1359         * Interfaces/IWebPreferences.idl: 
1360         Deprecate pageCacheSize and objectCacheSize and add cacheModel/setCacheModel.
1361
1362         * Interfaces/IWebPreferencesPrivate.idl:
1363         Add automaticallyDetectsCacheModel/setAutomaticallyDetectsCacheModel
1364      
1365         * WebFrame.cpp:
1366         (WebFrame::didPerformFirstNavigation):
1367         Implement based on the mac version.
1368
1369         * WebKit.vcproj/WebKit.vcproj:
1370         * WebKitSystemBits.cpp: Added.
1371         (WebMemorySize): Moved and renamed from WebPreferences.cpp
1372         (WebVolumeFreeSize): Added.
1373         * WebKitSystemBits.h: Added.
1374         * WebPreferenceKeysPrivate.h: Added WebKitCacheModelPreferenceKey.
1375
1376         * WebPreferences.cpp:
1377         (WebPreferences::sharedStandardPreferences):
1378         (WebPreferences::WebPreferences):
1379         (WebPreferences::initializeDefaultSettings): Added default for cacheModel.
1380         (WebPreferences::webPreferencesChangedNotification):
1381         (WebPreferences::webPreferencesRemovedNotification):
1382         (WebPreferences::initWithIdentifier): Post a preferences change notification.
1383         (WebPreferences::pageCacheSize): Deprecated.
1384         (WebPreferences::objectCacheSize): Deprecated.
1385         (WebPreferences::cacheModel): Added.
1386         (WebPreferences::setCacheModel): Added.
1387         (WebPreferences::setAutomaticallyDetectsCacheModel): Added.
1388         (WebPreferences::automaticallyDetectsCacheModel): Added.
1389         (WebPreferences::willAddToWebView): Added.
1390         (WebPreferences::didRemoveFromWebView): Added.
1391         * WebPreferences.h:
1392
1393         * WebView.cpp:
1394         (PreferencesChangedOrRemovedObserver::PreferencesChangedOrRemovedObserver):
1395         (PreferencesChangedOrRemovedObserver::~PreferencesChangedOrRemovedObserver):
1396         (PreferencesChangedOrRemovedObserver::QueryInterface):
1397         (PreferencesChangedOrRemovedObserver::AddRef):
1398         (PreferencesChangedOrRemovedObserver::Release):
1399         (PreferencesChangedOrRemovedObserver::sharedInstance):
1400         (PreferencesChangedOrRemovedObserver::onNotify):
1401         (PreferencesChangedOrRemovedObserver::notifyPreferencesChanged):
1402         (PreferencesChangedOrRemovedObserver::notifyPreferencesRemoved):
1403         This singleton class updates static properties for all webviews when
1404         preferenceChange or preferenceRemoved notifications are fired for
1405         any WebPreference.
1406         (WebView::WebView):
1407         (WebView::~WebView):
1408         (initializeStaticObservers):
1409         (allWebViewsSet):
1410         (WebView::addToAllWebViewsSet):
1411         (WebView::removeFromAllWebViewsSet):
1412         (WebView::setCacheModel):
1413         (WebView::cacheModel):
1414         (WebView::didSetCacheModel):
1415         (WebView::maxCacheModelInAnyInstance):
1416         (WebView::close):
1417         (WebViewWndProc):
1418         (WebView::developerExtrasEnabled):
1419         (WebView::initWithFrame):
1420         (WebView::setPreferences):
1421         (WebView::preferences):
1422         (WebView::onNotify):
1423         (WebView::notifyPreferencesChanged):
1424         (updateSharedSettingsFromPreferencesIfNeeded):
1425         * WebView.h:
1426         Match the macs behavior by using explicit postings of notifications to
1427         update the preferences.
1428
1429 2007-10-25  Adam Roben  <aroben@apple.com>
1430
1431         Update WebKit.sln for the removal of Release dftables
1432
1433         Reviewed by NOBODY.
1434
1435         * WebKit.vcproj/WebKit.sln:
1436
1437 2007-10-25  Kevin McCullough  <kmccullough@apple.com>
1438
1439         Rubber stamped by Geoff.
1440
1441         - Stubbed out the WebScriptDebugServer methods to give Drosera something
1442         to connect to and now the signature of the interface matches the mac.
1443
1444         * Interfaces/IWebScriptDebugServer.idl:
1445         * WebScriptDebugServer.cpp:
1446         (WebScriptDebugServer::addListener):
1447         (WebScriptDebugServer::removeListener):
1448         (WebScriptDebugServer::step):
1449         (WebScriptDebugServer::pause):
1450         (WebScriptDebugServer::resume):
1451         (WebScriptDebugServer::isPaused):
1452         * WebScriptDebugServer.h:
1453
1454 2007-10-24  Kevin McCullough  <kmccullough@apple.com>
1455
1456         Reviewed by Darin.
1457
1458         - Renamed WebDebugProgram to WebScriptDebugServer to match the naming
1459         scheme on the mac.
1460
1461         * Interfaces/IWebDebugProgram.idl: Removed.
1462         * Interfaces/IWebScriptDebugServer.idl: Copied from win/Interfaces/IWebDebugProgram.idl.
1463         * Interfaces/WebKit.idl: 
1464         * WebDebugProgram.cpp: Removed.
1465         * WebDebugProgram.h: Removed.
1466         * WebKit.vcproj/Interfaces.vcproj:
1467         * WebKit.vcproj/WebKit.vcproj:
1468         * WebKit.vcproj/WebKitGUID.vcproj:
1469         * WebKitClassFactory.cpp:
1470         (WebKitClassFactory::CreateInstance):
1471         * WebKitDLL.cpp:
1472         (RunAsLocalServer):
1473         * WebScriptDebugServer.cpp: Copied from win/WebDebugProgram.cpp.
1474         (WebScriptDebugServer::WebScriptDebugServer):
1475         (WebScriptDebugServer::~WebScriptDebugServer):
1476         (WebScriptDebugServer::createInstance):
1477         (WebScriptDebugServer::QueryInterface):
1478         (WebScriptDebugServer::AddRef):
1479         (WebScriptDebugServer::Release):
1480         (WebScriptDebugServer::viewAdded):
1481         (WebScriptDebugServer::viewRemoved):
1482         (WebScriptDebugServer::attach):
1483         (WebScriptDebugServer::detach):
1484         (WebScriptDebugServer::statistics):
1485         (WebScriptDebugServer::webViews):
1486         * WebScriptDebugServer.h: Copied from win/WebDebugProgram.h.
1487         * WebView.cpp:
1488         (WebView::WebView):
1489         (WebView::~WebView):
1490
1491 2007-10-24  Adam Roben  <aroben@apple.com>
1492
1493         Fix <rdar://5549919> Initialize the font database before any font code is invoked
1494
1495         We initialize the database in two places:
1496            1. When instantiating WebKitClassFactory, which is guaranteed to
1497            happen before any WebView is instantiated.
1498            2. When making a WebCore::Font in WebKitGraphics.
1499
1500         This ensures that the font database will be populated before any font
1501         code is invoked. We rely on WebCore to only populate the database
1502         once.
1503
1504         Reviewed by Ada.
1505
1506         * WebKitClassFactory.cpp:
1507         (WebKitClassFactory::WebKitClassFactory): Populate the font database.
1508         * WebKitGraphics.cpp:
1509         (makeFont): Ditto.
1510
1511 2007-10-24  Adam Roben  <aroben@apple.com>
1512
1513         Add [I]WebTextRenderer
1514
1515         Right now this class can only be used to add private fonts for use by
1516         the running process, but will eventually be the home of the
1517         WebKitGraphics functions.
1518
1519         Reviewed by Ada.
1520
1521         * ForEachCoClass.h: Added WebTextRenderer.
1522         * Interfaces/WebKit.idl: Ditto.
1523         * WebKit.vcproj/Interfaces.vcproj: Ditto.
1524         * WebKit.vcproj/WebKit.vcproj: Ditto.
1525         * WebKit.vcproj/WebKitGUID.vcproj: Ditto.
1526         * WebKitClassFactory.cpp: Ditto.
1527         * WebTextRenderer.cpp: Added.
1528         (WebTextRenderer::createInstance):
1529         (WebTextRenderer::WebTextRenderer):
1530         (WebTextRenderer::~WebTextRenderer):
1531         (WebTextRenderer::QueryInterface):
1532         (WebTextRenderer::AddRef):
1533         (WebTextRenderer::Release):
1534         (WebTextRenderer::registerPrivateFont):
1535         * WebTextRenderer.h: Added.
1536
1537 2007-10-24  Adam Roben  <aroben@apple.com>
1538
1539         Use FOR_EACH_COCLASS in WebKitClassFactory
1540
1541         Reviewed by Ada.
1542
1543         * WebError.cpp:
1544         (WebError::createInstance): Added an overload that takes no arguments
1545         to make the macro used in WebKitClassFactory work.
1546         * WebError.h:
1547         * WebKitClassFactory.cpp:
1548         (WebKitClassFactory::CreateInstance): Use FOR_EACH_COCLASS.
1549
1550 2007-10-24  Adam Roben  <aroben@apple.com>
1551
1552         Put FOR_EACH_COCLASS macro into its own file and export it
1553
1554         The macro used to be called FOR_EACH_CLASS and lived in WebKitDLL.cpp.
1555         This way we will be able to use the macro in more places that care
1556         about all WebKit's COM classes.
1557
1558         Reviewed by Ada.
1559
1560         * ForEachCoClass.h: Added.
1561         * WebKit.vcproj/WebKit.vcproj: Copy ForEachCoClass.h to
1562         WebKitOutputDir, and added it to the project.
1563         * WebKitDLL.cpp: Updated for macro rename, and changed to #undef the
1564         macros we pass to FOR_EACH_COCLASS after we're done with them.
1565
1566 2007-10-24  Ada Chan  <adachan@apple.com>
1567
1568         <rdar://problem/5552221> REGRESSION(310A24-ToT): Shortcut key disable. (15604)
1569
1570         Reviewed by Adam.
1571
1572         * WebView.cpp:
1573         (WebView::handleEditingKeyboardEvent): don't handle system key events as text input
1574         (WebView::keyDown): only remove WM_SYSCHAR message from the queue if we handle it.
1575         For WM_SYSCHAR message that we don't handle, let it stay in the queue and return 
1576         false to let windows handle it.
1577
1578 2007-10-24  Brady Eidson  <beidson@apple.com>
1579
1580         Reviewed by Anders
1581
1582         Windows portion of <rdar://5554130> 
1583         
1584         Slowly introduce Windows WebKit portion of the Database API that sets the 
1585         on-disk location for databases
1586         
1587         * WebDatabaseManager.cpp: Added.
1588         (WebKitSetWebDatabasesPathIfNecessary):
1589         * WebDatabaseManager.h: Added.
1590         
1591         * WebKit.vcproj/WebKit.vcproj:
1592         
1593         * WebView.cpp:
1594         (WebView::initWithFrame): Call WebKitSetWebDatabasesPathIfNecessary()
1595
1596 2007-10-24  Kevin McCullough  <kmccullough@apple.com>
1597
1598         Reviewed by Sam, Steve and Darin.
1599
1600         - Added stubs for what will be neede to let Drosera attach to the
1601         WebKit process and debug it.
1602
1603         * Interfaces/IWebScriptCallFrame.idl: Added.
1604         * Interfaces/IWebScriptDebugListener.idl: Added.
1605         * Interfaces/WebKit.idl:
1606         * WebKit.vcproj/Interfaces.vcproj:
1607         * WebKit.vcproj/WebKitGUID.vcproj:
1608
1609 2007-10-23  Adam Roben  <aroben@apple.com>
1610
1611         Move safe file creation code to WebCore
1612
1613         Reviewed by Brady.
1614
1615         * WebPreferences.cpp:
1616         (preferencesPath): Made into a static helper function.
1617         (WebPreferences::save): Now calls WebCore's safeCreateFile function.
1618         (WebPreferences::load): Uses String/CString to handle the UTF-8
1619         conversion.
1620         * WebPreferences.h: Removed preferencesPath and
1621         safeCreateFileWithData.
1622
1623 2007-10-23  Adam Roben  <aroben@apple.com>
1624
1625         Reduce code duplication by using WebCore's FileSystem functions
1626
1627         Reviewed by Brady.
1628
1629         * WebIconDatabase.cpp: Removed a now-unused function and a fixed
1630         FIXME.
1631         (WebIconDatabase::init): Changed to use FileSystem functions.
1632         * WebPreferences.cpp:
1633         (WebPreferences::preferencesPath): Ditto.
1634
1635 2007-10-23  Sam Weinig  <sam@webkit.org>
1636
1637         Make the WebNotificationCenter work with null (wildcard) and specific
1638         observed objects, matching NSNotificationCenter.
1639
1640         - Removes the ObserverKey, ObserverHash, and ObserverKeyTraits as we now
1641           hash against the notification name only and check the object on notification
1642           posting.
1643         - Use OwnPtr for the WebNotificationCenterPrivate member variable.
1644
1645         Reviewed by Adam Roben.
1646
1647         * WebNotificationCenter.cpp:
1648         (WebNotificationCenter::WebNotificationCenter):
1649         (WebNotificationCenter::~WebNotificationCenter):
1650         (WebNotificationCenter::postNotificationInternal):
1651         (WebNotificationCenter::addObserver):
1652         (WebNotificationCenter::postNotification):
1653         (WebNotificationCenter::postNotificationName):
1654         (WebNotificationCenter::removeObserver):
1655         * WebNotificationCenter.h:
1656
1657 2007-10-23  Ada Chan  <adachan@apple.com>
1658
1659         <rdar://problem/5244261> SafariWin ignores cookie policy setting "never" in the preferences
1660         Custom WebPreferences (not the shared WebPreferences) could override the cookie accept
1661         policy setting on the default cookie storage.  To fix that, I added a new method in
1662         WebView called updateGlobalSettingsFromPreferences() to handle updating the global pref
1663         options such as cookie accept policy, and it's only called to update changes from
1664         the shared WebPreferences.
1665         
1666         Use CLSID_WebPreferences and remove IID_WebPreferences.
1667
1668         Reviewed by Darin and Adam.
1669
1670         * WebPreferences.cpp:
1671         (WebPreferences::QueryInterface):
1672         * WebPreferences.h:
1673         * WebView.cpp:
1674         (WebView::updateWebCoreSettingsFromPreferences):
1675         (WebView::updateGlobalSettingsFromPreferences):
1676         (WebView::updateSettingsFromPreferences):
1677         (WebView::developerExtrasEnabled):
1678         (WebView::initWithFrame):
1679         (WebView::onNotify):
1680         * WebView.h:
1681
1682 2007-10-18  Brady Eidson  <beidson@apple.com>
1683
1684         Reviewed by Anders
1685
1686         Keep windows building with new Chrome additions
1687
1688         * WebChromeClient.cpp:
1689         * WebChromeClient.h:
1690
1691 2007-10-18  Adam Roben  <aroben@apple.com>
1692
1693         Fix <rdar://5547784> ProgIDMacros.h should explicitly use wide strings
1694
1695         Reviewed by Adele.
1696
1697         * ProgIDMacros.h: Always use wide strings instead of relying on the
1698         TEXT macro.
1699
1700 2007-10-17  Adam Roben  <aroben@apple.com>
1701
1702         Fix for clean builds needed after r26683
1703
1704         Reviewed by NOBODY.
1705
1706         * WebView.cpp: Remove #include of non-existant file.
1707
1708 2007-10-17  Anders Carlsson  <andersca@apple.com>
1709
1710         Update for locking primitive changes.
1711
1712         * WebIconDatabase.cpp:
1713         (WebIconDatabase::scheduleNotificationDelivery):
1714
1715 2007-10-16  Adam Roben  <aroben@apple.com>
1716
1717         Remove WebKitInitializer
1718
1719         Reviewed by Sam.
1720
1721         * WebKit.vcproj/WebKit.sln:
1722
1723 2007-10-16  Adam Roben  <aroben@apple.com>
1724
1725         Add FindSafari
1726
1727         Reviewed by Darin.
1728
1729         * WebKit.vcproj/WebKit.sln:
1730
1731 2007-10-16  Adam Roben  <aroben@apple.com>
1732
1733         Rename WebKit_debug.dll to WebKit.dll for the Debug configuration
1734
1735         This is needed so that we can stop having Safari delay-load WebKit,
1736         which in turn is needed so that Maciej can land a JavaScript speedup
1737         which breaks delay-loading.
1738
1739         Reviewed by Kevin McCullough.
1740
1741         * WebKit.vcproj/WebKit.vcproj: Use WebKitDLLConfigSuffix for the name
1742         of our DLL and module definition file.
1743         * WebKit.vcproj/debug.vsprops: Added WebKitDLLConfigSuffix.
1744         * WebKit.vcproj/debug_internal.vsprops: Ditto.
1745         * WebKit.vcproj/release.vsprops: Ditto.
1746
1747 2007-10-15  Jon Honeycutt  <jhoneycutt@apple.com>
1748
1749         Reviewed by Ollie.
1750
1751         <rdar://5530789>: REGRESSION(303-310A19): Crash opening .wma files with
1752         MediaPlayer for the first time
1753
1754         Failure to setup the stream in PluginView::didReceiveResponse will lead,
1755         in a full-page plugin, to the main document load being cancelled. This
1756         is the case with at least two versions of Windows Media Player, which
1757         cancels the stream and brings up its own "Welcome to Windows Media
1758         Player" dialog.
1759         
1760         As part of the main document load cancellation, m_pluginView is set to
1761         null, and the crash came from dereferencing this pointer. This patch
1762         adds a null check.
1763
1764         * WebFrame.cpp:
1765         (WebFrame::finishedLoading): Fix some typos
1766         (WebFrame::committedLoad): Added a null check
1767
1768 2007-10-15  Alice Liu  <alice.liu@apple.com>
1769
1770         Reviewed by Sam Weinig.
1771
1772         Fixed <rdar://5382546> layoutTestController.setCustomPolicyDelegate is unimplemented causing tests to fail
1773
1774         * DefaultPolicyDelegate.cpp: Added.
1775         Implementation is a direct port of WebKit/DefaultDelegates/WebDefaultPolicyDelegate.m
1776         (DefaultPolicyDelegate::DefaultPolicyDelegate):
1777         (DefaultPolicyDelegate::~DefaultPolicyDelegate):
1778         (DefaultPolicyDelegate::sharedInstance):
1779         (DefaultPolicyDelegate::createInstance):
1780         (DefaultPolicyDelegate::QueryInterface):
1781         (DefaultPolicyDelegate::AddRef):
1782         (DefaultPolicyDelegate::Release):
1783         (DefaultPolicyDelegate::decidePolicyForNavigationAction):
1784         (DefaultPolicyDelegate::decidePolicyForNewWindowAction):
1785         (DefaultPolicyDelegate::decidePolicyForMIMEType):
1786         (DefaultPolicyDelegate::unableToImplementPolicyWithError):
1787         * DefaultPolicyDelegate.h: Added.
1788         * WebFrame.cpp:
1789         (WebFrame::dispatchDecidePolicyForNavigationAction):
1790         Implemented default action
1791         * WebKit.vcproj/WebKit.vcproj:
1792         Adding files to project
1793
1794 2007-10-12  Steve Falkenburg  <sfalken@apple.com>
1795
1796         Move pthreads up in the linker order and don't mark it for delay load.
1797         Fixes crash during regsvr32 of WebKit (currently repro if you do a spade ti).
1798         
1799         Reviewed by Darin, Ada.
1800
1801         * WebKit.vcproj/WebKit.vcproj:
1802
1803 2007-10-11  Steve Falkenburg  <sfalken@apple.com>
1804
1805         Delay load additional libraries to improve startup time.
1806         
1807         Reviewed by Darin, Ada.
1808
1809         * WebKit.vcproj/WebKit.vcproj:
1810
1811 2007-10-11  Ada Chan  <adachan@apple.com>
1812
1813         <rdar://problem/5534421>
1814         Switched to using wkGetDefaultHTTPCookieStorage() to avoid recreating CFHTTPCookieStorageRef.
1815         Removed usage of ResourceHandle::cookieStorage().
1816
1817         Reviewed by Oliver.
1818
1819         * WebView.cpp:
1820         (WebView::updateWebCoreSettingsFromPreferences):
1821         (WebView::initWithFrame):
1822
1823 2007-10-10  Alice Liu  <alice.liu@apple.com>
1824
1825         Reviewed by Geoff Garen.
1826
1827         Fixed <rdar://5464402> Crash when running fast/frames/onload-remove-iframe-crash.html in DRT
1828
1829         * WebFrame.cpp:
1830         (WebFrame::createFrame):
1831         The crash was caused by the early destruction of the subframe.  To resolve this issue, 
1832         the manual deref of the child frame that occurs in between being appended to the 
1833         frametree and being used in loadURLIntoChild wasn't exactly incorrect, but just needed 
1834         to be moved until after loadURLIntoChild. This hasn't been a problem for other uses of 
1835         child frames because this test case involves removing a child frame immediately after 
1836         loading it, all in an onload handler.  Even better than just moving the deref would be 
1837         to change the signature of createFrame to use a RefPtr<Frame> so that a manual deref isn't 
1838         necessary. This is what was done in this patch. 
1839         * WebFrame.h:
1840         createFrame() now returns a RefPtr instead of a raw Frame pointer. 
1841         Making this change improves the way we handle frames on Windows WebKit. 
1842
1843
1844 2007-10-05  Ada Chan  <adachan@apple.com>
1845
1846         <rdar://problem/5436617>
1847         Implement WebIconDatabase::delayDatabaseCleanup() and WebIconDatabase::allowDatabaseCleanup().
1848
1849         Reviewed by Brady.
1850
1851         * WebIconDatabase.cpp:
1852         (WebIconDatabase::delayDatabaseCleanup):
1853         (WebIconDatabase::allowDatabaseCleanup):
1854
1855 2007-10-04  Adele Peterson  <adele@apple.com>
1856
1857         * Interfaces/IWebViewPrivate.idl: Moving setInitialFocus down to the end to avoid breaking the OpenSource build.
1858
1859 2007-10-04  Adele Peterson  <adele@apple.com>
1860
1861         Reviewed by Darin.
1862
1863         WebKit/win part of fix for <rdar://problem/5369017> REGRESSION: Can't tab to webview that doesn't have editable content
1864
1865         * WebView.cpp: Added setInitialFocus so the application can specify that its handing off focus to WebKit
1866           and so that it can specify the focus direction.
1867         * WebView.h: ditto.
1868         * Interfaces/IWebViewPrivate.idl: ditto.
1869
1870 2007-10-03  Ada Chan  <adachan@apple.com>
1871
1872         <rdar://problem/5521230> Implement IWebIconDatabase::iconURLForURL in WebKit for windows
1873
1874         Reviewed by Steve and Brady.
1875
1876         * Interfaces/IWebIconDatabase.idl:
1877         * WebIconDatabase.cpp:
1878         (WebIconDatabase::iconURLForURL):
1879         * WebIconDatabase.h:
1880
1881 2007-10-02  Sam Weinig  <sam@webkit.org>
1882
1883         Rubber-stamped by Adam Roben.
1884
1885         * Interfaces/IWebPreferences.idl: Remove unnecessary comments. 
1886
1887 2007-10-02  Darin Adler  <darin@apple.com>
1888
1889         Reviewed by Adam.
1890
1891         - started using the new OwnPtr everywhere we do DeleteObject
1892
1893         * WebNodeHighlight.cpp:
1894         (WebNodeHighlight::updateWindow):
1895         * WebView.cpp:
1896         (WebView::WebView):
1897         (WebView::deleteBackingStore):
1898         (WebView::ensureBackingStore):
1899         (WebView::addToDirtyRegion):
1900         (WebView::scrollBackingStore):
1901         (WebView::updateBackingStore):
1902         (WebView::paint):
1903         (WebView::paintIntoBackingStore):
1904         (WebView::paintIntoWindow):
1905         * WebView.h:
1906
1907 2007-10-02  Adam Roben  <aroben@apple.com>
1908
1909         Fix <rdar://5505062> WebKit's version-independent ProgIDs contain version numbers
1910
1911         I also added a few registry keys for our version-independent ProgIDs
1912         that we were missing.
1913
1914         Reviewed by Steve.
1915
1916         * ProgIDMacros.h: Added new macros to get version-independent ProgIDs.
1917         * WebKitDLL.cpp: Use the version-independent ProgIDs in the right
1918         places, and added some new keys for version-independent ProgIDs.
1919
1920 2007-10-02  Anders Carlsson  <andersca@apple.com>
1921
1922         Reviewed by Adam.
1923
1924         Fix a bug discovered by app verifier where we would treat an LPCTSTR as a BSTR causing a crash.
1925         
1926         Also rename some protection space constants and change their values to match the mac version.
1927         
1928         * Interfaces/IWebURLAuthenticationChallenge.idl:
1929         * WebURLProtectionSpace.cpp:
1930         (WebURLProtectionSpace::initWithHost):
1931         (WebURLProtectionSpace::initWithProxyHost):
1932         (WebURLProtectionSpace::protocol):
1933         (WebURLProtectionSpace::proxyType):
1934
1935 2007-09-29  Adam Roben  <aroben@apple.com>
1936
1937         Clean-up in preparation for <rdar://5505062> WebKit's version-independent ProgIDs contain version numbers
1938
1939         Reviewed by Steve.
1940
1941         * ProgIDMacros.h: Stringify the passed in class name.
1942         * WebKitDLL.cpp: Added a FOR_EACH_CLASS macro to ensure that our class
1943         lists stay in the right order, and updated uses of the *_PROGID macros
1944         for to take the stringification into account.
1945
1946 2007-09-27  Kevin McCullough  <kmccullough@apple.com>
1947
1948         Reviewed by Darin.
1949
1950         - <rdar://5261371> Nothing downloaded when exporting bookmarks from iGoogle web history
1951         - Implemented IWebHTTPURLResponse::allHeaderFields so that if the content disposition is "attachment" we will download the file instead of display it.  Also implemented some missing functionality.
1952
1953         * HTTPHeaderPropertyBag.cpp: Added.
1954         (HTTPHeaderPropertyBag::HTTPHeaderPropertyBag):
1955         (HTTPHeaderPropertyBag::createInstance):
1956         (HTTPHeaderPropertyBag::setResponse):
1957         (HTTPHeaderPropertyBag::response):
1958         (HTTPHeaderPropertyBag::QueryInterface):
1959         (HTTPHeaderPropertyBag::AddRef):
1960         (HTTPHeaderPropertyBag::Release):
1961         (ConvertFromLPCOLESTR):
1962         (ConvertToVariant):
1963         (ConvertFromVariant):
1964         (HTTPHeaderPropertyBag::Read):
1965         (HTTPHeaderPropertyBag::Write):
1966         * HTTPHeaderPropertyBag.h: Added.
1967         * Interfaces/IWebHTTPURLResponse.idl:
1968         * WebKit.vcproj/WebKit.vcproj:
1969         * WebURLResponse.cpp:
1970         (WebURLResponse::allHeaderFields):
1971         (WebURLResponse::isAttachment):
1972         * WebURLResponse.h:
1973
1974 2007-09-27  Ada Chan  <adachan@apple.com>
1975
1976         <rdar://problem/5507481> Added a delegate method to inform the client
1977         app that WebView has painted.
1978
1979         Reviewed by Steve.
1980
1981         * Interfaces/IWebUIDelegatePrivate.idl:
1982         * WebView.cpp:
1983         (WebView::updateBackingStore):
1984
1985 2007-09-25  Adam Roben  <aroben@apple.com>
1986
1987         Add WebKitInitializer to WebKit.sln
1988
1989         Reviewed by Sam.
1990
1991         * WebKit.vcproj/WebKit.sln: DumpRenderTree and testkjs now depend on
1992         WebKitInitializer.
1993
1994 2007-09-25  Darin Adler  <darin@apple.com>
1995
1996         Reviewed by Steve.
1997
1998         - fix <rdar://problem/5095701> Download requring HTTP auth fails
1999           (progress bar forever)
2000
2001         The functions in WebDownload relating to authentication challenges needed
2002         to be implemented.
2003
2004         * WebDownload.cpp:
2005         (WebDownload::cancelAuthenticationChallenge): Implement.
2006         (WebDownload::continueWithoutCredentialForAuthenticationChallenge): Ditto.
2007         (WebDownload::useCredential): Ditto.
2008         (WebDownload::willSendRequest): Fix storage leak by adopting request
2009         and response after creating them. Also retain the result before returning
2010         it, since that's the API contract with CFNetwork.
2011         (WebDownload::didReceiveAuthenticationChallenge): Implement.
2012         (WebDownload::didReceiveResponse): Fix storage leak by adopting response.
2013         (WebDownload::willResumeWithResponse): Ditto.
2014         (WebDownload::didFail): Ditto.
2015
2016         * WebURLAuthenticationChallenge.h: Get rid of the IID #define,
2017         instead using __declspec(uuid). Added a sender parameter to the
2018         create function and an m_sender data member.
2019         * WebURLAuthenticationChallenge.cpp:
2020         (WebURLAuthenticationChallenge::WebURLAuthenticationChallenge): Added an
2021         explicit sender parameter so this can be used with a WebDownload, which
2022         does not involve a ResourceHandle. Later we should clean this up and not
2023         involve WebCore or ResourceHandle directly even for the non-download case.
2024         (WebURLAuthenticationChallenge::createInstance): Added an overload for the
2025         case with an explicit sender parameter.
2026         (WebURLAuthenticationChallenge::QueryInterface): Use __uuidof for the ID
2027         of this class. In general, we should move to __uuidof as much as possible
2028         and keep the separate macros to a minimum -- but we should do this for all
2029         uses of each class at one time to make sure we don't run into problems
2030         with two different UUIDs for the same class. This patch does it for three
2031         classes.
2032         (WebURLAuthenticationChallenge::initWithProtectionSpace): Use the query
2033         constructor instead of an explicit QueryInterface for WebURLCredential.
2034         This is another class where I'm switching from CLSID/IID macros to the
2035         use of __uuidof, but in this case the use of __uuidof is implicit.
2036         (WebURLAuthenticationChallenge::initWithAuthenticationChallenge): Ditto,
2037         but for WebURLAuthenticationChallenge and WebURLAuthenticationChallengeSender.
2038         (WebURLAuthenticationChallenge::sender): Use the new m_sender member to
2039         cache the sender object and also use the one that was passed into the
2040         constructor, if any.
2041
2042         * WebURLAuthenticationChallengeSender.h: Get rid of the IID #define,
2043         instead using __declspec(uuid). Also minimize includes and make data
2044         members private instead of protected.
2045         * WebURLAuthenticationChallengeSender.cpp:
2046         (WebURLAuthenticationChallengeSender::QueryInterface): Use __uuidof instead
2047         of IID macro.
2048         (WebURLAuthenticationChallengeSender::cancelAuthenticationChallenge):
2049         Use query constructor instead of QueryInterface.
2050         (WebURLAuthenticationChallengeSender::continueWithoutCredentialForAuthenticationChallenge):
2051         Ditto.
2052         (WebURLAuthenticationChallengeSender::useCredential): Ditto.
2053
2054         * WebURLCredential.cpp: (WebURLCredential::QueryInterface): Use __uuidof
2055         instead of CLSID_WebURLCredential.
2056
2057         - tangentially-related cleanup
2058
2059         * WebFrame.cpp:
2060         (WebFrame::dispatchDidReceiveAuthenticationChallenge): Use the adopt
2061         constructor instead of a separate adoptRef call.
2062         (WebFrame::dispatchDidCancelAuthenticationChallenge): Ditto.
2063
2064 2007-09-24  Brady Eidson  <beidson@apple.com>
2065
2066         Reviewed by John Sullivan
2067
2068         Fix for <rdar://5493371> - Crash in Icon Database on Windows
2069         
2070         * WebIconDatabase.cpp:
2071         (WebIconDatabase::iconForURL): If the URL is NULL, fallback to the default icon without asking WebCore
2072
2073 2007-09-24  Adam Roben  <aroben@apple.com>
2074
2075         Fix <rdar://5499507> FrameView will always have size (0,0) if its parent WebView is never resized
2076
2077         Reviewed by Darin.
2078
2079         * WebView.cpp:
2080         (WebView::initWithFrame): Set the main FrameView's size to the size of
2081         the WebView.
2082
2083 2007-09-21  Kevin McCullough  <kmccullough@apple.com>
2084
2085         - Fixed a syntax guideline mistake.
2086
2087         * WebChromeClient.cpp:
2088         (WebChromeClient::scrollbarsVisible):
2089
2090 2007-09-20  Oliver Hunt  <oliver@apple.com>
2091
2092         Reviewed by Steve.
2093
2094         <rdar://problem/5487153> Korean characters are displayed as garbage with default encoding in some Korean web sites
2095
2096         Adding support for per-localisation default character encodings on
2097         windows.
2098         
2099         * English.lproj/Localizable.strings:
2100         * WebPreferences.cpp:
2101         (WebPreferences::initializeDefaultSettings):
2102
2103 2007-09-20  Kevin McCullough  <kmccullough@apple.com>
2104
2105         Reviewed by Oliver.
2106
2107         - Added the ability to ask if scrollbars are visible
2108         - <rdar://problem/5496211> scrollbarsVisible in WebChromeClient is not implemented
2109
2110         * WebChromeClient.cpp:
2111         (WebChromeClient::scrollbarsVisible):
2112
2113 2007-09-20  Ada Chan  <adachan@apple.com>
2114
2115         <rdar://problem/5477240> Regression: Footer is too high in print preview
2116
2117         Reviewed by Steve.
2118
2119         * WebFrame.cpp:
2120         (WebFrame::WebFrame): initialize new data member m_pageHeight, which is the height of the page adjusted for margins.
2121         (WebFrame::computePageRects): get the height of the page adjusted for margins by passing m_pageHeight to
2122         computePageRectsForFrame().
2123         (WebFrame::spoolPages): footer rect's top is the max of the bottom of the page content and the bottom of the page
2124         minus footer height.
2125         * WebFrame.h:
2126
2127 2007-09-19  Kevin McCullough  <kmccullough@apple.com>
2128
2129         Reviewed by Hyatt.
2130
2131         - <rdar://problem/5101991> Avril Lavigne music player comes up in a window with scrollbars
2132         - Implementing missing scrollbar functionality to allow turning off scrollbars correctly.
2133
2134         * Interfaces/IWebFrame.idl:
2135         * Interfaces/IWebFrameView.idl:
2136         * WebChromeClient.cpp:
2137         (WebChromeClient::setScrollbarsVisible):
2138         * WebFrame.cpp:
2139         (WebFrame::setAllowsScrolling):
2140         (WebFrame::allowsScrolling):
2141         (WebFrame::frameView):
2142         * WebFrame.h:
2143
2144 2007-09-20  Brady Eidson  <beidson@apple.com>
2145
2146         Reviewed by Dave Hyatt
2147
2148         <rdar://problem/5245981> - No favicon shows up for cnet.com
2149         
2150         * WebIconDatabase.cpp:
2151         (WebIconDatabase::iconForURL): Call getHBITMAPOfSize
2152         (WebIconDatabase::getOrCreateDefaultIconBitmap): Ditto
2153
2154 2007-09-19  Sam Weinig  <sam@webkit.org>
2155
2156         Rubber stamped by Adam Roben.
2157
2158         * WebKit.vcproj/WebKit.sln: Update location of DumpRenderTree and TestNetscapePlugin
2159         to point to their new locations.
2160
2161 2007-09-18  Brady Eidson  <beidson@apple.com>
2162
2163         Reviewed by Adam
2164
2165         Final part of <rdar://problem/5471308> - Hook up async icon database on Windows        
2166
2167         * CFDictionaryPropertyBag.cpp:
2168         (CFDictionaryPropertyBag::CFDictionaryPropertyBag): Took the opportunity to rewrite with a RetainPtr
2169           since it became available after the initial implementation
2170         (CFDictionaryPropertyBag::setDictionary):
2171         (CFDictionaryPropertyBag::dictionary): Added accessor to the CFDictionaryRef to ease use within WebKit
2172         (CFDictionaryPropertyBag::QueryInterface): Added IID_CFDictionaryPropertyBag accessor
2173         (CFDictionaryPropertyBag::Read):
2174         (CFDictionaryPropertyBag::Write):
2175         * CFDictionaryPropertyBag.h: Added IID_CFDictionaryPropertyBag
2176        
2177         * WebFrame.cpp:
2178         (WebFrame::url): Added accessor, gets the current URL from WebCore
2179         (WebFrame::dispatchDidReceiveIcon): Calls through to the WebView
2180         (WebFrame::registerForIconNotification): Ditto
2181         * WebFrame.h:        
2182
2183         * WebIconDatabase.cpp:
2184         (WebIconDatabase::iconDatabaseDidAddIconNotification):
2185         (WebIconDatabase::iconDatabaseNotificationUserInfoURLKey):
2186         (WebIconDatabase::iconDatabaseDidRemoveAllIconsNotification):
2187         (postDidRemoveAllIconsNotification):
2188         (postDidAddIconNotification):
2189         * WebIconDatabase.h:        
2190
2191         * WebView.cpp:
2192         (WebView::close): Unregister for the notification, just in case
2193         (WebView::notifyDidAddIcon): Called when the webview gets the didAddIcon notification, compares the url
2194           in the notification to the current main frame URL.  If they match, calls to dispatchDidReceiveIconFromWebFrame
2195         (WebView::registerForIconNotification): 
2196         (WebView::dispatchDidReceiveIconFromWebFrame): Dispatches the FrameLoadDelegate call.  Once the delegate call is dispatched,
2197           either via the FrameLoaderClient interface of by listening for a notification, we know that our info is up to date in the 
2198           IconDatabase and we don't need to listen for the generic notification any long, so we unregister for it here, as well.
2199         (WebView::onNotify): The WebView listens for two notifications now, so make the decision which was received
2200         * WebView.h:
2201
2202 2007-09-18  Brady Eidson  <beidson@apple.com>
2203
2204         Reviewed by Ada and Geoff
2205
2206         Part of <rdar://problem/5471308> - Get async Icon Database fully hooked up on Windows
2207         
2208         Hook up main thread delivery of Icon Database notifications from the secondary thread
2209         
2210         * WebIconDatabase.cpp:
2211         (WebIconDatabase::WebIconDatabase): Initialize m_deliveryRequested
2212         (WebIconDatabase::init): Set the IconDatabaseClient to the shared WebIconDatabase
2213         (WebIconDatabase::dispatchDidRemoveAllIcons): Queue the notification to be delivered on the main thread then
2214           ask for the delivery
2215         (WebIconDatabase::dispatchDidAddIconForPageURL): Ditto
2216         (WebIconDatabase::scheduleNotificationDelivery): If the m_deliveryRequested hasn't been set, then set it
2217           and perform the callOnMainThread() for WebIconDatabase::deliverNotifications
2218         (postDidRemoveAllIconsNotification):
2219         (postDidAddIconNotification):
2220         (WebIconDatabase::deliverNotifications): Deliver all notifications in the current queue
2221         * WebIconDatabase.h:
2222
2223 2007-09-17  Geoffrey Garen  <ggaren@apple.com>
2224
2225         Reviewed by Darin Adler.
2226
2227         Fixed a hang due to an infinite script running in the window's unload 
2228         event handler, which may be the cause of <rdar://problem/5479443> 
2229         REGRESSION: Hang due to infinite JS recursion on close @ engadget.com 
2230         (onunload-based ad)
2231         
2232         Added a bunch of WebKitMac's close features, and reordered others to
2233         match WebKitMac.
2234
2235         * WebView.cpp:
2236         (WebView::close):
2237         (WebView::removeDragCaret):
2238
2239 2007-09-17  Adam Roben  <aroben@apple.com>
2240
2241         Fix <rdar://4979801> overflow divs don't respond to keyboard scrolling (affects RSS pages)
2242
2243         Reviewed by Hyatt.
2244
2245         * WebView.cpp:
2246         (WebView::keyDown): Attempt to scroll an overflow area before
2247         scrolling the whole frame.
2248
2249 2007-09-17  Brady Eidson  <beidson@apple.com>
2250
2251         Reviewed by Adam
2252         
2253         <rdar://problem/5471308> - Get async Icon Database fully hooked up on Windows
2254         
2255         Add a global "shut down WebKit" procedure to do cleanup at the engine level on quit. 
2256         Critical now for the IconDatabase and might be for other things in the future.
2257
2258         * WebKitDLL.cpp:
2259         (shutDownWebKit): For now, just close the IconDatabase
2260         (DllMain): On DLL_PROCESS_DETACH, call shutDownWebKit
2261
2262 2007-09-17  Anders Carlsson  <andersca@apple.com>
2263
2264         Reviewed by Adam.
2265
2266         <rdar://problem/5421997>
2267         http://bugs.webkit.org/show_bug.cgi?id=14247
2268         Display problem with Flash - image does not stop changing
2269
2270         Port the manual load code over from the Mac version.
2271
2272         * WebFrame.cpp:
2273         (WebFrame::WebFramePrivate::WebFramePrivate):
2274         Initialize the plugin pointer.
2275         
2276         (WebFrame::finishedLoading):
2277         (WebFrame::setMainDocumentError):
2278         (WebFrame::committedLoad):
2279         Feed the data to the plug-in.
2280                 
2281         (WebFrame::redirectDataToPlugin):
2282         Store the plug-in widget.
2283
2284 2007-09-14  Steve Falkenburg  <sfalken@apple.com>
2285
2286         Fix build.
2287
2288         * WebFrame.cpp:
2289         (WebFrame::createPlugin):
2290         (WebFrame::createJavaAppletWidget):
2291
2292 2007-09-13  Darin Adler  <darin@apple.com>
2293
2294         Reviewed by Oliver.
2295
2296         - fix <rdar://problem/5470457> REGRESSION: Input method inline hole is mishandled in text
2297           <input> elements with maxlength limit
2298
2299         * WebView.cpp:
2300         (WebView::resetIME): Change to use confirmCompositionWithoutDisturbingSelection.
2301         (WebView::updateSelectionForIME): Update for name changes, and to use new functions
2302         in Editor.
2303         (WebView::onIMEStartComposition): Removed unneeded call to unmarkText.
2304         (compositionToUnderlines): Removed startOffset parameter, since setComposition now
2305         handles this.
2306         (WebView::onIMEComposition): Changed to use confirmComposition and setComposition.
2307         Logic gets a lot cleaner.
2308         (WebView::onIMEEndComposition): Removed unneeded calls to Editor.
2309         (WebView::onIMERequestCharPosition): Updated for name changes.
2310
2311 2007-09-12  Oliver Hunt  <oliver@apple.com>
2312
2313         Reviewed by Adam.
2314         
2315         Fixing 
2316             <rdar://problem/5018591> Windows doesn't have a standard vertical text cursor
2317             <rdar://problem/5224996> Add zoom in and zoom out cursors
2318             
2319         Add images for vertical text and zoom in and out cursors to WebKit resources.
2320             
2321         * WebKit.vcproj/verticalTextCursor.png: Added.
2322         * WebKit.vcproj/WebKit.rc:
2323         * WebKit.vcproj/WebKit.vcproj:
2324         * WebKit.vcproj/resource.h:
2325         * WebKit.vcproj/zoomInCursor.png: Added.
2326         * WebKit.vcproj/zoomOutCursor.png: Added.
2327         * WebKitDLL.cpp:
2328         (loadResourceIntoBuffer):
2329
2330 2007-09-12  Adam Roben  <aroben@apple.com>
2331
2332         Initialize SafariTheme early in WebKit's instantiation
2333
2334         New versions of SafariTheme will require this initialization. We have
2335         to use GetProcAddress for now since the initialize method doesn't
2336         exist in any released SafariTheme.
2337
2338         Reviewed by Ada.
2339
2340         * WebKit.vcproj/debug_internal.vsprops: Pick up the debug SafariTheme.
2341         * WebKitClassFactory.cpp:
2342         (WebKitClassFactory::WebKitClassFactory): Call STInitialize.
2343
2344 2007-09-12  Ada Chan  <adachan@apple.com>
2345
2346         <rdar://problem/5478690> Regression: printing: footer only appears on the first page of print
2347
2348         Reviewed by Adam.
2349
2350         * WebFrame.cpp:
2351         (WebFrame::spoolPages): the footer rect is relative to the top left of the current page.  So 
2352         instead of passing pageRect.bottom() as the top of the footer rect (which is relative to the 
2353         document), we should pass in headerHeight plus the height of the pageRect.
2354
2355 2007-09-12  Anders Carlsson   <andersca@apple.com>
2356
2357         Reviewed by Darin (reluctantly).
2358
2359         <rdar://problem/5320461>
2360         http://bugs.webkit.org/show_bug.cgi?id=14548
2361         REGRESSION (r23987-r24061) : Reproducible crash with a local stylesheet file
2362         
2363         Add a workaround which converts the string passed in to an URL if it's a path.
2364         
2365         * WebView.cpp:
2366         (WebView::updateWebCoreSettingsFromPreferences):
2367
2368 2007-09-10  Steve Falkenburg  <sfalken@apple.com>
2369
2370         Remove site-specific hacks that we don't need anymore.
2371
2372         Reviewed by Adam.
2373
2374         * WebView.cpp:
2375         (WebView::userAgentForKURL):
2376
2377 2007-09-08  Steve Falkenburg  <sfalken@apple.com>
2378
2379         Prevent WebKit version numbers from containing "4" in Windows.
2380
2381         Reviewed by Darin.
2382
2383         * WebKit.vcproj/VERSION: Bump version since our current version ends in 4.
2384         * WebKit.vcproj/auto-version.sh: Add version checking code.
2385
2386 2007-09-08  Brady Eidson  <beidson@apple.com>
2387
2388         <rdar://problem/5434431> - Asynchronous Icon Database
2389
2390         * WebFrame.cpp:
2391         (WebFrame::didPerformFirstNavigation): Empty impl for now
2392         (WebFrame::registerForIconNotification): Ditto
2393         * WebFrame.h:
2394
2395 2007-09-05  Geoffrey Garen  <ggaren@apple.com>
2396
2397         Reviewed by Darin Adler, Maciej Stachowiak, Mark Rowe, Tim Hatcher.
2398         
2399         Fixed <rdar://problem/5326009> Make non-browser WebKit clients have no 
2400         memory cache, or a very tiny one
2401         
2402         Keep the Windows build working with an empty stub.
2403         
2404         * WebFrame.cpp:
2405         (FrameLoaderClient::didPerformFirstNavigation):
2406         * WebFrame.h:
2407
2408 2007-09-07  Ada Chan  <adachan@apple.com>
2409
2410         Need to let the OS handle Alt+F4.
2411
2412         Reviewed by Hyatt.
2413
2414         * WebView.cpp:
2415         (WebView::keyUp):
2416         (WebView::keyDown):
2417
2418 2007-09-07  Anders Carlsson  <andersca@apple.com>
2419
2420         Reviewed by Oliver.
2421
2422         <rdar://problem/5461487>
2423         Seed: Embedded media content (Flash Player 9) inside RSS reported as unknown MIME type.
2424         
2425         Don't return ObjectContentNone if the URL's extension can't be mapped to a MIME type. If the MIME type is empty, 
2426         we will try to display the content in a subframe instead, just like Mac WebKit.
2427         
2428         * WebFrame.cpp:
2429         (WebFrame::objectContentType):
2430
2431 2007-09-07  Ada Chan  <adachan@apple.com>
2432
2433         <rdar://problem/5395928> Need to be able to handle context menu item selection by index
2434
2435         Reviewed by Beth.
2436
2437         * WebView.cpp:
2438         (WebView::performContextMenuAction): performContextMenuAction() can now handle context menu
2439         item selection via WM_MENUCOMMAND (by specifying byPosition to be true).  In that case, we
2440         get the ContextMenuItem by position rather than by action id.
2441         (WebViewWndProc): handle WM_MENUCOMMAND
2442         * WebView.h:
2443
2444 2007-09-07  Ada Chan  <adachan@apple.com>
2445
2446         <rdar://problem/5453494> Better lifetime management of WebDataSource and WebDocumentLoader
2447         The problem was that WebDataSource does not hold a strong reference to the WebDocumentLoader.  If
2448         a WebDataSource is still around after the loader has been destroyed, it'll just point to
2449         a stale WebDocumentLoader.
2450         To fix this without a circular reference, WebDataSource now holds a strong reference to the
2451         WebDocumentLoader.  The WebDocumentLoader holds a strong reference to the WebDataSource
2452         until it's detached from the WebFrame.  When the WebDataSource is destroyed, it'll notify
2453         its WebDocumentLoader so the loader will clear any references to it.
2454
2455         Reviewed by Darin.
2456
2457         * WebDataSource.cpp:
2458         (WebDataSource::~WebDataSource): call WebDocumentLoader::detachDataSource() so the loader
2459         will clear any references to this data source
2460         (WebDataSource::documentLoader): m_loader is now a RefPtr so we need to call get().
2461         * WebDataSource.h:
2462         * WebDocumentLoader.cpp:
2463         (WebDocumentLoader::WebDocumentLoader): initialize m_dataSource since it's no longer a COMPtr.
2464         (WebDocumentLoader::~WebDocumentLoader): release m_dataSource if necessary
2465         (WebDocumentLoader::setDataSource): add a reference to m_dataSource
2466         (WebDocumentLoader::dataSource): 
2467         (WebDocumentLoader::detachDataSource): clear m_detachedDataSource.
2468         (WebDocumentLoader::attachToFrame): call setDataSource() so it'll add the reference to the data source if necessary.
2469         (WebDocumentLoader::detachFromFrame): release the reference to the data source
2470         * WebDocumentLoader.h:
2471
2472 2007-09-05  Dave Hyatt <hyatt@apple.com>
2473
2474         Make sure ALT+other keys is properly sent into the DOM so that Web pages (and editing fields) can
2475         detect key combos like ALT+Enter.
2476        
2477         Reviewed by Steve
2478
2479         * WebView.cpp:
2480         (WebView::keyUp):
2481         (WebView::keyDown):
2482         (WebViewWndProc):
2483         * WebView.h:
2484
2485 2007-09-04  Sam Weinig  <sam@webkit.org>
2486
2487         Build fix.
2488
2489         * WebKit.vcproj/WebKit.vcproj:
2490
2491 2007-09-01  Oliver Hunt  <oliver@apple.com>
2492
2493         Reviewed by Sam.
2494
2495         <rdar://problem/5344848> IME is incorrectly used for key events when on non-editable regions
2496  
2497         When focusing a password field or a non-editable element we disassociate any IME that may have
2498         been active, and reassociate should a non-password editable element is focused.
2499
2500         This makes password input with an IME active simpler, and brings our IME behaviour in line with
2501         IE.        
2502
2503         * WebEditorClient.cpp:
2504         (WebEditorClient::setInputMethodState):
2505         * WebEditorClient.h:
2506         * WebView.cpp:
2507         (IMMDict::IMMDict):
2508         (WebView::setInputMethodState):
2509         * WebView.h:
2510
2511 2007-08-31  Steve Falkenburg  <sfalken@apple.com>
2512
2513         <rdar://problem/5432594> Safari quits when hovering over mailto links on a webpage
2514         
2515         In addition to substituting %@ with %s, we also need to substitute %{1-9}$@ with %{1-9}$s.
2516
2517         Reviewed by Oliver.
2518
2519         * WebLocalizableStrings.cpp:
2520         (WebLocalizedLPCTSTR):
2521
2522 2007-08-29  Ada Chan  <adachan@apple.com>
2523
2524         <rdar://problem/5074612> Added SPI to retrieve certificate info from a WebError.
2525
2526         Reviewed by Steve.
2527
2528         * Interfaces/IWebErrorPrivate.idl: Added IWebErrorPrivate
2529         * WebError.cpp:
2530         (WebError::QueryInterface): WebError now also implements IWebErrorPrivate
2531         (WebError::sslPeerCertificate): retrieves certificate info from CFError's user info.
2532         * WebError.h:
2533         * WebKit.vcproj/WebKitGUID.vcproj: Added IWebErrorPrivate_i.c
2534
2535 2007-08-28  Steve Falkenburg  <sfalken@apple.com>
2536
2537         <rdar://problem/5079253> Cannot set different margins for the page
2538         
2539         Added support for setting margins via page setup for Windows printing.
2540         
2541         Reviewed by Adam.
2542
2543         * Interfaces/IWebUIDelegate.idl: Added webViewPrintingMarginRect.
2544         * WebFrame.cpp:
2545         (WebFrame::printerMarginRect): Added.
2546         (WebFrame::computePageRects): Account for margins when calculating page rects.
2547         (WebFrame::spoolPages): Position footer at the bottom of the page rect (fixes footer drawing if left/right margins are set).
2548         * WebFrame.h:
2549
2550 2007-08-28  Jon Honeycutt  <jhoneycutt@apple.com>
2551
2552         Reviewed by Adam.
2553
2554         <rdar://problem/5444457>: Content is cut when page orientation changed
2555         in print preview
2556         Fix: Don't return WebFrame::m_pageRects if it exists; let
2557         computePageRectsForFrame clear and rewrite it.
2558
2559         * WebFrame.cpp:
2560         (WebFrame::computePageRects): Removed an early-return case. Added a
2561         space.
2562
2563 2007-08-28  Ada Chan  <adachan@apple.com>
2564
2565         <rdar://problem/4876242> Added SPI to fetch SSL certificate information.
2566
2567         Reviewed by Adam and Steve.
2568
2569         * Interfaces/IWebURLResponsePrivate.idl: Added.
2570         * WebKit.vcproj/Interfaces.vcproj:
2571         * WebKit.vcproj/WebKitGUID.vcproj:
2572         * WebURLResponse.cpp:
2573         (WebURLResponse::QueryInterface):
2574         (WebURLResponse::sslPeerCertificate): gets peer certificate context from CFNetwork
2575         (WebURLResponse::certificateDictionary): gets the dictionary that contains SSL certificate
2576         info from CFNetwork.  We retain the dictionary to ensure the certificate context is valid
2577         throughout the lifetime of the WebURLResponse.
2578         * WebURLResponse.h:
2579
2580 2007-08-27  Steve Falkenburg  <sfalken@apple.com>
2581
2582         <rdar://problem/5424801> REGRESSION (r25151): Web page area of window doesn't redraw if page isn't loaded
2583         
2584         Don't bypass WebView WM_PAINT if the WebView has never committed a page.
2585         
2586         Reviewed by Maciej.
2587
2588         * WebView.cpp:
2589         (WebViewWndProc): Don't skip painting if we haven't committed any pages in this view.
2590
2591 2007-08-25  Oliver Hunt  <oliver@apple.com>
2592
2593         Reviewed by Adam and Sam
2594         
2595         <rdar://problem/5269732> Safari 3.0 for Windows cuts off text in textarea boxes during sending forms (14562) 
2596         <http://bugs.webkit.org/show_bug.cgi?id=14562> [Win] Textarea contents partially eaten on submit/copy
2597         
2598         WebView::handleEditingKeyboardEvent assumed all keycodes that did not trigger a named command were
2599         to be inserted.  This could cause unexpected behaviour when control characters (eg. escape) are sent,
2600         or could cause data loss when sent a null character (as happens when dead keys are used for international 
2601         input).
2602         
2603         This patch corrects WebView::handleEditingKeyboardEvent to prevent such characters from being sent 
2604         to Editor::insertText.  This behaviour matches Firefox.
2605
2606         * WebView.cpp:
2607         (WebView::handleEditingKeyboardEvent):
2608
2609 2007-08-24  Sam Weinig  <sam@webkit.org>
2610
2611         Revert r25216 which renamed the COM DOM bindings to use Deprecated prefix.
2612
2613 2007-08-24  Ada Chan  <adachan@apple.com>
2614
2615         <rdar://problem/5147315> and <rdar://problem/5183935>
2616         Added accelerator key mappings for Select All, Undo, and Redo.
2617
2618         Reviewed by Adam.
2619
2620         * WebView.cpp:
2621
2622 2007-08-24  Jon Honeycutt  <jhoneycutt@apple.com>
2623
2624         Reviewed by Darin.
2625
2626         Part of <rdar://problem/5433236> Print preview of empty txt file crashes
2627         Safari
2628
2629         * WebFrame.cpp:
2630         (WebFrame::computePageRects): Pass m_pageRects by reference into 
2631         computePageRectsForFrame
2632
2633 2007-08-24  Sam Weinig  <sam@webkit.org>
2634
2635         Rubber-stamped by Adam Roben.
2636
2637         <rdar://problem/5434593> Deprecate current manually written COM DOM bindings in anticipation of autogeneration
2638
2639         Rename COM DOM bindings to use Deprecated prefix.
2640
2641         * DOMCSSClasses.cpp:
2642         (DeprecatedDOMCSSStyleDeclaration::DeprecatedDOMCSSStyleDeclaration):
2643         (DeprecatedDOMCSSStyleDeclaration::~DeprecatedDOMCSSStyleDeclaration):
2644         (DeprecatedDOMCSSStyleDeclaration::createInstance):
2645         (DeprecatedDOMCSSStyleDeclaration::QueryInterface):
2646         (DeprecatedDOMCSSStyleDeclaration::cssText):
2647         (DeprecatedDOMCSSStyleDeclaration::setCssText):
2648         (DeprecatedDOMCSSStyleDeclaration::getPropertyValue):
2649         (DeprecatedDOMCSSStyleDeclaration::getPropertyCSSValue):
2650         (DeprecatedDOMCSSStyleDeclaration::removeProperty):
2651         (DeprecatedDOMCSSStyleDeclaration::getPropertyPriority):
2652         (DeprecatedDOMCSSStyleDeclaration::setProperty):
2653         (DeprecatedDOMCSSStyleDeclaration::length):
2654         (DeprecatedDOMCSSStyleDeclaration::item):
2655         (DeprecatedDOMCSSStyleDeclaration::parentRule):
2656         * DOMCSSClasses.h:
2657         (DeprecatedDOMCSSStyleDeclaration::AddRef):
2658         (DeprecatedDOMCSSStyleDeclaration::Release):
2659         (DeprecatedDOMCSSStyleDeclaration::throwException):
2660         (DeprecatedDOMCSSStyleDeclaration::callWebScriptMethod):
2661         (DeprecatedDOMCSSStyleDeclaration::evaluateWebScript):
2662         (DeprecatedDOMCSSStyleDeclaration::removeWebScriptKey):
2663         (DeprecatedDOMCSSStyleDeclaration::stringRepresentation):
2664         (DeprecatedDOMCSSStyleDeclaration::webScriptValueAtIndex):
2665         (DeprecatedDOMCSSStyleDeclaration::setWebScriptValueAtIndex):
2666         (DeprecatedDOMCSSStyleDeclaration::setException):
2667         * DOMCoreClasses.cpp:
2668         (DeprecatedDOMObject::QueryInterface):
2669         (DeprecatedDOMNode::QueryInterface):
2670         (DeprecatedDOMNode::nodeName):
2671         (DeprecatedDOMNode::nodeValue):
2672         (DeprecatedDOMNode::setNodeValue):
2673         (DeprecatedDOMNode::nodeType):
2674         (DeprecatedDOMNode::parentNode):
2675         (DeprecatedDOMNode::childNodes):
2676         (DeprecatedDOMNode::firstChild):
2677         (DeprecatedDOMNode::lastChild):
2678         (DeprecatedDOMNode::previousSibling):
2679         (DeprecatedDOMNode::nextSibling):
2680         (DeprecatedDOMNode::attributes):
2681         (DeprecatedDOMNode::ownerDocument):
2682         (DeprecatedDOMNode::insertBefore):
2683         (DeprecatedDOMNode::replaceChild):
2684         (DeprecatedDOMNode::removeChild):
2685         (DeprecatedDOMNode::appendChild):
2686         (DeprecatedDOMNode::hasChildNodes):
2687         (DeprecatedDOMNode::cloneNode):
2688         (DeprecatedDOMNode::normalize):
2689         (DeprecatedDOMNode::isSupported):
2690         (DeprecatedDOMNode::namespaceURI):
2691         (DeprecatedDOMNode::prefix):
2692         (DeprecatedDOMNode::setPrefix):
2693         (DeprecatedDOMNode::localName):
2694         (DeprecatedDOMNode::hasAttributes):
2695         (DeprecatedDOMNode::isSameNode):
2696         (DeprecatedDOMNode::isEqualNode):
2697         (DeprecatedDOMNode::textContent):
2698         (DeprecatedDOMNode::setTextContent):
2699         (DeprecatedDOMNode::addEventListener):
2700         (DeprecatedDOMNode::removeEventListener):
2701         (DeprecatedDOMNode::dispatchEvent):
2702         (DeprecatedDOMNode::DeprecatedDOMNode):
2703         (DeprecatedDOMNode::~DeprecatedDOMNode):
2704         (DeprecatedDOMNode::createInstance):
2705         (DeprecatedDOMNodeList::QueryInterface):
2706         (DeprecatedDOMNodeList::item):
2707         (DeprecatedDOMNodeList::length):
2708         (DeprecatedDOMNodeList::DeprecatedDOMNodeList):
2709         (DeprecatedDOMNodeList::~DeprecatedDOMNodeList):
2710         (DeprecatedDOMNodeList::createInstance):
2711         (DeprecatedDOMDocument::QueryInterface):
2712         (DeprecatedDOMDocument::doctype):
2713         (DeprecatedDOMDocument::implementation):
2714         (DeprecatedDOMDocument::documentElement):
2715         (DeprecatedDOMDocument::createElement):
2716         (DeprecatedDOMDocument::createDocumentFragment):
2717         (DeprecatedDOMDocument::createTextNode):
2718         (DeprecatedDOMDocument::createComment):
2719         (DeprecatedDOMDocument::createCDATASection):
2720         (DeprecatedDOMDocument::createProcessingInstruction):
2721         (DeprecatedDOMDocument::createAttribute):
2722         (DeprecatedDOMDocument::createEntityReference):
2723         (DeprecatedDOMDocument::getElementsByTagName):
2724         (DeprecatedDOMDocument::importNode):
2725         (DeprecatedDOMDocument::createElementNS):
2726         (DeprecatedDOMDocument::createAttributeNS):
2727         (DeprecatedDOMDocument::getElementsByTagNameNS):
2728         (DeprecatedDOMDocument::getElementById):
2729         (DeprecatedDOMDocument::getComputedStyle):
2730         (DeprecatedDOMDocument::createEvent):
2731         (DeprecatedDOMDocument::DeprecatedDOMDocument):
2732         (DeprecatedDOMDocument::~DeprecatedDOMDocument):
2733         (DeprecatedDOMDocument::createInstance):
2734         (DeprecatedDOMElement::QueryInterface):
2735         (DeprecatedDOMElement::boundingBox):
2736         (DeprecatedDOMElement::lineBoxRects):
2737         (DeprecatedDOMElement::tagName):
2738         (DeprecatedDOMElement::getAttribute):
2739         (DeprecatedDOMElement::setAttribute):
2740         (DeprecatedDOMElement::removeAttribute):
2741         (DeprecatedDOMElement::getAttributeNode):
2742         (DeprecatedDOMElement::setAttributeNode):
2743         (DeprecatedDOMElement::removeAttributeNode):
2744         (DeprecatedDOMElement::getElementsByTagName):
2745         (DeprecatedDOMElement::getAttributeNS):
2746         (DeprecatedDOMElement::setAttributeNS):
2747         (DeprecatedDOMElement::removeAttributeNS):
2748         (DeprecatedDOMElement::getAttributeNodeNS):
2749         (DeprecatedDOMElement::setAttributeNodeNS):
2750         (DeprecatedDOMElement::getElementsByTagNameNS):
2751         (DeprecatedDOMElement::hasAttribute):
2752         (DeprecatedDOMElement::hasAttributeNS):
2753         (DeprecatedDOMElement::focus):
2754         (DeprecatedDOMElement::blur):
2755         (DeprecatedDOMElement::coreElement):
2756         (DeprecatedDOMElement::isEqual):
2757         (DeprecatedDOMElement::isFocused):
2758         (DeprecatedDOMElement::innerText):
2759         (DeprecatedDOMElement::style):
2760         (DeprecatedDOMElement::offsetLeft):
2761         (DeprecatedDOMElement::offsetTop):
2762         (DeprecatedDOMElement::offsetWidth):
2763         (DeprecatedDOMElement::offsetHeight):
2764         (DeprecatedDOMElement::offsetParent):
2765         (DeprecatedDOMElement::clientWidth):
2766         (DeprecatedDOMElement::clientHeight):
2767         (DeprecatedDOMElement::scrollLeft):
2768         (DeprecatedDOMElement::setScrollLeft):
2769         (DeprecatedDOMElement::scrollTop):
2770         (DeprecatedDOMElement::setScrollTop):
2771         (DeprecatedDOMElement::scrollWidth):
2772         (DeprecatedDOMElement::scrollHeight):
2773         (DeprecatedDOMElement::scrollIntoView):
2774         (DeprecatedDOMElement::scrollIntoViewIfNeeded):
2775         (DeprecatedDOMElement::DeprecatedDOMElement):
2776         (DeprecatedDOMElement::~DeprecatedDOMElement):
2777         (DeprecatedDOMElement::createInstance):
2778         * DOMCoreClasses.h:
2779         (DeprecatedDOMNode::AddRef):
2780         (DeprecatedDOMNode::Release):
2781         (DeprecatedDOMNode::throwException):
2782         (DeprecatedDOMNode::callWebScriptMethod):
2783         (DeprecatedDOMNode::evaluateWebScript):
2784         (DeprecatedDOMNode::removeWebScriptKey):
2785         (DeprecatedDOMNode::stringRepresentation):
2786         (DeprecatedDOMNode::webScriptValueAtIndex):
2787         (DeprecatedDOMNode::setWebScriptValueAtIndex):
2788         (DeprecatedDOMNode::setException):
2789         (DeprecatedDOMNodeList::AddRef):
2790         (DeprecatedDOMNodeList::Release):
2791         (DeprecatedDOMNodeList::throwException):
2792         (DeprecatedDOMNodeList::callWebScriptMethod):
2793         (DeprecatedDOMNodeList::evaluateWebScript):
2794         (DeprecatedDOMNodeList::removeWebScriptKey):
2795         (DeprecatedDOMNodeList::stringRepresentation):
2796         (DeprecatedDOMNodeList::webScriptValueAtIndex):
2797         (DeprecatedDOMNodeList::setWebScriptValueAtIndex):
2798         (DeprecatedDOMNodeList::setException):
2799         (DeprecatedDOMDocument::AddRef):
2800         (DeprecatedDOMDocument::Release):
2801         (DeprecatedDOMDocument::throwException):
2802         (DeprecatedDOMDocument::callWebScriptMethod):
2803         (DeprecatedDOMDocument::evaluateWebScript):
2804         (DeprecatedDOMDocument::removeWebScriptKey):
2805         (DeprecatedDOMDocument::stringRepresentation):
2806         (DeprecatedDOMDocument::webScriptValueAtIndex):
2807         (DeprecatedDOMDocument::setWebScriptValueAtIndex):
2808         (DeprecatedDOMDocument::setException):
2809         (DeprecatedDOMDocument::nodeName):
2810         (DeprecatedDOMDocument::nodeValue):
2811         (DeprecatedDOMDocument::setNodeValue):
2812         (DeprecatedDOMDocument::nodeType):
2813         (DeprecatedDOMDocument::parentNode):
2814         (DeprecatedDOMDocument::childNodes):
2815         (DeprecatedDOMDocument::firstChild):
2816         (DeprecatedDOMDocument::lastChild):
2817         (DeprecatedDOMDocument::previousSibling):
2818         (DeprecatedDOMDocument::nextSibling):
2819         (DeprecatedDOMDocument::attributes):
2820         (DeprecatedDOMDocument::ownerDocument):
2821         (DeprecatedDOMDocument::insertBefore):
2822         (DeprecatedDOMDocument::replaceChild):
2823         (DeprecatedDOMDocument::removeChild):
2824         (DeprecatedDOMDocument::appendChild):
2825         (DeprecatedDOMDocument::hasChildNodes):
2826         (DeprecatedDOMDocument::cloneNode):
2827         (DeprecatedDOMDocument::normalize):
2828         (DeprecatedDOMDocument::isSupported):
2829         (DeprecatedDOMDocument::namespaceURI):
2830         (DeprecatedDOMDocument::prefix):
2831         (DeprecatedDOMDocument::setPrefix):
2832         (DeprecatedDOMDocument::localName):
2833         (DeprecatedDOMDocument::hasAttributes):
2834         (DeprecatedDOMDocument::isSameNode):
2835         (DeprecatedDOMDocument::isEqualNode):
2836         (DeprecatedDOMDocument::textContent):
2837         (DeprecatedDOMDocument::setTextContent):
2838         (DeprecatedDOMElement::AddRef):
2839         (DeprecatedDOMElement::Release):
2840         (DeprecatedDOMElement::throwException):
2841         (DeprecatedDOMElement::callWebScriptMethod):
2842         (DeprecatedDOMElement::evaluateWebScript):
2843         (DeprecatedDOMElement::removeWebScriptKey):
2844         (DeprecatedDOMElement::stringRepresentation):
2845         (DeprecatedDOMElement::webScriptValueAtIndex):
2846         (DeprecatedDOMElement::setWebScriptValueAtIndex):
2847         (DeprecatedDOMElement::setException):
2848         (DeprecatedDOMElement::nodeName):
2849         (DeprecatedDOMElement::nodeValue):
2850         (DeprecatedDOMElement::setNodeValue):
2851         (DeprecatedDOMElement::nodeType):
2852         (DeprecatedDOMElement::parentNode):
2853         (DeprecatedDOMElement::childNodes):
2854         (DeprecatedDOMElement::firstChild):
2855         (DeprecatedDOMElement::lastChild):
2856         (DeprecatedDOMElement::previousSibling):
2857         (DeprecatedDOMElement::nextSibling):
2858         (DeprecatedDOMElement::attributes):
2859         (DeprecatedDOMElement::ownerDocument):
2860         (DeprecatedDOMElement::insertBefore):
2861         (DeprecatedDOMElement::replaceChild):
2862         (DeprecatedDOMElement::removeChild):
2863         (DeprecatedDOMElement::appendChild):
2864         (DeprecatedDOMElement::hasChildNodes):
2865         (DeprecatedDOMElement::cloneNode):
2866         (DeprecatedDOMElement::normalize):
2867         (DeprecatedDOMElement::isSupported):
2868         (DeprecatedDOMElement::namespaceURI):
2869         (DeprecatedDOMElement::prefix):
2870         (DeprecatedDOMElement::setPrefix):
2871         (DeprecatedDOMElement::localName):
2872         (DeprecatedDOMElement::hasAttributes):
2873         (DeprecatedDOMElement::isSameNode):
2874         (DeprecatedDOMElement::isEqualNode):
2875         (DeprecatedDOMElement::textContent):
2876         (DeprecatedDOMElement::setTextContent):
2877         * DOMEventsClasses.cpp:
2878         (DeprecatedDOMEventListener::QueryInterface):
2879         (DeprecatedDOMEventListener::handleEvent):
2880         (DeprecatedDOMEvent::DeprecatedDOMEvent):
2881         (DeprecatedDOMEvent::~DeprecatedDOMEvent):
2882         (DeprecatedDOMEvent::createInstance):
2883         (DeprecatedDOMEvent::QueryInterface):
2884         (DeprecatedDOMEvent::type):
2885         (DeprecatedDOMEvent::target):
2886         (DeprecatedDOMEvent::currentTarget):
2887         (DeprecatedDOMEvent::eventPhase):
2888         (DeprecatedDOMEvent::bubbles):
2889         (DeprecatedDOMEvent::cancelable):
2890         (DeprecatedDOMEvent::timeStamp):
2891         (DeprecatedDOMEvent::stopPropagation):
2892         (DeprecatedDOMEvent::preventDefault):
2893         (DeprecatedDOMEvent::initEvent):
2894         (DeprecatedDOMUIEvent::QueryInterface):
2895         (DeprecatedDOMUIEvent::view):
2896         (DeprecatedDOMUIEvent::detail):
2897         (DeprecatedDOMUIEvent::initUIEvent):
2898         (DeprecatedDOMUIEvent::keyCode):
2899         (DeprecatedDOMUIEvent::charCode):
2900         (DeprecatedDOMUIEvent::layerX):
2901         (DeprecatedDOMUIEvent::layerY):
2902         (DeprecatedDOMUIEvent::pageX):
2903         (DeprecatedDOMUIEvent::pageY):
2904         (DeprecatedDOMUIEvent::which):
2905         (DeprecatedDOMKeyboardEvent::QueryInterface):
2906         (DeprecatedDOMKeyboardEvent::keyIdentifier):
2907         (DeprecatedDOMKeyboardEvent::keyLocation):
2908         (DeprecatedDOMKeyboardEvent::ctrlKey):
2909         (DeprecatedDOMKeyboardEvent::shiftKey):
2910         (DeprecatedDOMKeyboardEvent::altKey):
2911         (DeprecatedDOMKeyboardEvent::metaKey):
2912         (DeprecatedDOMKeyboardEvent::altGraphKey):
2913         (DeprecatedDOMKeyboardEvent::getModifierState):
2914         (DeprecatedDOMKeyboardEvent::initKeyboardEvent):
2915         (DeprecatedDOMMouseEvent::QueryInterface):
2916         (DeprecatedDOMMouseEvent::screenX):
2917         (DeprecatedDOMMouseEvent::screenY):
2918         (DeprecatedDOMMouseEvent::clientX):
2919         (DeprecatedDOMMouseEvent::clientY):
2920         (DeprecatedDOMMouseEvent::ctrlKey):
2921         (DeprecatedDOMMouseEvent::shiftKey):
2922         (DeprecatedDOMMouseEvent::altKey):
2923         (DeprecatedDOMMouseEvent::metaKey):
2924         (DeprecatedDOMMouseEvent::button):
2925         (DeprecatedDOMMouseEvent::relatedTarget):
2926         (DeprecatedDOMMouseEvent::initMouseEvent):
2927         (DeprecatedDOMMouseEvent::offsetX):
2928         (DeprecatedDOMMouseEvent::offsetY):
2929         (DeprecatedDOMMouseEvent::x):
2930         (DeprecatedDOMMouseEvent::y):
2931         (DeprecatedDOMMouseEvent::fromElement):
2932         (DeprecatedDOMMouseEvent::toElement):
2933         (DeprecatedDOMMutationEvent::QueryInterface):
2934         (DeprecatedDOMMutationEvent::relatedNode):
2935         (DeprecatedDOMMutationEvent::prevValue):
2936         (DeprecatedDOMMutationEvent::newValue):
2937         (DeprecatedDOMMutationEvent::attrName):
2938         (DeprecatedDOMMutationEvent::attrChange):
2939         (DeprecatedDOMMutationEvent::initMutationEvent):
2940         (DeprecatedDOMOverflowEvent::QueryInterface):
2941         (DeprecatedDOMOverflowEvent::orient):
2942         (DeprecatedDOMOverflowEvent::horizontalOverflow):
2943         (DeprecatedDOMOverflowEvent::verticalOverflow):
2944         (DeprecatedDOMWheelEvent::QueryInterface):
2945         (DeprecatedDOMWheelEvent::screenX):
2946         (DeprecatedDOMWheelEvent::screenY):
2947         (DeprecatedDOMWheelEvent::clientX):
2948         (DeprecatedDOMWheelEvent::clientY):
2949         (DeprecatedDOMWheelEvent::ctrlKey):
2950         (DeprecatedDOMWheelEvent::shiftKey):
2951         (DeprecatedDOMWheelEvent::altKey):
2952         (DeprecatedDOMWheelEvent::metaKey):
2953         (DeprecatedDOMWheelEvent::wheelDelta):
2954         (DeprecatedDOMWheelEvent::wheelDeltaX):
2955         (DeprecatedDOMWheelEvent::wheelDeltaY):
2956         (DeprecatedDOMWheelEvent::offsetX):
2957         (DeprecatedDOMWheelEvent::offsetY):
2958         (DeprecatedDOMWheelEvent::x):
2959         (DeprecatedDOMWheelEvent::y):
2960         (DeprecatedDOMWheelEvent::isHorizontal):
2961         (DeprecatedDOMWheelEvent::initWheelEvent):
2962         * DOMEventsClasses.h:
2963         (DeprecatedDOMEventListener::AddRef):
2964         (DeprecatedDOMEventListener::Release):
2965         (DeprecatedDOMEventListener::throwException):
2966         (DeprecatedDOMEventListener::callWebScriptMethod):
2967         (DeprecatedDOMEventListener::evaluateWebScript):
2968         (DeprecatedDOMEventListener::removeWebScriptKey):
2969         (DeprecatedDOMEventListener::stringRepresentation):
2970         (DeprecatedDOMEventListener::webScriptValueAtIndex):
2971         (DeprecatedDOMEventListener::setWebScriptValueAtIndex):
2972         (DeprecatedDOMEventListener::setException):
2973         (DeprecatedDOMEvent::AddRef):
2974         (DeprecatedDOMEvent::Release):
2975         (DeprecatedDOMEvent::throwException):
2976         (DeprecatedDOMEvent::callWebScriptMethod):
2977         (DeprecatedDOMEvent::evaluateWebScript):
2978         (DeprecatedDOMEvent::removeWebScriptKey):
2979         (DeprecatedDOMEvent::stringRepresentation):
2980         (DeprecatedDOMEvent::webScriptValueAtIndex):
2981         (DeprecatedDOMEvent::setWebScriptValueAtIndex):
2982         (DeprecatedDOMEvent::setException):
2983         (DeprecatedDOMUIEvent::DeprecatedDOMUIEvent):
2984         (DeprecatedDOMUIEvent::AddRef):
2985         (DeprecatedDOMUIEvent::Release):
2986         (DeprecatedDOMUIEvent::throwException):
2987         (DeprecatedDOMUIEvent::callWebScriptMethod):
2988         (DeprecatedDOMUIEvent::evaluateWebScript):
2989         (DeprecatedDOMUIEvent::removeWebScriptKey):
2990         (DeprecatedDOMUIEvent::stringRepresentation):
2991         (DeprecatedDOMUIEvent::webScriptValueAtIndex):
2992         (DeprecatedDOMUIEvent::setWebScriptValueAtIndex):
2993         (DeprecatedDOMUIEvent::setException):
2994         (DeprecatedDOMUIEvent::type):
2995         (DeprecatedDOMUIEvent::target):
2996         (DeprecatedDOMUIEvent::currentTarget):
2997         (DeprecatedDOMUIEvent::eventPhase):
2998         (DeprecatedDOMUIEvent::bubbles):
2999         (DeprecatedDOMUIEvent::cancelable):
3000         (DeprecatedDOMUIEvent::timeStamp):
3001         (DeprecatedDOMUIEvent::stopPropagation):
3002         (DeprecatedDOMUIEvent::preventDefault):
3003         (DeprecatedDOMUIEvent::initEvent):
3004         (DeprecatedDOMKeyboardEvent::DeprecatedDOMKeyboardEvent):
3005         (DeprecatedDOMKeyboardEvent::AddRef):
3006         (DeprecatedDOMKeyboardEvent::Release):
3007         (DeprecatedDOMKeyboardEvent::throwException):
3008         (DeprecatedDOMKeyboardEvent::callWebScriptMethod):
3009         (DeprecatedDOMKeyboardEvent::evaluateWebScript):
3010         (DeprecatedDOMKeyboardEvent::removeWebScriptKey):
3011         (DeprecatedDOMKeyboardEvent::stringRepresentation):
3012         (DeprecatedDOMKeyboardEvent::webScriptValueAtIndex):
3013         (DeprecatedDOMKeyboardEvent::setWebScriptValueAtIndex):
3014         (DeprecatedDOMKeyboardEvent::setException):
3015         (DeprecatedDOMKeyboardEvent::type):
3016         (DeprecatedDOMKeyboardEvent::target):
3017         (DeprecatedDOMKeyboardEvent::currentTarget):
3018         (DeprecatedDOMKeyboardEvent::eventPhase):
3019         (DeprecatedDOMKeyboardEvent::bubbles):
3020         (DeprecatedDOMKeyboardEvent::cancelable):
3021         (DeprecatedDOMKeyboardEvent::timeStamp):
3022         (DeprecatedDOMKeyboardEvent::stopPropagation):
3023         (DeprecatedDOMKeyboardEvent::preventDefault):
3024         (DeprecatedDOMKeyboardEvent::initEvent):
3025         (DeprecatedDOMKeyboardEvent::view):
3026         (DeprecatedDOMKeyboardEvent::detail):
3027         (DeprecatedDOMKeyboardEvent::initUIEvent):
3028         (DeprecatedDOMKeyboardEvent::keyCode):
3029         (DeprecatedDOMKeyboardEvent::charCode):
3030         (DeprecatedDOMKeyboardEvent::layerX):
3031         (DeprecatedDOMKeyboardEvent::layerY):
3032         (DeprecatedDOMKeyboardEvent::pageX):
3033         (DeprecatedDOMKeyboardEvent::pageY):
3034         (DeprecatedDOMKeyboardEvent::which):
3035         (DeprecatedDOMMouseEvent::DeprecatedDOMMouseEvent):
3036         (DeprecatedDOMMouseEvent::AddRef):
3037         (DeprecatedDOMMouseEvent::Release):
3038         (DeprecatedDOMMouseEvent::throwException):
3039         (DeprecatedDOMMouseEvent::callWebScriptMethod):
3040         (DeprecatedDOMMouseEvent::evaluateWebScript):
3041         (DeprecatedDOMMouseEvent::removeWebScriptKey):
3042         (DeprecatedDOMMouseEvent::stringRepresentation):
3043         (DeprecatedDOMMouseEvent::webScriptValueAtIndex):
3044         (DeprecatedDOMMouseEvent::setWebScriptValueAtIndex):
3045         (DeprecatedDOMMouseEvent::setException):
3046         (DeprecatedDOMMouseEvent::type):
3047         (DeprecatedDOMMouseEvent::target):
3048         (DeprecatedDOMMouseEvent::currentTarget):
3049         (DeprecatedDOMMouseEvent::eventPhase):
3050         (DeprecatedDOMMouseEvent::bubbles):
3051         (DeprecatedDOMMouseEvent::cancelable):
3052         (DeprecatedDOMMouseEvent::timeStamp):
3053         (DeprecatedDOMMouseEvent::stopPropagation):
3054         (DeprecatedDOMMouseEvent::preventDefault):
3055         (DeprecatedDOMMouseEvent::initEvent):
3056         (DeprecatedDOMMouseEvent::view):
3057         (DeprecatedDOMMouseEvent::detail):
3058         (DeprecatedDOMMouseEvent::initUIEvent):
3059         (DeprecatedDOMMouseEvent::keyCode):
3060         (DeprecatedDOMMouseEvent::charCode):
3061         (DeprecatedDOMMouseEvent::layerX):
3062         (DeprecatedDOMMouseEvent::layerY):
3063         (DeprecatedDOMMouseEvent::pageX):
3064         (DeprecatedDOMMouseEvent::pageY):
3065         (DeprecatedDOMMouseEvent::which):
3066         (DeprecatedDOMMutationEvent::DeprecatedDOMMutationEvent):
3067         (DeprecatedDOMMutationEvent::AddRef):
3068         (DeprecatedDOMMutationEvent::Release):
3069         (DeprecatedDOMMutationEvent::throwException):
3070         (DeprecatedDOMMutationEvent::callWebScriptMethod):
3071         (DeprecatedDOMMutationEvent::evaluateWebScript):
3072         (DeprecatedDOMMutationEvent::removeWebScriptKey):
3073         (DeprecatedDOMMutationEvent::stringRepresentation):
3074         (DeprecatedDOMMutationEvent::webScriptValueAtIndex):
3075         (DeprecatedDOMMutationEvent::setWebScriptValueAtIndex):
3076         (DeprecatedDOMMutationEvent::setException):
3077         (DeprecatedDOMMutationEvent::type):
3078         (DeprecatedDOMMutationEvent::target):
3079         (DeprecatedDOMMutationEvent::currentTarget):
3080         (DeprecatedDOMMutationEvent::eventPhase):
3081         (DeprecatedDOMMutationEvent::bubbles):
3082         (DeprecatedDOMMutationEvent::cancelable):
3083         (DeprecatedDOMMutationEvent::timeStamp):
3084         (DeprecatedDOMMutationEvent::stopPropagation):
3085         (DeprecatedDOMMutationEvent::preventDefault):
3086         (DeprecatedDOMMutationEvent::initEvent):
3087         (DeprecatedDOMOverflowEvent::DeprecatedDOMOverflowEvent):
3088         (DeprecatedDOMOverflowEvent::AddRef):
3089         (DeprecatedDOMOverflowEvent::Release):
3090         (DeprecatedDOMOverflowEvent::throwException):
3091         (DeprecatedDOMOverflowEvent::callWebScriptMethod):
3092         (DeprecatedDOMOverflowEvent::evaluateWebScript):
3093         (DeprecatedDOMOverflowEvent::removeWebScriptKey):
3094         (DeprecatedDOMOverflowEvent::stringRepresentation):
3095         (DeprecatedDOMOverflowEvent::webScriptValueAtIndex):
3096         (DeprecatedDOMOverflowEvent::setWebScriptValueAtIndex):
3097         (DeprecatedDOMOverflowEvent::setException):
3098         (DeprecatedDOMOverflowEvent::type):
3099         (DeprecatedDOMOverflowEvent::target):
3100         (DeprecatedDOMOverflowEvent::currentTarget):
3101         (DeprecatedDOMOverflowEvent::eventPhase):
3102         (DeprecatedDOMOverflowEvent::bubbles):
3103         (DeprecatedDOMOverflowEvent::cancelable):
3104         (DeprecatedDOMOverflowEvent::timeStamp):
3105         (DeprecatedDOMOverflowEvent::stopPropagation):
3106         (DeprecatedDOMOverflowEvent::preventDefault):
3107         (DeprecatedDOMOverflowEvent::initEvent):
3108         (DeprecatedDOMWheelEvent::DeprecatedDOMWheelEvent):
3109         (DeprecatedDOMWheelEvent::AddRef):
3110         (DeprecatedDOMWheelEvent::Release):
3111         (DeprecatedDOMWheelEvent::throwException):
3112         (DeprecatedDOMWheelEvent::callWebScriptMethod):
3113         (DeprecatedDOMWheelEvent::evaluateWebScript):
3114         (DeprecatedDOMWheelEvent::removeWebScriptKey):
3115         (DeprecatedDOMWheelEvent::stringRepresentation):
3116         (DeprecatedDOMWheelEvent::webScriptValueAtIndex):
3117         (DeprecatedDOMWheelEvent::setWebScriptValueAtIndex):
3118         (DeprecatedDOMWheelEvent::setException):
3119         (DeprecatedDOMWheelEvent::type):
3120         (DeprecatedDOMWheelEvent::target):
3121         (DeprecatedDOMWheelEvent::currentTarget):
3122         (DeprecatedDOMWheelEvent::eventPhase):
3123         (DeprecatedDOMWheelEvent::bubbles):
3124         (DeprecatedDOMWheelEvent::cancelable):
3125         (DeprecatedDOMWheelEvent::timeStamp):
3126         (DeprecatedDOMWheelEvent::stopPropagation):
3127         (DeprecatedDOMWheelEvent::preventDefault):
3128         (DeprecatedDOMWheelEvent::initEvent):
3129         (DeprecatedDOMWheelEvent::view):
3130         (DeprecatedDOMWheelEvent::detail):
3131         (DeprecatedDOMWheelEvent::initUIEvent):
3132         (DeprecatedDOMWheelEvent::keyCode):
3133         (DeprecatedDOMWheelEvent::charCode):
3134         (DeprecatedDOMWheelEvent::layerX):
3135         (DeprecatedDOMWheelEvent::layerY):
3136         (DeprecatedDOMWheelEvent::pageX):
3137         (DeprecatedDOMWheelEvent::pageY):
3138         (DeprecatedDOMWheelEvent::which):
3139         * DOMHTMLClasses.cpp:
3140         (DeprecatedDOMHTMLCollection::DeprecatedDOMHTMLCollection):
3141         (DeprecatedDOMHTMLCollection::createInstance):
3142         (DeprecatedDOMHTMLCollection::QueryInterface):
3143         (DeprecatedDOMHTMLCollection::length):
3144         (DeprecatedDOMHTMLCollection::item):
3145         (DeprecatedDOMHTMLCollection::namedItem):
3146         (DeprecatedDOMHTMLOptionsCollection::QueryInterface):
3147         (DeprecatedDOMHTMLOptionsCollection::length):
3148         (DeprecatedDOMHTMLOptionsCollection::setLength):
3149         (DeprecatedDOMHTMLOptionsCollection::item):
3150         (DeprecatedDOMHTMLOptionsCollection::namedItem):
3151         (DeprecatedDOMHTMLDocument::QueryInterface):
3152         (DeprecatedDOMHTMLDocument::title):
3153         (DeprecatedDOMHTMLDocument::setTitle):
3154         (DeprecatedDOMHTMLDocument::referrer):
3155         (DeprecatedDOMHTMLDocument::domain):
3156         (DeprecatedDOMHTMLDocument::URL):
3157         (DeprecatedDOMHTMLDocument::body):
3158         (DeprecatedDOMHTMLDocument::setBody):
3159         (DeprecatedDOMHTMLDocument::images):
3160         (DeprecatedDOMHTMLDocument::applets):
3161         (DeprecatedDOMHTMLDocument::links):
3162         (DeprecatedDOMHTMLDocument::forms):
3163         (DeprecatedDOMHTMLDocument::anchors):
3164         (DeprecatedDOMHTMLDocument::cookie):
3165         (DeprecatedDOMHTMLDocument::setCookie):
3166         (DeprecatedDOMHTMLDocument::open):
3167         (DeprecatedDOMHTMLDocument::close):
3168         (DeprecatedDOMHTMLDocument::write):
3169         (DeprecatedDOMHTMLDocument::writeln):
3170         (DeprecatedDOMHTMLDocument::getElementById_):
3171         (DeprecatedDOMHTMLDocument::getElementsByName):
3172         (DeprecatedDOMHTMLElement::QueryInterface):
3173         (DeprecatedDOMHTMLElement::idName):
3174         (DeprecatedDOMHTMLElement::setIdName):
3175         (DeprecatedDOMHTMLElement::title):
3176         (DeprecatedDOMHTMLElement::setTitle):
3177         (DeprecatedDOMHTMLElement::lang):
3178         (DeprecatedDOMHTMLElement::setLang):
3179         (DeprecatedDOMHTMLElement::dir):
3180         (DeprecatedDOMHTMLElement::setDir):
3181         (DeprecatedDOMHTMLElement::className):
3182         (DeprecatedDOMHTMLElement::setClassName):
3183         (DeprecatedDOMHTMLElement::innerHTML):
3184         (DeprecatedDOMHTMLElement::setInnerHTML):
3185         (DeprecatedDOMHTMLElement::innerText):
3186         (DeprecatedDOMHTMLElement::setInnerText):
3187         (DeprecatedDOMHTMLFormElement::QueryInterface):
3188         (DeprecatedDOMHTMLFormElement::elements):
3189         (DeprecatedDOMHTMLFormElement::length):
3190         (DeprecatedDOMHTMLFormElement::name):
3191         (DeprecatedDOMHTMLFormElement::setName):
3192         (DeprecatedDOMHTMLFormElement::acceptCharset):
3193         (DeprecatedDOMHTMLFormElement::setAcceptCharset):
3194         (DeprecatedDOMHTMLFormElement::action):
3195         (DeprecatedDOMHTMLFormElement::setAction):
3196         (DeprecatedDOMHTMLFormElement::encType):
3197         (DeprecatedDOMHTMLFormElement::setEnctype):
3198         (DeprecatedDOMHTMLFormElement::method):
3199         (DeprecatedDOMHTMLFormElement::setMethod):
3200         (DeprecatedDOMHTMLFormElement::target):
3201         (DeprecatedDOMHTMLFormElement::setTarget):
3202         (DeprecatedDOMHTMLFormElement::submit):
3203         (DeprecatedDOMHTMLFormElement::reset):
3204         (DeprecatedDOMHTMLSelectElement::QueryInterface):
3205         (DeprecatedDOMHTMLSelectElement::type):
3206         (DeprecatedDOMHTMLSelectElement::selectedIndex):
3207         (DeprecatedDOMHTMLSelectElement::setSelectedIndx):
3208         (DeprecatedDOMHTMLSelectElement::value):
3209         (DeprecatedDOMHTMLSelectElement::setValue):
3210         (DeprecatedDOMHTMLSelectElement::length):
3211         (DeprecatedDOMHTMLSelectElement::form):
3212         (DeprecatedDOMHTMLSelectElement::options):
3213         (DeprecatedDOMHTMLSelectElement::disabled):
3214         (DeprecatedDOMHTMLSelectElement::setDisabled):
3215         (DeprecatedDOMHTMLSelectElement::multiple):
3216         (DeprecatedDOMHTMLSelectElement::setMultiple):
3217         (DeprecatedDOMHTMLSelectElement::name):
3218         (DeprecatedDOMHTMLSelectElement::setName):
3219         (DeprecatedDOMHTMLSelectElement::size):
3220         (DeprecatedDOMHTMLSelectElement::setSize):
3221         (DeprecatedDOMHTMLSelectElement::tabIndex):
3222         (DeprecatedDOMHTMLSelectElement::setTabIndex):
3223         (DeprecatedDOMHTMLSelectElement::add):
3224         (DeprecatedDOMHTMLSelectElement::remove):
3225         (DeprecatedDOMHTMLSelectElement::activateItemAtIndex):
3226         (DeprecatedDOMHTMLOptionElement::QueryInterface):
3227         (DeprecatedDOMHTMLOptionElement::form):
3228         (DeprecatedDOMHTMLOptionElement::defaultSelected):
3229         (DeprecatedDOMHTMLOptionElement::setDefaultSelected):
3230         (DeprecatedDOMHTMLOptionElement::text):
3231         (DeprecatedDOMHTMLOptionElement::index):
3232         (DeprecatedDOMHTMLOptionElement::disabled):
3233         (DeprecatedDOMHTMLOptionElement::setDisabled):
3234         (DeprecatedDOMHTMLOptionElement::label):
3235         (DeprecatedDOMHTMLOptionElement::setLabel):
3236         (DeprecatedDOMHTMLOptionElement::selected):
3237         (DeprecatedDOMHTMLOptionElement::setSelected):
3238         (DeprecatedDOMHTMLOptionElement::value):
3239         (DeprecatedDOMHTMLOptionElement::setValue):
3240         (DeprecatedDOMHTMLInputElement::QueryInterface):
3241         (DeprecatedDOMHTMLInputElement::defaultValue):
3242         (DeprecatedDOMHTMLInputElement::setDefaultValue):
3243         (DeprecatedDOMHTMLInputElement::defaultChecked):
3244         (DeprecatedDOMHTMLInputElement::setDefaultChecked):
3245         (DeprecatedDOMHTMLInputElement::form):
3246         (DeprecatedDOMHTMLInputElement::accept):
3247         (DeprecatedDOMHTMLInputElement::setAccept):
3248         (DeprecatedDOMHTMLInputElement::accessKey):
3249         (DeprecatedDOMHTMLInputElement::setAccessKey):
3250         (DeprecatedDOMHTMLInputElement::align):
3251         (DeprecatedDOMHTMLInputElement::setAlign):
3252         (DeprecatedDOMHTMLInputElement::alt):
3253         (DeprecatedDOMHTMLInputElement::setAlt):
3254         (DeprecatedDOMHTMLInputElement::checked):
3255         (DeprecatedDOMHTMLInputElement::setChecked):
3256         (DeprecatedDOMHTMLInputElement::disabled):
3257         (DeprecatedDOMHTMLInputElement::setDisabled):
3258         (DeprecatedDOMHTMLInputElement::maxLength):
3259         (DeprecatedDOMHTMLInputElement::setMaxLength):
3260         (DeprecatedDOMHTMLInputElement::name):
3261         (DeprecatedDOMHTMLInputElement::setName):
3262         (DeprecatedDOMHTMLInputElement::readOnly):
3263         (DeprecatedDOMHTMLInputElement::setReadOnly):
3264         (DeprecatedDOMHTMLInputElement::size):
3265         (DeprecatedDOMHTMLInputElement::setSize):
3266         (DeprecatedDOMHTMLInputElement::src):
3267         (DeprecatedDOMHTMLInputElement::setSrc):
3268         (DeprecatedDOMHTMLInputElement::tabIndex):
3269         (DeprecatedDOMHTMLInputElement::setTabIndex):
3270         (DeprecatedDOMHTMLInputElement::type):
3271         (DeprecatedDOMHTMLInputElement::setType):
3272         (DeprecatedDOMHTMLInputElement::useMap):
3273         (DeprecatedDOMHTMLInputElement::setUseMap):
3274         (DeprecatedDOMHTMLInputElement::value):
3275         (DeprecatedDOMHTMLInputElement::setValue):
3276         (DeprecatedDOMHTMLInputElement::select):
3277         (DeprecatedDOMHTMLInputElement::click):
3278         (DeprecatedDOMHTMLInputElement::setSelectionStart):
3279         (DeprecatedDOMHTMLInputElement::selectionStart):
3280         (DeprecatedDOMHTMLInputElement::setSelectionEnd):
3281         (DeprecatedDOMHTMLInputElement::selectionEnd):
3282         (DeprecatedDOMHTMLInputElement::isTextField):
3283         (DeprecatedDOMHTMLInputElement::rectOnScreen):
3284         (DeprecatedDOMHTMLInputElement::replaceCharactersInRange):
3285         (DeprecatedDOMHTMLInputElement::selectedRange):
3286         (DeprecatedDOMHTMLInputElement::setAutofilled):
3287         (DeprecatedDOMHTMLInputElement::isUserEdited):
3288         (DeprecatedDOMHTMLTextAreaElement::QueryInterface):
3289         (DeprecatedDOMHTMLTextAreaElement::defaultValue):
3290         (DeprecatedDOMHTMLTextAreaElement::setDefaultValue):
3291         (DeprecatedDOMHTMLTextAreaElement::form):
3292         (DeprecatedDOMHTMLTextAreaElement::accessKey):
3293         (DeprecatedDOMHTMLTextAreaElement::setAccessKey):
3294         (DeprecatedDOMHTMLTextAreaElement::cols):
3295         (DeprecatedDOMHTMLTextAreaElement::setCols):
3296         (DeprecatedDOMHTMLTextAreaElement::disabled):
3297         (DeprecatedDOMHTMLTextAreaElement::setDisabled):
3298         (DeprecatedDOMHTMLTextAreaElement::name):
3299         (DeprecatedDOMHTMLTextAreaElement::setName):
3300         (DeprecatedDOMHTMLTextAreaElement::readOnly):
3301         (DeprecatedDOMHTMLTextAreaElement::setReadOnly):
3302         (DeprecatedDOMHTMLTextAreaElement::rows):
3303         (DeprecatedDOMHTMLTextAreaElement::setRows):
3304         (DeprecatedDOMHTMLTextAreaElement::tabIndex):
3305         (DeprecatedDOMHTMLTextAreaElement::setTabIndex):
3306         (DeprecatedDOMHTMLTextAreaElement::type):
3307         (DeprecatedDOMHTMLTextAreaElement::value):
3308         (DeprecatedDOMHTMLTextAreaElement::setValue):
3309         (DeprecatedDOMHTMLTextAreaElement::select):
3310         (DeprecatedDOMHTMLTextAreaElement::isUserEdited):
3311         * DOMHTMLClasses.h:
3312         (DeprecatedDOMHTMLCollection::AddRef):
3313         (DeprecatedDOMHTMLCollection::Release):
3314         (DeprecatedDOMHTMLCollection::throwException):
3315         (DeprecatedDOMHTMLCollection::callWebScriptMethod):
3316         (DeprecatedDOMHTMLCollection::evaluateWebScript):
3317         (DeprecatedDOMHTMLCollection::removeWebScriptKey):
3318         (DeprecatedDOMHTMLCollection::stringRepresentation):
3319         (DeprecatedDOMHTMLCollection::webScriptValueAtIndex):
3320         (DeprecatedDOMHTMLCollection::setWebScriptValueAtIndex):
3321         (DeprecatedDOMHTMLCollection::setException):
3322         (DeprecatedDOMHTMLOptionsCollection::AddRef):
3323         (DeprecatedDOMHTMLOptionsCollection::Release):
3324         (DeprecatedDOMHTMLOptionsCollection::throwException):
3325         (DeprecatedDOMHTMLOptionsCollection::callWebScriptMethod):
3326         (DeprecatedDOMHTMLOptionsCollection::evaluateWebScript):
3327         (DeprecatedDOMHTMLOptionsCollection::removeWebScriptKey):
3328         (DeprecatedDOMHTMLOptionsCollection::stringRepresentation):
3329         (DeprecatedDOMHTMLOptionsCollection::webScriptValueAtIndex):
3330         (DeprecatedDOMHTMLOptionsCollection::setWebScriptValueAtIndex):
3331         (DeprecatedDOMHTMLOptionsCollection::setException):
3332         (DeprecatedDOMHTMLDocument::DeprecatedDOMHTMLDocument):
3333         (DeprecatedDOMHTMLDocument::AddRef):
3334         (DeprecatedDOMHTMLDocument::Release):
3335         (DeprecatedDOMHTMLDocument::throwException):
3336         (DeprecatedDOMHTMLDocument::callWebScriptMethod):
3337         (DeprecatedDOMHTMLDocument::evaluateWebScript):
3338         (DeprecatedDOMHTMLDocument::removeWebScriptKey):
3339         (DeprecatedDOMHTMLDocument::stringRepresentation):
3340         (DeprecatedDOMHTMLDocument::webScriptValueAtIndex):
3341         (DeprecatedDOMHTMLDocument::setWebScriptValueAtIndex):
3342         (DeprecatedDOMHTMLDocument::setException):
3343         (DeprecatedDOMHTMLDocument::nodeName):
3344         (DeprecatedDOMHTMLDocument::nodeValue):
3345         (DeprecatedDOMHTMLDocument::nodeType):
3346         (DeprecatedDOMHTMLDocument::parentNode):
3347         (DeprecatedDOMHTMLDocument::childNodes):
3348         (DeprecatedDOMHTMLDocument::firstChild):
3349         (DeprecatedDOMHTMLDocument::lastChild):
3350         (DeprecatedDOMHTMLDocument::previousSibling):
3351         (DeprecatedDOMHTMLDocument::nextSibling):
3352         (DeprecatedDOMHTMLDocument::attributes):
3353         (DeprecatedDOMHTMLDocument::ownerDocument):
3354         (DeprecatedDOMHTMLDocument::insertBefore):
3355         (DeprecatedDOMHTMLDocument::replaceChild):
3356         (DeprecatedDOMHTMLDocument::removeChild):
3357         (DeprecatedDOMHTMLDocument::appendChild):
3358         (DeprecatedDOMHTMLDocument::hasChildNodes):
3359         (DeprecatedDOMHTMLDocument::cloneNode):
3360         (DeprecatedDOMHTMLDocument::normalize):
3361         (DeprecatedDOMHTMLDocument::isSupported):
3362         (DeprecatedDOMHTMLDocument::namespaceURI):
3363         (DeprecatedDOMHTMLDocument::prefix):
3364         (DeprecatedDOMHTMLDocument::setPrefix):
3365         (DeprecatedDOMHTMLDocument::localName):
3366         (DeprecatedDOMHTMLDocument::hasAttributes):
3367         (DeprecatedDOMHTMLDocument::isSameNode):
3368         (DeprecatedDOMHTMLDocument::isEqualNode):
3369         (DeprecatedDOMHTMLDocument::textContent):
3370         (DeprecatedDOMHTMLDocument::setTextContent):
3371         (DeprecatedDOMHTMLDocument::doctype):
3372         (DeprecatedDOMHTMLDocument::implementation):
3373         (DeprecatedDOMHTMLDocument::documentElement):
3374         (DeprecatedDOMHTMLDocument::createElement):
3375         (DeprecatedDOMHTMLDocument::createDocumentFragment):
3376         (DeprecatedDOMHTMLDocument::createTextNode):
3377         (DeprecatedDOMHTMLDocument::createComment):
3378         (DeprecatedDOMHTMLDocument::createCDATASection):
3379         (DeprecatedDOMHTMLDocument::createProcessingInstruction):
3380         (DeprecatedDOMHTMLDocument::createAttribute):
3381         (DeprecatedDOMHTMLDocument::createEntityReference):
3382         (DeprecatedDOMHTMLDocument::getElementsByTagName):
3383         (DeprecatedDOMHTMLDocument::importNode):
3384         (DeprecatedDOMHTMLDocument::createElementNS):
3385         (DeprecatedDOMHTMLDocument::createAttributeNS):
3386         (DeprecatedDOMHTMLDocument::getElementsByTagNameNS):
3387         (DeprecatedDOMHTMLDocument::getElementById):
3388         (DeprecatedDOMHTMLElement::DeprecatedDOMHTMLElement):
3389         (DeprecatedDOMHTMLElement::AddRef):
3390         (DeprecatedDOMHTMLElement::Release):
3391         (DeprecatedDOMHTMLElement::throwException):
3392         (DeprecatedDOMHTMLElement::callWebScriptMethod):
3393         (DeprecatedDOMHTMLElement::evaluateWebScript):
3394         (DeprecatedDOMHTMLElement::removeWebScriptKey):
3395         (DeprecatedDOMHTMLElement::stringRepresentation):
3396         (DeprecatedDOMHTMLElement::webScriptValueAtIndex):
3397         (DeprecatedDOMHTMLElement::setWebScriptValueAtIndex):
3398         (DeprecatedDOMHTMLElement::setException):
3399         (DeprecatedDOMHTMLElement::nodeName):
3400         (DeprecatedDOMHTMLElement::nodeValue):
3401         (DeprecatedDOMHTMLElement::setNodeValue):
3402         (DeprecatedDOMHTMLElement::nodeType):
3403         (DeprecatedDOMHTMLElement::parentNode):
3404         (DeprecatedDOMHTMLElement::childNodes):
3405         (DeprecatedDOMHTMLElement::firstChild):
3406         (DeprecatedDOMHTMLElement::lastChild):
3407         (DeprecatedDOMHTMLElement::previousSibling):
3408         (DeprecatedDOMHTMLElement::nextSibling):
3409         (DeprecatedDOMHTMLElement::attributes):
3410         (DeprecatedDOMHTMLElement::ownerDocument):
3411         (DeprecatedDOMHTMLElement::insertBefore):
3412         (DeprecatedDOMHTMLElement::replaceChild):
3413         (DeprecatedDOMHTMLElement::removeChild):
3414         (DeprecatedDOMHTMLElement::appendChild):
3415         (DeprecatedDOMHTMLElement::hasChildNodes):
3416         (DeprecatedDOMHTMLElement::cloneNode):
3417         (DeprecatedDOMHTMLElement::normalize):
3418         (DeprecatedDOMHTMLElement::isSupported):
3419         (DeprecatedDOMHTMLElement::namespaceURI):
3420         (DeprecatedDOMHTMLElement::prefix):
3421         (DeprecatedDOMHTMLElement::setPrefix):
3422         (DeprecatedDOMHTMLElement::localName):
3423         (DeprecatedDOMHTMLElement::hasAttributes):
3424         (DeprecatedDOMHTMLElement::isSameNode):
3425         (DeprecatedDOMHTMLElement::isEqualNode):
3426         (DeprecatedDOMHTMLElement::textContent):
3427         (DeprecatedDOMHTMLElement::setTextContent):
3428         (DeprecatedDOMHTMLElement::tagName):
3429         (DeprecatedDOMHTMLElement::getAttribute):
3430         (DeprecatedDOMHTMLElement::setAttribute):
3431         (DeprecatedDOMHTMLElement::removeAttribute):
3432         (DeprecatedDOMHTMLElement::getAttributeNode):
3433         (DeprecatedDOMHTMLElement::setAttributeNode):
3434         (DeprecatedDOMHTMLElement::removeAttributeNode):
3435         (DeprecatedDOMHTMLElement::getElementsByTagName):
3436         (DeprecatedDOMHTMLElement::getAttributeNS):
3437         (DeprecatedDOMHTMLElement::setAttributeNS):
3438         (DeprecatedDOMHTMLElement::removeAttributeNS):
3439         (DeprecatedDOMHTMLElement::getAttributeNodeNS):
3440         (DeprecatedDOMHTMLElement::setAttributeNodeNS):
3441         (DeprecatedDOMHTMLElement::getElementsByTagNameNS):
3442         (DeprecatedDOMHTMLElement::hasAttribute):
3443         (DeprecatedDOMHTMLElement::hasAttributeNS):
3444         (DeprecatedDOMHTMLElement::focus):
3445         (DeprecatedDOMHTMLElement::blur):
3446         (DeprecatedDOMHTMLFormElement::DeprecatedDOMHTMLFormElement):
3447         (DeprecatedDOMHTMLFormElement::AddRef):
3448         (DeprecatedDOMHTMLFormElement::Release):
3449         (DeprecatedDOMHTMLFormElement::throwException):
3450         (DeprecatedDOMHTMLFormElement::callWebScriptMethod):
3451         (DeprecatedDOMHTMLFormElement::evaluateWebScript):
3452         (DeprecatedDOMHTMLFormElement::removeWebScriptKey):
3453         (DeprecatedDOMHTMLFormElement::stringRepresentation):
3454         (DeprecatedDOMHTMLFormElement::webScriptValueAtIndex):
3455         (DeprecatedDOMHTMLFormElement::setWebScriptValueAtIndex):
3456         (DeprecatedDOMHTMLFormElement::setException):
3457         (DeprecatedDOMHTMLFormElement::nodeName):
3458         (DeprecatedDOMHTMLFormElement::nodeValue):
3459         (DeprecatedDOMHTMLFormElement::setNodeValue):
3460         (DeprecatedDOMHTMLFormElement::nodeType):
3461         (DeprecatedDOMHTMLFormElement::parentNode):
3462         (DeprecatedDOMHTMLFormElement::childNodes):
3463         (DeprecatedDOMHTMLFormElement::firstChild):
3464         (DeprecatedDOMHTMLFormElement::lastChild):
3465         (DeprecatedDOMHTMLFormElement::previousSibling):
3466         (DeprecatedDOMHTMLFormElement::nextSibling):
3467         (DeprecatedDOMHTMLFormElement::attributes):
3468         (DeprecatedDOMHTMLFormElement::ownerDocument):
3469         (DeprecatedDOMHTMLFormElement::insertBefore):
3470         (DeprecatedDOMHTMLFormElement::replaceChild):
3471         (DeprecatedDOMHTMLFormElement::removeChild):
3472         (DeprecatedDOMHTMLFormElement::appendChild):
3473         (DeprecatedDOMHTMLFormElement::hasChildNodes):
3474         (DeprecatedDOMHTMLFormElement::cloneNode):
3475         (DeprecatedDOMHTMLFormElement::normalize):
3476         (DeprecatedDOMHTMLFormElement::isSupported):
3477         (DeprecatedDOMHTMLFormElement::namespaceURI):
3478         (DeprecatedDOMHTMLFormElement::prefix):
3479         (DeprecatedDOMHTMLFormElement::setPrefix):
3480         (DeprecatedDOMHTMLFormElement::localName):
3481         (DeprecatedDOMHTMLFormElement::hasAttributes):
3482         (DeprecatedDOMHTMLFormElement::isSameNode):
3483         (DeprecatedDOMHTMLFormElement::isEqualNode):
3484         (DeprecatedDOMHTMLFormElement::textContent):
3485         (DeprecatedDOMHTMLFormElement::setTextContent):
3486         (DeprecatedDOMHTMLFormElement::tagName):
3487         (DeprecatedDOMHTMLFormElement::getAttribute):
3488         (DeprecatedDOMHTMLFormElement::setAttribute):
3489         (DeprecatedDOMHTMLFormElement::removeAttribute):
3490         (DeprecatedDOMHTMLFormElement::getAttributeNode):
3491         (DeprecatedDOMHTMLFormElement::setAttributeNode):
3492         (DeprecatedDOMHTMLFormElement::removeAttributeNode):
3493         (DeprecatedDOMHTMLFormElement::getElementsByTagName):
3494         (DeprecatedDOMHTMLFormElement::getAttributeNS):
3495         (DeprecatedDOMHTMLFormElement::setAttributeNS):
3496         (DeprecatedDOMHTMLFormElement::removeAttributeNS):
3497         (DeprecatedDOMHTMLFormElement::getAttributeNodeNS):
3498         (DeprecatedDOMHTMLFormElement::setAttributeNodeNS):
3499         (DeprecatedDOMHTMLFormElement::getElementsByTagNameNS):
3500         (DeprecatedDOMHTMLFormElement::hasAttribute):
3501         (DeprecatedDOMHTMLFormElement::hasAttributeNS):
3502         (DeprecatedDOMHTMLFormElement::focus):
3503         (DeprecatedDOMHTMLFormElement::blur):
3504         (DeprecatedDOMHTMLFormElement::idName):
3505         (DeprecatedDOMHTMLFormElement::setIdName):
3506         (DeprecatedDOMHTMLFormElement::title):
3507         (DeprecatedDOMHTMLFormElement::setTitle):
3508         (DeprecatedDOMHTMLFormElement::lang):
3509         (DeprecatedDOMHTMLFormElement::setLang):
3510         (DeprecatedDOMHTMLFormElement::dir):
3511         (DeprecatedDOMHTMLFormElement::setDir):
3512         (DeprecatedDOMHTMLFormElement::className):
3513         (DeprecatedDOMHTMLFormElement::setClassName):
3514         (DeprecatedDOMHTMLFormElement::innerHTML):
3515         (DeprecatedDOMHTMLFormElement::setInnerHTML):
3516         (DeprecatedDOMHTMLFormElement::innerText):
3517         (DeprecatedDOMHTMLFormElement::setInnerText):
3518         (DeprecatedDOMHTMLSelectElement::DeprecatedDOMHTMLSelectElement):
3519         (DeprecatedDOMHTMLSelectElement::AddRef):
3520         (DeprecatedDOMHTMLSelectElement::Release):
3521         (DeprecatedDOMHTMLSelectElement::throwException):
3522         (DeprecatedDOMHTMLSelectElement::callWebScriptMethod):
3523         (DeprecatedDOMHTMLSelectElement::evaluateWebScript):
3524         (DeprecatedDOMHTMLSelectElement::removeWebScriptKey):
3525         (DeprecatedDOMHTMLSelectElement::stringRepresentation):
3526         (DeprecatedDOMHTMLSelectElement::webScriptValueAtIndex):
3527         (DeprecatedDOMHTMLSelectElement::setWebScriptValueAtIndex):
3528         (DeprecatedDOMHTMLSelectElement::setException):
3529         (DeprecatedDOMHTMLSelectElement::nodeName):
3530         (DeprecatedDOMHTMLSelectElement::nodeValue):
3531         (DeprecatedDOMHTMLSelectElement::setNodeValue):
3532         (DeprecatedDOMHTMLSelectElement::nodeType):
3533         (DeprecatedDOMHTMLSelectElement::parentNode):
3534         (DeprecatedDOMHTMLSelectElement::childNodes):
3535         (DeprecatedDOMHTMLSelectElement::firstChild):
3536         (DeprecatedDOMHTMLSelectElement::lastChild):
3537         (DeprecatedDOMHTMLSelectElement::previousSibling):
3538         (DeprecatedDOMHTMLSelectElement::nextSibling):
3539         (DeprecatedDOMHTMLSelectElement::attributes):
3540         (DeprecatedDOMHTMLSelectElement::ownerDocument):
3541         (DeprecatedDOMHTMLSelectElement::insertBefore):
3542         (DeprecatedDOMHTMLSelectElement::replaceChild):
3543         (DeprecatedDOMHTMLSelectElement::removeChild):
3544         (DeprecatedDOMHTMLSelectElement::appendChild):
3545         (DeprecatedDOMHTMLSelectElement::hasChildNodes):
3546         (DeprecatedDOMHTMLSelectElement::cloneNode):
3547         (DeprecatedDOMHTMLSelectElement::normalize):
3548         (DeprecatedDOMHTMLSelectElement::isSupported):
3549         (DeprecatedDOMHTMLSelectElement::namespaceURI):
3550         (DeprecatedDOMHTMLSelectElement::prefix):
3551         (DeprecatedDOMHTMLSelectElement::setPrefix):
3552         (DeprecatedDOMHTMLSelectElement::localName):
3553         (DeprecatedDOMHTMLSelectElement::hasAttributes):
3554         (DeprecatedDOMHTMLSelectElement::isSameNode):
3555         (DeprecatedDOMHTMLSelectElement::isEqualNode):
3556         (DeprecatedDOMHTMLSelectElement::textContent):
3557         (DeprecatedDOMHTMLSelectElement::setTextContent):
3558         (DeprecatedDOMHTMLSelectElement::tagName):
3559         (DeprecatedDOMHTMLSelectElement::getAttribute):
3560         (DeprecatedDOMHTMLSelectElement::setAttribute):
3561         (DeprecatedDOMHTMLSelectElement::removeAttribute):
3562         (DeprecatedDOMHTMLSelectElement::getAttributeNode):
3563         (DeprecatedDOMHTMLSelectElement::setAttributeNode):
3564         (DeprecatedDOMHTMLSelectElement::removeAttributeNode):
3565         (DeprecatedDOMHTMLSelectElement::getElementsByTagName):
3566         (DeprecatedDOMHTMLSelectElement::getAttributeNS):
3567         (DeprecatedDOMHTMLSelectElement::setAttributeNS):
3568         (DeprecatedDOMHTMLSelectElement::removeAttributeNS):
3569         (DeprecatedDOMHTMLSelectElement::getAttributeNodeNS):
3570         (DeprecatedDOMHTMLSelectElement::setAttributeNodeNS):
3571         (DeprecatedDOMHTMLSelectElement::getElementsByTagNameNS):
3572         (DeprecatedDOMHTMLSelectElement::hasAttribute):
3573         (DeprecatedDOMHTMLSelectElement::hasAttributeNS):
3574         (DeprecatedDOMHTMLSelectElement::focus):
3575         (DeprecatedDOMHTMLSelectElement::blur):
3576         (DeprecatedDOMHTMLSelectElement::idName):
3577         (DeprecatedDOMHTMLSelectElement::setIdName):
3578         (DeprecatedDOMHTMLSelectElement::title):
3579         (DeprecatedDOMHTMLSelectElement::setTitle):
3580         (DeprecatedDOMHTMLSelectElement::lang):
3581         (DeprecatedDOMHTMLSelectElement::setLang):
3582         (DeprecatedDOMHTMLSelectElement::dir):
3583         (DeprecatedDOMHTMLSelectElement::setDir):
3584         (DeprecatedDOMHTMLSelectElement::className):
3585         (DeprecatedDOMHTMLSelectElement::setClassName):
3586         (DeprecatedDOMHTMLSelectElement::innerHTML):
3587         (DeprecatedDOMHTMLSelectElement::setInnerHTML):
3588         (DeprecatedDOMHTMLSelectElement::innerText):
3589         (DeprecatedDOMHTMLSelectElement::setInnerText):
3590         (DeprecatedDOMHTMLOptionElement::DeprecatedDOMHTMLOptionElement):
3591         (DeprecatedDOMHTMLOptionElement::AddRef):
3592         (DeprecatedDOMHTMLOptionElement::Release):
3593         (DeprecatedDOMHTMLOptionElement::throwException):
3594         (DeprecatedDOMHTMLOptionElement::callWebScriptMethod):
3595         (DeprecatedDOMHTMLOptionElement::evaluateWebScript):
3596         (DeprecatedDOMHTMLOptionElement::removeWebScriptKey):
3597         (DeprecatedDOMHTMLOptionElement::stringRepresentation):
3598         (DeprecatedDOMHTMLOptionElement::webScriptValueAtIndex):
3599         (DeprecatedDOMHTMLOptionElement::setWebScriptValueAtIndex):
3600         (DeprecatedDOMHTMLOptionElement::setException):
3601         (DeprecatedDOMHTMLOptionElement::nodeName):
3602         (DeprecatedDOMHTMLOptionElement::nodeValue):
3603         (DeprecatedDOMHTMLOptionElement::setNodeValue):
3604         (DeprecatedDOMHTMLOptionElement::nodeType):
3605         (DeprecatedDOMHTMLOptionElement::parentNode):
3606         (DeprecatedDOMHTMLOptionElement::childNodes):
3607         (DeprecatedDOMHTMLOptionElement::firstChild):
3608         (DeprecatedDOMHTMLOptionElement::lastChild):
3609         (DeprecatedDOMHTMLOptionElement::previousSibling):
3610         (DeprecatedDOMHTMLOptionElement::nextSibling):
3611         (DeprecatedDOMHTMLOptionElement::attributes):
3612         (DeprecatedDOMHTMLOptionElement::ownerDocument):
3613         (DeprecatedDOMHTMLOptionElement::insertBefore):
3614         (DeprecatedDOMHTMLOptionElement::replaceChild):
3615         (DeprecatedDOMHTMLOptionElement::removeChild):
3616         (DeprecatedDOMHTMLOptionElement::appendChild):
3617         (DeprecatedDOMHTMLOptionElement::hasChildNodes):
3618         (DeprecatedDOMHTMLOptionElement::cloneNode):
3619         (DeprecatedDOMHTMLOptionElement::normalize):
3620         (DeprecatedDOMHTMLOptionElement::isSupported):
3621         (DeprecatedDOMHTMLOptionElement::namespaceURI):
3622         (DeprecatedDOMHTMLOptionElement::prefix):
3623         (DeprecatedDOMHTMLOptionElement::setPrefix):
3624         (DeprecatedDOMHTMLOptionElement::localName):
3625         (DeprecatedDOMHTMLOptionElement::hasAttributes):
3626         (DeprecatedDOMHTMLOptionElement::isSameNode):
3627         (DeprecatedDOMHTMLOptionElement::isEqualNode):
3628         (DeprecatedDOMHTMLOptionElement::textContent):
3629         (DeprecatedDOMHTMLOptionElement::setTextContent):
3630         (DeprecatedDOMHTMLOptionElement::tagName):
3631         (DeprecatedDOMHTMLOptionElement::getAttribute):
3632         (DeprecatedDOMHTMLOptionElement::setAttribute):
3633         (DeprecatedDOMHTMLOptionElement::removeAttribute):
3634         (DeprecatedDOMHTMLOptionElement::getAttributeNode):
3635         (DeprecatedDOMHTMLOptionElement::setAttributeNode):
3636         (DeprecatedDOMHTMLOptionElement::removeAttributeNode):
3637         (DeprecatedDOMHTMLOptionElement::getElementsByTagName):
3638         (DeprecatedDOMHTMLOptionElement::getAttributeNS):
3639         (DeprecatedDOMHTMLOptionElement::setAttributeNS):
3640         (DeprecatedDOMHTMLOptionElement::removeAttributeNS):
3641         (DeprecatedDOMHTMLOptionElement::getAttributeNodeNS):
3642         (DeprecatedDOMHTMLOptionElement::setAttributeNodeNS):
3643         (DeprecatedDOMHTMLOptionElement::getElementsByTagNameNS):
3644         (DeprecatedDOMHTMLOptionElement::hasAttribute):
3645         (DeprecatedDOMHTMLOptionElement::hasAttributeNS):
3646         (DeprecatedDOMHTMLOptionElement::focus):
3647         (DeprecatedDOMHTMLOptionElement::blur):
3648         (DeprecatedDOMHTMLOptionElement::idName):
3649         (DeprecatedDOMHTMLOptionElement::setIdName):
3650         (DeprecatedDOMHTMLOptionElement::title):
3651         (DeprecatedDOMHTMLOptionElement::setTitle):
3652         (DeprecatedDOMHTMLOptionElement::lang):
3653         (DeprecatedDOMHTMLOptionElement::setLang):
3654         (DeprecatedDOMHTMLOptionElement::dir):
3655         (DeprecatedDOMHTMLOptionElement::setDir):
3656         (DeprecatedDOMHTMLOptionElement::className):
3657         (DeprecatedDOMHTMLOptionElement::setClassName):
3658         (DeprecatedDOMHTMLOptionElement::innerHTML):
3659         (DeprecatedDOMHTMLOptionElement::setInnerHTML):
3660         (DeprecatedDOMHTMLOptionElement::innerText):
3661         (DeprecatedDOMHTMLOptionElement::setInnerText):
3662         (DeprecatedDOMHTMLInputElement::DeprecatedDOMHTMLInputElement):
3663         (DeprecatedDOMHTMLInputElement::AddRef):
3664         (DeprecatedDOMHTMLInputElement::Release):
3665         (DeprecatedDOMHTMLInputElement::throwException):
3666         (DeprecatedDOMHTMLInputElement::callWebScriptMethod):
3667         (DeprecatedDOMHTMLInputElement::evaluateWebScript):
3668         (DeprecatedDOMHTMLInputElement::removeWebScriptKey):
3669         (DeprecatedDOMHTMLInputElement::stringRepresentation):
3670         (DeprecatedDOMHTMLInputElement::webScriptValueAtIndex):
3671         (DeprecatedDOMHTMLInputElement::setWebScriptValueAtIndex):
3672         (DeprecatedDOMHTMLInputElement::setException):
3673         (DeprecatedDOMHTMLInputElement::nodeName):
3674         (DeprecatedDOMHTMLInputElement::nodeValue):
3675         (DeprecatedDOMHTMLInputElement::setNodeValue):
3676         (DeprecatedDOMHTMLInputElement::nodeType):
3677         (DeprecatedDOMHTMLInputElement::parentNode):
3678         (DeprecatedDOMHTMLInputElement::childNodes):
3679         (DeprecatedDOMHTMLInputElement::firstChild):
3680         (DeprecatedDOMHTMLInputElement::lastChild):
3681         (DeprecatedDOMHTMLInputElement::previousSibling):
3682         (DeprecatedDOMHTMLInputElement::nextSibling):
3683         (DeprecatedDOMHTMLInputElement::attributes):
3684         (DeprecatedDOMHTMLInputElement::ownerDocument):
3685         (DeprecatedDOMHTMLInputElement::insertBefore):
3686         (DeprecatedDOMHTMLInputElement::replaceChild):
3687         (DeprecatedDOMHTMLInputElement::removeChild):
3688         (DeprecatedDOMHTMLInputElement::appendChild):
3689         (DeprecatedDOMHTMLInputElement::hasChildNodes):
3690         (DeprecatedDOMHTMLInputElement::cloneNode):
3691         (DeprecatedDOMHTMLInputElement::normalize):
3692         (DeprecatedDOMHTMLInputElement::isSupported):
3693         (DeprecatedDOMHTMLInputElement::namespaceURI):
3694         (DeprecatedDOMHTMLInputElement::prefix):
3695         (DeprecatedDOMHTMLInputElement::setPrefix):
3696         (DeprecatedDOMHTMLInputElement::localName):
3697         (DeprecatedDOMHTMLInputElement::hasAttributes):
3698         (DeprecatedDOMHTMLInputElement::isSameNode):
3699         (DeprecatedDOMHTMLInputElement::isEqualNode):
3700         (DeprecatedDOMHTMLInputElement::textContent):
3701         (DeprecatedDOMHTMLInputElement::setTextContent):
3702         (DeprecatedDOMHTMLInputElement::tagName):
3703         (DeprecatedDOMHTMLInputElement::getAttribute):
3704         (DeprecatedDOMHTMLInputElement::setAttribute):
3705         (DeprecatedDOMHTMLInputElement::removeAttribute):
3706         (DeprecatedDOMHTMLInputElement::getAttributeNode):
3707         (DeprecatedDOMHTMLInputElement::setAttributeNode):
3708         (DeprecatedDOMHTMLInputElement::removeAttributeNode):
3709         (DeprecatedDOMHTMLInputElement::getElementsByTagName):
3710         (DeprecatedDOMHTMLInputElement::getAttributeNS):
3711         (DeprecatedDOMHTMLInputElement::setAttributeNS):
3712         (DeprecatedDOMHTMLInputElement::removeAttributeNS):
3713         (DeprecatedDOMHTMLInputElement::getAttributeNodeNS):
3714         (DeprecatedDOMHTMLInputElement::setAttributeNodeNS):
3715         (DeprecatedDOMHTMLInputElement::getElementsByTagNameNS):
3716         (DeprecatedDOMHTMLInputElement::hasAttribute):
3717         (DeprecatedDOMHTMLInputElement::hasAttributeNS):
3718         (DeprecatedDOMHTMLInputElement::focus):
3719         (DeprecatedDOMHTMLInputElement::blur):
3720         (DeprecatedDOMHTMLInputElement::idName):
3721         (DeprecatedDOMHTMLInputElement::setIdName):
3722         (DeprecatedDOMHTMLInputElement::title):
3723         (DeprecatedDOMHTMLInputElement::setTitle):
3724         (DeprecatedDOMHTMLInputElement::lang):
3725         (DeprecatedDOMHTMLInputElement::setLang):
3726         (DeprecatedDOMHTMLInputElement::dir):
3727         (DeprecatedDOMHTMLInputElement::setDir):
3728         (DeprecatedDOMHTMLInputElement::className):
3729         (DeprecatedDOMHTMLInputElement::setClassName):
3730         (DeprecatedDOMHTMLInputElement::innerHTML):
3731         (DeprecatedDOMHTMLInputElement::setInnerHTML):
3732         (DeprecatedDOMHTMLInputElement::innerText):
3733         (DeprecatedDOMHTMLInputElement::setInnerText):
3734         (DeprecatedDOMHTMLTextAreaElement::DeprecatedDOMHTMLTextAreaElement):
3735         (DeprecatedDOMHTMLTextAreaElement::AddRef):
3736         (DeprecatedDOMHTMLTextAreaElement::Release):
3737         (DeprecatedDOMHTMLTextAreaElement::throwException):
3738         (DeprecatedDOMHTMLTextAreaElement::callWebScriptMethod):
3739         (DeprecatedDOMHTMLTextAreaElement::evaluateWebScript):
3740         (DeprecatedDOMHTMLTextAreaElement::removeWebScriptKey):
3741         (DeprecatedDOMHTMLTextAreaElement::stringRepresentation):
3742         (DeprecatedDOMHTMLTextAreaElement::webScriptValueAtIndex):
3743         (DeprecatedDOMHTMLTextAreaElement::setWebScriptValueAtIndex):
3744         (DeprecatedDOMHTMLTextAreaElement::setException):
3745         (DeprecatedDOMHTMLTextAreaElement::nodeName):
3746         (DeprecatedDOMHTMLTextAreaElement::nodeValue):
3747         (DeprecatedDOMHTMLTextAreaElement::setNodeValue):
3748         (DeprecatedDOMHTMLTextAreaElement::nodeType):
3749         (DeprecatedDOMHTMLTextAreaElement::parentNode):
3750         (DeprecatedDOMHTMLTextAreaElement::childNodes):
3751         (DeprecatedDOMHTMLTextAreaElement::firstChild):
3752         (DeprecatedDOMHTMLTextAreaElement::lastChild):
3753         (DeprecatedDOMHTMLTextAreaElement::previousSibling):
3754         (DeprecatedDOMHTMLTextAreaElement::nextSibling):
3755         (DeprecatedDOMHTMLTextAreaElement::attributes):
3756         (DeprecatedDOMHTMLTextAreaElement::ownerDocument):
3757         (DeprecatedDOMHTMLTextAreaElement::insertBefore):
3758         (DeprecatedDOMHTMLTextAreaElement::replaceChild):
3759         (DeprecatedDOMHTMLTextAreaElement::removeChild):
3760         (DeprecatedDOMHTMLTextAreaElement::appendChild):
3761         (DeprecatedDOMHTMLTextAreaElement::hasChildNodes):
3762         (DeprecatedDOMHTMLTextAreaElement::cloneNode):
3763         (DeprecatedDOMHTMLTextAreaElement::normalize):
3764         (DeprecatedDOMHTMLTextAreaElement::isSupported):
3765         (DeprecatedDOMHTMLTextAreaElement::namespaceURI):
3766         (DeprecatedDOMHTMLTextAreaElement::prefix):
3767         (DeprecatedDOMHTMLTextAreaElement::setPrefix):
3768         (DeprecatedDOMHTMLTextAreaElement::localName):
3769         (DeprecatedDOMHTMLTextAreaElement::hasAttributes):
3770         (DeprecatedDOMHTMLTextAreaElement::isSameNode):
3771         (DeprecatedDOMHTMLTextAreaElement::isEqualNode):
3772         (DeprecatedDOMHTMLTextAreaElement::textContent):
3773         (DeprecatedDOMHTMLTextAreaElement::setTextContent):
3774         (DeprecatedDOMHTMLTextAreaElement::tagName):
3775         (DeprecatedDOMHTMLTextAreaElement::getAttribute):
3776         (DeprecatedDOMHTMLTextAreaElement::setAttribute):
3777         (DeprecatedDOMHTMLTextAreaElement::removeAttribute):
3778         (DeprecatedDOMHTMLTextAreaElement::getAttributeNode):
3779         (DeprecatedDOMHTMLTextAreaElement::setAttributeNode):
3780         (DeprecatedDOMHTMLTextAreaElement::removeAttributeNode):
3781         (DeprecatedDOMHTMLTextAreaElement::getElementsByTagName):
3782         (DeprecatedDOMHTMLTextAreaElement::getAttributeNS):
3783         (DeprecatedDOMHTMLTextAreaElement::setAttributeNS):
3784         (DeprecatedDOMHTMLTextAreaElement::removeAttributeNS):
3785         (DeprecatedDOMHTMLTextAreaElement::getAttributeNodeNS):
3786         (DeprecatedDOMHTMLTextAreaElement::setAttributeNodeNS):
3787         (DeprecatedDOMHTMLTextAreaElement::getElementsByTagNameNS):
3788         (DeprecatedDOMHTMLTextAreaElement::hasAttribute):
3789         (DeprecatedDOMHTMLTextAreaElement::hasAttributeNS):
3790         (DeprecatedDOMHTMLTextAreaElement::focus):
3791         (DeprecatedDOMHTMLTextAreaElement::blur):
3792         (DeprecatedDOMHTMLTextAreaElement::idName):
3793         (DeprecatedDOMHTMLTextAreaElement::setIdName):
3794         (DeprecatedDOMHTMLTextAreaElement::title):
3795         (DeprecatedDOMHTMLTextAreaElement::setTitle):
3796         (DeprecatedDOMHTMLTextAreaElement::lang):
3797         (DeprecatedDOMHTMLTextAreaElement::setLang):
3798         (DeprecatedDOMHTMLTextAreaElement::dir):
3799         (DeprecatedDOMHTMLTextAreaElement::setDir):
3800         (DeprecatedDOMHTMLTextAreaElement::className):
3801         (DeprecatedDOMHTMLTextAreaElement::setClassName):
3802         (DeprecatedDOMHTMLTextAreaElement::innerHTML):
3803         (DeprecatedDOMHTMLTextAreaElement::setInnerHTML):
3804         (DeprecatedDOMHTMLTextAreaElement::innerText):
3805         (DeprecatedDOMHTMLTextAreaElement::setInnerText):
3806         * Interfaces/DOMCSS.idl:
3807         * Interfaces/DOMCore.idl:
3808         * Interfaces/DOMEvents.idl:
3809         * Interfaces/DOMExtensions.idl:
3810         * Interfaces/DOMHTML.idl:
3811         * Interfaces/DOMPrivate.idl:
3812         * Interfaces/DOMRange.idl:
3813         * Interfaces/DOMWindow.idl:
3814         * Interfaces/IWebEditingDelegate.idl:
3815         * Interfaces/IWebFormDelegate.idl:
3816         * Interfaces/IWebFrame.idl:
3817         * Interfaces/IWebHTMLRepresentation.idl:
3818         * Interfaces/IWebView.idl:
3819         * WebEditorClient.cpp:
3820         (WebEditorClient::shouldDeleteRange):
3821         (WebEditorClient::shouldInsertText):
3822         (WebEditorClient::textFieldDidBeginEditing):
3823         (WebEditorClient::textFieldDidEndEditing):
3824         (WebEditorClient::textDidChangeInTextField):
3825         (WebEditorClient::doTextFieldCommandFromEvent):
3826         (WebEditorClient::textWillBeDeletedInTextField):
3827         (WebEditorClient::textDidChangeInTextArea):
3828         * WebElementPropertyBag.cpp:
3829         (WebElementPropertyBag::Read):
3830         * WebFrame.cpp:
3831         (elementFromDOMElement):
3832         (formElementFromDOMElement):
3833         (inputElementFromDOMElement):
3834         (WebFrame::DOMDocument):
3835         (WebFrame::frameElement):
3836         (WebFrame::currentForm):
3837         (WebFrame::elementWithName):
3838         (WebFrame::formForElement):
3839         (WebFrame::elementDoesAutoComplete):
3840         (WebFrame::controlsInForm):
3841         (WebFrame::elementIsPassword):
3842         (WebFrame::searchForLabelsBeforeElement):
3843         (WebFrame::matchLabelsAgainstElement):
3844         (WebFrame::dispatchWillSubmitForm):
3845         * WebFrame.h:
3846         * WebHTMLRepresentation.cpp:
3847         (WebHTMLRepresentation::attributedStringFromDOMNodes):
3848         (WebHTMLRepresentation::elementWithName):
3849         (WebHTMLRepresentation::elementDoesAutoComplete):
3850         (WebHTMLRepresentation::elementIsPassword):
3851         (WebHTMLRepresentation::formForElement):
3852         (WebHTMLRepresentation::currentForm):
3853         (WebHTMLRepresentation::controlsInForm):
3854         (WebHTMLRepresentation::searchForLabels):
3855         (WebHTMLRepresentation::matchLabels):
3856         * WebHTMLRepresentation.h:
3857         * WebView.cpp:
3858         (WebView::mainFrameDocument):
3859         (WebView::computedStyleForElement):
3860         (WebView::editableDOMRangeForPoint):
3861         (WebView::setSelectedDOMRange):
3862         (WebView::selectedDOMRange):
3863         (WebView::setTypingStyle):
3864         (WebView::typingStyle):
3865         (WebView::styleDeclarationWithText):
3866         (WebView::replaceSelectionWithNode):
3867         (WebView::applyStyle):
3868         * WebView.h:
3869
3870 2007-08-22  Jon Honeycutt  <jhoneycutt@apple.com>
3871
3872         Reviewed by Adam.
3873
3874         Refactoring of <radr://problem/5220598> Dragging URL out and back
3875         inserts a second copy of the URL
3876
3877         * Interfaces/IWebViewPrivate.idl: Added setCustomDropTarget and
3878         removeCustomDropTarget
3879         * WebView.cpp: 
3880         (WebView::WebView): Initialize m_hasCustomDropTarget
3881         (WebView::setCustomDropTarget): Revoke any existing drop target and set
3882         the incoming drop target.
3883         (WebView::removeCustomDropTarget): Revoke any existing drop target and
3884         set the default drop target.
3885         * WebView.h:
3886
3887 2007-08-21  Ada Chan  <adachan@apple.com>
3888
3889         Fix <rdar://problem/5416630> Accelerator to open link in window in background opens window in foreground instead
3890         Placing tooltip window at the topmost in z-order brought windows that were opened in the
3891         background to the front.  Use HWND_TOP instead.
3892
3893         Reviewed by Adam.
3894         
3895         * WebView.cpp:
3896         (WebView::initializeToolTipWindow):
3897
3898 2007-08-21  Adam Roben  <aroben@apple.com>
3899
3900         Switch Windows to using FrameView::layoutIfNeededRecursive
3901
3902         Reviewed by Darin.
3903
3904         * WebFrame.cpp: Removed layoutIfNeededRecursive.
3905         * WebFrame.h: Ditto.
3906         * WebView.cpp:
3907         (WebView::updateBackingStore): Call FrameView::layoutIfNeededRecursive.
3908
3909 2007-08-17  Adam Roben  <aroben@apple.com>
3910
3911         Fix <rdar://5192578> Inspect Element should not appear in context menu in non-debug mode
3912
3913         We now follow the same logic as Mac WebKit for displaying the Inspect Element item:
3914             1) If DisableWebKitDeveloperExtras is set to true, don't display it
3915             2) If not, and we're in a debug build, display it
3916             3) If not, and we're in a release build, display it if
3917                WebKitDeveloperExtras is set to true
3918
3919         Reviewed by Ada.
3920
3921         * Interfaces/IWebPreferencesPrivate.idl: Added.
3922         * WebKit.vcproj/Interfaces.vcproj: Add new IWebPreferencesPrivate.idl
3923         file to project.
3924         * WebKit.vcproj/WebKitGUID.vcproj: Added generated .c file for
3925         IWebPreferencesPrivate to project.
3926         * WebPreferenceKeysPrivate.h: Added new keys.
3927         * WebPreferences.cpp: Added IID_WebPreferences.
3928         (WebPreferences::postPreferencesChangesNotification): Added an explicit
3929         cast needed now that WebPreferences implements two interfaces.
3930         (WebPreferences::QueryInterface): Added new cases.
3931         (WebPreferences::setDeveloperExtrasEnabled): Added.
3932         (WebPreferences::developerExtrasEnabled): Added.
3933         (WebPreferences::developerExtrasDisabledByOverride): Added.
3934         * WebPreferences.h: Now implements IWebPreferencesPrivate.
3935         * WebView.cpp:
3936         (WebView::updateWebCoreSettingsFromPreferences): Call developerExtrasEnabled.
3937         (WebView::developerExtrasEnabled): Ported from -[WebView _developerExtrasEnabled].
3938         * WebView.h:
3939
3940 2007-08-17  Adam Roben  <aroben@apple.com>
3941
3942         Add WebPreferences::sharedStandardPreferences
3943
3944         This is a convenience method to get the standard preferences object so
3945         that within WebKit we don't have to deal with the fact that COM doesn't
3946         support static methods.
3947
3948         Reviewed by Ada.
3949
3950         * WebHistory.cpp:
3951         (WebHistory::WebHistory): Use sharedStandardPreferences.
3952         * WebIconDatabase.cpp:
3953         (WebIconDatabase::init): Ditto.
3954         * WebPreferences.cpp:
3955         (WebPreferences::sharedStandardPreferences): Added.
3956         (WebPreferences::getInstanceForIdentifier): Use sharedStandardPreferences.
3957         (WebPreferences::standardPreferences): Ditto.
3958         * WebPreferences.h:
3959         * WebView.cpp:
3960         (WebView::preferences): Ditto.
3961
3962 2007-08-17  Anders Carlsson  <andersca@apple.com>
3963
3964         Build fix.
3965         
3966         * WebFrame.cpp:
3967         (WebFrame::createPlugin):
3968         * WebFrame.h:
3969         
3970 2007-08-13  Geoffrey Garen  <ggaren@apple.com>
3971
3972         Reviewed by Dave Hyatt.
3973
3974         WebKit changes to support new cache eviction model in WebCore.
3975
3976         * WebPreferences.cpp:
3977         (WebPreferences::initialize):
3978
3979         * WebView/WebPreferences.m: Modified to reflect new API in WebCore.
3980         * WebView.cpp:
3981         (WebView::initializeCacheSizesIfNecessary): Slightly increased cache
3982         size on low memory systems to avoid affecting the PLT for now.
3983
3984 2007-08-14  Steve Falkenburg  <sfalken@apple.com>
3985
3986         <rdar://problem/5411482> Windows user agent language always returns "en"
3987         
3988         Call WebCore::defaultLanguage() to pick up UA language.
3989         
3990         Reviewed by Oliver.
3991
3992         * WebView.cpp:
3993         (WebView::userAgentForKURL):
3994
3995 2007-08-15  Peter Kasting  <zerodpx@gmail.org>
3996
3997         Reviewed by Darin.
3998         
3999         http://bugs.webkit.org/show_bug.cgi?id=14967 part 1 - Eliminate most implicit
4000         conversions of wtf::Vector<T> to T* by explicitly calling .data()
4001
4002         * WebView.cpp:
4003         (getCompositionString):
4004
4005 2007-08-12  Adam Roben  <aroben@apple.com>
4006
4007         Store user defaults in a non-mutable CFDictionaryRef
4008
4009         Also renamed WebPreferences' static members:
4010             m_standardPreferences -> s_standardPreferences
4011             m_standardUserDefaults -> s_defaultSettings
4012
4013         Reviewed by Darin and John.
4014
4015         * WebPreferences.cpp:
4016         (WebPreferences::getInstanceForIdentifier):
4017         (WebPreferences::initializeUserDefaults): Construct the dictionary as a
4018         local CFMutableDictionaryRef, then assign it to the non-mutable static
4019         member.
4020         (WebPreferences::valueForKey):
4021         (WebPreferences::removeDefaultsIfNeeded):
4022         (WebPreferences::standardPreferences):
4023         * WebPreferences.h:
4024
4025 2007-08-12  Adam Roben  <aroben@apple.com>
4026
4027         Fix <rdar://problem/5214504> No way to change WebPreferences defaults (all preferences get written to disk)
4028
4029         We now only write to disk values that have been explicitly set, and
4030         never write any default values.
4031
4032         This is not enough, however, as anyone who has used WebKit prior to
4033         this change will have the default values sitting in their preferences
4034         plist on disk. To remedy this, we perform a one-time removal of any
4035         key-value pairs that match a pair in the defaults dictionary.
4036
4037         Reviewed by Steve, John, Ada, and Darin.
4038
4039         * WebPreferenceKeysPrivate.h: Added new key to ensure we only remove
4040         the defaults once.
4041         * WebPreferences.cpp:
4042         (WebPreferences::initializeDefaultSettings): Renamed from initialize, and
4043         made sure we only set up the defaults dictionary once. Now that the
4044         defaults dictionary is never modified after creation, we don't need to
4045         check whether the keys are already present.
4046         (WebPreferences::setStringValue): Don't modify the defaults dictionary.
4047         (WebPreferences::setIntegerValue): Ditto.
4048         (WebPreferences::setBoolValue): Ditto.
4049         (WebPreferences::save): Write out the user's preferences, not the defaults.
4050         (WebPreferences::load):
4051            - Removed gotos and early declarations now that we're using
4052              RetainPtr everywhere.
4053            - Initialize m_privatePrefs with an empty dictionary if we didn't
4054              read in a plist.
4055            - Call migrateDefaultSettingsFromSafari3Beta after loading.
4056         (WebPreferences::migrateDefaultSettingsFromSafari3Beta): Added.
4057         (WebPreferences::removeValuesMatchingDefaultSettings): Added.
4058         (WebPreferences::initWithIdentifier): Don't initialize m_privatePrefs
4059         -- load() does this now.
4060         * WebPreferences.h: Updated/added declarations.
4061
4062 2007-08-12  Adam Roben  <aroben@apple.com>
4063
4064         Use RetainPtr to store WebPreferences::m_privatePrefs
4065
4066         Reviewed by Darin.
4067
4068         * WebPreferences.cpp:
4069         (WebPreferences::setStringValue):
4070         (WebPreferences::setIntegerValue):
4071         (WebPreferences::setBoolValue):
4072         (WebPreferences::initWithIdentifier):
4073         * WebPreferences.h:
4074
4075 2007-08-12  Adam Roben  <aroben@apple.com>
4076
4077         Fix <rdar://problem/5278790> Hole for find-on-page match in subframe isn't clipped by frame bounds
4078
4079         Reviewed by Maciej.
4080
4081         * WebView.cpp:
4082         (WebView::rectsForTextMatches): Ported fix from r23586.
4083
4084 2007-08-12  Adam Roben  <aroben@apple.com>
4085
4086         Prevent an ASSERT on launch by initializing AtomicString in WebKitGraphics
4087
4088         Reviewed by Maciej.
4089
4090         * WebKitGraphics.cpp:
4091         (makeFont):
4092
4093 2007-08-10  Ada Chan  <adachan@apple.com>
4094
4095         Reviewed by Adam and Darin.
4096         
4097         <rdar://problem/5403095> Crash in WebViewWndProc after closing a window
4098         We are seeing another case where WM_SETFOCUS is sent after WM_DESTROY has been handled in WebView.
4099         Bail early in the wndProc if WebView is set to be destroyed.
4100
4101         * WebView.cpp:
4102         (WebViewWndProc):
4103
4104 2007-08-02  Ada Chan  <adachan@apple.com>
4105
4106         Reviewed by Steve.
4107         
4108         <rdar://problem/5079175> Printing header and footer
4109
4110         * Interfaces/IWebUIDelegate.idl: added methods for header/footer drawing.
4111         * WebFrame.cpp:
4112         (WebFrame::headerAndFooterHeights): ask client for the header and 
4113         footer heights via IWebUIDelegate2 methods.
4114         (WebFrame::computePageRects): pass in header and footer heights when
4115         calculating page rect heights.
4116         (WebFrame::spoolPages): ask client to draw header and footer via
4117         IWebUIDelegate2 methods.
4118         * WebFrame.h:
4119         * WebKitGraphics.cpp:
4120         (DrawTextAtPoint): the code assumes color has 4 components - might as well
4121         assert it.
4122
4123 2007-08-01  Steve Falkenburg  <sfalken@apple.com>
4124
4125         Build mod: Fix sln to match configs in vcproj.
4126         
4127         Reviewed by Adam.
4128
4129         * WebKit.vcproj/WebKit.make:
4130         * WebKit.vcproj/WebKit.submit.sln:
4131
4132 2007-07-27  Justin Garcia  <justin.garcia@apple.com>
4133
4134         Reviewed by Tristan.
4135         
4136         <rdar://problem/5098931> Attachments are lost when they are moved into a ToDo after a delete
4137
4138         * WebEditorClient.cpp:
4139         (WebEditorClient::shouldMoveRangeAfterDelete): Method stub.
4140         * WebEditorClient.h:
4141
4142 2007-07-27  Anders Carlsson  <andersca@apple.com>
4143
4144         Reviewed by Adam.
4145
4146         Add FIXME comment.
4147         
4148         * Interfaces/DOMHTML.idl:
4149
4150 2007-07-27  Ada Chan  <adachan@apple.com>
4151
4152         Reviewed by Adam.
4153         
4154         Added methods to track user edited text fields now that 
4155         <rdar://problem/5359921> has been fixed.
4156
4157         * DOMHTMLClasses.cpp:
4158         (DOMHTMLInputElement::QueryInterface):
4159         (DOMHTMLInputElement::isUserEdited):
4160         (DOMHTMLTextAreaElement::QueryInterface):
4161         (DOMHTMLTextAreaElement::isUserEdited):
4162         * DOMHTMLClasses.h:
4163         * Interfaces/DOMPrivate.idl:
4164
4165 2007-07-27  Adam Roben  <aroben@apple.com>
4166
4167         Fix Bug 14773: REGRESSION (r24630): ASSERT_NOT_REACHED in DOMHTMLInputElement::name on Windows
4168         http://bugs.webkit.org/show_bug.cgi?id=14773
4169
4170         Reviewed by Steve.
4171
4172         * Interfaces/DOMHTML.idl: Change IDOMHTMLInputElement back to
4173         inheriting from IDOMElement. Safari 3 Beta uses this interface, so we
4174         can't change its vtable.
4175
4176 2007-07-25  Ada Chan  <adachan@apple.com>
4177
4178         Reviewed by Adam and Steve.
4179         
4180         Implemented some DOM methods and other fixes for <rdar://problem/5311601>.
4181         
4182         * DOMCoreClasses.cpp:
4183         (DOMNode::ownerDocument): implemented
4184         (DOMDocument::getComputedStyle): get the DOMElement via QueryInterface
4185         (DOMElement::QueryInterface):
4186         * DOMHTMLClasses.cpp:
4187         (DOMHTMLDocument::body): fixed leak
4188         (DOMHTMLFormElement::action): implemented
4189         (DOMHTMLFormElement::method): ditto
4190         (DOMHTMLInputElement::form): ditto
4191         (DOMHTMLTextAreaElement::form): ditto
4192         * Interfaces/DOMHTML.idl: IDOMHTMLInputElement should inherit from IDOMHTMLElement