| OLD | NEW |
| 1 // Copyright (c) 2009 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 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 #ifndef WEBKIT_GLUE_WEBVIEW_IMPL_H_ | 5 #ifndef WEBKIT_GLUE_WEBVIEW_IMPL_H_ |
| 6 #define WEBKIT_GLUE_WEBVIEW_IMPL_H_ | 6 #define WEBKIT_GLUE_WEBVIEW_IMPL_H_ |
| 7 | 7 |
| 8 #include <set> | 8 #include <set> |
| 9 | 9 |
| 10 #include "base/basictypes.h" | 10 #include "base/basictypes.h" |
| (...skipping 55 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 66 virtual WebFrame* GetPreviousFrameBefore(WebFrame* frame, bool wrap); | 66 virtual WebFrame* GetPreviousFrameBefore(WebFrame* frame, bool wrap); |
| 67 virtual WebFrame* GetNextFrameAfter(WebFrame* frame, bool wrap); | 67 virtual WebFrame* GetNextFrameAfter(WebFrame* frame, bool wrap); |
| 68 virtual void Resize(const WebKit::WebSize& new_size); | 68 virtual void Resize(const WebKit::WebSize& new_size); |
| 69 virtual WebKit::WebSize GetSize() { return size(); } | 69 virtual WebKit::WebSize GetSize() { return size(); } |
| 70 virtual void Layout(); | 70 virtual void Layout(); |
| 71 virtual void Paint(skia::PlatformCanvas* canvas, const WebKit::WebRect& rect); | 71 virtual void Paint(skia::PlatformCanvas* canvas, const WebKit::WebRect& rect); |
| 72 virtual bool HandleInputEvent(const WebKit::WebInputEvent* input_event); | 72 virtual bool HandleInputEvent(const WebKit::WebInputEvent* input_event); |
| 73 virtual void MouseCaptureLost(); | 73 virtual void MouseCaptureLost(); |
| 74 virtual void SetFocus(bool enable); | 74 virtual void SetFocus(bool enable); |
| 75 virtual void ClearFocusedNode(); | 75 virtual void ClearFocusedNode(); |
| 76 virtual void StoreFocusForFrame(WebFrame* frame); | |
| 77 virtual bool ImeSetComposition(int string_type, | 76 virtual bool ImeSetComposition(int string_type, |
| 78 int cursor_position, | 77 int cursor_position, |
| 79 int target_start, | 78 int target_start, |
| 80 int target_end, | 79 int target_end, |
| 81 const std::wstring& ime_string); | 80 const std::wstring& ime_string); |
| 82 virtual bool ImeUpdateStatus(bool* enable_ime, | 81 virtual bool ImeUpdateStatus(bool* enable_ime, |
| 83 WebKit::WebRect* caret_rect); | 82 WebKit::WebRect* caret_rect); |
| 84 virtual void SetTextDirection(WebTextDirection direction); | 83 virtual void SetTextDirection(WebTextDirection direction); |
| 85 virtual void StopLoading(); | 84 virtual void StopLoading(); |
| 86 virtual void SetBackForwardListSize(int size); | 85 virtual void SetBackForwardListSize(int size); |
| 87 virtual void RestoreFocus(); | |
| 88 virtual void SetInitialFocus(bool reverse); | 86 virtual void SetInitialFocus(bool reverse); |
| 89 virtual bool DownloadImage(int id, const GURL& image_url, int image_size); | 87 virtual bool DownloadImage(int id, const GURL& image_url, int image_size); |
| 90 virtual void SetPreferences(const WebPreferences& preferences); | 88 virtual void SetPreferences(const WebPreferences& preferences); |
| 91 virtual const WebPreferences& GetPreferences(); | 89 virtual const WebPreferences& GetPreferences(); |
| 92 virtual void SetPageEncoding(const std::wstring& encoding_name); | 90 virtual void SetPageEncoding(const std::wstring& encoding_name); |
| 93 virtual std::wstring GetMainFrameEncodingName(); | 91 virtual std::wstring GetMainFrameEncodingName(); |
| 94 virtual void ZoomIn(bool text_only); | 92 virtual void ZoomIn(bool text_only); |
| 95 virtual void ZoomOut(bool text_only); | 93 virtual void ZoomOut(bool text_only); |
| 96 virtual void ResetZoom(); | 94 virtual void ResetZoom(); |
| 97 virtual void CopyImageAt(int x, int y); | 95 virtual void CopyImageAt(int x, int y); |
| (...skipping 83 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 181 | 179 |
| 182 // Handles context menu events orignated via the the keyboard. These | 180 // Handles context menu events orignated via the the keyboard. These |
| 183 // include the VK_APPS virtual key and the Shift+F10 combine. | 181 // include the VK_APPS virtual key and the Shift+F10 combine. |
| 184 // Code is based on the Webkit function | 182 // Code is based on the Webkit function |
| 185 // bool WebView::handleContextMenuEvent(WPARAM wParam, LPARAM lParam) in | 183 // bool WebView::handleContextMenuEvent(WPARAM wParam, LPARAM lParam) in |
| 186 // webkit\webkit\win\WebView.cpp. The only significant change in this | 184 // webkit\webkit\win\WebView.cpp. The only significant change in this |
| 187 // function is the code to convert from a Keyboard event to the Right | 185 // function is the code to convert from a Keyboard event to the Right |
| 188 // Mouse button down event. | 186 // Mouse button down event. |
| 189 bool SendContextMenuEvent(const WebKit::WebKeyboardEvent& event); | 187 bool SendContextMenuEvent(const WebKit::WebKeyboardEvent& event); |
| 190 | 188 |
| 191 // Releases references used to restore focus. | |
| 192 void ReleaseFocusReferences(); | |
| 193 | |
| 194 // Notifies the WebView that a load has been committed. | 189 // Notifies the WebView that a load has been committed. |
| 195 // is_new_navigation will be true if a new session history item should be | 190 // is_new_navigation will be true if a new session history item should be |
| 196 // created for that load. | 191 // created for that load. |
| 197 void DidCommitLoad(bool* is_new_navigation); | 192 void DidCommitLoad(bool* is_new_navigation); |
| 198 | 193 |
| 199 bool context_menu_allowed() const { | 194 bool context_menu_allowed() const { |
| 200 return context_menu_allowed_; | 195 return context_menu_allowed_; |
| 201 } | 196 } |
| 202 | 197 |
| 203 // Set the disposition for how this webview is to be initially shown. | 198 // Set the disposition for how this webview is to be initially shown. |
| (...skipping 27 matching lines...) Expand all Loading... |
| 231 ~WebViewImpl(); | 226 ~WebViewImpl(); |
| 232 | 227 |
| 233 void ModifySelection(uint32 message, | 228 void ModifySelection(uint32 message, |
| 234 WebCore::Frame* frame, | 229 WebCore::Frame* frame, |
| 235 const WebCore::PlatformKeyboardEvent& e); | 230 const WebCore::PlatformKeyboardEvent& e); |
| 236 | 231 |
| 237 scoped_refptr<WebViewDelegate> delegate_; | 232 scoped_refptr<WebViewDelegate> delegate_; |
| 238 WebKit::WebSize size_; | 233 WebKit::WebSize size_; |
| 239 | 234 |
| 240 WebKit::WebPoint last_mouse_position_; | 235 WebKit::WebPoint last_mouse_position_; |
| 241 // Reference to the Frame that last had focus. This is set once when | |
| 242 // we lose focus, and used when focus is gained to reinstall focus to | |
| 243 // the correct element. | |
| 244 RefPtr<WebCore::Frame> last_focused_frame_; | |
| 245 // Reference to the node that last had focus. | |
| 246 RefPtr<WebCore::Node> last_focused_node_; | |
| 247 scoped_ptr<WebCore::Page> page_; | 236 scoped_ptr<WebCore::Page> page_; |
| 248 | 237 |
| 249 webkit_glue::BackForwardListClientImpl back_forward_list_client_impl_; | 238 webkit_glue::BackForwardListClientImpl back_forward_list_client_impl_; |
| 250 | 239 |
| 251 // This flag is set when a new navigation is detected. It is used to satisfy | 240 // This flag is set when a new navigation is detected. It is used to satisfy |
| 252 // the corresponding argument to WebViewDelegate::DidCommitLoadForFrame. | 241 // the corresponding argument to WebViewDelegate::DidCommitLoadForFrame. |
| 253 bool observed_new_navigation_; | 242 bool observed_new_navigation_; |
| 254 #ifndef NDEBUG | 243 #ifndef NDEBUG |
| 255 // Used to assert that the new navigation we observed is the same navigation | 244 // Used to assert that the new navigation we observed is the same navigation |
| 256 // when we make use of observed_new_navigation_. | 245 // when we make use of observed_new_navigation_. |
| (...skipping 106 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 363 static const WebKit::WebInputEvent* current_input_event() { | 352 static const WebKit::WebInputEvent* current_input_event() { |
| 364 return g_current_input_event; | 353 return g_current_input_event; |
| 365 } | 354 } |
| 366 private: | 355 private: |
| 367 static const WebKit::WebInputEvent* g_current_input_event; | 356 static const WebKit::WebInputEvent* g_current_input_event; |
| 368 | 357 |
| 369 DISALLOW_COPY_AND_ASSIGN(WebViewImpl); | 358 DISALLOW_COPY_AND_ASSIGN(WebViewImpl); |
| 370 }; | 359 }; |
| 371 | 360 |
| 372 #endif // WEBKIT_GLUE_WEBVIEW_IMPL_H_ | 361 #endif // WEBKIT_GLUE_WEBVIEW_IMPL_H_ |
| OLD | NEW |