| Index: chrome/browser/ui/views/avatar_menu_button.cc | 
| =================================================================== | 
| --- chrome/browser/ui/views/avatar_menu_button.cc	(revision 88685) | 
| +++ chrome/browser/ui/views/avatar_menu_button.cc	(working copy) | 
| @@ -1,71 +0,0 @@ | 
| -// Copyright (c) 2011 The Chromium Authors. All rights reserved. | 
| -// Use of this source code is governed by a BSD-style license that can be | 
| -// found in the LICENSE file. | 
| - | 
| -#include "chrome/browser/ui/views/avatar_menu_button.h" | 
| - | 
| -#include "ui/gfx/canvas_skia.h" | 
| -#include "views/controls/menu/menu_model_adapter.h" | 
| -#include "views/window/window.h" | 
| - | 
| -// Menu should display below the image on the frame. This | 
| -// offset size depends on whether the frame is in glass or opaque mode. | 
| -const int kMenuDisplayOffset = 5; | 
| - | 
| -static inline int Round(double x) { | 
| -  return static_cast<int>(floor(x + 0.5)); | 
| -} | 
| - | 
| -AvatarMenuButton::AvatarMenuButton(const std::wstring& text, | 
| -                                   ui::MenuModel* menu_model) | 
| -    : MenuButton(NULL, text, this, false), | 
| -      menu_model_(menu_model) { | 
| -  // In RTL mode, the avatar icon should be looking the opposite direction. | 
| -  EnableCanvasFlippingForRTLUI(true); | 
| -} | 
| - | 
| -AvatarMenuButton::~AvatarMenuButton() {} | 
| - | 
| -void AvatarMenuButton::OnPaint(gfx::Canvas* canvas) { | 
| -  const SkBitmap& icon = GetImageToPaint(); | 
| -  if (!icon.isNull()) { | 
| -    // Scale the image to fit the width of the button. | 
| -    int src_width = icon.width(); | 
| -    int src_x = 0; | 
| -    int dst_width = std::min(src_width, width()); | 
| -    int dst_x = Round((width() - dst_width) / 2.0); | 
| - | 
| -    // Scale the height and maintain aspect ratio. This means that the | 
| -    // icon may not fit in the view. That's ok, we just center it vertically. | 
| -    float scale = | 
| -        static_cast<float>(dst_width) / static_cast<float>(icon.width()); | 
| -    int scaled_height = Round(height() / scale); | 
| -    int src_height = std::min(scaled_height, icon.height()); | 
| -    int src_y = Round((icon.height() - src_height) / 2.0); | 
| -    int dst_height = src_height * scale; | 
| -    int dst_y = Round((height() - dst_height) / 2.0); | 
| - | 
| -    canvas->DrawBitmapInt(icon, src_x, src_y, src_width, src_height, | 
| -        dst_x, dst_y, dst_width, dst_height, false); | 
| -  } | 
| -} | 
| - | 
| -gfx::Size AvatarMenuButton::GetPreferredAvatarSize() { | 
| -  return gfx::Size(38, 31); | 
| -} | 
| - | 
| -// views::ViewMenuDelegate implementation | 
| -void AvatarMenuButton::RunMenu(views::View* source, const gfx::Point& pt) { | 
| -  if (!menu_model_.get()) | 
| -    return; | 
| - | 
| -  views::MenuModelAdapter menu_model_adapter(menu_model_.get()); | 
| -  views::MenuItemView menu(&menu_model_adapter); | 
| -  menu_model_adapter.BuildMenu(&menu); | 
| - | 
| -  gfx::Point menu_point(pt.x(), pt.y() + kMenuDisplayOffset); | 
| -  menu.RunMenuAt(source->GetWindow()->GetNativeWindow(), NULL, | 
| -                 gfx::Rect(pt, gfx::Size(0, 0)), | 
| -                 views::MenuItemView::TOPRIGHT, | 
| -                 true); | 
| -} | 
|  |