From f05b935882198ccf7d81675736e3aeb089c5113a Mon Sep 17 00:00:00 2001 From: Ben Murdoch Date: Thu, 5 May 2011 14:36:32 +0100 Subject: Merge WebKit at r74534: Initial merge by git. Change-Id: I6ccd1154fa1b19c2ec2a66878eb675738735f1eb --- .../WindowGeometryInitializedBeforeSetWindow.cpp | 90 ---------------------- 1 file changed, 90 deletions(-) delete mode 100644 WebKitTools/DumpRenderTree/TestNetscapePlugIn/Tests/win/WindowGeometryInitializedBeforeSetWindow.cpp (limited to 'WebKitTools/DumpRenderTree/TestNetscapePlugIn/Tests/win/WindowGeometryInitializedBeforeSetWindow.cpp') diff --git a/WebKitTools/DumpRenderTree/TestNetscapePlugIn/Tests/win/WindowGeometryInitializedBeforeSetWindow.cpp b/WebKitTools/DumpRenderTree/TestNetscapePlugIn/Tests/win/WindowGeometryInitializedBeforeSetWindow.cpp deleted file mode 100644 index 8054497..0000000 --- a/WebKitTools/DumpRenderTree/TestNetscapePlugIn/Tests/win/WindowGeometryInitializedBeforeSetWindow.cpp +++ /dev/null @@ -1,90 +0,0 @@ -/* - * Copyright (C) 2010 Apple Inc. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS'' - * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, - * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS - * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR - * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF - * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS - * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN - * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF - * THE POSSIBILITY OF SUCH DAMAGE. - */ - -#include "PluginTest.h" - -#include "PluginObject.h" - -using namespace std; - -// Plugin's HWND should be sized/positioned before NPP_SetWindow is called. - -class WindowGeometryInitializedBeforeSetWindow : public PluginTest { -public: - WindowGeometryInitializedBeforeSetWindow(NPP npp, const string& identifier) - : PluginTest(npp, identifier) - , m_didReceiveInitialSetWindowCall(false) - { - } - -private: - virtual NPError NPP_SetWindow(NPP instance, NPWindow* window) - { - if (m_didReceiveInitialSetWindowCall) - return NPERR_NO_ERROR; - m_didReceiveInitialSetWindowCall = true; - - if (window->type != NPWindowTypeWindow) { - pluginLog(instance, "window->type should be NPWindowTypeWindow but was %d", window->type); - return NPERR_GENERIC_ERROR; - } - - HWND hwnd = reinterpret_cast(window->window); - RECT rect; - if (!::GetClientRect(hwnd, &rect)) { - pluginLog(instance, "::GetClientRect failed"); - return NPERR_GENERIC_ERROR; - } - - if (::IsRectEmpty(&rect)) { - pluginLog(instance, "Plugin's HWND has not been sized when NPP_SetWindow is called"); - return NPERR_GENERIC_ERROR; - } - - HWND parent = ::GetParent(hwnd); - if (!parent) { - pluginLog(instance, "::GetParent failed"); - return NPERR_GENERIC_ERROR; - } - - // MSDN says that calling ::MapWindowPoints this way will tell it we're passing a RECT rather than two POINTs. - if (!::MapWindowPoints(hwnd, parent, reinterpret_cast(&rect), 2)) { - pluginLog(instance, "::MapWindowPoints failed"); - return NPERR_GENERIC_ERROR; - } - - if (rect.left != window->x || rect.top != window->y || (rect.right - rect.left) != window->width || (rect.bottom - rect.top) != window->height) { - pluginLog(instance, "HWND's rect and NPWindow's rect are not equal"); - return NPERR_GENERIC_ERROR; - } - - pluginLog(instance, "Plugin's HWND has been sized and positioned before NPP_SetWindow was called"); - return NPERR_NO_ERROR; - } - - bool m_didReceiveInitialSetWindowCall; -}; - -static PluginTest::Register windowGeometryInitializedBeforeSetWindow("window-geometry-initialized-before-set-window"); -- cgit v1.1