diff options
Diffstat (limited to 'android_webview/browser/browser_view_renderer_impl.cc')
-rw-r--r-- | android_webview/browser/browser_view_renderer_impl.cc | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/android_webview/browser/browser_view_renderer_impl.cc b/android_webview/browser/browser_view_renderer_impl.cc index 1c3f27f..188d28a 100644 --- a/android_webview/browser/browser_view_renderer_impl.cc +++ b/android_webview/browser/browser_view_renderer_impl.cc @@ -136,6 +136,7 @@ BrowserViewRendererImpl::BrowserViewRendererImpl( view_clip_layer_(cc::Layer::Create()), transform_layer_(cc::Layer::Create()), scissor_clip_layer_(cc::Layer::Create()), + view_attached_(false), view_visible_(false), compositor_visible_(false), is_composite_pending_(false), @@ -409,15 +410,29 @@ void BrowserViewRendererImpl::OnSizeChanged(int width, int height) { } void BrowserViewRendererImpl::OnAttachedToWindow(int width, int height) { + view_attached_ = true; view_size_ = gfx::Size(width, height); view_clip_layer_->SetBounds(view_size_); } void BrowserViewRendererImpl::OnDetachedFromWindow() { + view_attached_ = false; view_visible_ = false; SetCompositorVisibility(false); } +bool BrowserViewRendererImpl::IsAttachedToWindow() { + return view_attached_; +} + +bool BrowserViewRendererImpl::IsViewVisible() { + return view_visible_; +} + +gfx::Rect BrowserViewRendererImpl::GetScreenRect() { + return gfx::Rect(client_->GetLocationOnScreen(), view_size_); +} + void BrowserViewRendererImpl::ScheduleComposite() { TRACE_EVENT0("android_webview", "BrowserViewRendererImpl::ScheduleComposite"); |