1// Copyright 2013 The Chromium Authors. All rights reserved. 2// Use of this source code is governed by a BSD-style license that can be 3// found in the LICENSE file. 4 5#include "chrome/browser/ui/views/message_center/message_center_frame_view.h" 6 7#include "ui/base/hit_test.h" 8#include "ui/message_center/message_center_style.h" 9#include "ui/views/shadow_border.h" 10#include "ui/views/widget/widget.h" 11 12namespace message_center { 13 14MessageCenterFrameView::MessageCenterFrameView() { 15#if defined(OS_LINUX) && !defined(OS_CHROMEOS) 16 const int kBorderWidth = 1; 17 SetBorder(views::Border::CreateSolidBorder( 18 kBorderWidth, message_center::kMessageCenterBorderColor)); 19#else 20 const int kShadowBlur = 8; 21 SetBorder(scoped_ptr<views::Border>(new views::ShadowBorder( 22 kShadowBlur, 23 message_center::kMessageCenterShadowColor, 24 0, // Vertical offset 25 0))); // Horizontal offset 26#endif 27} 28 29MessageCenterFrameView::~MessageCenterFrameView() {} 30 31gfx::Rect MessageCenterFrameView::GetBoundsForClientView() const { 32 gfx::Rect client_bounds = GetLocalBounds(); 33 client_bounds.Inset(GetInsets()); 34 return client_bounds; 35} 36 37gfx::Rect MessageCenterFrameView::GetWindowBoundsForClientBounds( 38 const gfx::Rect& client_bounds) const { 39 gfx::Rect window_bounds = client_bounds; 40 window_bounds.Inset(GetInsets()); 41 return window_bounds; 42} 43 44int MessageCenterFrameView::NonClientHitTest(const gfx::Point& point) { 45 gfx::Rect frame_bounds = bounds(); 46 frame_bounds.Inset(GetInsets()); 47 if (!frame_bounds.Contains(point)) 48 return HTNOWHERE; 49 50 return GetWidget()->client_view()->NonClientHitTest(point); 51} 52 53void MessageCenterFrameView::GetWindowMask(const gfx::Size& size, 54 gfx::Path* window_mask) { 55} 56 57void MessageCenterFrameView::ResetWindowControls() { 58} 59 60void MessageCenterFrameView::UpdateWindowIcon() { 61} 62 63void MessageCenterFrameView::UpdateWindowTitle() { 64} 65 66void MessageCenterFrameView::SizeConstraintsChanged() { 67} 68 69gfx::Insets MessageCenterFrameView::GetInsets() const { 70 return border()->GetInsets(); 71} 72 73const char* MessageCenterFrameView::GetClassName() const { 74 return "MessageCenterFrameView"; 75} 76 77} // namespace message_center 78