From 7a4de4ebe6279d54ef6f9c32600b4baf14c29f79 Mon Sep 17 00:00:00 2001 From: "estade@chromium.org" Date: Mon, 8 Mar 2010 21:05:29 +0000 Subject: Windows: fix some graphical glitches with render view deemphasis. This doesn't fix bullet points 3 or 4 from the bug report, which are cross-platform. This only fixes the windows-specific painting issues. BUG=37563 TEST=manual Review URL: http://codereview.chromium.org/669228 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@40933 0039d316-1c4b-4281-b951-d872f2087c98 --- chrome/browser/renderer_host/render_widget_host_view_win.cc | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'chrome/browser/renderer_host') diff --git a/chrome/browser/renderer_host/render_widget_host_view_win.cc b/chrome/browser/renderer_host/render_widget_host_view_win.cc index ce0c1d7..780b555 100644 --- a/chrome/browser/renderer_host/render_widget_host_view_win.cc +++ b/chrome/browser/renderer_host/render_widget_host_view_win.cc @@ -232,7 +232,7 @@ BOOL CALLBACK DetachPluginWindowsCallback(HWND window, LPARAM param) { void DrawDeemphasized(const gfx::Rect& paint_rect, HDC backing_store_dc, HDC paint_dc) { - gfx::Canvas canvas(paint_rect.width(), paint_rect.height(), false); + gfx::Canvas canvas(paint_rect.width(), paint_rect.height(), true); HDC dc = canvas.beginPlatformPaint(); BitBlt(dc, 0, @@ -781,7 +781,11 @@ bool RenderWidgetHostViewWin::ContainsNativeView( } void RenderWidgetHostViewWin::SetVisuallyDeemphasized(bool deemphasized) { + if (visually_deemphasized_ == deemphasized) + return; + visually_deemphasized_ = deemphasized; + InvalidateRect(NULL, FALSE); } /////////////////////////////////////////////////////////////////////////////// -- cgit v1.1