190dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)// Copyright 2013 The Chromium Authors. All rights reserved.
290dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)// Use of this source code is governed by a BSD-style license that can be
390dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)// found in the LICENSE file.
490dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)
590dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)#include "ui/message_center/notification_delegate.h"
690dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)
790dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)namespace message_center {
890dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)
9c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch// NotificationDelegate:
10c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch
1190dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)bool NotificationDelegate::HasClickedListener() { return false; }
1290dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)
1390dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)void NotificationDelegate::ButtonClick(int button_index) {}
1490dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)
15c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch// HandleNotificationClickedDelegate:
16c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch
17a36e5920737c6adbddd3e43b760e5de8431db6e0Torne (Richard Coles)HandleNotificationClickedDelegate::HandleNotificationClickedDelegate(
18a36e5920737c6adbddd3e43b760e5de8431db6e0Torne (Richard Coles)    const base::Closure& closure)
19a36e5920737c6adbddd3e43b760e5de8431db6e0Torne (Richard Coles)    : closure_(closure) {
20a36e5920737c6adbddd3e43b760e5de8431db6e0Torne (Richard Coles)}
21a36e5920737c6adbddd3e43b760e5de8431db6e0Torne (Richard Coles)
22a36e5920737c6adbddd3e43b760e5de8431db6e0Torne (Richard Coles)HandleNotificationClickedDelegate::~HandleNotificationClickedDelegate() {
23a36e5920737c6adbddd3e43b760e5de8431db6e0Torne (Richard Coles)}
24a36e5920737c6adbddd3e43b760e5de8431db6e0Torne (Richard Coles)
25a36e5920737c6adbddd3e43b760e5de8431db6e0Torne (Richard Coles)void HandleNotificationClickedDelegate::Display() {
26a36e5920737c6adbddd3e43b760e5de8431db6e0Torne (Richard Coles)}
27a36e5920737c6adbddd3e43b760e5de8431db6e0Torne (Richard Coles)
28a36e5920737c6adbddd3e43b760e5de8431db6e0Torne (Richard Coles)void HandleNotificationClickedDelegate::Error() {
29a36e5920737c6adbddd3e43b760e5de8431db6e0Torne (Richard Coles)}
30a36e5920737c6adbddd3e43b760e5de8431db6e0Torne (Richard Coles)
31a36e5920737c6adbddd3e43b760e5de8431db6e0Torne (Richard Coles)void HandleNotificationClickedDelegate::Close(bool by_user) {
32a36e5920737c6adbddd3e43b760e5de8431db6e0Torne (Richard Coles)}
33a36e5920737c6adbddd3e43b760e5de8431db6e0Torne (Richard Coles)
34a36e5920737c6adbddd3e43b760e5de8431db6e0Torne (Richard Coles)bool HandleNotificationClickedDelegate::HasClickedListener() {
35a36e5920737c6adbddd3e43b760e5de8431db6e0Torne (Richard Coles)  return !closure_.is_null();
36a36e5920737c6adbddd3e43b760e5de8431db6e0Torne (Richard Coles)}
37a36e5920737c6adbddd3e43b760e5de8431db6e0Torne (Richard Coles)
38a36e5920737c6adbddd3e43b760e5de8431db6e0Torne (Richard Coles)void HandleNotificationClickedDelegate::Click() {
395d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)  if (!closure_.is_null())
405d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)    closure_.Run();
41a36e5920737c6adbddd3e43b760e5de8431db6e0Torne (Richard Coles)}
42a36e5920737c6adbddd3e43b760e5de8431db6e0Torne (Richard Coles)
43a36e5920737c6adbddd3e43b760e5de8431db6e0Torne (Richard Coles)void HandleNotificationClickedDelegate::ButtonClick(int button_index) {
44a36e5920737c6adbddd3e43b760e5de8431db6e0Torne (Richard Coles)}
45a36e5920737c6adbddd3e43b760e5de8431db6e0Torne (Richard Coles)
46c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch// HandleNotificationButtonClickDelegate:
47c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch
48c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen MurdochHandleNotificationButtonClickDelegate::HandleNotificationButtonClickDelegate(
49c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch    const ButtonClickCallback& button_callback)
50c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch    : button_callback_(button_callback) {
51c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch}
52c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch
53c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen MurdochHandleNotificationButtonClickDelegate::
54c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch    ~HandleNotificationButtonClickDelegate() {
55c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch}
56c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch
57c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdochvoid HandleNotificationButtonClickDelegate::Display() {
58c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch}
59c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch
60c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdochvoid HandleNotificationButtonClickDelegate::Error() {
61c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch}
62c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch
63c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdochvoid HandleNotificationButtonClickDelegate::Close(bool by_user) {
64c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch}
65c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch
66c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdochvoid HandleNotificationButtonClickDelegate::Click() {
67c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch}
68c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch
69c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdochvoid HandleNotificationButtonClickDelegate::ButtonClick(int button_index) {
70c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch  if (!button_callback_.is_null())
71c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch    button_callback_.Run(button_index);
72c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch}
73c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch
7490dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)}  // namespace message_center
75