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

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

Issue 8704005: Add autoresize capability to chromium. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: latest update Created 9 years 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 | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2011 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_H_ 5 #ifndef CONTENT_BROWSER_RENDERER_HOST_RENDER_WIDGET_HOST_H_
6 #define CONTENT_BROWSER_RENDERER_HOST_RENDER_WIDGET_HOST_H_ 6 #define CONTENT_BROWSER_RENDERER_HOST_RENDER_WIDGET_HOST_H_
7 #pragma once 7 #pragma once
8 8
9 #include <deque> 9 #include <deque>
10 #include <string> 10 #include <string>
(...skipping 477 matching lines...) Expand 10 before | Expand all | Expand 10 after
488 // Notification that the user has made some kind of input that could 488 // Notification that the user has made some kind of input that could
489 // perform an action. The gestures that count are 1) any mouse down 489 // perform an action. The gestures that count are 1) any mouse down
490 // event and 2) enter or space key presses. 490 // event and 2) enter or space key presses.
491 virtual void OnUserGesture() {} 491 virtual void OnUserGesture() {}
492 492
493 // Callbacks for notification when the renderer becomes unresponsive to user 493 // Callbacks for notification when the renderer becomes unresponsive to user
494 // input events, and subsequently responsive again. 494 // input events, and subsequently responsive again.
495 virtual void NotifyRendererUnresponsive() {} 495 virtual void NotifyRendererUnresponsive() {}
496 virtual void NotifyRendererResponsive() {} 496 virtual void NotifyRendererResponsive() {}
497 497
498 // Called when auto-size resulted in the render size changing.
499 virtual void OnRenderSizeChanged(const gfx::Size& size) {}
500
498 // --------------------------------------------------------------------------- 501 // ---------------------------------------------------------------------------
499 502
500 // RenderViewHost overrides this method to impose further restrictions on when 503 // RenderViewHost overrides this method to impose further restrictions on when
501 // to allow mouse lock. 504 // to allow mouse lock.
502 // Once the request is approved or rejected, GotResponseToLockMouseRequest() 505 // Once the request is approved or rejected, GotResponseToLockMouseRequest()
503 // will be called. 506 // will be called.
504 virtual void RequestToLockMouse(); 507 virtual void RequestToLockMouse();
505 508
506 void RejectMouseLockOrUnlockIfNecessary(); 509 void RejectMouseLockOrUnlockIfNecessary();
507 bool IsMouseLocked() const; 510 bool IsMouseLocked() const;
508 511
509 // RenderViewHost overrides this method to report when in fullscreen mode. 512 // RenderViewHost overrides this method to report when in fullscreen mode.
510 virtual bool IsFullscreen() const; 513 virtual bool IsFullscreen() const;
511 514
515 // Indicates if the render widget host should track the render widget's size
516 // as opposed to visa versa.
517 void setShouldAutoSize(bool enable);
518
512 protected: 519 protected:
513 // true if a renderer has once been valid. We use this flag to display a sad 520 // true if a renderer has once been valid. We use this flag to display a sad
514 // tab only when we lose our renderer and not if a paint occurs during 521 // tab only when we lose our renderer and not if a paint occurs during
515 // initialization. 522 // initialization.
516 bool renderer_initialized_; 523 bool renderer_initialized_;
517 524
518 private: 525 private:
519 FRIEND_TEST_ALL_PREFIXES(RenderWidgetHostTest, Resize); 526 FRIEND_TEST_ALL_PREFIXES(RenderWidgetHostTest, Resize);
520 FRIEND_TEST_ALL_PREFIXES(RenderWidgetHostTest, ResizeThenCrash); 527 FRIEND_TEST_ALL_PREFIXES(RenderWidgetHostTest, ResizeThenCrash);
521 FRIEND_TEST_ALL_PREFIXES(RenderWidgetHostTest, HiddenPaint); 528 FRIEND_TEST_ALL_PREFIXES(RenderWidgetHostTest, HiddenPaint);
(...skipping 144 matching lines...) Expand 10 before | Expand all | Expand 10 after
666 // hand is updated when the resize message is sent. This is very similar to 673 // hand is updated when the resize message is sent. This is very similar to
667 // |resize_ack_pending_|, but the latter is not set if the new size has width 674 // |resize_ack_pending_|, but the latter is not set if the new size has width
668 // or height zero, which is why we need this too. 675 // or height zero, which is why we need this too.
669 gfx::Size in_flight_size_; 676 gfx::Size in_flight_size_;
670 677
671 // The reserved area we last sent to the renderer. |current_reserved_rect_| 678 // The reserved area we last sent to the renderer. |current_reserved_rect_|
672 // is only updated once the resize message has been ack'd. This on the other 679 // is only updated once the resize message has been ack'd. This on the other
673 // hand is updated when the resize message is sent. 680 // hand is updated when the resize message is sent.
674 gfx::Rect in_flight_reserved_rect_; 681 gfx::Rect in_flight_reserved_rect_;
675 682
683 // True if the render widget host should track the render widget's size as
684 // opposed to visa versa.
685 bool should_auto_size_;
686
676 // True if a mouse move event was sent to the render view and we are waiting 687 // True if a mouse move event was sent to the render view and we are waiting
677 // for a corresponding ViewHostMsg_HandleInputEvent_ACK message. 688 // for a corresponding ViewHostMsg_HandleInputEvent_ACK message.
678 bool mouse_move_pending_; 689 bool mouse_move_pending_;
679 690
680 // The next mouse move event to send (only non-null while mouse_move_pending_ 691 // The next mouse move event to send (only non-null while mouse_move_pending_
681 // is true). 692 // is true).
682 scoped_ptr<WebKit::WebMouseEvent> next_mouse_move_; 693 scoped_ptr<WebKit::WebMouseEvent> next_mouse_move_;
683 694
684 // (Similar to |mouse_move_pending_|.) True if a mouse wheel event was sent 695 // (Similar to |mouse_move_pending_|.) True if a mouse wheel event was sent
685 // and we are waiting for a corresponding ack. 696 // and we are waiting for a corresponding ack.
(...skipping 94 matching lines...) Expand 10 before | Expand all | Expand 10 after
780 gfx::Point last_scroll_offset_; 791 gfx::Point last_scroll_offset_;
781 792
782 bool pending_mouse_lock_request_; 793 bool pending_mouse_lock_request_;
783 794
784 base::WeakPtrFactory<RenderWidgetHost> weak_factory_; 795 base::WeakPtrFactory<RenderWidgetHost> weak_factory_;
785 796
786 DISALLOW_COPY_AND_ASSIGN(RenderWidgetHost); 797 DISALLOW_COPY_AND_ASSIGN(RenderWidgetHost);
787 }; 798 };
788 799
789 #endif // CONTENT_BROWSER_RENDERER_HOST_RENDER_WIDGET_HOST_H_ 800 #endif // CONTENT_BROWSER_RENDERER_HOST_RENDER_WIDGET_HOST_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698