Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(71)

Unified Diff: tracing/tracing/ui/extras/about_tracing/record_and_capture_controller.html

Issue 1673893002: [trace-viewer] Removed monitoring mode (Closed) Base URL: https://chromium.googlesource.com/external/github.com/catapult-project/catapult.git@master
Patch Set: Created 4 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: tracing/tracing/ui/extras/about_tracing/record_and_capture_controller.html
diff --git a/tracing/tracing/ui/extras/about_tracing/record_and_capture_controller.html b/tracing/tracing/ui/extras/about_tracing/record_and_capture_controller.html
deleted file mode 100644
index ad1a5b1382c64d08678a8e13f3c3d770e4afc95e..0000000000000000000000000000000000000000
--- a/tracing/tracing/ui/extras/about_tracing/record_and_capture_controller.html
+++ /dev/null
@@ -1,238 +0,0 @@
-<!DOCTYPE html>
-<!--
-Copyright (c) 2013 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.
--->
-
-<link rel="import" href="/tracing/ui/extras/about_tracing/record_selection_dialog.html">
-
-<script>
-'use strict';
-
-tr.exportTo('tr.ui.e.about_tracing', function() {
- function beginMonitoring(tracingControllerClient) {
- var finalPromiseResolver;
- var finalPromise = new Promise(function(resolve, reject) {
- finalPromiseResolver = {
- resolve: resolve,
- reject: reject
- };
- });
-
- // TODO(haraken): Implement a configure dialog to set these options.
- var monitoringOptions = {
- categoryFilter: '*',
- useSystemTracing: false,
- tracingRecordMode: 'record-until-full',
- useSampling: true
- };
-
-
- var beginMonitoringPromise = tracingControllerClient.beginMonitoring(
- monitoringOptions);
-
- beginMonitoringPromise.then(
- function() {
- finalPromiseResolver.resolve();
- },
- function(err) {
- finalPromiseResolver.reject(err);
- });
-
- return finalPromise;
- }
-
- function endMonitoring(tracingControllerClient) {
- var endMonitoringPromise = tracingControllerClient.endMonitoring();
- return endMonitoringPromise.then(
- function() {
- },
- function(err) {
- });
- }
-
- function captureMonitoring(tracingControllerClient) {
- var captureMonitoringPromise =
- tracingControllerClient.captureMonitoring();
- return captureMonitoringPromise;
- }
-
- function getMonitoringStatus(tracingControllerClient) {
- var getMonitoringStatusPromise =
- tracingControllerClient.getMonitoringStatus();
- return getMonitoringStatusPromise;
- }
-
- function beginRecording(tracingControllerClient) {
- var finalPromiseResolver;
- var finalPromise = new Promise(function(resolve, reject) {
- finalPromiseResolver = {
- resolve: resolve,
- reject: reject
- };
- });
- finalPromise.selectionDlg = undefined;
- finalPromise.progressDlg = undefined;
-
- function beginRecordingError(err) {
- finalPromiseResolver.reject(err);
- }
-
- // Step 0: End recording. This is necessary when the user reloads the
- // about:tracing page when we are recording. Window.onbeforeunload is not
- // reliable to end recording on reload.
- endRecording(tracingControllerClient).then(
- getCategories,
- getCategories); // Ignore error.
-
- // But just in case, bind onbeforeunload anyway.
- window.onbeforeunload = function(e) {
- endRecording(tracingControllerClient);
- }
-
- // Step 1: Get categories.
- function getCategories() {
- var p = tracingControllerClient.getCategories().then(
- showTracingDialog,
- beginRecordingError);
- p.catch(function(err) {
- beginRecordingError(err);
- });
- }
-
- // Step 2: Show tracing dialog.
- var selectionDlg;
- function showTracingDialog(categories) {
- selectionDlg = new tr.ui.e.about_tracing.RecordSelectionDialog();
- selectionDlg.categories = categories;
- selectionDlg.settings_key =
- 'tr.ui.e.about_tracing.record_selection_dialog';
- selectionDlg.addEventListener('recordclick', startTracing);
- selectionDlg.addEventListener('closeclick', cancelRecording);
- selectionDlg.visible = true;
-
- finalPromise.selectionDlg = selectionDlg;
- }
-
- function cancelRecording() {
- finalPromise.selectionDlg = undefined;
- finalPromiseResolver.reject(new UserCancelledError());
- }
-
- // Step 2: Do the actual tracing dialog.
- var progressDlg;
- var bufferPercentFullDiv;
- function startTracing() {
- progressDlg = new tr.ui.b.Overlay();
- progressDlg.textContent = 'Recording...';
- progressDlg.userCanClose = false;
-
- bufferPercentFullDiv = document.createElement('div');
- progressDlg.appendChild(bufferPercentFullDiv);
-
- var stopButton = document.createElement('button');
- stopButton.textContent = 'Stop';
- progressDlg.clickStopButton = function() {
- stopButton.click();
- };
- progressDlg.appendChild(stopButton);
-
- var recordingOptions = {
- categoryFilter: selectionDlg.categoryFilter(),
- useSystemTracing: selectionDlg.useSystemTracing,
- tracingRecordMode: selectionDlg.tracingRecordMode,
- useSampling: selectionDlg.useSampling
- };
-
-
- var requestPromise = tracingControllerClient.beginRecording(
- recordingOptions);
- requestPromise.then(
- function() {
- progressDlg.visible = true;
- stopButton.focus();
- updateBufferPercentFull('0');
- },
- recordFailed);
-
- stopButton.addEventListener('click', function() {
- // TODO(chrishenry): Currently, this only dismiss the progress
- // dialog when tracingComplete event is received. When performing
- // remote debugging, the tracingComplete event may be delayed
- // considerable. We should indicate to user that we are waiting
- // for tracingComplete event instead of being unresponsive. (For
- // now, I disable the "stop" button, since clicking on the button
- // again now cause exception.)
- var recordingPromise = endRecording(tracingControllerClient);
- recordingPromise.then(
- recordFinished,
- recordFailed);
- stopButton.disabled = true;
- bufferPercentFullDiv = undefined;
- });
- finalPromise.progressDlg = progressDlg;
- }
-
- function recordFinished(tracedData) {
- progressDlg.visible = false;
- finalPromise.progressDlg = undefined;
- finalPromiseResolver.resolve(tracedData);
- }
-
- function recordFailed(err) {
- progressDlg.visible = false;
- finalPromise.progressDlg = undefined;
- finalPromiseResolver.reject(err);
- }
-
- function getBufferPercentFull() {
- if (!bufferPercentFullDiv)
- return;
-
- tracingControllerClient.beginGetBufferPercentFull().then(
- updateBufferPercentFull);
- }
-
- function updateBufferPercentFull(percent_full) {
- if (!bufferPercentFullDiv)
- return;
-
- percent_full = Math.round(100 * parseFloat(percent_full));
- var newText = 'Buffer usage: ' + percent_full + '%';
- if (bufferPercentFullDiv.textContent != newText)
- bufferPercentFullDiv.textContent = newText;
-
- window.setTimeout(getBufferPercentFull, 500);
- }
-
- // Thats it! We're done.
- return finalPromise;
- };
-
- function endRecording(tracingControllerClient) {
- return tracingControllerClient.endRecording();
- }
-
- function defaultTraceName(tracingControllerClient) {
- return tracingControllerClient.defaultTraceName();
- }
-
- function UserCancelledError() {
- Error.apply(this, arguments);
- }
- UserCancelledError.prototype = {
- __proto__: Error.prototype
- };
-
- return {
- beginRecording: beginRecording,
- beginMonitoring: beginMonitoring,
- endMonitoring: endMonitoring,
- captureMonitoring: captureMonitoring,
- getMonitoringStatus: getMonitoringStatus,
- UserCancelledError: UserCancelledError,
- defaultTraceName: defaultTraceName
- };
-});
-</script>

Powered by Google App Engine
This is Rietveld 408576698