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

Side by Side Diff: content/browser/renderer_host/render_widget_host_view_base.h

Issue 2317333002: Refactor EventHandler out of RenderWidgetHostViewAura (Closed)
Patch Set: y Created 4 years, 2 months 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_BROWSER_RENDERER_HOST_RENDER_WIDGET_HOST_VIEW_BASE_H_ 5 #ifndef CONTENT_BROWSER_RENDERER_HOST_RENDER_WIDGET_HOST_VIEW_BASE_H_
6 #define CONTENT_BROWSER_RENDERER_HOST_RENDER_WIDGET_HOST_VIEW_BASE_H_ 6 #define CONTENT_BROWSER_RENDERER_HOST_RENDER_WIDGET_HOST_VIEW_BASE_H_
7 7
8 #include <stddef.h> 8 #include <stddef.h>
9 #include <stdint.h> 9 #include <stdint.h>
10 10
(...skipping 388 matching lines...) Expand 10 before | Expand all | Expand 10 after
399 // Instructs the view to not drop the surface even when the view is hidden. 399 // Instructs the view to not drop the surface even when the view is hidden.
400 virtual void LockCompositingSurface() = 0; 400 virtual void LockCompositingSurface() = 0;
401 virtual void UnlockCompositingSurface() = 0; 401 virtual void UnlockCompositingSurface() = 0;
402 402
403 // Add and remove observers for lifetime event notifications. The order in 403 // Add and remove observers for lifetime event notifications. The order in
404 // which notifications are sent to observers is undefined. Clients must be 404 // which notifications are sent to observers is undefined. Clients must be
405 // sure to remove the observer before they go away. 405 // sure to remove the observer before they go away.
406 void AddObserver(RenderWidgetHostViewBaseObserver* observer); 406 void AddObserver(RenderWidgetHostViewBaseObserver* observer);
407 void RemoveObserver(RenderWidgetHostViewBaseObserver* observer); 407 void RemoveObserver(RenderWidgetHostViewBaseObserver* observer);
408 408
409 // Exposed for testing.
410 virtual bool IsChildFrameForTesting() const;
411 virtual cc::SurfaceId SurfaceIdForTesting() const;
412
413 protected:
414 // Interface class only, do not construct.
415 RenderWidgetHostViewBase();
416
417 void NotifyObserversAboutShutdown();
418
419 // Returns a reference to the current instance of TextInputManager. The 409 // Returns a reference to the current instance of TextInputManager. The
420 // reference is obtained from RenderWidgetHostDelegate. The first time a non- 410 // reference is obtained from RenderWidgetHostDelegate. The first time a non-
421 // null reference is obtained, its value is cached in |text_input_manager_| 411 // null reference is obtained, its value is cached in |text_input_manager_|
422 // and this view is registered with it. The RWHV will unregister from the 412 // and this view is registered with it. The RWHV will unregister from the
423 // TextInputManager if it is destroyed or if the TextInputManager itself is 413 // TextInputManager if it is destroyed or if the TextInputManager itself is
424 // destroyed. The unregistration of the RWHV from TextInputManager is 414 // destroyed. The unregistration of the RWHV from TextInputManager is
425 // necessary and must be done by explicitly calling 415 // necessary and must be done by explicitly calling
426 // TextInputManager::Unregister. 416 // TextInputManager::Unregister.
427 // It is safer to use this method rather than directly dereferencing 417 // It is safer to use this method rather than directly dereferencing
428 // |text_input_manager_|. 418 // |text_input_manager_|.
429 TextInputManager* GetTextInputManager(); 419 TextInputManager* GetTextInputManager();
430 420
421 bool is_fullscreen() { return is_fullscreen_; }
422
423 // Exposed for testing.
424 virtual bool IsChildFrameForTesting() const;
425 virtual cc::SurfaceId SurfaceIdForTesting() const;
426
427 protected:
428 // Interface class only, do not construct.
429 RenderWidgetHostViewBase();
430
431 void NotifyObserversAboutShutdown();
432
433 // Is this a fullscreen view?
434 bool is_fullscreen_;
435
431 // Whether this view is a popup and what kind of popup it is (select, 436 // Whether this view is a popup and what kind of popup it is (select,
432 // autofill...). 437 // autofill...).
433 blink::WebPopupType popup_type_; 438 blink::WebPopupType popup_type_;
434 439
435 // The background color of the web content. 440 // The background color of the web content.
436 SkColor background_color_; 441 SkColor background_color_;
437 442
438 // While the mouse is locked, the cursor is hidden from the user. Mouse events 443 // While the mouse is locked, the cursor is hidden from the user. Mouse events
439 // are still generated. However, the position they report is the last known 444 // are still generated. However, the position they report is the last known
440 // mouse position just as mouse lock was entered; the movement they report 445 // mouse position just as mouse lock was entered; the movement they report
(...skipping 19 matching lines...) Expand all
460 // The current selection range relative to the start of the web page. 465 // The current selection range relative to the start of the web page.
461 gfx::Range selection_range_; 466 gfx::Range selection_range_;
462 #endif 467 #endif
463 468
464 // The scale factor of the display the renderer is currently on. 469 // The scale factor of the display the renderer is currently on.
465 float current_device_scale_factor_; 470 float current_device_scale_factor_;
466 471
467 // The orientation of the display the renderer is currently on. 472 // The orientation of the display the renderer is currently on.
468 display::Display::Rotation current_display_rotation_; 473 display::Display::Rotation current_display_rotation_;
469 474
470 // Whether pinch-to-zoom should be enabled and pinch events forwarded to the
471 // renderer.
472 bool pinch_zoom_enabled_;
473
474 // A reference to current TextInputManager instance this RWHV is registered 475 // A reference to current TextInputManager instance this RWHV is registered
475 // with. This is initially nullptr until the first time the view calls 476 // with. This is initially nullptr until the first time the view calls
476 // GetTextInputManager(). It also becomes nullptr when TextInputManager is 477 // GetTextInputManager(). It also becomes nullptr when TextInputManager is
477 // destroyed before the RWHV is destroyed. 478 // destroyed before the RWHV is destroyed.
478 TextInputManager* text_input_manager_; 479 TextInputManager* text_input_manager_;
479 480
480 private: 481 private:
481 void FlushInput(); 482 void FlushInput();
482 483
483 gfx::Rect current_display_area_; 484 gfx::Rect current_display_area_;
484 485
485 uint32_t renderer_frame_number_; 486 uint32_t renderer_frame_number_;
486 487
487 base::OneShotTimer flush_input_timer_; 488 base::OneShotTimer flush_input_timer_;
488 489
489 base::ObserverList<RenderWidgetHostViewBaseObserver> observers_; 490 base::ObserverList<RenderWidgetHostViewBaseObserver> observers_;
490 491
491 base::WeakPtrFactory<RenderWidgetHostViewBase> weak_factory_; 492 base::WeakPtrFactory<RenderWidgetHostViewBase> weak_factory_;
492 493
493 DISALLOW_COPY_AND_ASSIGN(RenderWidgetHostViewBase); 494 DISALLOW_COPY_AND_ASSIGN(RenderWidgetHostViewBase);
494 }; 495 };
495 496
496 } // namespace content 497 } // namespace content
497 498
498 #endif // CONTENT_BROWSER_RENDERER_HOST_RENDER_WIDGET_HOST_VIEW_BASE_H_ 499 #endif // CONTENT_BROWSER_RENDERER_HOST_RENDER_WIDGET_HOST_VIEW_BASE_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698