ui: Remove setVisibleTracks

Change-Id: Ief050b1bc148e8e541b787ab68c51ece617e1081
diff --git a/ui/src/common/actions.ts b/ui/src/common/actions.ts
index b4c096a..393a7e4 100644
--- a/ui/src/common/actions.ts
+++ b/ui/src/common/actions.ts
@@ -370,10 +370,6 @@
     }
   },
 
-  setVisibleTracks(state: StateDraft, args: {tracks: string[]}) {
-    state.visibleTracks = args.tracks;
-  },
-
   moveTrack(
       state: StateDraft,
       args: {srcId: string; op: 'before' | 'after', dstId: string}): void {
diff --git a/ui/src/common/empty_state.ts b/ui/src/common/empty_state.ts
index 34ecd93..7caddc2 100644
--- a/ui/src/common/empty_state.ts
+++ b/ui/src/common/empty_state.ts
@@ -97,7 +97,6 @@
     utidToThreadSortKey: {},
     aggregatePreferences: {},
     trackGroups: {},
-    visibleTracks: [],
     pinnedTracks: [],
     scrollingTracks: [],
     areas: {},
diff --git a/ui/src/common/state.ts b/ui/src/common/state.ts
index 64956a0..1183a96 100644
--- a/ui/src/common/state.ts
+++ b/ui/src/common/state.ts
@@ -130,7 +130,8 @@
 // 40. Ported counter, process summary/sched, & cpu_freq to plugin tracks.
 // 41. Ported all remaining tracks.
 // 42. Rename trackId -> trackKey.
-export const STATE_VERSION = 42;
+// 43. Remove visibleTracks.
+export const STATE_VERSION = 43;
 
 export const SCROLLING_TRACK_GROUP = 'ScrollingTracks';
 
@@ -545,7 +546,6 @@
   utidToThreadSortKey: UtidToTrackSortKey;
   areas: ObjectById<AreaById>;
   aggregatePreferences: ObjectById<AggregationState>;
-  visibleTracks: string[];
   scrollingTracks: string[];
   pinnedTracks: string[];
   debugTrackId?: string;
diff --git a/ui/src/frontend/frontend_local_state.ts b/ui/src/frontend/frontend_local_state.ts
index 3014255..86c30db 100644
--- a/ui/src/frontend/frontend_local_state.ts
+++ b/ui/src/frontend/frontend_local_state.ts
@@ -157,8 +157,6 @@
   private _windowSpan = PxSpan.ZERO;
   showPanningHint = false;
   showCookieConsent = false;
-  visibleTracks = new Set<string>();
-  prevVisibleTracks = new Set<string>();
   scrollToTrackKey?: string|number;
   httpRpcState: HttpRpcState = {connected: false};
   newVersionAvailable = false;
@@ -193,26 +191,6 @@
     raf.scheduleFullRedraw();
   }
 
-  addVisibleTrack(trackKey: string) {
-    this.visibleTracks.add(trackKey);
-  }
-
-  // Called when beginning a canvas redraw.
-  clearVisibleTracks() {
-    this.visibleTracks.clear();
-  }
-
-  // Called when the canvas redraw is complete.
-  sendVisibleTracks() {
-    if (this.prevVisibleTracks.size !== this.visibleTracks.size ||
-        ![...this.prevVisibleTracks].every(
-            (value) => this.visibleTracks.has(value))) {
-      globals.dispatch(
-          Actions.setVisibleTracks({tracks: Array.from(this.visibleTracks)}));
-      this.prevVisibleTracks = new Set(this.visibleTracks);
-    }
-  }
-
   zoomVisibleWindow(ratio: number, centerPoint: number) {
     this.visibleWindow = this.visibleWindow.zoom(ratio, centerPoint);
     this._timeScale = this.visibleWindow.createTimeScale(
diff --git a/ui/src/frontend/globals.ts b/ui/src/frontend/globals.ts
index f81ceb3..7323ba5 100644
--- a/ui/src/frontend/globals.ts
+++ b/ui/src/frontend/globals.ts
@@ -315,9 +315,6 @@
         () => this.state.perfDebug,
         () => this.dispatch(Actions.togglePerfDebug({})));
 
-    raf.beforeRedraw = () => this.frontendLocalState.clearVisibleTracks();
-    raf.afterRedraw = () => this.frontendLocalState.sendVisibleTracks();
-
     this._serviceWorkerController = new ServiceWorkerController();
     this._testing =
         self.location && self.location.search.indexOf('testing=1') >= 0;
diff --git a/ui/src/frontend/index.ts b/ui/src/frontend/index.ts
index 58cfa2b..9ab3d09 100644
--- a/ui/src/frontend/index.ts
+++ b/ui/src/frontend/index.ts
@@ -76,8 +76,7 @@
     // Only redraw if something other than the frontendLocalState changed.
     let key: keyof State;
     for (key in state) {
-      if (key !== 'frontendLocalState' && key !== 'visibleTracks' &&
-          oldState[key] !== state[key]) {
+      if (key !== 'frontendLocalState' && oldState[key] !== state[key]) {
         raf.scheduleFullRedraw();
         break;
       }
diff --git a/ui/src/frontend/track.ts b/ui/src/frontend/track.ts
index 391192d..ad2336b 100644
--- a/ui/src/frontend/track.ts
+++ b/ui/src/frontend/track.ts
@@ -19,7 +19,6 @@
 import {Track, TrackContext} from '../public';
 import {EngineProxy} from '../trace_processor/engine';
 
-import {globals} from './globals';
 import {PxSpan, TimeScale} from './time_scale';
 
 // Args passed to the track constructors when creating a new track.
@@ -97,7 +96,6 @@
   onFullRedraw(): void {}
 
   render(ctx: CanvasRenderingContext2D) {
-    globals.frontendLocalState.addVisibleTrack(this.trackKey);
     this.renderCanvas(ctx);
   }