be69f91b7824ec64b2d085388ec37f8fa0d4a5f6
[WebKit-https.git] / WebKit / win / ChangeLog
1 2007-07-24  Steve Falkenburg  <sfalken@apple.com>
2
3         Removed touch of WebKit.rc to prevent rebuilds of the rc file.
4         The autoversion info can get slightly out of date now, but this isn't a huge problem relative to the rebuilds.
5         
6         Rubber-stamped by Adam.
7
8         * WebKit.vcproj/WebKit.vcproj:
9
10 2007-07-23  Steve Falkenburg  <sfalken@apple.com>
11
12         Fixes to versioning script.
13         
14         Reviewed by Ada.
15
16         * WebKit.vcproj/auto-version.sh:
17
18 2007-07-23  Adam Roben  <aroben@apple.com>
19
20         Implement IWebHistoryItem::[set]AlternateTitle
21
22         The argument types were reversed for these two methods, so I fixed that as
23         well.
24
25         Reviewed by Geoff and Oliver.
26
27         * Interfaces/IWebHistoryItem.idl:
28         * WebHistoryItem.cpp:
29         (WebHistoryItem::setAlternateTitle): Implemented.
30         (WebHistoryItem::alternateTitle): Implemented.
31         * WebHistoryItem.h:
32
33 2007-07-23  Ada Chan  <adachan@apple.com>
34
35         Reviewed by Steve.
36         
37         Added a new text drawing method that allows caller to override the font smoothing level.
38
39         * WebKit.vcproj/WebKit.def:
40         * WebKit.vcproj/WebKit_debug.def:
41         * WebKitGraphics.cpp:
42         (WebDrawText):
43         * WebKitGraphics.h:
44
45 2007-07-22  Adam Roben  <aroben@apple.com>
46
47         Implement IDOMElement::setAttribute
48
49         This method was mistakenly called "setResult" in DOMCore.idl, so I
50         fixed that as well.
51
52         Needed for <rdar://problem/5314906>.
53
54         Reviewed by Ada.
55
56         * DOMCoreClasses.cpp:
57         (DOMElement::setAttribute): Implemented/renamed.
58         * DOMCoreClasses.h: Renamed setResult => setAttribute.
59         * DOMHTMLClasses.h: Ditto.
60         * Interfaces/DOMCore.idl: Ditto.
61
62 2007-07-21  Ada Chan  <adachan@apple.com>
63
64         Reviewed by Adam.
65         
66         Fix bug 14706: http://bugs.webkit.org/show_bug.cgi?id=14706
67         Need to set the last visited time before calling WebHistory::addItem().
68
69         * WebHistory.cpp:
70         (WebHistory::addItemForURL):
71
72 2007-07-20  Justin Garcia  <justin.garcia@apple.com>
73
74         Reviewed by Darin.
75         
76         <rdar://problem/5109817> Ctrl-click on word in non-editable text doesn't select it
77
78         * WebEditorClient.cpp: Removed the now unused selectWordBeforeMenuEvent().
79         * WebEditorClient.h:
80
81 2007-07-20  Ada Chan  <adachan@apple.com>
82
83         Reviewed by Steve.
84         
85         <rdar://problem/5350832> History item's visitedCount wasn't updated correctly
86
87         The call to setLastVisitedTimeInterval() in WebHistory::addItemForURL() does not
88         really increment the visitedCount of the HistoryItem - because we only increment the count
89         if the last visited time is different.  We should initialize the HistoryItem with
90         lastVisited time = 0 so when we call setLastVisitedTimeInterval() later, it'll update
91         the last visited time AND the visitedCount.
92         
93         * WebHistory.cpp:
94         (WebHistory::addItemForURL):
95
96 2007-07-20  Oliver Hunt  <oliver@apple.com>
97
98         Reviewed by Maciej.
99
100         <rdar://problem/5349668> WebKit/Win needs to send same key events during IME composition as it does on mac
101
102         Removed guards against sending key events during composition, and added a flag
103         to indicate a key event is IME related.  This is needed to prevent the first 
104         keydown from firing a keypress event, and makes WebEditorClient::handleInputMethodKeypress
105         somewhat cleaner.
106
107         * WebEditorClient.cpp:
108         (WebEditorClient::handleInputMethodKeypress):
109         * WebView.cpp:
110         (WebView::keyUp):
111         (WebView::keyDown):
112         * WebView.h:
113         (WebView::inIMEKeyDown):
114
115 2007-07-19  Maciej Stachowiak  <mjs@apple.com>
116
117         Reviewed by Adam.
118         
119         - WebKit part of fix for <rdar://problem/5262230> Crash while loading a popup in addictinggames.com
120         
121         Made closeWindowSoon fire on a timer instead of happening synchronously.
122
123         * WebChromeClient.cpp:
124         (WebChromeClient::closeWindowSoon): Actually close the window on a timer, not immediately.
125         * WebKit.vcproj/WebKit.vcproj:
126         * WebView.cpp:
127         (WebView::WebView):
128         (WebView::closeWindowSoon):
129         (WebView::closeWindowTimerFired):
130         * WebView.h:
131
132 2007-07-18  Timothy Hatcher  <timothy@apple.com>
133
134         Reviewed by Adam.
135
136         Make the Page with the now required InspectorClient.
137
138         * WebView.cpp:
139         (WebView::initWithFrame):
140
141 2007-07-18  Sam Weinig  <sam@webkit.org>
142
143         Build fix.
144
145         * WebFrame.cpp:
146         (WebFrame::dispatchDecidePolicyForMIMEType):
147         (WebFrame::objectContentType):
148         * WebView.cpp:
149         (WebView::canShowMIMEType):
150
151 2007-07-17  Brady Eidson <beidson@apple.com>
152
153         Blind Windows build fix from r24395
154
155         * WebView.cpp:
156         (WebView::initWithFrame): BSTR, not BString
157
158 2007-07-17  Brady Eidson  <beidson@apple.com>
159
160         Reviewed by Steve
161         
162         <rdar://problem/4516185> - FTP Directory Listings
163
164         * Interfaces/IWebUIDelegate.idl: Add IWebUIDelegate2 method for getting the path to the template
165         
166         * WebView.cpp:
167           (WebView::initWithFrame): Set the preference for the template path in WebCore when the first
168           WebView is initialized
169
170 2007-07-17  Ada Chan  <adachan@apple.com>
171
172         Rubbet-stamped by Adam.
173         
174         Fixed build.
175
176         * Interfaces/IWebFramePrivate.idl:
177         * WebContextMenuClient.cpp:
178         (fixMenuReceivedFromOldSafari):
179         * WebFrame.cpp:
180         (WebFrame::loadURLIntoChild):
181         (WebFrame::download):
182         * WebFrame.h:
183
184 2007-07-17  Adam Roben  <aroben@apple.com>
185
186         Fix Bug 14324: Cannot remove/customize the "Inspect Element" contextual menu item
187         http://bugs.webkit.org/show_bug.cgi?id=14324
188
189         If we detect that we're running against the Safari 3 Beta, we add back
190         the Inspect Element menu item after passing it off to the delegate
191         because Safari's UI delegate will remove it.
192
193         Reviewed by Tim.
194
195         * WebContextMenuClient.cpp:
196         (isPreInspectElementTagSafari): Added.
197         (fixMenuReceivedFromOldSafari): Added.
198         (WebContextMenuClient::getCustomMenuFromDefaultItems): Call
199         fixMenuReceivedFromOldSafari before returning the new menu.
200
201 2007-07-17  Adam Roben  <aroben@apple.com>
202
203         Remove WebContextMenuClient::shouldIncludeInspectElementItem
204
205         Reviewed by Tim.
206
207         * WebContextMenuClient.cpp:
208         * WebContextMenuClient.h:
209
210 2007-07-17  Adam Roben  <aroben@apple.com>
211
212         Initialize Settings::developerExtrasEnabled
213
214         Reviewed by Tim.
215
216         * WebView.cpp:
217         (WebView::updateWebCoreSettingsFromPreferences):
218
219 2007-07-17  Geoffrey Garen  <ggaren@apple.com>
220
221         Build fix. 
222
223         * WebContextMenuClient.cpp:
224         (WebContextMenuClient::searchWithGoogle): Pass false for lockHistory 
225         like we do elsewhere.
226
227 2007-07-17  Oliver Hunt  <oliver@apple.com>
228
229         Reviewed by Adam.
230
231         Fix for <rdar://problem/5339416> Candidate window does not
232                 appear in the correct location for japanese IME
233
234         * WebView.cpp:
235         (WebView::prepareCandidateWindow):
236           We now use an exclusion zone so that the composition window never 
237           overlaps the composition string
238         (WebView::onIMERequestCharPosition):
239           Correctly handle character offsets marked regions
240
241 2007-07-16  Oliver Hunt  <oliver@apple.com>
242
243         Reviewed by Maciej.
244
245         Fix for <rdar://problem/5334818> Support IME reconversion in windows
246
247         Also includes a small amount of IME refactoring.
248
249         * WebView.cpp:
250         (WebView::onIMERequestCharPosition):
251         (WebView::onIMERequestReconvertString):
252         (WebView::onIMERequest):
253         * WebView.h:
254
255 2007-07-16  Brady Eidson  <beidson@apple.com>
256
257         Reviewed by Adam
258
259         Begin the arduous task of localizing FTP directory listings while removing a global initializer!
260
261         * English.lproj/Localizable.strings:
262         * WebCoreLocalizedStrings.cpp:
263         (WebCore::unknownFileSizeText):
264
265 2007-07-16  Oliver Hunt  <oliver@apple.com>
266
267         Reviewed by Maciej.
268
269         Fix for <rdar://problem/5334826> Chinese IME composition window does not appear in the correct location
270
271         Respect IME requests for character position.
272
273         * WebView.cpp:
274         (WebView::onIMERequestCharPosition):
275         (WebView::onIMERequest):
276         * WebView.h:
277
278 2007-07-16  Adam Roben  <aroben@apple.com>
279
280         WebKit/win part of <rdar://problem/5336005> Calling window.print() on a subframe prints whole page, should only print that subframe
281
282         Reviewed by Darin.
283
284         * Interfaces/IWebUIDelegate.idl: Rename print to printFrame to closer
285         match the Mac method, and copy more of the Mac API comments.
286         * WebChromeClient.cpp:
287         (WebChromeClient::print): Call printFrame instead of print.
288
289 2007-07-16  Adam Roben  <aroben@apple.com>
290
291         Updated WebChromeClient for ChromeClient changes.
292
293         Reviewed by Darin.
294
295         * WebChromeClient.cpp:
296         (WebChromeClient::print): Added a Frame* parameter.
297         * WebChromeClient.h: Ditto.
298
299 2007-07-16  Oliver Hunt  <oliver@apple.com>
300
301         Reviewed by Steve.
302
303         Fix for http://bugs.webkit.org/show_bug.cgi?id=14630
304
305         Remove bogus assertion
306
307         * WebView.cpp:
308         (WebView::getIMMContext):
309
310 2007-07-14  Brady Eidson  <beidson@apple.com>
311
312         Reviewed by Sam
313         
314         Set the pref to override the policy delegate for FTP directory listings on Windows
315
316         * WebView.cpp:
317         (WebView::updateWebCoreSettingsFromPreferences):
318
319 2007-07-13  Oliver Hunt  <oliver@apple.com>
320
321         Reviewed by Darin and Alexey.
322
323         Fix for <rdar://problem/5231528> Inline input of International text (IME)
324                 http://bugs.webkit.org/show_bug.cgi?id=14331
325
326         This patch adds IME support to WebKit/win, it currently does not support
327         reconversion (<rdar://problem/5334818>) and has issues with the chinese
328         IMEs (<rdar://problem/5334826>)
329
330         * WebEditorClient.cpp:
331         (WebEditorClient::respondToChangedSelection):
332         (WebEditorClient::handleInputMethodKeypress):
333           Prevent the initial keydown for an IME from triggering a keypressed event
334         * WebView.cpp:
335         (WebView::WebView):
336         (WebView::keyUp):
337         (WebView::keyDown):
338         (WebViewWndProc):
339         (IMMDict::dict):
340         (IMMDict::IMMDict):
341            Dynamic loader for IME libraries
342
343         (WebView::getIMMContext):
344         (WebView::releaseIMMContext):
345         (WebView::prepareCandidateWindow):
346         (selectionInsideMarkedText):
347         (setSelectionToEndOfRange):
348         (WebView::resetIME):
349         (WebView::updateSelectionForIME):
350         (WebView::selectionChanged):
351         (getCompositionString):
352         (compositionToUnderlines):
353            Helper functions
354
355         (WebView::onIMEStartComposition):
356         (WebView::onIMEComposition):
357         (WebView::onIMEEndComposition):
358         (WebView::onIMEChar):
359         (WebView::onIMENotify):
360         (WebView::onIMERequest):
361         (WebView::onIMESelect):
362         (WebView::onIMESetContext):
363            IME event handling, so far most of these are not implemented, but the bulk of functionality 
364            is performed the the composition event handlers
365         * WebView.h:
366
367 2007-07-12  Alice Liu  <alice.liu@apple.com>
368
369         Reviewed by Maciej and Steve.
370
371         fixed <rdar://4982432> window.print() needs to be implemented
372
373         * Interfaces/IWebUIDelegate.idl:
374         * WebChromeClient.cpp:
375         (WebChromeClient::print):
376         * WebChromeClient.h:
377
378 2007-07-11  Steve Falkenburg  <sfalken@apple.com>
379
380         Static analysis build fix.
381         
382         Only specify /analyze (PREfast) if it is available.
383         Prevents entire project from rebuilding each time.        
384
385         Reviewed by Hyatt.
386
387         * WebKit.vcproj/WebKit.vcproj:
388
389 2007-07-10  Ada Chan  <adachan@apple.com>
390         
391         Fixed build.
392
393         * WebView.cpp:
394
395 2007-07-09  Alice Liu  <alice.liu@apple.com>
396
397         Reviewed by Adam Roben.
398         
399         Adding DOM Paste Allowed preference, setters and getters
400         for the purpose of layout tests.
401
402         * Interfaces/IWebPreferences.idl:
403         * WebPreferenceKeysPrivate.h:
404         * WebPreferences.cpp:
405         (WebPreferences::isDOMPasteAllowed):
406         (WebPreferences::setDOMPasteAllowed):
407         * WebPreferences.h:
408         * WebView.cpp:
409         (WebView::updateWebCoreSettingsFromPreferences):
410
411 2007-07-09  Anders Carlsson  <andersca@apple.com>
412
413         Build fix.
414
415         * WebView.cpp:
416         (WebView::stringByEvaluatingJavaScriptFromString):
417
418 2007-07-05  Adam Roben  <aroben@apple.com>
419
420         Fix a leak in WebView::setToolTip
421
422         Reviewed by Beth.
423
424         * WebView.cpp:
425         (WebView::setToolTip):
426
427 2007-07-05  Adam Roben  <aroben@apple.com>
428
429         Fix Bug 14143: Tooltips not displayed on Windows
430         http://bugs.webkit.org/show_bug.cgi?id=14143
431         <rdar://problem/4719799>
432
433         Reviewed by Oliver.
434
435         * WebChromeClient.cpp:
436         (WebChromeClient::setToolTip): Call up to WebView.
437         * WebView.cpp:
438         (WebView::WebView): Initialize m_toolTipHwnd member.
439         (WebView::initWithFrame): Set up the tool tip window.
440         (initCommonControls): Added.
441         (WebView::initializeToolTipWindow): Added.
442         (WebView::setToolTip): Set the tool tip text and enable/disable the
443         tool tip.
444         * WebView.h: Added/updated declarations.
445
446 2007-07-04  Adam Roben  <aroben@apple.com>
447
448         Added a stub for WebChromeClient::setToolTip
449
450         Reviewed by Sam.
451
452         * WebChromeClient.cpp:
453         * WebChromeClient.h:
454
455 2007-07-04  Adam Roben  <aroben@apple.com>
456
457         Initialize Settings::showsURLsInToolTips
458
459         Reviewed by Sam.
460
461         * WebView.cpp:
462         (WebView::updateWebCoreSettingsFromPreferences):
463
464 2007-07-04  Adam Roben  <aroben@apple.com>
465
466         Removed call to mouseDidMoveOverElement now that WebCore handles it
467
468         Reviewed by Sam.
469
470         * WebView.cpp:
471         (WebView::handleMouseEvent):
472
473 2007-07-04  Adam Roben  <aroben@apple.com>
474
475         Add WebChromeClient::mouseDidMoveOverElement
476
477         This is not called yet.
478
479         Reviewed by Sam.
480
481         * WebChromeClient.cpp:
482         (WebChromeClient::mouseDidMoveOverElement):
483         * WebChromeClient.h:
484
485 2007-07-03  Adam Roben  <aroben@apple.com>
486
487         Merge the Windows and Mac localized strings and exceptions files
488
489         Reviewed by Darin and Anders.
490
491         * English.lproj/Localizable.strings: Added Mac strings.
492         * English.lproj/StringsNotToBeLocalized.txt: Removed.
493
494 2007-06-27  Steve Falkenburg  <sfalken@apple.com>
495
496         Turn on static code analysis.
497
498         Reviewed by Oliver.
499         
500         Affects only folks that have Visual Studio Team Suite installed,
501         or who have replaced their compiler with the version shipping in the
502         Vista SDK.
503
504         * CodeAnalysisConfig.h: Added.
505         * WebKit.vcproj/WebKit.vcproj:
506         * WebLocalizableStrings.cpp:
507         (createWebKitBundle):
508
509 2007-06-27  Steve Falkenburg  <sfalken@apple.com>
510
511         Prefast: Remove variable redefinitions in inner scopes.
512         
513         Reviewed by Ada.
514
515         * WebDownload.cpp:
516         (WebDownload::didFinish):
517         * WebNotificationCenter.cpp:
518         (WebNotificationCenter::postNotificationInternal):
519         (WebNotificationCenter::removeObserver):
520
521 2007-06-27  Steve Falkenburg  <sfaken@apple.com>
522
523         Remove SEH block from around history plist read, since the underlying bug has been fixed.
524         
525         Reviewed by Darin.
526
527         * WebHistory.cpp:
528         (createHistoryListFromStream):
529
530 2007-06-27  Steve Falkenburg  <sfalken@apple.com>
531
532         Prefast: Fix misplaced parenthesis.
533         
534         Reviewed by Darin.
535
536         * WebView.cpp:
537         (core):
538
539 2007-06-27  Steve Falkenburg  <sfalken@apple.com>
540
541         Prefast: Add null check prior to writing into allocated BSTR.
542         
543         Reviewed by Darin.
544
545         * MarshallingHelpers.cpp:
546         (MarshallingHelpers::CFStringRefToBSTR):
547
548 2007-06-27  Steve Falkenburg  <sfalken@apple.com>
549
550         Prefast: Add error handling for SysAllocStringLen where the string length is determined by website content.
551
552         Reviewed by Sam, Darin.
553                 
554         Allocation failure will result in a null dereference in this case,
555         so it isn't exploitable.
556
557         * DefaultDownloadDelegate.cpp:
558         (DefaultDownloadDelegate::decideDestinationWithSuggestedFilename):
559
560 2007-06-20  Adam Roben  <aroben@apple.com>
561
562         Land the new Inspector.
563
564         Co-written with Tim Hatcher.
565
566         Reviewed by Anders, Adele, Hyatt, and Sam.
567
568         Implement the InspectorClient interface.
569
570         * WebInspectorClient.cpp: Added.
571         (WebInspectorClient::WebInspectorClient):
572         (WebInspectorClient::~WebInspectorClient):
573         (WebInspectorClient::inspectorDestroyed):
574         (WebInspectorClient::createPage):
575         (WebInspectorClient::showWindow):
576         (WebInspectorClient::closeWindow):
577         (WebInspectorClient::windowVisible):
578         (WebInspectorClient::attachWindow):
579         (WebInspectorClient::detachWindow):
580         (WebInspectorClient::highlight):
581         (WebInspectorClient::hideHighlight):
582         (WebInspectorClient::inspectedURLChanged):
583         (WebInspectorClient::updateWindowTitle):
584         (WebInspectorClient::onSize):
585         (WebInspectorClient::onClose):
586         (WebInspectorClient::onWebViewWindowPosChanging):
587         (WebInspectorWndProc):
588         (SubclassedWebViewWndProc):
589         (registerWindowClass):
590         * WebInspectorClient.h: Added.
591
592         Add an easier-to-see highlight.
593
594         * WebNodeHighlight.cpp: Added.
595         (WebNodeHighlight::WebNodeHighlight):
596         (WebNodeHighlight::~WebNodeHighlight):
597         (WebNodeHighlight::highlight):
598         (WebNodeHighlight::hide):
599         (WebNodeHighlight::visible):
600         (WebNodeHighlight::updateWindow):
601         (WebNodeHighlight::removeSubclass):
602         (registerOverlayClass):
603         (OverlayWndProc):
604         (SubclassedWndProc):
605         * WebNodeHighlight.h: Added.
606
607         WebView changes needed for the new Inspector.
608
609         * WebView.cpp: Removed old inspectElement method now that this is
610         handled by WebCore.
611         (WebView::WebView):
612         (WebView::close):
613         (WebView::performContextMenuAction): Removed handling of the Inspect
614         Element context menu item.
615         (WebView::initWithFrame): Give each Page an InspectorClient to enable
616         the Inspector.
617         (WebView::setProhibitsMainFrameScrolling): Added.
618         * WebView.h:
619
620         Updates needed for WebCore changes.
621
622         * Interfaces/IWebUIDelegate.idl:
623         * WebContextMenuClient.cpp:
624         (WebContextMenuClient::getCustomMenuFromDefaultItems):
625         * WebContextMenuClient.h:
626         * WebCoreLocalizedStrings.cpp:
627
628         Remove old Inspector code.
629
630         * WebFrame.cpp:
631         * WebFrame.h:
632         * WebInspector/WebInspector.cpp: Removed.
633         * WebInspector/WebInspector.h: Removed.
634         * WebInspector/webInspector/Images/button.png: Removed.
635         * WebInspector/webInspector/Images/buttonDivider.png: Removed.
636         * WebInspector/webInspector/Images/buttonPressed.png: Removed.
637         * WebInspector/webInspector/Images/close.png: Removed.
638         * WebInspector/webInspector/Images/closePressed.png: Removed.
639         * WebInspector/webInspector/Images/downTriangle.png: Removed.
640         * WebInspector/webInspector/Images/menu.png: Removed.
641         * WebInspector/webInspector/Images/menuPressed.png: Removed.
642         * WebInspector/webInspector/Images/popup.png: Removed.
643         * WebInspector/webInspector/Images/popupPressed.png: Removed.
644         * WebInspector/webInspector/Images/resize.png: Removed.
645         * WebInspector/webInspector/Images/rightTriangle.png: Removed.
646         * WebInspector/webInspector/Images/scrollThumbBottom.png: Removed.
647         * WebInspector/webInspector/Images/scrollThumbMiddle.png: Removed.
648         * WebInspector/webInspector/Images/scrollTrackMiddle.png: Removed.
649         * WebInspector/webInspector/Images/upTriangle.png: Removed.
650         * WebInspector/webInspector/inspector.css: Removed.
651         * WebInspector/webInspector/inspector.html: Removed.
652         * WebInspector/webInspector/inspector.js: Removed.
653         * WebInspector/webInspector/scrollarea.js: Removed.
654         * WebInspector/webInspector/scrollbar.js: Removed.
655         * WebInspector/webInspector/treeoutline.js: Removed.
656         * WebInspector/webInspector/utilities.js: Removed.
657
658         Build-fu:
659
660         * WebKit.vcproj/WebKit.vcproj:
661
662 2007-06-19  Dave Hyatt  <hyatt@apple.com>
663
664         Fix for <rdar://problem/5022197>, backspace and ctrl+left arrow should go back.  Shift+backspace
665         and ctrl+right arrow should go forward.  Add support for these keybindings to Windows.
666        
667         Reviewed by ada
668
669         * WebView.cpp:
670         (WebView::keyDown):
671
672 2007-06-18  Dave Hyatt  <hyatt@apple.com>
673
674         Let through more newline+modifier key combos in order to support Alt+Enter and Ctrl+Enter in the
675         SafariWin URL bar.
676        
677         Reviewed by mccullough
678
679         * WebView.cpp:
680
681 2007-06-18  Dave Hyatt  <hyatt@apple.com>
682
683         Add support for horizontal mouse wheeling to Windows.  Shift+wheel is supported for horizontal
684         wheeling just like on OS X.  In addition, the WM_MOUSEHWHEEL event is now processed correctly so that
685         input devices like tilt wheels will now work.
686        
687         Reviewed by aroben
688
689         * WebView.cpp:
690         (WebView::mouseWheel):
691         (WebViewWndProc):
692         * WebView.h:
693
694 2007-06-17  Dave Hyatt  <hyatt@apple.com>
695
696         Add support for Ctrl+Mouse Wheel to increase/decrease text zoom (Win32 only).
697        
698         Reviewed by aroben
699
700         * WebView.cpp:
701         (WebView::mouseWheel):
702
703 2007-06-09  Steve Falkenburg  <sfalken@apple.com>
704
705         Reviewed by Adam.
706         
707         Workaround: <rdar://problem/5213266> schwab.com menu is ridiculously big.
708         
709         * WebView.cpp:
710         (WebView::userAgentForKURL): Add schwab to spoof list to fix gigantic menus.
711
712 2007-06-08  Ada Chan  <adachan@apple.com>
713
714         Reviewed by Hyatt, Adam, and Steve.
715
716         Fixed WebView::selectedText to get the selected text out of the focused frame or main frame.
717
718         * WebView.cpp:
719         (WebView::selectedText):
720
721 2007-06-08  Adam Roben  <aroben@apple.com>
722
723         Get rid of the Safari part of the query string used for Google searches.
724
725         Reviewed by Steve and Ada.
726
727         * WebContextMenuClient.cpp:
728         (WebContextMenuClient::searchWithGoogle):
729
730 2007-06-08  Kevin McCullough  <kmccullough@apple.com>
731
732         Reviewed by Kevin Decker, and Sam.
733
734         - Added and updated licenses.
735
736         * CFDictionaryPropertyBag.cpp:
737         * CFDictionaryPropertyBag.h:
738         * DOMCSSClasses.cpp:
739         * DOMCSSClasses.h:
740         * DOMEventsClasses.cpp:
741         * DOMEventsClasses.h:
742         * DOMHTMLClasses.cpp:
743         * DOMHTMLClasses.h:
744         * MarshallingHelpers.cpp:
745         * MarshallingHelpers.h:
746         * MemoryStream.cpp:
747         * MemoryStream.h:
748         * WebBackForwardList.cpp:
749         * WebBackForwardList.h:
750         * WebCache.cpp:
751         * WebCache.h:
752         * WebChromeClient.cpp:
753         * WebChromeClient.h:
754         * WebContextMenuClient.h:
755         * WebDataSource.h:
756         * WebEditorClient.cpp:
757         * WebEditorClient.h:
758         * WebElementPropertyBag.cpp:
759         * WebElementPropertyBag.h:
760         * WebHTMLRepresentation.h:
761         * WebHistory.cpp:
762         * WebHistory.h:
763         * WebIconDatabase.cpp:
764         * WebIconDatabase.h:
765         * WebKit.vcproj/auto-version.sh:
766         * WebKitClassFactory.h:
767         * WebKitDLL.h:
768         * WebLocalizableStrings.cpp:
769         * WebLocalizableStrings.h:
770         * WebMutableURLRequest.cpp:
771         * WebMutableURLRequest.h:
772         * WebNotification.cpp:
773         * WebNotification.h:
774         * WebNotificationCenter.cpp:
775         * WebNotificationCenter.h:
776         * WebPreferenceKeysPrivate.h:
777         * WebPreferences.cpp:
778         * WebPreferences.h:
779         * WebScriptObject.cpp:
780         * WebScriptObject.h:
781         * WebURLResponse.cpp:
782         * WebURLResponse.h:
783
784 2007-06-07  Sam Weinig  <sam@webkit.org>
785
786         Reviewed by Adam Roben.
787
788         Make the inspector compile again.
789
790         * WebInspector/WebInspector.cpp:
791         (setFocusedDOMNodeCallback):
792         (focusedDOMNodeCallback):
793         (setRootDOMNodeCallback):
794         (rootDOMNodeCallback):
795
796 2007-06-06  Steve Falkenburg  <sfalken@apple.com>
797
798         Reviewed by Adam.
799         
800         <rdar://problem/5255861> REGRESSION: Can't download Adobe Acrobat Reader and plug-in
801         <rdar://problem/5243655> Flash download page doesn't recognize Boomer
802         
803         Refine user agent spoofing code to only spoof Flash download as Firefox without spoofing all of adobe.com.
804         This fixes the Acrobat Reader download.
805
806         * WebView.cpp:
807         (WebView::userAgentForKURL):
808
809 2007-06-03  Steve Falkenburg  <sfalken@apple.com>
810
811         Reviewed by Adam.
812         
813         <rdar://problem/5246665> Drop down lists are not drawn on volvocars.us
814
815         * WebView.cpp:
816         (WebView::userAgentForKURL):
817
818 2007-06-01  Kevin McCullough  <kmccullough@apple.com>
819
820         Reviewed by Oliver.
821
822         - Uncommenting some functions that should not be commented out.  I needed them for the Drosera port.
823
824         * WebKit.vcproj/WebKit_debug.def:
825
826 2007-06-01  Steve Falkenburg  <sfalken@apple.com>
827
828         Reviewed by Kevin Decker.
829         
830         Remove unnecessary user agent spoofs, now that we have the final UA in place.
831         Added spoof to allow Flash downloads from adobe.com
832
833         * WebView.cpp:
834         (WebView::userAgentForKURL):
835
836 2007-05-30  Ada Chan  <adachan@apple.com>
837
838         Reviewed by Steve.
839
840         Implemented the mechanism to associate a WebPreferences instance with an identifier.
841
842         * WebIconDatabase.cpp:
843         (WebIconDatabase::init): fixed a missing Release on standardPrefs by using COMPtr.
844         * WebPreferences.cpp:
845         (WebPreferences::getInstanceForIdentifier): implemented
846         (WebPreferences::setInstance): implemented
847         (WebPreferences::removeReferenceForIdentifier): if the WebPreferences going to be
848         released has only one ref left, remove it from the s_webPreferencesInstances dictionary.
849         (WebPreferences::load): don't need to reread in the default preferences if we have done so.
850         (WebPreferences::initWithIdentifier): update the m_identifier data member with the
851         passed in identifier string, and store the identifier to WebPreferences instance mapping in
852         s_webPreferencesInstances dictionary.
853         (WebPreferences::identifier): implemented
854         * WebPreferences.h:
855         * WebView.cpp:
856         (WebView::~WebView): removed the call to removeObserver for the WebPreferencesChangedNotification
857         since it's already done in close().
858         (WebView::close): the call to removeObserver now takes in the WebPreferences instance for the object -
859         this way the WebView is only notified when that particular WebPreferences instance changes.
860         (WebView::initWithFrame): the call to addObserver now takes in the WebPreferences instance for the object -
861         this way the WebView is only notified when that particular WebPreferences instance changes.
862         (WebView::setPreferences): implemented
863         (WebView::onNotify): used COMPtr to fix a missing release
864
865 2007-05-29  Steve Falkenburg  <sfalken@apple.com>
866
867         Reviewed by Darin.
868         
869         Removed setPageCacheSize/pageCacheSize from IWebBackForwardList.
870
871         * Interfaces/IWebBackForwardList.idl: Removed unnecessary methods.
872         * WebBackForwardList.cpp: Removed unnecessary methods.
873         * WebBackForwardList.h: Removed unnecessary methods.
874
875 2007-05-29  Sam Weinig  <sam@webkit.org>
876
877         Reviewed by Adam Roben.
878
879         - Removes platform/win/NotImplemented.h because we have consolidated
880           the notImplemented() for all platforms in platform/NotImplemented.h
881         - Fixes remaining uses of old macro to use the new notImplemented() one.
882
883         * WebChromeClient.cpp:
884         (WebChromeClient::createModalDialog):
885         (WebChromeClient::canRunModal):
886         (WebChromeClient::runModal):
887         (WebChromeClient::setScrollbarsVisible):
888         (WebChromeClient::scrollbarsVisible):
889         (WebChromeClient::setMenubarVisible):
890         (WebChromeClient::menubarVisible):
891         * WebContextMenuClient.cpp:
892         (WebContextMenuClient::lookUpInDictionary):
893         (WebContextMenuClient::speak):
894         (WebContextMenuClient::stopSpeaking):
895         * WebDownload.cpp:
896         (WebDownload::canResumeDownloadDecodedWithEncodingMIMEType):
897         (WebDownload::cancelAuthenticationChallenge):
898         (WebDownload::continueWithoutCredentialForAuthenticationChallenge):
899         (WebDownload::useCredential):
900         (WebDownload::didReceiveAuthenticationChallenge):
901         * WebEditorClient.cpp:
902         (WebEditorClient::spellCheckerDocumentTag):
903         (WebEditorClient::shouldBeginEditing):
904         (WebEditorClient::shouldEndEditing):
905         (WebEditorClient::didBeginEditing):
906         (WebEditorClient::respondToChangedContents):
907         (WebEditorClient::respondToChangedSelection):
908         (WebEditorClient::didEndEditing):
909         (WebEditorClient::didWriteSelectionToPasteboard):
910         (WebEditorClient::didSetSelectionTypesForPasteboard):
911         (WebEditorClient::shouldDeleteRange):
912         (WebEditorClient::shouldInsertNode):
913         (WebEditorClient::shouldInsertText):
914         (WebEditorClient::shouldApplyStyle):
915         (WebEditorClient::shouldChangeTypingStyle):
916         (WebEditorClient::webViewDidChangeTypingStyle):
917         (WebEditorClient::webViewDidChangeSelection):
918         (WebEditorClient::shouldShowDeleteInterface):
919         (WebEditorClient::shouldChangeSelectedRange):
920         * WebFrame.cpp:
921         (WebFrame::makeRepresentation):
922         (WebFrame::forceLayout):
923         (WebFrame::forceLayoutForNonHTML):
924         (WebFrame::setCopiesOnScroll):
925         (WebFrame::detachedFromParent1):
926         (WebFrame::detachedFromParent2):
927         (WebFrame::detachedFromParent3):
928         (WebFrame::detachedFromParent4):
929         (WebFrame::loadedFromCachedPage):
930         (WebFrame::dispatchDidLoadMainResource):
931         (WebFrame::revertToProvisionalState):
932         (WebFrame::clearUnarchivingState):
933         (WebFrame::setMainFrameDocumentReady):
934         (WebFrame::willChangeTitle):
935         (WebFrame::didChangeTitle):
936         (WebFrame::finalSetupForReplace):
937         (WebFrame::setDefersLoading):
938         (WebFrame::isArchiveLoadPending):
939         (WebFrame::cancelPendingArchiveLoad):
940         (WebFrame::clearArchivedResources):
941         (WebFrame::canShowMIMEType):
942         (WebFrame::representationExistsForURLScheme):
943         (WebFrame::generatedMIMETypeForURLScheme):
944         (WebFrame::restoreViewState):
945         (WebFrame::provisionalLoadStarted):
946         (WebFrame::shouldTreatURLAsSameAsCurrent):
947         (WebFrame::addHistoryItemForFragmentScroll):
948         (WebFrame::didFinishLoad):
949         (WebFrame::prepareForDataSourceReplacement):
950         (WebFrame::setDocumentViewFromCachedPage):
951         (WebFrame::shouldGoToHistoryItem):
952         (WebFrame::saveViewStateToItem):
953         (WebFrame::saveDocumentViewToCachedPage):
954         (WebFrame::canCachePage):
955         (WebFrame::setMainDocumentError):
956         (WebFrame::cannotShowURLError):
957         (WebFrame::cannotShowMIMETypeError):
958         (WebFrame::fileDoesNotExistError):
959         (WebFrame::willUseArchive):
960         (WebFrame::dispatchDidLoadResourceFromMemoryCache):
961         (WebFrame::startDownload):
962         (WebFrame::overrideMediaType):
963         (WebFrame::addInspector):
964         (WebFrame::removeInspector):
965
966 2007-05-25  Oliver Hunt  <oliver@apple.com>
967
968         Reviewed by Hyatt.
969         
970         Fix rdar://problem/5212399 <object> with PNG src rendered as image document (causes Acid2 to fail)
971
972         * WebFrame.cpp:
973         (WebFrame::objectContentType):
974
975 2007-05-25  Geoffrey Garen  <ggaren@apple.com>
976
977         Build fix -- forgot to commit a little bit in my last patch.
978
979 2007-05-25  Geoffrey Garen  <ggaren@apple.com>
980
981         Reviewed by Darin Adler, Adam Roben.
982
983         Fixed <rdar://problem/5055182> The page cache has no global cap.
984         
985         The main WebKit changes are:
986             1. Gutted IWebBackForwardList::setPageCacheSize and IWebBackForwardList:: 
987             pageCacheSize because they're deprecated on Mac now. I didn't remove
988             them, though, because doing so can cause COM badness.
989             
990             2. Added IWebPreferences::setUsesPageCache IWebPreferences:: 
991             usesPageCache because that's the new Mac API. I added them to the end
992             of IWebPreferences to avoid COM badness.
993             
994             3. Centralized calculation of object cache and page cache sizes inside
995             WebPreferences. 
996             
997             Changed our old behavior of reading a preference and applying a fudge 
998             factor with a new behavior of just using the preference directly. The 
999             old behavior was confusing and often inappropriate. (For example, if 
1000             you set a page cache size of 100, a 256MB machine would somewhat 
1001             arbitrarily reduce that number to 98.)
1002             
1003 2007-05-24  Geoffrey Garen  <ggaren@apple.com>
1004
1005         Reviewed by Darin Adler.
1006
1007         Fixed a bug with Settings where a number of different objects held bare 
1008         Settings* data members, even though the Page owns the Settings object and 
1009         deletes it upon destruction.
1010         
1011         Added NULL checks since the Page can be deleted before the frame/document.
1012
1013 2007-05-23  Steve Falkenburg  <sfalken@apple.com>
1014
1015         Added IWebFramePrivate::isDescendantOfFrame.
1016
1017         * Interfaces/IWebFramePrivate.idl:
1018         * WebFrame.cpp:
1019         (WebFrame::isDescendantOfFrame):
1020         * WebFrame.h:
1021
1022 2007-05-23  Steve Falkenburg  <sfalken@apple.com>
1023
1024         Build fix.  Fix continuous rebuilding of Interfaces by turning off Generate Type Library for every IDL except WebKit.idl.
1025
1026         * WebKit.vcproj/Interfaces.vcproj:
1027
1028 2007-05-22  Alice Liu  <alice.liu@apple.com>
1029
1030         Reviewed by Oliver.
1031         
1032         Enabling smartInsertDelete to resolve 
1033         <rdar://problem/5082891> editing/deleting/smart-delete-003.html (and 004) fail
1034         
1035         * Interfaces/IWebView.idl:
1036         * WebEditorClient.cpp:
1037         (WebEditorClient::smartInsertDeleteEnabled):
1038         * WebView.cpp:
1039         (WebView::WebView):
1040         (WebView::initWithFrame):
1041         (WebView::toggleSmartInsertDelete):
1042         (WebView::setSmartInsertDeleteEnabled):
1043         (WebView::smartInsertDeleteEnabled):
1044         * WebView.h:
1045
1046 2007-05-22  Justin Garcia  <justin.garcia@apple.com>
1047
1048         Reviewed by oliver
1049         
1050         Build fix.
1051
1052         * WebView.cpp:
1053         (WebView::clearFocusNode):
1054
1055 2007-05-22  Steve Falkenburg  <sfalken@apple.com>
1056
1057         Reviewed by Ada.
1058         
1059         Added 3 view-related methods to IWebFramePrivate.
1060
1061         * Interfaces/IWebFramePrivate.idl: Added 3 new methods
1062         * WebFrame.cpp:
1063         (WebFrame::hasScrollBars): Added.
1064         (WebFrame::contentBounds): Added.
1065         (WebFrame::frameBounds): Added.
1066         * WebFrame.h:
1067
1068 2007-05-21  Steve Falkenburg  <sfalken@apple.com>
1069
1070         Reviewed by Adam, Ada.
1071         
1072         Added IWebFramePrivate::size().
1073
1074         * Interfaces/IWebFramePrivate.idl: Added size.
1075         * WebFrame.cpp:
1076         (WebFrame::size): Added.
1077         * WebFrame.h: Added size.
1078
1079 2007-05-21  Ada Chan  <adachan@apple.com>
1080
1081         Reviewed by Steve.
1082
1083         Added IWebViewPrivate::loadBackForwardListFromOtherView().  It replicates the backforward
1084         list from another webview and loads that in the current webview.
1085
1086         * Interfaces/IWebViewPrivate.idl:
1087         * WebView.cpp:
1088         (WebView::loadBackForwardListFromOtherView):
1089         * WebView.h:
1090
1091 2007-05-18  Steve Falkenburg  <sfalken@apple.com>
1092
1093         Build-related fix: stamp version resource properly.
1094
1095         * WebKit.vcproj/WebKit.rc: Fix version resource
1096
1097 2007-05-18  Adam Roben  <aroben@apple.com>
1098
1099         Build fix after r21555.
1100
1101         * WebView.cpp:
1102
1103 2007-05-17  Ada Chan  <adachan@apple.com>
1104
1105         Reviewed by Steve.
1106         
1107         Implemented IWebHTTPURLResponse::localizedStringForStatusCode().
1108
1109         * English.lproj/Localizable.strings: new http status strings
1110         * Interfaces/WebKit.idl: added code to create WebURLResponse instances
1111         * WebKitClassFactory.cpp:
1112         (WebKitClassFactory::CreateInstance): ditto
1113         * WebKitDLL.cpp: ditto
1114         * WebURLResponse.cpp:
1115         (CFHTTPMessageCopyLocalizedShortDescriptionForStatusCode): return the description
1116         text for the given status code
1117         (WebURLResponse::createInstance): create a general instance of web url response.
1118         (WebURLResponse::localizedStringForStatusCode):
1119         * WebURLResponse.h:
1120
1121 2007-05-17  Ada Chan  <adachan@apple.com>
1122
1123         Reviewed by Steve.
1124         
1125         Changed the context menu title "Search in Google" to "Search with Google".
1126
1127         * English.lproj/Localizable.strings:
1128         * WebCoreLocalizedStrings.cpp:
1129         (WebCore::contextMenuItemTagSearchWeb):
1130
1131 2007-05-17  Anders Carlsson  <andersca@apple.com>
1132
1133         Fix build.
1134         
1135         * WebFrame.cpp:
1136         (WebFrame::loadURLIntoChild):
1137
1138 2007-05-15  Steve Falkenburg  <sfalken@apple.com>
1139
1140         Reviewed by Darin, Oliver.
1141         
1142         <rdar://problem/4967360> Need to detect damaged installs, alert the user to reinstall, and exit
1143
1144         * WebLocalizableStrings.cpp:
1145         (WebLocalizedString): Make failure to load a localized string slightly less fatal
1146
1147 2007-05-15  Steve Falkenburg  <sfalken@apple.com>
1148
1149         Reviewed by Darin.
1150         
1151         <rdar://problem/4956541> Need to implement preference for how much History is maintained
1152
1153         * WebHistory.cpp:
1154         (WebHistory::ageLimitDate): Remove extra +30 from history age in days.
1155
1156 2007-05-14  Anders Carlsson  <andersca@apple.com>
1157
1158         Reviewed by Darin.
1159
1160         Pass an empty property bag when constructing the WebError, the code in Safari relies on having a user info bag.
1161         
1162         * WebFrame.cpp:
1163         (WebFrame::createJavaAppletWidget):
1164
1165 2007-05-14  Anders Carlsson  <andersca@apple.com>
1166
1167         Reviewed by Antti.
1168
1169         Report an error to the resource load delegate if the Java plugin can't be loaded.
1170         
1171         * WebFrame.cpp:
1172         (WebFrame::createJavaAppletWidget):
1173
1174 2007-05-11  Steve Falkenburg  <sfalken@apple.com>
1175
1176         Reviewed by Darin, Ada.
1177
1178         WebKit DCOM compatibility.
1179         When a WebKit hosting app calls RunAsLocalServer, the class object for CLSID_WebDebugProgram
1180         is registered to allow creation across processes.  This is for future compatibility with
1181         Drosera.
1182
1183         Added new exported function: RunAsLocalServer.
1184         This exposes WebKit inside the running exe as a LocalServer32 (COM server), which
1185         will allow Drosera to connect to it via DCOM.
1186
1187         We use the DCOM Universal Marshaller from oleaut32.dll, which performs marshalling
1188         based on type libraries, so as part of this change, I've done some work on making our
1189         interfaces compatible with this marshaller.
1190         
1191         Updated for compatibility w/ COM automation, and fixed up our type library.        
1192         Added type library registration/unregistration code.
1193         Marked methods not compatible w/ automation/marshalling as [local].
1194         
1195         As a side-effect, with these changes, the .NET tlbimp tool can create a .NET interop
1196         assembly to theoretically allow WebKit to be invoked from .NET apps.  I haven't
1197         tried this.  It could end up being useful to drive API testing.
1198         
1199         To test, I wrote a small app that calls:
1200         ::CoCreateInstance(CLSID_IWebDebugProgram, 0, CLSCTX_LOCAL_SERVER, IID_IUnknown, (void**)&viewUnknown);
1201         Using this instantiated class, I'm able to iterate the exisitng webviews and retrieve their
1202         source, title, URL, etc.
1203         
1204         * DOMCoreClasses.cpp:
1205         (DOMElement::isEqual):
1206         * DOMCoreClasses.h:
1207         * DefaultDownloadDelegate.cpp:
1208         (DefaultDownloadDelegate::decideDestinationWithSuggestedFilename):
1209         * DefaultDownloadDelegate.h:
1210         * Interfaces/DOMCSS.idl:
1211         * Interfaces/DOMCore.idl:
1212         * Interfaces/DOMEvents.idl:
1213         * Interfaces/DOMExtensions.idl:
1214         * Interfaces/DOMHTML.idl:
1215         * Interfaces/DOMPrivate.idl:
1216         * Interfaces/DOMRange.idl:
1217         * Interfaces/DOMWindow.idl:
1218         * Interfaces/IWebArchive.idl:
1219         * Interfaces/IWebAttributedString.idl: Removed.
1220         * Interfaces/IWebBackForwardList.idl:
1221         * Interfaces/IWebBackForwardListPrivate.idl:
1222         * Interfaces/IWebCache.idl:
1223         * Interfaces/IWebDataSource.idl:
1224         * Interfaces/IWebDebugProgram.idl: Added.
1225         * Interfaces/IWebDocument.idl:
1226         * Interfaces/IWebDownload.idl:
1227         * Interfaces/IWebEditingDelegate.idl:
1228         * Interfaces/IWebError.idl:
1229         * Interfaces/IWebFormDelegate.idl:
1230         * Interfaces/IWebFrame.idl:
1231         * Interfaces/IWebFrameLoadDelegate.idl:
1232         * Interfaces/IWebFrameLoadDelegatePrivate.idl:
1233         * Interfaces/IWebFramePrivate.idl:
1234         * Interfaces/IWebFrameView.idl:
1235         * Interfaces/IWebHTMLRepresentation.idl:
1236         * Interfaces/IWebHTTPURLResponse.idl:
1237         * Interfaces/IWebHistory.idl:
1238         * Interfaces/IWebHistoryItem.idl:
1239         * Interfaces/IWebHistoryItemPrivate.idl:
1240         * Interfaces/IWebIconDatabase.idl:
1241         * Interfaces/IWebJavaScriptCollector.idl:
1242         * Interfaces/IWebKitStatistics.idl:
1243         * Interfaces/IWebMutableURLRequest.idl:
1244         * Interfaces/IWebNotification.idl:
1245         * Interfaces/IWebNotificationCenter.idl:
1246         * Interfaces/IWebNotificationObserver.idl:
1247         * Interfaces/IWebPolicyDelegate.idl:
1248         * Interfaces/IWebPreferences.idl:
1249         * Interfaces/IWebResource.idl:
1250         * Interfaces/IWebResourceLoadDelegate.idl:
1251         * Interfaces/IWebResourceLoadDelegatePrivate.idl:
1252         * Interfaces/IWebScriptObject.idl:
1253         * Interfaces/IWebScrollBarDelegatePrivate.idl:
1254         * Interfaces/IWebScrollBarPrivate.idl:
1255         * Interfaces/IWebUIDelegate.idl:
1256         * Interfaces/IWebUIDelegatePrivate.idl:
1257         * Interfaces/IWebURLAuthenticationChallenge.idl:
1258         * Interfaces/IWebURLRequest.idl:
1259         * Interfaces/IWebURLResponse.idl:
1260         * Interfaces/IWebUndoManager.idl:
1261         * Interfaces/IWebUndoTarget.idl:
1262         * Interfaces/IWebView.idl:
1263         * Interfaces/IWebViewPrivate.idl:
1264         * Interfaces/WebKit.idl:
1265         * WebContextMenuClient.cpp:
1266         (WebContextMenuClient::getCustomMenuFromDefaultItems):
1267         * WebDataSource.cpp:
1268         (WebDataSource::subresources):
1269         * WebDataSource.h:
1270         * WebDebugProgram.cpp: Added.
1271         (EnumViews::EnumViews):
1272         (EnumViews::QueryInterface):
1273         (EnumViews::AddRef):
1274         (EnumViews::Release):
1275         (EnumViews::Next):
1276         (EnumViews::Skip):
1277         (EnumViews::Reset):
1278         (EnumViews::Clone):
1279         (WebDebugProgram::WebDebugProgram):
1280         (WebDebugProgram::~WebDebugProgram):
1281         (WebDebugProgram::createInstance):
1282         (WebDebugProgram::QueryInterface):
1283         (WebDebugProgram::AddRef):
1284         (WebDebugProgram::Release):
1285         (WebDebugProgram::viewAdded):
1286         (WebDebugProgram::viewRemoved):
1287         (WebDebugProgram::attach):
1288         (WebDebugProgram::detach):
1289         (WebDebugProgram::statistics):
1290         (WebDebugProgram::webViews):
1291         * WebDebugProgram.h: Added.
1292         * WebDropSource.cpp:
1293         (generateMouseEvent):
1294         * WebError.cpp:
1295         (WebError::localizedRecoveryOptions):
1296         * WebError.h:
1297         * WebFrame.cpp:
1298         (EnumChildFrames::EnumChildFrames):
1299         (EnumChildFrames::QueryInterface):
1300         (EnumChildFrames::AddRef):
1301         (EnumChildFrames::Release):
1302         (EnumChildFrames::Next):
1303         (EnumChildFrames::Skip):
1304         (EnumChildFrames::Reset):
1305         (EnumChildFrames::Clone):
1306         (WebFrame::childFrames):
1307         (WebFrame::initWithWebFrameView):
1308         * WebFrame.h:
1309         * WebHistoryItem.cpp:
1310         (WebHistoryItem::icon):
1311         * WebHistoryItem.h:
1312         * WebIconDatabase.cpp:
1313         (WebIconDatabase::iconForURL):
1314         (WebIconDatabase::defaultIconWithSize):
1315         * WebIconDatabase.h:
1316         * WebInspector/WebInspector.cpp:
1317         (WebInspector::WebInspector):
1318         (WebInspector::show):
1319         (WebInspector::onDestroy):
1320         (WebInspector::onSize):
1321         * WebInspector/WebInspector.h:
1322         (WebInspector::didReceiveIcon):
1323         (WebInspector::webViewFirstResponder):
1324         (WebInspector::makeFirstResponder):
1325         (WebInspector::contextMenuItemsForElement):
1326         (WebInspector::trackCustomPopupMenu):
1327         (WebInspector::addCustomMenuDrawingData):
1328         (WebInspector::cleanUpCustomMenuDrawingData):
1329         * WebKit.vcproj/Interfaces.vcproj:
1330         * WebKit.vcproj/WebKit.def:
1331         * WebKit.vcproj/WebKit.vcproj:
1332         * WebKit.vcproj/WebKitGUID.vcproj:
1333         * WebKit.vcproj/WebKit_debug.def:
1334         * WebKitClassFactory.cpp:
1335         (WebKitClassFactory::CreateInstance):
1336         * WebKitDLL.cpp:
1337         (DllGetClassObject):
1338         (DllUnregisterServer):
1339         (DllRegisterServer):
1340         (RunAsLocalServer):
1341         * WebKitStatistics.cpp:
1342         * WebScrollBar.cpp:
1343         (WebScrollBar::init):
1344         (WebScrollBar::handleMouseEvent):
1345         * WebScrollBar.h:
1346         * WebView.cpp:
1347         (WebView::WebView):
1348         (WebView::~WebView):
1349         (WebView::handleContextMenuEvent):
1350         (WebView::onInitMenuPopup):
1351         (WebView::onUninitMenuPopup):
1352         (WebViewWndProc):
1353         (WebView::QueryInterface):
1354         (WebView::MIMETypesShownAsHTML):
1355         (WebView::setHostWindow):
1356         (WebView::hostWindow):
1357         (WebView::generateSelectionImage):
1358         (WebView::pasteboardTypesForSelection):
1359         (WebView::pasteboardTypesForElement):
1360         (WebView::mainFrameIcon):
1361         (WebView::canMakeTextStandardSize):
1362         (WebView::viewWindow):
1363         * WebView.h:
1364
1365 2007-05-11  Adele Peterson  <adele@apple.com>
1366
1367         Build fix.
1368
1369         * WebView.cpp: (WebView::selectionImageRect):
1370
1371 2007-05-10  Geoffrey Garen  <ggaren@apple.com>
1372
1373         Reviewed by Darin Adler.
1374         
1375         "IconDatabase::sharedIconDatabase()" => "iconDatabase()" for terseness.
1376
1377 2007-05-10  Maciej Stachowiak  <mjs@apple.com>
1378
1379         Reviewed by Oliver.
1380
1381         - WebKitWin part of fix for:
1382         <rdar://problem/5063277> blank screen after login to Citibank Online (accessing document before frame starts loading cancels load)
1383         <rdar://problem/5159541> REGRESSION (r20972): Wall Street Journal pages replaced by advertisements (13465)
1384
1385         The basic approach is to have Frames start out containing an empty document instead of absolutely nothing,
1386         so there is no need to initialize them on demand. Various side effects of that cause both of these bugs.
1387         
1388         However, this caused many regressions so I had to fix the fallout.
1389
1390         * WebFrame.cpp:
1391         (WebFrame::createFrame): init frame
1392         * WebView.cpp:
1393         (WebView::initWithFrame): init frame
1394         (WebView::stringByEvaluatingJavaScriptFromString): don't create empty document
1395
1396 2007-05-08  Steve Falkenburg  <sfalken@apple.com>
1397
1398         Reviewed by Darin, Oliver.
1399         
1400         Added UI_STRING versions of localized WebCore strings.
1401
1402         * English.lproj/Localizable.strings: Updated.
1403         * English.lproj/StringsNotToBeLocalized.txt: Updated.
1404         * WebCoreLocalizedStrings.cpp: Added.
1405         (WebCore::searchableIndexIntroduction):
1406         (WebCore::submitButtonDefaultLabel):
1407         (WebCore::inputElementAltText):
1408         (WebCore::resetButtonDefaultLabel):
1409         (WebCore::fileButtonChooseFileLabel):
1410         (WebCore::fileButtonNoFileSelectedLabel):
1411         (WebCore::contextMenuItemTagOpenLinkInNewWindow):
1412         (WebCore::contextMenuItemTagDownloadLinkToDisk):
1413         (WebCore::contextMenuItemTagCopyLinkToClipboard):
1414         (WebCore::contextMenuItemTagOpenImageInNewWindow):
1415         (WebCore::contextMenuItemTagDownloadImageToDisk):
1416         (WebCore::contextMenuItemTagCopyImageToClipboard):
1417         (WebCore::contextMenuItemTagOpenFrameInNewWindow):
1418         (WebCore::contextMenuItemTagCopy):
1419         (WebCore::contextMenuItemTagGoBack):
1420         (WebCore::contextMenuItemTagGoForward):
1421         (WebCore::contextMenuItemTagStop):
1422         (WebCore::contextMenuItemTagReload):
1423         (WebCore::contextMenuItemTagCut):
1424         (WebCore::contextMenuItemTagPaste):
1425         (WebCore::contextMenuItemTagNoGuessesFound):
1426         (WebCore::contextMenuItemTagIgnoreSpelling):
1427         (WebCore::contextMenuItemTagLearnSpelling):
1428         (WebCore::contextMenuItemTagSearchWeb):
1429         (WebCore::contextMenuItemTagLookUpInDictionary):
1430         (WebCore::contextMenuItemTagOpenLink):
1431         (WebCore::contextMenuItemTagIgnoreGrammar):
1432         (WebCore::contextMenuItemTagSpellingMenu):
1433         (WebCore::contextMenuItemTagCheckSpelling):
1434         (WebCore::contextMenuItemTagCheckSpellingWhileTyping):
1435         (WebCore::contextMenuItemTagCheckGrammarWithSpelling):
1436         (WebCore::contextMenuItemTagFontMenu):
1437         (WebCore::contextMenuItemTagBold):
1438         (WebCore::contextMenuItemTagItalic):
1439         (WebCore::contextMenuItemTagUnderline):
1440         (WebCore::contextMenuItemTagOutline):
1441         (WebCore::contextMenuItemTagWritingDirectionMenu):
1442         (WebCore::contextMenuItemTagDefaultDirection):
1443         (WebCore::contextMenuItemTagLeftToRight):
1444         (WebCore::contextMenuItemTagRightToLeft):
1445         (WebCore::contextMenuItemTagShowSpellingPanel):
1446         (WebCore::searchMenuNoRecentSearchesText):
1447         (WebCore::searchMenuRecentSearchesText):
1448         (WebCore::searchMenuClearRecentSearchesText):
1449         (WebCore::AXWebAreaText):
1450         (WebCore::AXLinkText):
1451         (WebCore::AXListMarkerText):
1452         (WebCore::AXImageMapText):
1453         (WebCore::AXHeadingText):
1454         * WebKit.vcproj/WebKit.vcproj: Added WebCoreLocalizedStrings.cpp, reorganized other files a bit.
1455
1456 2007-05-08  Steve Falkenburg  <sfalken@apple.com>
1457
1458         Reviewed by Ada.
1459         
1460         Update editing delegate
1461
1462         * Interfaces/IWebEditingDelegate.idl:
1463         * WebEditorClient.cpp:
1464         (WebEditorClient::updateSpellingUIWithGrammarString):
1465         * WebEditorClient.h:
1466
1467 2007-05-07  Steve Falkenburg  <sfalken@apple.com>
1468
1469         Reviewed by Darin.
1470
1471         Fix typo in prefs code.       
1472
1473         * WebPreferences.cpp:
1474         (WebPreferences::preferencesPath): Fix typo in error handling.
1475
1476 2007-05-04  Steve Falkenburg  <sfalken@apple.com>
1477
1478         Reviewed by Darin.
1479         
1480         Fix crash when using "check spelling while typing".
1481
1482         * WebView.cpp:
1483         (WebView::preflightSpellChecker): Set delegate static global for use in spell checker init.
1484
1485 2007-05-03  Steve Falkenburg  <sfalken@apple.com>
1486
1487         Reviewed by Ada, Oliver.
1488         
1489         Checkpoint:
1490         <rdar://problem/4602372> Spelling
1491         <rdar://problem/4769763> Spell checking engine support        
1492
1493         * Interfaces/IWebEditingDelegate.idl: Add userDescription parameter.
1494         * WebEditorClient.cpp:
1495         (WebEditorClient::updateSpellingUIWithGrammarString): Set user description for spelling errors.
1496         * WebEditorClient.h:
1497         * WebView.cpp:
1498         (WebView::replaceSelectionWithText): Implemented.
1499
1500 2007-05-01  Steve Falkenburg  <sfalken@apple.com>
1501
1502         Reviewed by Oliver.
1503         
1504         Fix usage errors in COM enumeration.
1505
1506         * WebEditorClient.cpp:
1507         (WebEditorClient::checkGrammarOfString): Call Next correctly.
1508         (WebEditorClient::getGuessesForWord): Call Next correctly.
1509
1510 2007-04-30  Alice Liu  <alice.liu@apple.com>
1511
1512         Reviewed by Adam.
1513
1514         Fixed <rdar://5126201> crash closing tab when the two following tabs are empty.
1515         Basically this fix involved one thing, which lead to another thing.  First, the crash
1516         was fixed by moving the call to webView->close from SearchableWebView::onDestroy to
1517         WebViewWndProc when WM_DESTROY message is processed.  We now want only WebKit handling
1518         the closure of a WebView, so all calls to WebView::close have been removed, save for
1519         the one call in WebViewWndProc.
1520
1521         * Interfaces/IWebView.idl:
1522         removed close() from public interface
1523         * WebInspector/WebInspector.cpp:
1524         (WebInspector::onDestroy):
1525         removed call to close()
1526         * WebView.cpp:
1527         (WebView::~WebView):
1528         move the deleting of m_page down a bit to avoid a crash 
1529         (WebView::close):
1530         changed from public API to just a public function
1531         (WebViewWndProc):
1532         webView->close() was moved here from SearchableWebView::onDestroy
1533         * WebView.h:
1534         changed close() to a public function not exposed in the WebKit interface
1535
1536 2007-04-24  Steve Falkenburg  <sfalken@apple.com>
1537
1538         Reviewed by Darin, Oliver.
1539         
1540         Checkpoint:
1541         <rdar://problem/4602372> Spelling
1542         <rdar://problem/4769763> Spell checking engine support
1543
1544         * WebEditorClient.cpp:
1545         (WebEditorClient::isContinuousSpellCheckingEnabled):
1546         (WebEditorClient::toggleContinuousSpellChecking):
1547         (WebEditorClient::isGrammarCheckingEnabled):
1548         (WebEditorClient::toggleGrammarChecking):
1549         (initViewSpecificSpelling):
1550         (WebEditorClient::spellCheckerDocumentTag):
1551         (WebEditorClient::ignoreWordInSpellDocument):
1552         (WebEditorClient::learnWord):
1553         (WebEditorClient::checkSpellingOfString):
1554         (WebEditorClient::checkGrammarOfString):
1555         (WebEditorClient::udpateSpellingUIWithGrammarString):
1556         (WebEditorClient::updateSpellingUIWithMisspelledWord):
1557         (WebEditorClient::showSpellingUI):
1558         (WebEditorClient::spellingUIIsShowing):
1559         (WebEditorClient::getGuessesForWord):
1560         * WebPreferences.h:
1561
1562 2007-04-20  Ada Chan  <adachan@apple.com>
1563
1564         Reviewed by Steve and Oliver.
1565         
1566         Implemented some DOM methods I need to support password input and textarea in 
1567         WebView-based edit fields in the app.
1568
1569         * DOMCSSClasses.cpp:
1570         (DOMCSSStyleDeclaration::setCssText): added implementation
1571         * DOMCoreClasses.cpp:
1572         (DOMDocument::createElement): ditto
1573         * DOMHTMLClasses.cpp:
1574         (DOMHTMLInputElement::setType): ditto
1575         (DOMHTMLTextAreaElement::value): ditto
1576         (DOMHTMLTextAreaElement::setValue): ditto
1577         (DOMHTMLTextAreaElement::select): ditto
1578         * Interfaces/IWebUIDelegatePrivate.idl: added a new method webViewGetDlgCode() that client
1579         can implement if it wants to handle keypresses themselves rather than letting the system 
1580         interpret certain keys as dialog box navigation keys.
1581         * WebKitGraphics.cpp:
1582         (DrawTextAtPoint): handle drawing text as password
1583         * WebKitGraphics.h:
1584         * WebView.cpp:
1585         Added Copy, Cut, and Paste to the keyEntries.
1586         (WebViewWndProc): added code to handle WM_GETDLGCODE.  Calls IWebUIDelegatePrivate::webViewGetDlgCode()
1587         if available to see if the client wants to handle it.
1588
1589 2007-04-18  Adam Roben  <aroben@apple.com>
1590
1591         Reviewed by Steve.
1592
1593         Make development builds use the same CLSIDs as archive builds, and get
1594         rid of the now-unused set of CLSIDs.
1595
1596         * Interfaces/WebKit.idl: Use the archive build CLSIDs if we're not
1597         doing a production build.
1598         * WebKit.vcproj/Interfaces.vcproj: Don't define __ARCHIVE_BUILD__
1599         because it's not used anymore.
1600
1601 2007-04-18  Adam Roben  <aroben@apple.com>
1602
1603         Reviewed by Steve.
1604
1605         Use different ProgIDs for production builds.
1606
1607         * ProgIDMacros.h: Added.
1608         * WebKit.vcproj/WebKit.vcproj: Defined the __BUILDBOT__ macro and added
1609         a new header which is copied in the post-build step.
1610         * WebKitDLL.cpp: Macro-ized the declaration of the registry keys to
1611         install.
1612
1613 2007-04-16  Adam Roben  <aroben@apple.com>
1614
1615         Rubberstamped by Steve.
1616
1617         * WebKit.vcproj/WebKit.sln: Removed the Debug_Internal configuration.
1618
1619 2007-04-16  Adam Roben  <aroben@apple.com>
1620
1621         Reviewed by Steve.
1622
1623         Removed the pre-link build step, and removed registration of WebKit.dll
1624         from the post-build step.
1625
1626         * WebKit.vcproj/WebKit.vcproj:
1627
1628 2007-04-16  Adam Roben  <aroben@apple.com>
1629
1630         * WebKit.vcproj/WebKit.sln: Added WTF to the solution.
1631
1632 2007-04-16  Steve Falkenburg  <sfalken@apple.com>
1633
1634         Reviewed by Adam.
1635         
1636         Visual Studio Express compatibility for WebKit build (except for DRT)
1637
1638         * WebDragClient.cpp: Removed unused header (atlsafe.h)
1639         * WebKit.vcproj/WebKit.rc: Removed afxres.h and related code
1640         * WebKit.vcproj/WebKit.sln: Don't use a sln folder - they aren't supported by express
1641         * WebKit.vcproj/WebKit.vcproj: Add explicit lib references for Windows system libs (VS express doesn't include these)
1642         * WebView.cpp: Removed unused header (atldef.h)
1643
1644 2007-04-16  Adam Roben  <aroben@apple.com>
1645
1646         Merge in r20872.
1647
1648         * WebInspector/webInspector/inspector.js:
1649         * WebInspector/webInspector/treeoutline.js:
1650
1651 2007-04-16  Adam Roben  <aroben@apple.com>
1652
1653         Merge in r20861.
1654
1655         * WebInspector/webInspector/inspector.js:
1656         * WebInspector/webInspector/treeoutline.js:
1657
1658 2007-04-16  Adam Roben  <aroben@apple.com>
1659
1660         Merge in r20845.
1661
1662         * WebInspector/webInspector/inspector.js:
1663
1664 2007-04-16  Adam Roben  <aroben@apple.com>
1665
1666         Merge in r20844.
1667
1668         * WebInspector/webInspector/inspector.js:
1669
1670 2007-04-16  Adam Roben  <aroben@apple.com>
1671
1672         Merge in r20843.
1673
1674         * WebInspector/webInspector/inspector.js:
1675         * WebInspector/webInspector/scrollarea.js:
1676         * WebInspector/webInspector/scrollbar.js:
1677         * WebInspector/webInspector/utilities.js:
1678
1679 2007-04-16  Adam Roben  <aroben@apple.com>
1680
1681         Merge in r20842.
1682
1683         * WebInspector/webInspector/inspector.html:
1684         * WebInspector/webInspector/inspector.js:
1685         * WebInspector/webInspector/utilities.js: Added.
1686
1687 2007-04-16  Adam Roben  <aroben@apple.com>
1688
1689         Merge in r20840.
1690
1691         * WebInspector/webInspector/inspector.html:
1692         * WebInspector/webInspector/inspector.js:
1693         * WebInspector/webInspector/treeoutline.js: Added.
1694
1695 2007-04-14  Adam Roben  <aroben@apple.com>
1696
1697         * WebKit.vcproj/WebKitGUID.vcproj: Need to use WebKitConfigSuffix
1698         instead of ConfigSuffix now.
1699
1700 2007-04-14  Adam Roben  <aroben@apple.com>
1701
1702         * WebKit.vcproj/WebKit.submit.sln: Use the Debug_Internal configuration
1703         when B&I builds Debug.
1704
1705 2007-04-12  Steve Falkenburg  <sfalken@apple.com>
1706
1707         Reviewed by Geoff, Adam.
1708         
1709         Changes required for search history content.
1710
1711         * Interfaces/IWebFramePrivate.idl:
1712         * WebFrame.cpp:
1713         (WebFrame::isFrameSet): Added
1714         (WebFrame::string): Added
1715         * WebFrame.h:
1716
1717 2007-04-12  Adam Roben  <aroben@apple.com>
1718
1719         Rubberstamped by Steve.
1720
1721         Copied WebKit.sln to WebKit.submit.sln, and added missing projects to
1722         WebKit.sln so that opensource contributors can use it to build a
1723         working WebKit.
1724
1725         * WebKit.vcproj/WebKit.make: Changed to use WebKit.submit.sln.
1726         * WebKit.vcproj/WebKit.sln: Added JavaScriptCore, WebCore,
1727         DumpRenderTree projects.
1728         * WebKit.vcproj/WebKit.submit.sln: Added.
1729
1730 2007-04-12  Adam Roben  <aroben@apple.com>
1731
1732         Reviewed by Steve.
1733
1734         <rdar://problem/5131565> Need to be able to use debug WebKit with
1735         release Safari.
1736
1737         Added a new configuration to WebKit.vcproj called Debug_Internal to be
1738         used by Apple internal builds. The Debug configuration is now meant to
1739         be used by opensource builds, and will always link against release
1740         versions of CF, CFNet, CG, etc. Debug_Internal is identical to Debug
1741         except for the property sheet it uses, and the Debug configuration
1742         doesn't register WebKit_debug.dll when finished.
1743
1744         We now have two macros, $(WebKitConfigSuffix) and
1745         $(LibraryConfigSuffix). WebKitConfigSuffix is used for WebKit projects,
1746         and is "_debug" for both Debug and Debug_Internal. LibraryConfigSuffix
1747         is used for external projects, and is "" for Debug and "_debug" for
1748         Debug_Internal.
1749
1750         * WebKit.vcproj/WebKit.vcproj:
1751         * WebKit.vcproj/debug.vsprops:
1752         * WebKit.vcproj/debug_internal.vsprops: Added.
1753         * WebKit.vcproj/release.vsprops:
1754
1755 2007-04-12  John Sullivan  <sullivan@apple.com>
1756
1757         Reviewed by Anders
1758
1759         * Interfaces/IWebUIDelegate.idl:
1760         added new PDF-related context menu items to enum to keep it in sync with WebCore
1761
1762 2007-04-12  Mark Rowe  <mrowe@apple.com>
1763
1764         Not reviewed.  Internal counterpart to open-source r20856.
1765
1766         * WebChromeClient.cpp:
1767         (WebChromeClient::createWindow):
1768         (WebChromeClient::createModalDialog):
1769         * WebChromeClient.h:
1770
1771 2007-04-11  Ada Chan  <adachan@apple.com>
1772
1773         Reviewed by Steve.
1774         
1775         Implemented WebHistoryItem::originalURLString().  Added parameter checks to other methods.
1776
1777         * WebHistoryItem.cpp:
1778         (WebHistoryItem::originalURLString):
1779         (WebHistoryItem::URLString):
1780         (WebHistoryItem::title):
1781         (WebHistoryItem::lastVisitedTimeInterval):
1782
1783 2007-04-10  Brady Eidson  <beidson@apple.com>
1784
1785         Reviewed by Darin
1786
1787         <rdar://problem/4887095> - PageCache and PageState should be combined
1788
1789         Basically updated client methods for the new names and signatures 
1790
1791         * WebFrame.cpp:
1792         (WebFrame::loadedFromCachedPage):
1793         (WebFrame::setDocumentViewFromCachedPage):
1794         (WebFrame::saveDocumentViewToCachedPage):
1795         * WebFrame.h:
1796
1797 2007-04-10  Adam Roben  <aroben@apple.com>
1798
1799         Reviewed by Anders.
1800
1801         Fix <rdar://problem/5119803> Web Inspector has no options menu
1802
1803         * WebInspector/WebInspector.cpp:
1804         (interpreterForFrame): Added.
1805         (WebInspector::showOptionsMenu): Implemented.
1806         (WebInspector::onCommand): Added.
1807         (WebInspector::toggleIgnoreWhitespace): Implemented.
1808         (WebInspector::toggleShowUserAgentStyles): Implemented.
1809         (WebInspectorWndProc): Added case for WM_COMMAND.
1810         * WebInspector/WebInspector.h:
1811
1812 2007-04-09  Anders Carlsson  <andersca@apple.com>
1813
1814         Reviewed by Adam.
1815
1816         <rdar://problem/5062624>
1817         No prompt to install QT for pages with uninstalled QT plug-in.
1818         
1819         * CFDictionaryPropertyBag.cpp:
1820         (CFDictionaryPropertyBag::Read):
1821         (CFDictionaryPropertyBag::Write):
1822         Use LPCOLESTRToCFStringRef here since the property names aren't BSTRs.
1823         
1824         * Interfaces/IWebError.idl:
1825         Add user info keys.
1826         
1827         * MarshallingHelpers.cpp:
1828         (MarshallingHelpers::LPCOLESTRToCFStringRef):
1829         * MarshallingHelpers.h:
1830         New function.
1831         
1832         * WebError.cpp:
1833         (WebError::WebError):
1834         (WebError::createInstance):
1835         Take a property bag.
1836         
1837         (WebError::userInfo):
1838         Return the property bag.
1839         
1840         * WebFrame.cpp:
1841         (WebFrame::createPlugin):
1842         If the plug-in wasn't found or failed to load, create a WebError with the right user info and
1843         call IWebResourceLoadDelegate::plugInFailedWithError.
1844
1845 2007-04-09  Brady Eidson  <beidson@apple.com>
1846
1847         Build Fix
1848
1849         * WebContextMenuClient.cpp:
1850         (WebContextMenuClient::searchWithGoogle): userGesture is true
1851
1852 2007-04-09  Timothy Hatcher  <timothy@apple.com>
1853
1854         Merge in r20810.
1855
1856         <rdar://problem/5121757> WebInspector focuses elements on mouse up instead of mouse down
1857
1858         Make selecting a tree node happen on mousedown to match the NSOutlineView behavior.
1859         Also makes selecting rows in the style pane happen on mousedown for consistency.
1860
1861         * WebInspector/webInspector/inspector.js:
1862
1863 2007-04-09  Adam Roben  <aroben@apple.com>
1864
1865         Fixed copyrights.
1866
1867         * WebInspector/WebInspector.cpp:
1868         * WebInspector/WebInspector.h:
1869
1870 2007-04-09  Adam Roben  <aroben@apple.com>
1871
1872         Reviewed by Oliver.
1873
1874         Fix two Web Inspector bugs:
1875         - The WebView wasn't focused when the inspector first appeared.
1876         - Resizing the upper pane did not resize the whole window.
1877
1878         * WebInspector/WebInspector.cpp:
1879         (WebInspector::show): Focus the WebView.
1880         (WebInspector::setFrame): Implemented.
1881         (WebInspector::webViewFrame): Implemented.
1882         * WebInspector/WebInspector.h:
1883
1884 2007-04-09  Adam Roben  <aroben@apple.com>
1885
1886         * WebInspector/WebInspector.cpp:
1887         (WebInspector::WebInspector): Removed two fixed FIXMEs and some
1888         commented-out code.
1889
1890 2007-04-08  Adam Roben  <aroben@apple.com>
1891
1892         When does "merge" != "merge"? When you make the change yourself
1893         pre-emptively and make a typo.
1894
1895         * WebInspector/webInspector/inspector.js:
1896
1897 2007-04-08  Adam Roben  <aroben@apple.com>
1898
1899         Merge in r20800.
1900
1901         * WebInspector/webInspector/inspector.js:
1902
1903 2007-04-08  Adam Roben  <aroben@apple.com>
1904
1905         Merge in r20797.
1906
1907         * WebInspector/webInspector/inspector.js:
1908
1909 2007-04-08  Adam Roben  <aroben@apple.com>
1910
1911         Merge in r20796.
1912
1913         * WebInspector/webInspector/inspector.js:
1914
1915 2007-04-08  Adam Roben  <aroben@apple.com>
1916
1917         Reviewed by Anders.
1918
1919         <rdar://problem/5119804> Web Inspector isn't resizable
1920         <rdar://problem/5119805> Can't move Web Inspector
1921
1922         * WebInspector/WebInspector.cpp:
1923         (WebInspectorPrivate::WebInspectorPrivate):
1924         (WebInspector::WebInspector): Subclass the WebView so we can intercept
1925         its messages.
1926         (WebInspector::onDestroy): Undo the subclassing.
1927         (WebInspector::handleMessageSentToWebView): Added.
1928         (WebInspector::onLButtonDown): Added.
1929         (WebInspector::onLButtonUp): Added.
1930         (WebInspector::onMouseMove): Added.
1931         (WebInspectorWndProc): Added cases for mouse messages.
1932         (SubclassedWebViewWndProc): Added.
1933         * WebInspector/WebInspector.h:
1934
1935 2007-04-08  Adam Roben  <aroben@apple.com>
1936
1937         Merge in r20793.
1938
1939         * WebInspector/webInspector/AppleScrollArea.js: Removed.
1940         * WebInspector/webInspector/AppleScrollbar.js: Removed.
1941         * WebInspector/webInspector/Images/resize.png: Added.
1942         * WebInspector/webInspector/inspector.css:
1943         * WebInspector/webInspector/inspector.html:
1944         * WebInspector/webInspector/inspector.js:
1945         * WebInspector/webInspector/scrollarea.js: Added.
1946         * WebInspector/webInspector/scrollbar.js: Added.
1947
1948 2007-04-08  Adam Roben  <aroben@apple.com>
1949
1950         Merge in r20792.
1951
1952         * WebInspector/webInspector/inspector.js:
1953
1954 2007-04-08  Adam Roben  <aroben@apple.com>
1955
1956         Merge in r20791.
1957
1958         * WebInspector/webInspector/inspector.js:
1959
1960 2007-04-08  Adam Roben  <aroben@apple.com>
1961
1962         Merge in r20789.
1963
1964         * WebInspector/webInspector/inspector.js:
1965
1966 2007-04-08  Adam Roben  <aroben@apple.com>
1967
1968         Build fix.
1969
1970         * WebInspector/WebInspector.cpp:
1971
1972 2007-04-07  Adam Roben  <aroben@apple.com>
1973
1974         Reviewed by Oliver.
1975
1976         <rdar://problem/4769828> Web Inspector
1977
1978         * WebInspector/WebInspector.cpp: Renamed from WebInspector.m. Ported
1979         Mac code. Some parts are left commented out to aid later
1980         implementation.
1981         * WebInspector/WebInspector.h: Ditto.
1982
1983         * DOMCoreClasses.cpp: Added IID_DOMNode.
1984         (DOMNode::QueryInterface): Added case for IID_DOMNode.
1985         (DOMNode::isSameNode): Implemented.
1986         * DOMCoreClasses.h: Added IID_DOMNode.
1987         (DOMNode::node): Added.
1988         * English.lproj/Localizable.strings: Updated for "Inspect Element".
1989         * WebContextMenuClient.cpp:
1990         (WebContextMenuClient::getCustomMenuFromDefaultItems): Add the "Inspect
1991         Element" item.
1992         * WebFrame.cpp:
1993         (WebFrame::addInspector): Stubbed out.
1994         (WebFrame::removeInspector): Ditto.
1995         * WebFrame.h: Added declarations.
1996         * WebKit.resources/Info.plist: Added. This was needed so that the
1997         WebKit bundle would have a bundle identifier.
1998         * WebKit.vcproj/WebKit.vcproj: Added new files to project, and modified
1999         the post-build step to copy Info.plist and everything in
2000         WebInspector/webInspector to WebKit.resources.
2001         * WebView.cpp:
2002         (WebView::performContextMenuAction): Added case for the Inspect Element item.
2003         (WebView::inspectElement): Added.
2004         * WebView.h: Added declaration.
2005
2006 2007-04-07  Adam Roben  <aroben@apple.com>
2007
2008         Forked most of the WebInspector directory from
2009         r20780 of branches/WebInspectorRefresh/WebKit/WebInspector.
2010
2011         * WebInspector/WebInspector.h: Added.
2012         * WebInspector/WebInspector.m: Added.
2013         (+[WebInspector sharedWebInspector]):
2014         (-[WebInspector init]):
2015         (-[WebInspector initWithWebFrame:]):
2016         (-[WebInspector dealloc]):
2017         (-[WebInspector window]):
2018         (-[WebInspector windowWillClose:]):
2019         (-[WebInspector showWindow:]):
2020         (-[WebInspector setWebFrame:]):
2021         (-[WebInspector webFrame]):
2022         (-[WebInspector setRootDOMNode:]):
2023         (-[WebInspector rootDOMNode]):
2024         (-[WebInspector setFocusedDOMNode:]):
2025         (-[WebInspector focusedDOMNode]):
2026         (-[WebInspector setSearchQuery:]):
2027         (-[WebInspector searchQuery]):
2028         (-[WebInspector showOptionsMenu]):
2029         (-[WebInspector _toggleIgnoreWhitespace:]):
2030         (-[WebInspector _toggleShowUserAgentStyles:]):
2031         (-[WebInspector _highlightNode:]):
2032         (-[WebInspector _nodeHighlightExpired:]):
2033         (-[WebInspector _update]):
2034         (-[WebInspector _updateRoot]):
2035         (-[WebInspector _updateSystemColors]):
2036         (-[WebInspector _applicationWillResignActive]):
2037         (-[WebInspector _applicationDidBecomeActive]):
2038         (-[WebInspector _webFrameDetached:]):
2039         (+[WebInspector isSelectorExcludedFromWebScript:]):
2040         (+[WebInspector webScriptNameForSelector:]):
2041         (+[WebInspector isKeyExcludedFromWebScript:]):
2042         (-[WebInspector inspectedWebViewProgressFinished:]):
2043         (-[WebInspector webView:didFinishLoadForFrame:]):
2044         (-[WebInspector webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:]):
2045         (-[WebInspector webView:didParseSource:baseLineNumber:fromURL:sourceId:forWebFrame:]):
2046         (-[WebInspector webView:exceptionWasRaised:sourceId:line:forWebFrame:]):
2047         (-[WebInspectorPrivate dealloc]):
2048         (-[DOMNode _isAncestorOfNode:]):
2049         * WebInspector/webInspector/AppleScrollArea.js: Added.
2050         * WebInspector/webInspector/AppleScrollbar.js: Added.
2051         * WebInspector/webInspector/Images/button.png: Added.
2052         * WebInspector/webInspector/Images/buttonDivider.png: Added.
2053         * WebInspector/webInspector/Images/buttonPressed.png: Added.
2054         * WebInspector/webInspector/Images/close.png: Added.
2055         * WebInspector/webInspector/Images/closePressed.png: Added.
2056         * WebInspector/webInspector/Images/downTriangle.png: Added.
2057         * WebInspector/webInspector/Images/menu.png: Added.
2058         * WebInspector/webInspector/Images/menuPressed.png: Added.
2059         * WebInspector/webInspector/Images/popup.png: Added.
2060         * WebInspector/webInspector/Images/popupPressed.png: Added.
2061         * WebInspector/webInspector/Images/rightTriangle.png: Added.
2062         * WebInspector/webInspector/Images/scrollThumbBottom.png: Added.
2063         * WebInspector/webInspector/Images/scrollThumbMiddle.png: Added.
2064         * WebInspector/webInspector/Images/scrollThumbTop.png: Added.
2065         * WebInspector/webInspector/Images/scrollTrackBottom.png: Added.
2066         * WebInspector/webInspector/Images/scrollTrackMiddle.png: Added.
2067         * WebInspector/webInspector/Images/scrollTrackTop.png: Added.
2068         * WebInspector/webInspector/Images/upTriangle.png: Added.
2069         * WebInspector/webInspector/inspector.css: Added.
2070         * WebInspector/webInspector/inspector.html: Added.
2071         * WebInspector/webInspector/inspector.js: Added.
2072
2073 2007-04-06  Dave Hyatt  <hyatt@apple.com>
2074
2075         Internal side of fix for bug 13274.
2076
2077         Reviewed by olliej
2078
2079         * Interfaces/IWebScrollBarPrivate.idl:
2080         * WebScrollBar.cpp:
2081         * WebScrollBar.h:
2082         * WebView.cpp:
2083         (WebView::handleMouseEvent):
2084
2085 2007-04-04  Oliver Hunt  <oliver@apple.com>
2086
2087         Reviewed by Ada.
2088         
2089         Fix <rdar://problem/5111027> Dragging a link on page
2090         shows URL thumbnail as nearly-transparent instead 
2091         semi-transparent
2092
2093         Error in createDragImageForLink led me to get wrong 
2094         maximum drag image size, now logic and maximum drag 
2095         image size corrected.
2096
2097         * WebDragClient.cpp:
2098         (WebDragClient::createDragImageForLink):
2099
2100 2007-04-04  Adam Roben  <aroben@apple.com>
2101
2102         Release build fix for TestNetscapePlugin.
2103
2104         * WebKit.vcproj/WebKit.vcproj: Make the Release post-build step the
2105         same as the Debug one so that the npapi headers get copied.
2106
2107 2007-04-03  Adam Roben  <aroben@apple.com>
2108
2109         Reviewed by Anders.
2110
2111         WebKit part of fix for <rdar://problem/5103999> All dom/svg tests are
2112         failing due to extra/missing newlines
2113
2114         * DOMCoreClasses.cpp:
2115         (DOMElement::innerText): Added.
2116         * DOMCoreClasses.h: Added declaration.
2117         * Interfaces/DOMPrivate.idl: Ditto.
2118
2119 2007-04-02  Steve Falkenburg  <sfalken@apple.com>
2120
2121         Reviewed by Darin.
2122         
2123         Expose COM class counter
2124
2125         * Interfaces/IWebKitStatistics.idl: Added comClassCount
2126         * WebKitStatistics.cpp:
2127         (WebKitStatistics::comClassCount): Added
2128         * WebKitStatistics.h:
2129
2130 2007-03-31  Steve Falkenburg  <sfalken@apple.com>
2131
2132         Reviewed by Hyatt.
2133
2134         <rdar://problem/5091159> Boomer has no bundle identifier - is the bundle correctly formed?
2135         <rdar://problem/5088764> Move the "Icon.db" file under "Local Settings"
2136
2137         * WebIconDatabase.cpp:
2138         (userIconDatabasePath): Prefer to store Icon.db file keyed off of bundle executable name
2139         * WebPreferences.cpp:
2140         (WebPreferences::preferencesPath): Prefer to store WebKit Preferences keyed off of bundle executable name
2141
2142 2007-03-30  Adele Peterson  <adele@apple.com>
2143
2144         Reviewed by Beth.
2145
2146         Fix <rdar://problem/5079824> editing/deleting/delete-by-word-001 is failing
2147
2148         * WebView.cpp: Add DeleteWordForward and DeleteWordBackward to key command table.
2149
2150 2007-03-30  Anders Carlsson  <andersca@apple.com>
2151
2152         Reviewed by Adele.
2153
2154         <rdar://problem/5101970> 
2155         Crash when submitting form, running under App Verifier
2156         
2157         * WebActionPropertyBag.cpp:
2158         (findMouseEvent):
2159         Return the right event.
2160
2161 2007-03-30  Anders Carlsson  <andersca@apple.com>
2162
2163         Reviewed by Geoff.
2164
2165         * Interfaces/IWebViewPrivate.idl:
2166         Add addAdditionalPluginPath method.
2167         
2168         * WebKit.vcproj/WebKit.vcproj:
2169         Copy NP includes so they can be included by the test plugin.
2170         
2171         * WebView.cpp:
2172         (WebView::stringByEvaluatingJavaScriptFromString):
2173         Hold JSLock while we call JSValue::getString().
2174         
2175         (WebView::addAdditionalPluginPath):
2176         * WebView.h:
2177         Implement addAdditionalPluginPath.
2178
2179 2007-03-27  Dave Hyatt  <hyatt@apple.com>
2180
2181         Enable complex text.  Selection and small-caps support are now enabled with this patch.
2182         
2183         Reviewed by aroben
2184
2185         * WebPreferences.cpp:
2186         (WebPreferences::initialize):
2187
2188 2007-03-26  Brady Eidson  <beidson@apple.com>
2189
2190         Reviewed by Ada
2191
2192         This one didn't actually have any leaks, but I just felt like doing the
2193         same style cleanup as the others :)
2194         
2195         * WebPreferences.cpp:
2196         (WebPreferences::stringValueForKey):
2197         (WebPreferences::integerValueForKey):
2198         (WebPreferences::floatValueForKey):
2199         (WebPreferences::setStringValue):
2200         (WebPreferences::setIntegerValue):
2201         (WebPreferences::save):
2202         (WebPreferences::load):
2203
2204 2007-03-26  Brady Eidson  <beidson@apple.com>
2205
2206         Reviewed by Ada
2207
2208         <rdar://5090412> - Plug CFNumberRef leaks in WebCache
2209         
2210         * WebCache.cpp:
2211         (WebCache::statistics):
2212
2213 2007-03-26  Beth Dakin  <bdakin@apple.com>
2214
2215         Reviewed by Geoff.
2216
2217         Fix build without breaking anything.
2218
2219         * WebHistory.cpp:
2220         (releaseUserInfo): Added silly void statement for now.
2221
2222 2007-03-26  Beth Dakin  <bdakin@apple.com>
2223
2224         Rubber-stamped by Brady.
2225
2226         Build fix for release build.
2227
2228         * WebHistory.cpp:
2229         (releaseUserInfo): Do not store userInfo->Release() in a local 
2230         variable since it is only used for an ASSERT.
2231
2232 2007-03-26  Steve Falkenburg  <sfalken@apple.com>
2233
2234         Reviewed by Lou.
2235         
2236         <rdar://problem/5088764> Move the "Icon.db" file under "Local Settings"
2237
2238         * WebIconDatabase.cpp:
2239         (userIconDatabasePath): Move icon database to non-roaming location
2240
2241 2007-03-25  Brady Eidson  <beidson@apple.com>
2242
2243         Reviewed by Oliver
2244         
2245         <rdar://problem/5086888> - WebHistory(Item) Leak
2246         
2247         This is a pretty thourough touchup up style and correctness that
2248         plugs at least 1 definite leak and many potential leaks with
2249         extensive use of RetainPtr and COMPtr.
2250         
2251         This should result in no change in behavior
2252
2253         * MarshallingHelpers.cpp: Add kIUnknownDictionaryValueCallBacks
2254         * MarshallingHelpers.h: Ditto
2255         
2256         * WebHistory.cpp:
2257         (createUserInfoFromArray):
2258         (createUserInfoFromHistoryItem):
2259         (releaseUserInfo):
2260         (WebHistory::WebHistory):
2261         (WebHistory::~WebHistory):
2262         (WebHistory::loadFromURL):
2263         (createHistoryListFromStream): Split of the Structured Exception
2264           Handling to a seperate function to cooperate with C++
2265         (WebHistory::loadHistoryGutsFromURL):
2266         (WebHistory::saveToURL):
2267         (WebHistory::saveHistoryGuts):
2268         (WebHistory::datesArray):
2269         (WebHistory::addItems):
2270         (WebHistory::removeItems):
2271         (WebHistory::removeAllItems):
2272         (WebHistory::orderedLastVisitedDays):
2273         (WebHistory::orderedItemsLastVisitedOnDay):
2274         (WebHistory::removeItem):
2275         (WebHistory::addItem):
2276         (WebHistory::addItemForURL):
2277         (WebHistory::itemForURLString):
2278         (WebHistory::itemForURL):
2279         (WebHistory::containsItemForURLString):
2280         (WebHistory::removeItemForURLString):
2281         (WebHistory::addItemToDateCaches):
2282         (WebHistory::removeItemFromDateCaches):
2283         (WebHistory::findIndex):
2284         (WebHistory::insertItem):
2285         (WebHistory::ageLimitDate):
2286         * WebHistory.h:
2287         
2288         * WebHistoryItem.cpp:
2289         (WebHistoryItem::dictionaryRepresentation):
2290         (WebHistoryItem::mergeAutoCompleteHints):
2291
2292 2007-03-25  Adam Roben  <aroben@apple.com>
2293
2294         Reviewed by Oliver.
2295
2296         WebKit part of <rdar://problem/5086934> DumpRenderTree doesn't support
2297         layoutTestController.queueLoad
2298
2299         * WebFrame.cpp:
2300         (WebFrame::findFrameNamed): Implemented.
2301         * WebHistoryItem.cpp:
2302         (WebHistoryItem::children): Don't increment i twice per loop!
2303
2304 2007-03-25  Adam Roben  <aroben@apple.com>
2305
2306         Build fix.
2307
2308         * WebDownload.h: Include RetainPtr from WTF.
2309
2310 2007-03-24  Steve Falkenburg  <sfalken@apple.com>
2311
2312         Build fix.
2313
2314         * WebDownload.h: Remove WebCore namespace
2315
2316 2007-03-24  Adam Roben  <aroben@apple.com>
2317
2318         Reviewed by Oliver.
2319
2320         WebKit part of <rdar://problem/5086932> DumpRenderTree doesn't support
2321         layoutTestController.dumpBackForwardList
2322
2323         * Interfaces/IWebHistoryItemPrivate.idl: Added declarations.
2324         * WebFrame.cpp:
2325         (WebFrame::childFrames): Removed unused variable.
2326         * WebHistoryItem.cpp:
2327         (WebHistoryItem::target): Implemented.
2328         (WebHistoryItem::isTargetItem): Implemented.
2329         (WebHistoryItem::children): Implemented.
2330         * WebHistoryItem.h: Added declarations.
2331
2332 2007-03-23  Brady Eidson  <beidson@apple.com>
2333
2334         Reviewed by Adam
2335         
2336         <rdar://5086194> - WebHistory overreleases a CFNumber
2337         
2338         * WebHistory.cpp:
2339         (WebHistory::loadHistoryGutsFromURL): Don't CFRelease what we didn't 
2340           legitimately get a ref for!
2341
2342 2007-03-23  Adam Roben  <aroben@apple.com>
2343
2344         Reviewed by Darin.
2345
2346         WebKit part of <rdar://problem/5084881> Add a "turn of site-specific
2347         hacks" menu item to the Debug menu
2348
2349         Added new IWebPrivate::setAllowSiteSpecificHacks SPI.
2350
2351         * Interfaces/IWebViewPrivate.idl: Added declaration.
2352         * WebView.cpp:
2353         (WebView::userAgentForKURL): Only give a site-specific UA if
2354         site-specific hacks are turned on.
2355         (WebView::setAllowSiteSpecificHacks): Added.
2356         * WebView.h:
2357         (WebView::allowSiteSpecificHacks): Added.
2358
2359 2007-03-23  Beth Dakin  <bdakin@apple.com>
2360
2361         Reviewed by Hyatt.
2362
2363         Fix for <rdar://problem/5083914> Cursor is wrong for all context 
2364         menus
2365
2366         * WebView.cpp:
2367         (WebView::handleContextMenuEvent): Set the cursor to the pointer 
2368         cursor.
2369
2370 2007-03-23  Alice Liu  <alice.liu@apple.com>
2371
2372         Reviewed by Adam.
2373
2374         Fixed <rdar://5084888> need to add flickr to spoof list in Boomer WebKit
2375
2376         * WebView.cpp:
2377         (WebView::userAgentForKURL):
2378         added flickr spoof
2379
2380 2007-03-23  Adam Roben  <aroben@apple.com>
2381
2382         Reviewed by Oliver.
2383
2384         WebKit part of <rdar://problem/5085170> DumpRenderTree doesn't print
2385         frame scroll offsets
2386
2387         Implemented some WebFrame methods to support dumping frame scroll
2388         offsets in DRT.
2389
2390         * Interfaces/IWebFrame.idl: Changed signature of IWebFrame::childFrames.
2391         * Interfaces/IWebFramePrivate.idl: Added scrollOffset declaration.
2392         * WebFrame.cpp:
2393         (WebFrame::name): Implemented.
2394         (WebFrame::childFrames): Implemented.
2395         (WebFrame::scrollOffset): Implemented.
2396         * WebFrame.h: Updated/added declarations.
2397
2398 2007-03-23  Adam Roben  <aroben@apple.com>
2399
2400         Reviewed by Oliver.
2401
2402         WebKit part of fix for <rdar://problem/4990740>.
2403
2404         Added IWebDataSourcePrivate::mainDocumentError.
2405
2406         * Interfaces/IWebDataSource.idl: Added method declaration and updated
2407         copyrights.
2408         * WebDataSource.cpp:
2409         (WebDataSource::mainDocumentError): Implemented.
2410         * WebDataSource.h: Added declaration.
2411
2412 2007-03-23  Steve Falkenburg  <sfalken@apple.com>
2413
2414         Reviewed by Adam.
2415         
2416         <rdar://problem/5083645> Spoofed UA for gmail doesn't work - should be removed
2417
2418         * WebView.cpp:
2419         (WebView::userAgentForKURL): Remove gmail spoof
2420
2421 2007-03-22  Dave Hyatt  <hyatt@apple.com>
2422
2423         Fix for <rdar://problem/5083072>.
2424
2425         Reviewed by aroben
2426   
2427         * ChangeLog:
2428         * WebFrame.cpp:
2429         (WebFrame::setPrinting):
2430         (WebFrame::spoolPages):
2431         * WebFrame.h:
2432
2433 2007-03-22  Anders Carlsson  <acarlsson@apple.com>
2434
2435         Reviewed by Maciej.
2436
2437         <rdar://problem/5082270>
2438         Crash in windows media player at MTV.COM
2439         
2440         Ignore any WM_PAINT events we get while painting.
2441         
2442         * WebView.cpp:
2443         (WebView::WebView):
2444         (WebView::updateBackingStore):
2445         (WebView::paint):
2446         (WebViewWndProc):
2447         * WebView.h:
2448         (WebView::isPainting):
2449
2450 2007-03-22  Adele Peterson  <adele@apple.com>
2451
2452         Reviewed by Anders.
2453
2454         Fix for <rdar://problem/5071358> window.open won't work with empty urls (24fun test)
2455
2456         * Interfaces/IWebURLRequest.idl:
2457         * WebMutableURLRequest.cpp: (WebMutableURLRequest::isEmpty): Added. Checks whether the ResourceRequest is empty.  On the mac,
2458           NSURLRequests created from empty ResourceRequests are nil.  We may want to consider that in the future, but there were too
2459           many places in the app that expected the IWebURLRequest to be non-null.
2460         * WebMutableURLRequest.h:
2461
2462 2007-03-22  Dave Hyatt  <hyatt@apple.com>
2463
2464         Fix for crasher in layout caused by paints that happen without layout being current.  Change to be
2465         more like the Mac and crawl the frame tree up front ensuring everyone is up to date before painting.
2466
2467         Reviewed by olliej
2468
2469         * WebFrame.cpp:
2470         (WebFrame::WebFramePrivate::m_policyFunction):
2471         (WebFrame::layoutIfNeededRecursive):
2472         * WebFrame.h:
2473         * WebView.cpp:
2474         (WebView::updateBackingStore):
2475         (WebView::paint):
2476         (WebViewWndProc):
2477
2478 2007-03-22  Ada Chan  <adachan@apple.com>
2479
2480         Reviewed by Hyatt and Alice.
2481         
2482         Changed the mouse event processing in the WebView wndproc so we actually
2483         allow a mouse event with click count > 3, which matches the mac safari behavior.
2484         
2485         Set globalPrevButton and globalPrevPoint also in mouse down.
2486
2487         * WebView.cpp:
2488         (WebView::handleMouseEvent):
2489
2490 2007-03-21  Anders Carlsson  <acarlsson@apple.com>
2491
2492         Reviewed by Adam.
2493
2494         * WebView.cpp:
2495         (WebView::initWithFrame):
2496         Remove #ifdef now that DRT no longer crashes.
2497
2498 2007-03-21  Beth Dakin  <bdakin@apple.com>
2499
2500         Reviewed by Adam.
2501
2502         <rdar://problem/5074274> right-clicking in certain iframes ends up 
2503         left-clicking, and context menu appears far away
2504
2505         * WebView.cpp:
2506         (WebView::handleContextMenuEvent): We were always calling 
2507         sendContextMenuEvent() on the main frame!! Instead, call it on the 
2508         focused or main frame.
2509
2510 2007-03-21  Adele Peterson  <adele@apple.com>
2511
2512         Reviewed by Adam.
2513         
2514         Fix for <rdar://problem/5076213> fast/forms/input-text-enter.html fails
2515         
2516         Added updateActiveState SPI for DumpRenderTree.
2517
2518         * Interfaces/IWebViewPrivate.idl:
2519         * WebView.cpp:
2520         (WebViewWndProc): Added comments where we do similar work when the webview gets and loses focus.  We should merge this logic into updateActiveState eventually.
2521         (WebView::updateActiveState):
2522         * WebView.h:
2523
2524 2007-03-19  Maciej Stachowiak  <mjs@apple.com>
2525
2526         Reviewed by Geoff and Adam.
2527
2528         - <rdar://problem/4041141> JavaScriptCore is not thread-safe on Windows
2529
2530         * WebView.cpp:
2531         (WebView::WebView): Tell JavaScriptCore what the main thread is.
2532
2533 2007-03-20  Anders Carlsson  <acarlsson@apple.com>
2534
2535         Reviewed by Adam.
2536
2537         <rdar://problem/5050512>
2538         Need invalid/expired certificate alerts
2539         
2540         Add setAllowsAnyHTTPSCertificate method to IWebMutableURLRequest and have it 
2541         call down to WebCore.
2542         
2543         * Interfaces/IWebMutableURLRequest.idl:
2544         * WebMutableURLRequest.cpp:
2545         (WebMutableURLRequest::setAllowsAnyHTTPSCertificate):
2546         * WebMutableURLRequest.h:
2547
2548 2007-03-20  Adam Roben  <aroben@apple.com>
2549
2550         Rubberstamped by Anders.
2551
2552         Workaround a CFNetwork crash that affects DRT.
2553
2554         * WebView.cpp:
2555         (WebView::initWithFrame): Commented out cookie storage initialization.
2556
2557 2007-03-20  Adam Roben  <aroben@apple.com>
2558
2559         Build fix.
2560
2561         * WebView.cpp: Added missing #include.
2562
2563 2007-03-20  Adam Roben  <aroben@apple.com>
2564
2565         Reviewed by Oliver.
2566
2567         Implemented [set]TabKeyCyclesThroughElements.
2568
2569         * Interfaces/IWebViewPrivate.idl: Added new declarations.
2570         * WebView.cpp:
2571         (WebView::setTabKeyCyclesThroughElements): Implemented.
2572         (WebView::tabKeyCyclesThroughElements): Implemented.
2573         * WebView.h: Updated.
2574
2575 2007-03-20  Dave Hyatt  <hyatt@apple.com>
2576
2577         Land advanced text code path (turned off).
2578        
2579         Reviewed by aroben
2580
2581         * WebKit.vcproj/WebKit.vcproj:
2582
2583 2007-03-20  Anders Carlsson  <acarlsson@apple.com>
2584
2585         Reviewed by Adam.
2586
2587         <rdar://problem/4921198>
2588         Cookie acceptance policy not settable
2589         
2590         * WebView.cpp:
2591         (WebView::updateWebCoreSettingsFromPreferences):
2592         Update the cookie storage accept policy.
2593         
2594         (WebView::initWithFrame):
2595         Initialize the cookie storage.
2596
2597 2007-03-19  Adam Roben  <aroben@apple.com>
2598
2599         Build fix.
2600
2601         * WebKit.vcproj/WebKitGUID.vcproj:
2602
2603 2007-03-19  Adam Roben  <aroben@apple.com>
2604
2605         Reviewed by Anders and Darin.
2606
2607         Added WebJavaScriptCollector for <rdar://problems/5071653>.
2608
2609         * Interfaces/IWebJavaScriptCollector.idl: Added.
2610         * Interfaces/WebKit.idl:
2611         * WebJavaScriptCollector.cpp: Added.
2612         (WebJavaScriptCollector::WebJavaScriptCollector):
2613         (WebJavaScriptCollector::~WebJavaScriptCollector):
2614         (WebJavaScriptCollector::createInstance):
2615         (WebJavaScriptCollector::QueryInterface):
2616         (WebJavaScriptCollector::AddRef):
2617         (WebJavaScriptCollector::Release):
2618         (WebJavaScriptCollector::collect):
2619         (WebJavaScriptCollector::collectOnAlternateThread):
2620         (WebJavaScriptCollector::objectCount):
2621         * WebJavaScriptCollector.h: Added.
2622         * WebKit.vcproj/Interfaces.vcproj: Added IWebJavaScriptCollector.idl.
2623         * WebKit.vcproj/WebKit.vcproj: Added WebJavaScriptCollector.(cpp|h).
2624         * WebKit.vcproj/WebKitGUID.vcproj: Added IWebJavaScriptCollector_i.c.
2625         * WebKitClassFactory.cpp:
2626         (WebKitClassFactory::CreateInstance): Added cases for
2627         WebJavaScriptCollector.
2628         * WebKitDLL.cpp:
2629         (DllGetClassObject): Ditto.
2630
2631 2007-03-19  Adam Roben  <aroben@apple.com>
2632
2633         Build fix.
2634
2635         * Interfaces/IWebView.idl:
2636
2637 2007-03-18  Adam Roben  <aroben@apple.com>
2638
2639         Reviewed by Hyatt.
2640
2641         Implemented getting/setting of the editing delegate (we don't actually
2642         use it for anything yet, though. See <rdar://problem/5071598>).
2643
2644         * Interfaces/IWebEditingDelegate.idl: Renamed IWebViewEditingDelegate
2645         to IWebEditingDelegate to match our other delegates.
2646         * Interfaces/IWebView.idl: Updated for rename.
2647         * WebView.cpp:
2648         (WebView::setEditingDelegate): Implemented.
2649         (WebView::editingDelegate): Ditto.
2650         * WebView.h: Updated for rename.
2651
2652 2007-03-18  Adam Roben  <aroben@apple.com>
2653
2654         Reviewed by Geoff.
2655
2656         Added IWebFramePrivate::layout to support eventSender in DRT.
2657
2658         Made IWebView inherit from IDropTarget to match Mac, and added
2659         IWebUIDelegatePrivate::doDragDrop to support drag-and-drop in DRT.
2660
2661         * Interfaces/IWebFramePrivate.idl: Added layout().
2662         * Interfaces/IWebUIDelegatePrivate.idl: Added doDragDrop().
2663         * Interfaces/IWebView.idl: Added inheritance from IDropTarget.
2664         * WebDragClient.cpp:
2665         (WebDragClient::startDrag): Call the UI delegate if possible,
2666         otherwise fallback to OLE's DoDragDrop.
2667         * WebFrame.cpp:
2668         (WebFrame::layout): Implemented.
2669         * WebFrame.h:
2670         * WebView.h:
2671
2672 2007-03-17  Adam Roben  <aroben@apple.com>
2673
2674         Reviewed by Brady.
2675
2676         Fix repro ASSERT when logging in to facebook.com.
2677
2678         * WebMutableURLRequest.cpp:
2679         (WebMutableURLRequest::valueForHTTPHeaderField): Implemented.
2680
2681 2007-03-16  Brady Eidson  <beidson@apple.com>
2682
2683         Reviewed by Oliver
2684
2685         Make the WebDownload fix a little more correct.
2686         
2687         * WebDownload.cpp:
2688         (WebDownload::init): Release the connection from the ResourceHandle after the CFURLDownload has been created
2689
2690 2007-03-16  Geoffrey Garen  <ggaren@apple.com>
2691
2692         Reviewed by Dave Hyatt.
2693         
2694         Fixed "called Frame::paint with nil renderer" console messages.
2695         You can now launch and exit the app without seeing any
2696         error messages!
2697
2698         * WebView.cpp:
2699         (WebView::paintIntoBackingStore): Only tell the FrameView to
2700         paint if it has a renderer. This isn't an issue on the Mac
2701         because we don't create a FrameView until you load a page.
2702
2703 2007-03-16  Anders Carlsson  <acarlsson@apple.com>
2704
2705         Reviewed by Adam.
2706
2707         Add setters and getters for cookie storage accept policy.
2708         
2709         * Interfaces/IWebPreferences.idl:
2710         * WebPreferenceKeysPrivate.h:
2711         * WebPreferences.cpp:
2712         (WebPreferences::initialize):
2713         (WebPreferences::cookieStorageAcceptPolicy):
2714         (WebPreferences::setCookieStorageAcceptPolicy):
2715         * WebPreferences.h:
2716
2717 2007-03-16  Anders Carlsson  <acarlsson@apple.com>
2718
2719         Reviewed by Adam and Dave Hyatt.
2720
2721         <rdar://problem/5069226>
2722         Boomer fails Acid2.
2723         
2724         Fix acid2 test.
2725         
2726         * WebFrame.cpp:
2727         (WebFrame::shouldFallBack):
2728         Implement this function.
2729
2730 2007-03-16  Ada Chan  <adachan@apple.com>
2731
2732         Reviewed by Steve.
2733         
2734         Implemented a couple of DOM methods so we can set the font-size of an element directly in the app.
2735
2736         * DOMCSSClasses.cpp:
2737         (DOMCSSStyleDeclaration::setProperty):
2738         * DOMCoreClasses.cpp:
2739         (DOMElement::style):
2740
2741 2007-03-15  Alice Liu  <alice.liu@apple.com>
2742
2743         Reviewed by Ada.
2744
2745         Fixing some leaks
2746
2747         * WebFrame.cpp:
2748         (WebFrame::dispatchDidReceiveAuthenticationChallenge):
2749         (WebFrame::dispatchDidCancelAuthenticationChallenge):
2750
2751 2007-03-15  Brady Eidson  <beidson@apple.com>
2752
2753         Reviewed by Oliver
2754
2755         CFNetwork related cleanup that was a work around for previous deficiencies in CFURLDownload
2756         This might fix some of the random crashers we see on stress testing if they end up 
2757         downloading links.
2758
2759         * WebDownload.cpp:
2760         (WebDownload::init): Release the connection from the handle so it no longer refers to it
2761         
2762 2007-03-15  Maciej Stachowiak  <mjs@apple.com>
2763
2764         Reviewed by Geoff and Steve.
2765         
2766         - fixed <rdar://problem/5029776> iBench JavaScript test slower than Opera
2767         - fixes to use FastMalloc on Windows
2768
2769         * WebKit.vcproj/WebKit.def: Add exports of WTF symbols.
2770         * WebKit.vcproj/WebKit_debug.def: ditto
2771         * WebKit.vcproj/WebKit.vcproj: Link pthreads, now needed by WTF.
2772
2773 2007-03-15  Brady Eidson  <beidson@apple.com>
2774
2775         Reviewed by Alice
2776         
2777         Due to OpenSource r20178, all of the sudden we were trying to handle page caching on Windows
2778         even though it is not hooked up yet.  The resulted in very particular cases ending up calling 
2779         clear() in FrameLoader::provisionalLoadStarted().  One such particular case was if a page *would*
2780         be "cachable" (no frames, no passwords, etc etc), and you start a download from that page.
2781         
2782         The fix for now is to manually set the pageCacheSize to 0 whenever we create new pages on Windows.
2783         This prevents the "Should I cache this page?" checking from getting far enough to clear the document.
2784         It so happens this involves exactly one line.
2785         
2786         * WebView.cpp:
2787         (WebView::initWithFrame): Set page cache size to zero on new pages, and add a fixme to remove later
2788
2789 2007-03-15  Brady Eidson  <beidson@apple.com>
2790
2791         Reviewed by Maciej
2792
2793         <rdar://problem/4429701>
2794         Implements a port blocking black list that matches Firefox's
2795         
2796         * Interfaces/IWebError.idl: Add the custom error code for blocked error
2797
2798         * WebFrame.cpp:
2799         (WebFrame::blockedError): FrameLoaderClient fill-in + a Fixme
2800         (WebFrame::interruptForPolicyChangeError): Add a Fixme for localization
2801         * WebFrame.h:
2802
2803 2007-03-15  Adam Roben  <aroben@apple.com>
2804
2805         Rubberstamped by Brady.
2806
2807         * WebKitLogging.cpp: Turn of Download logging by default.
2808
2809 2007-03-14  Ada Chan  <adachan@apple.com>
2810
2811         Reviewed by Lou.
2812
2813         Added a method in IWebViewPrivate to clear the current focus node.  This is called in the app
2814         when focus has been transferred to the address field or search field.
2815
2816         * Interfaces/IWebViewPrivate.idl:
2817         * WebView.cpp:
2818         (WebView::clearFocusNode):
2819         * WebView.h:
2820
2821 2007-03-14  Adele Peterson  <adele@apple.com>
2822
2823         Reviewed by Ada.
2824
2825         Allow empty commands to be sent by doTextFieldCommandFromEvent.  Our autocomplete code relies on this.
2826
2827         * WebEditorClient.cpp: (WebEditorClient::doTextFieldCommandFromEvent):
2828
2829 2007-03-14  Steve Falkenburg  <sfalken@apple.com>
2830
2831         <rdar://problem/5050470> Reproducible crash doing find on page at cnn.com
2832         
2833         Add frame->document() null checks in cases where frame could be a
2834         sub-frame that hasn't started loading yet.
2835
2836         * WebView.cpp:
2837         (WebView::rectsForTextMatches): Add null check
2838
2839 2007-03-14  Adele Peterson  <adele@apple.com>
2840
2841         Reviewed by Darin.
2842
2843         WebKit part of fix for <rdar://problem/5057371> REGRESSION: Shift-selection stopped working in text fields
2844
2845         This fixes doCommandBySelector to take a command string instead of a key code.
2846
2847         * Interfaces/IWebEditingDelegate.idl: Changed parameter to BSTR.
2848         * Interfaces/IWebFormDelegate.idl: ditto.
2849         * WebEditorClient.cpp:
2850         (WebEditorClient::doTextFieldCommandFromEvent): Calls doCommandBySelector with a BString that it gets from interpretKeyEvent instead of a key code.
2851         (WebEditorClient::textWillBeDeletedInTextField): Calls doCommandBySelector with a BString to represent the BackwardDelete command.
2852         (WebEditorClient::handleKeypress): Calls handleEditingKeyboardEvent with just the KeyboardEvent.
2853         * WebView.cpp: Added commands that will be used by doCommandBySelector to the table (Cancel, InsertTab, InsertBacktab, InsertNewline).
2854         (WebView::interpretKeyEvent): Added. Returns a command string for a KeyboardEvent. Removed static editCommandForKey.
2855         (WebView::handleEditingKeyboardEvent): Call Editor methods instead of calling handleTextInputEvent directly.
2856         * WebView.h:
2857
2858 2007-03-14  Administrator  <acarlsson@apple.com>
2859
2860         Build fixes.
2861         
2862         * WebDataSource.cpp:
2863         (WebDataSource::subresourceForURL):
2864         * WebKitDLL.cpp:
2865         (loadResourceIntoBuffer):
2866
2867 2007-03-12  Adele Peterson  <adele@apple.com>
2868
2869         Reviewed by Oliver.
2870
2871         WebKit part of fix for <rdar://problem/5044790> preventing default of keypress event doesn't work (affects .mac)
2872
2873         Removed special handling of the WM_CHAR message.  All this work is now done by WM_KEYDOWN, which will dispatch the keydown event, 
2874         which causes the keypress event to be dispatched, which calls WebEditorClient::handleKeyPress to do all the hard work.
2875         
2876         * WebEditorClient.cpp: (WebEditorClient::handleKeypress): Removed special call to doTextFieldCommandFromEvent since this will now 
2877         happen during normal key event processing. Call handleEditingKeyboardEvent.  Now editing actions can be prevented from the keypress event handler.
2878         * WebView.cpp:
2879         (WebView::WebView): Added m_currentCharacterCode, so we can reuse the computed code from keyDown for keyUp events.
2880         (WebView::keyUp): Renamed arguments.  Don't dispatch event for shift, ctrl, or capslock keys. Use m_currentCharacterCode when constructing the PlatformKeyboardEvent.
2881         (WebView::handleEditingKeyboardEvent): Now takes a KeyboardEvent instead of a PlatformKeyboardEvent.  If no editCommand is created
2882          from the event, then call handleTextInputEvent.
2883         (WebView::keyDown): Peek at the next message in the message loop.  If its a WM_CHAR, then get the character code and remove that message from the queue.
2884          Renamed arguments.  Don't dispatch event for shift, ctrl, or capslock keys. Set m_currentCharacterCode and use it when constructing the PlatformKeyboardEvent.
2885         (WebViewWndProc):  Removed handling of WM_CHAR, since this is now done from WM_KEYDOWN by dispatching the keydown event, which will eventually call handleKeyPress.
2886         * WebView.h: Made handleEditingKeyboardEvent public so it can be accessed from WebEditorClient.
2887
2888 2007-03-11  Oliver Hunt  <oliver@apple.com>
2889
2890         Reviewed by Adele.
2891
2892         Stubbed WebEditorClient::respondToChangedSelection
2893
2894         * WebEditorClient.cpp:
2895         (WebEditorClient::respondToChangedSelection):
2896         * WebEditorClient.h:
2897
2898 2007-03-10  Anders Carlsson <acarlsson@apple.com>
2899
2900         Reviewed by Adam.
2901
2902         * DOMCoreClasses.cpp:
2903         (DOMNode::textContent):
2904         Implement this.
2905
2906 2007-03-09  Anders Carlsson <acarlsson@apple.com>
2907
2908         Reviewed by Adam.
2909
2910         * WebURLResponse.cpp:
2911         (WebURLResponse::suggestedFilename):
2912         Get the suggested filename from the ResourceResponse object.
2913
2914 2007-03-09  Adam Roben  <aroben@apple.com>
2915
2916         Rubberstamped by Steve.
2917
2918         B&I build fix.
2919
2920         * WebKit.vcproj/WebKit.vcproj: Removed all references to iconv.
2921
2922 2007-03-08  Anders Carlsson <acarlsson@apple.com>
2923
2924         Build fix.
2925         
2926         * WebView.cpp:
2927         (WebView::isLoading):
2928
2929 2007-03-08  Anders Carlsson <acarlsson@apple.com>
2930
2931         Reviewed by Adam.
2932
2933         Implement WebView::isLoading.
2934         
2935         * WebView.cpp:
2936         (WebView::isLoading):
2937
2938 2007-03-07  Adam Roben  <aroben@apple.com>
2939
2940         Rubberstamped by Anders.
2941
2942         Return E_POINTER for null parameters.
2943
2944         * WebScrollBar.cpp:
2945         (WebScrollBar::value):
2946         (WebScrollBar::capturingMouse):
2947         (WebScrollBar::frameGeometry):
2948         (WebScrollBar::width):
2949         (WebScrollBar::height):
2950         (WebScrollBar::requestedWidth):
2951         (WebScrollBar::requestedHeight):
2952         (WebScrollBar::windowClipRect):
2953
2954 2007-03-07  Adam Roben  <aroben@apple.com>
2955
2956         Reviewed by Oliver.
2957
2958         Added requestedWidth and requestedHeight methods to WebScrollBar.
2959
2960         * Interfaces/IWebScrollBarPrivate.idl: Added new declarations.
2961         * WebScrollBar.cpp:
2962         (WebScrollBar::requestedWidth): Implemented.
2963         (WebScrollBar::requestedHeight): Implemented.
2964         * WebScrollBar.h: Added method declarations.
2965
2966 2007-03-07  Adam Roben  <aroben@apple.com>
2967
2968         Rubberstamped by Anders.
2969
2970         * WebFrame.cpp:
2971         (WebFrame::cancelledError): Use the WebURLErrorDomain constant.
2972         (WebFrame::interruptForPolicyChangeError): Use the WebKitErrorDomain constant.
2973
2974 2007-03-07  Adam Roben  <aroben@apple.com>
2975
2976         Rubberstamped by Anders.
2977
2978         Switch the definition of WebURLErrorDomain to "CFURLErrorDomain" so
2979         that we will send the right errors once <rdar://problem/5034136> is
2980         fixed.
2981
2982         * Interfaces/IWebError.idl: Changed definition.
2983
2984 2007-03-07  Adele Peterson  <adele@apple.com>
2985
2986         Build fix.
2987
2988         * WebEditorClient.cpp: (WebEditorClient::handleInputMethodKeypress):
2989
2990 2007-03-07  Adele Peterson  <adele@apple.com>
2991
2992         Reviewed by Darin.
2993
2994         WebKitWin part of fix for:
2995         http://bugs.webkit.org/show_bug.cgi?id=10871
2996         http://bugs.webkit.org/show_bug.cgi?id=12677
2997         <rdar://problem/4823129> REGRESSION: IME key events different in nightly
2998         <rdar://problem/4759563> REGRESSION: Return key is always sent when you confirm a clause in kotoeri
2999
3000         * WebEditorClient.cpp:
3001         (WebEditorClient::handleKeypress): Changed handleKeyPress to handleKeypress.
3002         (WebEditorClient::handleInputMethodKeypress): Added.
3003         * WebEditorClient.h:
3004
3005 2007-03-07  Anders Carlsson  <acarlsson@apple.com>
3006
3007         Reviewed by Adam.
3008
3009         * WebFrame.cpp:
3010         (WebFrame::makeDocumentView):
3011         Assert that frame is not null.
3012
3013 2007-03-06  Anders Carlsson  <acarlsson@apple.com>
3014
3015         Reviewed by Adam.
3016
3017         * WebFrame.cpp:
3018         (WebFrame::makeDocumentView):
3019         Call resetMultipleFormSubmissionProtection() so that submitting the same form from separate loads works.
3020
3021 2007-03-06  Brady Eidson  <beidson@apple.com>
3022
3023         Reviewed by Adam
3024
3025         Adapt to an API change in CFURLDownload
3026         
3027         * WebDownload.cpp:
3028         (WebDownload::init):
3029
3030 2007-03-06  Steve Falkenburg  <sfalken@apple.com>
3031
3032         Rubber-stamped by Adam.
3033         
3034         Fix disney.com more.  Disney redirects to disney.go.com.
3035
3036         * WebView.cpp:
3037         (WebView::userAgentForKURL): Added disney.go.com
3038
3039 2007-03-06  Adam Roben  <aroben@apple.com>
3040
3041         Reviewed by Anders.
3042
3043         Always keep rounding hacks on to be consistent.
3044
3045         * WebDragClient.cpp:
3046         (createDragImageForLink): Tell StringTruncator to keep rounding hacks on.
3047         * WebKitGraphics.cpp:
3048         (CenterTruncateStringToWidth): Ditto.
3049         (RightTruncateStringToWidth): Ditto.
3050
3051 2007-03-06  Steve Falkenburg  <sfalken@apple.com>
3052
3053         Reviewed by Adam.
3054         
3055         Allow custom user agents per site.
3056         
3057         This fixes:
3058         
3059         http://www.disney.com
3060         http://www.yahoo.com
3061         http://mail.google.com
3062         iTunes store links (w/ latest unsubmitted CFNetwork from our root share)
3063
3064         * WebView.cpp:
3065         (WebView::userAgentForKURL): Check URL host against a list of known offenders, return them what they're looking for.
3066
3067 2007-03-06  Anders Carlsson  <acarlsson@apple.com>
3068
3069         Reviewed by Adam.
3070         
3071         Pass the user agent on.
3072         
3073         * WebFrame.cpp:
3074         (WebFrame::userAgent):
3075         * WebFrame.h:
3076
3077 2007-03-04  Adam Roben  <aroben@apple.com>
3078
3079         Reviewed by Steve.
3080
3081         Added line spacing querying to FontMetrics to support line wrapping.
3082
3083         * WebKitGraphics.cpp:
3084         (FontMetrics): Return the line spacing.
3085         * WebKitGraphics.h: Added lineSpacing parameter.
3086
3087 2007-03-02  Adam Roben  <aroben@apple.com>
3088
3089         Reviewed by Beth.
3090
3091         Make submenus draw using the UIDelegate.
3092
3093         * Interfaces/IWebUIDelegate.idl: Added new delegate method to add
3094         custom drawing data for menus.
3095         * WebView.cpp:
3096         (WebView::onInitMenuPopup): Added. Calls new delegate method.
3097         (WebViewWndProc): Added handler for WM_INITMENUPOPUP, which is called
3098         for all submenus.
3099         * WebView.h: Added declaration.
3100
3101 2007-03-02  Adam Roben  <aroben@apple.com>
3102
3103         Reviewed by Anders.
3104
3105         Added optional underlining of a single character to WebKitGraphics.
3106
3107         * WebKitGraphics.cpp:
3108         (DrawTextAtPoint): Passed optional underlinedIndex parameter to
3109         WebCoreTextRenderer.
3110         * WebKitGraphics.h: Added optional underlinedIndex parameter.
3111
3112 2007-03-01  Adam Roben  <aroben@apple.com>
3113
3114         Reviewed by Kevin M.
3115
3116         Add support for right-truncation to WebKitGraphics.
3117
3118         * WebKit.vcproj/WebKit.def: Added new export.
3119         * WebKit.vcproj/WebKit_debug.def: Ditto.
3120         * WebKitGraphics.cpp:
3121         (RightTruncateStringToWidth): Added.
3122         * WebKitGraphics.h: Added declaration.
3123
3124 2007-02-28  Adam Roben  <aroben@apple.com>
3125
3126         Reviewed by Anders.
3127
3128         Made WebKitGraphics more flexible.
3129
3130         * WebDragClient.cpp:
3131         (WebDragClient::createDragImageForLink): Updated for changes to
3132         WebKitGraphics/WebCoreTextRenderer.
3133         * WebKit.vcproj/WebKit.def: Added new exported methods.
3134         * WebKit.vcproj/WebKit_debug.def: Ditto.
3135         * WebKitGraphics.cpp:
3136         (makeFont): Added.
3137         (DrawTextAtPoint): Simplified arguments, changed to take a
3138         CGContextRef, and updated for WebCoreTextRenderer changes.
3139         (TextFloatWidth): Added.
3140         (FontMetrics): Added.
3141         (CenterTruncateStringToWidth): Added.
3142         * WebKitGraphics.h: Updated declarations.
3143
3144 2007-02-28  Steve Falkenburg  <sfalken@apple.com>
3145
3146         Fix build (for new SDK) / Break build (for old SDK)
3147
3148         * WebDownload.cpp:
3149         (WebDownload::initToResumeWithBundle):
3150
3151 2007-02-27  Ada Chan  <adachan@apple.com>
3152
3153         Reviewed by Steve and Adam.
3154         
3155         WebKitWin changes to get the aqua scrollbar into the app.
3156
3157         * Interfaces/IWebScrollBarDelegatePrivate.idl: Added.
3158         COM interface for the WebKit scrollbar
3159         * Interfaces/IWebScrollBarPrivate.idl: Added.
3160         COM interface that allows the WebKit scrollbar to update the client.
3161         * Interfaces/WebKit.idl:
3162         * WebKit.vcproj/Interfaces.vcproj:
3163         * WebKit.vcproj/WebKit.vcproj:
3164         * WebKit.vcproj/WebKitGUID.vcproj:
3165         * WebKitClassFactory.cpp:
3166         (WebKitClassFactory::CreateInstance):
3167         Added changes needed to create the WebKitScrollBar through COM
3168         * WebKitDLL.cpp:
3169         (DllGetClassObject):
3170         * WebScrollBar.cpp: Added.
3171         WebKitScrollBar wraps the WebCore's PlatformScrollbar.  This allows the app to
3172         make its own scroll bar that's the same aqua scrollbar in the engine.
3173         (WebScrollBar::WebScrollBar):
3174         (WebScrollBar::~WebScrollBar):
3175         (WebScrollBar::createInstance):
3176         (WebScrollBar::QueryInterface):
3177         (WebScrollBar::AddRef):
3178         (WebScrollBar::Release):
3179         (WebScrollBar::init): instantiate PlatformScrollbar.
3180         (WebScrollBar::setEnabled): call through to PlatformScrollbar
3181         (WebScrollBar::setSteps): ditto
3182         (WebScrollBar::setProportion): ditto
3183         (WebScrollBar::setRect): ditto
3184         (WebScrollBar::setValue): ditto
3185         (WebScrollBar::value): ditto
3186         (WebScrollBar::capturingMouse): ditto
3187         (WebScrollBar::paint): ditto
3188         (WebScrollBar::frameGeometry): ditto
3189         (WebScrollBar::width): ditto
3190         (WebScrollBar::height): ditto
3191         (WebScrollBar::handleMouseEvent): ditto
3192         (WebScrollBar::scroll): ditto
3193         (WebScrollBar::valueChanged): call valueChanged on the delegate
3194         (WebScrollBar::windowClipRect): get the rect from the scrollbar's containing window
3195         * WebScrollBar.h: Added.
3196
3197 2007-02-27  Alice Liu  <alice.liu@apple.com>
3198
3199         Reviewed by Steve, Adam, Maciej, and their mothers.
3200
3201         This is a general leaks fix but helps the effort towards fixing
3202         <rdar://4974495> Boomer leaks while running HTML iBench
3203         However, this fix doens't close that bug. 
3204
3205         * WebFrame.cpp:
3206         (WebFrame::setTitle):
3207             fix a leak of WebHistory
3208         * WebHistory.cpp:
3209         (_WebCoreHistoryProvider::containsItemForURLUnicode):
3210             fix a leak of WebHistory
3211
3212 2007-02-27  Adam Roben  <aroben@apple.com>
3213
3214         Reviewed by Anders.
3215
3216         Fix <rdar://problem/5004615> View source menu option is always disabled
3217         when Netscape 8 is installed
3218
3219         The bug was caused by Netscape's npTrident.dll plugin, which registers
3220         itself as a handler for text/html and text/xml.
3221
3222         * WebFrame.cpp:
3223         (WebFrame::canProvideDocumentSource): Explicitly allow viewing the
3224         source of HTML and XML documents, rather than disallowing text, image,
3225         and plugin documents. Plugins can register themselves as handlers for
3226         HTML and XML MIME types, but we still want to display source in those
3227         cases.
3228
3229 2007-02-27  Beth Dakin  <bdakin@apple.com>
3230
3231         Reviewed by Adam.
3232
3233         Make msimg32.lib available to the engine so that we can use 
3234         AlphaBlend.
3235
3236         * WebKit.vcproj/WebKit.vcproj:
3237
3238 2007-02-27  Ada Chan  <adachan@apple.com>
3239
3240         Fixed build.
3241
3242         * WebFrame.cpp:
3243
3244 2007-02-27  Oliver Hunt  <oliver@apple.com>
3245
3246         Reviewed by Lou and Steve.
3247         
3248         Handle the WM_CURSOR message to stop cursor flickering
3249         to fix <rdar://problem/4788352>
3250
3251         * WebView.cpp:
3252         (WebViewWndProc):
3253
3254 2007-02-27  Ada Chan  <adachan@apple.com>
3255
3256         Reviewed by Steve and Anders.
3257
3258         <rdar://4983106> Stop/reload button never changes back to
3259         reload when a click on a link spawns a download
3260
3261         * WebError.cpp:
3262         (WebError::isPolicyChangeError): fixed string comparison
3263         * WebFrame.cpp:
3264         (WebFrame::interruptForPolicyChangeError): implemented the method
3265
3266 2007-02-26  Adam Roben  <aroben@apple.com>
3267
3268         Reviewed by Adele.
3269
3270         Stop bizarre crashes from happening on startup.
3271
3272         * WebKit.vcproj/WebKit.vcproj: Use new ENABLE_* macros instead of *_SUPPORT.
3273
3274 2007-02-24  Steve Falkenburg  <sfalken@apple.com>
3275
3276         Pre-emptive build fix.
3277         Removed CGPThreads DLL copy
3278
3279         * WebKit.vcproj/WebKit.vcproj:
3280
3281 2007-02-22  Adele Peterson  <adele@apple.com>
3282
3283         Updating this file to match WebCore.
3284
3285         * WebKit.vcproj/textAreaResizeCorner.png:
3286
3287 2007-02-22  Beth Dakin  <bdakin@apple.com>
3288
3289         Reviewed by Adam.
3290
3291         Fix for http://bugs.webkit.org/show_bug.cgi?id=12399 REGRESSION: 
3292         Unable to prevent default context menu from appearing. <rdar://
3293         problem/5017416>
3294
3295         * WebView.cpp:
3296         (WebView::handleContextMenuEvent): Clear the controller's context 
3297         menu before propagating a new context menu event through the DOM.
3298
3299 2007-02-22  Oliver Hunt  <oliver@apple.com>
3300
3301         Reviewed by Ada, Lou, and Steve.
3302
3303         Last of the major changes for drag and drop
3304         - Move COMPtr.h to WebCore
3305         - Added WebDragSource, a modified version of SDataSource from the App
3306           that can notify a WebView's eventhandler of drag events
3307         - Implement the last bits of the DragClient
3308         - As part of drag client added code to draw the "doubled" text used by
3309           drag links.  May be useful for other parts of WebKit/App
3310         
3311         * COMPtr.h: Removed.
3312           Moving to WebCore
3313         * WebDragClient.cpp:
3314         (WebDragClient::actionMaskForDrag):
3315         (WebDragClient::willPerformDragDestinationAction):
3316         (WebDragClient::dragSourceActionMaskForPoint):
3317         (WebDragClient::willPerformDragSourceAction):
3318           Removing WebCore:: as i'm now using the WebCore namespace
3319         (WebDragClient::startDrag):
3320           Implemented client method
3321         (allocImage):
3322         (dragLabelFont):
3323           Helper functions for generating the link dragging image
3324         (WebDragClient::createDragImageForLink):
3325           Implemented client method
3326           
3327         * WebDropSource.cpp: Added.
3328         (WebDropSource::createInstance):
3329         (WebDropSource::WebDropSource):
3330         (WebDropSource::QueryInterface):
3331         (WebDropSource::AddRef):
3332         (WebDropSource::Release):
3333         (generateMouseEvent):
3334           Generates a mouse event for the EventHandler
3335         (WebDropSource::QueryContinueDrag):
3336         (WebDropSource::GiveFeedback):
3337           Copied from SDataObject in the App.  Minor changes per suggestions
3338           from Ada and Steve (error codes, potential leaks)
3339           Also includes logic to notify the source WebView of drag events (moving 
3340           and drag end)
3341           
3342         * WebDropSource.h: Added.
3343           Header for the above
3344           
3345         * WebKit.vcproj/WebKit.vcproj:
3346           Removing COMPtr.h, and adding WebDropSource.{h,cpp}
3347           
3348         * WebKitGraphics.cpp:
3349         (DrawDoubledTextAtPoint):
3350           Utility function for drawing double text, as used by link dragging image
3351           
3352         * WebKitGraphics.h:
3353           Defining the above function
3354
3355 2007-02-21  Brady Eidson  <beidson@apple.com>
3356
3357         Reviewed by the build-fix fairies
3358
3359         * WebDownload.cpp:
3360         (WebDownload::initToResumeWithBundle): Conditionally use CFURLDownload API for the resume case.
3361          I totally made up the flag
3362
3363 2007-02-21  Brady Eidson  <beidson@apple.com>
3364
3365         Reviewed by Anders' rubberstamp
3366         
3367         * WebDownload.cpp:
3368         (WebDownload::initToResumeWithBundle): Make a copy of the string we truncate
3369          so it doesn't affect the original
3370
3371 2007-02-21  Brady Eidson  <beidson@apple.com>
3372
3373         Reviewed by Adam
3374
3375         <rdar://problem/4964763> - Hookup resume downloads on the engine side
3376         
3377         NOTE: Resume downloads are broken in the current ChickenCat - this functionality requires 
3378         a custom ToT CFNetwork as of CFNetwork r3372, or will require CFNetwork 172 or later
3379         
3380         * WebDownload.cpp:
3381         (WebDownload::initWithRequest): Changed some logging, plugged some potential leaks
3382         (WebDownload::initToResumeWithBundle): Added a real implementation - this now works!
3383         (WebDownload::didFinish): Added some logging and fixed up some lifetime issues
3384         (extractResumeDataFromBundle): Renamed to imply the modification of the file.  Truncate
3385           the resume data from the file once it is extracted
3386
3387 2007-02-20  Beth Dakin  <bdakin@apple.com>
3388
3389         Reviewed by Maciej.
3390
3391         Move copyImage functionality from the ContextMenuClient to the 
3392         Pasteboard.
3393
3394         * WebContextMenuClient.cpp:
3395         * WebContextMenuClient.h:
3396
3397 2007-02-20  Adam Roben  <aroben@apple.com>
3398
3399         Reviewed by Darin and Anders.
3400
3401         Fix <rdar://problem/5003318> App: Status bar text is more difficult to
3402         read than Mac OS X Safari
3403
3404         * WebKitGraphics.cpp:
3405         (DrawTextAtPoint): Added bottomAlign and centerTruncate parameters.
3406         * WebKitGraphics.h: Ditto.
3407
3408 2007-02-20  Darin Adler  <darin@apple.com>
3409
3410         Reviewed by Anders.
3411
3412         * WebFrame.cpp: (WebFrame::redirectDataToPlugin): Update for changes to
3413         FrameLoader and DocumentLoader.
3414
3415 2007-02-19  Adam Roben  <aroben@apple.com>
3416
3417         Reviewed by Darin.
3418
3419         Fix <rdar://problem/5007566> Crash in WebFrame::dataSource on dni.ru
3420
3421         The fix for the bug was to zero out WebFrame's Frame pointer in
3422         WebFrame::frameLoaderDestroyed, and then to null-check or ASSERT
3423         non-null as appropriate. All IWebFrame methods that depend on the Frame
3424         pointer will return E_FAIL if it is null, and everywhere within
3425         WebFrame that wasn't null-checking before will now explicitly ASSERT.
3426
3427         I also changed all uses of d->frame and WebFrame::impl() to use the
3428         core() function for consistency, and so that there is only one code
3429         path for getting from a WebFrame to a Frame.
3430
3431         Additional more specific comments below.
3432
3433         * WebChromeClient.cpp:
3434         (WebChromeClient::scrollBackingStore):
3435         (WebChromeClient::updateBackingStore):
3436         * WebFrame.cpp:
3437         (kit): Null-check the frame parameter.
3438         (core): Added two overloads of this.
3439         (WebFrame::DOMDocument): Added argument checking.
3440         (WebFrame::currentForm):
3441         (WebFrame::loadRequest):
3442         (WebFrame::loadData):
3443         (WebFrame::dataSource): Added argument checking, and return E_FAIL if the dataSource is null.
3444         (WebFrame::provisionalDataSource): Ditto.
3445         (WebFrame::stopLoading):
3446         (WebFrame::reload):
3447         (WebFrame::parentFrame):
3448         (WebFrame::renderTreeAsExternalRepresentation): Added argument checking.
3449         (WebFrame::firstLayoutDone): Ditto.
3450         (WebFrame::loadType): Ditto.
3451         (WebFrame::invalidate):
3452         (WebFrame::setTextSizeMultiplier):
3453         (WebFrame::inViewSourceMode): Added argument checking, and changed to return an HRESULT.
3454         (WebFrame::setInViewSourceMode): Changed to return an HRESULT.
3455         (WebFrame::searchForLabelsBeforeElement): Added argument checking.
3456         (WebFrame::matchLabelsAgainstElement): Ditto.
3457         (WebFrame::frameLoaderDestroyed): Zero out the Frame pointer because the Frame is being destroyed.
3458         (WebFrame::createFrame):
3459         (WebFrame::loadURLIntoChild): Added some assertions.
3460         (WebFrame::dispatchWillSubmitForm):
3461         (WebFrame::frameLoadCompleted):
3462         (WebFrame::receivedData):
3463         (WebFrame::setUpPolicyListener):
3464         (WebFrame::receivedPolicyDecision):
3465         (WebFrame::dispatchDecidePolicyForMIMEType):
3466         (WebFrame::dispatchDecidePolicyForNewWindowAction):
3467         (WebFrame::dispatchDecidePolicyForNavigationAction):
3468         (WebFrame::dispatchCreatePage):
3469         (WebFrame::createPlugin):
3470         (WebFrame::redirectDataToPlugin):
3471         (WebFrame::createJavaAppletWidget):
3472         (WebFrame::windowObjectCleared):
3473         (WebFrame::setPrinting):
3474         (WebFrame::setInPrintingMode):
3475         (WebFrame::computePageRects):
3476         (WebFrame::getPrintedPageCount): Zero out the out parameter before proceeding.
3477         (WebFrame::spoolPages):
3478         (WebFrame::forceLayoutWithPageWidthRange):
3479         * WebFrame.h:
3480         * WebView.cpp:
3481         (WebView::paint): Silently fail on a null Frame, because this method could be called at any time.
3482         (WebView::mouseWheel): Ditto.
3483         (WebViewWndProc): Ditto.
3484         (WebView::inViewSourceMode): Return whatever WebFrame::setInViewSourceMode returns.
3485         (WebView::setInViewSourceMode): Ditto.
3486         (WebView::setCustomTextEncodingName): Replaced check for a null
3487         FrameLoader with a check for a null Frame, which is equivalent but, as
3488         a bonus, won't crash.
3489         (WebView::stringByEvaluatingJavaScriptFromString):
3490         (WebView::elementAtPoint): Added argument checking.
3491         (WebView::selectedText): Ditto.
3492         (WebView::centerSelectionInVisibleArea):
3493
3494 2007-02-19  Adam Roben  <aroben@apple.com>
3495
3496         Build fix.
3497
3498         * WebFrame.cpp:
3499         (WebFrame::computePageRects):
3500
3501 2007-02-18  Maciej Stachowiak  <mjs@apple.com>
3502
3503         Reviewed by Oliver.
3504
3505         - Adapt for Lars's patch to clean up Frame
3506
3507         * WebChromeClient.cpp:
3508         (WebChromeClient::tabsToLinks):
3509         (WebChromeClient::windowResizerRect):
3510         (WebChromeClient::addToDirtyRegion):
3511         (WebChromeClient::scrollBackingStore):
3512         (WebChromeClient::updateBackingStore):
3513         * WebChromeClient.h:
3514         * WebEditorClient.cpp:
3515         (WebEditorClient::shouldChangeSelectedRange):
3516         (WebEditorClient::textFieldDidBeginEditing):
3517         (WebEditorClient::textFieldDidEndEditing):
3518         (WebEditorClient::textDidChangeInTextField):
3519         (WebEditorClient::doTextFieldCommandFromEvent):
3520         (WebEditorClient::textWillBeDeletedInTextField):
3521         (WebEditorClient::textDidChangeInTextArea):
3522         * WebEditorClient.h:
3523         * WebElementPropertyBag.cpp:
3524         (WebElementPropertyBag::Read):
3525         * WebFrame.cpp:
3526         (kit):
3527         (WebFrame::initWithWebFrameView):
3528         (WebFrame::searchForLabelsBeforeElement):
3529         (WebFrame::matchLabelsAgainstElement):
3530         (WebFrame::createPlugin):
3531         (WebFrame::createJavaAppletWidget):
3532         (WebFrame::computePageRects):
3533         (WebFrame::getPrintedPageCount):
3534         (WebFrame::spoolPages):
3535         * WebFrame.h:
3536         * WebView.cpp:
3537         (WebView::handleEditingKeyboardEvent):
3538         (WebView::keyDown):
3539         (WebView::generateSelectionImage):
3540         * WebView.h:
3541
3542 2007-02-18  Ada Chan  <adachan@apple.com>
3543
3544         Reviewed by Adam.
3545         
3546         Move app text controls to use webview
3547
3548         * DOMCoreClasses.cpp:
3549         (DOMNode::parentNode): implemented
3550         (DOMElement::blur): implemented
3551         * Interfaces/IWebUIDelegatePrivate.idl: added API for focus/blur notifications
3552         * WebKit.vcproj/WebKit.def: added DrawTextAtPoint
3553         * WebKit.vcproj/WebKit.vcproj: added WebKitGraphics.h/cpp
3554         * WebKit.vcproj/WebKit_debug.def: added DrawTextAtPoint
3555         * WebKitGraphics.cpp: Added.
3556         (DrawTextAtPoint): calls WebCoreDrawTextAtPoint to render text
3557         * WebKitGraphics.h: Added.
3558         * WebView.cpp:
3559         (WebViewWndProc): notify setfocus and killfocus through IWebUIDelegatePrivate delegate.
3560         (WebView::unmarkAllTextMatches): added null check
3561
3562 2007-02-18  Oliver Hunt  <oliver@apple.com>
3563
3564         Reviewed by Adam.
3565
3566         Stubs to keep the build going
3567
3568         * WebDragClient.cpp:
3569         (WebDragClient::willPerformDragSourceAction):
3570         (WebDragClient::startDrag):
3571         (WebDragClient::createDragImageForLink):
3572         * WebDragClient.h:
3573
3574 2007-02-17  Steve Falkenburg  <sfalken@apple.com>
3575
3576         Reviewed by Adam.
3577
3578         <rdar://problem/4918821> Find: clicking on the webview does not hide findoverlay
3579         <rdar://problem/4956428> Find: Showing/hiding the Find banner should not push the page contents down when possible
3580
3581         * Interfaces/IWebViewPrivate.idl: Added scrollBy, visibleContentRect
3582         * WebView.cpp:
3583         (WebView::scrollOffset): Add null check
3584         (WebView::scrollBy): Added so we can scroll a webview easily (matches scroll position getter here)
3585         (WebView::visibleContentRect):  Added so we can size find overlay appropriately (not including scroll bars)
3586         * WebView.h: Added scrollBy, visibleContentRect
3587
3588 2007-02-17  Adele Peterson  <adele@apple.com>
3589
3590         Reviewed by Hyatt.
3591
3592         Fix for <rdar://problem/5006194> Caret is not revealed when a newline is entered into a textarea
3593
3594         * WebView.cpp: (WebView::handleEditingKeyboardEvent):
3595         Use shared code in Editor class to insertParagraphSeparator (or insertLineBreak for plain text).
3596         This will also reveal the selection properly.
3597
3598 2007-02-16  Anders Carlsson  <acarlsson@apple.com>
3599
3600         Build fixes.
3601         
3602         * WebDownload.cpp:
3603         (WebDownload::init):
3604         (WebDownload::initWithRequest):
3605
3606 2007-02-15  Steve Falkenburg  <sfalken@apple.com>
3607
3608         Reviewed by Adam.
3609         
3610         <rdar://problem/5001181> Crash: autofilling empty page
3611         
3612         Return an error from WebFrame::DOMDocument if there's no document
3613
3614         * WebFrame.cpp:
3615         (WebFrame::DOMDocument): null document now maps to E_FAIL
3616
3617 2007-02-15  Brady Eidson  <beidson@apple.com>
3618
3619         Reviewed by Adam
3620
3621         <rdar://4778394> - Save scroll position in the back/forward list
3622         
3623         * WebFrame.cpp:
3624         (WebFrame::restoreViewState):  Renamed, as scroll position was pushed to WebCore
3625         (WebFrame::saveViewStateToItem):  Ditto
3626         * WebFrame.h:
3627
3628 2007-02-15  Adam Roben  <aroben@apple.com>
3629
3630         Reviewed by Anders.
3631
3632         Fix <rdar://problem/4968731> Printing scales frames to page width
3633         instead of doing a layout at that width
3634
3635         * Interfaces/IWebFramePrivate.idl: Added setInPrintingMode method.
3636         * WebFrame.cpp:
3637         (WebFrame::WebFrame): Initialize new member.
3638         (printerRect): New helper function.
3639         (WebFrame::setPrinting): Ported from WebHTMLView.
3640         (WebFrame::setInPrintingMode): Implemented.
3641         (WebFrame::computePageRects): Changed to store the page rects.
3642         (WebFrame::getPrintedPageCount): Added an ASSERT and updated for change to computePageRects.
3643         (WebFrame::spoolPages): Use the stored page rects, and set mediaBox's
3644         size using the print rect instead of the page rect so we will scale the
3645         pages to the full width of the print DC.
3646         (WebFrame::forceLayoutWithPageWidthRange): Ported from WebFrameBridge.
3647         * WebFrame.h: Updated declarations.
3648
3649 2007-02-15  Lou Amadio  <lamadio@apple.com>
3650
3651         Reviewed by Steve.
3652
3653         <rdar://problem/4945799> CGText: should use correct mechanism to set font smoothing style
3654         
3655         * WebKit.vcproj/WebKit.vcproj:
3656         * WebPreferences.cpp:
3657         (WebPreferences::setFontSmoothing):
3658         * WebView.cpp:
3659         (WebViewWndProc):
3660
3661 2007-02-13  Steve Falkenburg  <sfalken@apple.com>
3662
3663         Reviewed by Adam.
3664         
3665         <rdar://problem/4950378> AddressBook autofill doesn't fill rest of form when tabbing out of a completed field
3666         
3667         Send tab keypresses to IWebFormDelegate::doCommandBySelector.
3668
3669         * WebEditorClient.cpp:
3670         (WebEditorClient::handleKeyPress): Call doTextFieldCommandFromEvent if we get a tab keypress
3671
3672 2007-02-12  Ada Chan  <adachan@apple.com>
3673
3674         Reviewed by Steve.
3675         
3676         Also, checked in a fix in WebContextMenuClient that Adam made on my machine, reviewed by me.
3677
3678         <rdar://4952715> Events not being passed from WebCore/WebKit up through IWebForm::doCommandBySelector
3679         Inform form delegate about delete key press.
3680         
3681         DOM event fixes:
3682         - Removed DOMEventTarget class.
3683         - IDOMEventTarget no longer extends IDOMObject
3684         - DOMNode now implements IDOMEventTarget
3685         - DOMEvent::CoCreateInstance creates the correct subclasses
3686         of DOMEvents based on the type of event
3687         - Added IDOMDocumentEvent interface, which DOMDocument implements.
3688         - Fixed the out parameter in IDOMUIEvent::view to be IDOMWindow**
3689         
3690         Implemented DOMHTMLDocument::body and DOMHTMLElement::setInnerText.
3691
3692         * DOMCoreClasses.cpp:
3693         (DOMNode::addEventListener): added as DOMNode now needs to implement IDOMEventTarget
3694         (DOMNode::removeEventListener): ditto above
3695         (DOMNode::dispatchEvent): ditto above
3696         (DOMDocument::QueryInterface): DOMDocument now also implements IDOMDocumentEvent
3697         (DOMDocument::createEvent): added as DOMDocument implements IDOMDocumentEvent
3698         (DOMElement::focus): implemented
3699         * DOMCoreClasses.h:
3700         * DOMEventsClasses.cpp:
3701         (DOMEvent::DOMEvent): The data member m_event is now a RefPtr, and the WebCore::Event is now
3702         passed into the constructor via a PassRefPtr.
3703         (DOMEvent::~DOMEvent): No longer need to deref m_event since we are using a RefPtr.
3704         (DOMEvent::createInstance): instantiate the correct DOMEvent subclass based on event type.
3705         (DOMEvent::QueryInterface): be able to QI IID_DOMEvent, which returns back the DOMEvent type.
3706         (DOMUIEvent::view): fixed the API
3707         (DOMKeyboardEvent::ctrlKey): call .get() on RefPtr
3708         (DOMKeyboardEvent::shiftKey): ditto above
3709         (DOMKeyboardEvent::altKey): ditto above
3710         (DOMKeyboardEvent::metaKey): ditto above
3711         (DOMKeyboardEvent::altGraphKey): ditto above
3712         (DOMMouseEvent::ctrlKey): ditto above
3713         (DOMMouseEvent::shiftKey): ditto above
3714         (DOMMouseEvent::altKey): ditto above
3715         (DOMMouseEvent::metaKey): ditto above
3716         * DOMEventsClasses.h:
3717         (DOMEvent::coreEvent): Added an API to get the WebCore::Event out of a DOMEvent.  Used in DOMNode::dispatchEvent.
3718         (DOMUIEvent::DOMUIEvent): made public so it can be called in DOMEvent::createInstance
3719         (DOMKeyboardEvent::DOMKeyboardEvent): ditto above
3720         (DOMKeyboardEvent::view): fixed API
3721         (DOMMouseEvent::DOMMouseEvent): made public so it can be called in DOMEvent::createInstance
3722         (DOMMouseEvent::view): fixed API
3723         (DOMMutationEvent::DOMMutationEvent): made public so it can be called in DOMEvent::createInstance
3724         (DOMOverflowEvent::DOMOverflowEvent): made public so it can be called in DOMEvent::createInstance
3725         (DOMWheelEvent::DOMWheelEvent): made public so it can be called in DOMEvent::createInstance
3726         (DOMWheelEvent::view): fixed API
3727         * DOMHTMLClasses.cpp:
3728         (DOMHTMLDocument::body):
3729         (DOMHTMLElement::setInnerText):
3730         * Interfaces/DOMEvents.idl: IDOMEventTarget no longer extends IDOMObject.  Added IDOMDocumentEvent.
3731         * WebContextMenuClient.cpp:
3732         (WebContextMenuClient::getCustomMenuFromDefaultItems): check for error from calling contextMenuItemsForElement.
3733         * WebFrame.cpp:
3734         (WebFrame::textWillBeDeletedInTextField): call form delegate callback doCommandBySelector with VK_BACK 
3735         when deleting text.
3736
3737 2007-02-11  Adam Roben  <aroben@apple.com>
3738
3739         Fixing line endings.
3740
3741         * WebResource.cpp:
3742         * WebResource.h:
3743
3744 2007-02-10  Adam Roben  <aroben@apple.com>
3745
3746         Reviewed by Steve.
3747
3748         Fix <rdar://problem/4989705> Loading eBay puts many items into back list
3749
3750         The bug was that WebFrame::createFrame was calling loadRequest on the
3751         new child frame, which would initiate a load of FrameLoadTypeStandard,
3752         when in fact we wanted to do a FrameLoadTypeInternal load. I ported
3753         -[WebFrame _loadURL:referrer:intoChild:] to WebFrame, which contains
3754         the logic we need.
3755
3756         * WebFrame.cpp:
3757         (WebFrame::createFrame): Use a COMPtr to manage the new WebFrame, and
3758         call loadURLIntoChild instead of just calling loadRequest.
3759         (WebFrame::loadURLIntoChild): Ported from Mac WebFrame.
3760         * WebFrame.h: Added declaration.
3761
3762 2007-02-09  Maciej Stachowiak  <mjs@apple.com>
3763
3764         Reviewed by Adam, Steve.
3765         
3766         - fixed <rdar://problem/4976975> Need WEbKit API to revtrieve current or first frame and form from a WebView
3767
3768         * Interfaces/IWebFrame.idl: added currentForm
3769         * Interfaces/IWebView.idl: added focusedFrame
3770         * WebFrame.cpp:
3771         (WebFrame::currentForm): Get the "current" form for a frame,
3772         as determined by WebCore::Frame
3773         * WebFrame.h:
3774         * WebView.cpp:
3775         (WebView::focusedFrame): Get the currently focused frame
3776         (via FocusController).
3777         * WebView.h:
3778
3779 2007-02-09  Alice Liu  <alice.liu@apple.com>
3780
3781         Reviewed by Brady and Adam.
3782
3783         Fixed <rdar://4986194> Typing in content editable body does not automatically scroll to reveal cursor
3784         fix depends on corresponding fix in WebCoreWin
3785
3786         * WebView.cpp:
3787         (WebViewWndProc):
3788         call the editor to handle inserting text and scrolling/focus changes
3789
3790 2007-02-09  John Sullivan  <sullivan@apple.com>
3791
3792         Reviewed by Beth
3793
3794         - WebKitWin part of fix for radar 4939636, problems with context menu items and binaries linked
3795           against WebKit 2.0.
3796
3797         * Interfaces/IWebUIDelegate.idl:
3798         bumped enum value for new SPI tags to match change in WebCore/WebKit
3799
3800 2007-02-08  Alice Liu  <alice.liu@apple.com>
3801
3802         Reviewed by Adam.
3803
3804         Fixed <rdar://4920436> Find: Regression: Find banner does not select in orange on pages with frame
3805
3806         * WebView.cpp:
3807         (WebView::searchFor):
3808         Ever since 11396, the widget no longer handles frame focus changes.
3809         This is now the page's focus controller responsibility
3810
3811 2007-02-07  Brady Eidson  <beidson@apple.com>
3812
3813         Reviewed by Steve, Ada, Darin, and Adam
3814         
3815         <rdar://problem/4964763> - Download resume support
3816         
3817         Note I did my work with a ToT CFNetwork.  
3818         This will compile on stock CFNetwork, but will not function until they submit resume support.
3819         
3820         * Interfaces/IWebDownload.idl:  Reworked the API a bit
3821         
3822         * MarshallingHelpers.cpp:
3823         (MarshallingHelpers::PathStringToFileCFURLRef):
3824         (MarshallingHelpers::FileCFURLRefToPathString):
3825         * MarshallingHelpers.h:
3826
3827         * WebDownload.cpp:
3828         (WebDownload::initToResumeWithBundle): The app needs simply to pass in a bundle path to resume it
3829         (WebDownload::cancelForResume): Cancel the download, writing out the resume data
3830         (WebDownload::bundlePathForTargetPath): Helper for the app
3831         (WebDownload::setDestination): Cache the destination inside the WebDownload
3832         (WebDownload::didCreateDestination): Hide the bundle distinction from the app
3833         (WebDownload::didFinish): Hide the bundle distinction from the app
3834         (createResumeDataFromBundle): Extract the resume data from the bundle
3835         (appendResumeDataToBundle): Add the resume data to the bundle
3836         * WebDownload.h:
3837
3838 2007-02-08  Anders Carlsson  <acarlsson@apple.com>
3839
3840         Reviewed by Adam.
3841
3842         <rdar://problem/4972772>
3843         Implement IWebResource::Data.
3844         
3845         <rdar://problem/4972777>
3846         Implement IWebDataSource::subresourceForURL.
3847         
3848         * MemoryStream.cpp:
3849         (MemoryStream::MemoryStream):
3850         (MemoryStream::createInstance):
3851         (MemoryStream::Clone):
3852         * MemoryStream.h:
3853         Remove notion of buffer owner, it's not needed now that the buffer itself is reference counted.
3854         
3855         * WebDataSource.cpp:
3856         (WebDataSource::subresourceForURL):
3857         Implement this.
3858                 
3859         * WebKit.vcproj/WebKit.vcproj:
3860         Add WebResource.cpp and WebResource.h
3861         
3862         * WebResource.cpp: Added.
3863         (WebResource::WebResource):
3864         (WebResource::~WebResource):
3865         (WebResource::createInstance):
3866         (WebResource::QueryInterface):
3867         (WebResource::AddRef):
3868         (WebResource::Release):
3869         (WebResource::initWithData):
3870         (WebResource::data):
3871         (WebResource::URL):
3872         (WebResource::MIMEType):
3873         (WebResource::textEncodingName):
3874         (WebResource::frameName):
3875         * WebResource.h: Added.
3876         
3877         * WebView.cpp:
3878         (WebView::formDelegate):
3879         Return E_FAIL if there's no form delegate.
3880
3881 2007-02-08  Anders Carlsson  <acarlsson@apple.com>
3882
3883         Reviewed by Adam.
3884
3885         Add shouldInterruptJavaScript to the API.
3886         
3887         * Interfaces/IWebUIDelegatePrivate.idl:
3888         * WebChromeClient.cpp:
3889         (WebChromeClient::addMessageToConsole):
3890         (WebChromeClient::shouldInterruptJavaScript):
3891
3892 2007-02-07  Anders Carlsson  <acarlsson@apple.com>
3893
3894         * WebChromeClient.cpp:
3895         * WebChromeClient.h:
3896         Build fix.
3897         
3898 2007-02-06  Alice Liu  <alice.liu@apple.com>
3899
3900         Reviewed by Maciej.
3901
3902         Fix for <rdar://4973323> PageUp/PageDown don't move the caret in textareas
3903
3904         * WebView.cpp:
3905         (WebView::keyDown):
3906         added key entry for function to scroll by page and move 
3907         caret in scrolling editable regions
3908
3909 2007-02-06  Adam Roben  <aroben@apple.com>
3910
3911         Reviewed by Ada and Oliver.
3912         
3913         Add some GDI object logging to help catch leaks.
3914
3915         * WebFrame.cpp:
3916         (WebFrame::layoutIfNeeded):
3917         * WebView.cpp:
3918         (WebView::addToDirtyRegion):
3919         (WebView::scrollBackingStore):
3920         (WebView::updateBackingStore):
3921         (WebView::paint):
3922         (WebView::paintIntoBackingStore):
3923         (WebView::paintIntoWindow):
3924
3925 2007-02-05  Brady Eidson  <beidson@apple.com>
3926
3927         Rubberstamped by Adam
3928         
3929         Added #include "config.h" to 3 files that didn't have it before
3930         I was tipped off when some work I was doing resulted in these 3 files
3931         trying to use the wrong MAX() - YET AGAIN...
3932
3933         * CFDictionaryPropertyBag.cpp:
3934         * MarshallingHelpers.cpp:
3935         * WebHistory.cpp:
3936
3937 2007-02-05  Ada Chan  <adachan@apple.com>
3938
3939         Reviewed by Anders.
3940         
3941         <rdar://4945519> Crash when back/forward buttons are clicked several times
3942         Clear loader's previous history item when frame load is completed (got that code from the mac side).
3943
3944         * WebFrame.cpp:
3945         (WebFrame::frameLoadCompleted):
3946
3947 2007-02-04  Ada Chan  <adachan@apple.com>
3948
3949         Reviewed by Steve.
3950         
3951         <rdar://4946475> Private browsing is not working correctly
3952         Implemented FrameLoaderClient::privateBrowsingEnabled().
3953
3954         * WebFrame.cpp:
3955         (WebFrame::privateBrowsingEnabled):
3956
3957 2007-02-04  Alice Liu  <alice.liu@apple.com>
3958
3959         Reviewed by Steve.
3960
3961         Fix some memory leaks.  This fixes WebFrame leak as well. 
3962         Can be considered a partial fix for <rdar://4974495> Boomer leaks while running HTML iBench
3963
3964         * WebActionPropertyBag.cpp:
3965         (WebActionPropertyBag::WebActionPropertyBag):
3966         * WebDataSource.cpp:
3967         (WebDataSource::representation):
3968         * WebURLResponse.cpp:
3969         (:m_refCount):
3970
3971 2007-02-04  Adam Roben  <aroben@apple.com>
3972
3973         Reviewed by Steve.
3974
3975         Fix <rdar://problem/4972498> REGRESSION: Crash while closing View Source window
3976
3977         * WebView.cpp:
3978         (WebView::WebView): Initialize new member.
3979         (WebViewWndProc): Set flag when we receive WM_DESTROY, and don't handle
3980         WM_SIZE if that flag is true.
3981         (WebView::mainFrame): Added argument check.
3982         * WebView.h:
3983         (WebView::setIsBeingDestroyed): Added.
3984         (WebView::isBeingDestroyed): Added.
3985
3986 2007-02-04  Adam Roben  <aroben@apple.com>
3987
3988         Reviewed by Hyatt.
3989
3990         Fix <rdar://problem/4968183> Cross-window frame targeting doesn't work
3991
3992         * Interfaces/IWebView.idl: Pass RECT by value.
3993         * WebView.cpp:
3994         (WebView::initWithFrame): Uses the passed-in RECT for the frame, and
3995         sets the frame/group names.
3996         * WebView.h: Updated declaration.
3997
3998 2007-02-03  Steve Falkenburg  <sfalken@apple.com>
3999
4000         Reviewed by Adam.
4001         
4002         <rdar://problem/4930947> Regression: History is not saved when boomer window is closed.
4003         
4004         Fix boolean test causing lost history regression.
4005
4006         * WebHistoryItem.cpp:
4007         (WebHistoryItem::hasURLString): isEmpty returns true if there is NO url, not if there is one.
4008
4009 2007-02-02  Alice Liu  <alice.liu@apple.com>
4010
4011         Reviewed by Maciej.
4012
4013         Fixed <rdar://4956286> Find: Deleting all text in the Find banner search field should clear the page's selection
4014
4015         * Interfaces/IWebView.idl:
4016         * WebView.cpp:
4017         (WebView::clearSelection):
4018         * WebView.h:
4019             Added a clearSelection function to webview so the findbanner can call it. 
4020
4021 2007-02-02  Adam Roben  <aroben@apple.com>
4022
4023         Reviewed by Anders.
4024
4025         Fix a crash when running the PLT.
4026
4027         * WebView.cpp:
4028         (WebView::initWithFrame):
4029             Added assertions to make catching this easier.
4030
4031 2007-02-01  Ada Chan  <adachan@apple.com>
4032
4033         Reviewed by Anders.
4034         
4035         Forgot to assign document to 0 in case of failure in WebView::mainFrameDocument().
4036
4037         * WebView.cpp:
4038         (WebView::mainFrameDocument):
4039
4040 2007-02-01  Ada Chan  <adachan@apple.com>
4041
4042         Reviewed by Steve, Geoff.
4043         
4044         <rdar://4969341> Regression: crash: when Resetting Safari
4045         <rdar://4953390> Closing my two open boomer windows produced a crash
4046         Fixed crash when closing second window and doing the close 
4047         all safari window option in Reset Safari.
4048
4049         * WebFrame.cpp:
4050         WebFramePrivate has a pointer to frameView but does not hold a reference
4051         to it.  The frame holds a ref to the frameView anyway, so it's safest to get
4052         the frameView through the frame.  The crash happened because frame already has
4053         cleared out its frameView but WebFrame was still accessing the old stale frameView
4054         through that data member in WebFramePrivate.
4055         (WebFrame::WebFramePrivate::m_policyFunction):
4056         (WebFrame::WebFramePrivate::frameView):
4057         (WebFrame::initWithWebFrameView):
4058         (WebFrame::layoutIfNeeded):
4059         (WebFrame::hasFrameView):
4060         * WebView.cpp:
4061         (WebView::paintIntoBackingStore): bail if frameView is null.
4062         (WebView::setHostWindow): don't set the view window's parent to 0.
4063         It'll end up creating a standalone window.
4064
4065 2007-02-01  Anders Carlsson  <acarlsson@apple.com>
4066
4067         Reviewed by Adam.
4068
4069         <rdar://problem/4969348>
4070         REGRESSION: Crash loading pdf
4071         
4072         * WebView.cpp:
4073         (WebView::canShowMIMEType):
4074         Return true if the MIME type can be handled by a plug-in.
4075
4076 2007-02-01  Adam Roben  <aroben@apple.com>
4077
4078         Reviewed by Steve.
4079
4080         Fix <rdar://problem/4849601> Implement printing of individual subframes
4081
4082         This just moves some functions from IWebViewPrivate to IWebFramePrivate.
4083
4084         * Interfaces/IWebFramePrivate.idl: Added declarations.
4085         * Interfaces/IWebViewPrivate.idl: Removed declarations.
4086         * WebFrame.cpp: Added functions from WebView.cpp.
4087         (WebFrame::computePageRects):
4088         (WebFrame::getPrintedPageCount):
4089         (WebFrame::spoolPages):
4090         * WebFrame.h: Added declarations.
4091         * WebView.cpp: Moved functions to WebFrame.cpp.
4092         * WebView.h: Removed declarations.
4093
4094 2007-01-31  Ada Chan  <adachan@apple.com>
4095
4096         Reviewed by Adam.
4097         
4098         Adam and I found a missing retain on WebFrame::setUpPolicyListener().  The mac
4099         code returns a RefPtr which retains it, but we are returning the raw pointer.
4100         Changed the code to return a COMPtr.  Without this change, loading bogus urls
4101         will crash.
4102
4103         * WebFrame.cpp:
4104         (WebFrame::dispatchWillSubmitForm):
4105         (WebFrame::setUpPolicyListener):
4106         (WebFrame::dispatchDecidePolicyForMIMEType):
4107         (WebFrame::dispatchDecidePolicyForNewWindowAction):
4108         (WebFrame::dispatchDecidePolicyForNavigationAction):
4109         * WebFrame.h:
4110
4111 2007-01-31  Ada Chan  <adachan@apple.com>
4112
4113         Reviewed by Anders.
4114         
4115         Implement WebView::mainFrameDocument.
4116
4117         * WebView.cpp:
4118         (WebView::mainFrameDocument):
4119
4120 2007-01-31  Steve Falkenburg  <sfalken@apple.com>
4121
4122         Reviewed by Ada.
4123         
4124         Fixes to BSTR handling required for username/password autofill.
4125
4126         * WebURLProtectionSpace.cpp:
4127         (WebURLProtectionSpace::authenticationMethod): Return BSTRs instead of bare LPCTSTRs
4128         (coreScheme): Compare against BSTRs
4129         (WebURLProtectionSpace::initWithHost): Compare against BSTRs
4130         (WebURLProtectionSpace::protocol): Return BSTRs instead of bare LPCTSTRs
4131
4132 2007-01-30  Brady Eidson  <beidson@apple.com>
4133
4134         Patch by Anders
4135         Reviewed and landed by Brady
4136
4137         Fixes <rdar://problem/4889160>
4138         If there's no backing store bitmap, don't try to update it!
4139         
4140         * WebView.cpp:
4141         (WebView::updateBackingStore):
4142
4143 2007-01-30  Steve Falkenburg  <sfalken@apple.com>
4144
4145         Reviewed by Lou.
4146
4147         Checkpoint of <rdar://problem/4712459> Account/Password forms autofill
4148
4149         Implemented dependencies in WebKit for account/password autofill.
4150
4151         * DOMCoreClasses.cpp:
4152         (DOMElement::isEqual): Fixed crash if other ele is 0
4153         (DOMElement::isFocused):  Added
4154         * DOMCoreClasses.h:
4155         * DOMHTMLClasses.cpp:
4156         (DOMHTMLCollection::DOMHTMLCollection): Added
4157         (DOMHTMLCollection::createInstance): Added
4158         (DOMHTMLCollection::length): Implemented
4159         (DOMHTMLCollection::item): Implemented
4160         (DOMHTMLDocument::forms): Implemented
4161         * DOMHTMLClasses.h:
4162         * Interfaces/DOMPrivate.idl: Added isFocused
4163         * Interfaces/WebKit.idl: Added WebURLProtectionSpace
4164         * WebKitClassFactory.cpp:
4165         (WebKitClassFactory::CreateInstance): Added CLSID_WebURLProtectionSpace
4166         * WebKitDLL.cpp:
4167         (DllGetClassObject): Added CLSID_WebURLProtectionSpace
4168         * WebURLAuthenticationChallenge.cpp:
4169         (WebURLAuthenticationChallenge::initWithProtectionSpace): Use CLSID_WebURLProtectionSpace instead of IID_WebURLProtectionSpace
4170         * WebURLProtectionSpace.cpp:
4171         (WebURLProtectionSpace::QueryInterface): Use CLSID_WebURLProtectionSpace instead of IID_WebURLProtectionSpace
4172         * WebURLProtectionSpace.h:
4173
4174 2007-01-29  Brady Eidson  <beidson@apple.com>
4175
4176         Reviewed by Oliver
4177
4178         * WebDownload.cpp:
4179         (WebDownload::init): Use RetainPtr.adopt(), and create the CFURLDownload after we store the request
4180         (WebDownload::initWithRequest): Ditto
4181
4182 2007-01-29  Maciej Stachowiak  <mjs@apple.com>
4183
4184         Reviewed by Adam & Steve.
4185         
4186         - hook up new cross-platform data-loading code
4187         - fixed <rdar://4910106> - Need to support loadData and loadHTMLString
4188
4189         * WebFrame.cpp:
4190         (WebFrame::loadData): add a SharedBuffer overload, and implement
4191         IStream* version using that.
4192         (WebFrame::loadHTMLString): implement using loadData
4193         * WebFrame.h: prototype new method
4194
4195 2007-01-29  Adele Peterson  <adele@apple.com>
4196
4197         Reviewed by Darin. 
4198
4199         * WebEditorClient.cpp:
4200         (WebEditorClient::handleKeyPress): Removed EventTargetNode paramenter. 
4201         * WebEditorClient.h:
4202
4203 2007-01-29  Anders Carlsson  <acarlsson@apple.com>
4204
4205         Reviewed by Oliver.
4206
4207         <rdar://problem/4892067>
4208         DnD a font file in Boomer locks it up.
4209
4210         Create a drop target helper so we get snazzy drag images.
4211
4212         * WebView.cpp:
4213         (WebView::WebView):
4214         (WebView::DragEnter):
4215         (WebView::DragOver):
4216         (WebView::DragLeave):
4217         (WebView::Drop):
4218         * WebView.h:
4219
4220 2007-01-29  Oliver Hunt  <oliver@apple.com>
4221
4222         Reviewed by Adam.
4223
4224         Basic implementation of new dragclient method
4225
4226         * WebDragClient.cpp:
4227         (WebDragClient::dragSourceActionMaskForPoint):
4228         * WebDragClient.h:
4229
4230 2007-01-29  Maciej Stachowiak  <mjs@apple.com>
4231
4232         - fix build
4233
4234         * WebFrame.h:
4235
4236 2007-01-29  Maciej Stachowiak  <mjs@apple.com>
4237
4238         Reviewed by Mark.
4239         
4240         <rdar://problem/4910106> Need to support loadData and loadHTMLString
4241         
4242         I added the underlying support, but did not turn on the new cross-platform versions yet as I've
4243         not had sufficient time to test.
4244
4245         * WebDocumentLoader.cpp:
4246         (WebDocumentLoader::WebDocumentLoader):
4247         * WebDocumentLoader.h:
4248         * WebFrame.cpp:
4249         (WebFrame::createDocumentLoader):
4250         * WebFrame.h:
4251
4252 2007-01-27  Adam Roben  <aroben@apple.com>
4253
4254         Reviewed by Oliver.
4255
4256         Fix <rdar://problem/4944863> WebError::localizedDescription needs to be implemented.
4257
4258         This was so simple, I don't know why I didn't do this before.
4259
4260         * WebError.cpp:
4261         (WebError::localizedDescription): Implemented.
4262
4263 2007-01-26  Steve Falkenburg  <sfalken@apple.com>
4264
4265         B&I build fix
4266
4267         * WebKit.vcproj/WebKit.vcproj:
4268
4269 2007-01-26  Adam Roben  <aroben@apple.com>
4270
4271         Reviewed by Oliver.
4272
4273         Engine side of fix for <rdar://problem/4958371> Boomer leaks WebViews
4274
4275         The problem was that we were calling RevokeDragDrop after our view
4276         window had been destroyed, RevokeDragDrop wouldn't call Release on us.
4277
4278         Fix <rdar://problem/4958382> WebViews leak their HWND if no host window is set
4279
4280         * WebView.cpp:
4281         (WebView::~WebView): Call DestroyWindow if our view window hasn't been
4282         destroyed yet.
4283         (WebViewWndProc): Added an ASSERT, and added call to revokeDragDrop
4284         when handling WM_DESTROY.
4285         (WebView::initWithFrame): Call our own registerDragDrop.
4286         (WebView::close): Removed call to RevokeDragDrop. At this point our
4287         window has been destroyed, so it's too late to do this.
4288         (WebView::registerDragDrop): Added.
4289         (WebView::revokeDragDrop): Added.
4290         * WebView.h: Added declarations.
4291
4292 2007-01-26  Anders Carlsson  <acarlsson@apple.com>
4293
4294         Reviewed by Adam.
4295         
4296         * WebKitDLL.cpp:
4297         Add WebURLRequest entries to the big array.
4298
4299 2007-01-26  Anders Carlsson  <acarlsson@apple.com>
4300
4301         Reviewed by Adam.
4302
4303         <rdar://problem/4923845>
4304         Implement IWebURLRequest.
4305         
4306         * Interfaces/WebKit.idl:
4307         * WebKitClassFactory.cpp:
4308         (WebKitClassFactory::CreateInstance):
4309         * WebKitDLL.cpp:
4310         (DllGetClassObject):
4311         * WebMutableURLRequest.cpp:
4312         (WebMutableURLRequest::WebMutableURLRequest):
4313         (WebMutableURLRequest::createInstance):
4314         (WebMutableURLRequest::createImmutableInstance):