1/* 2 * Copyright (C) 2022 The Android Open Source Project 3 * 4 * Licensed under the Apache License, Version 2.0 (the "License"); 5 * you may not use this file except in compliance with the License. 6 * You may obtain a copy of the License at 7 * 8 * http://www.apache.org/licenses/LICENSE-2.0 9 * 10 * Unless required by applicable law or agreed to in writing, software 11 * distributed under the License is distributed on an "AS IS" BASIS, 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 * See the License for the specific language governing permissions and 14 * limitations under the License. 15 */ 16 17import {TraceType} from 'trace/trace_type'; 18 19const WINDOW_MANAGER_ICON = 'web'; 20const SURFACE_FLINGER_ICON = 'layers'; 21const SCREEN_RECORDING_ICON = 'videocam'; 22const TRANSACTION_ICON = 'show_chart'; 23const WAYLAND_ICON = 'filter_none'; 24const PROTO_LOG_ICON = 'notes'; 25const SYSTEM_UI_ICON = 'filter_none'; 26const LAUNCHER_ICON = 'filter_none'; 27const IME_ICON = 'keyboard_alt'; 28const ACCESSIBILITY_ICON = 'accessibility_new'; 29const TAG_ICON = 'details'; 30const TRACE_ERROR_ICON = 'warning'; 31const EVENT_LOG_ICON = 'description'; 32const TRANSITION_ICON = 'animation'; 33const CUJ_ICON = 'label'; 34 35interface TraceInfoMap { 36 [key: number]: { 37 name: string; 38 icon: string; 39 color: string; 40 downloadArchiveDir: string; 41 }; 42} 43 44export const TRACE_INFO: TraceInfoMap = { 45 [TraceType.ACCESSIBILITY]: { 46 name: 'Accessibility', 47 icon: ACCESSIBILITY_ICON, 48 color: '#FF63B8', 49 downloadArchiveDir: 'accessibility', 50 }, 51 [TraceType.WINDOW_MANAGER]: { 52 name: 'Window Manager', 53 icon: WINDOW_MANAGER_ICON, 54 color: '#AF5CF7', 55 downloadArchiveDir: 'wm', 56 }, 57 [TraceType.SURFACE_FLINGER]: { 58 name: 'Surface Flinger', 59 icon: SURFACE_FLINGER_ICON, 60 color: '#4ECDE6', 61 downloadArchiveDir: 'sf', 62 }, 63 [TraceType.SCREEN_RECORDING]: { 64 name: 'Screen Recording', 65 icon: SCREEN_RECORDING_ICON, 66 color: '#8A9CF9', 67 downloadArchiveDir: '', 68 }, 69 [TraceType.TRANSACTIONS]: { 70 name: 'Transactions', 71 icon: TRANSACTION_ICON, 72 color: '#5BB974', 73 downloadArchiveDir: 'sf', 74 }, 75 [TraceType.TRANSACTIONS_LEGACY]: { 76 name: 'Transactions Legacy', 77 icon: TRANSACTION_ICON, 78 color: '#5BB974', 79 downloadArchiveDir: 'sf', 80 }, 81 [TraceType.WAYLAND]: { 82 name: 'Wayland', 83 icon: WAYLAND_ICON, 84 color: '#FDC274', 85 downloadArchiveDir: 'wayland', 86 }, 87 [TraceType.WAYLAND_DUMP]: { 88 name: 'Wayland Dump', 89 icon: WAYLAND_ICON, 90 color: '#D01884', 91 downloadArchiveDir: 'wayland', 92 }, 93 [TraceType.PROTO_LOG]: { 94 name: 'ProtoLog', 95 icon: PROTO_LOG_ICON, 96 color: '#40A58A', 97 downloadArchiveDir: 'protolog', 98 }, 99 [TraceType.SYSTEM_UI]: { 100 name: 'System UI', 101 icon: SYSTEM_UI_ICON, 102 color: '#7A86FF', 103 downloadArchiveDir: 'sysui', 104 }, 105 [TraceType.LAUNCHER]: { 106 name: 'Launcher', 107 icon: LAUNCHER_ICON, 108 color: '#137333', 109 downloadArchiveDir: 'launcher', 110 }, 111 // TODO: Choose ViewCapture icon, color, title name, and download archive directory 112 [TraceType.VIEW_CAPTURE]: { 113 name: 'View Capture', 114 icon: LAUNCHER_ICON, 115 color: '#137333', 116 downloadArchiveDir: 'launcher', 117 }, 118 [TraceType.INPUT_METHOD_CLIENTS]: { 119 name: 'IME Clients', 120 icon: IME_ICON, 121 color: '#FA903E', 122 downloadArchiveDir: 'ime', 123 }, 124 [TraceType.INPUT_METHOD_SERVICE]: { 125 name: 'IME Service', 126 icon: IME_ICON, 127 color: '#F29900', 128 downloadArchiveDir: 'ime', 129 }, 130 [TraceType.INPUT_METHOD_MANAGER_SERVICE]: { 131 name: 'IME Manager Service', 132 icon: IME_ICON, 133 color: '#D93025', 134 downloadArchiveDir: 'ime', 135 }, 136 [TraceType.TAG]: { 137 name: 'Tag', 138 icon: TAG_ICON, 139 color: '#4575B4', 140 downloadArchiveDir: '', 141 }, 142 [TraceType.ERROR]: { 143 name: 'Error', 144 icon: TRACE_ERROR_ICON, 145 color: '#D73027', 146 downloadArchiveDir: '', 147 }, 148 [TraceType.EVENT_LOG]: { 149 name: 'Event Log', 150 icon: EVENT_LOG_ICON, 151 color: '#fdd663', 152 downloadArchiveDir: 'eventlog', 153 }, 154 [TraceType.WM_TRANSITION]: { 155 name: 'WM Transitions', 156 icon: TRANSITION_ICON, 157 color: '#EC407A', 158 downloadArchiveDir: 'transition', 159 }, 160 [TraceType.SHELL_TRANSITION]: { 161 name: 'Shell Transitions', 162 icon: TRANSITION_ICON, 163 color: '#EC407A', 164 downloadArchiveDir: 'transition', 165 }, 166 [TraceType.TRANSITION]: { 167 name: 'Transitions', 168 icon: TRANSITION_ICON, 169 color: '#EC407A', 170 downloadArchiveDir: 'transition', 171 }, 172 [TraceType.CUJS]: { 173 name: 'Cujs', 174 icon: CUJ_ICON, 175 color: '#EC407A', 176 downloadArchiveDir: 'eventlog', 177 }, 178}; 179