trcc-linux 9.8.7__tar.gz → 9.8.8__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 (1026) hide show
  1. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/PKG-INFO +8 -7
  2. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/README.md +7 -6
  3. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/pyproject.toml +1 -1
  4. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/__version__.py +1 -1
  5. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/adapters/device/led.py +27 -11
  6. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/core/commands/device.py +21 -10
  7. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/core/geometry.py +17 -13
  8. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/core/led_models.py +12 -0
  9. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/core/led_protocol.py +62 -0
  10. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/core/models.py +1 -0
  11. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/core/protocol.py +10 -4
  12. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/services/led_segment.py +87 -0
  13. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/lcd_handler.py +49 -2
  14. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/uc_led_control.py +3 -1
  15. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/uc_screen_led.py +31 -0
  16. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/presentation/led_display.py +2 -0
  17. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/presentation/theme_directories.py +27 -0
  18. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/test_display_rotation.py +94 -18
  19. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/test_geometry.py +13 -11
  20. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/test_led_pm_registry.py +113 -0
  21. trcc_linux-9.8.8/tests/test_led_segment.py +119 -0
  22. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/test_widescreen_rotation.py +17 -3
  23. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/ui/presentation/test_theme_directories.py +58 -0
  24. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/.gitignore +0 -0
  25. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/LICENSE +0 -0
  26. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/__init__.py +0 -0
  27. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/__main__.py +0 -0
  28. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/_boot.py +0 -0
  29. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/_entry.py +0 -0
  30. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/adapters/__init__.py +0 -0
  31. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/adapters/device/__init__.py +0 -0
  32. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/adapters/device/_pyusb_find.py +0 -0
  33. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/adapters/device/ali_lcd.py +0 -0
  34. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/adapters/device/bulk_lcd.py +0 -0
  35. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/adapters/device/hid_lcd.py +0 -0
  36. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/adapters/device/ly_lcd.py +0 -0
  37. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/adapters/device/scsi_lcd.py +0 -0
  38. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/adapters/device/transport.py +0 -0
  39. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/adapters/device/usb_bot_scsi.py +0 -0
  40. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/adapters/diagnostics/__init__.py +0 -0
  41. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/adapters/diagnostics/adapter.py +0 -0
  42. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/adapters/diagnostics/debug_report.py +0 -0
  43. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/adapters/diagnostics/doctor.py +0 -0
  44. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/adapters/diagnostics/health.py +0 -0
  45. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/adapters/infra/__init__.py +0 -0
  46. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/adapters/infra/logging.py +0 -0
  47. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/adapters/infra/network.py +0 -0
  48. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/adapters/infra/send_scheduler.py +0 -0
  49. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/adapters/infra/sysinfo_config.py +0 -0
  50. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/adapters/render/__init__.py +0 -0
  51. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/adapters/render/qt.py +0 -0
  52. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/adapters/repo/__init__.py +0 -0
  53. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/adapters/repo/data_install.py +0 -0
  54. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/adapters/repo/github_releases.py +0 -0
  55. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/adapters/repo/http.py +0 -0
  56. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/adapters/screencast/__init__.py +0 -0
  57. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/adapters/screencast/qt.py +0 -0
  58. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/adapters/sensors/__init__.py +0 -0
  59. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/adapters/sensors/_hwinfo.py +0 -0
  60. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/adapters/sensors/_lhm.py +0 -0
  61. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/adapters/sensors/_macos_hid.py +0 -0
  62. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/adapters/sensors/_msacpi.py +0 -0
  63. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/adapters/sensors/_powermetrics.py +0 -0
  64. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/adapters/sensors/_smc.py +0 -0
  65. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/adapters/sensors/_sysctl.py +0 -0
  66. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/adapters/sensors/_wmi_gpu.py +0 -0
  67. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/adapters/sensors/aggregator.py +0 -0
  68. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/adapters/sensors/bsd.py +0 -0
  69. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/adapters/sensors/chain.py +0 -0
  70. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/adapters/sensors/gpu_detect.py +0 -0
  71. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/adapters/sensors/hwmon.py +0 -0
  72. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/adapters/sensors/macos.py +0 -0
  73. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/adapters/sensors/nvml.py +0 -0
  74. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/adapters/sensors/psutil_sources.py +0 -0
  75. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/adapters/sensors/windows.py +0 -0
  76. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/adapters/system/__init__.py +0 -0
  77. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/adapters/system/_autostart.py +0 -0
  78. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/adapters/system/_devd.py +0 -0
  79. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/adapters/system/_elevate.py +0 -0
  80. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/adapters/system/_hotplug.py +0 -0
  81. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/adapters/system/_imc_timings.py +0 -0
  82. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/adapters/system/_macos_setup.py +0 -0
  83. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/adapters/system/_selinux.py +0 -0
  84. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/adapters/system/_udev.py +0 -0
  85. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/adapters/system/_windows_wmi.py +0 -0
  86. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/adapters/system/_winusb.py +0 -0
  87. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/adapters/system/bsd.py +0 -0
  88. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/adapters/system/linux.py +0 -0
  89. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/adapters/system/macos.py +0 -0
  90. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/adapters/system/spd.py +0 -0
  91. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/adapters/system/windows.py +0 -0
  92. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/adapters/theme/__init__.py +0 -0
  93. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/adapters/theme/cloud.py +0 -0
  94. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/app.py +0 -0
  95. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/assets/LibreHardwareMonitor.config +0 -0
  96. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/assets/com.github.lexonight1.trcc.policy +0 -0
  97. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/assets/fonts/MSYH.TTC +0 -0
  98. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/assets/fonts/MSYHBD.TTC +0 -0
  99. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/assets/fonts/README.md +0 -0
  100. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/assets/icons/app.ico +0 -0
  101. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/assets/icons/trcc.png +0 -0
  102. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/assets/icons/trcc_128x128.png +0 -0
  103. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/assets/icons/trcc_16x16.png +0 -0
  104. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/assets/icons/trcc_24x24.png +0 -0
  105. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/assets/icons/trcc_256x256.png +0 -0
  106. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/assets/icons/trcc_32x32.png +0 -0
  107. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/assets/icons/trcc_48x48.png +0 -0
  108. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/assets/icons/trcc_64x64.png +0 -0
  109. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/assets/trcc-imc +0 -0
  110. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/assets/trcc-linux.desktop +0 -0
  111. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/assets/trcc-quirk-fix.service +0 -0
  112. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/core/__init__.py +0 -0
  113. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/core/_colors.py +0 -0
  114. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/core/_safe.py +0 -0
  115. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/core/_version.py +0 -0
  116. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/core/commands/__init__.py +0 -0
  117. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/core/commands/_base.py +0 -0
  118. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/core/commands/_helpers.py +0 -0
  119. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/core/commands/led.py +0 -0
  120. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/core/commands/system.py +0 -0
  121. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/core/commands/theme.py +0 -0
  122. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/core/device_recovery.py +0 -0
  123. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/core/diagnostics.py +0 -0
  124. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/core/errors.py +0 -0
  125. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/core/events.py +0 -0
  126. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/core/i18n.py +0 -0
  127. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/core/ports.py +0 -0
  128. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/core/registry.py +0 -0
  129. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/core/results.py +0 -0
  130. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/core/variants.py +0 -0
  131. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/daemon.py +0 -0
  132. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/data/trcc_usb.te +0 -0
  133. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ipc.py +0 -0
  134. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/proxy.py +0 -0
  135. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/services/__init__.py +0 -0
  136. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/services/_ansi.py +0 -0
  137. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/services/_clock.py +0 -0
  138. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/services/_dc.py +0 -0
  139. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/services/audio.py +0 -0
  140. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/services/cloud_theme.py +0 -0
  141. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/services/data_install.py +0 -0
  142. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/services/device_sender.py +0 -0
  143. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/services/display.py +0 -0
  144. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/services/first_run.py +0 -0
  145. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/services/led_animation_loop.py +0 -0
  146. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/services/led_effects.py +0 -0
  147. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/services/media.py +0 -0
  148. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/services/metrics_loop.py +0 -0
  149. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/services/metrics_personalize.py +0 -0
  150. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/services/migration.py +0 -0
  151. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/services/overlay.py +0 -0
  152. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/services/quickstart.py +0 -0
  153. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/services/settings.py +0 -0
  154. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/services/slideshow.py +0 -0
  155. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/services/theme.py +0 -0
  156. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/services/video_cache.py +0 -0
  157. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/services/video_export.py +0 -0
  158. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/__init__.py +0 -0
  159. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/_errors.py +0 -0
  160. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/api/__init__.py +0 -0
  161. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/api/_shared.py +0 -0
  162. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/api/config.py +0 -0
  163. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/api/devices.py +0 -0
  164. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/api/display.py +0 -0
  165. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/api/led.py +0 -0
  166. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/api/main.py +0 -0
  167. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/api/schemas.py +0 -0
  168. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/api/system.py +0 -0
  169. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/api/theme.py +0 -0
  170. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/api/trcc.py +0 -0
  171. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/cli/__init__.py +0 -0
  172. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/cli/_ctx.py +0 -0
  173. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/cli/config.py +0 -0
  174. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/cli/device.py +0 -0
  175. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/cli/display.py +0 -0
  176. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/cli/led.py +0 -0
  177. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/cli/main.py +0 -0
  178. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/cli/shell.py +0 -0
  179. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/cli/system.py +0 -0
  180. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/cli/theme.py +0 -0
  181. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/__init__.py +0 -0
  182. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/_ui_state.py +0 -0
  183. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/240240.gif +0 -0
  184. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/240320.gif +0 -0
  185. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/320240.gif +0 -0
  186. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/320320.gif +0 -0
  187. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1AK120 Digital.png +0 -0
  188. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1AK120 Digitala.png +0 -0
  189. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1AK120_Digital.png +0 -0
  190. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1AK120_Digitala.png +0 -0
  191. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1AS120 VISION.png +0 -0
  192. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1AS120 VISIONa.png +0 -0
  193. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1AS120_VISION.png +0 -0
  194. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1AS120_VISIONa.png +0 -0
  195. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1AX120 DIGITAL.png +0 -0
  196. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1AX120 DIGITALa.png +0 -0
  197. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1AX120_DIGITAL.png +0 -0
  198. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1AX120_DIGITALa.png +0 -0
  199. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1BA120 VISION.png +0 -0
  200. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1BA120 VISIONa.png +0 -0
  201. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1BA120_VISION.png +0 -0
  202. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1BA120_VISIONa.png +0 -0
  203. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1CORE VISION.png +0 -0
  204. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1CORE VISIONa.png +0 -0
  205. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1CORE_VISION.png +0 -0
  206. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1CORE_VISIONa.png +0 -0
  207. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1CZ1.png +0 -0
  208. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1CZ1a.png +0 -0
  209. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1CZ2.png +0 -0
  210. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1CZ2a.png +0 -0
  211. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1CZTV.png +0 -0
  212. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1CZTVa.png +0 -0
  213. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1ELITE VISION.png +0 -0
  214. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1ELITE VISIONa.png +0 -0
  215. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1ELITE_VISION.png +0 -0
  216. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1ELITE_VISIONa.png +0 -0
  217. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1FROZEN HORIZON PRO.png +0 -0
  218. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1FROZEN HORIZON PROa.png +0 -0
  219. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1FROZEN MAGIC PRO.png +0 -0
  220. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1FROZEN MAGIC PROa.png +0 -0
  221. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1FROZEN VISION V2.png +0 -0
  222. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1FROZEN VISION V2a.png +0 -0
  223. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1FROZEN WARFRAME PRO.png +0 -0
  224. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1FROZEN WARFRAME PROa.png +0 -0
  225. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1FROZEN WARFRAME SE.png +0 -0
  226. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1FROZEN WARFRAME SEa.png +0 -0
  227. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1FROZEN WARFRAME.png +0 -0
  228. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1FROZEN WARFRAMEa.png +0 -0
  229. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1FROZEN_HORIZON_PRO.png +0 -0
  230. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1FROZEN_HORIZON_PROa.png +0 -0
  231. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1FROZEN_MAGIC_PRO.png +0 -0
  232. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1FROZEN_MAGIC_PROa.png +0 -0
  233. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1FROZEN_VISION_V2.png +0 -0
  234. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1FROZEN_VISION_V2a.png +0 -0
  235. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1FROZEN_WARFRAME.png +0 -0
  236. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1FROZEN_WARFRAME_PRO.png +0 -0
  237. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1FROZEN_WARFRAME_PROa.png +0 -0
  238. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1FROZEN_WARFRAME_SE.png +0 -0
  239. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1FROZEN_WARFRAME_SEa.png +0 -0
  240. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1FROZEN_WARFRAMEa.png +0 -0
  241. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1GRAND VISION.png +0 -0
  242. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1GRAND VISIONa.png +0 -0
  243. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1GRAND_VISION.png +0 -0
  244. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1GRAND_VISIONa.png +0 -0
  245. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1HR10 2280 PRO DIGITAL.png +0 -0
  246. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1HR10 2280 PRO DIGITALa.png +0 -0
  247. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1HYPER VISION.png +0 -0
  248. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1HYPER VISIONa.png +0 -0
  249. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1HYPER_VISION.png +0 -0
  250. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1HYPER_VISIONa.png +0 -0
  251. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1KVMALEDC6.png +0 -0
  252. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1KVMALEDC6a.png +0 -0
  253. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1LC1.png +0 -0
  254. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1LC10.png +0 -0
  255. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1LC10a.png +0 -0
  256. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1LC13.png +0 -0
  257. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1LC13a.png +0 -0
  258. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1LC15.png +0 -0
  259. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1LC15a.png +0 -0
  260. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1LC1a.png +0 -0
  261. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1LC2.png +0 -0
  262. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1LC2JD.png +0 -0
  263. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1LC2JDa.png +0 -0
  264. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1LC2a.png +0 -0
  265. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1LC3.png +0 -0
  266. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1LC3a.png +0 -0
  267. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1LC5.png +0 -0
  268. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1LC5a.png +0 -0
  269. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1LC7.png +0 -0
  270. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1LC7a.png +0 -0
  271. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1LC8.png +0 -0
  272. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1LC8a.png +0 -0
  273. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1LC9.png +0 -0
  274. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1LC9a.png +0 -0
  275. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1LD10.png +0 -0
  276. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1LD10a.png +0 -0
  277. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1LD11.png +0 -0
  278. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1LD11a.png +0 -0
  279. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1LD6.png +0 -0
  280. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1LD6a.png +0 -0
  281. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1LD7.png +0 -0
  282. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1LD7a.png +0 -0
  283. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1LD8.png +0 -0
  284. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1LD8a.png +0 -0
  285. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1LD9.png +0 -0
  286. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1LD9a.png +0 -0
  287. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1LF014.png +0 -0
  288. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1LF014a.png +0 -0
  289. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1LF10.png +0 -0
  290. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1LF10V.png +0 -0
  291. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1LF10Va.png +0 -0
  292. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1LF10a.png +0 -0
  293. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1LF11.png +0 -0
  294. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1LF11a.png +0 -0
  295. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1LF12.png +0 -0
  296. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1LF12a.png +0 -0
  297. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1LF13.png +0 -0
  298. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1LF13a.png +0 -0
  299. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1LF14.png +0 -0
  300. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1LF14a.png +0 -0
  301. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1LF15.png +0 -0
  302. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1LF15a.png +0 -0
  303. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1LF16.png +0 -0
  304. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1LF167.png +0 -0
  305. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1LF16a.png +0 -0
  306. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1LF17a.png +0 -0
  307. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1LF18.png +0 -0
  308. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1LF18a.png +0 -0
  309. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1LF19.png +0 -0
  310. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1LF19a.png +0 -0
  311. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1LF20.png +0 -0
  312. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1LF20a.png +0 -0
  313. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1LF21.png +0 -0
  314. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1LF21a.png +0 -0
  315. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1LF22.png +0 -0
  316. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1LF22a.png +0 -0
  317. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1LF25.png +0 -0
  318. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1LF25a.png +0 -0
  319. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1LF8.png +0 -0
  320. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1LF8a.png +0 -0
  321. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1LM16SE.png +0 -0
  322. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1LM16SEa.png +0 -0
  323. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1LM19SE.png +0 -0
  324. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1LM19SEa.png +0 -0
  325. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1LM22.png +0 -0
  326. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1LM22a.png +0 -0
  327. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1LM24.png +0 -0
  328. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1LM24a.png +0 -0
  329. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1LM26.png +0 -0
  330. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1LM26a.png +0 -0
  331. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1LM27.png +0 -0
  332. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1LM27a.png +0 -0
  333. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1LM30.png +0 -0
  334. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1LM30a.png +0 -0
  335. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1Mjolnir VISION PRO.png +0 -0
  336. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1Mjolnir VISION PROa.png +0 -0
  337. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1Mjolnir VISION.png +0 -0
  338. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1Mjolnir VISIONa.png +0 -0
  339. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1Mjolnir_VISION.png +0 -0
  340. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1Mjolnir_VISION_PRO.png +0 -0
  341. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1Mjolnir_VISION_PROa.png +0 -0
  342. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1Mjolnir_VISIONa.png +0 -0
  343. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1PA120 DIGITAL.png +0 -0
  344. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1PA120 DIGITALa.png +0 -0
  345. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1PA120_DIGITAL.png +0 -0
  346. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1PA120_DIGITALa.png +0 -0
  347. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1PC1.png +0 -0
  348. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1PC1a.png +0 -0
  349. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1RK120 DIGITAL.png +0 -0
  350. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1RK120 DIGITALa.png +0 -0
  351. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1RK120_DIGITAL.png +0 -0
  352. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1RK120_DIGITALa.png +0 -0
  353. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1RP130 VISION.png +0 -0
  354. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1RP130 VISIONa.png +0 -0
  355. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1RP130_VISION.png +0 -0
  356. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1RP130_VISIONa.png +0 -0
  357. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1RX1.png +0 -0
  358. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1RX1a.png +0 -0
  359. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1Stream Vision.png +0 -0
  360. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1Stream Visiona.png +0 -0
  361. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1Stream_Vision.png +0 -0
  362. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/A1Stream_Visiona.png +0 -0
  363. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/about_dropdown.png +0 -0
  364. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/about_dropdown_bg.png +0 -0
  365. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/about_dropdown_select.png +0 -0
  366. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/about_update.png +0 -0
  367. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/about_update_overlay.png +0 -0
  368. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/app_about_bg.png +0 -0
  369. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/app_brightness_0.png +0 -0
  370. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/app_brightness_1.png +0 -0
  371. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/app_brightness_2.png +0 -0
  372. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/app_brightness_3.png +0 -0
  373. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/app_export.png +0 -0
  374. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/app_form_bg.png +0 -0
  375. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/app_help.png +0 -0
  376. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/app_import.png +0 -0
  377. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/app_main_bg.png +0 -0
  378. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/app_power.png +0 -0
  379. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/app_power_hover.png +0 -0
  380. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/app_save.png +0 -0
  381. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/app_sysinfo_bg.png +0 -0
  382. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/app_tab_cloud.png +0 -0
  383. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/app_tab_cloud_active.png +0 -0
  384. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/app_tab_local.png +0 -0
  385. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/app_tab_local_active.png +0 -0
  386. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/app_tab_mask.png +0 -0
  387. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/app_tab_mask_active.png +0 -0
  388. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/app_tab_mask_lower.png +0 -0
  389. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/app_tab_settings.png +0 -0
  390. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/app_tab_settings_active.png +0 -0
  391. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/app_theme_base_bg.png +0 -0
  392. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/app_theme_gallery_bg.png +0 -0
  393. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/app_theme_settings_bg.png +0 -0
  394. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/carousel_1.png +0 -0
  395. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/carousel_2.png +0 -0
  396. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/carousel_3.png +0 -0
  397. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/carousel_4.png +0 -0
  398. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/carousel_5.png +0 -0
  399. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/carousel_6.png +0 -0
  400. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/carousel_btn.png +0 -0
  401. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/carousel_btn_active.png +0 -0
  402. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/carousel_select_frame.png +0 -0
  403. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/color_panel_eyedropper.png +0 -0
  404. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/color_panel_picker.png +0 -0
  405. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/color_panel_selector_ring.png +0 -0
  406. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/color_panel_slider_thumb.png +0 -0
  407. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/color_wheel_knob.png +0 -0
  408. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/color_wheel_knob_0.png +0 -0
  409. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/color_wheel_toggle_hover.png +0 -0
  410. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/color_wheel_toggle_off.png +0 -0
  411. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/color_wheel_toggle_on.png +0 -0
  412. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/display_mode_12h.png +0 -0
  413. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/display_mode_24h.png +0 -0
  414. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/display_mode_border.png +0 -0
  415. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/display_mode_border_active.png +0 -0
  416. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/display_mode_crop.png +0 -0
  417. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/display_mode_date_dm.png +0 -0
  418. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/display_mode_date_dmy.png +0 -0
  419. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/display_mode_date_md.png +0 -0
  420. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/display_mode_date_ymd.png +0 -0
  421. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/display_mode_digit_font.png +0 -0
  422. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/display_mode_fit_height.png +0 -0
  423. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/display_mode_fit_width.png +0 -0
  424. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/display_mode_function.png +0 -0
  425. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/display_mode_function_active.png +0 -0
  426. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/display_mode_icon.png +0 -0
  427. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/display_mode_icon_gif.png +0 -0
  428. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/display_mode_icon_image.png +0 -0
  429. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/display_mode_icon_livestream.png +0 -0
  430. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/display_mode_icon_mask.png +0 -0
  431. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/display_mode_icon_network.png +0 -0
  432. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/display_mode_icon_video.png +0 -0
  433. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/display_mode_m1.png +0 -0
  434. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/display_mode_m1_active.png +0 -0
  435. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/display_mode_m2.png +0 -0
  436. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/display_mode_m2_active.png +0 -0
  437. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/display_mode_m3.png +0 -0
  438. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/display_mode_m3_active.png +0 -0
  439. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/display_mode_m4.png +0 -0
  440. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/display_mode_m4_active.png +0 -0
  441. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/display_mode_m5.png +0 -0
  442. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/display_mode_m5_active.png +0 -0
  443. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/display_mode_m6.png +0 -0
  444. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/display_mode_m6_active.png +0 -0
  445. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/display_mode_minus.png +0 -0
  446. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/display_mode_network_btn.png +0 -0
  447. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/display_mode_plus.png +0 -0
  448. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/display_mode_rotate.png +0 -0
  449. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/display_mode_slider_thumb.png +0 -0
  450. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/display_mode_text_font.png +0 -0
  451. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/display_mode_unit_c.png +0 -0
  452. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/display_mode_unit_f.png +0 -0
  453. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/frozen_warframe_ultra.png +0 -0
  454. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/frozen_warframe_ultra_active.png +0 -0
  455. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/image_cut_110x480.png +0 -0
  456. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/image_cut_116x480.png +0 -0
  457. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/image_cut_1280x480.png +0 -0
  458. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/image_cut_160x480.png +0 -0
  459. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/image_cut_180x400.png +0 -0
  460. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/image_cut_180x480.png +0 -0
  461. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/image_cut_240x240.png +0 -0
  462. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/image_cut_240x320.png +0 -0
  463. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/image_cut_240x400.png +0 -0
  464. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/image_cut_240x427.png +0 -0
  465. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/image_cut_270x480.png +0 -0
  466. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/image_cut_320x240.png +0 -0
  467. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/image_cut_320x320.png +0 -0
  468. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/image_cut_320x86.png +0 -0
  469. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/image_cut_360x360.png +0 -0
  470. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/image_cut_400x180.png +0 -0
  471. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/image_cut_400x240.png +0 -0
  472. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/image_cut_427x240.png +0 -0
  473. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/image_cut_480x110.png +0 -0
  474. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/image_cut_480x116.png +0 -0
  475. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/image_cut_480x160.png +0 -0
  476. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/image_cut_480x180.png +0 -0
  477. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/image_cut_480x270.png +0 -0
  478. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/image_cut_480x480.png +0 -0
  479. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/image_cut_86x320.png +0 -0
  480. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_aggregate.png +0 -0
  481. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_aggregate_active.png +0 -0
  482. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_bg_cz1.png +0 -0
  483. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_bg_kvma.png +0 -0
  484. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_bg_lc1.png +0 -0
  485. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_bg_lc2.png +0 -0
  486. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_bg_lf10.png +0 -0
  487. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_bg_lf11.png +0 -0
  488. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_bg_lf12.png +0 -0
  489. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_bg_lf13.png +0 -0
  490. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_bg_lf15.png +0 -0
  491. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_bg_lf8.png +0 -0
  492. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_bg_rgb_lf13.png +0 -0
  493. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_bg_segment.png +0 -0
  494. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_bg_segment_4zone.png +0 -0
  495. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_dropdown.png +0 -0
  496. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_dropdown_2.png +0 -0
  497. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_dropdown_highlight.png +0 -0
  498. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_dropdown_highlight_2.png +0 -0
  499. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_dropdown_menu.png +0 -0
  500. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_dropdown_menu_2.png +0 -0
  501. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_external.png +0 -0
  502. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_external_active.png +0 -0
  503. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_helmet_1.png +0 -0
  504. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_helmet_2.png +0 -0
  505. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_helmet_3.png +0 -0
  506. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_helmet_4.png +0 -0
  507. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_helmet_5.png +0 -0
  508. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_meter_bar_1.png +0 -0
  509. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_meter_bar_2.png +0 -0
  510. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_meter_bar_3.png +0 -0
  511. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_meter_bar_4.png +0 -0
  512. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_meter_bar_5.png +0 -0
  513. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_meter_bar_6.png +0 -0
  514. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_meter_bg_1.png +0 -0
  515. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_meter_bg_2.png +0 -0
  516. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_meter_bg_3.png +0 -0
  517. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_meter_bg_4.png +0 -0
  518. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_meter_bg_5.png +0 -0
  519. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_meter_bg_5_active.png +0 -0
  520. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_meter_bg_6.png +0 -0
  521. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_mode_1.png +0 -0
  522. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_mode_10.png +0 -0
  523. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_mode_10_active.png +0 -0
  524. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_mode_11.png +0 -0
  525. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_mode_11_active.png +0 -0
  526. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_mode_12.png +0 -0
  527. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_mode_12_active.png +0 -0
  528. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_mode_1_active.png +0 -0
  529. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_mode_2.png +0 -0
  530. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_mode_2_active.png +0 -0
  531. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_mode_3.png +0 -0
  532. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_mode_3_active.png +0 -0
  533. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_mode_4.png +0 -0
  534. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_mode_4_active.png +0 -0
  535. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_mode_5.png +0 -0
  536. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_mode_5_active.png +0 -0
  537. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_mode_6.png +0 -0
  538. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_mode_6_active.png +0 -0
  539. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_mode_7.png +0 -0
  540. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_mode_7_active.png +0 -0
  541. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_mode_8.png +0 -0
  542. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_mode_8_active.png +0 -0
  543. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_mode_9.png +0 -0
  544. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_mode_9_active.png +0 -0
  545. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_power.png +0 -0
  546. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_power_active.png +0 -0
  547. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_preset_blue.png +0 -0
  548. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_preset_cyan.png +0 -0
  549. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_preset_green.png +0 -0
  550. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_preset_orange.png +0 -0
  551. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_preset_purple.png +0 -0
  552. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_preset_red.png +0 -0
  553. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_preset_white.png +0 -0
  554. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_preset_yellow.png +0 -0
  555. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_preview_ak120.png +0 -0
  556. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_preview_ax120.png +0 -0
  557. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_preview_cz1.png +0 -0
  558. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_preview_frozen_horizon_pro.png +0 -0
  559. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_preview_frozen_magic_pro.png +0 -0
  560. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_preview_lc1.png +0 -0
  561. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_preview_lc2.png +0 -0
  562. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_preview_lf10.png +0 -0
  563. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_preview_lf11.png +0 -0
  564. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_preview_lf12.png +0 -0
  565. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_preview_lf13.png +0 -0
  566. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_preview_lf15.png +0 -0
  567. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_preview_lf8.png +0 -0
  568. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_preview_pa120.png +0 -0
  569. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_preview_pa120_space.png +0 -0
  570. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_show_1.png +0 -0
  571. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_show_1_active.png +0 -0
  572. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_show_2.png +0 -0
  573. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_show_2_active.png +0 -0
  574. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_show_3.png +0 -0
  575. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_show_3_active.png +0 -0
  576. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_slider_thumb.png +0 -0
  577. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_zone_btn_1.png +0 -0
  578. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_zone_btn_1_active.png +0 -0
  579. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_zone_btn_2.png +0 -0
  580. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_zone_btn_2_active.png +0 -0
  581. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_zone_btn_3.png +0 -0
  582. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_zone_btn_3_active.png +0 -0
  583. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_zone_btn_4.png +0 -0
  584. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_zone_btn_4_active.png +0 -0
  585. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_zone_mode_1.png +0 -0
  586. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_zone_mode_1_active.png +0 -0
  587. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_zone_mode_2.png +0 -0
  588. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_zone_mode_2_active.png +0 -0
  589. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_zone_mode_3.png +0 -0
  590. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_zone_mode_3_active.png +0 -0
  591. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_zone_mode_4.png +0 -0
  592. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_zone_mode_4_active.png +0 -0
  593. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_zone_mode_5.png +0 -0
  594. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_zone_mode_5_active.png +0 -0
  595. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_zone_mode_6.png +0 -0
  596. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/led_zone_mode_6_active.png +0 -0
  597. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/overlay_label_sysinfo.png +0 -0
  598. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/overlay_label_sysinfo_1_en.png +0 -0
  599. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/overlay_label_sysinfo_1_tc.png +0 -0
  600. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/overlay_label_sysinfo_en.png +0 -0
  601. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/overlay_label_sysinfo_tc.png +0 -0
  602. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/overlay_label_text.png +0 -0
  603. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/overlay_label_text_en.png +0 -0
  604. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/overlay_label_text_tc.png +0 -0
  605. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/overlay_label_time.png +0 -0
  606. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/overlay_label_time_en.png +0 -0
  607. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/overlay_label_time_tc.png +0 -0
  608. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/overlay_mode_date.png +0 -0
  609. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/overlay_mode_hardware.png +0 -0
  610. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/overlay_mode_text.png +0 -0
  611. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/overlay_mode_time.png +0 -0
  612. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/overlay_mode_weekday.png +0 -0
  613. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/overlay_select.png +0 -0
  614. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/preview_110x480.png +0 -0
  615. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/preview_116x480.png +0 -0
  616. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/preview_160x480.png +0 -0
  617. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/preview_180x400.png +0 -0
  618. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/preview_180x480.png +0 -0
  619. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/preview_240x240.png +0 -0
  620. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/preview_240x320.png +0 -0
  621. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/preview_240x400.png +0 -0
  622. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/preview_240x427.png +0 -0
  623. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/preview_270x480.png +0 -0
  624. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/preview_320x240.png +0 -0
  625. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/preview_320x320.png +0 -0
  626. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/preview_320x320_round.png +0 -0
  627. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/preview_320x86.png +0 -0
  628. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/preview_360x360_round.png +0 -0
  629. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/preview_400x180.png +0 -0
  630. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/preview_400x240.png +0 -0
  631. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/preview_427x240.png +0 -0
  632. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/preview_480x110.png +0 -0
  633. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/preview_480x116.png +0 -0
  634. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/preview_480x160.png +0 -0
  635. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/preview_480x180.png +0 -0
  636. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/preview_480x270.png +0 -0
  637. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/preview_480x480.png +0 -0
  638. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/preview_480x480_round.png +0 -0
  639. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/preview_86x320.png +0 -0
  640. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/preview_animation.png +0 -0
  641. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/preview_btn.png +0 -0
  642. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/preview_btn_active.png +0 -0
  643. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/preview_pause.png +0 -0
  644. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/preview_play.png +0 -0
  645. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/preview_player_control_bg.png +0 -0
  646. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/preview_popup_1280x480.png +0 -0
  647. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/preview_popup_1920x440.png +0 -0
  648. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/preview_popup_1920x462.png +0 -0
  649. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/preview_popup_320x960.png +0 -0
  650. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/preview_popup_360x800.png +0 -0
  651. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/preview_popup_440x1920.png +0 -0
  652. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/preview_popup_462x1920.png +0 -0
  653. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/preview_popup_480x1280.png +0 -0
  654. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/preview_popup_480x800.png +0 -0
  655. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/preview_popup_480x854.png +0 -0
  656. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/preview_popup_540x960.png +0 -0
  657. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/preview_popup_800x360.png +0 -0
  658. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/preview_popup_800x480.png +0 -0
  659. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/preview_popup_854x480.png +0 -0
  660. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/preview_popup_960x320.png +0 -0
  661. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/preview_popup_960x540.png +0 -0
  662. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/preview_res_240x240.png +0 -0
  663. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/preview_res_240x320.png +0 -0
  664. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/preview_res_320x240.png +0 -0
  665. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/preview_res_320x320.png +0 -0
  666. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/preview_round_mask_320x320.png +0 -0
  667. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/preview_round_mask_360x360.png +0 -0
  668. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/preview_round_mask_480x480.png +0 -0
  669. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/preview_video_controls_bg.png +0 -0
  670. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/preview_video_controls_bg_alt.png +0 -0
  671. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/screen_led_deco_1.png +0 -0
  672. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/screen_led_deco_2.png +0 -0
  673. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/screen_led_deco_3.png +0 -0
  674. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/screen_led_deco_4.png +0 -0
  675. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/screen_led_deco_cz1.png +0 -0
  676. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/secondary_screen_bg.png +0 -0
  677. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/secondary_screen_bg_d.png +0 -0
  678. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/secondary_screen_bg_e.png +0 -0
  679. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/secondary_screen_bg_en.png +0 -0
  680. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/secondary_screen_bg_f.png +0 -0
  681. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/secondary_screen_bg_h.png +0 -0
  682. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/secondary_screen_bg_p.png +0 -0
  683. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/secondary_screen_bg_r.png +0 -0
  684. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/secondary_screen_bg_tc.png +0 -0
  685. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/secondary_screen_bg_x.png +0 -0
  686. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/settings_add_content.png +0 -0
  687. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/settings_add_content_btn.png +0 -0
  688. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/settings_add_content_mask.png +0 -0
  689. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/settings_add_date.png +0 -0
  690. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/settings_add_date_1.png +0 -0
  691. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/settings_add_icon.png +0 -0
  692. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/settings_add_link_1.png +0 -0
  693. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/settings_add_text.png +0 -0
  694. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/settings_add_text_1.png +0 -0
  695. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/settings_add_time.png +0 -0
  696. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/settings_add_time_1.png +0 -0
  697. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/settings_add_weekday.png +0 -0
  698. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/settings_add_weekday_1.png +0 -0
  699. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/settings_anim_sync.png +0 -0
  700. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/settings_background.png +0 -0
  701. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/settings_brightness.png +0 -0
  702. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/settings_keyboard_sync_1.png +0 -0
  703. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/settings_keyboard_sync_2.png +0 -0
  704. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/settings_keyboard_sync_3.png +0 -0
  705. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/settings_module.png +0 -0
  706. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/settings_overlay.png +0 -0
  707. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/settings_overlay_add_bg.png +0 -0
  708. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/settings_overlay_color_bg.png +0 -0
  709. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/settings_overlay_grid_bg.png +0 -0
  710. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/settings_overlay_table_bg.png +0 -0
  711. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/settings_params.png +0 -0
  712. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/shared_brightness_bar.png +0 -0
  713. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/shared_checkbox_off.png +0 -0
  714. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/shared_checkbox_on.png +0 -0
  715. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/shared_clip_a.png +0 -0
  716. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/shared_clip_b.png +0 -0
  717. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/shared_close.png +0 -0
  718. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/shared_close_2.png +0 -0
  719. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/shared_dropdown.png +0 -0
  720. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/shared_dropdown_bg_2x.png +0 -0
  721. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/shared_dropdown_bg_4x.png +0 -0
  722. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/shared_dropdown_highlight.png +0 -0
  723. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/shared_loading_animation.png +0 -0
  724. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/shared_progress_bar.png +0 -0
  725. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/shared_round_close.png +0 -0
  726. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/shared_round_confirm.png +0 -0
  727. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/shared_scrollbar_bg.png +0 -0
  728. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/shared_scrollbar_thumb.png +0 -0
  729. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/shared_shortcut_size_slider.png +0 -0
  730. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/shared_thread_multi.png +0 -0
  731. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/shared_thread_single.png +0 -0
  732. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/shared_toggle_off.png +0 -0
  733. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/shared_toggle_on.png +0 -0
  734. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/shortcuts_panel.png +0 -0
  735. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/shortcuts_panel_d.png +0 -0
  736. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/shortcuts_panel_e.png +0 -0
  737. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/shortcuts_panel_en.png +0 -0
  738. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/shortcuts_panel_f.png +0 -0
  739. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/shortcuts_panel_p.png +0 -0
  740. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/shortcuts_panel_r.png +0 -0
  741. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/shortcuts_panel_tc.png +0 -0
  742. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/shortcuts_panel_x.png +0 -0
  743. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/sidebar_about.png +0 -0
  744. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/sidebar_about_active.png +0 -0
  745. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/sidebar_about_bg.png +0 -0
  746. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/sidebar_bg.png +0 -0
  747. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/sidebar_no_device.png +0 -0
  748. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/sidebar_sensor.png +0 -0
  749. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/sidebar_sensor_active.png +0 -0
  750. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/sidebar_splash.png +0 -0
  751. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/sidebar_sysinfo_bg.png +0 -0
  752. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/split_overlay_a.png +0 -0
  753. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/split_overlay_a_180.png +0 -0
  754. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/split_overlay_a_270.png +0 -0
  755. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/split_overlay_a_90.png +0 -0
  756. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/split_overlay_b.png +0 -0
  757. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/split_overlay_b_180.png +0 -0
  758. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/split_overlay_b_270.png +0 -0
  759. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/split_overlay_b_90.png +0 -0
  760. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/split_overlay_c.png +0 -0
  761. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/split_overlay_c_180.png +0 -0
  762. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/split_overlay_c_270.png +0 -0
  763. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/split_overlay_c_90.png +0 -0
  764. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/sysinfo_add_group.png +0 -0
  765. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/sysinfo_cpu.png +0 -0
  766. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/sysinfo_custom.png +0 -0
  767. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/sysinfo_dram.png +0 -0
  768. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/sysinfo_fan.png +0 -0
  769. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/sysinfo_gpu.png +0 -0
  770. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/sysinfo_hdd.png +0 -0
  771. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/sysinfo_net.png +0 -0
  772. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/sysinfo_next_page.png +0 -0
  773. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/sysinfo_prev_page.png +0 -0
  774. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/sysinfo_scrollbar.png +0 -0
  775. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/sysinfo_select.png +0 -0
  776. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/theme_browser_filter.png +0 -0
  777. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/theme_browser_filter_active.png +0 -0
  778. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/theme_cloud_label.png +0 -0
  779. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/theme_cloud_label_d.png +0 -0
  780. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/theme_cloud_label_e.png +0 -0
  781. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/theme_cloud_label_en.png +0 -0
  782. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/theme_cloud_label_f.png +0 -0
  783. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/theme_cloud_label_h.png +0 -0
  784. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/theme_cloud_label_p.png +0 -0
  785. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/theme_cloud_label_r.png +0 -0
  786. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/theme_cloud_label_tc.png +0 -0
  787. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/theme_cloud_label_x.png +0 -0
  788. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/theme_local_carousel.png +0 -0
  789. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/theme_local_carousel_active.png +0 -0
  790. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/theme_local_export_all.png +0 -0
  791. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/theme_local_multi_select.png +0 -0
  792. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/theme_local_multi_select_active.png +0 -0
  793. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/theme_local_select_frame.png +0 -0
  794. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/theme_local_select_frame_active.png +0 -0
  795. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/theme_mask_label.png +0 -0
  796. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/video_cut_110x480.png +0 -0
  797. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/video_cut_116x480.png +0 -0
  798. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/video_cut_1280x480.png +0 -0
  799. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/video_cut_160x480.png +0 -0
  800. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/video_cut_180x400.png +0 -0
  801. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/video_cut_180x480.png +0 -0
  802. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/video_cut_240x240.png +0 -0
  803. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/video_cut_240x320.png +0 -0
  804. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/video_cut_240x400.png +0 -0
  805. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/video_cut_240x427.png +0 -0
  806. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/video_cut_270x480.png +0 -0
  807. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/video_cut_320x240.png +0 -0
  808. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/video_cut_320x320.png +0 -0
  809. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/video_cut_320x86.png +0 -0
  810. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/video_cut_360x360.png +0 -0
  811. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/video_cut_400x180.png +0 -0
  812. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/video_cut_400x240.png +0 -0
  813. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/video_cut_427x240.png +0 -0
  814. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/video_cut_480x110.png +0 -0
  815. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/video_cut_480x116.png +0 -0
  816. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/video_cut_480x160.png +0 -0
  817. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/video_cut_480x180.png +0 -0
  818. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/video_cut_480x270.png +0 -0
  819. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/video_cut_480x480.png +0 -0
  820. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/video_cut_86x320.png +0 -0
  821. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/video_cut_bg.png +0 -0
  822. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets/video_cut_bg_alt.png +0 -0
  823. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/assets.py +0 -0
  824. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/base.py +0 -0
  825. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/base_handler.py +0 -0
  826. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/bus_bridge.py +0 -0
  827. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/color_and_add_panels.py +0 -0
  828. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/constants.py +0 -0
  829. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/display_mode_panels.py +0 -0
  830. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/eyedropper.py +0 -0
  831. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/led_handler.py +0 -0
  832. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/overlay_element.py +0 -0
  833. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/overlay_grid.py +0 -0
  834. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/pipewire_capture.py +0 -0
  835. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/screen_capture.py +0 -0
  836. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/splash.py +0 -0
  837. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/trcc_app.py +0 -0
  838. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/uc_about.py +0 -0
  839. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/uc_activity_sidebar.py +0 -0
  840. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/uc_color_wheel.py +0 -0
  841. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/uc_device.py +0 -0
  842. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/uc_image_cut.py +0 -0
  843. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/uc_info_module.py +0 -0
  844. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/uc_preview.py +0 -0
  845. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/uc_sensor_picker.py +0 -0
  846. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/uc_system_info.py +0 -0
  847. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/uc_theme_local.py +0 -0
  848. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/uc_theme_mask.py +0 -0
  849. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/uc_theme_setting.py +0 -0
  850. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/uc_theme_web.py +0 -0
  851. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/gui/uc_video_cut.py +0 -0
  852. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/presentation/__init__.py +0 -0
  853. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/presentation/device_presentation.py +0 -0
  854. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/presentation/lcd_panel.py +0 -0
  855. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/presentation/lcd_presentation_model.py +0 -0
  856. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/presentation/led_metrics_format.py +0 -0
  857. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/presentation/led_panel.py +0 -0
  858. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/presentation/led_zone_model.py +0 -0
  859. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/presentation/overlay_model.py +0 -0
  860. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/presentation/overlay_serialization.py +0 -0
  861. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/presentation/preview_geometry.py +0 -0
  862. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/presentation/sensor_display.py +0 -0
  863. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/presentation/slideshow_model.py +0 -0
  864. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/qapp.py +0 -0
  865. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/qtgui/__init__.py +0 -0
  866. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/qtgui/app.py +0 -0
  867. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/qtgui/assets.py +0 -0
  868. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/qtgui/base.py +0 -0
  869. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/qtgui/bus_bridge.py +0 -0
  870. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/qtgui/color_wheel.py +0 -0
  871. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/qtgui/device_picker.py +0 -0
  872. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/qtgui/eyedropper.py +0 -0
  873. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/qtgui/image_crop.py +0 -0
  874. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/qtgui/panels/__init__.py +0 -0
  875. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/qtgui/panels/about_panel.py +0 -0
  876. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/qtgui/panels/cloud_theme_browser.py +0 -0
  877. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/qtgui/panels/configuration_panel.py +0 -0
  878. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/qtgui/panels/device_panel.py +0 -0
  879. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/qtgui/panels/display_panel.py +0 -0
  880. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/qtgui/panels/led/__init__.py +0 -0
  881. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/qtgui/panels/led/_base.py +0 -0
  882. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/qtgui/panels/led/advanced_tab.py +0 -0
  883. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/qtgui/panels/led/color_tab.py +0 -0
  884. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/qtgui/panels/led/mode_tab.py +0 -0
  885. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/qtgui/panels/led/segment_tab.py +0 -0
  886. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/qtgui/panels/led/zone_tab.py +0 -0
  887. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/qtgui/panels/led_panel.py +0 -0
  888. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/qtgui/panels/local_theme_browser.py +0 -0
  889. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/qtgui/panels/mask_browser.py +0 -0
  890. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/qtgui/panels/overlay_editor.py +0 -0
  891. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/qtgui/panels/preview_panel.py +0 -0
  892. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/qtgui/panels/screencast_panel.py +0 -0
  893. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/qtgui/panels/sidebar.py +0 -0
  894. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/qtgui/panels/status_panel.py +0 -0
  895. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/qtgui/panels/system_panel.py +0 -0
  896. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/qtgui/region_overlay.py +0 -0
  897. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/qtgui/screen_overlay.py +0 -0
  898. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/qtgui/sensor_picker.py +0 -0
  899. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/qtgui/splash.py +0 -0
  900. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/src/trcc/ui/qtgui/video_crop.py +0 -0
  901. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/__init__.py +0 -0
  902. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/adapters/infra/__init__.py +0 -0
  903. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/adapters/infra/test_sysinfo_config_fan_map.py +0 -0
  904. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/adapters/system/test_elevate.py +0 -0
  905. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/adapters/system/test_imc_timings.py +0 -0
  906. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/adapters/system/test_linux_imc.py +0 -0
  907. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/adapters/system/test_spd.py +0 -0
  908. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/adapters/system/test_windows_mem_disk.py +0 -0
  909. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/adapters/system/test_windows_permissions.py +0 -0
  910. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/adapters/system/test_windows_wmi_seam.py +0 -0
  911. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/conftest.py +0 -0
  912. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/mock_platform.py +0 -0
  913. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/test_ali_lcd.py +0 -0
  914. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/test_api_routes.py +0 -0
  915. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/test_app_senders.py +0 -0
  916. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/test_architecture_boundaries.py +0 -0
  917. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/test_autostart.py +0 -0
  918. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/test_autostart_macos.py +0 -0
  919. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/test_autostart_windows.py +0 -0
  920. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/test_backend_finish.py +0 -0
  921. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/test_boot_animation_command.py +0 -0
  922. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/test_boot_animation_device.py +0 -0
  923. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/test_bulk_lcd_geometry.py +0 -0
  924. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/test_cli_commands.py +0 -0
  925. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/test_clock.py +0 -0
  926. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/test_cloud_themes.py +0 -0
  927. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/test_commands.py +0 -0
  928. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/test_connect_failure_hints.py +0 -0
  929. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/test_connection_issues.py +0 -0
  930. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/test_control_center.py +0 -0
  931. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/test_daemon.py +0 -0
  932. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/test_data_install.py +0 -0
  933. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/test_dc_codec.py +0 -0
  934. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/test_dc_reader.py +0 -0
  935. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/test_device_catalog_smoke.py +0 -0
  936. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/test_device_recovery.py +0 -0
  937. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/test_device_sender.py +0 -0
  938. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/test_device_surface_matrix.py +0 -0
  939. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/test_diagnose_parse_report.py +0 -0
  940. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/test_diagnostics.py +0 -0
  941. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/test_display_tweaks.py +0 -0
  942. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/test_first_run_and_migration.py +0 -0
  943. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/test_gpu_extras_install.py +0 -0
  944. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/test_gpu_preference.py +0 -0
  945. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/test_gui_empty_state.py +0 -0
  946. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/test_gui_entry_exit.py +0 -0
  947. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/test_gui_panels.py +0 -0
  948. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/test_gui_raise_existing.py +0 -0
  949. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/test_hid_lcd_geometry.py +0 -0
  950. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/test_hotplug.py +0 -0
  951. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/test_hotplug_bsd.py +0 -0
  952. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/test_hotplug_polling.py +0 -0
  953. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/test_hotplug_windows.py +0 -0
  954. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/test_i18n.py +0 -0
  955. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/test_integration_pipeline.py +0 -0
  956. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/test_ipc_server.py +0 -0
  957. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/test_ipc_windows_fallback.py +0 -0
  958. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/test_ipc_wire.py +0 -0
  959. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/test_lcd_panel_model.py +0 -0
  960. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/test_led_animation_loop.py +0 -0
  961. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/test_led_assets.py +0 -0
  962. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/test_led_display_model.py +0 -0
  963. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/test_led_effects.py +0 -0
  964. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/test_led_handler_requires_app.py +0 -0
  965. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/test_led_panel_model.py +0 -0
  966. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/test_led_remap.py +0 -0
  967. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/test_led_send.py +0 -0
  968. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/test_led_settings_commands.py +0 -0
  969. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/test_library_migration.py +0 -0
  970. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/test_ly_lcd_geometry.py +0 -0
  971. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/test_manpages.py +0 -0
  972. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/test_mask_commands.py +0 -0
  973. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/test_mask_rendering.py +0 -0
  974. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/test_metrics_personalize.py +0 -0
  975. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/test_mock_reply_override.py +0 -0
  976. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/test_models.py +0 -0
  977. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/test_orientation_cloud_background.py +0 -0
  978. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/test_orientation_reload.py +0 -0
  979. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/test_overlay_clock.py +0 -0
  980. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/test_overlay_element_id.py +0 -0
  981. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/test_overlay_grid_adapter.py +0 -0
  982. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/test_overlay_metric_unit.py +0 -0
  983. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/test_overlay_resolve.py +0 -0
  984. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/test_overlay_show_unit.py +0 -0
  985. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/test_packaging_entrypoints.py +0 -0
  986. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/test_platform_hw_probes.py +0 -0
  987. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/test_pyusb_find_seam.py +0 -0
  988. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/test_quickstart.py +0 -0
  989. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/test_render_led.py +0 -0
  990. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/test_restore_device_state.py +0 -0
  991. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/test_run_setup_order.py +0 -0
  992. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/test_scsi_lcd_geometry.py +0 -0
  993. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/test_selinux_install.py +0 -0
  994. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/test_send_color.py +0 -0
  995. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/test_sensor_chain.py +0 -0
  996. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/test_sensors.py +0 -0
  997. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/test_sensors_bsd.py +0 -0
  998. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/test_sensors_lhm_subprocess.py +0 -0
  999. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/test_sensors_macos.py +0 -0
  1000. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/test_sensors_nvml.py +0 -0
  1001. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/test_sensors_windows.py +0 -0
  1002. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/test_settings_migration.py +0 -0
  1003. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/test_shell.py +0 -0
  1004. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/test_system_commands.py +0 -0
  1005. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/test_system_resume.py +0 -0
  1006. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/test_theme_persistence.py +0 -0
  1007. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/test_theme_service.py +0 -0
  1008. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/test_transports.py +0 -0
  1009. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/test_udev.py +0 -0
  1010. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/test_ui_parity.py +0 -0
  1011. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/test_ui_surfaces_smoke.py +0 -0
  1012. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/test_variant_presentation_audit.py +0 -0
  1013. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/test_video_cache.py +0 -0
  1014. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/test_video_playback.py +0 -0
  1015. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/test_wire_rotation.py +0 -0
  1016. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/test_wmi_gpu_fallback.py +0 -0
  1017. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/ui/presentation/test_device_presentation.py +0 -0
  1018. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/ui/presentation/test_lcd_presentation_model.py +0 -0
  1019. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/ui/presentation/test_led_metrics_format.py +0 -0
  1020. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/ui/presentation/test_led_zone_model.py +0 -0
  1021. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/ui/presentation/test_overlay_model.py +0 -0
  1022. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/ui/presentation/test_overlay_view_binding.py +0 -0
  1023. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/ui/presentation/test_preview_geometry.py +0 -0
  1024. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/ui/presentation/test_sensor_display.py +0 -0
  1025. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/tests/ui/presentation/test_slideshow_model.py +0 -0
  1026. {trcc_linux-9.8.7 → trcc_linux-9.8.8}/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.7
3
+ Version: 9.8.8
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
@@ -126,7 +126,7 @@ Description-Content-Type: text/markdown
126
126
 
127
127
  Native Linux port of the Thermalright LCD Control Center (Windows TRCC 2.1.2). Control and customize the LCD displays and LED segment displays on Thermalright CPU coolers, AIO pump heads, and fan hubs — entirely from Linux.
128
128
 
129
- > **This project wouldn't exist without our testers.** I only own one device. Every supported device in this list works because someone plugged it in, ran `trcc report`, and told me what broke. 32 testers helped us go from "SCSI only" to full C# feature parity with 6 USB protocols, 16 FBL resolutions, and 12 LED styles. Open source at its best — see [Contributors](#contributors) below.
129
+ > **This project wouldn't exist without our testers.** I only own one device. Every supported device in this list works because someone plugged it in, ran `trcc report`, and told me what broke. 32 testers helped us go from "SCSI only" to full C# feature parity with 6 USB protocols, 16 FBL resolutions, and 13 LED styles. Open source at its best — see [Contributors](#contributors) below.
130
130
 
131
131
  > Unofficial community project, not affiliated with Thermalright. Built with [Claude](https://claude.ai) (AI) for protocol reverse engineering and code generation, guided by human architecture decisions and logical assessment.
132
132
 
@@ -306,7 +306,7 @@ Set the angle to **90°** (or 270°) in the GUI, then open **Cloud Themes** —
306
306
  | **Media** | Video/GIF playback on LCD, video trimmer, image cropper, screen cast (X11 + Wayland), mic audio visualization |
307
307
  | **Overlay Editor** | Text, sensors, date/time overlays — font picker, dynamic scaling, color picker |
308
308
  | **Hardware Sensors** | 77+ sensors — CPU/GPU temp, fan speed, power, usage — customizable dashboard |
309
- | **LED Control** | 12 LED styles, zone carousel, breathing/rainbow/static/wave modes, per-zone color |
309
+ | **LED Control** | 13 LED styles, zone carousel, breathing/rainbow/static/wave modes, per-zone color |
310
310
  | **Display** | 16 resolutions (240x240 to 1920x462), 0/90/180/270 rotation, 3 brightness levels |
311
311
  | **Multi-device** | Per-device config, auto-detect, multi-device with device selection |
312
312
  | **Security** | udev rules, polkit policy, SELinux support, no root required after setup |
@@ -364,7 +364,7 @@ Run `lsusb` to find your USB ID (`xxxx:xxxx` after `ID`), then match it below.
364
364
  **HID LED devices** — RGB LED control:
365
365
  | USB ID | Devices |
366
366
  |--------|---------|
367
- | `0416:8001` | AX120 DIGITAL, PA120 DIGITAL, Peerless Assassin 120 DIGITAL ARGB White, Assassin X 120R Digital ARGB, Phantom Spirit 120 Digital EVO, HR10 2280 PRO Digital, and others (model auto-detected via handshake) |
367
+ | `0416:8001` | AX120 DIGITAL, PA120 DIGITAL, Peerless Assassin 120 DIGITAL ARGB White, Assassin X 120R Digital ARGB, Phantom Spirit 120 Digital EVO, HR10 2280 PRO Digital, Magic Qube, and others (model auto-detected via handshake) |
368
368
 
369
369
  > See the [full device list with protocol details](doc/REFERENCE_DEVICES.md) and the [Device Testing Guide](doc/GUIDE_DEVICE_TESTING.md) if you have an untested device.
370
370
 
@@ -409,20 +409,21 @@ If a probe goes `BAD`, that's the bug — fix in `src/`, re-run, see `PASS`. Eve
409
409
  | HID Type 3 | pyusb interrupt | TARAN ARMS |
410
410
  | Bulk | pyusb bulk | GrandVision 360, Mjolnir Vision 360, Wonder Vision Pro 360, Frozen Warframe Pro |
411
411
  | LY | pyusb bulk (chunked) | Trofeo Vision 9.16 LCD |
412
- | LED | pyusb HID | All LED segment display devices (12 styles) |
412
+ | LED | pyusb HID | All LED segment display devices (13 styles) |
413
413
 
414
414
  ## Code Contributors
415
415
 
416
416
  These folks didn't just report a problem — they opened the editor and sent a fix. On a solo project, a merged pull request is about the most generous thing you can do, and every one of these shipped to every user:
417
417
 
418
+ - **[@jphilipb](https://github.com/jphilipb)** — [#215](https://github.com/Lexonight1/thermalright-trcc-linux/pull/215): reverse-engineered and hardware-validated the Thermalright Magic Qube (65-LED segment display) — a device that doesn't even exist in the Windows app — and wired up full support from scratch.
418
419
  - **[@Hythera](https://github.com/Hythera)** — [#209](https://github.com/Lexonight1/thermalright-trcc-linux/pull/209): had the flake read its version straight from `pyproject.toml`, killing an entire place I used to have to bump by hand every release.
419
420
  - **[@elsiedotcafe](https://github.com/elsiedotcafe)** — [#123](https://github.com/Lexonight1/thermalright-trcc-linux/pull/123): pinned the PySide6 package to a stable source so the build stops breaking.
420
421
 
421
- Thank you both — genuinely. PRs are always welcome, and you'll land right here.
422
+ Thank you all — genuinely. PRs are always welcome, and you'll land right here.
422
423
 
423
424
  ## Contributors
424
425
 
425
- A huge thank you to every single person who filed an issue, pasted a `trcc report`, or just said "it doesn't work." You are the reason this project supports 6 USB protocols, 16 resolutions, and 12 LED styles from a single developer with one device. Every bug report, every test on hardware I don't own, every "hey this is broken" — that's open source at its best. You're not wasting your time. You're building something together.
426
+ A huge thank you to every single person who filed an issue, pasted a `trcc report`, or just said "it doesn't work." You are the reason this project supports 6 USB protocols, 16 resolutions, and 13 LED styles from a single developer with one device. Every bug report, every test on hardware I don't own, every "hey this is broken" — that's open source at its best. You're not wasting your time. You're building something together.
426
427
 
427
428
  Special thanks to everyone who has contributed invaluable reports to this project:
428
429
 
@@ -53,7 +53,7 @@
53
53
 
54
54
  Native Linux port of the Thermalright LCD Control Center (Windows TRCC 2.1.2). Control and customize the LCD displays and LED segment displays on Thermalright CPU coolers, AIO pump heads, and fan hubs — entirely from Linux.
55
55
 
56
- > **This project wouldn't exist without our testers.** I only own one device. Every supported device in this list works because someone plugged it in, ran `trcc report`, and told me what broke. 32 testers helped us go from "SCSI only" to full C# feature parity with 6 USB protocols, 16 FBL resolutions, and 12 LED styles. Open source at its best — see [Contributors](#contributors) below.
56
+ > **This project wouldn't exist without our testers.** I only own one device. Every supported device in this list works because someone plugged it in, ran `trcc report`, and told me what broke. 32 testers helped us go from "SCSI only" to full C# feature parity with 6 USB protocols, 16 FBL resolutions, and 13 LED styles. Open source at its best — see [Contributors](#contributors) below.
57
57
 
58
58
  > Unofficial community project, not affiliated with Thermalright. Built with [Claude](https://claude.ai) (AI) for protocol reverse engineering and code generation, guided by human architecture decisions and logical assessment.
59
59
 
@@ -233,7 +233,7 @@ Set the angle to **90°** (or 270°) in the GUI, then open **Cloud Themes** —
233
233
  | **Media** | Video/GIF playback on LCD, video trimmer, image cropper, screen cast (X11 + Wayland), mic audio visualization |
234
234
  | **Overlay Editor** | Text, sensors, date/time overlays — font picker, dynamic scaling, color picker |
235
235
  | **Hardware Sensors** | 77+ sensors — CPU/GPU temp, fan speed, power, usage — customizable dashboard |
236
- | **LED Control** | 12 LED styles, zone carousel, breathing/rainbow/static/wave modes, per-zone color |
236
+ | **LED Control** | 13 LED styles, zone carousel, breathing/rainbow/static/wave modes, per-zone color |
237
237
  | **Display** | 16 resolutions (240x240 to 1920x462), 0/90/180/270 rotation, 3 brightness levels |
238
238
  | **Multi-device** | Per-device config, auto-detect, multi-device with device selection |
239
239
  | **Security** | udev rules, polkit policy, SELinux support, no root required after setup |
@@ -291,7 +291,7 @@ Run `lsusb` to find your USB ID (`xxxx:xxxx` after `ID`), then match it below.
291
291
  **HID LED devices** — RGB LED control:
292
292
  | USB ID | Devices |
293
293
  |--------|---------|
294
- | `0416:8001` | AX120 DIGITAL, PA120 DIGITAL, Peerless Assassin 120 DIGITAL ARGB White, Assassin X 120R Digital ARGB, Phantom Spirit 120 Digital EVO, HR10 2280 PRO Digital, and others (model auto-detected via handshake) |
294
+ | `0416:8001` | AX120 DIGITAL, PA120 DIGITAL, Peerless Assassin 120 DIGITAL ARGB White, Assassin X 120R Digital ARGB, Phantom Spirit 120 Digital EVO, HR10 2280 PRO Digital, Magic Qube, and others (model auto-detected via handshake) |
295
295
 
296
296
  > See the [full device list with protocol details](doc/REFERENCE_DEVICES.md) and the [Device Testing Guide](doc/GUIDE_DEVICE_TESTING.md) if you have an untested device.
297
297
 
@@ -336,20 +336,21 @@ If a probe goes `BAD`, that's the bug — fix in `src/`, re-run, see `PASS`. Eve
336
336
  | HID Type 3 | pyusb interrupt | TARAN ARMS |
337
337
  | Bulk | pyusb bulk | GrandVision 360, Mjolnir Vision 360, Wonder Vision Pro 360, Frozen Warframe Pro |
338
338
  | LY | pyusb bulk (chunked) | Trofeo Vision 9.16 LCD |
339
- | LED | pyusb HID | All LED segment display devices (12 styles) |
339
+ | LED | pyusb HID | All LED segment display devices (13 styles) |
340
340
 
341
341
  ## Code Contributors
342
342
 
343
343
  These folks didn't just report a problem — they opened the editor and sent a fix. On a solo project, a merged pull request is about the most generous thing you can do, and every one of these shipped to every user:
344
344
 
345
+ - **[@jphilipb](https://github.com/jphilipb)** — [#215](https://github.com/Lexonight1/thermalright-trcc-linux/pull/215): reverse-engineered and hardware-validated the Thermalright Magic Qube (65-LED segment display) — a device that doesn't even exist in the Windows app — and wired up full support from scratch.
345
346
  - **[@Hythera](https://github.com/Hythera)** — [#209](https://github.com/Lexonight1/thermalright-trcc-linux/pull/209): had the flake read its version straight from `pyproject.toml`, killing an entire place I used to have to bump by hand every release.
346
347
  - **[@elsiedotcafe](https://github.com/elsiedotcafe)** — [#123](https://github.com/Lexonight1/thermalright-trcc-linux/pull/123): pinned the PySide6 package to a stable source so the build stops breaking.
347
348
 
348
- Thank you both — genuinely. PRs are always welcome, and you'll land right here.
349
+ Thank you all — genuinely. PRs are always welcome, and you'll land right here.
349
350
 
350
351
  ## Contributors
351
352
 
352
- A huge thank you to every single person who filed an issue, pasted a `trcc report`, or just said "it doesn't work." You are the reason this project supports 6 USB protocols, 16 resolutions, and 12 LED styles from a single developer with one device. Every bug report, every test on hardware I don't own, every "hey this is broken" — that's open source at its best. You're not wasting your time. You're building something together.
353
+ A huge thank you to every single person who filed an issue, pasted a `trcc report`, or just said "it doesn't work." You are the reason this project supports 6 USB protocols, 16 resolutions, and 13 LED styles from a single developer with one device. Every bug report, every test on hardware I don't own, every "hey this is broken" — that's open source at its best. You're not wasting your time. You're building something together.
353
354
 
354
355
  Special thanks to everyone who has contributed invaluable reports to this project:
355
356
 
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
4
4
 
5
5
  [project]
6
6
  name = "trcc-linux"
7
- version = "9.8.7"
7
+ version = "9.8.8"
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.7"
3
+ __version__ = "9.8.8"
4
4
  __version_info__ = tuple(int(x) for x in __version__.split("."))
@@ -26,7 +26,13 @@ from ...core.errors import (
26
26
  UnsupportedOperationError,
27
27
  )
28
28
  from ...core.led_models import LedPayload
29
- from ...core.led_protocol import remap_led_colors, resolve_pm
29
+ from ...core.led_protocol import (
30
+ is_fingerprint_header,
31
+ remap_led_colors,
32
+ resolve_handshake,
33
+ resolve_model_name,
34
+ resolve_pm,
35
+ )
30
36
  from ...core.models import HandshakeResult, LedHandshakeResult, ProductInfo, Wire
31
37
  from ...core.ports import BulkTransport, Device
32
38
  from . import DeviceFactory
@@ -206,11 +212,15 @@ class Led(Device[BulkTransport]):
206
212
  time.sleep(_HANDSHAKE_RETRY_DELAY_S)
207
213
  continue
208
214
 
209
- # Windows DeviceDataReceived1 doesn't validate magic/cmd —
210
- # we warn on mismatch but accept.
211
- if resp[0:4] != _MAGIC:
212
- log.warning("Led handshake: unexpected magic %s", resp[0:4].hex())
213
- if len(resp) > 12 and resp[12] != 1:
215
+ # Windows DeviceDataReceived1 doesn't validate magic/cmd — we
216
+ # accept regardless. A recognised fingerprint header (e.g. the
217
+ # Magic Qube's DC DD AA 01) is expected, so only warn on a truly
218
+ # unknown magic / cmd byte.
219
+ header = bytes(resp[0:4])
220
+ recognised = is_fingerprint_header(header)
221
+ if header != _MAGIC and not recognised:
222
+ log.warning("Led handshake: unexpected magic %s", header.hex())
223
+ if len(resp) > 12 and resp[12] != 1 and not recognised:
214
224
  log.warning("Led handshake: unexpected cmd byte %d", resp[12])
215
225
 
216
226
  # PM and SUB extraction — matches Windows UCDevice.cs offsets:
@@ -218,10 +228,13 @@ class Led(Device[BulkTransport]):
218
228
  self._pm = resp[5]
219
229
  self._sub = resp[4]
220
230
 
221
- # PM byte → device style + readable model name. Falls back to
222
- # the registry's ``led_style`` / ``product`` when the firmware
223
- # reports a PM not in PmRegistry (e.g. a new SKU).
224
- entry = resolve_pm(self._pm, self._sub)
231
+ # Handshake → device style + readable model name. The header
232
+ # fingerprint wins first (some SKUs reuse a PM byte but ship a
233
+ # distinct handshake header e.g. the Magic Qube shares PM=208
234
+ # with CZ1 but answers with DC DD AA 01), then the PM registry.
235
+ # Falls back to the registry's ``led_style`` / ``product`` when
236
+ # the firmware reports a PM not in PmRegistry (e.g. a new SKU).
237
+ entry = resolve_handshake(header, self._pm, self._sub)
225
238
  if entry is not None:
226
239
  style = entry.style
227
240
  model_name = entry.model_name
@@ -278,7 +291,10 @@ class Led(Device[BulkTransport]):
278
291
  cached = _probe_cache_load(self.info.vid, self.info.pid)
279
292
  if cached is not None:
280
293
  cpm, csub, cname = cached
281
- entry = resolve_pm(cpm, csub)
294
+ # A fingerprint device (e.g. Magic Qube) shares its PM byte with
295
+ # another product, so recover it by cached model name first — the
296
+ # cache doesn't persist the handshake header — then by PM byte.
297
+ entry = resolve_model_name(cname) or resolve_pm(cpm, csub)
282
298
  log.warning(
283
299
  "Led handshake: live failed after %d retries — using "
284
300
  "disk cache (PM=%d SUB=%d model=%s, last_err=%s)",
@@ -191,18 +191,29 @@ class ConnectDevice(Command[ConnectResult]):
191
191
  override.button_image or "(cutout-only)",
192
192
  )
193
193
 
194
- # LED style: enrich ``led_style`` from the same handshake fingerprint.
195
- # The registry leaves it None ("resolved at runtime from PM byte"), so
196
- # without this the LED handler reads None and falls back to a default
197
- # style. resolve_pm lives in core, so this stays inside the hexagon.
194
+ # LED style: enrich ``led_style`` from the handshake. The registry
195
+ # leaves it None ("resolved at runtime"), so without this the LED
196
+ # handler reads None and falls back to a default style. Prefer the
197
+ # LED adapter's already-resolved style it honours the header
198
+ # fingerprint, so a Magic Qube (shares PM=208 with CZ1) isn't
199
+ # mis-tagged as CZ1 — and fall back to the header/PM registry from the
200
+ # raw handshake bytes. resolve_* live in core, so this stays inside
201
+ # the hexagon.
198
202
  if device.info.wire is Wire.LED and device.info.led_style is None:
199
- from ..led_protocol import resolve_pm
200
- led_entry = resolve_pm(handshake.pm_byte, handshake.sub_byte)
201
- if led_entry is not None and led_entry.style is not None:
202
- device.info = _dc_replace(device.info, led_style=led_entry.style)
203
+ led_hs = getattr(device, "led_handshake", None)
204
+ led_style = getattr(led_hs, "style", None)
205
+ if led_style is None:
206
+ from ..led_protocol import resolve_handshake
207
+ led_entry = resolve_handshake(
208
+ handshake.raw_response[:4],
209
+ handshake.pm_byte, handshake.sub_byte,
210
+ )
211
+ led_style = led_entry.style if led_entry is not None else None
212
+ if led_style is not None:
213
+ device.info = _dc_replace(device.info, led_style=led_style)
203
214
  log.info(
204
- "ConnectDevice %s: LED style PM=%d → %s",
205
- self.key, handshake.pm_byte, led_entry.style.value,
215
+ "ConnectDevice %s: LED style → %s",
216
+ self.key, led_style.value,
206
217
  )
207
218
 
208
219
  # Install theme/cloud/mask data for the HANDSHAKE-resolved resolution.
@@ -116,20 +116,24 @@ def plan_orientation(
116
116
  rotate_panel = profile.rotate and w != h and orientation in (90, 270)
117
117
  if rotate_panel and not content_is_portrait and not profile.widescreen:
118
118
  return OrientationPlan((w, h), False, orientation)
119
+ if rotate_panel and profile.widescreen:
120
+ # Widescreen JPEG panels (1600×720 etc.): compose on the transposed
121
+ # portrait canvas (720×1600), preview upright — but post_rotate=0. The
122
+ # WIRE rotation is owned entirely by resolve_encode_angle (via wire_angle),
123
+ # which the C# ``ImageToJpg`` applies to the whole composite to reach the
124
+ # device's fixed landscape dims: 0→180, 90→90, 180→0, 270→270. A
125
+ # post_rotate here would double-rotate on top of it (the pre-fix code
126
+ # returned 180 at 270 AND relied on portrait_content=True to suppress the
127
+ # wire rotate — which silently sent an unrotated 720×1600 portrait frame,
128
+ # #169). On-glass handedness still wants a reporter photo (#203/#169).
129
+ return OrientationPlan((h, w), True, 0)
119
130
  if rotate_panel:
120
- # Portrait content is composed on the transposed canvas with the
121
- # orientation baked into the pixels — but the asset is authored for 90.
122
- # 270 is 90 + a 180° flip, and 180° is dimension-preserving, so rotate
123
- # the WHOLE composite (bg + mask + text) as one unit and everything
124
- # stays true to the physical rotation instead of frozen at 90.
125
- # Widescreen JPEG panels keep post_rotate=0: their 90/270 send-unrotated
126
- # behaviour is hardware-verified (#169) and must not change.
127
- # 270 is 90 + a dimension-preserving 180° flip — applies to EVERY rotate
128
- # panel including widescreen (the C# decompile shows widescreen 854×480
129
- # rotates 90→270° / 270→90°, a 180° difference, not frozen). The flip
130
- # keeps the portrait-buffer dimensions (#169) and only re-orients the
131
- # content, so it's dimension-safe (no clip). On-glass handedness for
132
- # widescreen still wants a reporter photo (#203) to confirm.
131
+ # Non-widescreen portrait content: composed on the transposed canvas with
132
+ # the orientation baked into the pixels — but the asset is authored for
133
+ # 90. 270 is 90 + a dimension-preserving 180° flip, so rotate the WHOLE
134
+ # composite (bg + mask + text) as one unit and everything stays true to
135
+ # the physical rotation instead of frozen at 90. These panels take no
136
+ # wire rotation (portrait_content=True opts them out of wire_angle).
133
137
  post_rotate = 180 if orientation == 270 else 0
134
138
  return OrientationPlan((h, w), True, post_rotate)
135
139
  return OrientationPlan(oriented_resolution((w, h), orientation), False, 0)
@@ -200,6 +200,10 @@ LEGACY_STYLE_ID: dict[LedStyle, int] = {
200
200
  LedStyle.LF11: 10,
201
201
  LedStyle.LF15: 11,
202
202
  LedStyle.LF13: 12,
203
+ # Synthetic id for the Linux-added Magic Qube (no legacy C# style_id);
204
+ # continues the sequence so every LED_STYLES entry has an id. It shows
205
+ # plain sensor gauges (led_panel_for treats any non-LC1/LF11/LC2 id so).
206
+ LedStyle.MAGIC_QUBE: 13,
203
207
  }
204
208
 
205
209
  # Inverse lookup — legacy int → :class:`LedStyle` enum. Used by GUI
@@ -268,6 +272,13 @@ LED_STYLES: dict[LedStyle, LedStyleSpec] = {
268
272
  zone_assets=_ZONE_BTN_MODE56),
269
273
  LedStyle.LF13: LedStyleSpec(62, 62, 0, "LF13",
270
274
  "led_preview_lf13", "led_bg_lf13"),
275
+ # Magic Qube — 65 LEDs: two 7-seg digits (3 LEDs/segment, LED 0-41) + 4
276
+ # corner metric indicators (42-49) + a 15-LED contour border (50-64).
277
+ # Same 2-digit / 4-phase design as CZ1. Reuses the generic segment assets
278
+ # until dedicated art is added.
279
+ LedStyle.MAGIC_QUBE: LedStyleSpec(65, 14, 4, "MAGIC_QUBE",
280
+ "led_preview_cz1", "led_bg_segment",
281
+ zone_assets=_ZONE_BTN_N),
271
282
  }
272
283
 
273
284
 
@@ -302,6 +313,7 @@ ZONE_STYLE_ASSETS: dict[LedStyle, tuple[tuple[str, str], ...]] = {
302
313
  LedStyle.LF10: _ZONE_ASSETS_BTNN,
303
314
  LedStyle.CZ1: _ZONE_ASSETS_BTNN,
304
315
  LedStyle.LF11: _ZONE_ASSETS_BTNN,
316
+ LedStyle.MAGIC_QUBE: _ZONE_ASSETS_BTNN,
305
317
  }
306
318
 
307
319
 
@@ -114,6 +114,65 @@ def resolve_pm(pm: int, sub_type: int = 0) -> PmEntry | None:
114
114
  return _PM_REGISTRY.get(pm)
115
115
 
116
116
 
117
+ # =========================================================================
118
+ # Handshake fingerprint overrides
119
+ # =========================================================================
120
+ #
121
+ # A product can reuse another device's PM byte yet ship a distinct firmware
122
+ # handshake header, leaving the PM byte alone ambiguous. The Thermalright
123
+ # Magic Qube reports PM=208 (same as CZ1) but answers the HID handshake with
124
+ # the header ``DC DD AA 01`` instead of the standard ``DA DB DC DD`` — the
125
+ # only wire-level signal that tells it apart from a genuine CZ1. Header
126
+ # overrides are checked before the PM registry.
127
+
128
+ _HEADER_OVERRIDES: dict[bytes, PmEntry] = {
129
+ bytes([0xDC, 0xDD, 0xAA, 0x01]): PmEntry(LedStyle.MAGIC_QUBE, "MAGIC_QUBE"),
130
+ }
131
+
132
+ _OVERRIDES_BY_MODEL: dict[str, PmEntry] = {
133
+ entry.model_name: entry for entry in _HEADER_OVERRIDES.values()
134
+ }
135
+
136
+
137
+ def resolve_handshake(
138
+ header: bytes, pm: int, sub_type: int = 0,
139
+ ) -> PmEntry | None:
140
+ """Resolve a device from its handshake — header fingerprint first.
141
+
142
+ A handful of products reuse another device's PM byte but ship a distinct
143
+ handshake header (firmware fingerprint). When the leading four header
144
+ bytes match a known override that entry wins; otherwise we fall back to
145
+ the PM-byte registry (:func:`resolve_pm`).
146
+ """
147
+ entry = _HEADER_OVERRIDES.get(bytes(header[:4]))
148
+ if entry is not None:
149
+ log.info("resolve_handshake: header %s → %s (overrides pm=%d)",
150
+ bytes(header[:4]).hex(), entry.model_name, pm)
151
+ return entry
152
+ return resolve_pm(pm, sub_type)
153
+
154
+
155
+ def resolve_model_name(model_name: str) -> PmEntry | None:
156
+ """Resolve a fingerprint-override entry by its model name.
157
+
158
+ Used by the probe-cache fallback: the cache persists the model name, not
159
+ the handshake header, so a cached fingerprint device is recovered by
160
+ name. Returns ``None`` for names not carried by an override — the caller
161
+ then falls back to the PM registry.
162
+ """
163
+ return _OVERRIDES_BY_MODEL.get(model_name)
164
+
165
+
166
+ def is_fingerprint_header(header: bytes) -> bool:
167
+ """Whether the handshake header matches a known device fingerprint.
168
+
169
+ Lets the LED adapter treat a recognised non-standard header (e.g. the
170
+ Magic Qube's ``DC DD AA 01``) as expected instead of logging it as an
171
+ anomaly next to the standard ``DA DB DC DD`` magic.
172
+ """
173
+ return bytes(header[:4]) in _HEADER_OVERRIDES
174
+
175
+
117
176
  # ═══════════════════════════════════════════════════════════════════════
118
177
  # Wire-order remap tables
119
178
  # ═══════════════════════════════════════════════════════════════════════
@@ -322,6 +381,9 @@ __all__ = [
322
381
  "LED_REMAP_SUB_TABLES",
323
382
  "LED_REMAP_TABLES",
324
383
  "PmEntry",
384
+ "is_fingerprint_header",
325
385
  "remap_led_colors",
386
+ "resolve_handshake",
387
+ "resolve_model_name",
326
388
  "resolve_pm",
327
389
  ]
@@ -189,6 +189,7 @@ class LedStyle(str, Enum):
189
189
  LF11 = "lf11" # legacy style_id 10
190
190
  LF15 = "lf15" # legacy style_id 11
191
191
  LF13 = "lf13" # legacy style_id 12
192
+ MAGIC_QUBE = "magic_qube" # Linux-added: Thermalright Magic Qube (no legacy style_id)
192
193
 
193
194
 
194
195
  # =========================================================================
@@ -347,15 +347,21 @@ def wire_angle(
347
347
  C#-source-verified per-resolution encode base, #203/#169)
348
348
  * squares / non-rotate panels → user orientation only (``360 − orient``)
349
349
 
350
- A portrait-content theme on a rotate panel is pre-rotated at compose time
351
- (``post_rotate``) and opts out by passing ``portrait_content=True``.
350
+ A *non-widescreen* portrait-content theme on a rotate panel is pre-rotated at
351
+ compose time (``post_rotate``) and opts out via ``portrait_content=True``.
352
+ **Widescreen JPEG panels do NOT opt out**: their 90/270 compose buffer is an
353
+ upright 720×1600 portrait canvas that MUST be rotated by
354
+ :func:`resolve_encode_angle` to reach the device's fixed landscape wire
355
+ dimensions (1600×720). The C# ``ImageToJpg`` applies exactly this rotation to
356
+ every widescreen frame regardless of the compose orientation (#169) — gating
357
+ it on ``not portrait_content`` left the live path (which passes
358
+ ``portrait_content=True`` for widescreen) sending an unrotated portrait frame.
352
359
  """
353
360
  wire_rotate_panel = (
354
361
  profile.rotate and not portrait_content and not profile.widescreen
355
362
  )
356
363
  fold_into_encode = (
357
- profile.rotate and not portrait_content
358
- and profile.widescreen and profile.jpeg
364
+ profile.rotate and profile.widescreen and profile.jpeg
359
365
  )
360
366
  if wire_rotate_panel:
361
367
  return wire_rotation(profile, orientation)
@@ -701,6 +701,92 @@ class CZ1Display(SegmentDisplay):
701
701
  return mask
702
702
 
703
703
 
704
+ # ═══════════════════════════════════════════════════════════════════════
705
+ # Magic Qube (50 LEDs, two 7-seg digits × 3-LED segments, 4-phase rotation)
706
+ # ═══════════════════════════════════════════════════════════════════════
707
+
708
+
709
+ # Physical wire order of the 7 segments within one Magic Qube digit, 3 LEDs
710
+ # each (empirically mapped on hardware): c, d, e, g, b, a, f.
711
+ _QUBE_WIRE: tuple[str, ...] = ("c", "d", "e", "g", "b", "a", "f")
712
+
713
+
714
+ def _qube_digit_segmap(base: int) -> dict[str, tuple[int, int, int]]:
715
+ """Map each 7-seg label → its 3 LED indices for a digit starting at ``base``."""
716
+ pos = {seg: i for i, seg in enumerate(_QUBE_WIRE)}
717
+ return {
718
+ seg: (base + pos[seg] * 3, base + pos[seg] * 3 + 1, base + pos[seg] * 3 + 2)
719
+ for seg in "abcdefg"
720
+ }
721
+
722
+
723
+ class MagicQubeDisplay(SegmentDisplay):
724
+ """Thermalright Magic Qube — 50 LEDs: two 7-seg digits + 4 indicators.
725
+
726
+ Both digits render ONE 2-digit value (left = tens, right = units); a
727
+ single corner indicator lights to name the metric, rotating through the
728
+ four phases like CZ1. Each segment is 3 physical LEDs in wire order
729
+ c, d, e, g, b, a, f; the right digit is LED 0-20, the left 21-41; the
730
+ four indicator pairs are 42-49 (clockwise from top-left). Mapped
731
+ empirically on hardware (no reference implementation exists).
732
+ """
733
+
734
+ mask_size = 65
735
+ phase_count = 4
736
+
737
+ LEFT = _qube_digit_segmap(21) # tens digit (physically left)
738
+ RIGHT = _qube_digit_segmap(0) # units digit (physically right)
739
+
740
+ # Indicator LED pairs, clockwise from top-left.
741
+ IND_CPU_TEMP = (42, 43)
742
+ IND_GPU_TEMP = (44, 45)
743
+ IND_GPU_LOAD = (46, 47)
744
+ IND_CPU_LOAD = (48, 49)
745
+
746
+ # Contour/border LEDs — always lit; they take the effect colour (the
747
+ # segments/indicators are gated by the value mask, the border is not).
748
+ BORDER = tuple(range(50, 65))
749
+
750
+ PHASES: tuple[tuple[str, tuple[int, int]], ...] = (
751
+ ("cpu_temp", IND_CPU_TEMP),
752
+ ("gpu_temp", IND_GPU_TEMP),
753
+ ("gpu_usage", IND_GPU_LOAD),
754
+ ("cpu_percent", IND_CPU_LOAD),
755
+ )
756
+
757
+ # Each digit is one cohesive colour group (right 0-20, left 21-41); the
758
+ # indicators ride along in the swept "rest" group (#193).
759
+ color_groups = _digit_color_groups(
760
+ mask_size, (tuple(range(21)), tuple(range(21, 42))),
761
+ )
762
+
763
+ def _encode_qube_digit(
764
+ self, ch: str, segmap: dict[str, tuple[int, int, int]], mask: list[bool],
765
+ ) -> None:
766
+ """Light the 3 LEDs of every segment the character ``ch`` needs."""
767
+ for seg in self.CHAR_7SEG.get(ch, set()):
768
+ for led in segmap[seg]:
769
+ mask[led] = True
770
+
771
+ def compute_mask(
772
+ self, metrics: HardwareMetrics, phase: int = 0, temp_unit: str = "C", **kw: Any,
773
+ ) -> list[bool]:
774
+ mask = [False] * self.mask_size
775
+ metric_key, indicator = self.PHASES[phase % self.phase_count]
776
+ for idx in indicator:
777
+ mask[idx] = True
778
+ value = int(getattr(metrics, metric_key, 0))
779
+ if "temp" in metric_key:
780
+ value = self._to_display_temp(value, temp_unit)
781
+ value = max(0, min(99, value))
782
+ tens, units = divmod(value, 10)
783
+ self._encode_qube_digit(str(tens) if tens else " ", self.LEFT, mask)
784
+ self._encode_qube_digit(str(units), self.RIGHT, mask)
785
+ for idx in self.BORDER:
786
+ mask[idx] = True
787
+ return mask
788
+
789
+
704
790
  # ═══════════════════════════════════════════════════════════════════════
705
791
  # Style 9 — LC2 (61 LEDs, clock display, 7 decoration)
706
792
  # ═══════════════════════════════════════════════════════════════════════
@@ -828,6 +914,7 @@ DISPLAYS: dict[LedStyle, SegmentDisplay] = {
828
914
  LedStyle.LC2: LC2Display(),
829
915
  LedStyle.LF11: LF11Display(),
830
916
  LedStyle.LF15: LF8Display(), # LF15 = same layout as LF8
917
+ LedStyle.MAGIC_QUBE: MagicQubeDisplay(),
831
918
  # LedStyle.LF13 — pure RGB, no digit display
832
919
  }
833
920
 
@@ -43,7 +43,10 @@ from ...core.commands import (
43
43
  )
44
44
  from ..presentation.lcd_presentation_model import LcdPresentationModel
45
45
  from ..presentation.overlay_serialization import dc_as_legacy_overlay_config
46
- from ..presentation.theme_directories import resolve_theme_directories
46
+ from ..presentation.theme_directories import (
47
+ oriented_theme_reload_target,
48
+ resolve_theme_directories,
49
+ )
47
50
  from .base_handler import BaseHandler
48
51
 
49
52
  if TYPE_CHECKING:
@@ -1016,7 +1019,51 @@ class LCDHandler(BaseHandler):
1016
1019
  degrees, ow, oh, self._pm.state.is_rotated,
1017
1020
  )
1018
1021
  self._sync_preview_size() # composed orientation, portrait-theme aware (#136)
1019
- self._update_theme_directories()
1022
+ # _update_theme_directories switches the browser catalog to the new
1023
+ # orientation dims + re-lists it, and auto-loads the first theme ONLY on
1024
+ # first install (nothing active yet). When a theme IS already active it
1025
+ # returns False and leaves the OLD-orientation theme rendering — so reload
1026
+ # the active theme's oriented variant here, or the device keeps a
1027
+ # landscape bg letterboxed into the portrait buffer (#169 "not filling").
1028
+ if not self._update_theme_directories():
1029
+ self._reload_theme_for_orientation()
1030
+
1031
+ def _reload_theme_for_orientation(self) -> None:
1032
+ """Reload the ACTIVE theme from the just-switched orientation catalog.
1033
+
1034
+ A rotation swaps the browser catalog (``theme1600720`` ↔ ``theme7201600``)
1035
+ but not the rendered theme; the C# re-authors the theme per orientation,
1036
+ so the portrait catalog ships a genuine portrait ``00.png`` that fills the
1037
+ 720×1600 buffer. Reloading the same-name variant from the new catalog
1038
+ gives the same result — a filled, upright frame (#169).
1039
+
1040
+ Falls back to keeping the current theme when the new catalog has no
1041
+ same-name variant (a user's custom theme, or the #136 portrait-fallback
1042
+ where the local dir resolves back to landscape); there the render pipeline
1043
+ pixel-rotates the landscape art so it is at least correctly oriented.
1044
+ """
1045
+ active = self._pm.state.current_theme_path
1046
+ if active is None:
1047
+ return
1048
+ dirs = resolve_theme_directories(
1049
+ self._app.platform.paths(),
1050
+ canvas_size=self._pm.state.canvas_size,
1051
+ lcd_size=self._pm.state.lcd_size,
1052
+ is_rotated=self._pm.state.is_rotated,
1053
+ )
1054
+ target = oriented_theme_reload_target(active, dirs)
1055
+ if target is None:
1056
+ self.log.info(
1057
+ "_reload_theme_for_orientation: no oriented variant of '%s' in the "
1058
+ "%dx%d catalog — keeping current theme (pixel-rotate fallback)",
1059
+ active.name, *dirs.catalog_size,
1060
+ )
1061
+ return
1062
+ self.log.info(
1063
+ "_reload_theme_for_orientation: reloading '%s' from the %dx%d catalog "
1064
+ "→ %s", active.name, *dirs.catalog_size, target,
1065
+ )
1066
+ self._select_theme_from_path(target, persist=True, overlay_config=True)
1020
1067
 
1021
1068
  def set_split_mode(self, mode: int) -> None:
1022
1069
  self.log.info("set_split_mode: %d -> %d device=%s",
@@ -161,7 +161,9 @@ _STYLE_CHECKABLE_BTN = (
161
161
  # overlays (full i18n): AX120(1)+PA120(2) [led_zone_mode_1-4], AK120(3)+LF8(5)+
162
162
  # LF12(6)+LF15(11) [led_zone_mode_5-6], LC1(4)+LF11(10) [panel bg]. CZ1(8) keeps
163
163
  # its baked bg labels (not cleared); LF10(7) is colour-zones (no metric text).
164
- _OVERLAY_BUTTON_STYLES = frozenset({1, 2, 3, 4, 5, 6, 10, 11})
164
+ # Magic Qube(13) has no baked-label art (generic segment bg) → overlay the
165
+ # tr() page labels on the plain button frame, like the LC1/LF11 group.
166
+ _OVERLAY_BUTTON_STYLES = frozenset({1, 2, 3, 4, 5, 6, 10, 11, 13})
165
167
 
166
168
  # Button labels for styles whose model carries none (PA120 is ZONE → page_labels
167
169
  # must stay () per the model invariant, but its zones *are* the 4 metrics).