Upstream version 7.36.149.0
[platform/framework/web/crosswalk.git] / src / ash / system / tray / system_tray_item.cc
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
3 // found in the LICENSE file.
4
5 #include "ash/system/tray/system_tray_item.h"
6
7 #include "ash/shell.h"
8 #include "ash/system/tray/system_tray.h"
9 #include "ash/system/tray/system_tray_delegate.h"
10 #include "ui/views/view.h"
11
12 namespace ash {
13
14 SystemTrayItem::SystemTrayItem(SystemTray* system_tray)
15     : system_tray_(system_tray),
16       restore_focus_(false) {
17 }
18
19 SystemTrayItem::~SystemTrayItem() {
20 }
21
22 views::View* SystemTrayItem::CreateTrayView(user::LoginStatus status) {
23   return NULL;
24 }
25
26 views::View* SystemTrayItem::CreateDefaultView(user::LoginStatus status) {
27   return NULL;
28 }
29
30 views::View* SystemTrayItem::CreateDetailedView(user::LoginStatus status) {
31   return NULL;
32 }
33
34 views::View* SystemTrayItem::CreateNotificationView(user::LoginStatus status) {
35   return NULL;
36 }
37
38 void SystemTrayItem::DestroyTrayView() {
39 }
40
41 void SystemTrayItem::DestroyDefaultView() {
42 }
43
44 void SystemTrayItem::DestroyDetailedView() {
45 }
46
47 void SystemTrayItem::DestroyNotificationView() {
48 }
49
50 void SystemTrayItem::TransitionDetailedView() {
51   system_tray()->ShowDetailedView(this, 0, true, BUBBLE_USE_EXISTING);
52 }
53
54 void SystemTrayItem::UpdateAfterLoginStatusChange(user::LoginStatus status) {
55 }
56
57 void SystemTrayItem::UpdateAfterShelfAlignmentChange(ShelfAlignment alignment) {
58 }
59
60 void SystemTrayItem::PopupDetailedView(int for_seconds, bool activate) {
61   system_tray()->ShowDetailedView(
62       this, for_seconds, activate, BUBBLE_CREATE_NEW);
63 }
64
65 void SystemTrayItem::SetDetailedViewCloseDelay(int for_seconds) {
66   system_tray()->SetDetailedViewCloseDelay(for_seconds);
67 }
68
69 void SystemTrayItem::HideDetailedView() {
70   system_tray()->HideDetailedView(this);
71 }
72
73 void SystemTrayItem::ShowNotificationView() {
74   system_tray()->ShowNotificationView(this);
75 }
76
77 void SystemTrayItem::HideNotificationView() {
78   system_tray()->HideNotificationView(this);
79 }
80
81 bool SystemTrayItem::ShouldHideArrow() const {
82   return false;
83 }
84
85 bool SystemTrayItem::ShouldShowShelf() const {
86   return true;
87 }
88
89 }  // namespace ash