[Win] Maintain consistent COM Interfaces
https://bugs.webkit.org/show_bug.cgi?id=146983
<rdar://problem/21822278>

Reviewed by Dean Jackson.

Source/WebKit/win:

Keep WebKit's COM interface compatible with software
linked against earlier WebKit releases:
1. Update IDL to present the same interface as earlier
   releases of WebKit.
2. Add new interface objects (i.g., IWebFrame2) extending
   earlier interfaces when adding new methods.
3. Update our internal software to use the correct interface
   objects.

* DefaultPolicyDelegate.cpp:
(DefaultPolicyDelegate::decidePolicyForNavigationAction):
* Interfaces/IWebEditingDelegate.idl:
* Interfaces/IWebFrame.idl:
* Interfaces/IWebPreferencesPrivate.idl:
* Interfaces/IWebSecurityOrigin.idl:
* Interfaces/IWebUIDelegatePrivate.idl:
* Interfaces/IWebViewPrivate.idl:
* Interfaces/WebKit.idl:
* WebCoreSupport/WebEditorClient.cpp:
(WebEditorClient::shouldInsertNode):
* WebFrame.cpp:
(WebFrame::updateBackground):
(WebFrame::isMainFrame):
* WebFrame.h:
* WebPreferences.cpp:
(WebPreferences::initializeDefaultSettings):
(WebPreferences::QueryInterface):
(WebPreferences::setMockScrollbarsEnabled):
(WebPreferences::screenFontSubstitutionEnabled):
(WebPreferences::setScreenFontSubstitutionEnabled):
(WebPreferences::hyperlinkAuditingEnabled):
(WebPreferences::unused4):
(WebPreferences::shouldPaintNativeControls):
(WebPreferences::setShouldPaintNativeControls):
(WebPreferences::setDeveloperExtrasEnabled):
(WebPreferences::authorAndUserStylesEnabled):
(WebPreferences::inApplicationChromeMode):
* WebPreferences.h:
* WebSecurityOrigin.cpp:
(WebSecurityOrigin::QueryInterface):
(WebSecurityOrigin::setQuota):
(WebSecurityOrigin::initWithURL):
* WebSecurityOrigin.h:
* WebView.cpp:
(WebView::QueryInterface):
(WebView::notifyPreferencesChanged):
(WebView::selectedRangeForTesting):
(WebView::setLoadResourcesSerially):
* WebView.h:

Tools:

Update DumpRenderTree and WinLauncher to use the properly
versioned COM interface objects.

* DumpRenderTree/win/AccessibilityControllerWin.cpp:
(AccessibilityController::rootElement):
* DumpRenderTree/win/DumpRenderTree.cpp:
(resetWebPreferencesToConsistentValues):
(resetWebViewToConsistentStateBeforeTesting):
(runTest):
(createWebViewAndOffscreenWindow):
* DumpRenderTree/win/EditingDelegate.cpp:
(EditingDelegate::QueryInterface):
(EditingDelegate::shouldEndEditingInDOMRange):
(EditingDelegate::shouldInsertNode):
* DumpRenderTree/win/EditingDelegate.h:
* DumpRenderTree/win/EventSender.cpp:
(scalePageByCallback):
* DumpRenderTree/win/FrameLoadDelegate.cpp:
(FrameLoadDelegate::didCommitLoadForFrame):
* DumpRenderTree/win/TestRunnerWin.cpp:
(TestRunner::callShouldCloseOnWebView):
(TestRunner::applicationCacheDiskUsageForOrigin):
(TestRunner::clearApplicationCacheForOrigin):
(TestRunner::setDefersLoading):
(TestRunner::setDomainRelaxationForbiddenForURLScheme):
(TestRunner::setTabKeyCyclesThroughElements):
(TestRunner::setValueForUser):
(TestRunner::dispatchPendingLoadRequests):
(TestRunner::setWindowIsKey):
(TestRunner::execCommand):
(TestRunner::addOriginAccessWhitelistEntry):
(TestRunner::removeOriginAccessWhitelistEntry):
(TestRunner::addUserScript):
(TestRunner::addUserStyleSheet):
(TestRunner::showWebInspector):
(TestRunner::closeWebInspector):
(TestRunner::evaluateInWebInspector):
(TestRunner::setSerializeHTTPLoads):
* DumpRenderTree/win/TextInputControllerWin.cpp:
(TextInputController::setMarkedText):
(TextInputController::hasMarkedText):
(TextInputController::unmarkText):
(TextInputController::markedRange):
(TextInputController::insertText):
(TextInputController::firstRectForCharacterRange):
(TextInputController::selectedRange):
* DumpRenderTree/win/UIDelegate.h:
(UIDelegate::unused2):
(UIDelegate::unused3):
(UIDelegate::webViewScrolled):
(UIDelegate::webViewShouldInterruptJavaScript):
(UIDelegate::webViewReceivedFocus):
(UIDelegate::unused4): Deleted.
* TestWebKitAPI/Tests/WebKit/win/WebViewDestruction.cpp:
(TestWebKitAPI::WebViewDestructionWithHostWindow::SetUp):
* WinLauncher/PageLoadTestClient.cpp:
(PageLoadTestClient::didStartProvisionalLoad):
* WinLauncher/WinLauncher.cpp:
(WinLauncher::init):
* WinLauncher/WinLauncher.h:
* WinLauncher/WinLauncherWebHost.cpp:
(WinLauncherWebHost::didFinishLoadForFrame):
(WinLauncherWebHost::didFirstLayoutInFrame):
* WinLauncher/WinLauncherWebHost.h:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@186881 268f45cc-cd09-0410-ab3c-d52691b4dbfc
34 files changed