Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(9)

Side by Side Diff: content/renderer/render_view_impl.h

Issue 2479663002: Move compositor InputHandler from RenderViewImpl to RenderWidget. (Closed)
Patch Set: Rebase to master@{#429880}. Created 4 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
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
11 #include <deque> 11 #include <deque>
12 #include <map> 12 #include <map>
13 #include <memory> 13 #include <memory>
14 #include <set> 14 #include <set>
15 #include <string> 15 #include <string>
16 #include <vector> 16 #include <vector>
17 17
18 #include "base/gtest_prod_util.h" 18 #include "base/gtest_prod_util.h"
19 #include "base/id_map.h" 19 #include "base/id_map.h"
20 #include "base/macros.h" 20 #include "base/macros.h"
21 #include "base/memory/weak_ptr.h"
22 #include "base/observer_list.h" 21 #include "base/observer_list.h"
23 #include "base/process/process.h" 22 #include "base/process/process.h"
24 #include "base/strings/string16.h" 23 #include "base/strings/string16.h"
25 #include "base/timer/timer.h" 24 #include "base/timer/timer.h"
26 #include "build/build_config.h" 25 #include "build/build_config.h"
27 #include "cc/input/browser_controls_state.h" 26 #include "cc/input/browser_controls_state.h"
28 #include "cc/resources/shared_bitmap.h" 27 #include "cc/resources/shared_bitmap.h"
29 #include "content/common/content_export.h" 28 #include "content/common/content_export.h"
30 #include "content/common/drag_event_source_info.h" 29 #include "content/common/drag_event_source_info.h"
31 #include "content/common/frame_message_enums.h" 30 #include "content/common/frame_message_enums.h"
(...skipping 87 matching lines...) Expand 10 before | Expand all | Expand 10 after
119 // 118 //
120 // DEPRECATED: RenderViewImpl is being removed as part of the SiteIsolation 119 // DEPRECATED: RenderViewImpl is being removed as part of the SiteIsolation
121 // project. New code should be added to RenderFrameImpl instead. 120 // project. New code should be added to RenderFrameImpl instead.
122 // 121 //
123 // For context, please see https://crbug.com/467770 and 122 // For context, please see https://crbug.com/467770 and
124 // http://www.chromium.org/developers/design-documents/site-isolation. 123 // http://www.chromium.org/developers/design-documents/site-isolation.
125 class CONTENT_EXPORT RenderViewImpl 124 class CONTENT_EXPORT RenderViewImpl
126 : public RenderWidget, 125 : public RenderWidget,
127 NON_EXPORTED_BASE(public blink::WebViewClient), 126 NON_EXPORTED_BASE(public blink::WebViewClient),
128 public RenderWidgetOwnerDelegate, 127 public RenderWidgetOwnerDelegate,
129 public RenderView, 128 public RenderView {
130 public base::SupportsWeakPtr<RenderViewImpl> {
131 public: 129 public:
132 // Creates a new RenderView. |opener_id| is the routing ID of the RenderView 130 // Creates a new RenderView. |opener_id| is the routing ID of the RenderView
133 // responsible for creating this RenderView. Note that if the original opener 131 // responsible for creating this RenderView. Note that if the original opener
134 // has been closed, |window_was_created_with_opener| will be true and 132 // has been closed, |window_was_created_with_opener| will be true and
135 // |opener_id| will be MSG_ROUTING_NONE. When |swapped_out| is true, the 133 // |opener_id| will be MSG_ROUTING_NONE. When |swapped_out| is true, the
136 // |proxy_routing_id| is specified, so a RenderFrameProxy can be created for 134 // |proxy_routing_id| is specified, so a RenderFrameProxy can be created for
137 // this RenderView's main RenderFrame. 135 // this RenderView's main RenderFrame.
138 static RenderViewImpl* Create(CompositorDependencies* compositor_deps, 136 static RenderViewImpl* Create(CompositorDependencies* compositor_deps,
139 const mojom::CreateViewParams& params, 137 const mojom::CreateViewParams& params,
140 bool was_created_by_renderer); 138 bool was_created_by_renderer);
(...skipping 68 matching lines...) Expand 10 before | Expand all | Expand 10 after
209 return page_zoom_level_; 207 return page_zoom_level_;
210 } 208 }
211 209
212 // Sets page-level focus in this view and notifies plugins and Blink's 210 // Sets page-level focus in this view and notifies plugins and Blink's
213 // FocusController. 211 // FocusController.
214 void SetFocus(bool enable); 212 void SetFocus(bool enable);
215 213
216 void AttachWebFrameWidget(blink::WebFrameWidget* frame_widget); 214 void AttachWebFrameWidget(blink::WebFrameWidget* frame_widget);
217 215
218 void TransferActiveWheelFlingAnimation( 216 void TransferActiveWheelFlingAnimation(
219 const blink::WebActiveWheelFlingParameters& params); 217 const blink::WebActiveWheelFlingParameters& params) override;
220 218
221 // Starts a timer to send an UpdateState message on behalf of |frame|, if the 219 // Starts a timer to send an UpdateState message on behalf of |frame|, if the
222 // timer isn't already running. This allows multiple state changing events to 220 // timer isn't already running. This allows multiple state changing events to
223 // be coalesced into one update. 221 // be coalesced into one update.
224 void StartNavStateSyncTimerIfNecessary(RenderFrameImpl* frame); 222 void StartNavStateSyncTimerIfNecessary(RenderFrameImpl* frame);
225 223
226 // Synchronously sends the current navigation state to the browser. 224 // Synchronously sends the current navigation state to the browser.
227 void SendUpdateState(); 225 void SendUpdateState();
228 226
229 // Returns the length of the session history of this RenderView. Note that 227 // Returns the length of the session history of this RenderView. Note that
(...skipping 377 matching lines...) Expand 10 before | Expand all | Expand 10 after
607 // and put it in the same position in the .cc file. 605 // and put it in the same position in the .cc file.
608 606
609 // Misc private functions ---------------------------------------------------- 607 // Misc private functions ----------------------------------------------------
610 // Check whether the preferred size has changed. 608 // Check whether the preferred size has changed.
611 void CheckPreferredSize(); 609 void CheckPreferredSize();
612 610
613 #if defined(OS_ANDROID) 611 #if defined(OS_ANDROID)
614 // Launch an Android content intent with the given URL. 612 // Launch an Android content intent with the given URL.
615 void LaunchAndroidContentIntent(const GURL& intent_url, 613 void LaunchAndroidContentIntent(const GURL& intent_url,
616 size_t request_id, 614 size_t request_id,
617 bool is_main_frame); 615 bool is_main_frame) override;
618 #endif 616 #endif
619 617
620 #if defined(OS_WIN) || (defined(OS_POSIX) && !defined(OS_MACOSX)) 618 #if defined(OS_WIN) || (defined(OS_POSIX) && !defined(OS_MACOSX))
621 void UpdateFontRenderingFromRendererPrefs(); 619 void UpdateFontRenderingFromRendererPrefs();
622 #else 620 #else
623 void UpdateFontRenderingFromRendererPrefs() {} 621 void UpdateFontRenderingFromRendererPrefs() {}
624 #endif 622 #endif
625 623
626 // In OOPIF-enabled modes, this tells each RenderFrame with a pending state 624 // In OOPIF-enabled modes, this tells each RenderFrame with a pending state
627 // update to inform the browser process. 625 // update to inform the browser process.
(...skipping 230 matching lines...) Expand 10 before | Expand all | Expand 10 after
858 // session, this info is sent to the browser along with other drag/drop info. 856 // session, this info is sent to the browser along with other drag/drop info.
859 DragEventSourceInfo possible_drag_event_info_; 857 DragEventSourceInfo possible_drag_event_info_;
860 858
861 // NOTE: stats_collection_observer_ should be the last members because their 859 // NOTE: stats_collection_observer_ should be the last members because their
862 // constructors call the AddObservers method of RenderViewImpl. 860 // constructors call the AddObservers method of RenderViewImpl.
863 std::unique_ptr<StatsCollectionObserver> stats_collection_observer_; 861 std::unique_ptr<StatsCollectionObserver> stats_collection_observer_;
864 862
865 typedef std::map<cc::SharedBitmapId, cc::SharedBitmap*> BitmapMap; 863 typedef std::map<cc::SharedBitmapId, cc::SharedBitmap*> BitmapMap;
866 BitmapMap disambiguation_bitmaps_; 864 BitmapMap disambiguation_bitmaps_;
867 865
868 bool has_added_input_handler_;
869
870 // --------------------------------------------------------------------------- 866 // ---------------------------------------------------------------------------
871 // ADDING NEW DATA? Please see if it fits appropriately in one of the above 867 // ADDING NEW DATA? Please see if it fits appropriately in one of the above
872 // sections rather than throwing it randomly at the end. If you're adding a 868 // sections rather than throwing it randomly at the end. If you're adding a
873 // bunch of stuff, you should probably create a helper class and put your 869 // bunch of stuff, you should probably create a helper class and put your
874 // data and methods on that to avoid bloating RenderView more. You can 870 // data and methods on that to avoid bloating RenderView more. You can
875 // use the Observer interface to filter IPC messages and receive frame change 871 // use the Observer interface to filter IPC messages and receive frame change
876 // notifications. 872 // notifications.
877 // --------------------------------------------------------------------------- 873 // ---------------------------------------------------------------------------
878 874
879 DISALLOW_COPY_AND_ASSIGN(RenderViewImpl); 875 DISALLOW_COPY_AND_ASSIGN(RenderViewImpl);
880 }; 876 };
881 877
882 } // namespace content 878 } // namespace content
883 879
884 #endif // CONTENT_RENDERER_RENDER_VIEW_IMPL_H_ 880 #endif // CONTENT_RENDERER_RENDER_VIEW_IMPL_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698