blob: 6d2890f19365366784012d8572d0bb30f1d52dfe [file] [log] [blame]
// Copyright 2015 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 COMPONENTS_HTML_VIEWER_WEB_NOTIFICATION_MANAGER_IMPL_H_
#define COMPONENTS_HTML_VIEWER_WEB_NOTIFICATION_MANAGER_IMPL_H_
#include "third_party/WebKit/public/platform/modules/notifications/WebNotificationManager.h"
namespace blink {
class WebSecurityOrigin;
}
namespace html_viewer {
// TODO(erg): This class is currently a stub; blink expects this object to
// exist, and several websites will trigger notifications these days.
class WebNotificationManagerImpl : public blink::WebNotificationManager {
public:
WebNotificationManagerImpl();
~WebNotificationManagerImpl() override;
// blink::WebNotificationManager methods:
void show(const blink::WebSecurityOrigin& origin,
const blink::WebNotificationData& notification_data,
blink::WebNotificationDelegate* delegate) override;
void showPersistent(
const blink::WebSecurityOrigin& origin,
const blink::WebNotificationData& notification_data,
blink::WebServiceWorkerRegistration* service_worker_registration,
blink::WebNotificationShowCallbacks* callbacks) override;
void getNotifications(
const blink::WebString& filter_tag,
blink::WebServiceWorkerRegistration* service_worker_registration,
blink::WebNotificationGetCallbacks* callbacks) override;
void close(blink::WebNotificationDelegate* delegate) override;
void closePersistent(const blink::WebSecurityOrigin& origin,
int64_t persistent_notification_id) override;
void notifyDelegateDestroyed(blink::WebNotificationDelegate* delegate)
override;
blink::WebNotificationPermission checkPermission(
const blink::WebSecurityOrigin& origin) override;
size_t maxActions() override;
private:
DISALLOW_COPY_AND_ASSIGN(WebNotificationManagerImpl);
};
} // namespace html_viewer
#endif // COMPONENTS_HTML_VIEWER_WEB_NOTIFICATION_MANAGER_IMPL_H_