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

Unified Diff: chrome/browser/renderer_host/render_widget_host_view_win.cc

Issue 5790002: [gtk] tabcontents fade-out for instant. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: compile fixes Created 10 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 side-by-side diff with in-line comments
Download patch
Index: chrome/browser/renderer_host/render_widget_host_view_win.cc
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 022d027f4aafbe8787895ed25d4e31f9395d90e2..a6657947449df54cbe78052f10b7f9bce12997f7 100644
--- a/chrome/browser/renderer_host/render_widget_host_view_win.cc
+++ b/chrome/browser/renderer_host/render_widget_host_view_win.cc
@@ -246,7 +246,8 @@ BOOL CALLBACK DetachPluginWindowsCallback(HWND window, LPARAM param) {
// Draw the contents of |backing_store_dc| onto |paint_rect| with a 70% grey
// filter.
-void DrawDeemphasized(const gfx::Rect& paint_rect,
+void DrawDeemphasized(const SkColor& color,
+ const gfx::Rect& paint_rect,
HDC backing_store_dc,
HDC paint_dc) {
gfx::CanvasSkia canvas(paint_rect.width(), paint_rect.height(), true);
@@ -261,9 +262,7 @@ void DrawDeemphasized(const gfx::Rect& paint_rect,
paint_rect.y(),
SRCCOPY);
canvas.endPlatformPaint();
- // 178 is 70% grey.
- canvas.FillRectInt(SkColorSetARGB(178, 0, 0, 0), 0, 0,
- paint_rect.width(), paint_rect.height());
+ canvas.FillRectInt(color, 0, 0, paint_rect.width(), paint_rect.height());
canvas.getTopPlatformDevice().drawToHDC(paint_dc, paint_rect.x(),
paint_rect.y(), NULL);
}
@@ -296,7 +295,7 @@ RenderWidgetHostViewWin::RenderWidgetHostViewWin(RenderWidgetHost* widget)
shutdown_factory_(this),
parent_hwnd_(NULL),
is_loading_(false),
- visually_deemphasized_(false),
+ overlay_color_(0),
text_input_type_(WebKit::WebTextInputTypeNone) {
render_widget_host_->set_view(this);
registrar_.Add(this,
@@ -808,11 +807,16 @@ bool RenderWidgetHostViewWin::ContainsNativeView(
return false;
}
-void RenderWidgetHostViewWin::SetVisuallyDeemphasized(bool deemphasized) {
- if (visually_deemphasized_ == deemphasized)
+void RenderWidgetHostViewWin::SetVisuallyDeemphasized(const SkColor* color,
+ bool animate) {
+ // |animate| is not yet implemented, and currently isn't used.
+ CHECK(!animate);
+
+ SkColor overlay_color = color ? *color : 0;
+ if (overlay_color_ == overlay_color)
return;
+ overlay_color_ = overlay_color;
- visually_deemphasized_ = deemphasized;
InvalidateRect(NULL, FALSE);
}
@@ -922,8 +926,11 @@ void RenderWidgetHostViewWin::OnPaint(HDC unused_dc) {
for (DWORD i = 0; i < region_data->rdh.nCount; ++i) {
gfx::Rect paint_rect = bitmap_rect.Intersect(gfx::Rect(region_rects[i]));
if (!paint_rect.IsEmpty()) {
- if (visually_deemphasized_) {
- DrawDeemphasized(paint_rect, backing_store->hdc(), paint_dc.m_hDC);
+ if (SkColorGetA(overlay_color_) > 0) {
+ DrawDeemphasized(overlay_color_,
+ paint_rect,
+ backing_store->hdc(),
+ paint_dc.m_hDC);
} else {
BitBlt(paint_dc.m_hDC,
paint_rect.x(),
« no previous file with comments | « chrome/browser/renderer_host/render_widget_host_view_win.h ('k') | chrome/browser/renderer_host/test/test_render_view_host.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698