Add ability to clear logged background service events.

Hook up the delete button, and make it clear all stored data for a
background service.

Also set up event listeners in the background services view.

Bug: 927726
Change-Id: I5475b3fb7c4653f6b83101bf79c1fc82f3026959
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1503460
Commit-Queue: Rayan Kanso <rayankans@chromium.org>
Reviewed-by: Dmitry Gozman <dgozman@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#639473}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 23575eff5f5b3f5fd6c6a934d42f74874a9a8b28
This commit is contained in:
Rayan Kanso
2019-03-11 13:49:43 +00:00
committed by Commit Bot
parent 577e0bdbf1
commit f40e315641
2 changed files with 22 additions and 1 deletions
@@ -30,6 +30,13 @@ Resources.BackgroundServiceModel = class extends SDK.SDKModel {
this._backgroundServiceAgent.setRecording(shouldRecord, serviceName);
}
/**
* @param {!Protocol.BackgroundService.ServiceName} serviceName
*/
clearEvents(serviceName) {
this._backgroundServiceAgent.clearEvents(serviceName);
}
/**
* @override
* @param {boolean} isRecording
@@ -45,6 +52,8 @@ Resources.BackgroundServiceModel = class extends SDK.SDKModel {
* @param {!Protocol.BackgroundService.BackgroundServiceEvent} backgroundServiceEvent
*/
backgroundServiceEventReceived(backgroundServiceEvent) {
this.dispatchEventToListeners(
Resources.BackgroundServiceModel.Events.BackgroundServiceEventReceived, backgroundServiceEvent);
}
};
@@ -53,6 +62,7 @@ SDK.SDKModel.register(Resources.BackgroundServiceModel, SDK.Target.Capability.Br
/** @enum {symbol} */
Resources.BackgroundServiceModel.Events = {
RecordingStateChanged: Symbol('RecordingStateChanged'),
BackgroundServiceEventReceived: Symbol('BackgroundServiceEventReceived'),
};
/**
+12 -1
View File
@@ -18,6 +18,8 @@ Resources.BackgroundServiceView = class extends UI.VBox {
this._model = model;
this._model.addEventListener(
Resources.BackgroundServiceModel.Events.RecordingStateChanged, this._onRecordingStateChanged, this);
this._model.addEventListener(
Resources.BackgroundServiceModel.Events.BackgroundServiceEventReceived, this._onEventReceived, this);
this._model.enable(this._serviceName);
/** @type {?UI.ToolbarToggle} */
@@ -49,7 +51,7 @@ Resources.BackgroundServiceView = class extends UI.VBox {
this._toolbar.appendSeparator();
const deleteButton = new UI.ToolbarButton(Common.UIString('Delete'), 'largeicon-trash-bin');
deleteButton.addEventListener(UI.ToolbarButton.Events.Click, () => {});
deleteButton.addEventListener(UI.ToolbarButton.Events.Click, () => this._model.clearEvents(this._serviceName));
this._toolbar.appendToolbarItem(deleteButton);
}
@@ -69,4 +71,13 @@ Resources.BackgroundServiceView = class extends UI.VBox {
return;
this._recordButton.setToggled(state.isRecording);
}
/**
* @param {!Common.Event} event
*/
_onEventReceived(event) {
const serviceEvent = /** @type {!Protocol.BackgroundService.BackgroundServiceEvent} */ (event.data);
if (serviceEvent.service !== this._serviceName)
return;
}
};