| OLD | NEW |
| 1 // Copyright (c) 2006-2009 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2006-2009 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 // WebCore provides hooks for several kinds of functionality, allowing separate | 5 // WebCore provides hooks for several kinds of functionality, allowing separate |
| 6 // classes termed "delegates" to receive notifications (in the form of direct | 6 // classes termed "delegates" to receive notifications (in the form of direct |
| 7 // function calls) when certain events are about to occur or have just occurred. | 7 // function calls) when certain events are about to occur or have just occurred. |
| 8 // In some cases, the delegate implements the needed functionality; in others, | 8 // In some cases, the delegate implements the needed functionality; in others, |
| 9 // the delegate has some control over the behavior but doesn't actually | 9 // the delegate has some control over the behavior but doesn't actually |
| 10 // implement it. For example, the UI delegate is responsible for showing a | 10 // implement it. For example, the UI delegate is responsible for showing a |
| 11 // dialog box or otherwise handling a JavaScript window.alert() call, via the | 11 // dialog box or otherwise handling a JavaScript window.alert() call, via the |
| 12 // RunJavaScriptAlert() method. On the other hand, the editor delegate doesn't | 12 // RunJavaScriptAlert() method. On the other hand, the editor delegate doesn't |
| 13 // actually handle editing functionality, although it could (for example) | 13 // actually handle editing functionality, although it could (for example) |
| 14 // override whether a content-editable node accepts editing focus by returning | 14 // override whether a content-editable node accepts editing focus by returning |
| 15 // false from ShouldBeginEditing(). (It would also possible for a more | 15 // false from ShouldBeginEditing(). (It would also possible for a more |
| 16 // special-purpose editing delegate to act on the edited node in some way, e.g. | 16 // special-purpose editing delegate to act on the edited node in some way, e.g. |
| 17 // to highlight modified text in the DidChangeContents() method.) | 17 // to highlight modified text in the DidChangeContents() method.) |
| 18 | 18 |
| 19 // WebKit divides the delegated tasks into several different classes, but we | 19 // WebKit divides the delegated tasks into several different classes, but we |
| 20 // combine them into a single WebViewDelegate. This single delegate encompasses | 20 // combine them into a single WebViewDelegate. This single delegate encompasses |
| 21 // the needed functionality of the WebKit UIDelegate, ContextMenuDelegate, | 21 // the needed functionality of the WebKit UIDelegate, ContextMenuDelegate, |
| 22 // PolicyDelegate, FrameLoadDelegate, and EditorDelegate; additional portions | 22 // PolicyDelegate, FrameLoadDelegate, and EditorDelegate; additional portions |
| 23 // of ChromeClient and FrameLoaderClient not delegated in the WebKit | 23 // of ChromeClient and FrameLoaderClient not delegated in the WebKit |
| 24 // implementation; and some WebView additions. | 24 // implementation; and some WebView additions. |
| 25 | 25 |
| 26 #ifndef WEBKIT_GLUE_WEBVIEW_DELEGATE_H_ | 26 #ifndef WEBKIT_GLUE_WEBVIEW_DELEGATE_H_ |
| 27 #define WEBKIT_GLUE_WEBVIEW_DELEGATE_H_ | 27 #define WEBKIT_GLUE_WEBVIEW_DELEGATE_H_ |
| 28 | 28 |
| 29 #include <vector> | |
| 30 | |
| 31 #include "webkit/api/public/WebDragOperation.h" | |
| 32 #include "webkit/api/public/WebFrame.h" | |
| 33 #include "webkit/api/public/WebTextDirection.h" | |
| 34 #include "webkit/api/public/WebViewClient.h" | 29 #include "webkit/api/public/WebViewClient.h" |
| 35 #include "webkit/glue/context_menu.h" | |
| 36 | |
| 37 namespace WebCore { | |
| 38 class AccessibilityObject; | |
| 39 } | |
| 40 | |
| 41 namespace WebKit { | |
| 42 class WebDragData; | |
| 43 class WebNotificationPresenter; | |
| 44 class WebWidget; | |
| 45 struct WebPopupMenuInfo; | |
| 46 struct WebPoint; | |
| 47 struct WebRect; | |
| 48 } | |
| 49 | |
| 50 class FilePath; | |
| 51 class SkBitmap; | |
| 52 class WebDevToolsAgentDelegate; | |
| 53 class WebView; | |
| 54 | 30 |
| 55 // TODO(darin): Eliminate WebViewDelegate in favor of WebViewClient. | 31 // TODO(darin): Eliminate WebViewDelegate in favor of WebViewClient. |
| 56 class WebViewDelegate : public WebKit::WebViewClient { | 32 class WebViewDelegate : public WebKit::WebViewClient { |
| 57 public: | |
| 58 // DevTools ---------------------------------------------------------------- | |
| 59 | |
| 60 virtual WebDevToolsAgentDelegate* GetWebDevToolsAgentDelegate() { | |
| 61 return NULL; | |
| 62 } | |
| 63 | |
| 64 protected: | 33 protected: |
| 65 ~WebViewDelegate() { } | 34 ~WebViewDelegate() { } |
| 66 }; | 35 }; |
| 67 | 36 |
| 68 #endif // WEBKIT_GLUE_WEBVIEW_DELEGATE_H_ | 37 #endif // WEBKIT_GLUE_WEBVIEW_DELEGATE_H_ |
| OLD | NEW |