12345678910111213141516171819202122232425262728293031323334353637383940414243 |
- // Copyright 2022 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.
- // Represents a thread making a debug call to
- // the visual debugger.
- //
- class Thread {
- // Keeps track of all threads that debug calls came in from
- // while the app is running.
- static registered_threads = {};
- constructor(json) {
- this.threadName_ = json.thread_name;
- // Calls from each thread is enabled by default.
- this.enabled_ = true;
- // Thread color overriding filter colors is disabled by default.
- this.overrideFilters_ = false;
- this.drawColor_ = '#000000';
- this.fillAlpha_ = "10";
- // Add new thread to a pool of thread objects.
- Thread.registered_threads[this.threadName_] = this;
- // Create thread filter chip.
- const threadChip = createThreadChip(this);
- const threadFilters = document.querySelector('#threads');
- threadFilters.appendChild(threadChip);
- }
- static isThreadRegistered(threadName) {
- // If thread already registered, return true.
- return (threadName in Thread.registered_threads);
- }
- static getThread(threadName) {
- return Thread.registered_threads[threadName];
- }
- toggleEnableThread() {
- this.enabled_ = !this.enabled_;
- }
- }
|