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

Side by Side Diff: chrome/browser/ui/views/infobars/translate_infobar_base.cc

Issue 10830353: Introduce InfoBarTabService API. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Respond to review comments, merge to LKGR Created 8 years, 4 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 unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "chrome/browser/ui/views/infobars/translate_infobar_base.h" 5 #include "chrome/browser/ui/views/infobars/translate_infobar_base.h"
6 6
7 #include "base/utf_string_conversions.h" 7 #include "base/utf_string_conversions.h"
8 #include "chrome/browser/infobars/infobar_tab_helper.h"
8 #include "chrome/browser/translate/translate_infobar_delegate.h" 9 #include "chrome/browser/translate/translate_infobar_delegate.h"
9 #include "chrome/browser/ui/views/infobars/after_translate_infobar.h" 10 #include "chrome/browser/ui/views/infobars/after_translate_infobar.h"
10 #include "chrome/browser/ui/views/infobars/before_translate_infobar.h" 11 #include "chrome/browser/ui/views/infobars/before_translate_infobar.h"
11 #include "chrome/browser/ui/views/infobars/translate_message_infobar.h" 12 #include "chrome/browser/ui/views/infobars/translate_message_infobar.h"
12 #include "grit/theme_resources.h" 13 #include "grit/theme_resources.h"
13 #include "ui/base/animation/slide_animation.h" 14 #include "ui/base/animation/slide_animation.h"
14 #include "ui/base/resource/resource_bundle.h" 15 #include "ui/base/resource/resource_bundle.h"
15 #include "ui/gfx/canvas.h" 16 #include "ui/gfx/canvas.h"
16 #include "ui/views/controls/button/menu_button.h" 17 #include "ui/views/controls/button/menu_button.h"
17 #include "ui/views/controls/label.h" 18 #include "ui/views/controls/label.h"
18 19
19 // TranslateInfoBarDelegate --------------------------------------------------- 20 // TranslateInfoBarDelegate ---------------------------------------------------
20 21
21 InfoBar* TranslateInfoBarDelegate::CreateInfoBar(InfoBarTabHelper* owner) { 22 InfoBar* TranslateInfoBarDelegate::CreateInfoBar(InfoBarTabService* owner) {
23 InfoBarTabHelper* helper = static_cast<InfoBarTabHelper*>(owner);
22 TranslateInfoBarBase* infobar = NULL; 24 TranslateInfoBarBase* infobar = NULL;
23 switch (type_) { 25 switch (type_) {
24 case BEFORE_TRANSLATE: 26 case BEFORE_TRANSLATE:
25 infobar = new BeforeTranslateInfoBar(owner, this); 27 infobar = new BeforeTranslateInfoBar(helper, this);
26 break; 28 break;
27 case AFTER_TRANSLATE: 29 case AFTER_TRANSLATE:
28 infobar = new AfterTranslateInfoBar(owner, this); 30 infobar = new AfterTranslateInfoBar(helper, this);
29 break; 31 break;
30 case TRANSLATING: 32 case TRANSLATING:
31 case TRANSLATION_ERROR: 33 case TRANSLATION_ERROR:
32 infobar = new TranslateMessageInfoBar(owner, this); 34 infobar = new TranslateMessageInfoBar(helper, this);
33 break; 35 break;
34 default: 36 default:
35 NOTREACHED(); 37 NOTREACHED();
36 } 38 }
37 infobar_view_ = infobar; 39 infobar_view_ = infobar;
38 return infobar; 40 return infobar;
39 } 41 }
40 42
41 // TranslateInfoBarBase ------------------------------------------------------- 43 // TranslateInfoBarBase -------------------------------------------------------
42 44
(...skipping 83 matching lines...) Expand 10 before | Expand all | Expand 10 after
126 void TranslateInfoBarBase::FadeBackground(gfx::Canvas* canvas, 128 void TranslateInfoBarBase::FadeBackground(gfx::Canvas* canvas,
127 double animation_value, 129 double animation_value,
128 const views::Background& background) { 130 const views::Background& background) {
129 // Draw the background into an offscreen buffer with alpha value per animation 131 // Draw the background into an offscreen buffer with alpha value per animation
130 // value, then blend it back into the current canvas. 132 // value, then blend it back into the current canvas.
131 canvas->SaveLayerAlpha(static_cast<int>(animation_value * 255)); 133 canvas->SaveLayerAlpha(static_cast<int>(animation_value * 255));
132 canvas->sk_canvas()->drawARGB(0, 255, 255, 255, SkXfermode::kClear_Mode); 134 canvas->sk_canvas()->drawARGB(0, 255, 255, 255, SkXfermode::kClear_Mode);
133 background.Paint(canvas, this); 135 background.Paint(canvas, this);
134 canvas->Restore(); 136 canvas->Restore();
135 } 137 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698