Merge "ui: Rename "tracks" directory to "core_plugins"" into main
diff --git a/ui/build.js b/ui/build.js
index cc6cfb9..698842c 100644
--- a/ui/build.js
+++ b/ui/build.js
@@ -243,7 +243,7 @@
scanDir('ui/src/test/diff_viewer');
scanDir('buildtools/typefaces');
scanDir('buildtools/catapult_trace_viewer');
- generateImports('ui/src/tracks', 'all_tracks.ts');
+ generateImports('ui/src/core_plugins', 'all_core_plugins.ts');
generateImports('ui/src/plugins', 'all_plugins.ts');
compileProtos();
genVersion();
diff --git a/ui/src/common/actions_unittest.ts b/ui/src/common/actions_unittest.ts
index 0784402..de497d7 100644
--- a/ui/src/common/actions_unittest.ts
+++ b/ui/src/common/actions_unittest.ts
@@ -17,9 +17,9 @@
import {assertExists} from '../base/logging';
import {Time} from '../base/time';
import {PrimaryTrackSortKey} from '../public';
-import {HEAP_PROFILE_TRACK_KIND} from '../tracks/heap_profile';
-import {PROCESS_SCHEDULING_TRACK_KIND} from '../tracks/process_summary/process_scheduling_track';
-import {THREAD_STATE_TRACK_KIND} from '../tracks/thread_state';
+import {HEAP_PROFILE_TRACK_KIND} from '../core_plugins/heap_profile';
+import {PROCESS_SCHEDULING_TRACK_KIND} from '../core_plugins/process_summary/process_scheduling_track';
+import {THREAD_STATE_TRACK_KIND} from '../core_plugins/thread_state';
import {StateActions} from './actions';
import {createEmptyState} from './empty_state';
@@ -31,7 +31,7 @@
TraceUrlSource,
TrackSortKey,
} from './state';
-import {SLICE_TRACK_KIND} from '../tracks/chrome_slices/chrome_slice_track';
+import {SLICE_TRACK_KIND} from '../core_plugins/chrome_slices/chrome_slice_track';
function fakeTrack(
state: State,
diff --git a/ui/src/controller/aggregation/counter_aggregation_controller.ts b/ui/src/controller/aggregation/counter_aggregation_controller.ts
index 20afd9e..bc8b731 100644
--- a/ui/src/controller/aggregation/counter_aggregation_controller.ts
+++ b/ui/src/controller/aggregation/counter_aggregation_controller.ts
@@ -17,7 +17,7 @@
import {Area, Sorting} from '../../common/state';
import {globals} from '../../frontend/globals';
import {Engine} from '../../trace_processor/engine';
-import {COUNTER_TRACK_KIND} from '../../tracks/counter';
+import {COUNTER_TRACK_KIND} from '../../core_plugins/counter';
import {AggregationController} from './aggregation_controller';
diff --git a/ui/src/controller/aggregation/cpu_aggregation_controller.ts b/ui/src/controller/aggregation/cpu_aggregation_controller.ts
index 01a8964..6b9083e 100644
--- a/ui/src/controller/aggregation/cpu_aggregation_controller.ts
+++ b/ui/src/controller/aggregation/cpu_aggregation_controller.ts
@@ -17,7 +17,7 @@
import {Area, Sorting} from '../../common/state';
import {globals} from '../../frontend/globals';
import {Engine} from '../../trace_processor/engine';
-import {CPU_SLICE_TRACK_KIND} from '../../tracks/cpu_slices';
+import {CPU_SLICE_TRACK_KIND} from '../../core_plugins/cpu_slices';
import {AggregationController} from './aggregation_controller';
diff --git a/ui/src/controller/aggregation/cpu_by_process_aggregation_controller.ts b/ui/src/controller/aggregation/cpu_by_process_aggregation_controller.ts
index df18d98..03f29f2 100644
--- a/ui/src/controller/aggregation/cpu_by_process_aggregation_controller.ts
+++ b/ui/src/controller/aggregation/cpu_by_process_aggregation_controller.ts
@@ -17,7 +17,7 @@
import {Area, Sorting} from '../../common/state';
import {globals} from '../../frontend/globals';
import {Engine} from '../../trace_processor/engine';
-import {CPU_SLICE_TRACK_KIND} from '../../tracks/cpu_slices';
+import {CPU_SLICE_TRACK_KIND} from '../../core_plugins/cpu_slices';
import {AggregationController} from './aggregation_controller';
diff --git a/ui/src/controller/aggregation/frame_aggregation_controller.ts b/ui/src/controller/aggregation/frame_aggregation_controller.ts
index fc3c2ca..100e47b 100644
--- a/ui/src/controller/aggregation/frame_aggregation_controller.ts
+++ b/ui/src/controller/aggregation/frame_aggregation_controller.ts
@@ -16,7 +16,7 @@
import {Area, Sorting} from '../../common/state';
import {globals} from '../../frontend/globals';
import {Engine} from '../../trace_processor/engine';
-import {ACTUAL_FRAMES_SLICE_TRACK_KIND} from '../../tracks/frames';
+import {ACTUAL_FRAMES_SLICE_TRACK_KIND} from '../../core_plugins/frames';
import {AggregationController} from './aggregation_controller';
diff --git a/ui/src/controller/aggregation/slice_aggregation_controller.ts b/ui/src/controller/aggregation/slice_aggregation_controller.ts
index 3e18dd0..89ba573 100644
--- a/ui/src/controller/aggregation/slice_aggregation_controller.ts
+++ b/ui/src/controller/aggregation/slice_aggregation_controller.ts
@@ -16,8 +16,8 @@
import {Area, Sorting} from '../../common/state';
import {globals} from '../../frontend/globals';
import {Engine} from '../../trace_processor/engine';
-import {ASYNC_SLICE_TRACK_KIND} from '../../tracks/async_slices';
-import {SLICE_TRACK_KIND} from '../../tracks/chrome_slices/chrome_slice_track';
+import {ASYNC_SLICE_TRACK_KIND} from '../../core_plugins/async_slices';
+import {SLICE_TRACK_KIND} from '../../core_plugins/chrome_slices/chrome_slice_track';
import {AggregationController} from './aggregation_controller';
diff --git a/ui/src/controller/aggregation/thread_aggregation_controller.ts b/ui/src/controller/aggregation/thread_aggregation_controller.ts
index c2f38e1..98e5c77 100644
--- a/ui/src/controller/aggregation/thread_aggregation_controller.ts
+++ b/ui/src/controller/aggregation/thread_aggregation_controller.ts
@@ -19,7 +19,7 @@
import {globals} from '../../frontend/globals';
import {Engine} from '../../trace_processor/engine';
import {NUM, NUM_NULL, STR_NULL} from '../../trace_processor/query_result';
-import {THREAD_STATE_TRACK_KIND} from '../../tracks/thread_state';
+import {THREAD_STATE_TRACK_KIND} from '../../core_plugins/thread_state';
import {AggregationController} from './aggregation_controller';
diff --git a/ui/src/controller/flamegraph_controller.ts b/ui/src/controller/flamegraph_controller.ts
index 22160d6..14436f7 100644
--- a/ui/src/controller/flamegraph_controller.ts
+++ b/ui/src/controller/flamegraph_controller.ts
@@ -32,7 +32,7 @@
import {publishFlamegraphDetails} from '../frontend/publish';
import {Engine} from '../trace_processor/engine';
import {NUM, STR} from '../trace_processor/query_result';
-import {PERF_SAMPLES_PROFILE_TRACK_KIND} from '../tracks/perf_samples_profile';
+import {PERF_SAMPLES_PROFILE_TRACK_KIND} from '../core_plugins/perf_samples_profile';
import {AreaSelectionHandler} from './area_selection_handler';
import {Controller} from './controller';
diff --git a/ui/src/controller/flow_events_controller.ts b/ui/src/controller/flow_events_controller.ts
index 1837862..aa40c6e 100644
--- a/ui/src/controller/flow_events_controller.ts
+++ b/ui/src/controller/flow_events_controller.ts
@@ -20,8 +20,8 @@
import {asSliceSqlId} from '../frontend/sql_types';
import {Engine} from '../trace_processor/engine';
import {LONG, NUM, STR_NULL} from '../trace_processor/query_result';
-import {SLICE_TRACK_KIND} from '../tracks/chrome_slices/chrome_slice_track';
-import {ACTUAL_FRAMES_SLICE_TRACK_KIND} from '../tracks/frames';
+import {SLICE_TRACK_KIND} from '../core_plugins/chrome_slices/chrome_slice_track';
+import {ACTUAL_FRAMES_SLICE_TRACK_KIND} from '../core_plugins/frames';
import {Controller} from './controller';
diff --git a/ui/src/controller/index.ts b/ui/src/controller/index.ts
index ffb481b..8154c18 100644
--- a/ui/src/controller/index.ts
+++ b/ui/src/controller/index.ts
@@ -12,7 +12,6 @@
// See the License for the specific language governing permissions and
// limitations under the License.
-import '../gen/all_tracks';
import '../common/recordingV2/target_factories';
import {assertExists, assertTrue} from '../base/logging';
diff --git a/ui/src/controller/search_controller.ts b/ui/src/controller/search_controller.ts
index 61ada93..ba2d354 100644
--- a/ui/src/controller/search_controller.ts
+++ b/ui/src/controller/search_controller.ts
@@ -26,7 +26,7 @@
import {Engine} from '../trace_processor/engine';
import {LONG, NUM, STR} from '../trace_processor/query_result';
import {escapeSearchQuery} from '../trace_processor/query_utils';
-import {CPU_SLICE_TRACK_KIND} from '../tracks/cpu_slices';
+import {CPU_SLICE_TRACK_KIND} from '../core_plugins/cpu_slices';
import {Controller} from './controller';
diff --git a/ui/src/controller/selection_controller.ts b/ui/src/controller/selection_controller.ts
index ce9b15f..dc905ea 100644
--- a/ui/src/controller/selection_controller.ts
+++ b/ui/src/controller/selection_controller.ts
@@ -37,7 +37,7 @@
STR_NULL,
timeFromSql,
} from '../trace_processor/query_result';
-import {SLICE_TRACK_KIND} from '../tracks/chrome_slices/chrome_slice_track';
+import {SLICE_TRACK_KIND} from '../core_plugins/chrome_slices/chrome_slice_track';
import {Controller} from './controller';
diff --git a/ui/src/controller/track_decider.ts b/ui/src/controller/track_decider.ts
index 58f77c0..f0c7ef4 100644
--- a/ui/src/controller/track_decider.ts
+++ b/ui/src/controller/track_decider.ts
@@ -29,20 +29,20 @@
import {getTrackName} from '../public/utils';
import {Engine, EngineProxy} from '../trace_processor/engine';
import {NUM, NUM_NULL, STR, STR_NULL} from '../trace_processor/query_result';
-import {ASYNC_SLICE_TRACK_KIND} from '../tracks/async_slices';
+import {ASYNC_SLICE_TRACK_KIND} from '../core_plugins/async_slices';
import {
ENABLE_SCROLL_JANK_PLUGIN_V2,
getScrollJankTracks,
-} from '../tracks/chrome_scroll_jank';
-import {decideTracks as scrollJankDecideTracks} from '../tracks/chrome_scroll_jank/chrome_tasks_scroll_jank_track';
-import {COUNTER_TRACK_KIND} from '../tracks/counter';
+} from '../core_plugins/chrome_scroll_jank';
+import {decideTracks as scrollJankDecideTracks} from '../core_plugins/chrome_scroll_jank/chrome_tasks_scroll_jank_track';
+import {COUNTER_TRACK_KIND} from '../core_plugins/counter';
import {
ACTUAL_FRAMES_SLICE_TRACK_KIND,
EXPECTED_FRAMES_SLICE_TRACK_KIND,
-} from '../tracks/frames';
-import {decideTracks as screenshotDecideTracks} from '../tracks/screenshots';
-import {THREAD_STATE_TRACK_KIND} from '../tracks/thread_state';
-import {SLICE_TRACK_KIND} from '../tracks/chrome_slices/chrome_slice_track';
+} from '../core_plugins/frames';
+import {decideTracks as screenshotDecideTracks} from '../core_plugins/screenshots';
+import {THREAD_STATE_TRACK_KIND} from '../core_plugins/thread_state';
+import {SLICE_TRACK_KIND} from '../core_plugins/chrome_slices/chrome_slice_track';
const MEM_DMA_COUNTER_NAME = 'mem.dma_heap';
const MEM_DMA = 'mem.dma_buffer';
diff --git a/ui/src/tracks/android_log/index.ts b/ui/src/core_plugins/android_log/index.ts
similarity index 100%
rename from ui/src/tracks/android_log/index.ts
rename to ui/src/core_plugins/android_log/index.ts
diff --git a/ui/src/tracks/android_log/logs_panel.ts b/ui/src/core_plugins/android_log/logs_panel.ts
similarity index 100%
rename from ui/src/tracks/android_log/logs_panel.ts
rename to ui/src/core_plugins/android_log/logs_panel.ts
diff --git a/ui/src/tracks/android_log/logs_track.ts b/ui/src/core_plugins/android_log/logs_track.ts
similarity index 100%
rename from ui/src/tracks/android_log/logs_track.ts
rename to ui/src/core_plugins/android_log/logs_track.ts
diff --git a/ui/src/tracks/annotation/index.ts b/ui/src/core_plugins/annotation/index.ts
similarity index 100%
rename from ui/src/tracks/annotation/index.ts
rename to ui/src/core_plugins/annotation/index.ts
diff --git a/ui/src/tracks/async_slices/async_slice_track_v2.ts b/ui/src/core_plugins/async_slices/async_slice_track_v2.ts
similarity index 100%
rename from ui/src/tracks/async_slices/async_slice_track_v2.ts
rename to ui/src/core_plugins/async_slices/async_slice_track_v2.ts
diff --git a/ui/src/tracks/async_slices/index.ts b/ui/src/core_plugins/async_slices/index.ts
similarity index 100%
rename from ui/src/tracks/async_slices/index.ts
rename to ui/src/core_plugins/async_slices/index.ts
diff --git a/ui/src/tracks/chrome_critical_user_interactions/index.ts b/ui/src/core_plugins/chrome_critical_user_interactions/index.ts
similarity index 100%
rename from ui/src/tracks/chrome_critical_user_interactions/index.ts
rename to ui/src/core_plugins/chrome_critical_user_interactions/index.ts
diff --git a/ui/src/tracks/chrome_critical_user_interactions/page_load_details_panel.ts b/ui/src/core_plugins/chrome_critical_user_interactions/page_load_details_panel.ts
similarity index 100%
rename from ui/src/tracks/chrome_critical_user_interactions/page_load_details_panel.ts
rename to ui/src/core_plugins/chrome_critical_user_interactions/page_load_details_panel.ts
diff --git a/ui/src/tracks/chrome_critical_user_interactions/startup_details_panel.ts b/ui/src/core_plugins/chrome_critical_user_interactions/startup_details_panel.ts
similarity index 100%
rename from ui/src/tracks/chrome_critical_user_interactions/startup_details_panel.ts
rename to ui/src/core_plugins/chrome_critical_user_interactions/startup_details_panel.ts
diff --git a/ui/src/tracks/chrome_critical_user_interactions/web_content_interaction_details_panel.ts b/ui/src/core_plugins/chrome_critical_user_interactions/web_content_interaction_details_panel.ts
similarity index 100%
rename from ui/src/tracks/chrome_critical_user_interactions/web_content_interaction_details_panel.ts
rename to ui/src/core_plugins/chrome_critical_user_interactions/web_content_interaction_details_panel.ts
diff --git a/ui/src/tracks/chrome_scroll_jank/chrome_tasks_scroll_jank_track.ts b/ui/src/core_plugins/chrome_scroll_jank/chrome_tasks_scroll_jank_track.ts
similarity index 100%
rename from ui/src/tracks/chrome_scroll_jank/chrome_tasks_scroll_jank_track.ts
rename to ui/src/core_plugins/chrome_scroll_jank/chrome_tasks_scroll_jank_track.ts
diff --git a/ui/src/tracks/chrome_scroll_jank/event_latency_details_panel.ts b/ui/src/core_plugins/chrome_scroll_jank/event_latency_details_panel.ts
similarity index 100%
rename from ui/src/tracks/chrome_scroll_jank/event_latency_details_panel.ts
rename to ui/src/core_plugins/chrome_scroll_jank/event_latency_details_panel.ts
diff --git a/ui/src/tracks/chrome_scroll_jank/event_latency_track.ts b/ui/src/core_plugins/chrome_scroll_jank/event_latency_track.ts
similarity index 100%
rename from ui/src/tracks/chrome_scroll_jank/event_latency_track.ts
rename to ui/src/core_plugins/chrome_scroll_jank/event_latency_track.ts
diff --git a/ui/src/tracks/chrome_scroll_jank/index.ts b/ui/src/core_plugins/chrome_scroll_jank/index.ts
similarity index 100%
rename from ui/src/tracks/chrome_scroll_jank/index.ts
rename to ui/src/core_plugins/chrome_scroll_jank/index.ts
diff --git a/ui/src/tracks/chrome_scroll_jank/jank_colors.ts b/ui/src/core_plugins/chrome_scroll_jank/jank_colors.ts
similarity index 100%
rename from ui/src/tracks/chrome_scroll_jank/jank_colors.ts
rename to ui/src/core_plugins/chrome_scroll_jank/jank_colors.ts
diff --git a/ui/src/tracks/chrome_scroll_jank/scroll_delta_graph.ts b/ui/src/core_plugins/chrome_scroll_jank/scroll_delta_graph.ts
similarity index 100%
rename from ui/src/tracks/chrome_scroll_jank/scroll_delta_graph.ts
rename to ui/src/core_plugins/chrome_scroll_jank/scroll_delta_graph.ts
diff --git a/ui/src/tracks/chrome_scroll_jank/scroll_details_panel.ts b/ui/src/core_plugins/chrome_scroll_jank/scroll_details_panel.ts
similarity index 100%
rename from ui/src/tracks/chrome_scroll_jank/scroll_details_panel.ts
rename to ui/src/core_plugins/chrome_scroll_jank/scroll_details_panel.ts
diff --git a/ui/src/tracks/chrome_scroll_jank/scroll_jank_cause_link_utils.ts b/ui/src/core_plugins/chrome_scroll_jank/scroll_jank_cause_link_utils.ts
similarity index 100%
rename from ui/src/tracks/chrome_scroll_jank/scroll_jank_cause_link_utils.ts
rename to ui/src/core_plugins/chrome_scroll_jank/scroll_jank_cause_link_utils.ts
diff --git a/ui/src/tracks/chrome_scroll_jank/scroll_jank_cause_map.ts b/ui/src/core_plugins/chrome_scroll_jank/scroll_jank_cause_map.ts
similarity index 100%
rename from ui/src/tracks/chrome_scroll_jank/scroll_jank_cause_map.ts
rename to ui/src/core_plugins/chrome_scroll_jank/scroll_jank_cause_map.ts
diff --git a/ui/src/tracks/chrome_scroll_jank/scroll_jank_slice.ts b/ui/src/core_plugins/chrome_scroll_jank/scroll_jank_slice.ts
similarity index 100%
rename from ui/src/tracks/chrome_scroll_jank/scroll_jank_slice.ts
rename to ui/src/core_plugins/chrome_scroll_jank/scroll_jank_slice.ts
diff --git a/ui/src/tracks/chrome_scroll_jank/scroll_jank_v3_details_panel.ts b/ui/src/core_plugins/chrome_scroll_jank/scroll_jank_v3_details_panel.ts
similarity index 100%
rename from ui/src/tracks/chrome_scroll_jank/scroll_jank_v3_details_panel.ts
rename to ui/src/core_plugins/chrome_scroll_jank/scroll_jank_v3_details_panel.ts
diff --git a/ui/src/tracks/chrome_scroll_jank/scroll_jank_v3_track.ts b/ui/src/core_plugins/chrome_scroll_jank/scroll_jank_v3_track.ts
similarity index 100%
rename from ui/src/tracks/chrome_scroll_jank/scroll_jank_v3_track.ts
rename to ui/src/core_plugins/chrome_scroll_jank/scroll_jank_v3_track.ts
diff --git a/ui/src/tracks/chrome_scroll_jank/scroll_track.ts b/ui/src/core_plugins/chrome_scroll_jank/scroll_track.ts
similarity index 100%
rename from ui/src/tracks/chrome_scroll_jank/scroll_track.ts
rename to ui/src/core_plugins/chrome_scroll_jank/scroll_track.ts
diff --git a/ui/src/tracks/chrome_slices/chrome_slice_track.ts b/ui/src/core_plugins/chrome_slices/chrome_slice_track.ts
similarity index 100%
rename from ui/src/tracks/chrome_slices/chrome_slice_track.ts
rename to ui/src/core_plugins/chrome_slices/chrome_slice_track.ts
diff --git a/ui/src/tracks/chrome_slices/index.ts b/ui/src/core_plugins/chrome_slices/index.ts
similarity index 100%
rename from ui/src/tracks/chrome_slices/index.ts
rename to ui/src/core_plugins/chrome_slices/index.ts
diff --git a/ui/src/tracks/counter/index.ts b/ui/src/core_plugins/counter/index.ts
similarity index 100%
rename from ui/src/tracks/counter/index.ts
rename to ui/src/core_plugins/counter/index.ts
diff --git a/ui/src/tracks/cpu_freq/index.ts b/ui/src/core_plugins/cpu_freq/index.ts
similarity index 100%
rename from ui/src/tracks/cpu_freq/index.ts
rename to ui/src/core_plugins/cpu_freq/index.ts
diff --git a/ui/src/tracks/cpu_profile/index.ts b/ui/src/core_plugins/cpu_profile/index.ts
similarity index 100%
rename from ui/src/tracks/cpu_profile/index.ts
rename to ui/src/core_plugins/cpu_profile/index.ts
diff --git a/ui/src/tracks/cpu_slices/index.ts b/ui/src/core_plugins/cpu_slices/index.ts
similarity index 100%
rename from ui/src/tracks/cpu_slices/index.ts
rename to ui/src/core_plugins/cpu_slices/index.ts
diff --git a/ui/src/tracks/custom_sql_table_slices/index.ts b/ui/src/core_plugins/custom_sql_table_slices/index.ts
similarity index 100%
rename from ui/src/tracks/custom_sql_table_slices/index.ts
rename to ui/src/core_plugins/custom_sql_table_slices/index.ts
diff --git a/ui/src/tracks/debug/add_debug_track_menu.ts b/ui/src/core_plugins/debug/add_debug_track_menu.ts
similarity index 100%
rename from ui/src/tracks/debug/add_debug_track_menu.ts
rename to ui/src/core_plugins/debug/add_debug_track_menu.ts
diff --git a/ui/src/tracks/debug/counter_track.ts b/ui/src/core_plugins/debug/counter_track.ts
similarity index 100%
rename from ui/src/tracks/debug/counter_track.ts
rename to ui/src/core_plugins/debug/counter_track.ts
diff --git a/ui/src/tracks/debug/details_tab.ts b/ui/src/core_plugins/debug/details_tab.ts
similarity index 100%
rename from ui/src/tracks/debug/details_tab.ts
rename to ui/src/core_plugins/debug/details_tab.ts
diff --git a/ui/src/tracks/debug/index.ts b/ui/src/core_plugins/debug/index.ts
similarity index 100%
rename from ui/src/tracks/debug/index.ts
rename to ui/src/core_plugins/debug/index.ts
diff --git a/ui/src/tracks/debug/slice_track.ts b/ui/src/core_plugins/debug/slice_track.ts
similarity index 100%
rename from ui/src/tracks/debug/slice_track.ts
rename to ui/src/core_plugins/debug/slice_track.ts
diff --git a/ui/src/tracks/frames/actual_frames_track_v2.ts b/ui/src/core_plugins/frames/actual_frames_track_v2.ts
similarity index 100%
rename from ui/src/tracks/frames/actual_frames_track_v2.ts
rename to ui/src/core_plugins/frames/actual_frames_track_v2.ts
diff --git a/ui/src/tracks/frames/expected_frames_track_v2.ts b/ui/src/core_plugins/frames/expected_frames_track_v2.ts
similarity index 100%
rename from ui/src/tracks/frames/expected_frames_track_v2.ts
rename to ui/src/core_plugins/frames/expected_frames_track_v2.ts
diff --git a/ui/src/tracks/frames/index.ts b/ui/src/core_plugins/frames/index.ts
similarity index 100%
rename from ui/src/tracks/frames/index.ts
rename to ui/src/core_plugins/frames/index.ts
diff --git a/ui/src/tracks/ftrace/common.ts b/ui/src/core_plugins/ftrace/common.ts
similarity index 100%
rename from ui/src/tracks/ftrace/common.ts
rename to ui/src/core_plugins/ftrace/common.ts
diff --git a/ui/src/tracks/ftrace/ftrace_explorer.ts b/ui/src/core_plugins/ftrace/ftrace_explorer.ts
similarity index 100%
rename from ui/src/tracks/ftrace/ftrace_explorer.ts
rename to ui/src/core_plugins/ftrace/ftrace_explorer.ts
diff --git a/ui/src/tracks/ftrace/ftrace_track.ts b/ui/src/core_plugins/ftrace/ftrace_track.ts
similarity index 100%
rename from ui/src/tracks/ftrace/ftrace_track.ts
rename to ui/src/core_plugins/ftrace/ftrace_track.ts
diff --git a/ui/src/tracks/ftrace/index.ts b/ui/src/core_plugins/ftrace/index.ts
similarity index 100%
rename from ui/src/tracks/ftrace/index.ts
rename to ui/src/core_plugins/ftrace/index.ts
diff --git a/ui/src/tracks/heap_profile/index.ts b/ui/src/core_plugins/heap_profile/index.ts
similarity index 100%
rename from ui/src/tracks/heap_profile/index.ts
rename to ui/src/core_plugins/heap_profile/index.ts
diff --git a/ui/src/tracks/perf_samples_profile/index.ts b/ui/src/core_plugins/perf_samples_profile/index.ts
similarity index 100%
rename from ui/src/tracks/perf_samples_profile/index.ts
rename to ui/src/core_plugins/perf_samples_profile/index.ts
diff --git a/ui/src/tracks/process_summary/index.ts b/ui/src/core_plugins/process_summary/index.ts
similarity index 100%
rename from ui/src/tracks/process_summary/index.ts
rename to ui/src/core_plugins/process_summary/index.ts
diff --git a/ui/src/tracks/process_summary/process_scheduling_track.ts b/ui/src/core_plugins/process_summary/process_scheduling_track.ts
similarity index 100%
rename from ui/src/tracks/process_summary/process_scheduling_track.ts
rename to ui/src/core_plugins/process_summary/process_scheduling_track.ts
diff --git a/ui/src/tracks/process_summary/process_summary_track.ts b/ui/src/core_plugins/process_summary/process_summary_track.ts
similarity index 100%
rename from ui/src/tracks/process_summary/process_summary_track.ts
rename to ui/src/core_plugins/process_summary/process_summary_track.ts
diff --git a/ui/src/tracks/sched/active_cpu_count.ts b/ui/src/core_plugins/sched/active_cpu_count.ts
similarity index 100%
rename from ui/src/tracks/sched/active_cpu_count.ts
rename to ui/src/core_plugins/sched/active_cpu_count.ts
diff --git a/ui/src/tracks/sched/index.ts b/ui/src/core_plugins/sched/index.ts
similarity index 100%
rename from ui/src/tracks/sched/index.ts
rename to ui/src/core_plugins/sched/index.ts
diff --git a/ui/src/tracks/sched/runnable_thread_count.ts b/ui/src/core_plugins/sched/runnable_thread_count.ts
similarity index 100%
rename from ui/src/tracks/sched/runnable_thread_count.ts
rename to ui/src/core_plugins/sched/runnable_thread_count.ts
diff --git a/ui/src/tracks/screenshots/index.ts b/ui/src/core_plugins/screenshots/index.ts
similarity index 100%
rename from ui/src/tracks/screenshots/index.ts
rename to ui/src/core_plugins/screenshots/index.ts
diff --git a/ui/src/tracks/screenshots/screenshot_panel.ts b/ui/src/core_plugins/screenshots/screenshot_panel.ts
similarity index 100%
rename from ui/src/tracks/screenshots/screenshot_panel.ts
rename to ui/src/core_plugins/screenshots/screenshot_panel.ts
diff --git a/ui/src/tracks/thread_state/index.ts b/ui/src/core_plugins/thread_state/index.ts
similarity index 100%
rename from ui/src/tracks/thread_state/index.ts
rename to ui/src/core_plugins/thread_state/index.ts
diff --git a/ui/src/tracks/thread_state/thread_state_v2.ts b/ui/src/core_plugins/thread_state/thread_state_v2.ts
similarity index 100%
rename from ui/src/tracks/thread_state/thread_state_v2.ts
rename to ui/src/core_plugins/thread_state/thread_state_v2.ts
diff --git a/ui/src/tracks/visualised_args/index.ts b/ui/src/core_plugins/visualised_args/index.ts
similarity index 100%
rename from ui/src/tracks/visualised_args/index.ts
rename to ui/src/core_plugins/visualised_args/index.ts
diff --git a/ui/src/tracks/visualised_args/visualized_args_track.ts b/ui/src/core_plugins/visualised_args/visualized_args_track.ts
similarity index 100%
rename from ui/src/tracks/visualised_args/visualized_args_track.ts
rename to ui/src/core_plugins/visualised_args/visualized_args_track.ts
diff --git a/ui/src/frontend/app.ts b/ui/src/frontend/app.ts
index ddc6826..92301b7 100644
--- a/ui/src/frontend/app.ts
+++ b/ui/src/frontend/app.ts
@@ -33,7 +33,7 @@
import {raf} from '../core/raf_scheduler';
import {Command} from '../public';
import {EngineProxy} from '../trace_processor/engine';
-import {THREAD_STATE_TRACK_KIND} from '../tracks/thread_state';
+import {THREAD_STATE_TRACK_KIND} from '../core_plugins/thread_state';
import {HotkeyConfig, HotkeyContext} from '../widgets/hotkey_context';
import {HotkeyGlyphs} from '../widgets/hotkey_glyphs';
import {maybeRenderFullscreenModalDialog} from '../widgets/modal';
diff --git a/ui/src/frontend/debug_tracks.ts b/ui/src/frontend/debug_tracks.ts
index 0a39612..ed77bf0 100644
--- a/ui/src/frontend/debug_tracks.ts
+++ b/ui/src/frontend/debug_tracks.ts
@@ -17,7 +17,7 @@
import {SCROLLING_TRACK_GROUP} from '../common/state';
import {globals} from './globals';
import {EngineProxy, PrimaryTrackSortKey} from '../public';
-import {DebugTrackV2Config} from '../tracks/debug/slice_track';
+import {DebugTrackV2Config} from '../core_plugins/debug/slice_track';
export const ARG_PREFIX = 'arg_';
export const DEBUG_SLICE_TRACK_URI = 'perfetto.DebugSlices';
diff --git a/ui/src/frontend/index.ts b/ui/src/frontend/index.ts
index 468d9af..b667882 100644
--- a/ui/src/frontend/index.ts
+++ b/ui/src/frontend/index.ts
@@ -15,6 +15,7 @@
// Keep this import first.
import '../base/static_initializers';
import '../gen/all_plugins';
+import '../gen/all_core_plugins';
import {Draft} from 'immer';
import m from 'mithril';
diff --git a/ui/src/frontend/query_result_tab.ts b/ui/src/frontend/query_result_tab.ts
index 23b5148..7fe7b2d 100644
--- a/ui/src/frontend/query_result_tab.ts
+++ b/ui/src/frontend/query_result_tab.ts
@@ -22,7 +22,7 @@
import {
AddDebugTrackMenu,
uuidToViewName,
-} from '../tracks/debug/add_debug_track_menu';
+} from '../core_plugins/debug/add_debug_track_menu';
import {Button} from '../widgets/button';
import {PopupMenu2} from '../widgets/menu';
import {PopupPosition} from '../widgets/popup';
diff --git a/ui/src/frontend/simple_slice_track.ts b/ui/src/frontend/simple_slice_track.ts
index 6d287b3..f46812f 100644
--- a/ui/src/frontend/simple_slice_track.ts
+++ b/ui/src/frontend/simple_slice_track.ts
@@ -17,12 +17,12 @@
CustomSqlDetailsPanelConfig,
CustomSqlTableDefConfig,
CustomSqlTableSliceTrack,
-} from '../tracks/custom_sql_table_slices';
+} from '../core_plugins/custom_sql_table_slices';
import {NamedSliceTrackTypes} from './named_slice_track';
import {ARG_PREFIX, SliceColumns, SqlDataSource} from './debug_tracks';
import {uuidv4Sql} from '../base/uuid';
import {DisposableCallback} from '../base/disposable';
-import {DebugSliceDetailsTab} from '../tracks/debug/details_tab';
+import {DebugSliceDetailsTab} from '../core_plugins/debug/details_tab';
export interface SimpleSliceTrackConfig {
data: SqlDataSource;
diff --git a/ui/src/frontend/slice_details_panel.ts b/ui/src/frontend/slice_details_panel.ts
index fb5d3a2..3887577 100644
--- a/ui/src/frontend/slice_details_panel.ts
+++ b/ui/src/frontend/slice_details_panel.ts
@@ -16,7 +16,7 @@
import {Actions} from '../common/actions';
import {translateState} from '../common/thread_state';
-import {THREAD_STATE_TRACK_KIND} from '../tracks/thread_state';
+import {THREAD_STATE_TRACK_KIND} from '../core_plugins/thread_state';
import {Anchor} from '../widgets/anchor';
import {DetailsShell} from '../widgets/details_shell';
import {GridLayout} from '../widgets/grid_layout';
diff --git a/ui/src/frontend/sql_table/tab.ts b/ui/src/frontend/sql_table/tab.ts
index ea173a0..4267331 100644
--- a/ui/src/frontend/sql_table/tab.ts
+++ b/ui/src/frontend/sql_table/tab.ts
@@ -17,7 +17,7 @@
import {copyToClipboard} from '../../base/clipboard';
import {Icons} from '../../base/semantic_icons';
import {exists} from '../../base/utils';
-import {AddDebugTrackMenu} from '../../tracks/debug/add_debug_track_menu';
+import {AddDebugTrackMenu} from '../../core_plugins/debug/add_debug_track_menu';
import {Button} from '../../widgets/button';
import {DetailsShell} from '../../widgets/details_shell';
import {Popup, PopupPosition} from '../../widgets/popup';
diff --git a/ui/src/frontend/thread_state.ts b/ui/src/frontend/thread_state.ts
index 8b0d520..e912a7e 100644
--- a/ui/src/frontend/thread_state.ts
+++ b/ui/src/frontend/thread_state.ts
@@ -21,8 +21,8 @@
import {translateState} from '../common/thread_state';
import {EngineProxy} from '../trace_processor/engine';
import {LONG, NUM, NUM_NULL, STR_NULL} from '../trace_processor/query_result';
-import {CPU_SLICE_TRACK_KIND} from '../tracks/cpu_slices';
-import {THREAD_STATE_TRACK_KIND} from '../tracks/thread_state';
+import {CPU_SLICE_TRACK_KIND} from '../core_plugins/cpu_slices';
+import {THREAD_STATE_TRACK_KIND} from '../core_plugins/thread_state';
import {Anchor} from '../widgets/anchor';
import {globals} from './globals';
diff --git a/ui/src/plugins/org.kernel.LinuxKernelDevices/index.ts b/ui/src/plugins/org.kernel.LinuxKernelDevices/index.ts
index b9127f0..eca39b4 100644
--- a/ui/src/plugins/org.kernel.LinuxKernelDevices/index.ts
+++ b/ui/src/plugins/org.kernel.LinuxKernelDevices/index.ts
@@ -19,8 +19,8 @@
PluginDescriptor,
STR_NULL,
} from '../../public';
-import {ASYNC_SLICE_TRACK_KIND} from '../../tracks/async_slices';
-import {AsyncSliceTrackV2} from '../../tracks/async_slices/async_slice_track_v2';
+import {ASYNC_SLICE_TRACK_KIND} from '../../core_plugins/async_slices';
+import {AsyncSliceTrackV2} from '../../core_plugins/async_slices/async_slice_track_v2';
// This plugin renders visualizations of runtime power state transitions for
// Linux kernel devices (devices managed by Linux drivers).