trcc-linux 9.8.4__tar.gz → 9.8.6__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1020) hide show
  1. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/PKG-INFO +1 -1
  2. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/pyproject.toml +1 -1
  3. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/__version__.py +1 -1
  4. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/adapters/device/bulk_lcd.py +15 -9
  5. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/adapters/diagnostics/debug_report.py +129 -7
  6. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/adapters/infra/sysinfo_config.py +18 -6
  7. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/app.py +39 -1
  8. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/core/commands/__init__.py +4 -0
  9. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/core/commands/device.py +74 -4
  10. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/core/protocol.py +32 -0
  11. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/core/registry.py +5 -2
  12. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/services/_dc.py +14 -13
  13. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/services/display.py +3 -21
  14. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/api/display.py +14 -0
  15. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/cli/_ctx.py +41 -0
  16. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/cli/display.py +62 -81
  17. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/cli/led.py +31 -105
  18. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/lcd_handler.py +7 -8
  19. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/trcc_app.py +2 -1
  20. trcc_linux-9.8.6/tests/adapters/infra/__init__.py +0 -0
  21. trcc_linux-9.8.6/tests/adapters/infra/test_sysinfo_config_fan_map.py +85 -0
  22. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/test_bulk_lcd_geometry.py +13 -0
  23. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/test_dc_reader.py +27 -0
  24. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/test_diagnostics.py +39 -0
  25. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/test_overlay_element_id.py +20 -0
  26. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/test_send_color.py +88 -0
  27. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/.gitignore +0 -0
  28. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/LICENSE +0 -0
  29. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/README.md +0 -0
  30. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/__init__.py +0 -0
  31. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/__main__.py +0 -0
  32. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/_boot.py +0 -0
  33. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/_entry.py +0 -0
  34. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/adapters/__init__.py +0 -0
  35. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/adapters/device/__init__.py +0 -0
  36. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/adapters/device/_pyusb_find.py +0 -0
  37. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/adapters/device/hid_lcd.py +0 -0
  38. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/adapters/device/led.py +0 -0
  39. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/adapters/device/ly_lcd.py +0 -0
  40. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/adapters/device/scsi_lcd.py +0 -0
  41. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/adapters/device/transport.py +0 -0
  42. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/adapters/device/usb_bot_scsi.py +0 -0
  43. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/adapters/diagnostics/__init__.py +0 -0
  44. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/adapters/diagnostics/adapter.py +0 -0
  45. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/adapters/diagnostics/doctor.py +0 -0
  46. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/adapters/diagnostics/health.py +0 -0
  47. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/adapters/infra/__init__.py +0 -0
  48. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/adapters/infra/logging.py +0 -0
  49. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/adapters/infra/network.py +0 -0
  50. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/adapters/infra/send_scheduler.py +0 -0
  51. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/adapters/render/__init__.py +0 -0
  52. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/adapters/render/qt.py +0 -0
  53. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/adapters/repo/__init__.py +0 -0
  54. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/adapters/repo/data_install.py +0 -0
  55. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/adapters/repo/github_releases.py +0 -0
  56. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/adapters/repo/http.py +0 -0
  57. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/adapters/screencast/__init__.py +0 -0
  58. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/adapters/screencast/qt.py +0 -0
  59. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/adapters/sensors/__init__.py +0 -0
  60. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/adapters/sensors/_hwinfo.py +0 -0
  61. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/adapters/sensors/_lhm.py +0 -0
  62. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/adapters/sensors/_macos_hid.py +0 -0
  63. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/adapters/sensors/_msacpi.py +0 -0
  64. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/adapters/sensors/_powermetrics.py +0 -0
  65. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/adapters/sensors/_smc.py +0 -0
  66. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/adapters/sensors/_sysctl.py +0 -0
  67. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/adapters/sensors/_wmi_gpu.py +0 -0
  68. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/adapters/sensors/aggregator.py +0 -0
  69. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/adapters/sensors/bsd.py +0 -0
  70. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/adapters/sensors/chain.py +0 -0
  71. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/adapters/sensors/gpu_detect.py +0 -0
  72. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/adapters/sensors/hwmon.py +0 -0
  73. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/adapters/sensors/macos.py +0 -0
  74. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/adapters/sensors/nvml.py +0 -0
  75. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/adapters/sensors/psutil_sources.py +0 -0
  76. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/adapters/sensors/windows.py +0 -0
  77. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/adapters/system/__init__.py +0 -0
  78. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/adapters/system/_autostart.py +0 -0
  79. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/adapters/system/_devd.py +0 -0
  80. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/adapters/system/_elevate.py +0 -0
  81. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/adapters/system/_hotplug.py +0 -0
  82. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/adapters/system/_imc_timings.py +0 -0
  83. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/adapters/system/_macos_setup.py +0 -0
  84. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/adapters/system/_selinux.py +0 -0
  85. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/adapters/system/_udev.py +0 -0
  86. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/adapters/system/_windows_wmi.py +0 -0
  87. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/adapters/system/_winusb.py +0 -0
  88. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/adapters/system/bsd.py +0 -0
  89. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/adapters/system/linux.py +0 -0
  90. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/adapters/system/macos.py +0 -0
  91. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/adapters/system/spd.py +0 -0
  92. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/adapters/system/windows.py +0 -0
  93. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/adapters/theme/__init__.py +0 -0
  94. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/adapters/theme/cloud.py +0 -0
  95. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/assets/LibreHardwareMonitor.config +0 -0
  96. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/assets/com.github.lexonight1.trcc.policy +0 -0
  97. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/assets/fonts/MSYH.TTC +0 -0
  98. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/assets/fonts/MSYHBD.TTC +0 -0
  99. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/assets/fonts/README.md +0 -0
  100. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/assets/icons/app.ico +0 -0
  101. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/assets/icons/trcc.png +0 -0
  102. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/assets/icons/trcc_128x128.png +0 -0
  103. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/assets/icons/trcc_16x16.png +0 -0
  104. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/assets/icons/trcc_24x24.png +0 -0
  105. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/assets/icons/trcc_256x256.png +0 -0
  106. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/assets/icons/trcc_32x32.png +0 -0
  107. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/assets/icons/trcc_48x48.png +0 -0
  108. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/assets/icons/trcc_64x64.png +0 -0
  109. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/assets/trcc-imc +0 -0
  110. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/assets/trcc-linux.desktop +0 -0
  111. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/assets/trcc-quirk-fix.service +0 -0
  112. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/core/__init__.py +0 -0
  113. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/core/_colors.py +0 -0
  114. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/core/_safe.py +0 -0
  115. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/core/_version.py +0 -0
  116. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/core/commands/_base.py +0 -0
  117. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/core/commands/_helpers.py +0 -0
  118. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/core/commands/led.py +0 -0
  119. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/core/commands/system.py +0 -0
  120. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/core/commands/theme.py +0 -0
  121. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/core/device_recovery.py +0 -0
  122. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/core/diagnostics.py +0 -0
  123. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/core/errors.py +0 -0
  124. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/core/events.py +0 -0
  125. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/core/geometry.py +0 -0
  126. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/core/i18n.py +0 -0
  127. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/core/led_models.py +0 -0
  128. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/core/led_protocol.py +0 -0
  129. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/core/models.py +0 -0
  130. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/core/ports.py +0 -0
  131. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/core/results.py +0 -0
  132. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/core/variants.py +0 -0
  133. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/daemon.py +0 -0
  134. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/data/trcc_usb.te +0 -0
  135. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ipc.py +0 -0
  136. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/proxy.py +0 -0
  137. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/services/__init__.py +0 -0
  138. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/services/_ansi.py +0 -0
  139. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/services/_clock.py +0 -0
  140. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/services/audio.py +0 -0
  141. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/services/cloud_theme.py +0 -0
  142. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/services/data_install.py +0 -0
  143. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/services/device_sender.py +0 -0
  144. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/services/first_run.py +0 -0
  145. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/services/led_animation_loop.py +0 -0
  146. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/services/led_effects.py +0 -0
  147. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/services/led_segment.py +0 -0
  148. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/services/media.py +0 -0
  149. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/services/metrics_loop.py +0 -0
  150. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/services/metrics_personalize.py +0 -0
  151. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/services/migration.py +0 -0
  152. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/services/overlay.py +0 -0
  153. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/services/quickstart.py +0 -0
  154. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/services/settings.py +0 -0
  155. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/services/slideshow.py +0 -0
  156. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/services/theme.py +0 -0
  157. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/services/video_cache.py +0 -0
  158. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/services/video_export.py +0 -0
  159. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/__init__.py +0 -0
  160. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/_errors.py +0 -0
  161. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/api/__init__.py +0 -0
  162. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/api/_shared.py +0 -0
  163. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/api/config.py +0 -0
  164. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/api/devices.py +0 -0
  165. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/api/led.py +0 -0
  166. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/api/main.py +0 -0
  167. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/api/schemas.py +0 -0
  168. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/api/system.py +0 -0
  169. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/api/theme.py +0 -0
  170. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/api/trcc.py +0 -0
  171. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/cli/__init__.py +0 -0
  172. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/cli/config.py +0 -0
  173. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/cli/device.py +0 -0
  174. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/cli/main.py +0 -0
  175. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/cli/shell.py +0 -0
  176. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/cli/system.py +0 -0
  177. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/cli/theme.py +0 -0
  178. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/__init__.py +0 -0
  179. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/_ui_state.py +0 -0
  180. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/240240.gif +0 -0
  181. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/240320.gif +0 -0
  182. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/320240.gif +0 -0
  183. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/320320.gif +0 -0
  184. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1AK120 Digital.png +0 -0
  185. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1AK120 Digitala.png +0 -0
  186. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1AK120_Digital.png +0 -0
  187. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1AK120_Digitala.png +0 -0
  188. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1AS120 VISION.png +0 -0
  189. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1AS120 VISIONa.png +0 -0
  190. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1AS120_VISION.png +0 -0
  191. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1AS120_VISIONa.png +0 -0
  192. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1AX120 DIGITAL.png +0 -0
  193. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1AX120 DIGITALa.png +0 -0
  194. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1AX120_DIGITAL.png +0 -0
  195. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1AX120_DIGITALa.png +0 -0
  196. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1BA120 VISION.png +0 -0
  197. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1BA120 VISIONa.png +0 -0
  198. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1BA120_VISION.png +0 -0
  199. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1BA120_VISIONa.png +0 -0
  200. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1CORE VISION.png +0 -0
  201. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1CORE VISIONa.png +0 -0
  202. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1CORE_VISION.png +0 -0
  203. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1CORE_VISIONa.png +0 -0
  204. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1CZ1.png +0 -0
  205. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1CZ1a.png +0 -0
  206. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1CZ2.png +0 -0
  207. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1CZ2a.png +0 -0
  208. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1CZTV.png +0 -0
  209. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1CZTVa.png +0 -0
  210. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1ELITE VISION.png +0 -0
  211. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1ELITE VISIONa.png +0 -0
  212. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1ELITE_VISION.png +0 -0
  213. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1ELITE_VISIONa.png +0 -0
  214. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1FROZEN HORIZON PRO.png +0 -0
  215. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1FROZEN HORIZON PROa.png +0 -0
  216. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1FROZEN MAGIC PRO.png +0 -0
  217. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1FROZEN MAGIC PROa.png +0 -0
  218. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1FROZEN VISION V2.png +0 -0
  219. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1FROZEN VISION V2a.png +0 -0
  220. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1FROZEN WARFRAME PRO.png +0 -0
  221. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1FROZEN WARFRAME PROa.png +0 -0
  222. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1FROZEN WARFRAME SE.png +0 -0
  223. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1FROZEN WARFRAME SEa.png +0 -0
  224. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1FROZEN WARFRAME.png +0 -0
  225. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1FROZEN WARFRAMEa.png +0 -0
  226. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1FROZEN_HORIZON_PRO.png +0 -0
  227. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1FROZEN_HORIZON_PROa.png +0 -0
  228. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1FROZEN_MAGIC_PRO.png +0 -0
  229. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1FROZEN_MAGIC_PROa.png +0 -0
  230. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1FROZEN_VISION_V2.png +0 -0
  231. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1FROZEN_VISION_V2a.png +0 -0
  232. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1FROZEN_WARFRAME.png +0 -0
  233. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1FROZEN_WARFRAME_PRO.png +0 -0
  234. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1FROZEN_WARFRAME_PROa.png +0 -0
  235. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1FROZEN_WARFRAME_SE.png +0 -0
  236. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1FROZEN_WARFRAME_SEa.png +0 -0
  237. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1FROZEN_WARFRAMEa.png +0 -0
  238. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1GRAND VISION.png +0 -0
  239. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1GRAND VISIONa.png +0 -0
  240. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1GRAND_VISION.png +0 -0
  241. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1GRAND_VISIONa.png +0 -0
  242. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1HR10 2280 PRO DIGITAL.png +0 -0
  243. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1HR10 2280 PRO DIGITALa.png +0 -0
  244. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1HYPER VISION.png +0 -0
  245. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1HYPER VISIONa.png +0 -0
  246. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1HYPER_VISION.png +0 -0
  247. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1HYPER_VISIONa.png +0 -0
  248. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1KVMALEDC6.png +0 -0
  249. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1KVMALEDC6a.png +0 -0
  250. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1LC1.png +0 -0
  251. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1LC10.png +0 -0
  252. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1LC10a.png +0 -0
  253. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1LC13.png +0 -0
  254. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1LC13a.png +0 -0
  255. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1LC15.png +0 -0
  256. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1LC15a.png +0 -0
  257. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1LC1a.png +0 -0
  258. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1LC2.png +0 -0
  259. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1LC2JD.png +0 -0
  260. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1LC2JDa.png +0 -0
  261. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1LC2a.png +0 -0
  262. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1LC3.png +0 -0
  263. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1LC3a.png +0 -0
  264. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1LC5.png +0 -0
  265. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1LC5a.png +0 -0
  266. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1LC7.png +0 -0
  267. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1LC7a.png +0 -0
  268. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1LC8.png +0 -0
  269. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1LC8a.png +0 -0
  270. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1LC9.png +0 -0
  271. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1LC9a.png +0 -0
  272. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1LD10.png +0 -0
  273. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1LD10a.png +0 -0
  274. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1LD11.png +0 -0
  275. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1LD11a.png +0 -0
  276. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1LD6.png +0 -0
  277. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1LD6a.png +0 -0
  278. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1LD7.png +0 -0
  279. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1LD7a.png +0 -0
  280. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1LD8.png +0 -0
  281. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1LD8a.png +0 -0
  282. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1LD9.png +0 -0
  283. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1LD9a.png +0 -0
  284. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1LF014.png +0 -0
  285. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1LF014a.png +0 -0
  286. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1LF10.png +0 -0
  287. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1LF10V.png +0 -0
  288. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1LF10Va.png +0 -0
  289. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1LF10a.png +0 -0
  290. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1LF11.png +0 -0
  291. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1LF11a.png +0 -0
  292. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1LF12.png +0 -0
  293. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1LF12a.png +0 -0
  294. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1LF13.png +0 -0
  295. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1LF13a.png +0 -0
  296. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1LF14.png +0 -0
  297. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1LF14a.png +0 -0
  298. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1LF15.png +0 -0
  299. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1LF15a.png +0 -0
  300. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1LF16.png +0 -0
  301. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1LF167.png +0 -0
  302. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1LF16a.png +0 -0
  303. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1LF17a.png +0 -0
  304. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1LF18.png +0 -0
  305. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1LF18a.png +0 -0
  306. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1LF19.png +0 -0
  307. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1LF19a.png +0 -0
  308. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1LF20.png +0 -0
  309. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1LF20a.png +0 -0
  310. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1LF21.png +0 -0
  311. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1LF21a.png +0 -0
  312. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1LF22.png +0 -0
  313. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1LF22a.png +0 -0
  314. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1LF25.png +0 -0
  315. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1LF25a.png +0 -0
  316. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1LF8.png +0 -0
  317. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1LF8a.png +0 -0
  318. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1LM16SE.png +0 -0
  319. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1LM16SEa.png +0 -0
  320. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1LM19SE.png +0 -0
  321. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1LM19SEa.png +0 -0
  322. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1LM22.png +0 -0
  323. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1LM22a.png +0 -0
  324. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1LM24.png +0 -0
  325. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1LM24a.png +0 -0
  326. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1LM26.png +0 -0
  327. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1LM26a.png +0 -0
  328. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1LM27.png +0 -0
  329. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1LM27a.png +0 -0
  330. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1LM30.png +0 -0
  331. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1LM30a.png +0 -0
  332. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1Mjolnir VISION PRO.png +0 -0
  333. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1Mjolnir VISION PROa.png +0 -0
  334. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1Mjolnir VISION.png +0 -0
  335. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1Mjolnir VISIONa.png +0 -0
  336. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1Mjolnir_VISION.png +0 -0
  337. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1Mjolnir_VISION_PRO.png +0 -0
  338. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1Mjolnir_VISION_PROa.png +0 -0
  339. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1Mjolnir_VISIONa.png +0 -0
  340. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1PA120 DIGITAL.png +0 -0
  341. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1PA120 DIGITALa.png +0 -0
  342. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1PA120_DIGITAL.png +0 -0
  343. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1PA120_DIGITALa.png +0 -0
  344. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1PC1.png +0 -0
  345. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1PC1a.png +0 -0
  346. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1RK120 DIGITAL.png +0 -0
  347. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1RK120 DIGITALa.png +0 -0
  348. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1RK120_DIGITAL.png +0 -0
  349. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1RK120_DIGITALa.png +0 -0
  350. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1RP130 VISION.png +0 -0
  351. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1RP130 VISIONa.png +0 -0
  352. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1RP130_VISION.png +0 -0
  353. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1RP130_VISIONa.png +0 -0
  354. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1RX1.png +0 -0
  355. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1RX1a.png +0 -0
  356. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1Stream Vision.png +0 -0
  357. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1Stream Visiona.png +0 -0
  358. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1Stream_Vision.png +0 -0
  359. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/A1Stream_Visiona.png +0 -0
  360. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/about_dropdown.png +0 -0
  361. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/about_dropdown_bg.png +0 -0
  362. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/about_dropdown_select.png +0 -0
  363. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/about_update.png +0 -0
  364. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/about_update_overlay.png +0 -0
  365. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/app_about_bg.png +0 -0
  366. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/app_brightness_0.png +0 -0
  367. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/app_brightness_1.png +0 -0
  368. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/app_brightness_2.png +0 -0
  369. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/app_brightness_3.png +0 -0
  370. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/app_export.png +0 -0
  371. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/app_form_bg.png +0 -0
  372. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/app_help.png +0 -0
  373. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/app_import.png +0 -0
  374. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/app_main_bg.png +0 -0
  375. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/app_power.png +0 -0
  376. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/app_power_hover.png +0 -0
  377. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/app_save.png +0 -0
  378. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/app_sysinfo_bg.png +0 -0
  379. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/app_tab_cloud.png +0 -0
  380. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/app_tab_cloud_active.png +0 -0
  381. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/app_tab_local.png +0 -0
  382. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/app_tab_local_active.png +0 -0
  383. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/app_tab_mask.png +0 -0
  384. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/app_tab_mask_active.png +0 -0
  385. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/app_tab_mask_lower.png +0 -0
  386. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/app_tab_settings.png +0 -0
  387. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/app_tab_settings_active.png +0 -0
  388. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/app_theme_base_bg.png +0 -0
  389. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/app_theme_gallery_bg.png +0 -0
  390. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/app_theme_settings_bg.png +0 -0
  391. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/carousel_1.png +0 -0
  392. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/carousel_2.png +0 -0
  393. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/carousel_3.png +0 -0
  394. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/carousel_4.png +0 -0
  395. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/carousel_5.png +0 -0
  396. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/carousel_6.png +0 -0
  397. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/carousel_btn.png +0 -0
  398. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/carousel_btn_active.png +0 -0
  399. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/carousel_select_frame.png +0 -0
  400. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/color_panel_eyedropper.png +0 -0
  401. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/color_panel_picker.png +0 -0
  402. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/color_panel_selector_ring.png +0 -0
  403. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/color_panel_slider_thumb.png +0 -0
  404. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/color_wheel_knob.png +0 -0
  405. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/color_wheel_knob_0.png +0 -0
  406. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/color_wheel_toggle_hover.png +0 -0
  407. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/color_wheel_toggle_off.png +0 -0
  408. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/color_wheel_toggle_on.png +0 -0
  409. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/display_mode_12h.png +0 -0
  410. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/display_mode_24h.png +0 -0
  411. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/display_mode_border.png +0 -0
  412. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/display_mode_border_active.png +0 -0
  413. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/display_mode_crop.png +0 -0
  414. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/display_mode_date_dm.png +0 -0
  415. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/display_mode_date_dmy.png +0 -0
  416. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/display_mode_date_md.png +0 -0
  417. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/display_mode_date_ymd.png +0 -0
  418. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/display_mode_digit_font.png +0 -0
  419. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/display_mode_fit_height.png +0 -0
  420. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/display_mode_fit_width.png +0 -0
  421. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/display_mode_function.png +0 -0
  422. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/display_mode_function_active.png +0 -0
  423. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/display_mode_icon.png +0 -0
  424. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/display_mode_icon_gif.png +0 -0
  425. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/display_mode_icon_image.png +0 -0
  426. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/display_mode_icon_livestream.png +0 -0
  427. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/display_mode_icon_mask.png +0 -0
  428. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/display_mode_icon_network.png +0 -0
  429. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/display_mode_icon_video.png +0 -0
  430. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/display_mode_m1.png +0 -0
  431. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/display_mode_m1_active.png +0 -0
  432. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/display_mode_m2.png +0 -0
  433. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/display_mode_m2_active.png +0 -0
  434. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/display_mode_m3.png +0 -0
  435. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/display_mode_m3_active.png +0 -0
  436. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/display_mode_m4.png +0 -0
  437. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/display_mode_m4_active.png +0 -0
  438. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/display_mode_m5.png +0 -0
  439. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/display_mode_m5_active.png +0 -0
  440. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/display_mode_m6.png +0 -0
  441. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/display_mode_m6_active.png +0 -0
  442. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/display_mode_minus.png +0 -0
  443. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/display_mode_network_btn.png +0 -0
  444. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/display_mode_plus.png +0 -0
  445. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/display_mode_rotate.png +0 -0
  446. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/display_mode_slider_thumb.png +0 -0
  447. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/display_mode_text_font.png +0 -0
  448. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/display_mode_unit_c.png +0 -0
  449. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/display_mode_unit_f.png +0 -0
  450. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/frozen_warframe_ultra.png +0 -0
  451. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/frozen_warframe_ultra_active.png +0 -0
  452. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/image_cut_110x480.png +0 -0
  453. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/image_cut_116x480.png +0 -0
  454. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/image_cut_1280x480.png +0 -0
  455. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/image_cut_160x480.png +0 -0
  456. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/image_cut_180x400.png +0 -0
  457. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/image_cut_180x480.png +0 -0
  458. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/image_cut_240x240.png +0 -0
  459. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/image_cut_240x320.png +0 -0
  460. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/image_cut_240x400.png +0 -0
  461. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/image_cut_240x427.png +0 -0
  462. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/image_cut_270x480.png +0 -0
  463. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/image_cut_320x240.png +0 -0
  464. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/image_cut_320x320.png +0 -0
  465. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/image_cut_320x86.png +0 -0
  466. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/image_cut_360x360.png +0 -0
  467. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/image_cut_400x180.png +0 -0
  468. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/image_cut_400x240.png +0 -0
  469. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/image_cut_427x240.png +0 -0
  470. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/image_cut_480x110.png +0 -0
  471. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/image_cut_480x116.png +0 -0
  472. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/image_cut_480x160.png +0 -0
  473. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/image_cut_480x180.png +0 -0
  474. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/image_cut_480x270.png +0 -0
  475. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/image_cut_480x480.png +0 -0
  476. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/image_cut_86x320.png +0 -0
  477. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_aggregate.png +0 -0
  478. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_aggregate_active.png +0 -0
  479. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_bg_cz1.png +0 -0
  480. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_bg_kvma.png +0 -0
  481. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_bg_lc1.png +0 -0
  482. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_bg_lc2.png +0 -0
  483. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_bg_lf10.png +0 -0
  484. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_bg_lf11.png +0 -0
  485. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_bg_lf12.png +0 -0
  486. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_bg_lf13.png +0 -0
  487. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_bg_lf15.png +0 -0
  488. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_bg_lf8.png +0 -0
  489. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_bg_rgb_lf13.png +0 -0
  490. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_bg_segment.png +0 -0
  491. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_bg_segment_4zone.png +0 -0
  492. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_dropdown.png +0 -0
  493. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_dropdown_2.png +0 -0
  494. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_dropdown_highlight.png +0 -0
  495. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_dropdown_highlight_2.png +0 -0
  496. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_dropdown_menu.png +0 -0
  497. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_dropdown_menu_2.png +0 -0
  498. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_external.png +0 -0
  499. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_external_active.png +0 -0
  500. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_helmet_1.png +0 -0
  501. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_helmet_2.png +0 -0
  502. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_helmet_3.png +0 -0
  503. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_helmet_4.png +0 -0
  504. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_helmet_5.png +0 -0
  505. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_meter_bar_1.png +0 -0
  506. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_meter_bar_2.png +0 -0
  507. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_meter_bar_3.png +0 -0
  508. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_meter_bar_4.png +0 -0
  509. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_meter_bar_5.png +0 -0
  510. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_meter_bar_6.png +0 -0
  511. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_meter_bg_1.png +0 -0
  512. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_meter_bg_2.png +0 -0
  513. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_meter_bg_3.png +0 -0
  514. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_meter_bg_4.png +0 -0
  515. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_meter_bg_5.png +0 -0
  516. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_meter_bg_5_active.png +0 -0
  517. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_meter_bg_6.png +0 -0
  518. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_mode_1.png +0 -0
  519. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_mode_10.png +0 -0
  520. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_mode_10_active.png +0 -0
  521. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_mode_11.png +0 -0
  522. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_mode_11_active.png +0 -0
  523. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_mode_12.png +0 -0
  524. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_mode_12_active.png +0 -0
  525. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_mode_1_active.png +0 -0
  526. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_mode_2.png +0 -0
  527. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_mode_2_active.png +0 -0
  528. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_mode_3.png +0 -0
  529. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_mode_3_active.png +0 -0
  530. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_mode_4.png +0 -0
  531. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_mode_4_active.png +0 -0
  532. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_mode_5.png +0 -0
  533. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_mode_5_active.png +0 -0
  534. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_mode_6.png +0 -0
  535. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_mode_6_active.png +0 -0
  536. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_mode_7.png +0 -0
  537. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_mode_7_active.png +0 -0
  538. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_mode_8.png +0 -0
  539. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_mode_8_active.png +0 -0
  540. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_mode_9.png +0 -0
  541. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_mode_9_active.png +0 -0
  542. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_power.png +0 -0
  543. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_power_active.png +0 -0
  544. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_preset_blue.png +0 -0
  545. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_preset_cyan.png +0 -0
  546. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_preset_green.png +0 -0
  547. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_preset_orange.png +0 -0
  548. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_preset_purple.png +0 -0
  549. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_preset_red.png +0 -0
  550. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_preset_white.png +0 -0
  551. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_preset_yellow.png +0 -0
  552. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_preview_ak120.png +0 -0
  553. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_preview_ax120.png +0 -0
  554. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_preview_cz1.png +0 -0
  555. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_preview_frozen_horizon_pro.png +0 -0
  556. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_preview_frozen_magic_pro.png +0 -0
  557. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_preview_lc1.png +0 -0
  558. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_preview_lc2.png +0 -0
  559. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_preview_lf10.png +0 -0
  560. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_preview_lf11.png +0 -0
  561. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_preview_lf12.png +0 -0
  562. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_preview_lf13.png +0 -0
  563. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_preview_lf15.png +0 -0
  564. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_preview_lf8.png +0 -0
  565. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_preview_pa120.png +0 -0
  566. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_preview_pa120_space.png +0 -0
  567. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_show_1.png +0 -0
  568. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_show_1_active.png +0 -0
  569. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_show_2.png +0 -0
  570. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_show_2_active.png +0 -0
  571. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_show_3.png +0 -0
  572. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_show_3_active.png +0 -0
  573. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_slider_thumb.png +0 -0
  574. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_zone_btn_1.png +0 -0
  575. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_zone_btn_1_active.png +0 -0
  576. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_zone_btn_2.png +0 -0
  577. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_zone_btn_2_active.png +0 -0
  578. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_zone_btn_3.png +0 -0
  579. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_zone_btn_3_active.png +0 -0
  580. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_zone_btn_4.png +0 -0
  581. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_zone_btn_4_active.png +0 -0
  582. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_zone_mode_1.png +0 -0
  583. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_zone_mode_1_active.png +0 -0
  584. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_zone_mode_2.png +0 -0
  585. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_zone_mode_2_active.png +0 -0
  586. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_zone_mode_3.png +0 -0
  587. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_zone_mode_3_active.png +0 -0
  588. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_zone_mode_4.png +0 -0
  589. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_zone_mode_4_active.png +0 -0
  590. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_zone_mode_5.png +0 -0
  591. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_zone_mode_5_active.png +0 -0
  592. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_zone_mode_6.png +0 -0
  593. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/led_zone_mode_6_active.png +0 -0
  594. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/overlay_label_sysinfo.png +0 -0
  595. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/overlay_label_sysinfo_1_en.png +0 -0
  596. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/overlay_label_sysinfo_1_tc.png +0 -0
  597. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/overlay_label_sysinfo_en.png +0 -0
  598. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/overlay_label_sysinfo_tc.png +0 -0
  599. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/overlay_label_text.png +0 -0
  600. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/overlay_label_text_en.png +0 -0
  601. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/overlay_label_text_tc.png +0 -0
  602. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/overlay_label_time.png +0 -0
  603. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/overlay_label_time_en.png +0 -0
  604. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/overlay_label_time_tc.png +0 -0
  605. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/overlay_mode_date.png +0 -0
  606. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/overlay_mode_hardware.png +0 -0
  607. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/overlay_mode_text.png +0 -0
  608. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/overlay_mode_time.png +0 -0
  609. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/overlay_mode_weekday.png +0 -0
  610. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/overlay_select.png +0 -0
  611. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/preview_110x480.png +0 -0
  612. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/preview_116x480.png +0 -0
  613. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/preview_160x480.png +0 -0
  614. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/preview_180x400.png +0 -0
  615. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/preview_180x480.png +0 -0
  616. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/preview_240x240.png +0 -0
  617. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/preview_240x320.png +0 -0
  618. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/preview_240x400.png +0 -0
  619. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/preview_240x427.png +0 -0
  620. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/preview_270x480.png +0 -0
  621. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/preview_320x240.png +0 -0
  622. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/preview_320x320.png +0 -0
  623. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/preview_320x320_round.png +0 -0
  624. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/preview_320x86.png +0 -0
  625. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/preview_360x360_round.png +0 -0
  626. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/preview_400x180.png +0 -0
  627. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/preview_400x240.png +0 -0
  628. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/preview_427x240.png +0 -0
  629. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/preview_480x110.png +0 -0
  630. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/preview_480x116.png +0 -0
  631. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/preview_480x160.png +0 -0
  632. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/preview_480x180.png +0 -0
  633. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/preview_480x270.png +0 -0
  634. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/preview_480x480.png +0 -0
  635. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/preview_480x480_round.png +0 -0
  636. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/preview_86x320.png +0 -0
  637. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/preview_animation.png +0 -0
  638. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/preview_btn.png +0 -0
  639. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/preview_btn_active.png +0 -0
  640. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/preview_pause.png +0 -0
  641. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/preview_play.png +0 -0
  642. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/preview_player_control_bg.png +0 -0
  643. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/preview_popup_1280x480.png +0 -0
  644. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/preview_popup_1920x440.png +0 -0
  645. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/preview_popup_1920x462.png +0 -0
  646. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/preview_popup_320x960.png +0 -0
  647. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/preview_popup_360x800.png +0 -0
  648. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/preview_popup_440x1920.png +0 -0
  649. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/preview_popup_462x1920.png +0 -0
  650. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/preview_popup_480x1280.png +0 -0
  651. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/preview_popup_480x800.png +0 -0
  652. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/preview_popup_480x854.png +0 -0
  653. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/preview_popup_540x960.png +0 -0
  654. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/preview_popup_800x360.png +0 -0
  655. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/preview_popup_800x480.png +0 -0
  656. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/preview_popup_854x480.png +0 -0
  657. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/preview_popup_960x320.png +0 -0
  658. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/preview_popup_960x540.png +0 -0
  659. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/preview_res_240x240.png +0 -0
  660. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/preview_res_240x320.png +0 -0
  661. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/preview_res_320x240.png +0 -0
  662. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/preview_res_320x320.png +0 -0
  663. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/preview_round_mask_320x320.png +0 -0
  664. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/preview_round_mask_360x360.png +0 -0
  665. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/preview_round_mask_480x480.png +0 -0
  666. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/preview_video_controls_bg.png +0 -0
  667. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/preview_video_controls_bg_alt.png +0 -0
  668. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/screen_led_deco_1.png +0 -0
  669. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/screen_led_deco_2.png +0 -0
  670. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/screen_led_deco_3.png +0 -0
  671. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/screen_led_deco_4.png +0 -0
  672. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/screen_led_deco_cz1.png +0 -0
  673. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/secondary_screen_bg.png +0 -0
  674. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/secondary_screen_bg_d.png +0 -0
  675. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/secondary_screen_bg_e.png +0 -0
  676. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/secondary_screen_bg_en.png +0 -0
  677. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/secondary_screen_bg_f.png +0 -0
  678. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/secondary_screen_bg_h.png +0 -0
  679. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/secondary_screen_bg_p.png +0 -0
  680. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/secondary_screen_bg_r.png +0 -0
  681. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/secondary_screen_bg_tc.png +0 -0
  682. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/secondary_screen_bg_x.png +0 -0
  683. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/settings_add_content.png +0 -0
  684. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/settings_add_content_btn.png +0 -0
  685. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/settings_add_content_mask.png +0 -0
  686. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/settings_add_date.png +0 -0
  687. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/settings_add_date_1.png +0 -0
  688. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/settings_add_icon.png +0 -0
  689. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/settings_add_link_1.png +0 -0
  690. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/settings_add_text.png +0 -0
  691. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/settings_add_text_1.png +0 -0
  692. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/settings_add_time.png +0 -0
  693. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/settings_add_time_1.png +0 -0
  694. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/settings_add_weekday.png +0 -0
  695. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/settings_add_weekday_1.png +0 -0
  696. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/settings_anim_sync.png +0 -0
  697. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/settings_background.png +0 -0
  698. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/settings_brightness.png +0 -0
  699. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/settings_keyboard_sync_1.png +0 -0
  700. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/settings_keyboard_sync_2.png +0 -0
  701. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/settings_keyboard_sync_3.png +0 -0
  702. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/settings_module.png +0 -0
  703. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/settings_overlay.png +0 -0
  704. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/settings_overlay_add_bg.png +0 -0
  705. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/settings_overlay_color_bg.png +0 -0
  706. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/settings_overlay_grid_bg.png +0 -0
  707. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/settings_overlay_table_bg.png +0 -0
  708. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/settings_params.png +0 -0
  709. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/shared_brightness_bar.png +0 -0
  710. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/shared_checkbox_off.png +0 -0
  711. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/shared_checkbox_on.png +0 -0
  712. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/shared_clip_a.png +0 -0
  713. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/shared_clip_b.png +0 -0
  714. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/shared_close.png +0 -0
  715. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/shared_close_2.png +0 -0
  716. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/shared_dropdown.png +0 -0
  717. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/shared_dropdown_bg_2x.png +0 -0
  718. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/shared_dropdown_bg_4x.png +0 -0
  719. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/shared_dropdown_highlight.png +0 -0
  720. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/shared_loading_animation.png +0 -0
  721. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/shared_progress_bar.png +0 -0
  722. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/shared_round_close.png +0 -0
  723. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/shared_round_confirm.png +0 -0
  724. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/shared_scrollbar_bg.png +0 -0
  725. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/shared_scrollbar_thumb.png +0 -0
  726. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/shared_shortcut_size_slider.png +0 -0
  727. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/shared_thread_multi.png +0 -0
  728. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/shared_thread_single.png +0 -0
  729. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/shared_toggle_off.png +0 -0
  730. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/shared_toggle_on.png +0 -0
  731. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/shortcuts_panel.png +0 -0
  732. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/shortcuts_panel_d.png +0 -0
  733. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/shortcuts_panel_e.png +0 -0
  734. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/shortcuts_panel_en.png +0 -0
  735. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/shortcuts_panel_f.png +0 -0
  736. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/shortcuts_panel_p.png +0 -0
  737. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/shortcuts_panel_r.png +0 -0
  738. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/shortcuts_panel_tc.png +0 -0
  739. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/shortcuts_panel_x.png +0 -0
  740. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/sidebar_about.png +0 -0
  741. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/sidebar_about_active.png +0 -0
  742. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/sidebar_about_bg.png +0 -0
  743. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/sidebar_bg.png +0 -0
  744. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/sidebar_no_device.png +0 -0
  745. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/sidebar_sensor.png +0 -0
  746. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/sidebar_sensor_active.png +0 -0
  747. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/sidebar_splash.png +0 -0
  748. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/sidebar_sysinfo_bg.png +0 -0
  749. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/split_overlay_a.png +0 -0
  750. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/split_overlay_a_180.png +0 -0
  751. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/split_overlay_a_270.png +0 -0
  752. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/split_overlay_a_90.png +0 -0
  753. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/split_overlay_b.png +0 -0
  754. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/split_overlay_b_180.png +0 -0
  755. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/split_overlay_b_270.png +0 -0
  756. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/split_overlay_b_90.png +0 -0
  757. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/split_overlay_c.png +0 -0
  758. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/split_overlay_c_180.png +0 -0
  759. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/split_overlay_c_270.png +0 -0
  760. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/split_overlay_c_90.png +0 -0
  761. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/sysinfo_add_group.png +0 -0
  762. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/sysinfo_cpu.png +0 -0
  763. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/sysinfo_custom.png +0 -0
  764. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/sysinfo_dram.png +0 -0
  765. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/sysinfo_fan.png +0 -0
  766. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/sysinfo_gpu.png +0 -0
  767. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/sysinfo_hdd.png +0 -0
  768. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/sysinfo_net.png +0 -0
  769. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/sysinfo_next_page.png +0 -0
  770. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/sysinfo_prev_page.png +0 -0
  771. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/sysinfo_scrollbar.png +0 -0
  772. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/sysinfo_select.png +0 -0
  773. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/theme_browser_filter.png +0 -0
  774. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/theme_browser_filter_active.png +0 -0
  775. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/theme_cloud_label.png +0 -0
  776. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/theme_cloud_label_d.png +0 -0
  777. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/theme_cloud_label_e.png +0 -0
  778. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/theme_cloud_label_en.png +0 -0
  779. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/theme_cloud_label_f.png +0 -0
  780. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/theme_cloud_label_h.png +0 -0
  781. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/theme_cloud_label_p.png +0 -0
  782. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/theme_cloud_label_r.png +0 -0
  783. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/theme_cloud_label_tc.png +0 -0
  784. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/theme_cloud_label_x.png +0 -0
  785. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/theme_local_carousel.png +0 -0
  786. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/theme_local_carousel_active.png +0 -0
  787. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/theme_local_export_all.png +0 -0
  788. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/theme_local_multi_select.png +0 -0
  789. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/theme_local_multi_select_active.png +0 -0
  790. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/theme_local_select_frame.png +0 -0
  791. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/theme_local_select_frame_active.png +0 -0
  792. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/theme_mask_label.png +0 -0
  793. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/video_cut_110x480.png +0 -0
  794. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/video_cut_116x480.png +0 -0
  795. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/video_cut_1280x480.png +0 -0
  796. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/video_cut_160x480.png +0 -0
  797. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/video_cut_180x400.png +0 -0
  798. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/video_cut_180x480.png +0 -0
  799. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/video_cut_240x240.png +0 -0
  800. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/video_cut_240x320.png +0 -0
  801. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/video_cut_240x400.png +0 -0
  802. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/video_cut_240x427.png +0 -0
  803. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/video_cut_270x480.png +0 -0
  804. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/video_cut_320x240.png +0 -0
  805. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/video_cut_320x320.png +0 -0
  806. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/video_cut_320x86.png +0 -0
  807. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/video_cut_360x360.png +0 -0
  808. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/video_cut_400x180.png +0 -0
  809. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/video_cut_400x240.png +0 -0
  810. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/video_cut_427x240.png +0 -0
  811. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/video_cut_480x110.png +0 -0
  812. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/video_cut_480x116.png +0 -0
  813. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/video_cut_480x160.png +0 -0
  814. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/video_cut_480x180.png +0 -0
  815. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/video_cut_480x270.png +0 -0
  816. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/video_cut_480x480.png +0 -0
  817. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/video_cut_86x320.png +0 -0
  818. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/video_cut_bg.png +0 -0
  819. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets/video_cut_bg_alt.png +0 -0
  820. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/assets.py +0 -0
  821. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/base.py +0 -0
  822. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/base_handler.py +0 -0
  823. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/bus_bridge.py +0 -0
  824. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/color_and_add_panels.py +0 -0
  825. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/constants.py +0 -0
  826. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/display_mode_panels.py +0 -0
  827. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/eyedropper.py +0 -0
  828. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/led_handler.py +0 -0
  829. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/overlay_element.py +0 -0
  830. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/overlay_grid.py +0 -0
  831. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/pipewire_capture.py +0 -0
  832. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/screen_capture.py +0 -0
  833. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/splash.py +0 -0
  834. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/uc_about.py +0 -0
  835. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/uc_activity_sidebar.py +0 -0
  836. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/uc_color_wheel.py +0 -0
  837. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/uc_device.py +0 -0
  838. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/uc_image_cut.py +0 -0
  839. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/uc_info_module.py +0 -0
  840. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/uc_led_control.py +0 -0
  841. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/uc_preview.py +0 -0
  842. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/uc_screen_led.py +0 -0
  843. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/uc_sensor_picker.py +0 -0
  844. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/uc_system_info.py +0 -0
  845. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/uc_theme_local.py +0 -0
  846. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/uc_theme_mask.py +0 -0
  847. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/uc_theme_setting.py +0 -0
  848. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/uc_theme_web.py +0 -0
  849. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/gui/uc_video_cut.py +0 -0
  850. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/presentation/__init__.py +0 -0
  851. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/presentation/device_presentation.py +0 -0
  852. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/presentation/lcd_panel.py +0 -0
  853. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/presentation/lcd_presentation_model.py +0 -0
  854. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/presentation/led_display.py +0 -0
  855. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/presentation/led_metrics_format.py +0 -0
  856. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/presentation/led_panel.py +0 -0
  857. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/presentation/led_zone_model.py +0 -0
  858. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/presentation/overlay_model.py +0 -0
  859. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/presentation/overlay_serialization.py +0 -0
  860. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/presentation/preview_geometry.py +0 -0
  861. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/presentation/sensor_display.py +0 -0
  862. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/presentation/slideshow_model.py +0 -0
  863. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/presentation/theme_directories.py +0 -0
  864. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/qapp.py +0 -0
  865. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/qtgui/__init__.py +0 -0
  866. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/qtgui/app.py +0 -0
  867. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/qtgui/assets.py +0 -0
  868. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/qtgui/base.py +0 -0
  869. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/qtgui/bus_bridge.py +0 -0
  870. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/qtgui/color_wheel.py +0 -0
  871. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/qtgui/device_picker.py +0 -0
  872. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/qtgui/eyedropper.py +0 -0
  873. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/qtgui/image_crop.py +0 -0
  874. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/qtgui/panels/__init__.py +0 -0
  875. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/qtgui/panels/about_panel.py +0 -0
  876. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/qtgui/panels/cloud_theme_browser.py +0 -0
  877. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/qtgui/panels/configuration_panel.py +0 -0
  878. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/qtgui/panels/device_panel.py +0 -0
  879. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/qtgui/panels/display_panel.py +0 -0
  880. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/qtgui/panels/led/__init__.py +0 -0
  881. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/qtgui/panels/led/_base.py +0 -0
  882. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/qtgui/panels/led/advanced_tab.py +0 -0
  883. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/qtgui/panels/led/color_tab.py +0 -0
  884. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/qtgui/panels/led/mode_tab.py +0 -0
  885. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/qtgui/panels/led/segment_tab.py +0 -0
  886. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/qtgui/panels/led/zone_tab.py +0 -0
  887. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/qtgui/panels/led_panel.py +0 -0
  888. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/qtgui/panels/local_theme_browser.py +0 -0
  889. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/qtgui/panels/mask_browser.py +0 -0
  890. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/qtgui/panels/overlay_editor.py +0 -0
  891. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/qtgui/panels/preview_panel.py +0 -0
  892. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/qtgui/panels/screencast_panel.py +0 -0
  893. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/qtgui/panels/sidebar.py +0 -0
  894. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/qtgui/panels/status_panel.py +0 -0
  895. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/qtgui/panels/system_panel.py +0 -0
  896. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/qtgui/region_overlay.py +0 -0
  897. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/qtgui/screen_overlay.py +0 -0
  898. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/qtgui/sensor_picker.py +0 -0
  899. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/qtgui/splash.py +0 -0
  900. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/src/trcc/ui/qtgui/video_crop.py +0 -0
  901. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/__init__.py +0 -0
  902. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/adapters/system/test_elevate.py +0 -0
  903. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/adapters/system/test_imc_timings.py +0 -0
  904. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/adapters/system/test_linux_imc.py +0 -0
  905. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/adapters/system/test_spd.py +0 -0
  906. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/adapters/system/test_windows_mem_disk.py +0 -0
  907. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/adapters/system/test_windows_permissions.py +0 -0
  908. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/adapters/system/test_windows_wmi_seam.py +0 -0
  909. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/conftest.py +0 -0
  910. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/mock_platform.py +0 -0
  911. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/test_api_routes.py +0 -0
  912. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/test_app_senders.py +0 -0
  913. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/test_architecture_boundaries.py +0 -0
  914. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/test_autostart.py +0 -0
  915. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/test_autostart_macos.py +0 -0
  916. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/test_autostart_windows.py +0 -0
  917. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/test_backend_finish.py +0 -0
  918. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/test_boot_animation_command.py +0 -0
  919. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/test_boot_animation_device.py +0 -0
  920. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/test_cli_commands.py +0 -0
  921. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/test_clock.py +0 -0
  922. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/test_cloud_themes.py +0 -0
  923. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/test_commands.py +0 -0
  924. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/test_connect_failure_hints.py +0 -0
  925. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/test_connection_issues.py +0 -0
  926. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/test_control_center.py +0 -0
  927. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/test_daemon.py +0 -0
  928. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/test_data_install.py +0 -0
  929. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/test_dc_codec.py +0 -0
  930. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/test_device_catalog_smoke.py +0 -0
  931. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/test_device_recovery.py +0 -0
  932. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/test_device_sender.py +0 -0
  933. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/test_device_surface_matrix.py +0 -0
  934. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/test_diagnose_parse_report.py +0 -0
  935. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/test_display_rotation.py +0 -0
  936. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/test_display_tweaks.py +0 -0
  937. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/test_first_run_and_migration.py +0 -0
  938. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/test_geometry.py +0 -0
  939. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/test_gpu_extras_install.py +0 -0
  940. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/test_gpu_preference.py +0 -0
  941. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/test_gui_empty_state.py +0 -0
  942. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/test_gui_entry_exit.py +0 -0
  943. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/test_gui_panels.py +0 -0
  944. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/test_gui_raise_existing.py +0 -0
  945. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/test_hid_lcd_geometry.py +0 -0
  946. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/test_hotplug.py +0 -0
  947. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/test_hotplug_bsd.py +0 -0
  948. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/test_hotplug_polling.py +0 -0
  949. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/test_hotplug_windows.py +0 -0
  950. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/test_i18n.py +0 -0
  951. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/test_integration_pipeline.py +0 -0
  952. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/test_ipc_server.py +0 -0
  953. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/test_ipc_windows_fallback.py +0 -0
  954. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/test_ipc_wire.py +0 -0
  955. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/test_lcd_panel_model.py +0 -0
  956. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/test_led_animation_loop.py +0 -0
  957. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/test_led_assets.py +0 -0
  958. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/test_led_display_model.py +0 -0
  959. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/test_led_effects.py +0 -0
  960. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/test_led_handler_requires_app.py +0 -0
  961. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/test_led_panel_model.py +0 -0
  962. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/test_led_pm_registry.py +0 -0
  963. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/test_led_remap.py +0 -0
  964. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/test_led_send.py +0 -0
  965. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/test_led_settings_commands.py +0 -0
  966. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/test_library_migration.py +0 -0
  967. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/test_ly_lcd_geometry.py +0 -0
  968. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/test_manpages.py +0 -0
  969. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/test_mask_commands.py +0 -0
  970. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/test_mask_rendering.py +0 -0
  971. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/test_metrics_personalize.py +0 -0
  972. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/test_mock_reply_override.py +0 -0
  973. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/test_models.py +0 -0
  974. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/test_orientation_cloud_background.py +0 -0
  975. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/test_orientation_reload.py +0 -0
  976. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/test_overlay_clock.py +0 -0
  977. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/test_overlay_grid_adapter.py +0 -0
  978. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/test_overlay_metric_unit.py +0 -0
  979. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/test_overlay_resolve.py +0 -0
  980. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/test_overlay_show_unit.py +0 -0
  981. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/test_packaging_entrypoints.py +0 -0
  982. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/test_platform_hw_probes.py +0 -0
  983. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/test_pyusb_find_seam.py +0 -0
  984. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/test_quickstart.py +0 -0
  985. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/test_render_led.py +0 -0
  986. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/test_run_setup_order.py +0 -0
  987. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/test_scsi_lcd_geometry.py +0 -0
  988. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/test_selinux_install.py +0 -0
  989. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/test_sensor_chain.py +0 -0
  990. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/test_sensors.py +0 -0
  991. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/test_sensors_bsd.py +0 -0
  992. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/test_sensors_lhm_subprocess.py +0 -0
  993. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/test_sensors_macos.py +0 -0
  994. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/test_sensors_nvml.py +0 -0
  995. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/test_sensors_windows.py +0 -0
  996. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/test_settings_migration.py +0 -0
  997. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/test_shell.py +0 -0
  998. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/test_system_commands.py +0 -0
  999. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/test_system_resume.py +0 -0
  1000. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/test_theme_persistence.py +0 -0
  1001. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/test_theme_service.py +0 -0
  1002. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/test_transports.py +0 -0
  1003. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/test_udev.py +0 -0
  1004. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/test_ui_surfaces_smoke.py +0 -0
  1005. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/test_variant_presentation_audit.py +0 -0
  1006. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/test_video_cache.py +0 -0
  1007. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/test_video_playback.py +0 -0
  1008. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/test_wire_rotation.py +0 -0
  1009. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/test_wmi_gpu_fallback.py +0 -0
  1010. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/ui/presentation/test_device_presentation.py +0 -0
  1011. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/ui/presentation/test_lcd_presentation_model.py +0 -0
  1012. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/ui/presentation/test_led_metrics_format.py +0 -0
  1013. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/ui/presentation/test_led_zone_model.py +0 -0
  1014. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/ui/presentation/test_overlay_model.py +0 -0
  1015. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/ui/presentation/test_overlay_view_binding.py +0 -0
  1016. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/ui/presentation/test_preview_geometry.py +0 -0
  1017. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/ui/presentation/test_sensor_display.py +0 -0
  1018. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/ui/presentation/test_slideshow_model.py +0 -0
  1019. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/ui/presentation/test_theme_directories.py +0 -0
  1020. {trcc_linux-9.8.4 → trcc_linux-9.8.6}/tests/ui/presentation/test_theme_local_binding.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: trcc-linux
3
- Version: 9.8.4
3
+ Version: 9.8.6
4
4
  Summary: Linux implementation of Thermalright LCD Control Center
5
5
  Project-URL: Homepage, https://github.com/Lexonight1/thermalright-trcc-linux
6
6
  Project-URL: Documentation, https://github.com/Lexonight1/thermalright-trcc-linux#readme
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
4
4
 
5
5
  [project]
6
6
  name = "trcc-linux"
7
- version = "9.8.4"
7
+ version = "9.8.6"
8
8
  description = "Linux implementation of Thermalright LCD Control Center"
9
9
  readme = "README.md"
10
10
  license = "GPL-3.0-or-later"
@@ -1,4 +1,4 @@
1
1
  """TRCC Linux version information. History in doc/CHANGELOG.md."""
2
2
 
3
- __version__ = "9.8.4"
3
+ __version__ = "9.8.6"
4
4
  __version_info__ = tuple(int(x) for x in __version__.split("."))
@@ -55,16 +55,22 @@ _WRITE_CHUNK_SIZE = 16 * 1024
55
55
  # PM values that use raw RGB565 (cmd=3); everything else uses JPEG (cmd=2).
56
56
  _RGB565_PMS: set[int] = {32}
57
57
 
58
- # Bulk base FBL is 72 (480x480, hardcoded by USBLCDNew.exe). C#
59
- # FormCZTVInit (myDeviceMode==2) overrides it only for this known PM set
60
- # (plus PM=1 with SUB 48/49); every other PM stays 480x480. pm_to_fbl()
61
- # returns the PM itself for unrecognised values, which get_profile would
62
- # misread as a 320x320 panel so unknown bulk PMs must clamp to FBL 72.
63
- # Mirrors legacy ``_bulk_resolution``. (#169)
58
+ # Bulk base FBL is 72 (480x480, hardcoded by USBLCDNew.exe). The C# resolves
59
+ # every bulk panel through ``FormCZTVInit(fbl=72, m=2, pm, pmSub)``
60
+ # (TRCC.decompiled.cs:742) base 480x480, overridden ONLY for the PM values
61
+ # its ``switch(pm)`` handles. This set is exactly those values:
62
+ # case 5 50 (320x240) case 7 64 (640x480)
63
+ # m==2 default: pm==32 100 (320x320); pm==64 → 114 (1600x720);
64
+ # pm==65 → 192 (1920x462); pm∈{9,11} → 224 (854x480);
65
+ # pm==10 → 224 (960x540); pm==12 → 224 (800x480)
66
+ # (PM=1 with SUB 48/49 is handled by the separate SUB guard in ``connect()``.)
67
+ # EVERY other PM stays 480x480 — including PM=50 (a poll-byte "SPI mode 2"
68
+ # value the GrandVision 360 reports, #176) and the 224/192-by-PM poll-byte
69
+ # values (13-17, 63, 66, 68, 69) that HID/LY resolve via ``pm_to_fbl`` but
70
+ # ``FormCZTVInit`` never maps on the bulk path. Keep this set == FormCZTVInit's
71
+ # branches; do not re-add poll-byte PMs, or bulk panels misread again. (#176/#169)
64
72
  _BULK_BASE_FBL = 72
65
- _BULK_KNOWN_PMS: frozenset[int] = frozenset(
66
- {5, 7, 9, 10, 11, 12, 13, 14, 15, 16, 17, 32, 50, 63, 64, 65, 66, 68, 69}
67
- )
73
+ _BULK_KNOWN_PMS: frozenset[int] = frozenset({5, 7, 9, 10, 11, 12, 32, 64, 65})
68
74
 
69
75
 
70
76
  @DeviceFactory.register(Wire.BULK)
@@ -17,22 +17,32 @@ whole report. Reporters always get *something* useful to attach.
17
17
  """
18
18
  from __future__ import annotations
19
19
 
20
+ import contextlib
20
21
  import json
21
22
  import logging
22
23
  import os
23
24
  import platform as py_platform
24
25
  import sys
26
+ from collections import deque
25
27
  from dataclasses import dataclass, field
26
28
  from datetime import datetime, timezone
27
29
  from pathlib import Path
28
30
 
31
+ from ...core.errors import HandshakeError, TransportError
32
+ from ...core.models import Kind, ProductInfo, Wire
29
33
  from ...core.ports import Platform
30
34
  from ...core.registry import find_product
35
+ from ..device import DeviceFactory
31
36
  from ..infra.logging import tail_log
32
37
  from .health import HealthReport, run_health_checks
33
38
 
34
39
  log = logging.getLogger(__name__)
35
40
 
41
+ # Marker for the connect-time handshake line ("BulkLcd handshake OK: PM=…",
42
+ # "HidLcd handshake OK: …", etc.). Scraped from the FULL log as a fallback
43
+ # when a live probe can't run.
44
+ _HANDSHAKE_LOG_MARKER = "handshake OK"
45
+
36
46
 
37
47
  @dataclass(frozen=True, slots=True)
38
48
  class DebugReport:
@@ -49,6 +59,7 @@ class DebugReport:
49
59
  settings_error: str = ""
50
60
  health: HealthReport = field(default_factory=HealthReport)
51
61
  log_tail: list[str] = field(default_factory=list)
62
+ handshake_log: list[str] = field(default_factory=list)
52
63
 
53
64
  def render_text(self) -> str:
54
65
  """Render the report as a single string for clipboard/file output."""
@@ -58,6 +69,9 @@ class DebugReport:
58
69
  sections.append(_render_kv("Platform", self.platform_info))
59
70
  sections.append(_render_kv("Paths", self.paths))
60
71
  sections.append(_render_devices(self.devices, self.devices_error))
72
+ handshake = _render_handshake_log(self.handshake_log)
73
+ if handshake:
74
+ sections.append(handshake)
61
75
  sections.append(_render_sensors(self.sensors, self.sensors_error))
62
76
  sections.append(_render_powercap(self.powercap))
63
77
  sections.append(_render_settings(self.settings_json, self.settings_error))
@@ -93,6 +107,7 @@ def build_debug_report(
93
107
  health = run_health_checks(platform)
94
108
  log_path = platform.paths().log_file()
95
109
  log_lines = tail_log(log_path, n_lines=log_tail_lines)
110
+ handshake_log = _scrape_handshake_lines(log_path)
96
111
 
97
112
  return DebugReport(
98
113
  timestamp=timestamp,
@@ -107,6 +122,7 @@ def build_debug_report(
107
122
  settings_error=settings_err,
108
123
  health=health,
109
124
  log_tail=log_lines,
125
+ handshake_log=handshake_log,
110
126
  )
111
127
 
112
128
 
@@ -160,17 +176,105 @@ def _collect_devices(
160
176
  rows: list[dict[str, str]] = []
161
177
  for info in infos:
162
178
  product = find_product(info.vid, info.pid)
163
- rows.append({
179
+ row = {
164
180
  "key": info.key,
165
181
  "vid": f"{info.vid:04x}",
166
182
  "pid": f"{info.pid:04x}",
167
183
  "product": product.product if product else "(unregistered)",
168
184
  "vendor": product.vendor if product else "(unregistered)",
169
185
  "wire": product.wire.value if product else "(unknown)",
170
- })
186
+ }
187
+ # Capture the live handshake so the report always carries the exact
188
+ # PM / SUB / fbl / resolution — the bytes that decide a panel's
189
+ # geometry. Without this the report only has them if the connect-time
190
+ # log line survived in the tail, which on a long session it never does.
191
+ if product is not None:
192
+ handshake = _probe_handshake(platform, product)
193
+ if handshake is not None:
194
+ row.update({f"hs_{k}": v for k, v in handshake.items()})
195
+ rows.append(row)
171
196
  return rows, ""
172
197
 
173
198
 
199
+ def _probe_handshake(
200
+ platform: Platform, product: ProductInfo,
201
+ ) -> dict[str, str] | None:
202
+ """Connect the device, capture its handshake bytes, then disconnect.
203
+
204
+ The device's PM / SUB / fbl / resolution decide its whole geometry, yet the
205
+ report otherwise loses them: the handshake fires once at connect (startup)
206
+ and its log line scrolls out of the tail on any real session. A fresh live
207
+ probe captures the exact bytes every time — this is what lets us map a new
208
+ panel (e.g. the shared ``87ad:70db`` controller) without asking the reporter
209
+ for a byte their report can't produce.
210
+
211
+ Returns None — the caller falls back to the log scrape — when the device
212
+ can't be probed: an LED segment display (no frame handshake), the GUI /
213
+ daemon already holds the device (busy), a permission error, or a handshake
214
+ failure. A diagnostic must never abort the report, so every failure is
215
+ swallowed into the fallback.
216
+ """
217
+ key = f"{product.vid:04x}:{product.pid:04x}"
218
+ log.info("_probe_handshake: %s wire=%s", key, product.wire.value)
219
+ if product.kind is not Kind.LCD:
220
+ log.info("_probe_handshake: %s is %s, not LCD — no frame handshake",
221
+ key, product.kind.value)
222
+ return None
223
+ device = None
224
+ try:
225
+ cls = DeviceFactory.for_wire(product.wire)
226
+ if product.wire is Wire.SCSI:
227
+ transport = platform.open_scsi(product.vid, product.pid)
228
+ else:
229
+ transport = platform.open_bulk(product.vid, product.pid)
230
+ device = cls(product, transport)
231
+ result = device.connect()
232
+ except (OSError, HandshakeError, TransportError, RuntimeError) as e:
233
+ log.info("_probe_handshake: %s probe failed (%s: %s) — scraping log",
234
+ key, type(e).__name__, e)
235
+ return None
236
+ finally:
237
+ if device is not None:
238
+ with contextlib.suppress(OSError, TransportError, RuntimeError):
239
+ device.disconnect()
240
+ handshake = {
241
+ "pm": str(result.pm_byte),
242
+ "sub": str(result.sub_byte),
243
+ "fbl": str(result.fbl) if result.fbl is not None else "?",
244
+ "resolution": f"{result.resolution[0]}x{result.resolution[1]}",
245
+ "raw": result.raw_response[:64].hex(),
246
+ }
247
+ log.info("_probe_handshake: %s → PM=%s SUB=%s fbl=%s resolution=%s",
248
+ key, handshake["pm"], handshake["sub"], handshake["fbl"],
249
+ handshake["resolution"])
250
+ return handshake
251
+
252
+
253
+ def _scrape_handshake_lines(log_path: Path, keep: int = 6) -> list[str]:
254
+ """The most recent ``handshake OK`` lines from the FULL log (not the tail).
255
+
256
+ The fallback for :func:`_probe_handshake`: when a live probe can't run
257
+ (the GUI holds the device), the connect-time handshake line may still be
258
+ somewhere in the log — but earlier than the tail window. Scans the whole
259
+ file keeping only the last *keep* matches, so it stays memory-bounded even
260
+ on a large log.
261
+ """
262
+ log.debug("_scrape_handshake_lines: %s (keep=%d)", log_path, keep)
263
+ if not log_path.is_file():
264
+ return []
265
+ recent: deque[str] = deque(maxlen=keep)
266
+ try:
267
+ with log_path.open("r", encoding="utf-8", errors="replace") as fh:
268
+ for line in fh:
269
+ if _HANDSHAKE_LOG_MARKER in line:
270
+ recent.append(line.rstrip("\n"))
271
+ except OSError as e:
272
+ log.debug("_scrape_handshake_lines: read failed: %s", e)
273
+ return []
274
+ log.debug("_scrape_handshake_lines: found %d line(s)", len(recent))
275
+ return list(recent)
276
+
277
+
174
278
  def _collect_sensors(
175
279
  platform: Platform,
176
280
  ) -> tuple[list[dict[str, str]], str]:
@@ -276,11 +380,29 @@ def _render_devices(rows: list[dict[str, str]], error: str) -> str:
276
380
  return f"## Devices\n Scan failed: {error}"
277
381
  if not rows:
278
382
  return "## Devices\n No supported devices detected on USB"
279
- body = "\n".join(
280
- f" {r['key']:14} {r['product']:30} wire={r['wire']}"
281
- for r in rows
282
- )
283
- return f"## Devices ({len(rows)})\n{body}"
383
+ lines: list[str] = []
384
+ for r in rows:
385
+ lines.append(f" {r['key']:14} {r['product']:30} wire={r['wire']}")
386
+ if "hs_resolution" in r:
387
+ lines.append(
388
+ f" handshake: PM={r['hs_pm']} SUB={r['hs_sub']} "
389
+ f"fbl={r['hs_fbl']} resolution={r['hs_resolution']}"
390
+ )
391
+ lines.append(f" raw[0:64]: {r['hs_raw']}")
392
+ else:
393
+ lines.append(
394
+ " handshake: (live probe unavailable — device busy or LED; "
395
+ "see Handshake-from-log below)"
396
+ )
397
+ return f"## Devices ({len(rows)})\n" + "\n".join(lines)
398
+
399
+
400
+ def _render_handshake_log(lines: list[str]) -> str:
401
+ """The scraped-from-log handshake fallback section (omitted when empty)."""
402
+ if not lines:
403
+ return ""
404
+ body = "\n".join(f" {line}" for line in lines)
405
+ return f"## Handshake (from log — fallback)\n{body}"
284
406
 
285
407
 
286
408
  def _render_sensors(rows: list[dict[str, str]], error: str) -> str:
@@ -291,12 +291,24 @@ class SysInfoConfig:
291
291
  (i, b) for i, b in enumerate(fan_panel.sensors)
292
292
  if not b.sensor_id
293
293
  ]
294
- leftover_fan_ids = sorted(
295
- r.sensor_id for r in readings
296
- if r.sensor_id.startswith("fan:")
297
- and r.sensor_id.endswith(":rpm")
298
- and r.sensor_id not in bound_fan_ids
299
- )
294
+ # Spinning fans first, dead headers last. A super-I/O chip
295
+ # exposes every fan header (fan1..fan6) whether or not a fan is
296
+ # plugged in, and label-less boards (nct6xxx etc.) give no way to
297
+ # tell which is the CPU/pump. Binding in raw id order lands the
298
+ # CPU/GPU slots on disconnected headers reading 0 RPM while the
299
+ # real fans (a water pump + radiator fans sit on arbitrary
300
+ # headers, always spinning) fall off the end — the "fans not
301
+ # reporting" bug (#145). Order by (is-idle, id) so live readings
302
+ # claim the visible slots; idle headers only backfill leftovers.
303
+ leftover_fan_ids = [
304
+ r.sensor_id for r in sorted(
305
+ (r for r in readings
306
+ if r.sensor_id.startswith("fan:")
307
+ and r.sensor_id.endswith(":rpm")
308
+ and r.sensor_id not in bound_fan_ids),
309
+ key=lambda r: ((r.value or 0.0) <= 0.0, r.sensor_id),
310
+ )
311
+ ]
300
312
  for (slot_idx, binding), fan_id in zip(
301
313
  unbound_slots, leftover_fan_ids, strict=False,
302
314
  ):
@@ -54,7 +54,7 @@ from .services.led_effects import LEDEffectEngine
54
54
  from .services.media import MediaService
55
55
  from .services.metrics_loop import MetricsLoop
56
56
  from .services.migration import LibraryMigration
57
- from .services.overlay import OverlayService
57
+ from .services.overlay import OverlayService, resolve_overlay_elements
58
58
  from .services.quickstart import QuickstartService
59
59
  from .services.settings import Settings
60
60
  from .services.slideshow import SlideshowService
@@ -413,6 +413,34 @@ class App:
413
413
  )
414
414
  return self._renderer
415
415
 
416
+ def effective_overlay_elements(self, key: str) -> list[dict]:
417
+ """The ONE overlay layout actually on screen for ``key``.
418
+
419
+ The single source every per-element operation (flash, select, edit)
420
+ must address — resolved by the same precedence the renderer uses
421
+ (user > mask > theme, each REPLACES; see
422
+ ``resolve_overlay_elements``). Addressing only the user layer was
423
+ the ``FlashOverlayElement 'N' not found`` bug: when a mask or theme
424
+ supplies the live layout the user layer is empty, so an id/index
425
+ resolved against it matched nothing on screen.
426
+ """
427
+ s = self.settings.for_device(key)
428
+ theme = self.active_themes.get(key)
429
+ theme_config = theme.config if theme is not None else {}
430
+ elements = resolve_overlay_elements(
431
+ theme_config, s.mask_overlay_elements, s.user_overlay_elements,
432
+ )
433
+ log.debug(
434
+ "effective_overlay_elements: key=%s → %d element(s) "
435
+ "[theme=%d mask=%s user=%d]",
436
+ key, len(elements),
437
+ len(theme_config.get("elements") or []),
438
+ None if s.mask_overlay_elements is None
439
+ else len(s.mask_overlay_elements),
440
+ len(s.user_overlay_elements),
441
+ )
442
+ return elements
443
+
416
444
  # ── Device lifecycle ──────────────────────────────────────────────
417
445
 
418
446
  def attach(self, vid: int, pid: int) -> Device:
@@ -498,6 +526,16 @@ class App:
498
526
  self.metrics_loop.stop()
499
527
  self.led_animation_loop.stop()
500
528
  self.stop_hotplug()
529
+ # Blank every panel before releasing it so it goes dark on shutdown
530
+ # instead of holding its last frame lit (#143). Best-effort: the
531
+ # Command swallows a mid-unplug send, and any unexpected error here
532
+ # must not block device release below.
533
+ from .core.commands import SleepDevice
534
+ for key in list(self.devices):
535
+ try:
536
+ self.dispatch(SleepDevice(key=key))
537
+ except Exception:
538
+ log.exception("close: SleepDevice raised for %s", key)
501
539
  for key in list(self.devices):
502
540
  self.detach(key)
503
541
  self._send_scheduler.shutdown()
@@ -19,6 +19,7 @@ from .device import (
19
19
  DisconnectDevice,
20
20
  DiscoverDevices,
21
21
  EnableOverlay,
22
+ EnsureConnected,
22
23
  FlashOverlayElement,
23
24
  LcdSnapshot,
24
25
  LoopVideo,
@@ -42,6 +43,7 @@ from .device import (
42
43
  SetOverlayBackground,
43
44
  SetOverlayConfig,
44
45
  SetSplitMode,
46
+ SleepDevice,
45
47
  StartScreencast,
46
48
  StopScreencast,
47
49
  StopVideo,
@@ -147,6 +149,7 @@ __all__ = [
147
149
  "EnableAutostart",
148
150
  "EnableLedTestMode",
149
151
  "EnableOverlay",
152
+ "EnsureConnected",
150
153
  "EnsureDataDownload",
151
154
  "ExportConfig",
152
155
  "ExportDcTheme",
@@ -234,6 +237,7 @@ __all__ = [
234
237
  "SetTempUnit",
235
238
  "SetTimeFormat",
236
239
  "SetWeekStart",
240
+ "SleepDevice",
237
241
  "StartScreencast",
238
242
  "StopScreencast",
239
243
  "StopVideo",
@@ -236,6 +236,34 @@ class ConnectDevice(Command[ConnectResult]):
236
236
  )
237
237
 
238
238
 
239
+ @dataclass(frozen=True, slots=True)
240
+ class EnsureConnected(Command[ConnectResult]):
241
+ """Bring *key* up for a wire command only if it isn't already connected.
242
+
243
+ The idempotent counterpart to :class:`ConnectDevice`. A stateless CLI
244
+ process holds no attached devices, so a wire command (``color``, ``play``,
245
+ ``load-theme`` …) dispatched from a fresh process would fail with "not
246
+ connected". This attaches + handshakes once; when a daemon/GUI already
247
+ holds the device it is a pure no-op — unlike ``ConnectDevice`` it never
248
+ rebuilds the transport or re-handshakes a live device, so it is safe to
249
+ call before every wire command and once before a render/play loop without
250
+ disrupting an active stream. (``ConnectDevice`` keeps its always-handshake
251
+ contract for the reconnect / dev-console inject-reply paths.)
252
+ """
253
+ key: str
254
+
255
+ def execute(self, app: App) -> ConnectResult:
256
+ existing = app.devices.get(self.key)
257
+ if existing is not None and existing.is_connected:
258
+ log.debug("EnsureConnected %s: already connected — no-op", self.key)
259
+ return ConnectResult(
260
+ ok=True, key=self.key,
261
+ message=f"{self.key} already connected",
262
+ )
263
+ log.info("EnsureConnected %s: not connected — attaching", self.key)
264
+ return app.dispatch(ConnectDevice(key=self.key))
265
+
266
+
239
267
  @dataclass(frozen=True, slots=True)
240
268
  class DeviceConnectionIssues(Command[ConnectionIssuesResult]):
241
269
  """Query devices that were found but failed to connect (with per-OS hints).
@@ -357,6 +385,44 @@ class SendColor(Command[SendResult]):
357
385
  if ok else "Send returned False"),
358
386
  )
359
387
 
388
+ @dataclass(frozen=True, slots=True)
389
+ class SleepDevice(Command[SendResult]):
390
+ """Blank a connected panel so it goes dark on shutdown / quit (#143).
391
+
392
+ The unified "turn the screen off" action every surface dispatches — the
393
+ GUI/daemon shutdown hook (``App.close``), ``trcc display sleep`` (CLI),
394
+ and the ``/sleep`` API route all send this one Command. Mirrors the C#
395
+ exit path (stop streaming + close the device) but adds an explicit dark
396
+ frame first, so the panel visibly clears instead of holding its last
397
+ image until the firmware idle-sleeps.
398
+
399
+ Composes the existing wire paths rather than duplicating them: LCD →
400
+ :class:`SendColor` (a solid-black frame via
401
+ ``DisplayService.build_solid_color_frame``); LED → :class:`SetLedColors`
402
+ with ``global_on=False`` (an all-off payload). Best-effort by design —
403
+ a device mid-unplug returns ``ok=False`` instead of raising, so it can
404
+ never abort ``App.close`` mid-shutdown.
405
+ """
406
+ key: str
407
+
408
+ def execute(self, app: App) -> SendResult:
409
+ log.info("SleepDevice: key=%s", self.key)
410
+ device = app.devices.get(self.key)
411
+ if device is None or not device.is_connected:
412
+ log.info("SleepDevice %s: not connected — nothing to blank",
413
+ self.key)
414
+ return SendResult(ok=False, key=self.key, bytes_sent=0,
415
+ message=f"{self.key} not connected")
416
+ if device.is_led:
417
+ from .led import SetLedColors
418
+ result = SetLedColors(
419
+ key=self.key, colors=[(0, 0, 0)], global_on=False,
420
+ ).execute(app)
421
+ return SendResult(ok=result.ok, key=self.key, bytes_sent=0,
422
+ message=result.message)
423
+ return SendColor(key=self.key, r=0, g=0, b=0).execute(app)
424
+
425
+
360
426
  @dataclass(frozen=True, slots=True)
361
427
  class SendImage(Command[SendResult]):
362
428
  """Push an image file to the LCD without staging it as a theme.
@@ -1535,16 +1601,20 @@ class FlashOverlayElement(Command[OverlayElementResult]):
1535
1601
  duration_ms: int = 1500
1536
1602
 
1537
1603
  def execute(self, app: App) -> OverlayElementResult:
1538
- elements = app.settings.for_device(self.key).user_overlay_elements
1539
- for e in elements:
1540
- if e.id == self.element_id:
1604
+ # Resolve against the EFFECTIVE layout on screen (user > mask >
1605
+ # theme), not just the user layer — a mask/theme supplies the live
1606
+ # elements while the user layer is empty, so a user-only lookup
1607
+ # never matched them (the "element 'N' not found" flash bug).
1608
+ for e in app.effective_overlay_elements(self.key):
1609
+ if e.get("id") == self.element_id:
1541
1610
  app.events.publish(OverlayChanged(
1542
1611
  key=self.key, enabled=True,
1543
1612
  flash_element_id=self.element_id,
1544
1613
  flash_duration_ms=self.duration_ms,
1545
1614
  ))
1546
1615
  return OverlayElementResult(
1547
- ok=True, key=self.key, element=_element_to_entry(e),
1616
+ ok=True, key=self.key,
1617
+ element=_element_to_entry(OverlayElement.from_dict(e)),
1548
1618
  message=f"Flashing overlay element {self.element_id} "
1549
1619
  f"for {self.duration_ms}ms",
1550
1620
  )
@@ -322,3 +322,35 @@ def wire_rotation(profile: DeviceProfile, orientation: int, pm: int = 0) -> int:
322
322
  log.debug("wire_rotation: %dx%d jpeg=%s pm=%d base=%d orient=%d → %d°",
323
323
  w, h, profile.jpeg, pm, base, orientation, angle)
324
324
  return angle
325
+
326
+
327
+ def wire_angle(
328
+ profile: DeviceProfile, orientation: int, portrait_content: bool,
329
+ ) -> int:
330
+ """The single wire-frame rotation a device gets at a user *orientation*.
331
+
332
+ Collapses ``DisplayService.build_frame``'s three-way selection into one
333
+ pure decision so the render path and any auditor share it (DRY):
334
+
335
+ * non-widescreen rotate panels → :func:`wire_rotation` (``base − orient``)
336
+ * widescreen JPEG rotate panels → :func:`resolve_encode_angle` (the
337
+ hardware-verified #169 per-resolution encode table)
338
+ * squares / non-rotate panels → user orientation only (``360 − orient``)
339
+
340
+ A portrait-content theme on a rotate panel is pre-rotated at compose time
341
+ (``post_rotate``) and opts out by passing ``portrait_content=True``.
342
+ """
343
+ wire_rotate_panel = (
344
+ profile.rotate and not portrait_content and not profile.widescreen
345
+ )
346
+ fold_into_encode = (
347
+ profile.rotate and not portrait_content
348
+ and profile.widescreen and profile.jpeg
349
+ )
350
+ if wire_rotate_panel:
351
+ return wire_rotation(profile, orientation)
352
+ if fold_into_encode:
353
+ return resolve_encode_angle(profile, orientation)
354
+ if orientation and not portrait_content:
355
+ return (360 - orientation) % 360
356
+ return 0
@@ -51,8 +51,11 @@ ALL_DEVICES: dict[tuple[int, int], ProductInfo] = {
51
51
  vid=0x0416, pid=0x5406,
52
52
  vendor="Winbond",
53
53
  product="LCD Display",
54
- wire=Wire.SCSI, kind=Kind.LCD,
55
- device_type=1, fbl=100,
54
+ # Elite Vision 360 ARGB (#212): enumerates vendor-specific with two BULK
55
+ # endpoints, never a /dev/sg* node — it is a BULK device, not SCSI. Its
56
+ # PM/resolution table already lives in _BULK_VARIANTS (variants.py).
57
+ wire=Wire.BULK, kind=Kind.LCD,
58
+ device_type=4, fbl=100,
56
59
  native_resolution=(320, 320),
57
60
  orientations=(0, 90, 180, 270),
58
61
  ),
@@ -44,26 +44,27 @@ _MODE_DATE = 3
44
44
  _MODE_CUSTOM = 4
45
45
 
46
46
 
47
- # Metric VALUE slots render the BARE INTEGER never the unit. The Windows
48
- # app strips the unit off every sensor value before drawing it on the panel
49
- # (TRCC.cs: val.Replace("℃"/"℉"/"MHz"/"%"/"RPM","")Convert.ToInt32 →
50
- # DrawString) because the unit is part of the theme's background artwork, not
51
- # the overlay. Baking "°C"/"%"/"MHz" into the format double-prints the unit
52
- # on top of the baked-in glyph (#150/#203 diagnosis). Label slots keep their
53
- # text; only the value slots are bare.
47
+ # Metric VALUE slots carry their unit in the format so it renders DYNAMICALLY
48
+ # matching the C# flag-template reader (case 220), which sets every value
49
+ # element's ``myModeSub = 1`` ``UCXiTongXianShiSubTimer`` draws number + unit.
50
+ # The unit is our decorator (``_draw_metric`` swaps °C→°F on the global toggle
51
+ # and button0 can hide it), NOT a baked glyph: a baked "°C" is static and reads
52
+ # wrong the moment the user picks Fahrenheit, so the unit must be drawn. (The
53
+ # earlier #150/#203 "render bare" was wrong for these masks — the art's unit
54
+ # glyph is decoration; the functional unit is drawn, per the C#.)
54
55
  _SLOT_MAP: list[tuple[str, str | None, str, str]] = [
55
56
  ("custom_text", None, "", ""),
56
- ("cpu_temp", "cpu:temp", "CPU", "{value:.0f}"),
57
+ ("cpu_temp", "cpu:temp", "CPU", "{value:.0f}°C"),
57
58
  ("cpu_temp_label", None, "CPU", ""),
58
- ("cpu_freq", "cpu:freq", "CPU", "{value:.0f}"),
59
+ ("cpu_freq", "cpu:freq", "CPU", "{value:.0f} MHz"),
59
60
  ("cpu_freq_label", None, "CPU", ""),
60
- ("cpu_usage", "cpu:usage", "CPU", "{value:.0f}"),
61
+ ("cpu_usage", "cpu:usage", "CPU", "{value:.0f}%"),
61
62
  ("cpu_usage_label", None, "CPU", ""),
62
- ("gpu_temp", "gpu:primary:temp", "GPU", "{value:.0f}"),
63
+ ("gpu_temp", "gpu:primary:temp", "GPU", "{value:.0f}°C"),
63
64
  ("gpu_temp_label", None, "GPU", ""),
64
- ("gpu_clock", "gpu:primary:clock","GPU", "{value:.0f}"),
65
+ ("gpu_clock", "gpu:primary:clock","GPU", "{value:.0f} MHz"),
65
66
  ("gpu_clock_label", None, "GPU", ""),
66
- ("gpu_usage", "gpu:primary:usage","GPU", "{value:.0f}"),
67
+ ("gpu_usage", "gpu:primary:usage","GPU", "{value:.0f}%"),
67
68
  ("gpu_usage_label", None, "GPU", ""),
68
69
  ]
69
70
 
@@ -37,8 +37,7 @@ from ..core.ports import Renderer
37
37
  from ..core.protocol import (
38
38
  DeviceProfile,
39
39
  get_profile,
40
- resolve_encode_angle,
41
- wire_rotation,
40
+ wire_angle,
42
41
  )
43
42
  from ._clock import compute_clock
44
43
  from .media import MediaService
@@ -382,26 +381,9 @@ class DisplayService:
382
381
  # the per-resolution encode TABLE (resolve_encode_angle) — the
383
382
  # hardware-verified #169 path, unchanged.
384
383
  # * Squares + non-rotate panels: user orientation only.
385
- wire_rotate_panel = (
386
- resolved_profile.rotate and not portrait
387
- and not resolved_profile.widescreen
388
- )
389
- fold_into_encode = (
390
- resolved_profile.rotate and not portrait
391
- and resolved_profile.widescreen and resolved_profile.jpeg
392
- )
393
- if wire_rotate_panel:
394
- angle = wire_rotation(resolved_profile, s.orientation)
395
- elif fold_into_encode:
396
- angle = resolve_encode_angle(resolved_profile, s.orientation)
397
- elif s.orientation and not portrait:
398
- angle = 360 - s.orientation
399
- else:
400
- angle = 0
384
+ angle = wire_angle(resolved_profile, s.orientation, portrait)
401
385
  if angle % 360:
402
- log.debug("build_frame %s: wire rotate %d° "
403
- "(wire_panel=%s widescreen=%s)",
404
- info.key, angle, wire_rotate_panel, fold_into_encode)
386
+ log.debug("build_frame %s: wire rotate %d°", info.key, angle)
405
387
  surface = self._r.rotate(composite, angle)
406
388
  else:
407
389
  surface = composite
@@ -49,6 +49,7 @@ from ...core.commands import (
49
49
  SetOverlayConfig,
50
50
  SetSlideshow,
51
51
  SetSplitMode,
52
+ SleepDevice,
52
53
  StartScreencast,
53
54
  StopScreencast,
54
55
  StopVideo,
@@ -768,6 +769,19 @@ def send_color(key: str, body: ColorRequest, request: Request) -> SendResponse:
768
769
  return to_send_response(result)
769
770
 
770
771
 
772
+ @router.post("/sleep", response_model=SendResponse)
773
+ def sleep(key: str, request: Request) -> SendResponse:
774
+ """Blank the panel so it goes dark — the shutdown / turn-off action.
775
+
776
+ Sends a solid-black frame (LCD) or an all-off payload (LED), the same
777
+ Command the GUI + daemon fire at PC shutdown.
778
+ """
779
+ log.info("api POST /devices/{key}/display/sleep: key=%s", key)
780
+ result = request.app.state.trcc.dispatch(SleepDevice(key=key))
781
+ http_error_if_failed(result)
782
+ return to_send_response(result)
783
+
784
+
771
785
  @router.post("/reset", response_model=SendResponse)
772
786
  def reset(key: str, request: Request) -> SendResponse:
773
787
  """Reset the display — stop any active video, then send a solid red frame.