Index: ui/arc/notification/arc_custom_notification_item.cc |
diff --git a/ui/arc/notification/arc_custom_notification_item.cc b/ui/arc/notification/arc_custom_notification_item.cc |
deleted file mode 100644 |
index 521145ddf063f803174e12124578df970bda5f25..0000000000000000000000000000000000000000 |
--- a/ui/arc/notification/arc_custom_notification_item.cc |
+++ /dev/null |
@@ -1,141 +0,0 @@ |
-// Copyright 2016 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 "ui/arc/notification/arc_custom_notification_item.h" |
- |
-#include <memory> |
-#include <string> |
-#include <utility> |
- |
-#include "base/memory/ptr_util.h" |
-#include "base/strings/string16.h" |
-#include "base/strings/utf_string_conversions.h" |
-#include "ui/arc/notification/arc_custom_notification_view.h" |
-#include "ui/message_center/notification.h" |
-#include "ui/message_center/notification_types.h" |
-#include "ui/message_center/views/custom_notification_content_view_delegate.h" |
- |
-namespace arc { |
- |
-namespace { |
- |
-constexpr char kNotifierId[] = "ARC_NOTIFICATION"; |
- |
-class ArcNotificationDelegate : public message_center::NotificationDelegate { |
- public: |
- explicit ArcNotificationDelegate(ArcCustomNotificationItem* item) |
- : item_(item) { |
- DCHECK(item_); |
- } |
- |
- std::unique_ptr<message_center::CustomContent> CreateCustomContent() |
- override { |
- auto view = base::MakeUnique<ArcCustomNotificationView>(item_); |
- auto content_view_delegate = view->CreateContentViewDelegate(); |
- return base::MakeUnique<message_center::CustomContent>( |
- std::move(view), std::move(content_view_delegate)); |
- } |
- |
- void Close(bool by_user) override { item_->Close(by_user); } |
- |
- void Click() override { item_->Click(); } |
- |
- private: |
- // The destructor is private since this class is ref-counted. |
- ~ArcNotificationDelegate() override {} |
- |
- ArcCustomNotificationItem* const item_; |
- |
- DISALLOW_COPY_AND_ASSIGN(ArcNotificationDelegate); |
-}; |
- |
-} // namespace |
- |
-ArcCustomNotificationItem::ArcCustomNotificationItem( |
- ArcNotificationManager* manager, |
- message_center::MessageCenter* message_center, |
- const std::string& notification_key, |
- const AccountId& profile_id) |
- : ArcNotificationItem(manager, |
- message_center, |
- notification_key, |
- profile_id) { |
-} |
- |
-ArcCustomNotificationItem::~ArcCustomNotificationItem() { |
- for (auto& observer : observers_) |
- observer.OnItemDestroying(); |
-} |
- |
-void ArcCustomNotificationItem::UpdateWithArcNotificationData( |
- mojom::ArcNotificationDataPtr data) { |
- DCHECK(CalledOnValidThread()); |
- DCHECK_EQ(notification_key(), data->key); |
- |
- if (HasPendingNotification()) { |
- CacheArcNotificationData(std::move(data)); |
- return; |
- } |
- |
- message_center::RichNotificationData rich_data; |
- rich_data.pinned = (data->no_clear || data->ongoing_event); |
- rich_data.priority = ConvertAndroidPriority(data->priority); |
- if (data->small_icon) |
- rich_data.small_image = gfx::Image::CreateFrom1xBitmap(*data->small_icon); |
- if (data->accessible_name.has_value()) |
- rich_data.accessible_name = base::UTF8ToUTF16(*data->accessible_name); |
- |
- message_center::NotifierId notifier_id( |
- message_center::NotifierId::SYSTEM_COMPONENT, kNotifierId); |
- notifier_id.profile_id = profile_id().GetUserEmail(); |
- |
- auto notification = base::MakeUnique<message_center::Notification>( |
- message_center::NOTIFICATION_TYPE_CUSTOM, notification_id(), |
- base::UTF8ToUTF16(data->title), base::UTF8ToUTF16(data->message), |
- gfx::Image(), |
- base::UTF8ToUTF16("arc"), // display source |
- GURL(), // empty origin url, for system component |
- notifier_id, rich_data, new ArcNotificationDelegate(this)); |
- notification->set_timestamp(base::Time::FromJavaTime(data->time)); |
- SetNotification(std::move(notification)); |
- |
- pinned_ = rich_data.pinned; |
- expand_state_ = data->expand_state; |
- shown_contents_ = data->shown_contents; |
- |
- if (!data->snapshot_image || data->snapshot_image->isNull()) { |
- snapshot_ = gfx::ImageSkia(); |
- } else { |
- snapshot_ = gfx::ImageSkia(gfx::ImageSkiaRep( |
- *data->snapshot_image, data->snapshot_image_scale)); |
- } |
- |
- for (auto& observer : observers_) |
- observer.OnItemUpdated(); |
- |
- AddToMessageCenter(); |
-} |
- |
-void ArcCustomNotificationItem::AddObserver(Observer* observer) { |
- observers_.AddObserver(observer); |
-} |
- |
-void ArcCustomNotificationItem::RemoveObserver(Observer* observer) { |
- observers_.RemoveObserver(observer); |
-} |
- |
-void ArcCustomNotificationItem::IncrementWindowRefCount() { |
- ++window_ref_count_; |
- if (window_ref_count_ == 1) |
- manager()->CreateNotificationWindow(notification_key()); |
-} |
- |
-void ArcCustomNotificationItem::DecrementWindowRefCount() { |
- DCHECK_GT(window_ref_count_, 0); |
- --window_ref_count_; |
- if (window_ref_count_ == 0) |
- manager()->CloseNotificationWindow(notification_key()); |
-} |
- |
-} // namespace arc |