| Index: ash/common/system/chromeos/supervised/tray_supervised_user.cc
|
| diff --git a/ash/common/system/chromeos/supervised/tray_supervised_user.cc b/ash/common/system/chromeos/supervised/tray_supervised_user.cc
|
| deleted file mode 100644
|
| index ffb6797a75685587e0a8445b6d43cfe8d304279a..0000000000000000000000000000000000000000
|
| --- a/ash/common/system/chromeos/supervised/tray_supervised_user.cc
|
| +++ /dev/null
|
| @@ -1,132 +0,0 @@
|
| -// Copyright 2014 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 "ash/common/system/chromeos/supervised/tray_supervised_user.h"
|
| -
|
| -#include <utility>
|
| -
|
| -#include "ash/common/login_status.h"
|
| -#include "ash/common/system/system_notifier.h"
|
| -#include "ash/common/system/tray/label_tray_view.h"
|
| -#include "ash/common/system/tray/system_tray_delegate.h"
|
| -#include "ash/common/wm_shell.h"
|
| -#include "ash/resources/grit/ash_resources.h"
|
| -#include "base/callback.h"
|
| -#include "base/logging.h"
|
| -#include "ui/base/resource/resource_bundle.h"
|
| -#include "ui/message_center/message_center.h"
|
| -#include "ui/message_center/notification.h"
|
| -#include "ui/message_center/notification_delegate.h"
|
| -
|
| -using message_center::Notification;
|
| -
|
| -namespace ash {
|
| -
|
| -const char TraySupervisedUser::kNotificationId[] =
|
| - "chrome://user/locally-managed";
|
| -
|
| -TraySupervisedUser::TraySupervisedUser(SystemTray* system_tray)
|
| - : SystemTrayItem(system_tray, UMA_SUPERVISED_USER),
|
| - tray_view_(NULL),
|
| - status_(LoginStatus::NOT_LOGGED_IN),
|
| - is_user_supervised_(false) {
|
| - WmShell::Get()->system_tray_delegate()->AddCustodianInfoTrayObserver(this);
|
| -}
|
| -
|
| -TraySupervisedUser::~TraySupervisedUser() {
|
| - // We need the check as on shell destruction delegate is destroyed first.
|
| - SystemTrayDelegate* system_tray_delegate =
|
| - WmShell::Get()->system_tray_delegate();
|
| - if (system_tray_delegate)
|
| - system_tray_delegate->RemoveCustodianInfoTrayObserver(this);
|
| -}
|
| -
|
| -void TraySupervisedUser::UpdateMessage() {
|
| - base::string16 message =
|
| - WmShell::Get()->system_tray_delegate()->GetSupervisedUserMessage();
|
| - if (tray_view_)
|
| - tray_view_->SetMessage(message);
|
| - if (message_center::MessageCenter::Get()->FindVisibleNotificationById(
|
| - kNotificationId))
|
| - CreateOrUpdateNotification(message);
|
| -}
|
| -
|
| -views::View* TraySupervisedUser::CreateDefaultView(LoginStatus status) {
|
| - CHECK(tray_view_ == NULL);
|
| - SystemTrayDelegate* delegate = WmShell::Get()->system_tray_delegate();
|
| - if (!delegate->IsUserSupervised())
|
| - return NULL;
|
| -
|
| - tray_view_ = new LabelTrayView(this, GetSupervisedUserIconId());
|
| - UpdateMessage();
|
| - return tray_view_;
|
| -}
|
| -
|
| -void TraySupervisedUser::DestroyDefaultView() {
|
| - tray_view_ = NULL;
|
| -}
|
| -
|
| -void TraySupervisedUser::OnViewClicked(views::View* sender) {
|
| - // TODO(antrim): Find out what should we show in this case.
|
| -}
|
| -
|
| -void TraySupervisedUser::UpdateAfterLoginStatusChange(LoginStatus status) {
|
| - SystemTrayDelegate* delegate = WmShell::Get()->system_tray_delegate();
|
| -
|
| - bool is_user_supervised = delegate->IsUserSupervised();
|
| - if (status == status_ && is_user_supervised == is_user_supervised_)
|
| - return;
|
| -
|
| - if (is_user_supervised && !delegate->IsUserChild() &&
|
| - status_ != LoginStatus::LOCKED &&
|
| - !delegate->GetSupervisedUserManager().empty())
|
| - CreateOrUpdateSupervisedWarningNotification();
|
| -
|
| - status_ = status;
|
| - is_user_supervised_ = is_user_supervised;
|
| -}
|
| -
|
| -void TraySupervisedUser::CreateOrUpdateNotification(
|
| - const base::string16& new_message) {
|
| - ui::ResourceBundle& bundle = ui::ResourceBundle::GetSharedInstance();
|
| - std::unique_ptr<Notification> notification(
|
| - message_center::Notification::CreateSystemNotification(
|
| - kNotificationId, base::string16() /* no title */, new_message,
|
| - bundle.GetImageNamed(GetSupervisedUserIconId()),
|
| - system_notifier::kNotifierSupervisedUser,
|
| - base::Closure() /* null callback */));
|
| - message_center::MessageCenter::Get()->AddNotification(
|
| - std::move(notification));
|
| -}
|
| -
|
| -void TraySupervisedUser::CreateOrUpdateSupervisedWarningNotification() {
|
| - SystemTrayDelegate* delegate = WmShell::Get()->system_tray_delegate();
|
| - CreateOrUpdateNotification(delegate->GetSupervisedUserMessage());
|
| -}
|
| -
|
| -void TraySupervisedUser::OnCustodianInfoChanged() {
|
| - SystemTrayDelegate* delegate = WmShell::Get()->system_tray_delegate();
|
| - std::string manager_name = delegate->GetSupervisedUserManager();
|
| - if (!manager_name.empty()) {
|
| - if (!delegate->IsUserChild() &&
|
| - !message_center::MessageCenter::Get()->FindVisibleNotificationById(
|
| - kNotificationId)) {
|
| - CreateOrUpdateSupervisedWarningNotification();
|
| - }
|
| - UpdateMessage();
|
| - }
|
| -}
|
| -
|
| -int TraySupervisedUser::GetSupervisedUserIconId() const {
|
| - SystemTrayDelegate* delegate = WmShell::Get()->system_tray_delegate();
|
| -
|
| - // Not intended to be used for non-supervised users.
|
| - CHECK(delegate->IsUserSupervised());
|
| -
|
| - if (delegate->IsUserChild())
|
| - return IDR_AURA_UBER_TRAY_CHILD_USER;
|
| - return IDR_AURA_UBER_TRAY_SUPERVISED_USER;
|
| -}
|
| -
|
| -} // namespace ash
|
|
|