| Index: webkit/tools/test_shell/test_webview_delegate.h
|
| diff --git a/webkit/tools/test_shell/test_webview_delegate.h b/webkit/tools/test_shell/test_webview_delegate.h
|
| deleted file mode 100644
|
| index 334e2a33c7e58e37f4539a38e465a7df21ece2eb..0000000000000000000000000000000000000000
|
| --- a/webkit/tools/test_shell/test_webview_delegate.h
|
| +++ /dev/null
|
| @@ -1,430 +0,0 @@
|
| -// Copyright (c) 2012 The Chromium Authors. All rights reserved.
|
| -// Use of this source code is governed by a BSD-style license that can be
|
| -// found in the LICENSE file.
|
| -
|
| -// TestWebViewDelegate class:
|
| -// This class implements the WebViewDelegate methods for the test shell. One
|
| -// instance is owned by each TestShell.
|
| -
|
| -#ifndef WEBKIT_TOOLS_TEST_SHELL_TEST_WEBVIEW_DELEGATE_H_
|
| -#define WEBKIT_TOOLS_TEST_SHELL_TEST_WEBVIEW_DELEGATE_H_
|
| -
|
| -#include <map>
|
| -#include <set>
|
| -#include <string>
|
| -#include <vector>
|
| -
|
| -#include "base/basictypes.h"
|
| -#include "base/memory/scoped_ptr.h"
|
| -#include "base/memory/weak_ptr.h"
|
| -#include "base/string16.h"
|
| -#include "build/build_config.h"
|
| -#include "third_party/WebKit/Source/Platform/chromium/public/WebFileSystem.h"
|
| -#include "third_party/WebKit/Source/Platform/chromium/public/WebFileSystemType.h"
|
| -#include "third_party/WebKit/Source/Platform/chromium/public/WebGraphicsContext3D.h"
|
| -#include "third_party/WebKit/Source/Platform/chromium/public/WebRect.h"
|
| -#include "third_party/WebKit/Source/WebKit/chromium/public/WebContextMenuData.h"
|
| -#include "third_party/WebKit/Source/WebKit/chromium/public/WebFrameClient.h"
|
| -#include "third_party/WebKit/Source/WebKit/chromium/public/WebPopupType.h"
|
| -#include "third_party/WebKit/Source/WebKit/chromium/public/WebViewClient.h"
|
| -#include "webkit/glue/webcursor.h"
|
| -#include "webkit/plugins/npapi/webplugin_page_delegate.h"
|
| -#include "webkit/tools/test_shell/mock_spellcheck.h"
|
| -#include "webkit/tools/test_shell/test_navigation_controller.h"
|
| -
|
| -#if defined(OS_MACOSX)
|
| -#include "third_party/WebKit/Source/WebKit/chromium/public/WebPopupMenuInfo.h"
|
| -#endif
|
| -
|
| -#if defined(OS_WIN)
|
| -#include <windows.h>
|
| -
|
| -#include "webkit/tools/test_shell/drop_delegate.h"
|
| -#endif
|
| -
|
| -#if defined(TOOLKIT_GTK)
|
| -#include <gdk/gdk.h>
|
| -#endif
|
| -
|
| -class GURL;
|
| -class TestShell;
|
| -class WebWidgetHost;
|
| -
|
| -namespace WebKit {
|
| -class WebDeviceOrientationClient;
|
| -class WebStorageNamespace;
|
| -struct WebWindowFeatures;
|
| -}
|
| -
|
| -class TestWebViewDelegate : public WebKit::WebViewClient,
|
| - public WebKit::WebFrameClient,
|
| - public webkit::npapi::WebPluginPageDelegate,
|
| - public base::SupportsWeakPtr<TestWebViewDelegate> {
|
| - public:
|
| - struct CapturedContextMenuEvent {
|
| - CapturedContextMenuEvent(int in_node_type,
|
| - int in_x,
|
| - int in_y)
|
| - : node_type(in_node_type),
|
| - x(in_x),
|
| - y(in_y) {
|
| - }
|
| -
|
| - int node_type;
|
| - int x;
|
| - int y;
|
| - };
|
| -
|
| - typedef std::vector<CapturedContextMenuEvent> CapturedContextMenuEvents;
|
| -
|
| - // WebKit::WebViewClient
|
| - virtual WebKit::WebView* createView(
|
| - WebKit::WebFrame* creator,
|
| - const WebKit::WebURLRequest& request,
|
| - const WebKit::WebWindowFeatures& features,
|
| - const WebKit::WebString& frame_name,
|
| - WebKit::WebNavigationPolicy policy);
|
| - virtual WebKit::WebWidget* createPopupMenu(WebKit::WebPopupType popup_type);
|
| - virtual WebKit::WebWidget* createPopupMenu(
|
| - const WebKit::WebPopupMenuInfo& info);
|
| - virtual WebKit::WebStorageNamespace* createSessionStorageNamespace(
|
| - unsigned quota);
|
| - virtual void didAddMessageToConsole(
|
| - const WebKit::WebConsoleMessage& message,
|
| - const WebKit::WebString& source_name, unsigned source_line);
|
| - virtual void didStartLoading();
|
| - virtual void didStopLoading();
|
| - virtual bool shouldBeginEditing(const WebKit::WebRange& range);
|
| - virtual bool shouldEndEditing(const WebKit::WebRange& range);
|
| - virtual bool shouldInsertNode(
|
| - const WebKit::WebNode& node, const WebKit::WebRange& range,
|
| - WebKit::WebEditingAction action);
|
| - virtual bool shouldInsertText(
|
| - const WebKit::WebString& text, const WebKit::WebRange& range,
|
| - WebKit::WebEditingAction action);
|
| - virtual bool shouldChangeSelectedRange(
|
| - const WebKit::WebRange& from, const WebKit::WebRange& to,
|
| - WebKit::WebTextAffinity affinity, bool still_selecting);
|
| - virtual bool shouldDeleteRange(const WebKit::WebRange& range);
|
| - virtual bool shouldApplyStyle(
|
| - const WebKit::WebString& style, const WebKit::WebRange& range);
|
| - virtual void didBeginEditing();
|
| - virtual void didChangeSelection(bool is_selection_empty);
|
| - virtual void didChangeContents();
|
| - virtual void didEndEditing();
|
| - virtual bool handleCurrentKeyboardEvent();
|
| - virtual void spellCheck(
|
| - const WebKit::WebString& text, int& misspelledOffset,
|
| - int& misspelledLength);
|
| - virtual WebKit::WebString autoCorrectWord(
|
| - const WebKit::WebString& misspelled_word);
|
| - virtual void runModalAlertDialog(
|
| - WebKit::WebFrame* frame, const WebKit::WebString& message);
|
| - virtual bool runModalConfirmDialog(
|
| - WebKit::WebFrame* frame, const WebKit::WebString& message);
|
| - virtual bool runModalPromptDialog(
|
| - WebKit::WebFrame* frame, const WebKit::WebString& message,
|
| - const WebKit::WebString& default_value, WebKit::WebString* actual_value);
|
| - virtual bool runModalBeforeUnloadDialog(
|
| - WebKit::WebFrame* frame, const WebKit::WebString& message);
|
| - virtual void setStatusText(const WebKit::WebString& text);
|
| - virtual void startDragging(
|
| - WebKit::WebFrame* frame, const WebKit::WebDragData& data,
|
| - WebKit::WebDragOperationsMask mask, const WebKit::WebImage& image,
|
| - const WebKit::WebPoint& offset);
|
| - virtual void navigateBackForwardSoon(int offset);
|
| - virtual int historyBackListCount();
|
| - virtual int historyForwardListCount();
|
| - virtual WebKit::WebNotificationPresenter* notificationPresenter();
|
| - virtual WebKit::WebGeolocationClient* geolocationClient();
|
| - virtual WebKit::WebDeviceOrientationClient* deviceOrientationClient();
|
| - virtual WebKit::WebSpeechInputController* speechInputController(
|
| - WebKit::WebSpeechInputListener*);
|
| -
|
| - // WebKit::WebWidgetClient
|
| - virtual void didInvalidateRect(const WebKit::WebRect& rect);
|
| - virtual void didScrollRect(int dx, int dy,
|
| - const WebKit::WebRect& clip_rect);
|
| - virtual void scheduleComposite();
|
| - virtual void scheduleAnimation();
|
| - virtual void didFocus();
|
| - virtual void didBlur();
|
| - virtual void didChangeCursor(const WebKit::WebCursorInfo& cursor);
|
| - virtual void closeWidgetSoon();
|
| - virtual void show(WebKit::WebNavigationPolicy policy);
|
| - virtual void runModal();
|
| - virtual WebKit::WebRect windowRect();
|
| - virtual void setWindowRect(const WebKit::WebRect& rect);
|
| - virtual WebKit::WebRect rootWindowRect();
|
| - virtual WebKit::WebRect windowResizerRect();
|
| - virtual WebKit::WebScreenInfo screenInfo();
|
| -
|
| - // WebKit::WebFrameClient
|
| - virtual WebKit::WebPlugin* createPlugin(
|
| - WebKit::WebFrame*, const WebKit::WebPluginParams&);
|
| - virtual WebKit::WebMediaPlayer* createMediaPlayer(
|
| - WebKit::WebFrame*, const WebKit::WebURL&, WebKit::WebMediaPlayerClient*);
|
| - virtual WebKit::WebApplicationCacheHost* createApplicationCacheHost(
|
| - WebKit::WebFrame*, WebKit::WebApplicationCacheHostClient*);
|
| - virtual bool allowPlugins(WebKit::WebFrame* frame, bool enabled_per_settings);
|
| - virtual bool allowImage(WebKit::WebFrame* frame,
|
| - bool enabled_per_settings,
|
| - const WebKit::WebURL& image_url);
|
| - virtual void loadURLExternally(
|
| - WebKit::WebFrame*, const WebKit::WebURLRequest&,
|
| - WebKit::WebNavigationPolicy);
|
| - virtual WebKit::WebNavigationPolicy decidePolicyForNavigation(
|
| - WebKit::WebFrame*, WebKit::WebDataSource::ExtraData*,
|
| - const WebKit::WebURLRequest&, WebKit::WebNavigationType,
|
| - WebKit::WebNavigationPolicy default_policy, bool isRedirect);
|
| - // DEPRECATED
|
| - virtual WebKit::WebNavigationPolicy decidePolicyForNavigation(
|
| - WebKit::WebFrame*, const WebKit::WebURLRequest&,
|
| - WebKit::WebNavigationType, WebKit::WebNavigationPolicy default_policy,
|
| - bool isRedirect);
|
| - virtual bool canHandleRequest(
|
| - WebKit::WebFrame*, const WebKit::WebURLRequest&);
|
| - virtual WebKit::WebURLError cannotHandleRequestError(
|
| - WebKit::WebFrame*, const WebKit::WebURLRequest& request);
|
| - virtual WebKit::WebURLError cancelledError(
|
| - WebKit::WebFrame*, const WebKit::WebURLRequest& request);
|
| - virtual void unableToImplementPolicyWithError(
|
| - WebKit::WebFrame*, const WebKit::WebURLError&);
|
| - virtual void willPerformClientRedirect(
|
| - WebKit::WebFrame*, const WebKit::WebURL& from, const WebKit::WebURL& to,
|
| - double interval, double fire_time);
|
| - virtual void didCancelClientRedirect(WebKit::WebFrame*);
|
| - virtual void didCreateDataSource(
|
| - WebKit::WebFrame*, WebKit::WebDataSource*);
|
| - virtual void didStartProvisionalLoad(WebKit::WebFrame*);
|
| - virtual void didReceiveServerRedirectForProvisionalLoad(WebKit::WebFrame*);
|
| - virtual void didFailProvisionalLoad(
|
| - WebKit::WebFrame*, const WebKit::WebURLError&);
|
| - virtual void didCommitProvisionalLoad(
|
| - WebKit::WebFrame*, bool is_new_navigation);
|
| - virtual void didReceiveTitle(
|
| - WebKit::WebFrame*, const WebKit::WebString& title,
|
| - WebKit::WebTextDirection direction);
|
| - virtual void didFinishDocumentLoad(WebKit::WebFrame*);
|
| - virtual void didHandleOnloadEvents(WebKit::WebFrame*);
|
| - virtual void didFinishLoad(WebKit::WebFrame*);
|
| - virtual void didNavigateWithinPage(
|
| - WebKit::WebFrame*, bool is_new_navigation);
|
| - virtual void didChangeLocationWithinPage(
|
| - WebKit::WebFrame*);
|
| - virtual void assignIdentifierToRequest(
|
| - WebKit::WebFrame*, unsigned identifier, const WebKit::WebURLRequest&);
|
| - virtual void willSendRequest(
|
| - WebKit::WebFrame*, unsigned identifier, WebKit::WebURLRequest&,
|
| - const WebKit::WebURLResponse& redirectResponse);
|
| - virtual void didReceiveResponse(
|
| - WebKit::WebFrame*, unsigned identifier, const WebKit::WebURLResponse&);
|
| - virtual void didFinishResourceLoad(
|
| - WebKit::WebFrame*, unsigned identifier);
|
| - virtual void didFailResourceLoad(
|
| - WebKit::WebFrame*, unsigned identifier, const WebKit::WebURLError&);
|
| - virtual void didDisplayInsecureContent(WebKit::WebFrame* frame);
|
| - virtual void didRunInsecureContent(
|
| - WebKit::WebFrame* frame,
|
| - const WebKit::WebSecurityOrigin& origin,
|
| - const WebKit::WebURL& target_url);
|
| - virtual bool allowScript(WebKit::WebFrame* frame, bool enabled_per_settings);
|
| - virtual void openFileSystem(
|
| - WebKit::WebFrame* frame,
|
| - WebKit::WebFileSystemType type,
|
| - long long size,
|
| - bool create,
|
| - WebKit::WebFileSystemCallbacks* callbacks);
|
| -
|
| - // webkit::npapi::WebPluginPageDelegate
|
| - virtual webkit::npapi::WebPluginDelegate* CreatePluginDelegate(
|
| - const base::FilePath& url,
|
| - const std::string& mime_type) OVERRIDE;
|
| - virtual WebKit::WebPlugin* CreatePluginReplacement(
|
| - const base::FilePath& file_path) OVERRIDE;
|
| - virtual void CreatedPluginWindow(
|
| - gfx::PluginWindowHandle handle) OVERRIDE;
|
| - virtual void WillDestroyPluginWindow(
|
| - gfx::PluginWindowHandle handle) OVERRIDE;
|
| - virtual void DidMovePlugin(
|
| - const webkit::npapi::WebPluginGeometry& move) OVERRIDE;
|
| - virtual void DidStartLoadingForPlugin() OVERRIDE {}
|
| - virtual void DidStopLoadingForPlugin() OVERRIDE {}
|
| - virtual WebKit::WebCookieJar* GetCookieJar() OVERRIDE;
|
| -
|
| - explicit TestWebViewDelegate(TestShell* shell);
|
| - virtual ~TestWebViewDelegate();
|
| - void Reset();
|
| -
|
| - // Additional accessors
|
| -#if defined(OS_WIN)
|
| - IDropTarget* drop_delegate() { return drop_delegate_.get(); }
|
| -#endif
|
| -
|
| - void set_pending_extra_data(TestShellExtraData* extra_data) {
|
| - pending_extra_data_.reset(extra_data);
|
| - }
|
| -
|
| - // Methods for modifying WebPreferences
|
| - void SetUserStyleSheetEnabled(bool is_enabled);
|
| - void SetUserStyleSheetLocation(const GURL& location);
|
| - void SetAuthorAndUserStylesEnabled(bool is_enabled);
|
| -
|
| - // Sets the webview as a drop target.
|
| - void RegisterDragDrop();
|
| - void RevokeDragDrop();
|
| -
|
| - void ResetDragDrop();
|
| -
|
| - void SetCustomPolicyDelegate(bool is_custom, bool is_permissive);
|
| - void WaitForPolicyDelegate();
|
| -
|
| - void set_clear_header(const std::string& header) {
|
| - clear_headers_.insert(header);
|
| - }
|
| - const std::set<std::string>& clear_headers() {
|
| - return clear_headers_;
|
| - }
|
| -
|
| - void set_block_redirects(bool block_redirects) {
|
| - block_redirects_ = block_redirects;
|
| - }
|
| - bool block_redirects() const {
|
| - return block_redirects_;
|
| - }
|
| -
|
| - void set_request_return_null(bool request_return_null) {
|
| - request_return_null_ = request_return_null;
|
| - }
|
| - bool request_return_null() const {
|
| - return request_return_null_;
|
| - }
|
| -
|
| - void SetEditCommand(const std::string& name, const std::string& value) {
|
| - edit_command_name_ = name;
|
| - edit_command_value_ = value;
|
| - }
|
| -
|
| - void ClearEditCommand() {
|
| - edit_command_name_.clear();
|
| - edit_command_value_.clear();
|
| - }
|
| -
|
| - void ClearContextMenuData();
|
| -
|
| - const WebKit::WebContextMenuData* last_context_menu_data() const {
|
| - return last_context_menu_data_.get();
|
| - }
|
| -
|
| - MockSpellCheck* mock_spellcheck() {
|
| - return &mock_spellcheck_;
|
| - }
|
| -
|
| - private:
|
| - // Called the title of the page changes.
|
| - // Can be used to update the title of the window.
|
| - void SetPageTitle(const base::string16& title);
|
| -
|
| - // Called when the URL of the page changes.
|
| - // Extracts the URL and forwards on to SetAddressBarURL().
|
| - void UpdateAddressBar(WebKit::WebView* webView);
|
| -
|
| - // Called when the URL of the page changes.
|
| - // Should be used to update the text of the URL bar.
|
| - void SetAddressBarURL(const GURL& url);
|
| -
|
| - // Show a JavaScript alert as a popup message.
|
| - // The caller should test whether we're in layout test mode and only
|
| - // call this function when we really want a message to pop up.
|
| - void ShowJavaScriptAlert(const base::string16& message);
|
| -
|
| - // Tests that require moving or resizing the main window (via resizeTo() or
|
| - // moveTo()) pass in Chrome even though Chrome disregards move requests for
|
| - // non-popup windows (see TabContents::RequestMove()). These functions allow
|
| - // the test shell to mimic its behavior. If setWindowRect() is called for
|
| - // the main window, the passed in WebRect is saved as fake_rect_ and we return
|
| - // it instead of the real window dimensions whenever rootWindowRect() is
|
| - // called.
|
| - WebKit::WebRect fake_window_rect();
|
| - void set_fake_window_rect(const WebKit::WebRect&);
|
| -
|
| - WebWidgetHost* GetWidgetHost();
|
| -
|
| - void UpdateForCommittedLoad(WebKit::WebFrame* frame, bool is_new_navigation);
|
| - void UpdateURL(WebKit::WebFrame* frame);
|
| - void UpdateSessionHistory(WebKit::WebFrame* frame);
|
| - void UpdateSelectionClipboard(bool is_empty_selection);
|
| -
|
| - // Get a string suitable for dumping a frame to the console.
|
| - base::string16 GetFrameDescription(WebKit::WebFrame* webframe);
|
| -
|
| - // Causes navigation actions just printout the intended navigation instead
|
| - // of taking you to the page. This is used for cases like mailto, where you
|
| - // don't actually want to open the mail program.
|
| - bool policy_delegate_enabled_;
|
| -
|
| - // Toggles the behavior of the policy delegate. If true, then navigations
|
| - // will be allowed. Otherwise, they will be ignored (dropped).
|
| - bool policy_delegate_is_permissive_;
|
| -
|
| - // If true, the policy delegate will signal layout test completion.
|
| - bool policy_delegate_should_notify_done_;
|
| -
|
| - // Non-owning pointer. The delegate is owned by the host.
|
| - TestShell* shell_;
|
| -
|
| - // For tracking session history. See RenderView.
|
| - int page_id_;
|
| - int last_page_id_updated_;
|
| -
|
| - scoped_ptr<TestShellExtraData> pending_extra_data_;
|
| -
|
| - // Maps resource identifiers to a descriptive string.
|
| - typedef std::map<uint32, std::string> ResourceMap;
|
| - ResourceMap resource_identifier_map_;
|
| - std::string GetResourceDescription(uint32 identifier);
|
| -
|
| - scoped_ptr<WebKit::WebContextMenuData> last_context_menu_data_;
|
| -
|
| - WebCursor current_cursor_;
|
| -
|
| - WebKit::WebRect fake_rect_;
|
| - bool using_fake_rect_;
|
| -
|
| -#if defined(OS_WIN)
|
| - // Classes needed by drag and drop.
|
| - scoped_refptr<TestDropDelegate> drop_delegate_;
|
| -#endif
|
| -
|
| -#if defined(TOOLKIT_GTK)
|
| - // The type of cursor the window is currently using.
|
| - // Used for judging whether a new SetCursor call is actually changing the
|
| - // cursor.
|
| - GdkCursorType cursor_type_;
|
| -#endif
|
| -
|
| -#if defined(OS_MACOSX)
|
| - scoped_ptr<WebKit::WebPopupMenuInfo> popup_menu_info_;
|
| - WebKit::WebRect popup_bounds_;
|
| -#endif
|
| -
|
| - // Set of headers to clear in willSendRequest.
|
| - std::set<std::string> clear_headers_;
|
| -
|
| - // true if we should block any redirects
|
| - bool block_redirects_;
|
| -
|
| - // true if we should block (set an empty request for) any requests
|
| - bool request_return_null_;
|
| -
|
| - // Edit command associated to the current keyboard event.
|
| - std::string edit_command_name_;
|
| - std::string edit_command_value_;
|
| -
|
| - // The mock spellchecker used in TestWebViewDelegate::spellCheck().
|
| - MockSpellCheck mock_spellcheck_;
|
| -
|
| - DISALLOW_COPY_AND_ASSIGN(TestWebViewDelegate);
|
| -};
|
| -
|
| -#endif // WEBKIT_TOOLS_TEST_SHELL_TEST_WEBVIEW_DELEGATE_H_
|
|
|