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 <deque> | 8 #include <deque> |
9 #include <map> | 9 #include <map> |
10 #include <set> | 10 #include <set> |
(...skipping 317 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
328 #endif // ENABLE_PLUGINS | 328 #endif // ENABLE_PLUGINS |
329 | 329 |
330 void TransferActiveWheelFlingAnimation( | 330 void TransferActiveWheelFlingAnimation( |
331 const blink::WebActiveWheelFlingParameters& params); | 331 const blink::WebActiveWheelFlingParameters& params); |
332 | 332 |
333 // Returns true if the focused element is editable text from the perspective | 333 // Returns true if the focused element is editable text from the perspective |
334 // of IME support (also used for on-screen keyboard). Works correctly inside | 334 // of IME support (also used for on-screen keyboard). Works correctly inside |
335 // supported PPAPI plug-ins. | 335 // supported PPAPI plug-ins. |
336 bool HasIMETextFocus(); | 336 bool HasIMETextFocus(); |
337 | 337 |
338 // Callback for use with GetWindowSnapshot. | |
339 typedef base::Callback<void( | |
340 const gfx::Size&, const std::vector<unsigned char>&)> | |
341 WindowSnapshotCallback; | |
342 | |
343 void GetWindowSnapshot(const WindowSnapshotCallback& callback); | |
344 | |
345 // Dispatches the current navigation state to the browser. Called on a | 338 // Dispatches the current navigation state to the browser. Called on a |
346 // periodic timer so we don't send too many messages. | 339 // periodic timer so we don't send too many messages. |
347 void SyncNavigationState(); | 340 void SyncNavigationState(); |
348 | 341 |
349 // Returns the length of the session history of this RenderView. Note that | 342 // Returns the length of the session history of this RenderView. Note that |
350 // this only coincides with the actual length of the session history if this | 343 // this only coincides with the actual length of the session history if this |
351 // RenderView is the currently active RenderView of a WebContents. | 344 // RenderView is the currently active RenderView of a WebContents. |
352 unsigned GetLocalSessionHistoryLengthForTesting() const; | 345 unsigned GetLocalSessionHistoryLengthForTesting() const; |
353 | 346 |
354 // Invokes OnSetFocus and marks the widget as active depending on the value | 347 // Invokes OnSetFocus and marks the widget as active depending on the value |
(...skipping 399 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
754 void OnSetZoomLevelForLoadingURL(const GURL& url, double zoom_level); | 747 void OnSetZoomLevelForLoadingURL(const GURL& url, double zoom_level); |
755 void OnStop(); | 748 void OnStop(); |
756 void OnStopFinding(StopFindAction action); | 749 void OnStopFinding(StopFindAction action); |
757 void OnSuppressDialogsUntilSwapOut(); | 750 void OnSuppressDialogsUntilSwapOut(); |
758 void OnThemeChanged(); | 751 void OnThemeChanged(); |
759 void OnUpdateTargetURLAck(); | 752 void OnUpdateTargetURLAck(); |
760 void OnUpdateWebPreferences(const WebPreferences& prefs); | 753 void OnUpdateWebPreferences(const WebPreferences& prefs); |
761 void OnZoom(PageZoom zoom); | 754 void OnZoom(PageZoom zoom); |
762 void OnEnableViewSourceMode(); | 755 void OnEnableViewSourceMode(); |
763 void OnDisownOpener(); | 756 void OnDisownOpener(); |
764 void OnWindowSnapshotCompleted(const int snapshot_id, | 757 void OnForceRedraw(int request_id); |
765 const gfx::Size& size, const std::vector<unsigned char>& png); | |
766 void OnSelectWordAroundCaret(); | 758 void OnSelectWordAroundCaret(); |
767 #if defined(OS_ANDROID) | 759 #if defined(OS_ANDROID) |
768 void OnActivateNearestFindResult(int request_id, float x, float y); | 760 void OnActivateNearestFindResult(int request_id, float x, float y); |
769 void OnFindMatchRects(int current_version); | 761 void OnFindMatchRects(int current_version); |
770 void OnSelectPopupMenuItems(bool canceled, | 762 void OnSelectPopupMenuItems(bool canceled, |
771 const std::vector<int>& selected_indices); | 763 const std::vector<int>& selected_indices); |
772 void OnUndoScrollFocusedEditableNodeIntoRect(); | 764 void OnUndoScrollFocusedEditableNodeIntoRect(); |
773 void OnUpdateTopControlsState(bool enable_hiding, | 765 void OnUpdateTopControlsState(bool enable_hiding, |
774 bool enable_showing, | 766 bool enable_showing, |
775 bool animate); | 767 bool animate); |
(...skipping 397 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1173 scoped_ptr<ExternalPopupMenu> external_popup_menu_; | 1165 scoped_ptr<ExternalPopupMenu> external_popup_menu_; |
1174 #endif | 1166 #endif |
1175 | 1167 |
1176 // All the registered observers. We expect this list to be small, so vector | 1168 // All the registered observers. We expect this list to be small, so vector |
1177 // is fine. | 1169 // is fine. |
1178 ObserverList<RenderViewObserver> observers_; | 1170 ObserverList<RenderViewObserver> observers_; |
1179 | 1171 |
1180 // Wraps the |webwidget_| as a MouseLockDispatcher::LockTarget interface. | 1172 // Wraps the |webwidget_| as a MouseLockDispatcher::LockTarget interface. |
1181 scoped_ptr<MouseLockDispatcher::LockTarget> webwidget_mouse_lock_target_; | 1173 scoped_ptr<MouseLockDispatcher::LockTarget> webwidget_mouse_lock_target_; |
1182 | 1174 |
1183 // State associated with the GetWindowSnapshot function. | |
1184 int next_snapshot_id_; | |
1185 typedef std::map<int, WindowSnapshotCallback> PendingSnapshotMap; | |
1186 PendingSnapshotMap pending_snapshots_; | |
1187 | |
1188 // This field stores drag/drop related info for the event that is currently | 1175 // This field stores drag/drop related info for the event that is currently |
1189 // being handled. If the current event results in starting a drag/drop | 1176 // being handled. If the current event results in starting a drag/drop |
1190 // session, this info is sent to the browser along with other drag/drop info. | 1177 // session, this info is sent to the browser along with other drag/drop info. |
1191 DragEventSourceInfo possible_drag_event_info_; | 1178 DragEventSourceInfo possible_drag_event_info_; |
1192 | 1179 |
1193 // NOTE: stats_collection_observer_ should be the last members because their | 1180 // NOTE: stats_collection_observer_ should be the last members because their |
1194 // constructors call the AddObservers method of RenderViewImpl. | 1181 // constructors call the AddObservers method of RenderViewImpl. |
1195 scoped_ptr<StatsCollectionObserver> stats_collection_observer_; | 1182 scoped_ptr<StatsCollectionObserver> stats_collection_observer_; |
1196 | 1183 |
1197 typedef std::map<cc::SharedBitmapId, cc::SharedBitmap*> BitmapMap; | 1184 typedef std::map<cc::SharedBitmapId, cc::SharedBitmap*> BitmapMap; |
1198 BitmapMap disambiguation_bitmaps_; | 1185 BitmapMap disambiguation_bitmaps_; |
1199 | 1186 |
1200 // --------------------------------------------------------------------------- | 1187 // --------------------------------------------------------------------------- |
1201 // ADDING NEW DATA? Please see if it fits appropriately in one of the above | 1188 // ADDING NEW DATA? Please see if it fits appropriately in one of the above |
1202 // sections rather than throwing it randomly at the end. If you're adding a | 1189 // sections rather than throwing it randomly at the end. If you're adding a |
1203 // bunch of stuff, you should probably create a helper class and put your | 1190 // bunch of stuff, you should probably create a helper class and put your |
1204 // data and methods on that to avoid bloating RenderView more. You can | 1191 // data and methods on that to avoid bloating RenderView more. You can |
1205 // use the Observer interface to filter IPC messages and receive frame change | 1192 // use the Observer interface to filter IPC messages and receive frame change |
1206 // notifications. | 1193 // notifications. |
1207 // --------------------------------------------------------------------------- | 1194 // --------------------------------------------------------------------------- |
1208 | 1195 |
1209 DISALLOW_COPY_AND_ASSIGN(RenderViewImpl); | 1196 DISALLOW_COPY_AND_ASSIGN(RenderViewImpl); |
1210 }; | 1197 }; |
1211 | 1198 |
1212 } // namespace content | 1199 } // namespace content |
1213 | 1200 |
1214 #endif // CONTENT_RENDERER_RENDER_VIEW_IMPL_H_ | 1201 #endif // CONTENT_RENDERER_RENDER_VIEW_IMPL_H_ |
OLD | NEW |