1 2008-02-27 Adam Roben <aroben@apple.com>
3 Add WebPreferences::setValueForKey
5 This is just a small refactoring of some duplicated logic into a
11 (WebPreferences::setValueForKey): Added.
12 (WebPreferences::setStringValue): Call setValueForKey.
13 (WebPreferences::setIntegerValue): Ditto.
14 (WebPreferences::setBoolValue): Ditto.
15 (WebPreferences::setLongLongValue): Ditto.
18 2008-02-27 Adam Roben <aroben@apple.com>
20 Remove WebPreferences' static members
22 s_defaultSettings is now a file-level static, and
23 s_standardPreferences has been removed completely (it wasn't being
29 (WebPreferences::initializeDefaultSettings):
30 (WebPreferences::valueForKey):
31 (WebPreferences::migrateDefaultSettingsFromSafari3Beta):
32 (WebPreferences::removeValuesMatchingDefaultSettings):
35 2008-02-29 Steve Falkenburg <sfalken@apple.com>
37 Don't free the VARIANT passed into Write, since it is an input parameter owned by the caller.
38 Found via code inspection.
42 * WebActionPropertyBag.cpp:
43 (WebActionPropertyBag::Write):
44 * WebElementPropertyBag.cpp:
45 (WebElementPropertyBag::Write):
47 2008-02-27 Matt Lilek <webkit@mattlilek.com>
49 Reviewed by Adam Roben.
51 Bug 14348: Messing up the inspector by dragging an URL into it
52 http://bugs.webkit.org/show_bug.cgi?id=14348
53 <rdar://problem/5283620> and <rdar://problem/5712808>
55 Add a new class to handle the Inspector's delegate calls.
57 * WebCoreSupport/WebInspectorClient.cpp:
58 (WebInspectorClient::createPage):
59 * WebCoreSupport/WebInspectorDelegate.cpp: Added.
61 (WebInspectorDelegate::createInstance):
62 (WebInspectorDelegate::AddRef):
63 (WebInspectorDelegate::Release):
64 (WebInspectorDelegate::dragDestinationActionMaskForDraggingInfo):
65 * WebCoreSupport/WebInspectorDelegate.h: Added.
66 (WebInspectorDelegate::QueryInterface):
67 (WebInspectorDelegate::createWebViewWithRequest):
68 (WebInspectorDelegate::webViewShow):
69 (WebInspectorDelegate::webViewClose):
70 (WebInspectorDelegate::webViewFocus):
71 (WebInspectorDelegate::webViewUnfocus):
72 (WebInspectorDelegate::webViewFirstResponder):
73 (WebInspectorDelegate::makeFirstResponder):
74 (WebInspectorDelegate::setStatusText):
75 (WebInspectorDelegate::webViewStatusText):
76 (WebInspectorDelegate::webViewAreToolbarsVisible):
77 (WebInspectorDelegate::setToolbarsVisible):
78 (WebInspectorDelegate::webViewIsStatusBarVisible):
79 (WebInspectorDelegate::setStatusBarVisible):
80 (WebInspectorDelegate::webViewIsResizable):
81 (WebInspectorDelegate::setResizable):
82 (WebInspectorDelegate::setFrame):
83 (WebInspectorDelegate::webViewFrame):
84 (WebInspectorDelegate::setContentRect):
85 (WebInspectorDelegate::webViewContentRect):
86 (WebInspectorDelegate::runJavaScriptAlertPanelWithMessage):
87 (WebInspectorDelegate::runJavaScriptConfirmPanelWithMessage):
88 (WebInspectorDelegate::runJavaScriptTextInputPanelWithPrompt):
89 (WebInspectorDelegate::runBeforeUnloadConfirmPanelWithMessage):
90 (WebInspectorDelegate::runOpenPanelForFileButtonWithResultListener):
91 (WebInspectorDelegate::mouseDidMoveOverElement):
92 (WebInspectorDelegate::contextMenuItemsForElement):
93 (WebInspectorDelegate::validateUserInterfaceItem):
94 (WebInspectorDelegate::shouldPerformAction):
95 (WebInspectorDelegate::willPerformDragDestinationAction):
96 (WebInspectorDelegate::dragSourceActionMaskForPoint):
97 (WebInspectorDelegate::willPerformDragSourceAction):
98 (WebInspectorDelegate::contextMenuItemSelected):
99 (WebInspectorDelegate::hasCustomMenuImplementation):
100 (WebInspectorDelegate::trackCustomPopupMenu):
101 (WebInspectorDelegate::measureCustomMenuItem):
102 (WebInspectorDelegate::drawCustomMenuItem):
103 (WebInspectorDelegate::addCustomMenuDrawingData):
104 (WebInspectorDelegate::cleanUpCustomMenuDrawingData):
105 (WebInspectorDelegate::canTakeFocus):
106 (WebInspectorDelegate::takeFocus):
107 (WebInspectorDelegate::registerUndoWithTarget):
108 (WebInspectorDelegate::removeAllActionsWithTarget):
109 (WebInspectorDelegate::setActionTitle):
110 (WebInspectorDelegate::undo):
111 (WebInspectorDelegate::redo):
112 (WebInspectorDelegate::canUndo):
113 (WebInspectorDelegate::canRedo):
114 * WebKit.vcproj/WebKit.vcproj:
116 2008-02-26 Adam Roben <aroben@apple.com>
118 Move ResourceLoadDelegate methods to WebFrameLoaderClient
120 Changed all methods to use early returns where possible and COMPtr's
121 AdoptCOM/Query constructors.
125 * WebCoreSupport/WebFrameLoaderClient.cpp:
126 (WebFrameLoaderClient::assignIdentifierToInitialRequest):
127 (WebFrameLoaderClient::dispatchDidReceiveAuthenticationChallenge):
128 (WebFrameLoaderClient::dispatchDidCancelAuthenticationChallenge):
129 (WebFrameLoaderClient::dispatchWillSendRequest):
130 (WebFrameLoaderClient::dispatchDidReceiveResponse):
131 (WebFrameLoaderClient::dispatchDidReceiveContentLength):
132 (WebFrameLoaderClient::dispatchDidFinishLoading):
133 (WebFrameLoaderClient::dispatchDidFailLoading):
134 * WebCoreSupport/WebFrameLoaderClient.h:
138 2008-02-26 Adam Roben <aroben@apple.com>
140 Move two more methods to WebFrameLoaderClient
144 * WebCoreSupport/WebFrameLoaderClient.cpp:
146 (WebFrameLoaderClient::dispatchCreatePage): Changed nested ifs to
147 early returns, and changed to use the COMPtr Query constructor.
148 (WebFrameLoaderClient::dispatchDidLoadMainResource): Added an early
149 return, and changed to use getWebDataSource.
150 * WebCoreSupport/WebFrameLoaderClient.h:
154 2008-02-26 Adam Roben <aroben@apple.com>
156 Get rid of IID_WebFrame
160 * WebFrame.cpp: Removed IID_WebFrame definition.
161 (WebFrame::QueryInterface): Use __uuidof(WebFrame) instead of
163 (WebFrame::isDescendantOfFrame): Use COMPtr's Query constructor
164 instead of a manual QueryInterface.
165 * WebFrame.h: Removed IID_WebFrame declaration, gave WebFrame a
168 2008-02-26 Adam Roben <aroben@apple.com>
170 Move WebHistory-related methods to WebFrameLoaderClient
174 * WebCoreSupport/WebFrameLoaderClient.cpp:
175 (WebFrameLoaderClient::updateGlobalHistory):
176 (WebFrameLoaderClient::shouldGoToHistoryItem):
177 (WebFrameLoaderClient::setTitle): Changed some nested ifs into early
179 (WebFrameLoaderClient::webHistory): Changed to return a COMPtr to
180 make the reference management foolproof.
181 * WebCoreSupport/WebFrameLoaderClient.h:
185 2008-02-26 Adam Roben <aroben@apple.com>
187 Move cache-related methods to WebFrameLoaderClient
191 * WebCoreSupport/WebFrameLoaderClient.cpp:
192 (getWebDataSource): Moved to the top of the file.
193 (WebFrameLoaderClient::savePlatformDataToCachedPage):
194 (WebFrameLoaderClient::transitionToCommittedForNewPage):
195 (WebFrameLoaderClient::canCachePage):
196 * WebCoreSupport/WebFrameLoaderClient.h:
200 2008-02-25 Adam Roben <aroben@apple.com>
202 Move plugin-related methods to WebFrameLoaderClient
206 * WebCoreSupport/WebFrameLoaderClient.cpp:
207 (WebFrameLoaderClient::WebFrameLoaderClient):
208 (WebFrameLoaderClient::setMainDocumentError):
209 (WebFrameLoaderClient::committedLoad): Added some early returns.
210 (WebFrameLoaderClient::receivedData):
211 (WebFrameLoaderClient::finishedLoading): Ditto.
213 (WebFrameLoaderClient::createPlugin):
214 * WebCoreSupport/WebFrameLoaderClient.h:
216 (WebFrame::WebFramePrivate::WebFramePrivate):
219 2008-02-25 Adam Roben <aroben@apple.com>
221 Move createFrame to WebFrameLoaderClient
225 * WebCoreSupport/WebFrameLoaderClient.cpp:
226 (WebFrameLoaderClient::createFrame):
227 (WebFrameLoaderClient::loadURLIntoChild):
228 * WebCoreSupport/WebFrameLoaderClient.h:
232 2008-02-25 Adam Roben <aroben@apple.com>
234 Move progress-related methods to WebFrameLoaderClient
238 * WebCoreSupport/WebFrameLoaderClient.cpp:
239 (WebFrameLoaderClient::postProgressStartedNotification):
240 (WebFrameLoaderClient::postProgressEstimateChangedNotification):
241 (WebFrameLoaderClient::postProgressFinishedNotification):
242 * WebCoreSupport/WebFrameLoaderClient.h:
246 2008-02-25 Adam Roben <aroben@apple.com>
248 Remove WebFrame::detachedFromParent1
250 This method was removed from FrameLoaderClient in r19042, but was
251 never removed from WebFrame.
258 2008-02-23 Adam Roben <aroben@apple.com>
260 Move many dispatch methods to WebFrameLoaderClient
264 * WebCoreSupport/WebFrameLoaderClient.cpp:
265 (WebFrameLoaderClient::dispatchDidHandleOnloadEvents):
266 (WebFrameLoaderClient::dispatchDidReceiveServerRedirectForProvisionalLoad):
267 (WebFrameLoaderClient::dispatchDidCancelClientRedirect):
268 (WebFrameLoaderClient::dispatchWillPerformClientRedirect):
269 (WebFrameLoaderClient::dispatchDidChangeLocationWithinPage):
270 (WebFrameLoaderClient::dispatchWillClose):
271 (WebFrameLoaderClient::dispatchDidReceiveIcon):
272 (WebFrameLoaderClient::dispatchDidStartProvisionalLoad):
273 (WebFrameLoaderClient::dispatchDidReceiveTitle):
274 (WebFrameLoaderClient::dispatchDidCommitLoad):
275 (WebFrameLoaderClient::dispatchDidFinishDocumentLoad):
276 (WebFrameLoaderClient::dispatchDidFinishLoad):
277 (WebFrameLoaderClient::dispatchDidFirstLayout):
278 (WebFrameLoaderClient::dispatchShow):
279 * WebCoreSupport/WebFrameLoaderClient.h:
283 2008-02-23 Adam Roben <aroben@apple.com>
285 Move two more methods to WebFrameLoaderClient
289 * WebCoreSupport/WebFrameLoaderClient.cpp:
290 (WebFrameLoaderClient::hasFrameView):
291 (WebFrame::forceLayout):
292 * WebCoreSupport/WebFrameLoaderClient.h:
296 2008-02-24 Darin Adler <darin@apple.com>
300 - remove separate client calls for "standard" and "reload' history
303 (WebFrame::updateGlobalHistory):
306 2008-02-23 Brent Fulgham <bfulgham@gmail.com>
308 Not reviewed, build fix.
310 * WebIconDatabase.cpp:
313 2008-02-22 Adam Roben <aroben@apple.com>
315 Move hasWebView to WebFrameLoaderClient
317 I added an m_webFrame member to WebFrameLoaderClient. This is slightly
318 strange because WebFrame inherits from WebFrameLoaderClient, but this
319 member will be needed once we remove the inheritance, so we might as
320 well prepare for that now.
324 * WebCoreSupport/WebFrameLoaderClient.cpp:
325 (WebFrameLoaderClient::WebFrameLoaderClient): Changed to take a
327 (WebFrameLoaderClient::hasWebView): Moved here from WebFrame.cpp.
328 * WebCoreSupport/WebFrameLoaderClient.h: Added an m_webFrame
330 * WebFrame.cpp: Removed hasWebView.
331 (WebFrame::WebFrame): Updated for WebFrameLoaderClient constructor
335 2008-02-22 Adam Roben <aroben@apple.com>
337 Start to move FrameLoaderClient methods off WebFrame onto a separate class
339 WebFrame now inherits from a new WebFrameLoaderClient class, which
340 will gradually assume all FrameLoaderClient responsibilities. Once
341 that process is complete, WebFrame will no longer inherit from
342 WebFrameLoaderClient.
344 In this first patch, I've only moved createDocumentLoader up to the
345 WebFrameLoaderClient class.
349 * WebCoreSupport/WebFrameLoaderClient.cpp: Added.
350 (WebFrameLoaderClient::WebFrameLoaderClient):
351 (WebFrameLoaderClient::~WebFrameLoaderClient):
352 (WebFrameLoaderClient::createDocumentLoader): Moved here from
354 * WebCoreSupport/WebFrameLoaderClient.h: Added.
355 * WebFrame.cpp: Removed createDocumentLoader implementation.
356 * WebFrame.h: Changed to inherit from WebFrameLoaderClient.
357 * WebKit.vcproj/WebKit.vcproj: Added new files to the project.
359 2008-02-22 Adam Roben <aroben@apple.com>
361 Move FormValuesPropertyBag into its own files
365 * WebCoreSupport/FormValuesPropertyBag.cpp: Added.
366 (FormValuesPropertyBag::QueryInterface):
367 (FormValuesPropertyBag::AddRef):
368 (FormValuesPropertyBag::Release):
369 (FormValuesPropertyBag::Read):
370 (FormValuesPropertyBag::Write):
371 (FormValuesPropertyBag::CountProperties):
372 (FormValuesPropertyBag::GetPropertyInfo):
373 (FormValuesPropertyBag::LoadObject):
374 * WebCoreSupport/FormValuesPropertyBag.h: Added.
375 (FormValuesPropertyBag::FormValuesPropertyBag):
376 * WebFrame.cpp: Deleted FormValuesPropertyBag code.
377 * WebKit.vcproj/WebKit.vcproj: Added new files to the project.
379 2008-02-22 Adam Roben <aroben@apple.com>
381 Remove some unused WebFrame methods
383 FrameWinClient was deleted back in r22965, but these methods were
389 * WebFrame.h: Made one createFrame overload protected, since it's only
390 called internally by WebFrame.
392 2008-02-21 Adam Roben <aroben@apple.com>
394 Move Client implementations into a WebCoreSupport directory
398 * WebKit.vcproj/WebKit.vcproj: Updated file paths, and added
399 WebCoreSupport directory to the include path.
400 * WebCoreSupport/WebChromeClient.cpp: Renamed from WebKit/win/WebChromeClient.cpp.
401 * WebCoreSupport/WebChromeClient.h: Renamed from WebKit/win/WebChromeClient.h.
402 * WebCoreSupport/WebContextMenuClient.cpp: Renamed from WebKit/win/WebContextMenuClient.cpp.
403 * WebCoreSupport/WebContextMenuClient.h: Renamed from WebKit/win/WebContextMenuClient.h.
404 * WebCoreSupport/WebDragClient.cpp: Renamed from WebKit/win/WebDragClient.cpp.
405 * WebCoreSupport/WebDragClient.h: Renamed from WebKit/win/WebDragClient.h.
406 * WebCoreSupport/WebEditorClient.cpp: Renamed from WebKit/win/WebEditorClient.cpp.
407 * WebCoreSupport/WebEditorClient.h: Renamed from WebKit/win/WebEditorClient.h.
408 * WebCoreSupport/WebInspectorClient.cpp: Renamed from WebKit/win/WebInspectorClient.cpp.
409 * WebCoreSupport/WebInspectorClient.h: Renamed from WebKit/win/WebInspectorClient.h.
411 2008-02-20 Sam Weinig <sam@webkit.org>
413 Reviewed by Darin and Geoff.
415 - WebKit part of <rdar://problem/5754378> work around missing video on YouTube front page with a site-specific hack
418 (WebView::notifyPreferencesChanged): Added a call to Settings::setNeedsSiteSpecificQuirks.
419 (WebView::setAllowSiteSpecificHacks): Added a comment about the problem Darin noticed, where
420 after you disable the site-specific hacks they persist until you open a new window or tweak
421 some other preference.
423 2008-02-19 Darin Adler <darin@apple.com>
428 (WebFrame::renderTreeAsExternalRepresentation): Changed to use String instead
431 2008-02-18 Steve Falkenburg <sfalken@apple.com>
433 Make Drosera work on Vista.
435 Runtime type library registration on Vista requires use of two new call:
436 RegisterTypeLibraryForUser and UnRegisterTypeLibraryForUser, which write to
437 HKCU. LoadTypeLib[Ex] registers under HKLM, which fails under vista due to UAC.
442 (DllUnregisterServer): Call UnRegisterTypeLibraryForUser if available. Fix version number.
443 (DllRegisterServer): Call RegisterTypeLibraryForUser if available.
445 2008-02-18 Matt Lilek <webkit@mattlilek.com>
449 Remove FindSafari's Release configuration.
451 * WebKit.vcproj/WebKit.sln:
453 2008-02-16 Alexey Proskuryakov <ap@webkit.org>
457 http://bugs.webkit.org/show_bug.cgi?id=17397
458 <rdar://problem/5748245> REGRESSION (r30236-30336): Cannot backspace/enter in forms on Windows
460 * WebKit.vcproj/WebKit.vcproj: Add ENABLE_CROSS_DOCUMENT_MESSAGING definitions.
462 2008-02-15 Darin Adler <darin@apple.com>
466 - quick fix for a problem causing an assertion on launch
469 (WebFrame::loadData): Make an empty KURL even if the BSTR is null.
470 Later we might want to rethink this.
472 2008-02-14 Darin Adler <darin@apple.com>
474 - updated for WebCore KURL changes
476 * MarshallingHelpers.cpp:
477 (MarshallingHelpers::BSTRToKURL): Removed deprecatedString call.
478 (MarshallingHelpers::KURLToBSTR): Tweaked for efficiency.
479 * WebContextMenuClient.cpp:
480 (WebContextMenuClient::searchWithGoogle): Updated for KURL changes.
482 (WebDataSource::unreachableURL): Ditto.
484 (WebDownload::init): Ditto.
485 (WebDownload::initWithRequest): Ditto.
487 (WebFrame::loadData): Ditto.
488 (WebFrame::loadURLIntoChild): Ditto.
489 (WebFrame::objectContentType): Ditto.
491 (WebResource::initWithData): Ditto.
492 * WebURLResponse.cpp:
493 (WebURLResponse::createInstance): Ditto.
494 (WebURLResponse::initWithURL): Ditto.
496 (WebView::userAgentForURL): Ditto.
497 (WebView::copyURL): Ditto.
498 (WebView::notifyPreferencesChanged): Ditto.
500 2008-02-14 Alexey Proskuryakov <ap@webkit.org>
502 * WebChromeClient.cpp: (WebChromeClient::exceededDatabaseQuota): Forgot to re-apply review comments to
503 the previous check-in, fixing.
505 2008-02-14 Alexey Proskuryakov <ap@webkit.org>
507 Reviewed by Adam Roben.
509 http://bugs.webkit.org/show_bug.cgi?id=17207
510 Database example doesn't work (requires not-yet-released Safari)
512 * WebChromeClient.cpp:
513 (WebChromeClient::exceededDatabaseQuota): Check Safari version, and allow 5 megabytes of storage
516 2008-02-13 Ada Chan <adachan@apple.com>
518 <rdar://problem/5740656> Leak in postDidAddIconNotification in WebIconDatabase
522 * WebIconDatabase.cpp:
523 (postDidAddIconNotification): Need to adopt the newly created instance of CFDictionaryPropertyBag,
524 which already has a ref count of 1.
526 2008-02-13 Rodney Dawes <dobey@wayofthemonkey.com>
528 Fix Bug 17220: Illogical dependency between PluginView and
531 <http://bugs.webkit.org/show_bug.cgi?id=17220>
533 Reviewed by Adam and Darin.
535 Update for the rename of PluginDatabase::createPluginView
536 to PluginView::create
540 2008-02-13 Adam Roben <aroben@apple.com>
544 * Interfaces/WebKit.idl: Create the typelib version symbol ourselves.
546 2008-02-12 Steve Falkenburg <sfalken@apple.com>
548 Use a precompiled header to build WebKit.
552 * WebKit.vcproj/WebKit.vcproj:
553 * WebKitPrefix.cpp: Added.
554 * WebKitPrefix.h: Added.
556 2008-02-12 Steve Falkenburg <sfalken@apple.com>
558 Changes to support merged MIDL output.
560 All COM interfaces are now generated to WebKit.h.
562 Reviewed by Sam, Ada.
566 * DOMEventsClasses.h:
568 * DefaultDownloadDelegate.h:
569 * DefaultPolicyDelegate.cpp:
570 * DefaultPolicyDelegate.h:
572 * Interfaces/DOMCSS.idl:
573 * Interfaces/DOMCore.idl:
574 * Interfaces/DOMEvents.idl:
575 * Interfaces/DOMExtensions.idl:
576 * Interfaces/DOMHTML.idl:
577 * Interfaces/DOMPrivate.idl:
578 * Interfaces/DOMRange.idl:
579 * Interfaces/DOMWindow.idl:
580 * Interfaces/IGEN_DOMObject.idl:
581 * Interfaces/IWebArchive.idl:
582 * Interfaces/IWebBackForwardList.idl:
583 * Interfaces/IWebBackForwardListPrivate.idl:
584 * Interfaces/IWebCache.idl:
585 * Interfaces/IWebDataSource.idl:
586 * Interfaces/IWebDatabaseManager.idl:
587 * Interfaces/IWebDocument.idl:
588 * Interfaces/IWebDownload.idl:
589 * Interfaces/IWebEditingDelegate.idl:
590 * Interfaces/IWebError.idl:
591 * Interfaces/IWebErrorPrivate.idl:
592 * Interfaces/IWebFormDelegate.idl:
593 * Interfaces/IWebFrame.idl:
594 * Interfaces/IWebFrameLoadDelegate.idl:
595 * Interfaces/IWebFrameLoadDelegatePrivate.idl:
596 * Interfaces/IWebFramePrivate.idl:
597 * Interfaces/IWebFrameView.idl:
598 * Interfaces/IWebHTMLRepresentation.idl:
599 * Interfaces/IWebHTTPURLResponse.idl:
600 * Interfaces/IWebHistory.idl:
601 * Interfaces/IWebHistoryItem.idl:
602 * Interfaces/IWebHistoryItemPrivate.idl:
603 * Interfaces/IWebIconDatabase.idl:
604 * Interfaces/IWebInspector.idl:
605 * Interfaces/IWebJavaScriptCollector.idl:
606 * Interfaces/IWebKitStatistics.idl:
607 * Interfaces/IWebMutableURLRequest.idl:
608 * Interfaces/IWebMutableURLRequestPrivate.idl:
609 * Interfaces/IWebNotification.idl:
610 * Interfaces/IWebNotificationCenter.idl:
611 * Interfaces/IWebNotificationObserver.idl:
612 * Interfaces/IWebPolicyDelegate.idl:
613 * Interfaces/IWebPreferences.idl:
614 * Interfaces/IWebPreferencesPrivate.idl:
615 * Interfaces/IWebResource.idl:
616 * Interfaces/IWebResourceLoadDelegate.idl:
617 * Interfaces/IWebResourceLoadDelegatePrivate.idl:
618 * Interfaces/IWebScriptCallFrame.idl:
619 * Interfaces/IWebScriptDebugListener.idl:
620 * Interfaces/IWebScriptDebugServer.idl:
621 * Interfaces/IWebScriptObject.idl:
622 * Interfaces/IWebScriptScope.idl:
623 * Interfaces/IWebScrollBarDelegatePrivate.idl:
624 * Interfaces/IWebScrollBarPrivate.idl:
625 * Interfaces/IWebSecurityOrigin.idl:
626 * Interfaces/IWebTextRenderer.idl:
627 * Interfaces/IWebUIDelegate.idl:
628 * Interfaces/IWebUIDelegatePrivate.idl:
629 * Interfaces/IWebURLAuthenticationChallenge.idl:
630 * Interfaces/IWebURLRequest.idl:
631 * Interfaces/IWebURLResponse.idl:
632 * Interfaces/IWebURLResponsePrivate.idl:
633 * Interfaces/IWebUndoManager.idl:
634 * Interfaces/IWebUndoTarget.idl:
635 * Interfaces/IWebView.idl:
636 * Interfaces/IWebViewPrivate.idl:
637 * Interfaces/WebKit.idl:
638 * WebActionPropertyBag.cpp:
639 * WebBackForwardList.h:
643 * WebDatabaseManager.h:
645 * WebEditorClient.cpp:
650 * WebFramePolicyListener.h:
651 * WebHTMLRepresentation.cpp:
652 * WebHTMLRepresentation.h:
658 * WebJavaScriptCollector.h:
659 * WebKit.vcproj/Interfaces.vcproj:
660 * WebKit.vcproj/WebKitGUID.vcproj:
662 * WebKitStatistics.h:
663 * WebMutableURLRequest.cpp:
664 * WebMutableURLRequest.h:
666 * WebNotificationCenter.h:
669 * WebScriptCallFrame.h:
670 * WebScriptDebugServer.cpp:
671 * WebScriptDebugServer.h:
672 * WebScriptDebugger.cpp:
673 * WebScriptDebugger.h:
676 * WebSecurityOrigin.h:
678 * WebURLAuthenticationChallenge.h:
679 * WebURLAuthenticationChallengeSender.h:
680 * WebURLCredential.h:
681 * WebURLProtectionSpace.h:
686 2008-02-12 Anders Carlsson <andersca@apple.com>
690 Implement imageTitle.
692 * WebCoreLocalizedStrings.cpp:
693 (WebCore::imageTitle):
695 2008-02-12 Anders Carlsson <andersca@apple.com>
699 * WebCoreLocalizedStrings.cpp:
700 (WebCore::imageTitle):
704 2008-02-07 Ada Chan <adachan@apple.com>
706 <rdar://problem/5292433> certificate authentication support broken in Safari 3.0
707 Added mechanism to communicate client certificate info back to CFNetwork.
711 * Interfaces/IWebError.idl: Added new WebURLErrorClientCertificateRequired error.
712 * Interfaces/IWebMutableURLRequestPrivate.idl: Added. Added method to set client
713 certificate info on the request.
714 * WebKit.vcproj/Interfaces.vcproj: Added new idl.
715 * WebKit.vcproj/WebKit.vcproj: Link crypt32.lib
716 * WebKit.vcproj/WebKitGUID.vcproj:
717 * WebMutableURLRequest.cpp:
718 (WebMutableURLRequest::QueryInterface): Implements IWebMutableURLRequestPrivate.
719 (deallocCertContext): Free certificate context.
720 (copyCert): Duplicate the certificate context and returns it in a CFDataRef.
721 (WebMutableURLRequest::setClientCertificate):
722 * WebMutableURLRequest.h:
724 2008-02-05 Rodney Dawes <dobey@wayofthemonkey.com>
726 Reviewed by Anders Carlsson.
728 Part one of http://bugs.webkit.org/show_bug.cgi?id=16924.
729 Shared PluginDatabase, PluginInfoStore and PluginPackage implementations.
731 Track WebCore renames.
734 (WebFrame::createPlugin):
735 (WebFrame::redirectDataToPlugin):
736 (WebFrame::createJavaAppletWidget):
737 (WebFrame::objectContentType):
740 (WebView::canShowMIMEType):
741 (WebView::addAdditionalPluginPath):
743 2008-02-05 Alexey Proskuryakov <ap@webkit.org>
747 http://bugs.webkit.org/show_bug.cgi?id=15248
748 <rdar://problem/5497032> Can not enter accented characters using alt-numeric keypad (take two)
750 * WebView.cpp: (WebViewWndProc): KeyUp messages need to be translated, too.
752 2008-02-01 Darin Adler <darin@apple.com>
754 - fix <rdar://problem/5680469> Each database worker thread takes a JSLock,
755 which slows down all JavaScript execution until the thread terminates
757 * WebIconDatabase.cpp:
758 (WebIconDatabase::scheduleNotificationDelivery): Updated for new callOnMainThread.
759 (WebIconDatabase::deliverNotifications): Ditto.
760 * WebIconDatabase.h: Ditto.
762 2008-01-31 Adam Roben <aroben@apple.com>
764 Fix <rdar://5713172> Focus lost from Gmail message body after toggling
767 This regressed in r29583. Prior to r29583, the code path that resulted
768 in calling focusController->setFocusedFrame(0) was never getting hit.
769 r29583 changed the code to adhere to the comment above the code and
770 actually call setFocusedFrame(0) when losing focus to another part of
771 the window. It turns out this is wrong behavior (and not what
772 WebKit/mac does). The only time we should clear the focused frame is
773 when we tab out of the WebView, and that's already taken care of by
774 FocusController::advanceFocus. The code to clear the focused frame in
775 WebView was written before FocusController::advanceFocus, so it was
776 correct at one point but no longer is.
778 We now never call setFocusedFrame(0) when the WebView receives a
779 WM_KILLFOCUS message. Instead we just call setFocused(false) on the
780 focused frame so that blur events will be sent. This matches what
783 Reviewed by Darin and Adele.
786 (WebViewWndProc): Also reworded a couple of comments to make them
789 2008-01-31 Adam Roben <aroben@apple.com>
791 Let WebCore take care of the highlight drawing entirely
795 * WebInspectorClient.cpp:
796 (WebInspectorClient::highlight): We now just show our highlight
797 window and let WebCore figure out what/where to paint. Once all ports
798 follow suit the Node* parameter to this method should be removed
799 entirely, and the name should probably change to
800 updateAndShowHighlight or something similar.
801 * WebNodeHighlight.cpp: Renamed m_webView to m_inspectedWebViewWindow.
802 (WebNodeHighlight::WebNodeHighlight): Now takes a WebView* parameter.
803 (WebNodeHighlight::show): Renamed from highlight(). Now gets the
804 WebView's HWND. Updated for member rename/removal.
805 (WebNodeHighlight::updateWindow): Updated for member rename and for
806 InspectorController changes.
807 * WebNodeHighlight.h: Added m_inspectedWebView member, removed m_rect
808 member, renamed highlight(Node*) -> show().
810 2008-01-31 Adam Roben <aroben@apple.com>
812 Move node highlight drawing code to WebCore
816 * WebNodeHighlight.cpp:
817 (WebNodeHighlight::updateWindow): Call into WebCore to do the node
820 2008-01-29 Adam Roben <aroben@apple.com>
822 Fix a crash when opening the Inspector
826 * WebInspectorClient.cpp:
827 (WebInspectorClient::createPage): Call
828 WebPreferences::initWithIdentifier so our custom WebPreferences will
829 have all its members initialized.
831 2008-01-29 Adam Roben <aroben@apple.com>
833 Fix Bug 16786: "Display images when page opens" preference affects
836 <http://bugs.webkit.org/show_bug.cgi?id=16786>
839 Reviewed by Anders and Darin.
841 * WebInspectorClient.cpp:
842 (WebInspectorClient::createPage): Create our own custom WebPreferences
843 so that we won't be affected by global preference changes. This
844 matches what Mac does.
846 2008-01-29 Adam Roben <aroben@apple.com>
848 Fix <rdar://5713302> Web Inspector on Windows is not using the
853 * WebInspectorClient.cpp:
854 (getWebKitBundle): Added.
855 (WebInspectorClient::createPage): Call getWebKitBundle.
856 (WebInspectorClient::localizedStringsURL): Implemented.
858 2008-01-29 Alexey Proskuryakov <ap@webkit.org>
862 <rdar://problem/5710692> All storage tests fail/crash
864 * WebChromeClient.cpp: (WebChromeClient::exceededDatabaseQuota): Clients that do not implement
865 database quota callbacks should have no database support - but not crash.
867 2008-01-26 Steve Falkenburg <sfalken@apple.com>
869 <rdar://problem/5707607> REGRESSION: I hear a beep when selecting Alt-enter in address or search fields
874 (WebView::keyDown): Allow alt-return to be marked as handled by WebKit.
876 2008-01-24 Steve Falkenburg <sfalken@apple.com>
880 * WebKit.vcproj/WebKit.sln:
881 * WebKit.vcproj/WebKit.submit.sln:
883 2008-01-24 Adam Roben <aroben@apple.com>
887 * WebView.cpp: Added a comma.
889 2008-01-24 Alexey Proskuryakov <ap@webkit.org>
891 Reviewed by Adam Roben.
893 <rdar://problem/5702734> REGRESSION(r28936/r15890): Shift+del does not work in win Safari
895 * WebView.cpp: Fixed keyDownEntries to list this shortcut (and related ones, for consistency).
897 2008-01-23 Steve Falkenburg <sfalken@apple.com>
899 <rdar://problem/5698732> Copyright strings should include 2008
903 * WebKit.vcproj/WebKit.rc:
905 2008-01-23 Adam Roben <aroben@apple.com>
907 Fix <rdar://5698502> Inspector window reverts to default position/size unexpectedly
911 * WebInspectorClient.cpp:
912 (defaultWindowRect): Added.
913 (WebInspectorClient::createPage):
914 - Use defaultWindowRect() to set the initial size/position of the
916 - Pass the Inspector window's client rect to
917 IWebView::initWithFrame so that the WebView will be initially
918 sized to fill the window.
919 (WebInspectorClient::showWindow): Don't move/resize the window back to
920 the defaults every time this method is called.
922 2008-01-23 Adam Roben <aroben@apple.com>
924 Fix <rdar://5700620> REGRESSION (r28190): "Open frame in new tab" instead of "Open link in new tab" @ digg.com
926 Test: fast/events/contextmenu-scrolled-page-with-frame.html
931 (WebView::handleContextMenuEvent): Translate the mouse coordinates
932 into document coordinates before performing the hit-test. This is what
933 EventHandler does internally.
935 2008-01-23 Steve Falkenburg <sfalken@apple.com>
937 <rdar://problem/5699509> Allow file upload dialog to be localized.
941 * English.lproj/Localizable.strings: Updated.
942 * WebCoreLocalizedStrings.cpp:
943 (WebCore::uploadFileText): Added.
944 (WebCore::allFilesText): Added.
946 2008-01-22 Adam Roben <aroben@apple.com>
948 Fix <rdar://5693599> REGRESSION (r29369): scroll bars are drawing when they shouldn't be on an ad on cnn.com
950 Now that we have multiple FrameViews per Frame on Windows, we need to
951 make sure each FrameView gets its scrolling mode set correctly. On Mac
952 this works because WebFrameView holds the scrolling mode and a single
953 WebFrameView is shared by many FrameViews. On Windows, we have no such
954 shared object, so we just ask the Frame's owner element for the
957 Tests: fast/frames/frame-scrolling-attribute.html
958 fast/frames/iframe-scrolling-attribute.html
963 (WebFrame::transitionToCommittedForNewPage): Set the scrolling mode
964 on the FrameView based on the scrolling mode of the Frame's owner
967 2008-01-21 Darin Adler <darin@apple.com>
969 Reviewed by John Sullivan.
971 - fix <rdar://problem/5644324> Delegate-less WebKit clients should have no databases
972 - fix incorrect value for WebDatabaseDisplayNameKey in header
974 * Interfaces/IWebDatabaseManager.idl: Renamed detailsForDatabaseWithOrigin to
975 detailsForDatabase. Replaced deleteDatabasesWithOrigin with deleteOrigin.
976 Renamed deleteDatabaseWithOrigin to deleteDatabase. Fixed incorrect value for
977 WebDatabaseDisplayNameKey.
978 * Interfaces/IWebPreferencesPrivate.idl: Removed defaultDatabaseQuota and
979 setDefaultDatabaseQuota.
980 * Interfaces/IWebUIDelegatePrivate.idl: Replaced the two database quota functions
983 * WebChromeClient.cpp:
984 (WebChromeClient::exceededDatabaseQuota): Replaced the two database quota functions
986 * WebChromeClient.h: Ditto.
988 * WebDatabaseManager.cpp:
989 (WebDatabaseManager::detailsForDatabase): Changed to check for a name of null to
990 detect a nonexistent database rather than using isValid.
991 (WebDatabaseManager::deleteOrigin): Updated for name change (actually a semantic
992 change too, but both have the same name).
993 (WebDatabaseManager::deleteDatabase): Updated for name change.
994 (WebKitSetWebDatabasesPathIfNecessary): Ditto.
996 * WebDatabaseManager.h: Updated for name changes.
998 * WebPreferenceKeysPrivate.h: Removed WebKitDefaultDatabaseQuotaKey.
999 * WebPreferences.cpp:
1000 (WebPreferences::initializeDefaultSettings): Removed the default for
1001 WebKitDefaultDatabaseQuotaKey.
1002 * WebPreferences.h: Removed defaultDatabaseQuota and setDefaultDatabaseQuota.
1004 (WebView::notifyPreferencesChanged): Removed the code to set the
1005 default database origin quota in WebCore::Settings based on IWebPreferencesPrivate.
1007 2008-01-19 Mark Rowe <mrowe@apple.com>
1009 Fix inconsistent line endings and set svn:eol-style=native
1010 on IDL files that did not have it set.
1012 * Interfaces/IGEN_DOMObject.idl:
1014 2008-01-18 Adam Roben <aroben@apple.com>
1016 Fix <rdar://5693854> REGRESSION (r29581): fast/events/frame-click-focus.html failing
1018 Restored the previous behavior of IWebViewPrivate::updateActiveState,
1019 which DRT depends on, and renamed it to
1020 IWebViewPrivate::updateFocusedAndActiveState to be clearer about its
1025 * Interfaces/IWebViewPrivate.idl:
1027 (WebViewWndProc): Removed some FIXMEs that we no longer want to fix
1028 because the current design is better.
1029 (WebView::updateActiveState): This is now just a method of WebView,
1030 not any of its public interfaces.
1031 (WebView::updateFocusedAndActiveState): Performs the tasks that the
1032 old IWebViewPrivate::updateActiveState performed.
1035 2008-01-18 Alexey Proskuryakov <ap@webkit.org>
1037 Reviewed by Adam Roben.
1039 Fix plugin-related tests in Debug_Internal configuration, which are failing because of CRT version mismatch
1040 between DRT and TestNetscapePlugin.
1042 * WebKit.vcproj/WebKit.sln: Use newly added TestNetscapePlugin Debug_Internal configuration.
1044 2008-01-17 Steve Falkenburg <sfalken@apple.com>
1048 * WebKit.vcproj/WebKit.make:
1050 2008-01-16 Adam Roben <aroben@apple.com>
1052 Trigger activation changes at the right time by listening for WM_NCACTIVATE
1054 This is the final part of <rdar://5006915> Inactive look for Aqua
1057 WebView now listens to messages sent to its top-level parent window.
1058 When the top-level parent receives a WM_NCACTIVATE message, WebView
1059 recalculates whether it is contained within the current active window.
1063 * Interfaces/IWebViewPrivate.idl:
1064 (IWebViewPrivate::windowAncestryDidChange): Added. WebKit clients
1065 should call this when they change the parent window chain of a
1068 (WebView::WebView): Initialize new member.
1069 (findTopLevelParent): Added.
1071 - Separated activation handling from focus handling, now that
1072 activation handling is taken care of by updateActiveState
1074 - Compare top-level parents in our WM_KILLFOCUS handler so that we
1075 really know if focus is staying inside our top-level window.
1076 - Update our active state on WM_WINDOWPOSCHANGED.
1077 - Added a WM_TIMER handler.
1078 (WebView::initWithFrame): Call windowAncestryDidChange after setting
1079 up our HWND as a child of the host window.
1080 (WebView::windowReceivedMessage): Added. Update our active state when
1081 our top-level parent receives a WM_NCACTIVATE message.
1082 (WebView::updateActiveStateSoon): Added.
1083 (WebView::setHostWindow): Call windowAncestryDidChange after changing
1085 (WebView::updateActiveState): We are active if our top-level parent is
1086 the same as the top-level parent of the active window.
1087 (WebView::windowAncestryDidChange): Added. Recalculates our top-level
1088 parent and registers as a listener for the new top-level parent's
1090 * WebView.h: Made WebView and WindowMessageListener so that it can
1091 utilize WindowMessageBroadcaster to listen to its top-level parent's
1094 2008-01-16 Adam Roben <aroben@apple.com>
1096 Updated for ScrollBarClient changes
1101 (WebScrollBar::isActive): Added.
1103 2008-01-16 Adam Roben <aroben@apple.com>
1105 Updated for changes to WebCore methods
1107 Focus and active state are now handled (somewhat) separately. Future
1108 patches will further separate these concepts.
1113 (WebViewWndProc): Updated for method renames.
1114 (WebView::updateActiveState): Only change the active state here. Focus
1115 is handled inside WM_SETFOCUS and WM_KILLFOCUS message handlers.
1117 2008-01-16 Steve Falkenburg <sfalken@apple.com>
1119 <rdar://problem/5097419> Cursor flickers when over window resizer
1124 (WebViewWndProc): Don't set the resize cursor when over the non-border resize area.
1126 2008-01-15 Steve Falkenburg <sfalken@apple.com>
1128 <rdar://problem/5663888> Cannot type into a JavaScript prompt created from a timer
1130 Allow nested timers from javascript prompts to allow for WebView-based edit fields.
1134 * WebChromeClient.cpp:
1135 (WebChromeClient::runJavaScriptPrompt):
1137 2008-01-14 Steve Falkenburg <sfalken@apple.com>
1139 Use shared vsprops for most vcproj properties.
1143 * WebKit.vcproj/Interfaces.vcproj:
1144 * WebKit.vcproj/WebKit.vcproj:
1145 * WebKit.vcproj/WebKitGUID.vcproj: Add missing Debug_Internal config.
1147 2008-01-11 Steve Falkenburg <sfalken@apple.com>
1149 Share common files across projects.
1152 Debug: common.vsprops, debug.vsprops
1153 Debug_Internal: common.vsprops, debug.vsprops, debug_internal.vsprops
1154 Release: common.vsprops, release.vsprops
1156 Shared properties can go into common.vsprops, shared debug settings can go into debug.vsprops.
1157 debug_internal.vsprops will be mostly empty except for file path prefix modifiers.
1159 Pull auto-version.sh, VERSION, and PRODUCTVERSION from tools.
1161 Reviewed by Adam Roben.
1163 * WebKit.vcproj/Interfaces.vcproj:
1164 * WebKit.vcproj/PRODUCTVERSION: Removed.
1165 * WebKit.vcproj/VERSION: Removed.
1166 * WebKit.vcproj/WebKit.vcproj:
1167 * WebKit.vcproj/WebKitGUID.vcproj:
1168 * WebKit.vcproj/auto-version.sh: Removed.
1169 * WebKit.vcproj/debug.vsprops: Removed.
1170 * WebKit.vcproj/debug_internal.vsprops: Removed.
1171 * WebKit.vcproj/release.vsprops: Removed.
1173 2008-01-11 Adam Roben <aroben@apple.com>
1175 Fix Bug 16828: WebView never paints if first page load is canceled after being committed but before layout
1177 <http://bugs.webkit.org/show_bug.cgi?id=16828>
1180 Now that we have 1) a real loader and 2) multiple FrameViews per
1181 Frame, we no longer need the hackery we had in our WM_PAINT handler
1182 that decided whether or not to paint. We now always want to paint,
1183 letting the swapping of FrameViews that happens in
1184 transitionToCommittedForNewPage handle which document gets painted.
1189 (WebViewWndProc): Removed hackery that decided sometimes not to paint.
1191 2008-01-11 Mark Rowe <mrowe@apple.com>
1193 Windows build fix. Update to match method name in WebCore.
1195 * WebJavaScriptCollector.cpp:
1196 (WebJavaScriptCollector::collectOnAlternateThread):
1198 2008-01-10 Geoffrey Garen <ggaren@apple.com>
1200 Reviewed by John Sullivan.
1202 Updated for transition away from JavaScriptStatistics, which is gone now.
1204 * WebJavaScriptCollector.cpp:
1205 (WebJavaScriptCollector::collect):
1206 (WebJavaScriptCollector::collectOnAlternateThread):
1207 (WebJavaScriptCollector::objectCount):
1209 2008-01-10 Maciej Stachowiak <mjs@apple.com>
1211 Not reviewed, build fix.
1215 * WebDatabaseManager.cpp:
1216 * WebSecurityOrigin.h:
1218 2008-01-10 Maciej Stachowiak <mjs@apple.com>
1220 Not reviewed, build fix.
1224 * WebDatabaseManager.cpp:
1225 (WebDatabaseManager::databasesWithOrigin):
1226 * WebSecurityOrigin.h:
1228 2008-01-10 Maciej Stachowiak <mjs@apple.com>
1232 - remove SecurityOriginData and fold its functionality into SecurityOrigin
1234 * WebChromeClient.cpp:
1235 (WebChromeClient::requestQuotaIncreaseForNewDatabase):
1236 (WebChromeClient::requestQuotaIncreaseForDatabaseOperation):
1237 * WebChromeClient.h:
1238 * WebDatabaseManager.cpp:
1239 (WebDatabaseManager::origins):
1240 (WebDatabaseManager::databasesWithOrigin):
1241 (WebDatabaseManager::detailsForDatabaseWithOrigin):
1242 (WebDatabaseManager::deleteDatabasesWithOrigin):
1243 (WebDatabaseManager::deleteDatabaseWithOrigin):
1244 (WebDatabaseManager::dispatchDidModifyOrigin):
1245 (WebDatabaseManager::dispatchDidModifyDatabase):
1246 * WebDatabaseManager.h:
1247 * WebSecurityOrigin.cpp:
1248 (WebSecurityOrigin::createInstance):
1249 (WebSecurityOrigin::WebSecurityOrigin):
1250 (WebSecurityOrigin::protocol):
1251 (WebSecurityOrigin::domain):
1252 (WebSecurityOrigin::port):
1253 (WebSecurityOrigin::usage):
1254 (WebSecurityOrigin::quota):
1255 (WebSecurityOrigin::setQuota):
1256 * WebSecurityOrigin.h:
1258 2008-01-10 David Kilzer <ddkilzer@apple.com>
1260 dftables should be rewritten as a script
1262 <http://bugs.webkit.org/show_bug.cgi?id=16818>
1263 <rdar://problem/5681463>
1267 * WebKit.vcproj/WebKit.sln: Removed reference to dftables project.
1269 2008-01-10 Adam Roben <aroben@apple.com>
1271 Fix many bugs by giving Windows one FrameView per page load
1275 Windows back/forward cache causes crashes in the layout tests
1277 <http://bugs.webkit.org/show_bug.cgi?id=16808>
1278 REGRESSION: PLT broken on Windows due to back/forward cache
1280 <http://bugs.webkit.org/show_bug.cgi?id=16607>
1281 Random crashes in FrameView::scheduleRelayout while surfing
1284 On Windows until now we've only had one FrameView per Frame. Once the
1285 back/forward cache was turned on this started causing assertions to
1286 fail and crashes to occur due to a single FrameView being both in the
1287 back/forward cache (possibly multiple times!) and used by a live
1288 document. We now create a new FrameView for each page load, just as
1291 This has the side-effect of plugging some of the world leaks seen at
1297 (WebFrame::initWithWebFrameView): Don't create the FrameView right
1298 away -- it'll be created when the load is committed.
1299 (WebFrame::transitionToCommittedFromCachedPage): Match the Mac by no
1300 longer calling resetMultipleFormSubmissionProtection here.
1301 (WebFrame::transitionToCommittedForNewPage): Ported code from
1302 -[WebCoreFrameBridge
1303 createFrameViewWithNSView:marginWidth:marginHeight:],
1304 -[WebCoreFrameBridge installInFrame:], and moved code here from
1305 WebFrame::initWithWebFrameView and WebView::initWithFrame. WebCore
1306 takes care of resetMultipleFormSubmissionProtection, just like it does
1309 (WebView::initWithFrame): Moved FrameView initialization code to
1310 WebFrame::transitionToCommittedForNewPage.
1312 2008-01-09 Ada Chan <adachan@apple.com>
1314 Fix crash that could happen if the key we are passing to the HashMap is 0 in WebView::interpretKeyEvent().
1319 (WebView::interpretKeyEvent):
1321 2008-01-08 Steve Falkenburg <sfalken@apple.com>
1325 * DOMCoreClasses.cpp:
1327 2008-01-07 Antti Koivisto <antti@apple.com>
1329 Try to fix the Windows build.
1331 * WebKit.vcproj/WebKit.sln:
1333 2008-01-07 Antti Koivisto <antti@apple.com>
1337 Re-enable media support in Windows build.
1339 * WebKit.vcproj/WebKit.vcproj:
1341 2008-01-07 Steve Falkenburg <sfalken@apple.com>
1345 * WebKit.vcproj/InterfacesGenerated.vcproj:
1347 2008-01-07 Dan Bernstein <mitz@apple.com>
1349 Reviewed by Dave Hyatt.
1351 - <rdar://problem/5665216> Support the unicode-range property in @font-face rules
1354 (WebView::setShouldApplyMacFontAscentHack):
1356 2008-01-07 Holger Freyther <zecke@selfish.org>
1358 Reviewed by Alp Toker.
1360 * Qt and Gtk must know if a ContextMenuItem is checkable. Add a new ContextMenuItemType for checkable
1362 * Use this information in the Gtk platform to create a GtkCheckMenuItem when needed.
1363 * Update the ContextMenuController to accept CheckableActionTypes as well.
1364 * Change ContextMenu.cpp to use the CheckableActionType. The information if a item is checkable
1365 was extracted from ContextMenu::checkOrEnableIfNeeded.
1366 * Update the Qt and Windows port.
1368 * WebContextMenuClient.cpp:
1370 2008-01-04 Alexey Proskuryakov <ap@webkit.org>
1372 Reviewed by Adam Roben.
1374 http://bugs.webkit.org/show_bug.cgi?id=16733
1375 REGRESSION: Crash on Safari Start
1377 * Interfaces/IWebViewPrivate.idl: Should have added a new method at the end.
1379 2008-01-04 Alexey Proskuryakov <ap@webkit.org>
1383 <rdar://problem/5611712> xsl:sort does not use a case folding sort, and the 'case-order' attribute is ignored (16077)
1385 * WebKit.vcproj/WebKit.vcproj: Link to icuin{_debug}.lib
1387 2008-01-04 Adam Roben <aroben@apple.com>
1389 Fix <rdar://4968855> Shift-PageUp/Shift-PageDown only select one line of text
1391 Test: platform/win/editing/selection/shift-page-down-up.html
1395 * WebView.cpp: Correct the commands associated with
1396 Shift-PageUp/Shift-PageDown.
1398 2008-01-03 Alexey Proskuryakov <ap@webkit.org>
1402 <rdar://problem/5463489> A number of layout tests should be using execCommand instead of textInputController
1404 * Interfaces/IWebViewPrivate.idl:
1406 (WebView::executeCoreCommandByName):
1408 Added an SPI to implement layoutTestController.execCommand.
1410 2008-01-03 Ada Chan <adachan@apple.com>
1412 Replaced the use of editor command "ForwardDelete" with "DeleteForward" to be consistent
1413 with our use of "DeleteBackward".
1415 Rubber-stamped by Jon.
1419 2008-01-03 Ada Chan <adachan@apple.com>
1421 Regression: backspace stopped working on text inputs
1422 - Replaced the use of editor command "BackwardDelete" with "DeleteBackward" since it's no longer supported.
1426 * WebEditorClient.cpp:
1427 (WebEditorClient::textWillBeDeletedInTextField):
1430 2008-01-02 Alice Liu <alice.liu@apple.com>
1434 Fixed <rdar://5283861> (problems scrolling in gmail message content area)
1438 bubble scrolling from a key event
1440 2008-01-01 Matt Lilek <webkit@mattlilek.com>
1442 Attempt to fix the Windows bots until the bots
1443 can get the Quicktime SDK installed.
1445 * WebKit.vcproj/WebKit.sln:
1446 * WebKit.vcproj/WebKit.vcproj:
1448 2007-12-30 Matt Lilek <webkit@mattlilek.com>
1452 Bug 16578: Windows Web Inspector window needs minimum size
1453 http://bugs.webkit.org/show_bug.cgi?id=16578
1455 * WebInspectorClient.cpp:
1456 (WebInspectorClient::onGetMinMaxInfo):
1457 (WebInspectorWndProc):
1458 * WebInspectorClient.h:
1460 2007-12-21 Antti Koivisto <antti@apple.com>
1464 Build media support on Windows.
1466 * WebKit.vcproj/WebKit.sln:
1467 * WebKit.vcproj/WebKit.vcproj:
1469 2007-12-21 Ada Chan <adachan@apple.com>
1471 Implemented DOMDocument::getElementById().
1475 * DOMCoreClasses.cpp:
1476 (DOMDocument::getElementById):
1478 2007-12-21 Alexey Proskuryakov <ap@webkit.org>
1480 Reviewed by Steve and Darin.
1482 <rdar://problem/5497037> Win32: Accelerator keys (ctrl-x,c,v,w,q,etc) only fire keyUp,
1483 keyDown/Press consumed by accelerator table (14104)
1485 <rdar://problem/5346299> preventing default behavior for key down does not block accelerators like Ctrl+N
1487 This is WebKit part of a fix, most of which will be in Safari.
1490 (WebViewWndProc): Return our result for WM_(SYS)KEYDOWN to let the client know whether
1491 further procesing is desired.
1493 2007-12-21 Alexey Proskuryakov <ap@webkit.org>
1495 Build fix: cannot use framework-style include for ProgIDMacros.h,
1496 because the file is only created on a later step.
1500 2007-12-20 Kevin McCullough <kmccullough@apple.com>
1504 - <rdar://5656485> Drosera: Win: Nightly does not reliably connect to
1507 - Drosera and Safari need to use the same ProgIDs in order for
1508 CoCreateInstance to work properly. The most robust way to do this is
1509 for WebKit to dynamically publish those ProgIDs.
1511 * ForEachCoClass.cpp: Added.
1512 (setUseOpenSourceWebKit):
1514 * ForEachCoClass.h: Added functionality to publish ProgIDs.
1515 * WebKit.vcproj/WebKit.def: Exposed added functions for applications.
1516 * WebKit.vcproj/WebKit.vcproj: Added ForEachCoClass.cpp
1517 * WebKit.vcproj/WebKit_debug.def: Exposed added functions fori
1520 2007-12-19 Dave Hyatt <hyatt@apple.com>
1522 Add a fourth preference value for GDI text in the font smoothing prefs.
1526 * Interfaces/IWebPreferences.idl:
1527 * WebPreferenceKeysPrivate.h:
1528 * WebPreferences.cpp:
1529 (WebPreferences::initializeDefaultSettings):
1530 (WebPreferences::fontSmoothing):
1531 (WebPreferences::setFontSmoothing):
1533 (WebView::notifyPreferencesChanged):
1535 2007-12-17 Darin Adler <darin@apple.com>
1539 - <rdar://4516170> Back/Forward Cache on Windows
1542 (WebFrame::forceLayout): Implemented this. Just calling through to
1543 Frame::forceLayout matches the Mac pretty well and should be enough
1544 for now. Without this we won't repaint the new page when we go back
1546 (WebFrame::dispatchWillSubmitForm): Use COMPtr's AdoptCOM constructor
1547 instead of the adoptRef function.
1548 (WebFrame::restoreViewState): Removed unneeded notImplemented() call.
1549 This is implemented as much as it needs to be.
1550 (WebFrame::shouldGoToHistoryItem): Ditto.
1551 (WebFrame::saveViewStateToItem): Ditto.
1552 (WebFrame::canCachePage): Ditto, also changed it to return true. This
1553 is what was preventing the back/forward cache from running, and there's
1554 no need for any additional checks in the Windows version.
1557 (PreferencesChangedOrRemovedObserver::onNotify): Fix backwards null check
1558 that was preventing this notification from ever being sent, which in turn
1559 meant that page cache had a capacity of 0.
1560 (WebView::initWithFrame): Removed unneeded setUsesPageCache(false) code.
1561 This actually was ineffective and ended up doing no harm, but we don't
1564 2007-12-16 Alexey Proskuryakov <ap@webkit.org>
1568 http://bugs.webkit.org/show_bug.cgi?id=16462
1569 REGRESSION: access keys broken on Windows
1571 * WebView.cpp: (WebView::keyPress): Handle system key presses as access keys.
1573 2007-12-15 Alexey Proskuryakov <ap@webkit.org>
1577 http://bugs.webkit.org/show_bug.cgi?id=16436
1578 Alt+Space works incorrectly
1580 Test: platform/win/fast/events/alt-space-scroll.html
1584 (WebView::keyPress):
1585 We do not handle WM_SYSCHAR events.
1587 2007-12-14 Dan Bernstein <mitz@apple.com>
1589 - yet another build fix
1591 * DOMHTMLClasses.cpp:
1592 (DOMHTMLDocument::URL):
1594 2007-12-14 Dan Bernstein <mitz@apple.com>
1598 * WebIconDatabase.h:
1600 2007-12-14 Darin Adler <darin@apple.com>
1604 - http://bugs.webkit.org/show_bug.cgi?id=16443
1605 implement some missing Windows WebKit functions
1607 * DOMHTMLClasses.cpp:
1608 (DOMHTMLDocument::URL): Implemented.
1610 * WebActionPropertyBag.cpp:
1611 (WebActionPropertyBag::Read): Fixed the WebActionElementKey case.
1613 2007-12-14 Darin Adler <darin@apple.com>
1618 (WebView::execCommand): Switched from Editor::execCommand to Editor:command.
1619 Updated name from MoveUpByPageAndModifyCaret to MovePageUp and from
1620 MoveDownByPageAndModifyCaret to MovePageDown.
1621 (WebView::copy): Switched from Editor::execCommand to Editor:command.
1622 (WebView::cut): Ditto.
1623 (WebView::paste): Ditto.
1624 (WebView::delete_): Ditto.
1626 2007-12-13 Steve Falkenburg <sfalken@apple.com>
1628 Move source file generation into its own vcproj to fix build dependencies.
1632 * WebKit.vcproj/Interfaces.vcproj:
1633 * WebKit.vcproj/InterfacesGenerated.vcproj: Added.
1634 * WebKit.vcproj/WebKit.sln:
1635 * WebKit.vcproj/WebKit.submit.sln:
1636 * WebKit.vcproj/build-generated-files.sh:
1638 2007-12-13 Adam Roben <aroben@apple.com>
1640 Fix <rdar://5517707> Crash on wptv.wp.pl when "make bigger" button is clicked
1645 (WebViewWndProc): Repost paint messages and ignore all other messages
1646 when we're calling a plugin.
1648 2007-12-13 Steve Falkenburg <sfalken@apple.com>
1650 Fix project dependencies based on JavaScriptCore change.
1652 * WebKit.vcproj/WebKit.sln:
1654 2007-12-13 Alexey Proskuryakov <ap@webkit.org>
1658 http://bugs.webkit.org/show_bug.cgi?id=16421
1659 REGRESSION(r28669): Page scrolls down when you hit space key in text area
1661 Test: fast/events/space-scroll-event.html
1665 (WebView::keyPress):
1666 Moved space handling to keyPress() to fix this bug and to match IE. Scrolling via arrow keys is correctly handled
1669 2007-12-12 Brady Eidson <beidson@apple.com>
1671 Reviewed by Sam Weinig
1673 Fix for <rdar://problem/4886844> and lay groundwork for <rdar://problem/4516170> (Back/Forward Cache on Windows)
1675 Even though this new code isn't exercised yet because the page cache is still turned off for Windows, local testing
1676 has indicated it works well.
1678 * WebCachedPagePlatformData.h: Added.
1679 (WebCachedPagePlatformData::WebCachedPagePlatformData): Constructor takes an IWebDataSource and the object retains it
1680 (WebCachedPagePlatformData::clear):
1681 (WebCachedPagePlatformData::webDataSource):
1684 (WebFrame::savePlatformDataToCachedPage):
1685 (WebFrame::transitionToCommittedFromCachedPage):
1686 (WebFrame::transitionToCommittedForNewPage):
1689 * WebKit.vcproj/WebKit.vcproj:
1691 2007-12-12 Steve Falkenburg <sfalken@apple.com>
1695 * WebKit.vcproj/WebKit.make: Copy only what we need out of obj/bin.
1697 2007-12-12 Dan Bernstein <mitz@apple.com>
1699 Reviewed by Darin Adler.
1701 - revert my earlier crash fix after making WebCore return the empty
1702 editor command for the empty command name.
1705 (WebView::handleEditingKeyboardEvent):
1707 2007-12-12 Oliver Hunt <oliver@apple.com>
1711 <rdar://problem/5071781> window.mouseout events are not
1712 sent to window when mouse moves out of window
1714 Hook up the windows mouse tracking logic to allow us to
1715 detect the mouse leaving the window.
1719 (WebView::handleMouseEvent):
1723 2007-12-12 Dan Bernstein <mitz@apple.com>
1725 Reviewed by Alexey Proskuryakov.
1727 - fix a crash when pressing a key that is not associated with a command
1730 (WebView::handleEditingKeyboardEvent): Check if the result of
1731 interpretKeyEvent() is empty.
1733 2007-12-11 Sam Weinig <sam@webkit.org>
1735 Reviewed by Darin Adler.
1737 Scrub URL out of the tree in preparation for renaming KURL to URL.
1741 (WebFrame::dispatchWillPerformClientRedirect):
1742 (WebFrame::setTitle):
1743 (WebFrame::updateGlobalHistoryForStandardLoad):
1744 (WebFrame::updateGlobalHistoryForReload):
1745 (WebFrame::cancelledError):
1746 (WebFrame::blockedError):
1747 (WebFrame::interruptForPolicyChangeError):
1748 (WebFrame::createPlugin):
1750 (WebView::notifyDidAddIcon):
1752 2007-12-10 Anders Carlsson <andersca@apple.com>
1756 <rdar://problem/5636865>
1757 WebKit needs API to allow registering a protocol as local (RSS feeds appear unstyled)
1759 * Interfaces/IWebView.idl:
1761 (WebView::registerURLSchemeAsLocal):
1764 2007-12-11 Ada Chan <adachan@apple.com>
1766 Updated the database SPI to take in IWebFrame.
1770 * Interfaces/IWebUIDelegatePrivate.idl:
1771 * WebChromeClient.cpp:
1772 (WebChromeClient::requestQuotaIncreaseForNewDatabase):
1773 (WebChromeClient::requestQuotaIncreaseForDatabaseOperation):
1775 2007-12-11 Alexey Proskuryakov <ap@webkit.org>
1780 (WebView::interpretKeyEvent):
1782 2007-12-11 Darin Adler <darin@apple.com>
1785 (WebView::handleEditingKeyboardEvent): Update for change to Editor API.
1787 2007-12-11 Alexey Proskuryakov <ap@webkit.org>
1791 <rdar://problem/5535636>
1792 Have to press 4 times instead of 2 times to get the expected result of ^^ with german keyboard.
1794 http://bugs.webkit.org/show_bug.cgi?id=13916
1795 JavaScript detects Tab as a character input on a textfield validation
1797 Listen to WM_CHAR messages, and actually pass the type of message received down to WebCore.
1798 Since WM_KEYDOWN == keydown and WM_CHAR == keypress, this allows for much better IE compatibility
1799 than layering Windows keyboard event handling on top of Mac one.
1802 (WebView::keyUp): Do not special case Alt+F4 and Alt+Space - we don't get keyups for those anyway!
1803 (WebView::interpretKeyEvent): Renamed WindowsKeyCode() to windowsVirtualKeyCode().
1804 (WebView::handleEditingKeyboardEvent): Use the additional information about event type that
1805 we now pass with PlatformKeyboardEvent.
1806 (WebView::keyDown): (WebView::keyPress): Split WM_KEYDOWN and WM_CHAR handling in separate
1807 functions, pass them down as is, without trying to guess what WM_CHAR Windows would have sent
1808 for a given WM_KEYDOWN.
1810 (WebViewWndProc): Handle WM_CHAR and WM_SYSCHAR.
1812 * WebView.h: Removed inIMEKeyDown() - it doesn't look like we need it at all. At least, I didn't
1813 notice any regressions after removing the only call to it in WebEditorClient.
1815 * WebEditorClient.cpp:
1816 (WebEditorClient::handleKeyboardEvent):
1817 (WebEditorClient::handleInputMethodKeydown):
1818 * WebEditorClient.h:
1819 Renamed handleKeypress() to handleKeyboardEvent(), as it gets both keydowns and keypresses.
1820 Renamed handleInputMethodKeypress() to handleInputMethodKeydown() and removed
1821 inIMEKeyDown()-related code.
1823 2007-12-10 Geoffrey Garen <ggaren@apple.com>
1825 Reviewed by Sam Weinig.
1827 Updated for rename in JavaScriptCore.
1829 * WebScriptCallFrame.cpp:
1830 (WebScriptCallFrame::functionName):
1831 (WebScriptCallFrame::valueByEvaluatingJavaScriptFromString):
1833 2007-12-07 Steve Falkenburg <sfalken@apple.com>
1835 Fix version parsing.
1837 Rubber-stamped by Oliver.
1839 * WebKit.vcproj/auto-version.sh:
1841 2007-12-07 Steve Falkenburg <sfalken@apple.com>
1845 * WebKit.vcproj/WebKit.vcproj:
1846 * WebScriptCallFrame.cpp:
1848 2007-12-07 Steve Falkenburg <sfalken@apple.com>
1853 (_WebCoreHistoryProvider::containsURL):
1855 2007-12-07 Geoffrey Garen <ggaren@apple.com>
1857 Tried to fix build by suppressing warning.
1859 * WebScriptCallFrame.cpp:
1861 2007-12-07 Darin Adler <darin@apple.com>
1865 - http://bugs.webkit.org/show_bug.cgi?id=15981
1866 speed up visited-link code a bit
1868 * WebHistory.cpp: Removed unused Latin-1 code path.
1869 (_WebCoreHistoryProvider::containsItem): Updated for function name change.
1871 2007-12-07 Steve Falkenburg <sfalken@apple.com>
1873 Re-named our B&I flag from BUILDBOT to PRODUCTION.
1874 Fix our tiny versioning.
1875 Bump our product version.
1876 Use just the major version in the fallback VERSION files.
1877 Pick up the version numbers from the production builder.
1879 Reviewed by Sam Weinig.
1881 * Interfaces/WebKit.idl:
1882 * WebKit.vcproj/Interfaces.vcproj:
1883 * WebKit.vcproj/PRODUCTVERSION:
1884 * WebKit.vcproj/VERSION:
1885 * WebKit.vcproj/WebKit.make:
1886 * WebKit.vcproj/WebKit.rc:
1887 * WebKit.vcproj/WebKit.vcproj:
1888 * WebKit.vcproj/auto-version.sh:
1890 (DllUnregisterServer):
1892 2007-12-07 Adam Roben <aroben@apple.com>
1894 Fix <rdar://5624866> CFStringRef UI_STRING should use a cache and follow the CF "Get" model (current uses leak)
1896 Added a new class, LocalizedString, that wraps a CFStringRef and a
1897 WebCore::String. We store one LocalizedString for each key string.
1901 * WebLocalizableStrings.cpp: Changed our two HashMaps to map from
1902 WebCore::String to LocalizedString*.
1903 (LocalizedString::LocalizedString):
1904 (LocalizedString::operator CFStringRef):
1905 (LocalizedString::operator LPCTSTR): Code moved here from
1907 (findCachedString): Changed to return a LocalizedString*.
1908 (cacheString): Changed to take a LocalizedString*.
1909 (localizedString): Changed to return a const LocalizedString&. We
1910 first try to find a cached LocalizedString. If there isn't one, we
1911 create a new one and cache it.
1912 (WebLocalizedLPCTSTRUTF8): Changed to call localizedString.
1913 (WebLocalizedLPCTSTR): Ditto.
1915 2007-12-07 Adam Roben <aroben@apple.com>
1917 Make WebLocalizableStrings work a little more like the Mac version
1921 * WebKit.vcproj/WebKit.def: Deprecated SetWebLocalizedStringMainBundle.
1922 * WebKit.vcproj/WebKit_debug.def: Ditto.
1923 * WebLocalizableStrings.cpp:
1924 (createWebKitBundle): Changed to only create the bundle once.
1925 (cfBundleForStringsBundle): Added. Code was factored out of
1926 copyLocalizedStringFromBundle. We now use the CFBundleGetMainBundle to
1927 get the main bundle and WebLocalizableStringsBundle's identifier to
1928 fetch the framework's bundle.
1929 (copyLocalizedStringFromBundle): Changed to call
1930 cfBundleForStringsBundle.
1931 (cacheString): Cleaned up logic a bit with an early return.
1932 (SetWebLocalizedStringMainBundle): Moved down with the other
1933 deprecated functions and made into a no-op.
1935 2007-12-07 Adam Roben <aroben@apple.com>
1937 Use SoftLinking.h in WebKitClassFactory.
1941 * WebKitClassFactory.cpp:
1942 (WebKitClassFactory::WebKitClassFactory): We don't have to worry about
1943 not finding STInitialize anymore now that a version of SafariTheme
1944 containing this function has shipped.
1946 2007-12-06 Ada Chan <adachan@apple.com>
1948 <rdar://problem/5556378> Implemented database related UI delegate methods (prompts for new/enlarged databases)
1952 * Interfaces/IWebUIDelegatePrivate.idl:
1953 * WebChromeClient.cpp:
1954 (WebChromeClient::requestQuotaIncreaseForNewDatabase):
1955 (WebChromeClient::requestQuotaIncreaseForDatabaseOperation):
1957 2007-12-06 Alice Liu <alice.liu@apple.com>
1959 Fixed <rdar://5540000> onbeforeunload doesn't fire when closing window/tab
1963 * Interfaces/IWebViewPrivate.idl:
1965 (WebView::shouldClose):
1968 2007-12-06 Adam Roben <aroben@apple.com>
1970 Fix <rdar://5615283> Crash in WebFrame::receivedPolicyDecision
1972 It's possible for a second policy listener to be created while we're
1973 waiting for a decision on the first policy listener. In this case we
1974 would crash when the first policy listener had a decision made. Mac
1975 WebKit already handles this by invalidating any existing policy
1976 listener when creating a new one.
1978 A test case is coming in a future commit.
1983 (WebFrame::setUpPolicyListener): Copy the Mac behavior of invalidating
1984 any existing policy listener, and remove some assertions that we know
1987 2007-12-06 Adam Roben <aroben@apple.com>
1989 Add SPI so that DumpRenderTree can turn on the Mac font ascent hack
1993 * Interfaces/IWebViewPrivate.idl: Added new method declaration.
1995 (WebView::setShouldApplyMacFontAscentHack): Added. Just calls down to
1999 2007-12-06 Ada Chan <adachan@apple.com>
2005 * WebScriptCallFrame.cpp:
2006 (WebScriptCallFrame::valueByEvaluatingJavaScriptFromString):
2008 2007-12-04 Geoffrey Garen <ggaren@apple.com>
2010 Reviewed by Darin Adler.
2012 Third step in refactoring JSGlobalObject: Moved data members and data
2013 member access from Interpreter to JSGlobalObject.
2016 (WebFrame::globalContext):
2017 (WebFrame::attachScriptDebugger):
2018 (WebFrame::windowObjectCleared):
2019 * WebScriptDebugger.cpp:
2020 (WebScriptDebugger::WebScriptDebugger):
2022 2007-12-05 Steve Falkenburg <sfalken@apple.com>
2024 <rdar://problem/5625327> Crash toggling check grammar w/ spelling when no spell checker exists.
2029 (WebView::setGrammarCheckingEnabled): Add null check
2031 2007-12-05 Adam Roben <aroben@apple.com>
2033 Expose WebView::setProhibitsMainFrameScrolling through IWebViewPrivate
2037 * Interfaces/IWebViewPrivate.idl: Added declaration.
2038 * WebInspectorClient.cpp:
2039 (WebInspectorClient::createPage): Updated for change to
2040 setProhibitsMainFrameScrolling signature.
2042 (WebView::setProhibitsMainFrameScrolling): Updated and robustified.
2045 2007-12-05 Dan Bernstein <mitz@apple.com>
2047 Reviewed by Darin Adler.
2049 - WebKit/win part of fixing <rdar://problem/5111082> Flash popup video ad doesn't close when clicked at http://www.firestonecompleteautocare.com/
2052 (WebView::initWithFrame): Attach the main frame's view.
2054 2007-12-04 Ada Chan <adachan@apple.com>
2056 Provide API for setting the default storage quota per database origin
2060 * Interfaces/IWebPreferencesPrivate.idl: added SPI to get/set default database quota
2061 * WebPreferenceKeysPrivate.h:
2062 * WebPreferences.cpp:
2063 (WebPreferences::initializeDefaultSettings): default database quota is 5MB
2064 (WebPreferences::longlongValueForKey):
2065 (WebPreferences::setLongLongValue):
2066 (WebPreferences::defaultDatabaseQuota):
2067 (WebPreferences::setDefaultDatabaseQuota):
2070 (WebView::notifyPreferencesChanged): propagate default database quota change to WebCore settings.
2072 2007-12-04 Kevin McCullough <kmccullough@apple.com>
2074 Reviewed by Adam and Darin.
2076 - Fixed a crasher where the top of the stack was not updated correctly.
2077 And set the eol style on IWebScriptCallFrame.idl file.
2079 * Interfaces/IWebScriptCallFrame.idl:
2080 * WebScriptDebugger.cpp:
2081 (WebScriptDebugger::atStatement):
2082 (WebScriptDebugger::leaveFrame):
2084 2007-11-27 Adam Roben <aroben@apple.com>
2086 Hook up the authorAndUserStylesEnabled preference
2088 This is the Windows counterpart of r28071.
2092 * Interfaces/IWebPreferencesPrivate.idl: Added new method
2094 * WebPreferenceKeysPrivate.h: Added a new preference key.
2095 * WebPreferences.cpp:
2096 (WebPreferences::initializeDefaultSettings): Set the default for the
2098 (WebPreferences::setAuthorAndUserStylesEnabled): Added.
2099 (WebPreferences::authorAndUserStylesEnabled): Added.
2102 (WebView::notifyPreferencesChanged): Communicate the new preference
2103 down to WebCore::Settings.
2105 2007-12-04 Jon Honeycutt <jhoneycutt@apple.com>
2109 Don't crash if our JavaPlugin DLL can't be found
2112 (WebFrame::createJavaAppletWidget): Added null check
2114 2007-12-04 Darin Adler <darin@apple.com>
2116 Reviewed by Kevin Decker.
2118 * WebFrame.cpp: Removed obsolete privateBrowsingEnabled.
2119 * WebFrame.h: Ditto.
2121 2007-12-04 Adam Roben <aroben@apple.com>
2125 * WebScriptCallFrame.cpp:
2127 2007-12-03 Dan Bernstein <mitz@apple.com>
2129 Reviewed by Dave Hyatt.
2131 - fix <rdar://problem/5346452> Resize event doesn't fire on body element inside a frame
2134 (WebViewWndProc): Removed call to sendResizeEvent() since FrameView
2137 2007-12-03 Kevin McCullough <kmccullough@apple.com>
2141 - <rdar://5618942> Drosera: Console window does not process everything
2143 - <rdar://5619005> Drosera: could be sped up by moving the
2144 WebScriptScope stuff into the WebScriptCallFrame.
2145 - Now the console can correctly process objects and does not receive
2146 notifications from JavaScriptCore about the JavaScript in Drosera's
2149 * Interfaces/IWebScriptCallFrame.idl: Moved the variable lookup
2150 functions from WebScriptScope to here.
2151 * Interfaces/WebKit.idl: Removed WebScriptScope.
2152 * WebKit.vcproj/Interfaces.vcproj: Ditto.
2153 * WebKit.vcproj/WebKit.vcproj: Ditto.
2154 * WebKit.vcproj/WebKitGUID.vcproj: Ditto.
2155 * WebScriptCallFrame.cpp: Moved WebScriptScope functionality into here.
2156 (WebScriptCallFrame::stringByEvaluatingJavaScriptFromString): Now
2157 returns a string value for things that are not strings.
2158 (WebScriptCallFrame::variableNames): Moved from WebScriptScope.
2159 (WebScriptCallFrame::valueForVariable): Moved from WebScriptScope.
2160 (WebScriptCallFrame::jsValueToString): Helper functions that converts
2161 any JSValue to a String.
2162 * WebScriptCallFrame.h: Moved WebScriptScope functionality into here.
2163 * WebScriptDebugger.cpp: Added nested guards so that Drosera does not
2164 receive notifications about JavaScript that Drosera is running just the
2165 JavaScript WebKit is running.
2166 (WebScriptDebugger::WebScriptDebugger):
2167 (WebScriptDebugger::sourceParsed):
2168 (WebScriptDebugger::callEvent):
2169 (WebScriptDebugger::atStatement):
2170 (WebScriptDebugger::returnEvent):
2171 (WebScriptDebugger::exception):
2172 * WebScriptDebugger.h: Ditto.
2173 * WebScriptScope.cpp: Removed.
2174 * WebScriptScope.h: Removed.
2176 2007-12-03 Mark Rowe <mrowe@apple.com>
2178 Speculative Windows build fix.
2180 * WebScriptCallFrame.cpp:
2181 (WebScriptCallFrame::valueByEvaluatingJavaScriptFromString):
2183 2007-12-03 Adam Roben <aroben@apple.com>
2185 Another speculative Windows build fix
2187 * WebScriptCallFrame.cpp:
2188 (WebScriptCallFrame::valueByEvaluatingJavaScriptFromString):
2190 2007-12-03 Adam Roben <aroben@apple.com>
2192 Speculative Windows build fix
2195 (WebFrame::globalContext):
2196 (WebFrame::windowObjectCleared):
2197 * WebScriptDebugger.cpp:
2198 (WebScriptDebugger::WebScriptDebugger):
2200 2007-12-01 Sam Weinig <sam@webkit.org>
2202 Rename IWebViewPrivate::selectionImageRect to IWebViewPrivate::selectionRect.
2204 Rubber stamped by Adam Roben.
2206 * Interfaces/IWebViewPrivate.idl:
2208 (WebView::selectionRect):
2211 2007-11-30 Ada Chan <adachan@apple.com>
2213 <rdar://problem/5621373> Added a way for the client to clear undo/redo
2214 operations from a WebView.
2218 * Interfaces/IWebViewPrivate.idl:
2220 (WebView::clearUndoRedoOperations):
2223 2007-11-29 Anders Carlsson <andersca@apple.com>
2227 Add an IWebFrameLoadDelegate2 interface with a didClearWindowObject method
2228 that passes in the frame whose window has been cleared. This matches a newly
2229 added delegate method on the Mac.
2231 * Interfaces/IWebFrameLoadDelegate.idl:
2233 (WebFrame::windowObjectCleared):
2235 2007-11-29 Kevin McCullough <kmccullough@apple.com>
2239 - <rdar://5618976> Drosera: should listen for the WebScriptDebugServer
2240 dying and vice versa.
2242 * Interfaces/IWebScriptDebugListener.idl: Added the new function to the
2244 * WebKit.vcproj/WebKit.def: Added the new function to the def file so
2245 Safari can tell WebKit when the server is dying.
2246 * WebKit.vcproj/WebKit_debug.def: Ditto.
2247 * WebKitDLL.cpp: Added the new function for Safari to call.
2249 (LocalServerDidDie):
2250 * WebScriptDebugServer.cpp:
2251 (WebScriptDebugServer::WebScriptDebugServer): Removed unused member.
2252 (WebScriptDebugServer::sharedWebScriptDebugServer): Ditto, and added new
2253 member to prevent adding or removing listeners when the server is dying.
2254 (WebScriptDebugServer::addListener): Don't let new listeners be added
2255 when the server is dying.
2256 (WebScriptDebugServer::removeListener): Don't let listeners remove
2257 themselves when the server is dying. The server will remove them all
2259 (WebScriptDebugServer::serverDidDie): Notify all listeners that the
2260 server is dying and remove all listeners.
2261 * WebScriptDebugServer.h: Added the new method and removed an unused
2264 2007-11-29 Brady Eidson <beidson@apple.com>
2266 Build fix that works...?
2268 * WebChromeClient.h:
2270 2007-11-29 Brady Eidson <beidson@apple.com>
2274 * WebChromeClient.cpp:
2275 (WebChromeClient::requestQuotaIncreaseForNewDatabase):
2276 (WebChromeClient::requestQuotaIncreaseForDatabaseOperation):
2278 2007-11-29 Brady Eidson <beidson@apple.com>
2280 Keep it building with new client method
2282 * WebChromeClient.cpp:
2283 (ChromeClient::requestQuotaIncreaseForNewDatabase):
2284 (ChromeClient::requestQuotaIncreaseForDatabaseOperation):
2285 * WebChromeClient.h:
2287 2007-11-29 Dan Bernstein <mitz@apple.com>
2289 Reviewed by Beth Dakin and Darin Adler.
2291 - fix <rdar://problem/5346394> Contextmenu event doesn't fire on body element inside frame
2294 (WebView::handleContextMenuEvent): Send the context menu event to the
2295 frame containing the node that was hit.
2297 2007-11-28 Kevin McCullough <kmccullough@apple.com>
2301 - Added guards to the wait loop so execution would not hang and now the
2302 console window can process JavaScript.
2304 * WebScriptDebugServer.cpp:
2305 (WebScriptDebugServer::suspendProcessIfPaused):
2307 2007-11-28 Anders Carlsson <andersca@apple.com>
2311 Implement the last bits of the WebDatabaseManager API.
2313 * Interfaces/IWebDatabaseManager.idl:
2314 * WebDatabaseManager.cpp:
2316 (WebDatabaseManager::sharedWebDatabaseManager):
2317 (WebDatabaseManager::dispatchDidModifyOrigin):
2318 (WebDatabaseManager::dispatchDidModifyDatabase):
2319 * WebDatabaseManager.h:
2321 2007-11-28 Anders Carlsson <andersca@apple.com>
2323 Get Drosera working again for real.
2328 2007-11-27 Kevin McCullough <kmccullough@apple.com>
2330 Reviewed by Maciej and Adam.
2332 - Added Drosera to the WebKit project.
2334 * WebKit.vcproj/WebKit.sln:
2336 2007-11-27 Jon Honeycutt <jhoneycutt@apple.com>
2340 Return bool from registerWebViewWindowClass, as nothing uses the ATOM.
2341 Set haveRegisteredWindowClass to true
2344 (registerWebViewWindowClass):
2346 2007-11-27 Anders Carlsson <andersca@apple.com>
2348 Speculative fix to get Drosera working.
2352 Update the number of elements fetched correctly.
2354 2007-11-27 Anders Carlsson <andersca@apple.com>
2360 * CFDictionaryPropertyBag.cpp:
2361 (CFDictionaryPropertyBag::QueryInterface):
2362 * CFDictionaryPropertyBag.h:
2363 * WebBackForwardList.cpp:
2364 (WebBackForwardList::addItem):
2365 (WebBackForwardList::removeItem):
2367 (WebDownload::initWithRequest):
2369 (WebFrame::loadRequest):
2370 (WebFrame::initWithWebFrameView):
2371 (WebFrame::webHistory):
2372 (WebFrame::dispatchWillSendRequest):
2373 * WebURLAuthenticationChallenge.cpp:
2374 (WebURLAuthenticationChallenge::QueryInterface):
2375 (WebURLAuthenticationChallenge::initWithProtectionSpace):
2376 * WebURLAuthenticationChallenge.h:
2377 * WebURLAuthenticationChallengeSender.cpp:
2378 (WebURLAuthenticationChallengeSender::QueryInterface):
2379 * WebURLAuthenticationChallengeSender.h:
2380 * WebURLResponse.cpp:
2381 (WebURLResponse::QueryInterface):
2384 (WebView::notifyDidAddIcon):
2385 (WebView::goToBackForwardItem):
2386 (WebView::canHandleRequest):
2387 (WebView::loadBackForwardListFromOtherView):
2390 2007-11-27 Anders Carlsson <andersca@apple.com>
2392 Add COMEnumVariant.h to the project.
2394 * WebKit.vcproj/WebKit.vcproj:
2396 2007-11-27 Anders Carlsson <andersca@apple.com>
2400 Return E_INVALIDARG if the databaseName BSTR is null.
2402 * WebDatabaseManager.cpp:
2403 (WebDatabaseManager::detailsForDatabaseWithOrigin):
2404 (WebDatabaseManager::deleteDatabaseWithOrigin):
2406 2007-11-27 Anders Carlsson <andersca@apple.com>
2410 Implement the rest of the WebDatabaseManager API.
2413 * Interfaces/IWebDatabaseManager.idl:
2414 * WebDatabaseManager.cpp:
2416 (DatabaseDetailsPropertyBag::DatabaseDetailsPropertyBag):
2417 (DatabaseDetailsPropertyBag::~DatabaseDetailsPropertyBag):
2418 (DatabaseDetailsPropertyBag::createInstance):
2419 (DatabaseDetailsPropertyBag::AddRef):
2420 (DatabaseDetailsPropertyBag::Release):
2421 (DatabaseDetailsPropertyBag::QueryInterface):
2422 (DatabaseDetailsPropertyBag::Read):
2423 (DatabaseDetailsPropertyBag::Write):
2424 (WebDatabaseManager::detailsForDatabaseWithOrigin):
2425 (WebDatabaseManager::deleteAllDatabases):
2426 (WebDatabaseManager::deleteDatabasesWithOrigin):
2427 (WebDatabaseManager::deleteDatabaseWithOrigin):
2428 * WebDatabaseManager.h:
2430 2007-11-27 Ada Chan <adachan@apple.com>
2432 <rdar://problem/5616098> The BSTR returned by WebHistoryItem::alternateTitle
2433 was not allocated correctly.
2437 * WebHistoryItem.cpp:
2438 (WebHistoryItem::setAlternateTitle):
2439 (WebHistoryItem::alternateTitle):
2442 2007-11-27 Anders Carlsson <andersca@apple.com>
2446 Use COMEnumVariant in WebScriptCallFrame and WebScriptScope.
2448 * WebScriptCallFrame.cpp:
2449 (WebScriptCallFrame::scopeChain):
2450 * WebScriptScope.cpp:
2451 (WebScriptScope::variableNames):
2453 2007-11-27 Anders Carlsson <andersca@apple.com>
2457 Use the correct include paths.
2461 2007-11-27 Anders Carlsson <andersca@apple.com>
2465 Add COMEnumVariant, a templatized class with implements IEnumVARIANT and lets
2466 you enumerate over a C++ container, be it WTF or STL.
2468 * COMEnumVariant.h: Added.
2470 * WebDatabaseManager.cpp:
2471 (WebDatabaseManager::origins):
2472 (WebDatabaseManager::databasesWithOrigin):
2473 Implement these using COMEnumVariant.
2475 * WebSecurityOrigin.cpp:
2476 (WebSecurityOrigin::QueryInterface):
2477 * WebSecurityOrigin.h:
2478 Add a UUID for the implementation so that other parts of WebKit can access
2479 the WebCore::SecurityOriginData object.
2481 2007-11-26 Adam Roben <aroben@apple.com>
2483 Take advantage of the new Color constructor that takes a CGColorRef
2485 This lets us handle grayscale colors (which only have 2 components).
2489 * WebKitGraphics.cpp:
2492 2007-11-26 Steve Falkenburg <sfalken@apple.com>
2496 * WebKit.vcproj/WebKit.make:
2498 2007-11-26 Steve Falkenburg <sfalken@apple.com>
2502 * WebKit.vcproj/build-generated-files.sh:
2504 2007-11-26 Steve Falkenburg <sfalken@apple.com>
2508 * WebKit.vcproj/build-generated-files.sh:
2510 2007-11-26 Anders Carlsson <andersca@apple.com>
2514 Add an implementation of IWebSecurityOrigin and a partially stubbed out
2515 implementation of IWebDatabaseManager.
2518 * Interfaces/IWebDatabaseManager.idl:
2519 * Interfaces/WebKit.idl:
2520 * WebDatabaseManager.cpp:
2521 (WebDatabaseManager::createInstance):
2522 (WebDatabaseManager::WebDatabaseManager):
2523 (WebDatabaseManager::~WebDatabaseManager):
2524 (WebDatabaseManager::QueryInterface):
2525 (WebDatabaseManager::AddRef):
2526 (WebDatabaseManager::Release):
2527 (WebDatabaseManager::sharedWebDatabaseManager):
2528 (WebDatabaseManager::origins):
2529 (WebDatabaseManager::databasesWithOrigin):
2530 (WebDatabaseManager::detailsForDatabaseWithOrigin):
2531 (WebDatabaseManager::deleteAllDatabases):
2532 (WebDatabaseManager::deleteDatabasesWithOrigin):
2533 (WebDatabaseManager::deleteDatabaseWithOrigin):
2534 * WebDatabaseManager.h:
2535 * WebKit.vcproj/WebKit.vcproj:
2536 * WebKitClassFactory.cpp:
2537 * WebSecurityOrigin.cpp: Added.
2538 (WebSecurityOrigin::createInstance):
2539 (WebSecurityOrigin::WebSecurityOrigin):
2540 (WebSecurityOrigin::~WebSecurityOrigin):
2541 (WebSecurityOrigin::QueryInterface):
2542 (WebSecurityOrigin::AddRef):
2543 (WebSecurityOrigin::Release):
2544 (WebSecurityOrigin::protocol):
2545 (WebSecurityOrigin::domain):
2546 (WebSecurityOrigin::port):
2547 (WebSecurityOrigin::usage):
2548 (WebSecurityOrigin::quota):
2549 (WebSecurityOrigin::setQuota):
2550 * WebSecurityOrigin.h: Added.
2552 2007-11-26 Kevin McCullough <kmccullough@apple.com>
2556 - Implemented displaying variables for Drosera on Win.
2558 * Interfaces/IWebScriptCallFrame.idl: Added a local function to be
2559 able to access the WebScriptCallFrame.
2560 * Interfaces/IWebScriptScope.idl: Implemented.
2561 * Interfaces/WebKit.idl: Added WebScriptScope to the tlb.
2562 * WebKit.vcproj/Interfaces.vcproj:
2563 * WebScriptCallFrame.cpp: Implemented the helper and accessor methods.
2564 (EnumScopes::Next): Fixed a bug where we did not release correctly and
2565 would accidentally destroy scopes.
2566 (WebScriptCallFrame::stringByEvaluatingJavaScriptFromString):
2568 (WebScriptCallFrame::valueByEvaluatingJavaScriptFromString): Implemented
2569 * WebScriptCallFrame.h: Implemented the helper and accessor methods.
2570 (WebScriptCallFrame::impl):
2571 (WebScriptCallFrame::state):
2572 * WebScriptScope.cpp: Implmented.
2573 (EnumVariables::EnumVariables): Created an IEnumVariant over the
2574 variables to be able to pass a DCOM acceptable structure back to
2576 (EnumVariables::createInstance):
2577 (EnumVariables::QueryInterface):
2578 (EnumVariables::AddRef):
2579 (EnumVariables::Release):
2580 (EnumVariables::Next):
2581 (EnumVariables::Skip):
2582 (EnumVariables::Reset):
2583 (EnumVariables::Clone):
2584 (WebScriptScope::WebScriptScope):
2585 (WebScriptScope::createInstance): Implemented.
2586 (WebScriptScope::variableNames): Implemented.
2587 (WebScriptScope::valueForVariable):
2588 * WebScriptScope.h: Implmeneted.
2590 2007-11-26 Anders Carlsson <andersca@apple.com>
2594 Add IWebDatabaseManager and IWebSecurityOrigin interfaces.
2596 * Interfaces/IWebDatabaseManager.idl: Added.
2597 * Interfaces/IWebSecurityOrigin.idl: Added.
2598 * WebKit.vcproj/Interfaces.vcproj:
2599 * WebKit.vcproj/WebKitGUID.vcproj:
2601 2007-11-26 Alice Liu <alice.liu@apple.com>
2603 Reviewed by Jon Honeycutt.
2605 Fall back to the default Policy Delegate in these functions,
2606 as is already done in dispatchDecidePolicyForNavigationAction
2609 (WebFrame::dispatchDecidePolicyForMIMEType):
2610 (WebFrame::dispatchDecidePolicyForNewWindowAction):
2611 (WebFrame::dispatchUnableToImplementPolicy):
2613 2007-11-25 Adam Roben <aroben@apple.com>
2615 Fix a leak pointed out by Alexey
2618 (getUpdateRects): Use a Vector<unsigned char>, since OwnPtr doesn't
2619 know to call delete[].
2621 2007-11-25 Adam Roben <aroben@apple.com>
2623 Fix Bug 16138: Reduce code duplication in WebView.cpp
2625 http://bugs.webkit.org/show_bug.cgi?id=16138
2630 (getUpdateRects): Factored code out of updateBackingStore and paint
2631 into this new helper function.
2632 (WebView::updateBackingStore): Use getUpdateRects.
2633 (WebView::paint): Ditto.
2634 (WebView::paintIntoBackingStore): Changed to take a const IntRect&.
2635 (WebView::paintIntoWindow): Ditto.
2638 2007-11-25 Adam Roben <aroben@apple.com>
2640 Add ImageDiff.vcproj to WebKit.sln
2644 * WebKit.vcproj/WebKit.sln:
2646 2007-11-17 Timothy Hatcher <timothy@apple.com>
2648 Reviewed by Mark Rowe.
2650 Bug 13470: i18n: The Web Inspector is not localizable
2651 http://bugs.webkit.org/show_bug.cgi?id=13470
2653 * English.lproj/Localizable.strings: Updated.
2654 * WebInspectorClient.cpp:
2655 (WebInspectorClient::localizedStringsURL): Empty stub.
2656 * WebInspectorClient.h: Added localizedStringsURL.
2658 2007-11-17 Alexey Proskuryakov <ap@webkit.org>
2663 (WebView::deleteSelection): Use canSmartCopyOrDelete() directly.
2665 2007-11-14 Adam Roben <aroben@apple.com>
2667 Change Interfaces to be a "Static Library" project
2669 Being a Utility project meant that Interfaces was rebuilding every
2670 time (Utility projects are supposed to handle their own dependencies).
2671 Interfaces isn't really a static library, but it means that VS will
2672 handle dependencies for us (and not complain about missing manifests
2673 like it did when the project was an Application).
2675 * WebKit.vcproj/Interfaces.vcproj:
2677 2007-11-14 Adam Roben <aroben@apple.com>
2679 Shut up FixMIDLHeaders.pl
2681 * WebKit.vcproj/FixMIDLHeaders.pl:
2683 2007-11-14 Adam Roben <aroben@apple.com>
2685 Change Interfaces to use a Utility configuration
2687 It had previously been marked as an "Application (.exe)", which is
2688 wrong but worked with most versions of Visual Studio.
2690 Rubberstamped by Steve.
2692 * WebKit.vcproj/Interfaces.vcproj:
2694 2007-11-14 Anders Carlsson <andersca@apple.com>
2698 Get the new focus window from the wParam instead of calling GetFocus().
2699 Also, send blur even if there is no focused frame.
2704 2007-11-14 Adam Roben <aroben@apple.com>
2706 Another build fix for systems without Cygwin in their PATH
2708 * WebKit.vcproj/Interfaces.vcproj: Add Cygwin to the PATH in the
2711 2007-11-13 Kevin McCullough <kmccullough@apple.com>
2715 - Make Drosera show source, source URLs, and function stack on Windows
2716 and some minor fixes.
2718 * WebScriptCallFrame.cpp: Fixed a bug where the callFrame was not reffed
2719 properly before being returned, and changed functionName() to check for
2720 Null or if the name is empty.
2721 (EnumScopes::Clone):
2722 (WebScriptCallFrame::WebScriptCallFrame):
2723 (WebScriptCallFrame::createInstance):
2724 (WebScriptCallFrame::caller):
2725 (WebScriptCallFrame::functionName):
2726 * WebScriptCallFrame.h: Ditto
2727 * WebScriptDebugServer.cpp: Made the listenerSet static since we were
2728 already treating it as if it were. Removed the EnumViews stuff. This
2729 was added by Steve to demonstrate DCOM and he thought it would be needed
2730 by Drosera, but I don't believe it will be.
2731 Implemented suspendProcessIfPaused() also added calls to it at the end
2732 of several functions to ensure we pause if Drosera has told WebKit to.
2733 (WebScriptDebugServer::WebScriptDebugServer):
2734 (WebScriptDebugServer::sharedWebScriptDebugServer):
2735 (WebScriptDebugServer::addListener):
2736 (WebScriptDebugServer::removeListener):
2737 (WebScriptDebugServer::suspendProcessIfPaused):
2738 (WebScriptDebugServer::didLoadMainResourceForDataSource):
2739 (WebScriptDebugServer::didParseSource):
2740 (WebScriptDebugServer::failedToParseSource):
2741 (WebScriptDebugServer::didEnterCallFrame):
2742 (WebScriptDebugServer::willExecuteStatement):
2743 (WebScriptDebugServer::willLeaveCallFrame):
2744 (WebScriptDebugServer::exceptionWasRaised):
2745 * WebScriptDebugServer.h: Ditto.
2746 * WebScriptDebugger.cpp: The important change here is that leaveFrame()
2747 is called before willLeaveCallFrame(). I think there is some EOL stuff
2749 - It was the implementing of these functions that allows source, the
2750 source URLs and function stack to be displayed.
2751 (WebScriptDebugger::callEvent):
2752 (WebScriptDebugger::atStatement):
2753 (WebScriptDebugger::returnEvent):
2754 (WebScriptDebugger::exception):
2755 (WebScriptDebugger::enterFrame):
2756 (WebScriptDebugger::leaveFrame):
2757 * WebView.cpp: Removed the EnumView functions.
2759 (WebView::~WebView):
2761 2007-11-13 Adam Roben <aroben@apple.com>
2763 Fix <rdar://5346832> Infinite recursion when opening Web Inspector on more than one tab
2765 The bug was that multiple WebNodeHighlights would subclass the same
2766 browser window, leading to infinite recursion within
2769 WebNodeHighlight is now a WindowMessageListener, and lets
2770 WindowMessageBroadcaster handle subclassing the window.
2774 * WebNodeHighlight.cpp:
2775 (WebNodeHighlight::WebNodeHighlight): Initialize m_observedWindow
2777 (WebNodeHighlight::~WebNodeHighlight): Unregister as a listener for
2779 (WebNodeHighlight::highlight): Register as a listener.
2780 (WebNodeHighlight::windowReceivedMessage): Do the work that used to be
2781 done in SubclassedWndProc.
2782 * WebNodeHighlight.h: Made WebNodeHighlight a WindowMessageListener,
2783 and renamed m_subclassedWindow to m_observedWindow.
2785 2007-11-13 Adam Roben <aroben@apple.com>
2787 Build fix for systems that don't have Cygwin in their PATH
2789 * WebKit.vcproj/Interfaces.vcproj: Put Cygwin in the PATH before
2792 2007-11-13 Steve Falkenburg <sfalken@apple.com>
2794 Add IDOMElementPrivate::font() to get an element's font
2795 as a WebFontDescription.
2799 * DOMCoreClasses.cpp:
2802 * Interfaces/DOMPrivate.idl:
2804 2007-11-12 Adam Roben <aroben@apple.com>
2808 * WebKit.vcproj/WebKit.def: Export fastZeroedMalloc.
2809 * WebKit.vcproj/WebKit_debug.def: Ditto.
2811 2007-11-09 Jon Honeycutt <jhoneycutt@apple.com>
2815 <rdar://5585900>: Safari crashes when selected in context menu to open
2816 audio format files (au, aif) with QT 7.3
2818 The crash occurred on a machine where QT 7.3 was failing to initialize.
2819 The fix is to avoid sending streams to full-page plugins that've failed
2823 (WebFrame::finishedLoading): Check plugin status before calling manual
2825 (WebFrame::setMainDocumentError): Same
2826 (WebFrame::committedLoad): Same
2828 2007-11-09 Sam Weinig <sam@webkit.org>
2830 Rubber stamped by Oliver.
2832 Make WebCore a dependency of Interfaces.
2834 * WebKit.vcproj/WebKit.sln:
2836 2007-11-04 Sam Weinig <sam@webkit.org>
2838 Reviewed by Adam Roben.
2840 <rdar://problem/5435940>
2841 The COM bindings for the DOM should be autogenerated like the other DOM bindings
2843 Initial commit of the autogeneration of the COM DOM Bindings. No behavior change
2844 is being introduced in this patch and to insure that no conflicts arise, a temporary
2845 prefix of "GEN_" has been used for all the new classes.
2847 The build architecture for these bindings differs slightly from the other autogenerated
2848 bindings. Instead of building in WebCore and migrating the resuting code to WebKit (as
2849 is done for the Objective-C bindigs currently), the IDLs and generation scripts are
2850 migrated to WebKit and built there. This is done with a series of scripts and Makefiles.
2852 This commit includes:
2853 - Hand rolled root class/Interface GEN_DOMObject used to facilated object creation
2855 - Generating all of the Core DOM and most of HTML and CSS
2856 - Generating Event, EventTarget, and EventListener
2858 * DOMCreateInstance.cpp: Added.
2863 (GEN_DOMNode::createInstance):
2864 (GEN_DOMImplementation::createInstance):
2865 (GEN_DOMCSSRule::createInstance):
2866 (GEN_DOMStyleSheet::createInstance):
2867 (GEN_DOMCSSValue::createInstance):
2868 * DOMCreateInstance.h: Added.
2869 Temporary location for createInstance/object caching methods. This will be broken up
2870 into seperate files in the near future.
2872 * GEN_DOMObject.cpp: Added.
2873 (GEN_DOMObject::GEN_DOMObject):
2874 (GEN_DOMObject::~GEN_DOMObject):
2875 (GEN_DOMObject::QueryInterface):
2876 (GEN_DOMObject::AddRef):
2877 (GEN_DOMObject::Release):
2878 * GEN_DOMObject.h: Added.
2879 Hand rolled base class.
2881 * Interfaces/IGEN_DOMObject.idl: Added.
2882 Hand rolled base interface.
2884 * WebKit.vcproj/DerivedSources.make: Added.
2885 * WebKit.vcproj/FixMIDLHeaders.pl: Added.
2886 This script is required because MIDL is producing un-buildable code due to
2887 circular dependencies.
2889 * WebKit.vcproj/Interfaces.vcproj:
2890 * WebKit.vcproj/WebKit.vcproj:
2891 * WebKit.vcproj/WebKitGUID.vcproj:
2892 * WebKit.vcproj/build-generated-files.sh: Added.
2894 2007-11-08 Kevin McCullough <kmccullough@apple.com>
2898 - This patch does two main things.
2899 1) It adds pragma warning guards around WebCore includes in WebKit files
2900 that were previously overlooked.
2901 2) It implements almost the entireity of WebScriptDebugger. Only one
2902 function remains and that implementation is dependent on finishing the
2903 implementation of WebScriptScope.
2905 * WebScriptCallFrame.h:
2906 * WebScriptDebugServer.h:
2907 * WebScriptDebugger.cpp:
2908 (WebScriptDebugger::WebScriptDebugger):
2909 (WebScriptDebugger::sourceParsed):
2910 (WebScriptDebugger::callEvent):
2911 (WebScriptDebugger::atStatement):
2912 (WebScriptDebugger::returnEvent):
2913 (WebScriptDebugger::exception):
2914 (WebScriptDebugger::enterFrame):
2915 (WebScriptDebugger::leaveFrame):
2916 * WebScriptDebugger.h:
2918 2007-11-08 Steve Falkenburg <sfalken@apple.com>
2920 <rdar://problem/5491463> Wrong dates shown in History menu.
2922 Fix off-by-one error in Windows epoch.
2924 For the Windows DATE type, 1/1/1900 should be 2.0, not 1.0.
2925 DATE is the number of days since 12/30/1899.
2929 * MarshallingHelpers.cpp:
2930 (MarshallingHelpers::windowsEpochAbsoluteTime):
2932 2007-11-08 Kevin McCullough <kmccullough@apple.com>
2936 - With this change Drosera can now get the source of a website and the
2937 listings of the sources it gets. This also lays the foundation for
2938 letting Drosera show the scope chain of the JavaScript stack.
2940 * Interfaces/IWebFrame.idl: Changed the signature of the local function,
2941 globalContext(), because COM was unable to marshal this object with the
2943 * Interfaces/IWebScriptDebugServer.idl: Of course adding and removing
2944 a listener cannot be done in a const function.
2945 * WebChromeClient.h: Added accessor to the WebView for the new added
2946 kit() function in WebFrame.
2947 (WebChromeClient::webView):
2948 * WebFrame.cpp: Added a script debugger object and the necessary
2949 functions to attach and communicate with it. Also needed to change the
2950 local function, globalContext(), because of a COM issue.
2952 (WebFrame::WebFrame):
2953 (WebFrame::globalContext):
2954 (WebFrame::loadData):
2955 (WebFrame::attachScriptDebugger):
2956 (WebFrame::detachScriptDebugger):
2957 (WebFrame::dispatchDidLoadMainResource):
2958 (WebFrame::windowObjectCleared):
2959 * WebFrame.h: Ditto.
2960 * WebHTMLRepresentation.cpp: Implemented documentSource so Drosera has
2961 some source code to display.
2962 (WebHTMLRepresentation::WebHTMLRepresentation):
2963 (WebHTMLRepresentation::documentSource):
2964 * WebKit.vcproj/WebKit.vcproj: Added the new WebScriptDebugger class.
2965 * WebScriptCallFrame.cpp: Implemented much of this class' functionality.
2966 (EnumScopes::EnumScopes): Made an EnumScopes class to create an
2967 IEnumVARIANT to wrap a ScopeChain for Drosera.
2968 (EnumScopes::QueryInterface):
2969 (EnumScopes::AddRef):
2970 (EnumScopes::Release):
2973 (EnumScopes::Reset):
2974 (EnumScopes::Clone):
2975 (WebScriptCallFrame::caller):
2976 (WebScriptCallFrame::scopeChain):
2977 (WebScriptCallFrame::functionName):
2978 (WebScriptCallFrame::stringByEvaluatingJavaScriptFromString):
2979 * WebScriptCallFrame.h: Added member data needed for the above functions
2980 * WebScriptDebugServer.cpp: Began implementing.
2981 (WebScriptDebugServer::listenerCount):
2982 (EnumViews::QueryInterface):
2983 (EnumViews::AddRef):
2984 (EnumViews::Release):
2989 (WebScriptDebugServer::WebScriptDebugServer):
2990 (WebScriptDebugServer::createInstance):
2991 (WebScriptDebugServer::sharedWebScriptDebugServer):
2992 (WebScriptDebugServer::AddRef):
2993 (WebScriptDebugServer::Release):
2994 (WebScriptDebugServer::addListener):
2995 (WebScriptDebugServer::removeListener):
2996 (WebScriptDebugServer::step):
2997 (WebScriptDebugServer::pause):
2998 (WebScriptDebugServer::resume):
2999 (WebScriptDebugServer::isPaused):
3000 (WebScriptDebugServer::suspendProcessIfPaused):
3001 (WebScriptDebugServer::didLoadMainResourceForDataSource):
3002 (WebScriptDebugServer::didParseSource):
3003 (WebScriptDebugServer::failedToParseSource):
3004 (WebScriptDebugServer::didEnterCallFrame):
3005 (WebScriptDebugServer::willExecuteStatement):
3006 (WebScriptDebugServer::willLeaveCallFrame):
3007 (WebScriptDebugServer::exceptionWasRaised):
3008 * WebScriptDebugServer.h: Began implementing.
3009 * WebScriptDebugger.cpp: Added.
3010 (WebScriptDebugger::WebScriptDebugger):
3011 (WebScriptDebugger::sourceParsed):
3012 * WebScriptDebugger.h: Added.
3013 * WebScriptScope.cpp: Make this class use createInstance which is more
3014 in line with our guidelines.
3015 (WebScriptScope::WebScriptScope):
3016 (WebScriptScope::createInstance):
3020 2007-11-07 Darin Adler <darin@apple.com>
3024 * Interfaces/IWebUIDelegate.idl: Added the functions needed below.
3025 * WebChromeClient.cpp:
3026 (WebChromeClient::setMenubarVisible): Eliminated the notImplemented()
3027 here by calling through the UI delegate.
3028 (WebChromeClient::menubarVisible): Ditto.
3029 (WebChromeClient::runDatabaseSizeLimitPrompt): Ditto.
3031 2007-11-07 Steve Falkenburg <sfalken@apple.com>
3033 Added IWebDocumentText available via QI from WebFrame.
3038 (WebFrame::QueryInterface): Added IID_IWebDocumentText.
3039 (WebFrame::supportsTextEncoding): Stubbed out.
3040 (WebFrame::selectedString): Implemented.
3041 (WebFrame::selectAll): Stubbed out.
3042 (WebFrame::deselectAll): Stubbed out.
3045 2007-11-07 Adam Roben <aroben@apple.com>
3047 Fix <rdar://5569268> Crash when opening any FTP site in second tab/window
3052 (WebView::initWithFrame): Set the ftpDirectoryTemplatePath for every
3053 Page, not just the first one.
3055 2007-11-06 Adam Roben <aroben@apple.com>
3057 Change WebLocalizableStrings to take UTF-8 C strings
3059 This matches the way things work on the Mac, and will allow source
3060 files containing localizable strings to be shared between Mac and
3061 Windows. The old functions have not been removed for compatibility
3062 reasons, but are now just wrappers around the new UTF-8 functions.
3066 * WebKit.vcproj/WebKit.def: Added new functions.
3067 * WebKit.vcproj/WebKit_debug.def: Ditto.
3068 * WebLocalizableStrings.cpp:
3069 (copyLocalizedStringFromBundle): Changed to take a WebCore::String
3070 representing the key.
3071 (localizedString): Refactored from WebLocalizedString. Takes a
3072 WebCore::String representing the key.
3073 (localizedLPCTSTR): Ditto for WebLocalizedLPCTSTR.
3074 (WebLocalizedStringUTF8): Added. Takes a UTF-8 C string as the key.
3075 (WebLocalizedLPCTSTRUTF8): Ditto.
3076 (WebLocalizedString): Changed to call localizedString.
3077 (WebLocalizedLPCTSTR): Changed to call localizedLPCTSTR.
3078 * WebLocalizableStrings.h: Changed macros to use the new UTF-8
3081 2007-11-06 Darin Adler <darin@apple.com>
3083 Reviewed by Adam and Steve.
3085 - added hooks needed to implement showModalDialog on Windows
3087 * Interfaces/IWebUIDelegate.idl: Added canRunModal, createModalDialog,
3088 and runModal functions to the end of IWebUIDelegate3.
3090 * WebChromeClient.h: Added uiDelegate and uiDelegate2 helper functions,
3091 so it's easier to write client functions.
3092 * WebChromeClient.cpp:
3093 (WebChromeClient::createWindow): Implemented dialog case. Calls IWebUIDelegate3.
3094 (WebChromeClient::canRunModal): Implemented. Calls IWebUIDelegate3.
3095 (WebChromeClient::runModal): Ditto.
3096 (WebChromeClient::uiDelegate): Added.
3097 (WebChromeClient::uiDelegate2): Added.
3098 (WebChromeClient::uiDelegate3): Added.
3100 2007-11-06 Alexey Proskuryakov <ap@webkit.org>
3102 Rubber-stamped by Adam Roben.
3107 (WebFrame::string): plainText() returns a String now.
3109 2007-11-05 Ada Chan <adachan@apple.com>
3111 <rdar://problem/5579772> Regression: AltGr does not work
3112 Testing whether alt-key is down is not the right test for system key event.
3113 Added a m_isSystemKey flag in PlatformKeyboardEvent to keep track of whether
3114 this is a system key event, check that flag instead in handleEditingKeyboardEvent().
3120 (WebView::handleEditingKeyboardEvent):
3125 2007-11-05 Ada Chan <adachan@apple.com>
3129 Reviewed by Tristan.
3131 * WebChromeClient.h:
3133 2007-11-05 Tristan O'Tierney <tristan@apple.com>
3135 Reviewed by Darin Adler.
3137 Part of the WebKit/WebCore API changes for
3138 <rdar://problem/5368188>
3140 * WebChromeClient.cpp:
3141 (WebChromeClient::createWindow):
3142 Removed usage of createModalDialog and revised to use new createWindow
3145 2007-11-04 Adam Roben <aroben@apple.com>
3147 Add IWebCache::disabled
3149 This matches the Mac WebCache class.
3153 * Interfaces/IWebCache.idl:
3155 (WebCache::disabled):
3158 2007-11-04 Adam Roben <aroben@apple.com>
3160 Add IWebInspector and a way to get one from a WebView
3162 This API matches the Mac one added in r27266.
3166 * Interfaces/IWebInspector.idl: Added.
3167 * Interfaces/IWebViewPrivate.idl: Added a new inspector method to
3169 * WebInspector.cpp: Added.
3170 (WebInspector::createInstance):
3171 (WebInspector::WebInspector):
3172 (WebInspector::~WebInspector):
3173 (WebInspector::webViewClosed):
3174 (WebInspector::QueryInterface):
3175 (WebInspector::AddRef):
3176 (WebInspector::Release):
3177 (WebInspector::show):
3178 (WebInspector::showConsole):
3179 (WebInspector::showTimeline):
3180 (WebInspector::close):
3181 (WebInspector::attach):
3182 (WebInspector::detach):
3183 * WebInspector.h: Added.
3184 * WebKit.vcproj/Interfaces.vcproj: Added IWebInspector.idl.
3185 * WebKit.vcproj/WebKit.vcproj: Added WebInspector.{cpp,h}.
3186 * WebKit.vcproj/WebKitGUID.vcproj: Added IWebInspector_i.c.
3188 (WebView::close): Notify the WebInspector that we're closing.
3189 (WebView::inspector): Added.
3192 2007-11-04 Adam Roben <aroben@apple.com>
3194 Cache strings that come directly from WebLocalizedString
3198 * WebLocalizableStrings.cpp:
3199 (copyLocalizedStringFromBundle): This used to be WebLocalizedString,
3200 but is now just a static helper function.
3201 (findCachedStringInMap): Added static helper.
3202 (findCachedString): Refactored and cleaned up code from
3203 WebLocalizedLPCTSTR.
3204 (cacheString): Ditto.
3205 (WebLocalizedString): Rewrote to use the new helper functions.
3206 (WebLocalizedLPCTSTR): Changed to use the new helper functions.
3208 2007-11-03 Adam Roben <aroben@apple.com>
3210 Only override the default user agent string if we're actually given a custom one
3215 (WebView::setCustomUserAgent):
3217 2007-11-01 Oliver Hunt <oliver@apple.com>
3221 Allow Shift, Ctrl, Alt, Meta and Capslock keys to be sent into WebCore.
3227 2007-11-01 Kevin McCullough <kmccullough@apple.com>
3229 - Fixed a build failure
3231 * WebEditorClient.cpp:
3232 (WebEditorClient::textWillBeDeletedInTextField):
3234 2007-11-01 Adam Roben <aroben@apple.com>
3236 Fix the parameter type of WebLocalizedString to match the UI_STRING macro
3240 * WebLocalizableStrings.cpp:
3241 (WebLocalizedString):
3242 (WebLocalizedLPCTSTR):
3243 * WebLocalizableStrings.h:
3245 2007-11-01 Alexey Proskuryakov <ap@webkit.org>
3247 Rubber-stamped by Adam Roben.
3249 Rolled out r27326 - debug CRT seems to cause no problems after all.
3251 * WebKit.vcproj/WebKit.vcproj:
3253 2007-10-31 Adam Roben <aroben@apple.com>
3255 Switch the Debug configuration to using the non-debug CRT
3257 The debug CRT conflicts with what Safari uses, which causes loading
3262 * WebKit.vcproj/WebKit.vcproj:
3264 2007-10-30 Kevin McCullough <kmccullough@apple.com>
3266 Reviewed by Adam and Geoff.
3268 - Added the globalContext method so Drosera can ask a WebFrame for its
3271 * Interfaces/IWebFrame.idl:
3275 2007-10-30 Adele Peterson <adele@apple.com>
3279 WebKitWin part of fix for http://bugs.webkit.org/show_bug.cgi?id=10577
3280 <rdar://problem/5110427> REGRESSION: Caps lock icon should show in password fields
3282 * WebView.cpp: (WebView::keyDown): Call capsLockStateMayHaveChanged so WebCore knows it may have to update a password field.
3284 2007-10-29 Kevin McCullough <kmccullough@apple.com>
3286 Reviewed by Adam and Maciej.
3288 - Added the IWebScriptScope interface which is used by Drosera to get
3289 information and run contextually significant code with respect to the
3290 current JS stack frame.
3292 * Interfaces/IWebScriptCallFrame.idl: Line endings changed, not sure why
3293 but the real changes were to change the return type of scopeChain() and
3294 the return type and name of evaluateWebScript() to
3295 stringByEvaluatingJavaScriptFromString().
3296 * Interfaces/IWebScriptScope.idl: Added.
3297 * WebKit.vcproj/Interfaces.vcproj: Added the new interface.
3298 * WebKit.vcproj/WebKit.vcproj: Added the files for the new class.
3299 * WebKit.vcproj/WebKitGUID.vcproj: Added the new interfaces.
3300 * WebScriptCallFrame.cpp: Changed the return type to E_NOTIMPL and
3301 asserted so it would be obvious if I accidentally try to use one of
3302 these functions before it's implemented.
3303 (WebScriptCallFrame::caller):
3304 (WebScriptCallFrame::scopeChain):
3305 (WebScriptCallFrame::functionName):
3306 (WebScriptCallFrame::stringByEvaluatingJavaScriptFromString):
3307 * WebScriptCallFrame.h: Changed the return types mentioned above.
3308 * WebScriptDebugServer.cpp: Also changed the return type to E_NOTIMPL.
3309 (WebScriptDebugServer::addListener):
3310 (WebScriptDebugServer::removeListener):
3311 (WebScriptDebugServer::step):
3312 (WebScriptDebugServer::pause):
3313 (WebScriptDebugServer::resume):
3314 (WebScriptDebugServer::isPaused):
3315 * WebScriptScope.cpp: Added.
3316 (WebScriptScope::WebScriptScope):
3317 (WebScriptScope::~WebScriptScope):
3318 (WebScriptScope::QueryInterface):
3319 (WebScriptScope::AddRef):
3320 (WebScriptScope::Release):
3321 (WebScriptScope::getVariableNames):
3322 (WebScriptScope::getValueForVariable):
3323 * WebScriptScope.h: Added.
3325 2007-10-28 Darin Adler <darin@apple.com>
3327 - try to fix Windows build
3329 * WebKit.vcproj/WebKit.vcproj: Suppress warning 4800 (conversion to bool),
3330 since we don't want to add !! everywhere, and because HashTable.h has a
3331 conversion to bool of this type now.
3333 2007-10-27 Kevin McCullough <kmccullough@apple.com>
3337 - Stubbed out IWebScriptCallFrame for Drosera.
3339 * Interfaces/IWebScriptCallFrame.idl: Added function declarations.
3340 * WebKit.vcproj/WebKit.vcproj: Added .h/.cpp files to the project.
3341 * WebScriptCallFrame.cpp: Added.
3342 (WebScriptCallFrame::WebScriptCallFrame):
3343 (WebScriptCallFrame::~WebScriptCallFrame):
3344 (WebScriptCallFrame::createInstance):
3345 (WebScriptCallFrame::QueryInterface):
3346 (WebScriptCallFrame::AddRef):
3347 (WebScriptCallFrame::Release):
3348 (WebScriptCallFrame::caller):
3349 (WebScriptCallFrame::scopeChain):
3350 (WebScriptCallFrame::functionName):
3351 (WebScriptCallFrame::evaluateWebScript):
3352 * WebScriptCallFrame.h: Added.
3354 2007-10-26 Kevin McCullough <kmccullough@apple.com>
3356 Reviewed by Sam and Steve.
3358 - Added convenience methods for converting between BSTR and JSSTringRefs
3359 - Added WebKit_debug.def to the project.
3361 * WebKit.vcproj/WebKit.def:
3362 * WebKit.vcproj/WebKit.vcproj:
3363 * WebKit.vcproj/WebKit_debug.def:
3365 2007-10-25 Sam Weinig <sam@webkit.org>
3367 Reviewed by Adam Roben.
3369 Make debug builds run again.
3372 (WebView::notifyPreferencesChanged):
3374 2007-10-25 Sam Weinig <sam@webkit.org>
3376 Reviewed by Adam Roben.
3378 Remove JSStringRefCFHack.
3380 * WebKit.vcproj/WebKit.vcproj:
3382 2007-10-25 Sam Weinig <sam@webkit.org>
3384 Reviewed by Steve Falkenburg.
3386 Fix for <rdar://problem/5463608>
3387 Port WebKit cache model code (Windows needs a big disk cache, smarter memory cache)
3389 * Interfaces/IWebPreferences.idl:
3390 Deprecate pageCacheSize and objectCacheSize and add cacheModel/setCacheModel.
3392 * Interfaces/IWebPreferencesPrivate.idl:
3393 Add automaticallyDetectsCacheModel/setAutomaticallyDetectsCacheModel
3396 (WebFrame::didPerformFirstNavigation):
3397 Implement based on the mac version.
3399 * WebKit.vcproj/WebKit.vcproj:
3400 * WebKitSystemBits.cpp: Added.
3401 (WebMemorySize): Moved and renamed from WebPreferences.cpp
3402 (WebVolumeFreeSize): Added.
3403 * WebKitSystemBits.h: Added.
3404 * WebPreferenceKeysPrivate.h: Added WebKitCacheModelPreferenceKey.
3406 * WebPreferences.cpp:
3407 (WebPreferences::sharedStandardPreferences):
3408 (WebPreferences::WebPreferences):
3409 (WebPreferences::initializeDefaultSettings): Added default for cacheModel.
3410 (WebPreferences::webPreferencesChangedNotification):
3411 (WebPreferences::webPreferencesRemovedNotification):
3412 (WebPreferences::initWithIdentifier): Post a preferences change notification.
3413 (WebPreferences::pageCacheSize): Deprecated.
3414 (WebPreferences::objectCacheSize): Deprecated.
3415 (WebPreferences::cacheModel): Added.
3416 (WebPreferences::setCacheModel): Added.
3417 (WebPreferences::setAutomaticallyDetectsCacheModel): Added.
3418 (WebPreferences::automaticallyDetectsCacheModel): Added.
3419 (WebPreferences::willAddToWebView): Added.
3420 (WebPreferences::didRemoveFromWebView): Added.
3424 (PreferencesChangedOrRemovedObserver::PreferencesChangedOrRemovedObserver):
3425 (PreferencesChangedOrRemovedObserver::~PreferencesChangedOrRemovedObserver):
3426 (PreferencesChangedOrRemovedObserver::QueryInterface):
3427 (PreferencesChangedOrRemovedObserver::AddRef):
3428 (PreferencesChangedOrRemovedObserver::Release):
3429 (PreferencesChangedOrRemovedObserver::sharedInstance):
3430 (PreferencesChangedOrRemovedObserver::onNotify):
3431 (PreferencesChangedOrRemovedObserver::notifyPreferencesChanged):
3432 (PreferencesChangedOrRemovedObserver::notifyPreferencesRemoved):
3433 This singleton class updates static properties for all webviews when
3434 preferenceChange or preferenceRemoved notifications are fired for
3437 (WebView::~WebView):
3438 (initializeStaticObservers):
3440 (WebView::addToAllWebViewsSet):
3441 (WebView::removeFromAllWebViewsSet):
3442 (WebView::setCacheModel):
3443 (WebView::cacheModel):
3444 (WebView::didSetCacheModel):
3445 (WebView::maxCacheModelInAnyInstance):
3448 (WebView::developerExtrasEnabled):
3449 (WebView::initWithFrame):
3450 (WebView::setPreferences):
3451 (WebView::preferences):
3452 (WebView::onNotify):
3453 (WebView::notifyPreferencesChanged):
3454 (updateSharedSettingsFromPreferencesIfNeeded):
3456 Match the macs behavior by using explicit postings of notifications to
3457 update the preferences.
3459 2007-10-25 Adam Roben <aroben@apple.com>
3461 Update WebKit.sln for the removal of Release dftables
3465 * WebKit.vcproj/WebKit.sln:
3467 2007-10-25 Kevin McCullough <kmccullough@apple.com>
3469 Rubber stamped by Geoff.
3471 - Stubbed out the WebScriptDebugServer methods to give Drosera something
3472 to connect to and now the signature of the interface matches the mac.
3474 * Interfaces/IWebScriptDebugServer.idl:
3475 * WebScriptDebugServer.cpp:
3476 (WebScriptDebugServer::addListener):
3477 (WebScriptDebugServer::removeListener):
3478 (WebScriptDebugServer::step):
3479 (WebScriptDebugServer::pause):
3480 (WebScriptDebugServer::resume):
3481 (WebScriptDebugServer::isPaused):
3482 * WebScriptDebugServer.h:
3484 2007-10-24 Kevin McCullough <kmccullough@apple.com>
3488 - Renamed WebDebugProgram to WebScriptDebugServer to match the naming
3491 * Interfaces/IWebDebugProgram.idl: Removed.
3492 * Interfaces/IWebScriptDebugServer.idl: Copied from win/Interfaces/IWebDebugProgram.idl.
3493 * Interfaces/WebKit.idl:
3494 * WebDebugProgram.cpp: Removed.
3495 * WebDebugProgram.h: Removed.
3496 * WebKit.vcproj/Interfaces.vcproj:
3497 * WebKit.vcproj/WebKit.vcproj:
3498 * WebKit.vcproj/WebKitGUID.vcproj:
3499 * WebKitClassFactory.cpp:
3500 (WebKitClassFactory::CreateInstance):
3503 * WebScriptDebugServer.cpp: Copied from win/WebDebugProgram.cpp.
3504 (WebScriptDebugServer::WebScriptDebugServer):
3505 (WebScriptDebugServer::~WebScriptDebugServer):
3506 (WebScriptDebugServer::createInstance):
3507 (WebScriptDebugServer::QueryInterface):
3508 (WebScriptDebugServer::AddRef):
3509 (WebScriptDebugServer::Release):
3510 (WebScriptDebugServer::viewAdded):
3511 (WebScriptDebugServer::viewRemoved):
3512 (WebScriptDebugServer::attach):
3513 (WebScriptDebugServer::detach):
3514 (WebScriptDebugServer::statistics):
3515 (WebScriptDebugServer::webViews):
3516 * WebScriptDebugServer.h: Copied from win/WebDebugProgram.h.
3519 (WebView::~WebView):
3521 2007-10-24 Adam Roben <aroben@apple.com>
3523 Fix <rdar://5549919> Initialize the font database before any font code is invoked
3525 We initialize the database in two places:
3526 1. When instantiating WebKitClassFactory, which is guaranteed to
3527 happen before any WebView is instantiated.
3528 2. When making a WebCore::Font in WebKitGraphics.
3530 This ensures that the font database will be populated before any font
3531 code is invoked. We rely on WebCore to only populate the database
3536 * WebKitClassFactory.cpp:
3537 (WebKitClassFactory::WebKitClassFactory): Populate the font database.
3538 * WebKitGraphics.cpp:
3541 2007-10-24 Adam Roben <aroben@apple.com>
3543 Add [I]WebTextRenderer
3545 Right now this class can only be used to add private fonts for use by
3546 the running process, but will eventually be the home of the
3547 WebKitGraphics functions.
3551 * ForEachCoClass.h: Added WebTextRenderer.
3552 * Interfaces/WebKit.idl: Ditto.
3553 * WebKit.vcproj/Interfaces.vcproj: Ditto.
3554 * WebKit.vcproj/WebKit.vcproj: Ditto.
3555 * WebKit.vcproj/WebKitGUID.vcproj: Ditto.
3556 * WebKitClassFactory.cpp: Ditto.
3557 * WebTextRenderer.cpp: Added.
3558 (WebTextRenderer::createInstance):
3559 (WebTextRenderer::WebTextRenderer):
3560 (WebTextRenderer::~WebTextRenderer):
3561 (WebTextRenderer::QueryInterface):
3562 (WebTextRenderer::AddRef):
3563 (WebTextRenderer::Release):
3564 (WebTextRenderer::registerPrivateFont):
3565 * WebTextRenderer.h: Added.
3567 2007-10-24 Adam Roben <aroben@apple.com>
3569 Use FOR_EACH_COCLASS in WebKitClassFactory
3574 (WebError::createInstance): Added an overload that takes no arguments
3575 to make the macro used in WebKitClassFactory work.
3577 * WebKitClassFactory.cpp:
3578 (WebKitClassFactory::CreateInstance): Use FOR_EACH_COCLASS.
3580 2007-10-24 Adam Roben <aroben@apple.com>
3582 Put FOR_EACH_COCLASS macro into its own file and export it
3584 The macro used to be called FOR_EACH_CLASS and lived in WebKitDLL.cpp.
3585 This way we will be able to use the macro in more places that care
3586 about all WebKit's COM classes.
3590 * ForEachCoClass.h: Added.
3591 * WebKit.vcproj/WebKit.vcproj: Copy ForEachCoClass.h to
3592 WebKitOutputDir, and added it to the project.
3593 * WebKitDLL.cpp: Updated for macro rename, and changed to #undef the
3594 macros we pass to FOR_EACH_COCLASS after we're done with them.
3596 2007-10-24 Ada Chan <adachan@apple.com>
3598 <rdar://problem/5552221> REGRESSION(310A24-ToT): Shortcut key disable. (15604)
3603 (WebView::handleEditingKeyboardEvent): don't handle system key events as text input
3604 (WebView::keyDown): only remove WM_SYSCHAR message from the queue if we handle it.
3605 For WM_SYSCHAR message that we don't handle, let it stay in the queue and return
3606 false to let windows handle it.
3608 2007-10-24 Brady Eidson <beidson@apple.com>
3612 Windows portion of <rdar://5554130>
3614 Slowly introduce Windows WebKit portion of the Database API that sets the
3615 on-disk location for databases
3617 * WebDatabaseManager.cpp: Added.
3618 (WebKitSetWebDatabasesPathIfNecessary):
3619 * WebDatabaseManager.h: Added.
3621 * WebKit.vcproj/WebKit.vcproj:
3624 (WebView::initWithFrame): Call WebKitSetWebDatabasesPathIfNecessary()
3626 2007-10-24 Kevin McCullough <kmccullough@apple.com>
3628 Reviewed by Sam, Steve and Darin.
3630 - Added stubs for what will be neede to let Drosera attach to the
3631 WebKit process and debug it.
3633 * Interfaces/IWebScriptCallFrame.idl: Added.
3634 * Interfaces/IWebScriptDebugListener.idl: Added.
3635 * Interfaces/WebKit.idl:
3636 * WebKit.vcproj/Interfaces.vcproj:
3637 * WebKit.vcproj/WebKitGUID.vcproj:
3639 2007-10-23 Adam Roben <aroben@apple.com>
3641 Move safe file creation code to WebCore
3645 * WebPreferences.cpp:
3646 (preferencesPath): Made into a static helper function.
3647 (WebPreferences::save): Now calls WebCore's safeCreateFile function.
3648 (WebPreferences::load): Uses String/CString to handle the UTF-8
3650 * WebPreferences.h: Removed preferencesPath and
3651 safeCreateFileWithData.
3653 2007-10-23 Adam Roben <aroben@apple.com>
3655 Reduce code duplication by using WebCore's FileSystem functions
3659 * WebIconDatabase.cpp: Removed a now-unused function and a fixed
3661 (WebIconDatabase::init): Changed to use FileSystem functions.
3662 * WebPreferences.cpp:
3663 (WebPreferences::preferencesPath): Ditto.
3665 2007-10-23 Sam Weinig <sam@webkit.org>
3667 Make the WebNotificationCenter work with null (wildcard) and specific
3668 observed objects, matching NSNotificationCenter.
3670 - Removes the ObserverKey, ObserverHash, and ObserverKeyTraits as we now
3671 hash against the notification name only and check the object on notification
3673 - Use OwnPtr for the WebNotificationCenterPrivate member variable.
3675 Reviewed by Adam Roben.
3677 * WebNotificationCenter.cpp:
3678 (WebNotificationCenter::WebNotificationCenter):
3679 (WebNotificationCenter::~WebNotificationCenter):
3680 (WebNotificationCenter::postNotificationInternal):
3681 (WebNotificationCenter::addObserver):
3682 (WebNotificationCenter::postNotification):
3683 (WebNotificationCenter::postNotificationName):
3684 (WebNotificationCenter::removeObserver):
3685 * WebNotificationCenter.h:
3687 2007-10-23 Ada Chan <adachan@apple.com>
3689 <rdar://problem/5244261> SafariWin ignores cookie policy setting "never" in the preferences
3690 Custom WebPreferences (not the shared WebPreferences) could override the cookie accept
3691 policy setting on the default cookie storage. To fix that, I added a new method in
3692 WebView called updateGlobalSettingsFromPreferences() to handle updating the global pref
3693 options such as cookie accept policy, and it's only called to update changes from
3694 the shared WebPreferences.
3696 Use CLSID_WebPreferences and remove IID_WebPreferences.
3698 Reviewed by Darin and Adam.
3700 * WebPreferences.cpp:
3701 (WebPreferences::QueryInterface):
3704 (WebView::updateWebCoreSettingsFromPreferences):
3705 (WebView::updateGlobalSettingsFromPreferences):
3706 (WebView::updateSettingsFromPreferences):
3707 (WebView::developerExtrasEnabled):
3708 (WebView::initWithFrame):
3709 (WebView::onNotify):
3712 2007-10-18 Brady Eidson <beidson@apple.com>
3716 Keep windows building with new Chrome additions
3718 * WebChromeClient.cpp:
3719 * WebChromeClient.h:
3721 2007-10-18 Adam Roben <aroben@apple.com>
3723 Fix <rdar://5547784> ProgIDMacros.h should explicitly use wide strings
3727 * ProgIDMacros.h: Always use wide strings instead of relying on the
3730 2007-10-17 Adam Roben <aroben@apple.com>
3732 Fix for clean builds needed after r26683
3736 * WebView.cpp: Remove #include of non-existant file.
3738 2007-10-17 Anders Carlsson <andersca@apple.com>
3740 Update for locking primitive changes.
3742 * WebIconDatabase.cpp:
3743 (WebIconDatabase::scheduleNotificationDelivery):
3745 2007-10-16 Adam Roben <aroben@apple.com>
3747 Remove WebKitInitializer
3751 * WebKit.vcproj/WebKit.sln:
3753 2007-10-16 Adam Roben <aroben@apple.com>
3759 * WebKit.vcproj/WebKit.sln:
3761 2007-10-16 Adam Roben <aroben@apple.com>
3763 Rename WebKit_debug.dll to WebKit.dll for the Debug configuration
3765 This is needed so that we can stop having Safari delay-load WebKit,
3766 which in turn is needed so that Maciej can land a JavaScript speedup
3767 which breaks delay-loading.
3769 Reviewed by Kevin McCullough.
3771 * WebKit.vcproj/WebKit.vcproj: Use WebKitDLLConfigSuffix for the name
3772 of our DLL and module definition file.
3773 * WebKit.vcproj/debug.vsprops: Added WebKitDLLConfigSuffix.
3774 * WebKit.vcproj/debug_internal.vsprops: Ditto.
3775 * WebKit.vcproj/release.vsprops: Ditto.
3777 2007-10-15 Jon Honeycutt <jhoneycutt@apple.com>
3781 <rdar://5530789>: REGRESSION(303-310A19): Crash opening .wma files with
3782 MediaPlayer for the first time
3784 Failure to setup the stream in PluginView::didReceiveResponse will lead,
3785 in a full-page plugin, to the main document load being cancelled. This
3786 is the case with at least two versions of Windows Media Player, which
3787 cancels the stream and brings up its own "Welcome to Windows Media
3790 As part of the main document load cancellation, m_pluginView is set to
3791 null, and the crash came from dereferencing this pointer. This patch
3795 (WebFrame::finishedLoading): Fix some typos
3796 (WebFrame::committedLoad): Added a null check
3798 2007-10-15 Alice Liu <alice.liu@apple.com>
3800 Reviewed by Sam Weinig.
3802 Fixed <rdar://5382546> layoutTestController.setCustomPolicyDelegate is unimplemented causing tests to fail
3804 * DefaultPolicyDelegate.cpp: Added.
3805 Implementation is a direct port of WebKit/DefaultDelegates/WebDefaultPolicyDelegate.m
3806 (DefaultPolicyDelegate::DefaultPolicyDelegate):
3807 (DefaultPolicyDelegate::~DefaultPolicyDelegate):
3808 (DefaultPolicyDelegate::sharedInstance):
3809 (DefaultPolicyDelegate::createInstance):
3810 (DefaultPolicyDelegate::QueryInterface):
3811 (DefaultPolicyDelegate::AddRef):
3812 (DefaultPolicyDelegate::Release):
3813 (DefaultPolicyDelegate::decidePolicyForNavigationAction):
3814 (DefaultPolicyDelegate::decidePolicyForNewWindowAction):
3815 (DefaultPolicyDelegate::decidePolicyForMIMEType):
3816 (DefaultPolicyDelegate::unableToImplementPolicyWithError):
3817 * DefaultPolicyDelegate.h: Added.
3819 (WebFrame::dispatchDecidePolicyForNavigationAction):
3820 Implemented default action
3821 * WebKit.vcproj/WebKit.vcproj:
3822 Adding files to project
3824 2007-10-12 Steve Falkenburg <sfalken@apple.com>
3826 Move pthreads up in the linker order and don't mark it for delay load.
3827 Fixes crash during regsvr32 of WebKit (currently repro if you do a spade ti).
3829 Reviewed by Darin, Ada.
3831 * WebKit.vcproj/WebKit.vcproj:
3833 2007-10-11 Steve Falkenburg <sfalken@apple.com>
3835 Delay load additional libraries to improve startup time.
3837 Reviewed by Darin, Ada.
3839 * WebKit.vcproj/WebKit.vcproj:
3841 2007-10-11 Ada Chan <adachan@apple.com>
3843 <rdar://problem/5534421>
3844 Switched to using wkGetDefaultHTTPCookieStorage() to avoid recreating CFHTTPCookieStorageRef.
3845 Removed usage of ResourceHandle::cookieStorage().
3850 (WebView::updateWebCoreSettingsFromPreferences):
3851 (WebView::initWithFrame):
3853 2007-10-10 Alice Liu <alice.liu@apple.com>
3855 Reviewed by Geoff Garen.
3857 Fixed <rdar://5464402> Crash when running fast/frames/onload-remove-iframe-crash.html in DRT
3860 (WebFrame::createFrame):
3861 The crash was caused by the early destruction of the subframe. To resolve this issue,
3862 the manual deref of the child frame that occurs in between being appended to the
3863 frametree and being used in loadURLIntoChild wasn't exactly incorrect, but just needed
3864 to be moved until after loadURLIntoChild. This hasn't been a problem for other uses of
3865 child frames because this test case involves removing a child frame immediately after
3866 loading it, all in an onload handler. Even better than just moving the deref would be
3867 to change the signature of createFrame to use a RefPtr<Frame> so that a manual deref isn't
3868 necessary. This is what was done in this patch.
3870 createFrame() now returns a RefPtr instead of a raw Frame pointer.
3871 Making this change improves the way we handle frames on Windows WebKit.
3874 2007-10-05 Ada Chan <adachan@apple.com>
3876 <rdar://problem/5436617>
3877 Implement WebIconDatabase::delayDatabaseCleanup() and WebIconDatabase::allowDatabaseCleanup().
3881 * WebIconDatabase.cpp:
3882 (WebIconDatabase::delayDatabaseCleanup):
3883 (WebIconDatabase::allowDatabaseCleanup):
3885 2007-10-04 Adele Peterson <adele@apple.com>
3887 * Interfaces/IWebViewPrivate.idl: Moving setInitialFocus down to the end to avoid breaking the OpenSource build.
3889 2007-10-04 Adele Peterson <adele@apple.com>
3893 WebKit/win part of fix for <rdar://problem/5369017> REGRESSION: Can't tab to webview that doesn't have editable content
3895 * WebView.cpp: Added setInitialFocus so the application can specify that its handing off focus to WebKit
3896 and so that it can specify the focus direction.
3898 * Interfaces/IWebViewPrivate.idl: ditto.
3900 2007-10-03 Ada Chan <adachan@apple.com>
3902 <rdar://problem/5521230> Implement IWebIconDatabase::iconURLForURL in WebKit for windows
3904 Reviewed by Steve and Brady.
3906 * Interfaces/IWebIconDatabase.idl:
3907 * WebIconDatabase.cpp:
3908 (WebIconDatabase::iconURLForURL):
3909 * WebIconDatabase.h:
3911 2007-10-02 Sam Weinig <sam@webkit.org>
3913 Rubber-stamped by Adam Roben.
3915 * Interfaces/IWebPreferences.idl: Remove unnecessary comments.
3917 2007-10-02 Darin Adler <darin@apple.com>
3921 - started using the new OwnPtr everywhere we do DeleteObject
3923 * WebNodeHighlight.cpp:
3924 (WebNodeHighlight::updateWindow):
3927 (WebView::deleteBackingStore):
3928 (WebView::ensureBackingStore):
3929 (WebView::addToDirtyRegion):
3930 (WebView::scrollBackingStore):
3931 (WebView::updateBackingStore):
3933 (WebView::paintIntoBackingStore):
3934 (WebView::paintIntoWindow):
3937 2007-10-02 Adam Roben <aroben@apple.com>
3939 Fix <rdar://5505062> WebKit's version-independent ProgIDs contain version numbers
3941 I also added a few registry keys for our version-independent ProgIDs
3942 that we were missing.
3946 * ProgIDMacros.h: Added new macros to get version-independent ProgIDs.
3947 * WebKitDLL.cpp: Use the version-independent ProgIDs in the right
3948 places, and added some new keys for version-independent ProgIDs.
3950 2007-10-02 Anders Carlsson <andersca@apple.com>
3954 Fix a bug discovered by app verifier where we would treat an LPCTSTR as a BSTR causing a crash.
3956 Also rename some protection space constants and change their values to match the mac version.
3958 * Interfaces/IWebURLAuthenticationChallenge.idl:
3959 * WebURLProtectionSpace.cpp:
3960 (WebURLProtectionSpace::initWithHost):
3961 (WebURLProtectionSpace::initWithProxyHost):
3962 (WebURLProtectionSpace::protocol):
3963 (WebURLProtectionSpace::proxyType):
3965 2007-09-29 Adam Roben <aroben@apple.com>
3967 Clean-up in preparation for <rdar://5505062> WebKit's version-independent ProgIDs contain version numbers
3971 * ProgIDMacros.h: Stringify the passed in class name.
3972 * WebKitDLL.cpp: Added a FOR_EACH_CLASS macro to ensure that our class
3973 lists stay in the right order, and updated uses of the *_PROGID macros
3974 for to take the stringification into account.
3976 2007-09-27 Kevin McCullough <kmccullough@apple.com>
3980 - <rdar://5261371> Nothing downloaded when exporting bookmarks from iGoogle web history
3981 - Implemented IWebHTTPURLResponse::allHeaderFields so that if the content disposition is "attachment" we will download the file instead of display it. Also implemented some missing functionality.
3983 * HTTPHeaderPropertyBag.cpp: Added.
3984 (HTTPHeaderPropertyBag::HTTPHeaderPropertyBag):
3985 (HTTPHeaderPropertyBag::createInstance):
3986 (HTTPHeaderPropertyBag::setResponse):
3987 (HTTPHeaderPropertyBag::response):
3988 (HTTPHeaderPropertyBag::QueryInterface):
3989 (HTTPHeaderPropertyBag::AddRef):
3990 (HTTPHeaderPropertyBag::Release):
3991 (ConvertFromLPCOLESTR):
3993 (ConvertFromVariant):
3994 (HTTPHeaderPropertyBag::Read):
3995 (HTTPHeaderPropertyBag::Write):
3996 * HTTPHeaderPropertyBag.h: Added.
3997 * Interfaces/IWebHTTPURLResponse.idl:
3998 * WebKit.vcproj/WebKit.vcproj:
3999 * WebURLResponse.cpp:
4000 (WebURLResponse::allHeaderFields):
4001 (WebURLResponse::isAttachment):
4004 2007-09-27 Ada Chan <adachan@apple.com>
4006 <rdar://problem/5507481> Added a delegate method to inform the client
4007 app that WebView has painted.
4011 * Interfaces/IWebUIDelegatePrivate.idl:
4013 (WebView::updateBackingStore):
4015 2007-09-25 Adam Roben <aroben@apple.com>
4017 Add WebKitInitializer to WebKit.sln
4021 * WebKit.vcproj/WebKit.sln: DumpRenderTree and testkjs now depend on
4024 2007-09-25 Darin Adler <darin@apple.com>
4028 - fix <rdar://problem/5095701> Download requring HTTP auth fails
4029 (progress bar forever)
4031 The functions in WebDownload relating to authentication challenges needed
4035 (WebDownload::cancelAuthenticationChallenge): Implement.
4036 (WebDownload::continueWithoutCredentialForAuthenticationChallenge): Ditto.
4037 (WebDownload::useCredential): Ditto.
4038 (WebDownload::willSendRequest): Fix storage leak by adopting request
4039 and response after creating them. Also retain the result before returning
4040 it, since that's the API contract with CFNetwork.
4041 (WebDownload::didReceiveAuthenticationChallenge): Implement.
4042 (WebDownload::didReceiveResponse): Fix storage leak by adopting response.
4043 (WebDownload::willResumeWithResponse): Ditto.
4044 (WebDownload::didFail): Ditto.
4046 * WebURLAuthenticationChallenge.h: Get rid of the IID #define,
4047 instead using __declspec(uuid). Added a sender parameter to the
4048 create function and an m_sender data member.
4049 * WebURLAuthenticationChallenge.cpp:
4050 (WebURLAuthenticationChallenge::WebURLAuthenticationChallenge): Added an
4051 explicit sender parameter so this can be used with a WebDownload, which
4052 does not involve a ResourceHandle. Later we should clean this up and not
4053 involve WebCore or ResourceHandle directly even for the non-download case.
4054 (WebURLAuthenticationChallenge::createInstance): Added an overload for the
4055 case with an explicit sender parameter.
4056 (WebURLAuthenticationChallenge::QueryInterface): Use __uuidof for the ID
4057 of this class. In general, we should move to __uuidof as much as possible
4058 and keep the separate macros to a minimum -- but we should do this for all
4059 uses of each class at one time to make sure we don't run into problems
4060 with two different UUIDs for the same class. This patch does it for three
4062 (WebURLAuthenticationChallenge::initWithProtectionSpace): Use the query
4063 constructor instead of an explicit QueryInterface for WebURLCredential.
4064 This is another class where I'm switching from CLSID/IID macros to the
4065 use of __uuidof, but in this case the use of __uuidof is implicit.
4066 (WebURLAuthenticationChallenge::initWithAuthenticationChallenge): Ditto,
4067 but for WebURLAuthenticationChallenge and WebURLAuthenticationChallengeSender.
4068 (WebURLAuthenticationChallenge::sender): Use the new m_sender member to
4069 cache the sender object and also use the one that was passed into the
4070 constructor, if any.
4072 * WebURLAuthenticationChallengeSender.h: Get rid of the IID #define,
4073 instead using __declspec(uuid). Also minimize includes and make data
4074 members private instead of protected.
4075 * WebURLAuthenticationChallengeSender.cpp:
4076 (WebURLAuthenticationChallengeSender::QueryInterface): Use __uuidof instead
4078 (WebURLAuthenticationChallengeSender::cancelAuthenticationChallenge):
4079 Use query constructor instead of QueryInterface.
4080 (WebURLAuthenticationChallengeSender::continueWithoutCredentialForAuthenticationChallenge):
4082 (WebURLAuthenticationChallengeSender::useCredential): Ditto.
4084 * WebURLCredential.cpp: (WebURLCredential::QueryInterface): Use __uuidof
4085 instead of CLSID_WebURLCredential.
4087 - tangentially-related cleanup
4090 (WebFrame::dispatchDidReceiveAuthenticationChallenge): Use the adopt
4091 constructor instead of a separate adoptRef call.
4092 (WebFrame::dispatchDidCancelAuthenticationChallenge): Ditto.
4094 2007-09-24 Brady Eidson <beidson@apple.com>
4096 Reviewed by John Sullivan
4098 Fix for <rdar://5493371> - Crash in Icon Database on Windows
4100 * WebIconDatabase.cpp:
4101 (WebIconDatabase::iconForURL): If the URL is NULL, fallback to the default icon without asking WebCore
4103 2007-09-24 Adam Roben <aroben@apple.com>
4105 Fix <rdar://5499507> FrameView will always have size (0,0) if its parent WebView is never resized
4110 (WebView::initWithFrame): Set the main FrameView's size to the size of
4113 2007-09-21 Kevin McCullough <kmccullough@apple.com>
4115 - Fixed a syntax guideline mistake.
4117 * WebChromeClient.cpp:
4118 (WebChromeClient::scrollbarsVisible):
4120 2007-09-20 Oliver Hunt <oliver@apple.com>
4124 <rdar://problem/5487153> Korean characters are displayed as garbage with default encoding in some Korean web sites
4126 Adding support for per-localisation default character encodings on
4129 * English.lproj/Localizable.strings:
4130 * WebPreferences.cpp:
4131 (WebPreferences::initializeDefaultSettings):
4133 2007-09-20 Kevin McCullough <kmccullough@apple.com>
4137 - Added the ability to ask if scrollbars are visible
4138 - <rdar://problem/5496211> scrollbarsVisible in WebChromeClient is not implemented
4140 * WebChromeClient.cpp:
4141 (WebChromeClient::scrollbarsVisible):
4143 2007-09-20 Ada Chan <adachan@apple.com>
4145 <rdar://problem/5477240> Regression: Footer is too high in print preview
4150 (WebFrame::WebFrame): initialize new data member m_pageHeight, which is the height of the page adjusted for margins.
4151 (WebFrame::computePageRects): get the height of the page adjusted for margins by passing m_pageHeight to
4152 computePageRectsForFrame().
4153 (WebFrame::spoolPages): footer rect's top is the max of the bottom of the page content and the bottom of the page
4154 minus footer height.
4157 2007-09-19 Kevin McCullough <kmccullough@apple.com>
4161 - <rdar://problem/5101991> Avril Lavigne music player comes up in a window with scrollbars
4162 - Implementing missing scrollbar functionality to allow turning off scrollbars correctly.
4164 * Interfaces/IWebFrame.idl:
4165 * Interfaces/IWebFrameView.idl:
4166 * WebChromeClient.cpp:
4167 (WebChromeClient::setScrollbarsVisible):
4169 (WebFrame::setAllowsScrolling):
4170 (WebFrame::allowsScrolling):
4171 (WebFrame::frameView):
4174 2007-09-20 Brady Eidson <beidson@apple.com>
4176 Reviewed by Dave Hyatt
4178 <rdar://problem/5245981> - No favicon shows up for cnet.com
4180 * WebIconDatabase.cpp:
4181 (WebIconDatabase::iconForURL): Call getHBITMAPOfSize
4182 (WebIconDatabase::getOrCreateDefaultIconBitmap): Ditto
4184 2007-09-19 Sam Weinig <sam@webkit.org>
4186 Rubber stamped by Adam Roben.
4188 * WebKit.vcproj/WebKit.sln: Update location of DumpRenderTree and TestNetscapePlugin
4189 to point to their new locations.
4191 2007-09-18 Brady Eidson <beidson@apple.com>
4195 Final part of <rdar://problem/5471308> - Hook up async icon database on Windows
4197 * CFDictionaryPropertyBag.cpp:
4198 (CFDictionaryPropertyBag::CFDictionaryPropertyBag): Took the opportunity to rewrite with a RetainPtr
4199 since it became available after the initial implementation
4200 (CFDictionaryPropertyBag::setDictionary):
4201 (CFDictionaryPropertyBag::dictionary): Added accessor to the CFDictionaryRef to ease use within WebKit
4202 (CFDictionaryPropertyBag::QueryInterface): Added IID_CFDictionaryPropertyBag accessor
4203 (CFDictionaryPropertyBag::Read):
4204 (CFDictionaryPropertyBag::Write):
4205 * CFDictionaryPropertyBag.h: Added IID_CFDictionaryPropertyBag
4208 (WebFrame::url): Added accessor, gets the current URL from WebCore
4209 (WebFrame::dispatchDidReceiveIcon): Calls through to the WebView
4210 (WebFrame::registerForIconNotification): Ditto
4213 * WebIconDatabase.cpp:
4214 (WebIconDatabase::iconDatabaseDidAddIconNotification):
4215 (WebIconDatabase::iconDatabaseNotificationUserInfoURLKey):
4216 (WebIconDatabase::iconDatabaseDidRemoveAllIconsNotification):
4217 (postDidRemoveAllIconsNotification):
4218 (postDidAddIconNotification):
4219 * WebIconDatabase.h:
4222 (WebView::close): Unregister for the notification, just in case
4223 (WebView::notifyDidAddIcon): Called when the webview gets the didAddIcon notification, compares the url
4224 in the notification to the current main frame URL. If they match, calls to dispatchDidReceiveIconFromWebFrame
4225 (WebView::registerForIconNotification):
4226 (WebView::dispatchDidReceiveIconFromWebFrame): Dispatches the FrameLoadDelegate call. Once the delegate call is dispatched,
4227 either via the FrameLoaderClient interface of by listening for a notification, we know that our info is up to date in the
4228 IconDatabase and we don't need to listen for the generic notification any long, so we unregister for it here, as well.
4229 (WebView::onNotify): The WebView listens for two notifications now, so make the decision which was received
4232 2007-09-18 Brady Eidson <beidson@apple.com>
4234 Reviewed by Ada and Geoff
4236 Part of <rdar://problem/5471308> - Get async Icon Database fully hooked up on Windows
4238 Hook up main thread delivery of Icon Database notifications from the secondary thread
4240 * WebIconDatabase.cpp:
4241 (WebIconDatabase::WebIconDatabase): Initialize m_deliveryRequested
4242 (WebIconDatabase::init): Set the IconDatabaseClient to the shared WebIconDatabase
4243 (WebIconDatabase::dispatchDidRemoveAllIcons): Queue the notification to be delivered on the main thread then
4244 ask for the delivery
4245 (WebIconDatabase::dispatchDidAddIconForPageURL): Ditto
4246 (WebIconDatabase::scheduleNotificationDelivery): If the m_deliveryRequested hasn't been set, then set it
4247 and perform the callOnMainThread() for WebIconDatabase::deliverNotifications
4248 (postDidRemoveAllIconsNotification):
4249 (postDidAddIconNotification):
4250 (WebIconDatabase::deliverNotifications): Deliver all notifications in the current queue
4251 * WebIconDatabase.h:
4253 2007-09-17 Geoffrey Garen <ggaren@apple.com>
4255 Reviewed by Darin Adler.
4257 Fixed a hang due to an infinite script running in the window's unload
4258 event handler, which may be the cause of <rdar://problem/5479443>
4259 REGRESSION: Hang due to infinite JS recursion on close @ engadget.com
4262 Added a bunch of WebKitMac's close features, and reordered others to
4267 (WebView::removeDragCaret):
4269 2007-09-17 Adam Roben <aroben@apple.com>
4271 Fix <rdar://4979801> overflow divs don't respond to keyboard scrolling (affects RSS pages)
4276 (WebView::keyDown): Attempt to scroll an overflow area before
4277 scrolling the whole frame.
4279 2007-09-17 Brady Eidson <beidson@apple.com>
4283 <rdar://problem/5471308> - Get async Icon Database fully hooked up on Windows
4285 Add a global "shut down WebKit" procedure to do cleanup at the engine level on quit.
4286 Critical now for the IconDatabase and might be for other things in the future.