OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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 CONTENT_RENDERER_RENDER_VIEW_IMPL_H_ | 5 #ifndef CONTENT_RENDERER_RENDER_VIEW_IMPL_H_ |
6 #define CONTENT_RENDERER_RENDER_VIEW_IMPL_H_ | 6 #define CONTENT_RENDERER_RENDER_VIEW_IMPL_H_ |
7 | 7 |
8 #include <stddef.h> | 8 #include <stddef.h> |
9 #include <stdint.h> | 9 #include <stdint.h> |
10 | 10 |
(...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
43 #include "content/renderer/stats_collection_observer.h" | 43 #include "content/renderer/stats_collection_observer.h" |
44 #include "ipc/ipc_platform_file.h" | 44 #include "ipc/ipc_platform_file.h" |
45 #include "third_party/WebKit/public/platform/WebInputEvent.h" | 45 #include "third_party/WebKit/public/platform/WebInputEvent.h" |
46 #include "third_party/WebKit/public/platform/WebSecurityOrigin.h" | 46 #include "third_party/WebKit/public/platform/WebSecurityOrigin.h" |
47 #include "third_party/WebKit/public/web/WebAXObject.h" | 47 #include "third_party/WebKit/public/web/WebAXObject.h" |
48 #include "third_party/WebKit/public/web/WebConsoleMessage.h" | 48 #include "third_party/WebKit/public/web/WebConsoleMessage.h" |
49 #include "third_party/WebKit/public/web/WebDataSource.h" | 49 #include "third_party/WebKit/public/web/WebDataSource.h" |
50 #include "third_party/WebKit/public/web/WebElement.h" | 50 #include "third_party/WebKit/public/web/WebElement.h" |
51 #include "third_party/WebKit/public/web/WebFrameWidget.h" | 51 #include "third_party/WebKit/public/web/WebFrameWidget.h" |
52 #include "third_party/WebKit/public/web/WebHistoryItem.h" | 52 #include "third_party/WebKit/public/web/WebHistoryItem.h" |
53 #include "third_party/WebKit/public/web/WebIconURL.h" | |
54 #include "third_party/WebKit/public/web/WebNavigationType.h" | 53 #include "third_party/WebKit/public/web/WebNavigationType.h" |
55 #include "third_party/WebKit/public/web/WebNode.h" | 54 #include "third_party/WebKit/public/web/WebNode.h" |
56 #include "third_party/WebKit/public/web/WebViewClient.h" | 55 #include "third_party/WebKit/public/web/WebViewClient.h" |
57 #include "ui/base/window_open_disposition.h" | 56 #include "ui/base/window_open_disposition.h" |
58 #include "ui/gfx/geometry/rect.h" | 57 #include "ui/gfx/geometry/rect.h" |
59 #include "ui/gfx/geometry/rect_f.h" | 58 #include "ui/gfx/geometry/rect_f.h" |
60 #include "ui/surface/transport_dib.h" | 59 #include "ui/surface/transport_dib.h" |
61 | 60 |
62 #if defined(OS_ANDROID) | 61 #if defined(OS_ANDROID) |
63 #include "content/renderer/android/renderer_date_time_picker.h" | 62 #include "content/renderer/android/renderer_date_time_picker.h" |
64 #endif | 63 #endif |
65 | 64 |
66 #if defined(COMPILER_MSVC) | 65 #if defined(COMPILER_MSVC) |
67 // RenderViewImpl is a diamond-shaped hierarchy, with WebWidgetClient at the | 66 // RenderViewImpl is a diamond-shaped hierarchy, with WebWidgetClient at the |
68 // root. VS warns when we inherit the WebWidgetClient method implementations | 67 // root. VS warns when we inherit the WebWidgetClient method implementations |
69 // from RenderWidget. It's safe to ignore that warning. | 68 // from RenderWidget. It's safe to ignore that warning. |
70 #pragma warning(disable: 4250) | 69 #pragma warning(disable: 4250) |
71 #endif | 70 #endif |
72 | 71 |
73 namespace blink { | 72 namespace blink { |
74 class WebDataSource; | 73 class WebDataSource; |
75 class WebDateTimeChooserCompletion; | 74 class WebDateTimeChooserCompletion; |
76 class WebGestureEvent; | 75 class WebGestureEvent; |
77 class WebIconURL; | |
78 class WebMouseEvent; | 76 class WebMouseEvent; |
79 class WebSpeechRecognizer; | 77 class WebSpeechRecognizer; |
80 class WebStorageNamespace; | 78 class WebStorageNamespace; |
81 class WebURLRequest; | 79 class WebURLRequest; |
82 struct WebActiveWheelFlingParameters; | 80 struct WebActiveWheelFlingParameters; |
83 struct WebDateTimeChooserParams; | 81 struct WebDateTimeChooserParams; |
84 struct WebMediaPlayerAction; | 82 struct WebMediaPlayerAction; |
85 struct WebPluginAction; | 83 struct WebPluginAction; |
86 struct WebPoint; | 84 struct WebPoint; |
87 struct WebWindowFeatures; | 85 struct WebWindowFeatures; |
88 } // namespace blink | 86 } // namespace blink |
89 | 87 |
90 namespace gfx { | 88 namespace gfx { |
91 class ICCProfile; | 89 class ICCProfile; |
92 } | 90 } |
93 | 91 |
94 namespace content { | 92 namespace content { |
95 | 93 |
96 class IdleUserDetector; | 94 class IdleUserDetector; |
97 class RendererDateTimePicker; | 95 class RendererDateTimePicker; |
98 class RenderViewImplTest; | 96 class RenderViewImplTest; |
99 class RenderViewObserver; | 97 class RenderViewObserver; |
100 class RenderViewTest; | 98 class RenderViewTest; |
101 class SpeechRecognitionDispatcher; | 99 class SpeechRecognitionDispatcher; |
102 struct FaviconURL; | |
103 struct FileChooserParams; | 100 struct FileChooserParams; |
104 struct ResizeParams; | 101 struct ResizeParams; |
105 | 102 |
106 namespace mojom { | 103 namespace mojom { |
107 class CreateViewParams; | 104 class CreateViewParams; |
108 } | 105 } |
109 | 106 |
110 // | 107 // |
111 // RenderView is an object that manages a WebView object, and provides a | 108 // RenderView is an object that manages a WebView object, and provides a |
112 // communication interface with an embedding application process. | 109 // communication interface with an embedding application process. |
(...skipping 373 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
486 bool RenderWidgetWillHandleMouseEvent( | 483 bool RenderWidgetWillHandleMouseEvent( |
487 const blink::WebMouseEvent& event) override; | 484 const blink::WebMouseEvent& event) override; |
488 | 485 |
489 // Old WebFrameClient implementations ---------------------------------------- | 486 // Old WebFrameClient implementations ---------------------------------------- |
490 | 487 |
491 // RenderViewImpl used to be a WebFrameClient, but now RenderFrameImpl is the | 488 // RenderViewImpl used to be a WebFrameClient, but now RenderFrameImpl is the |
492 // WebFrameClient. However, many implementations of WebFrameClient methods | 489 // WebFrameClient. However, many implementations of WebFrameClient methods |
493 // still live here and are called from RenderFrameImpl. These implementations | 490 // still live here and are called from RenderFrameImpl. These implementations |
494 // are to be moved to RenderFrameImpl <http://crbug.com/361761>. | 491 // are to be moved to RenderFrameImpl <http://crbug.com/361761>. |
495 | 492 |
496 void didChangeIcon(blink::WebLocalFrame*, blink::WebIconURL::Type); | |
497 | |
498 static Referrer GetReferrerFromRequest( | 493 static Referrer GetReferrerFromRequest( |
499 blink::WebFrame* frame, | 494 blink::WebFrame* frame, |
500 const blink::WebURLRequest& request); | 495 const blink::WebURLRequest& request); |
501 | 496 |
502 static WindowOpenDisposition NavigationPolicyToDisposition( | 497 static WindowOpenDisposition NavigationPolicyToDisposition( |
503 blink::WebNavigationPolicy policy); | 498 blink::WebNavigationPolicy policy); |
504 | 499 |
505 void ApplyWebPreferencesInternal(const WebPreferences& prefs, | 500 void ApplyWebPreferencesInternal(const WebPreferences& prefs, |
506 blink::WebView* web_view, | 501 blink::WebView* web_view, |
507 CompositorDependencies* compositor_deps); | 502 CompositorDependencies* compositor_deps); |
(...skipping 78 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
586 #endif | 581 #endif |
587 | 582 |
588 // In OOPIF-enabled modes, this tells each RenderFrame with a pending state | 583 // In OOPIF-enabled modes, this tells each RenderFrame with a pending state |
589 // update to inform the browser process. | 584 // update to inform the browser process. |
590 void SendFrameStateUpdates(); | 585 void SendFrameStateUpdates(); |
591 | 586 |
592 // Update the target url and tell the browser that the target URL has changed. | 587 // Update the target url and tell the browser that the target URL has changed. |
593 // If |url| is empty, show |fallback_url|. | 588 // If |url| is empty, show |fallback_url|. |
594 void UpdateTargetURL(const GURL& url, const GURL& fallback_url); | 589 void UpdateTargetURL(const GURL& url, const GURL& fallback_url); |
595 | 590 |
596 // Tells the browser what the new list of favicons for the webpage is. | |
597 void SendUpdateFaviconURL(const std::vector<FaviconURL>& urls); | |
598 | |
599 // Invoked from DidStopLoading(). Sends the current list of loaded favicons to | |
600 // the browser. | |
601 void DidStopLoadingIcons(); | |
602 | |
603 // Coordinate conversion ----------------------------------------------------- | 591 // Coordinate conversion ----------------------------------------------------- |
604 | 592 |
605 gfx::RectF ClientRectToPhysicalWindowRect(const gfx::RectF& rect) const; | 593 gfx::RectF ClientRectToPhysicalWindowRect(const gfx::RectF& rect) const; |
606 | 594 |
607 // RenderFrameImpl accessible state ------------------------------------------ | 595 // RenderFrameImpl accessible state ------------------------------------------ |
608 // The following section is the set of methods that RenderFrameImpl needs | 596 // The following section is the set of methods that RenderFrameImpl needs |
609 // to access RenderViewImpl state. The set of state variables are page-level | 597 // to access RenderViewImpl state. The set of state variables are page-level |
610 // specific, so they don't belong in RenderFrameImpl and should remain in | 598 // specific, so they don't belong in RenderFrameImpl and should remain in |
611 // this object. | 599 // this object. |
612 base::ObserverList<RenderViewObserver>& observers() { return observers_; } | 600 base::ObserverList<RenderViewObserver>& observers() { return observers_; } |
(...skipping 213 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
826 // --------------------------------------------------------------------------- | 814 // --------------------------------------------------------------------------- |
827 | 815 |
828 base::WeakPtrFactory<RenderViewImpl> weak_ptr_factory_; | 816 base::WeakPtrFactory<RenderViewImpl> weak_ptr_factory_; |
829 | 817 |
830 DISALLOW_COPY_AND_ASSIGN(RenderViewImpl); | 818 DISALLOW_COPY_AND_ASSIGN(RenderViewImpl); |
831 }; | 819 }; |
832 | 820 |
833 } // namespace content | 821 } // namespace content |
834 | 822 |
835 #endif // CONTENT_RENDERER_RENDER_VIEW_IMPL_H_ | 823 #endif // CONTENT_RENDERER_RENDER_VIEW_IMPL_H_ |
OLD | NEW |