blob: ac2b13f39b7c02c91770de7341b9b28eab50ac71 [file] [log] [blame]
// 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.
#ifndef CHROME_BROWSER_UI_COCOA_NOTIFICATIONS_NOTIFICATION_RESPONSE_BUILDER_MAC_H_
#define CHROME_BROWSER_UI_COCOA_NOTIFICATIONS_NOTIFICATION_RESPONSE_BUILDER_MAC_H_
#import <Foundation/Foundation.h>
@class NSUserNotification;
// Make sure this Obj-C enum is kept in sync with the
// NotificationCommon::Operation enum.
// The latter cannot be reused because the XPC service is not aware of
// PlatformNotificationCenter.
enum NotificationOperation {
NOTIFICATION_CLICK = 0,
NOTIFICATION_CLOSE = 1,
NOTIFICATION_DISABLE_PERMISSION = 2,
NOTIFICATION_SETTINGS = 3,
NOTIFICATION_OPERATION_MAX = NOTIFICATION_SETTINGS
};
// Provides a marshallable way for storing the information related to a
// notification response action, clicking on it, clicking on a button etc.
@interface NotificationResponseBuilder : NSObject
+ (NSDictionary*)buildActivatedDictionary:(NSUserNotification*)notification;
+ (NSDictionary*)buildDismissedDictionary:(NSUserNotification*)notification;
@end
#endif // CHROME_BROWSER_UI_COCOA_NOTIFICATIONS_NOTIFICATION_RESPONSE_BUILDER_MAC_H_