1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78
|
// Copyright 2018 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#ifndef EXTENSIONS_BROWSER_ACTIVITY_H_
#define EXTENSIONS_BROWSER_ACTIVITY_H_
namespace extensions {
struct Activity {
enum Type {
// The activity is for accessibility. The extra data is an empty string.
ACCESSIBILITY,
// The activity is an Extensions API function call. The extra data is the
// function name.
API_FUNCTION,
// The activity is for the Developer Tools client. The extra data is an
// empty string.
DEV_TOOLS,
// The activity is an event. The extra data is the event name.
EVENT,
// The activity is meant to keep the background page alive during an
// IPC call or during page creation. Use the constants kIPC or
// kCreatePage.
LIFECYCLE_MANAGEMENT,
// The activity is related to the media manager. Use the constant
// kPictureInPicture.
MEDIA,
// The activity is a message. The extra data is the port ID.
MESSAGE,
// The activity is a message port opening. The extra data is the port ID.
MESSAGE_PORT,
// The activity is meant to keep the background page alive while
// a modal dialog box is visible. The extra data is the URL of the
// calling page.
MODAL_DIALOG,
// The activity is a Mojo API function call. The extra data is an empty
// string.
MOJO,
// The activity is a network request. The extra data is the request ID.
NETWORK,
// The activity is a Pepper API function call. The extra data is an empty
// string.
PEPPER_API,
// The activity is internal ProcessManager bookkeeping. The extra data
// is one of kCancelSuspend or kRenderFrame.
PROCESS_MANAGER,
// The activity is an attached debugger session (i.e., using the
// chrome.debugger API). This is distinct from `DEV_TOOLS`, which indicates
// the user is debugging the extension.
DEBUGGER,
};
static const char* ToString(Type type);
static const char kCancelSuspend[];
static const char kCreatePage[];
static const char kIPC[];
static const char kPictureInPicture[];
static const char kRenderFrame[];
};
} // namespace extensions
#endif // EXTENSIONS_BROWSER_ACTIVITY_H_
|