Windows: Resize offscreen compositor window to match view size (issue #1933)

This commit is contained in:
Marshall Greenblatt 2016-08-17 17:29:38 +02:00
parent 2e1d960f3f
commit 73c669d67e
5 changed files with 14 additions and 0 deletions

View File

@ -1424,6 +1424,7 @@ void CefRenderWidgetHostViewOSR::ResizeRootLayer() {
GetRootLayer()->SetBounds(gfx::Rect(size));
GetCompositor()->SetScaleAndSize(scale_factor_, size_in_pixels);
PlatformResizeCompositorWidget(size_in_pixels);
}
void CefRenderWidgetHostViewOSR::OnBeginFrameTimerTick() {

View File

@ -313,6 +313,7 @@ class CefRenderWidgetHostViewOSR
#endif // defined(OS_MACOSX)
void PlatformCreateCompositorWidget();
void PlatformResizeCompositorWidget(const gfx::Size& size);
void PlatformDestroyCompositorWidget();
#if defined(USE_AURA)

View File

@ -123,6 +123,9 @@ void CefRenderWidgetHostViewOSR::PlatformCreateCompositorWidget() {
compositor_widget_ = window_->xwindow();
}
void CefRenderWidgetHostViewOSR::PlatformResizeCompositorWidget(const gfx::Size&) {
}
void CefRenderWidgetHostViewOSR::PlatformDestroyCompositorWidget() {
DCHECK(window_);
window_->Close();

View File

@ -389,6 +389,9 @@ void CefRenderWidgetHostViewOSR::PlatformCreateCompositorWidget() {
mac_helper_, mac_helper_, render_widget_host_->is_hidden(), true));
}
void CefRenderWidgetHostViewOSR::PlatformResizeCompositorWidget(const gfx::Size&) {
}
void CefRenderWidgetHostViewOSR::PlatformDestroyCompositorWidget() {
DCHECK(window_);

View File

@ -149,6 +149,12 @@ void CefRenderWidgetHostViewOSR::PlatformCreateCompositorWidget() {
compositor_widget_ = window_->hwnd();
}
void CefRenderWidgetHostViewOSR::PlatformResizeCompositorWidget(const gfx::Size& size) {
DCHECK(window_);
SetWindowPos(window_->hwnd(), NULL, 0, 0, size.width(), size.height(),
SWP_NOMOVE | SWP_NOZORDER | SWP_NOREDRAW);
}
void CefRenderWidgetHostViewOSR::PlatformDestroyCompositorWidget() {
window_.reset(NULL);
compositor_widget_ = gfx::kNullAcceleratedWidget;