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

Unified Diff: content/browser/renderer_host/render_widget_host_view_android.h

Issue 2810813004: Hide fullscreen rotation jank (Closed)
Patch Set: Refer to static layer as thumbnail layer within content. Rebase Created 3 years, 6 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 side-by-side diff with in-line comments
Download patch
Index: content/browser/renderer_host/render_widget_host_view_android.h
diff --git a/content/browser/renderer_host/render_widget_host_view_android.h b/content/browser/renderer_host/render_widget_host_view_android.h
index 6846edce443679b5027edc4a970db758f0052c54..db8532aacf7026e18ff8df17b943a75d219101a9 100644
--- a/content/browser/renderer_host/render_widget_host_view_android.h
+++ b/content/browser/renderer_host/render_widget_host_view_android.h
@@ -238,6 +238,11 @@ class CONTENT_EXPORT RenderWidgetHostViewAndroid
// Non-virtual methods
void SetContentViewCore(ContentViewCoreImpl* content_view_core);
SkColor GetCachedBackgroundColor() const;
+ bool can_show_thumbnail_placeholder() const {
Khushal 2017/06/14 19:43:14 nit: not a trivial accessor. CanShowThumbnailPlace
steimel 2017/06/14 21:46:16 Done.
+ return !(fullscreen_state_ == FullscreenState::kEnteringFullscreen ||
+ fullscreen_state_ == FullscreenState::kExitingFullscreen ||
+ fullscreen_state_ == FullscreenState::kFullscreenRotation);
+ }
void SendKeyEvent(const NativeWebKeyboardEvent& event);
void SendMouseEvent(const ui::MotionEventAndroid&, int action_button);
void SendMouseWheelEvent(const blink::WebMouseWheelEvent& event);
@@ -263,6 +268,8 @@ class CONTENT_EXPORT RenderWidgetHostViewAndroid
void WasResized();
+ void OnFullscreenStateChanged(bool entered_fullscreen);
+
bool HasValidFrame() const;
void MoveCaret(const gfx::Point& point);
@@ -349,6 +356,15 @@ class CONTENT_EXPORT RenderWidgetHostViewAndroid
WebContentsAccessibilityAndroid* GetWebContentsAccessibilityAndroid() const;
+ void EvictFrameIfNecessary(bool physical_backing_resized);
+ enum class FullscreenState {
Khushal 2017/06/14 19:43:14 nit: Generally this would be at the beginning of t
steimel 2017/06/14 21:46:16 Done.
+ kNotFullscreen,
+ kEnteringFullscreen,
+ kFullscreen,
+ kExitingFullscreen,
+ kFullscreenRotation,
+ };
+
// The model object.
RenderWidgetHostImpl* host_;
@@ -428,6 +444,11 @@ class CONTENT_EXPORT RenderWidgetHostViewAndroid
float prev_top_shown_pix_;
float prev_bottom_shown_pix_;
+ FullscreenState fullscreen_state_ = FullscreenState::kNotFullscreen;
+ bool awaiting_resize_ = false;
Khushal 2017/06/14 19:43:14 nit: fullscreen_transition_awaiting_resize_? And
steimel 2017/06/14 21:46:16 Done.
+ bool current_frame_is_fullscreen_ = false;
+ bool web_contents_is_fullscreen_ = false;
+
cc::mojom::MojoCompositorFrameSinkClient* renderer_compositor_frame_sink_ =
nullptr;

Powered by Google App Engine
This is Rietveld 408576698