mirror of
https://github.com/klzgrad/naiveproxy.git
synced 2024-12-01 01:36:09 +03:00
70 lines
2.2 KiB
Plaintext
70 lines
2.2 KiB
Plaintext
// Copyright 2017 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.
|
|
|
|
module content.mojom;
|
|
|
|
import "content/public/common/push_messaging_status.mojom";
|
|
import "url/mojo/url.mojom";
|
|
|
|
// TODO(heke): The type-mapping struct and enums are duplicately defined. Need
|
|
// to remove/replace those defined in content or blink namespace.
|
|
|
|
struct PushSubscriptionOptions {
|
|
bool user_visible_only;
|
|
string sender_info;
|
|
};
|
|
|
|
enum PushErrorType {
|
|
ABORT = 0,
|
|
NETWORK = 1,
|
|
NONE = 2,
|
|
NOT_ALLOWED = 3,
|
|
NOT_FOUND = 4,
|
|
NOT_SUPPORTED = 5,
|
|
INVALID_STATE = 6,
|
|
LAST = INVALID_STATE
|
|
};
|
|
|
|
enum PushPermissionStatus {
|
|
GRANTED = 0,
|
|
DENIED = 1,
|
|
PROMPT = 2,
|
|
LAST = PROMPT
|
|
};
|
|
|
|
interface PushMessaging {
|
|
Subscribe(int32 render_frame_id,
|
|
int64 service_worker_registration_id,
|
|
PushSubscriptionOptions options,
|
|
bool user_gesture)
|
|
=> (PushRegistrationStatus status,
|
|
url.mojom.Url? endpoint,
|
|
PushSubscriptionOptions? options,
|
|
array<uint8>? p256dh,
|
|
array<uint8>? auth);
|
|
|
|
// We use the value of |error_type| as a flag. If |error_type| == NONE, it
|
|
// means no error and returns |did_unsubscribe|. Else, it means there is an
|
|
// error and returns |error_type| and |error_message|.
|
|
Unsubscribe(int64 service_worker_registration_id)
|
|
=> (PushErrorType error_type,
|
|
bool did_unsubscribe,
|
|
string? error_message);
|
|
|
|
GetSubscription(int64 service_worker_registration_id)
|
|
=> (PushGetRegistrationStatus status,
|
|
url.mojom.Url? endpoint,
|
|
PushSubscriptionOptions? options,
|
|
array<uint8>? p256dh,
|
|
array<uint8>? auth);
|
|
|
|
// We use the value of |error_type| as a flag. If |error_type| == NONE, it
|
|
// means no error and returns |status|. Else, it means there is an error and
|
|
// returns |error_type|.
|
|
GetPermissionStatus(int64 service_worker_registration_id,
|
|
bool user_visible)
|
|
=> (PushErrorType error_type,
|
|
PushPermissionStatus status);
|
|
};
|