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